Browse Source

默认功能保存、客户初始化新的默认功能

dev_shibei_match
sunyuchao 5 years ago
parent
commit
fa100a283f
  1. 19
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/FunctionController.java
  2. 8
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/FunctionService.java
  3. 42
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/FunctionServiceImpl.java

19
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/FunctionController.java

@ -17,14 +17,16 @@
package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.FunctionDTO;
import com.epmet.excel.FunctionExcel;
import com.epmet.service.FunctionService;
@ -102,4 +104,19 @@ public class FunctionController {
public Result<List<FunctionDTO>> queryFunctionList() {
return functionService.queryFunctionList();
}
/**
* @param dto
* @return
* @Author sun
* @Description 默认功能新增
**/
@PostMapping("savefunction")
public Result saveFunction(@LoginUser TokenDto tokenDto, @RequestBody FunctionDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
functionService.saveFunction(dto);
return new Result();
}
}

8
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/FunctionService.java

@ -102,4 +102,12 @@ public interface FunctionService extends BaseService<FunctionEntity> {
* @Date 2020/3/23 22:10
**/
Result<List<FunctionDTO>> queryFunctionList();
/**
* @param dto
* @return
* @Author sun
* @Description 默认功能新增
**/
void saveFunction(FunctionDTO dto);
}

42
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/FunctionServiceImpl.java

@ -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);
}
}

Loading…
Cancel
Save