|
|
@ -20,20 +20,26 @@ package com.epmet.service.impl; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|
|
|
import com.epmet.commons.tools.exception.RenException; |
|
|
|
import com.epmet.commons.tools.page.PageData; |
|
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
|
import com.epmet.commons.tools.constant.FieldConstant; |
|
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
|
import com.epmet.dao.FunctionDao; |
|
|
|
import com.epmet.dto.CustomerDTO; |
|
|
|
import com.epmet.dto.FunctionDTO; |
|
|
|
import com.epmet.entity.CustomerFunctionEntity; |
|
|
|
import com.epmet.entity.FunctionEntity; |
|
|
|
import com.epmet.feign.OperCrmOpenFeignClient; |
|
|
|
import com.epmet.redis.FunctionRedis; |
|
|
|
import com.epmet.service.CustomerFunctionService; |
|
|
|
import com.epmet.service.FunctionService; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
@ -49,6 +55,10 @@ public class FunctionServiceImpl extends BaseServiceImpl<FunctionDao, FunctionEn |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private FunctionRedis functionRedis; |
|
|
|
@Autowired |
|
|
|
private OperCrmOpenFeignClient operCrmOpenFeignClient; |
|
|
|
@Autowired |
|
|
|
private CustomerFunctionService customerFunctionService; |
|
|
|
|
|
|
|
@Override |
|
|
|
public PageData<FunctionDTO> page(Map<String, Object> params) { |
|
|
@ -119,4 +129,36 @@ public class FunctionServiceImpl extends BaseServiceImpl<FunctionDao, FunctionEn |
|
|
|
return new Result<List<FunctionDTO>>().ok(baseDao.selectFunctionList()); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
* @Author sun |
|
|
|
* @Description 默认功能新增 |
|
|
|
**/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void saveFunction(FunctionDTO dto) { |
|
|
|
//1.调用oper-crm服务,查询有效客户列表
|
|
|
|
Result<List<CustomerDTO>> result = operCrmOpenFeignClient.getAllCustomerList(); |
|
|
|
if(!result.success()){ |
|
|
|
throw new RenException("调用oper_crm服务 获取有效客户列表失败"); |
|
|
|
} |
|
|
|
List<CustomerDTO> list = result.getData(); |
|
|
|
|
|
|
|
//2.新增默认功能
|
|
|
|
FunctionEntity functionEntity = ConvertUtils.sourceToTarget(dto, FunctionEntity.class); |
|
|
|
insert(functionEntity); |
|
|
|
|
|
|
|
//3.为已有客户绑定新的默认功能关系
|
|
|
|
List<CustomerFunctionEntity> listEntity = new ArrayList<>(); |
|
|
|
list.forEach(l->{ |
|
|
|
CustomerFunctionEntity entity = new CustomerFunctionEntity(); |
|
|
|
entity.setCustomerId(l.getId()); |
|
|
|
entity.setFunctionId(functionEntity.getId()); |
|
|
|
listEntity.add(entity); |
|
|
|
}); |
|
|
|
customerFunctionService.insertBatch(listEntity); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|