diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/FunctionController.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/FunctionController.java index ef7eec6d02..1862cb7ceb 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/FunctionController.java +++ b/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> 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(); + } + } diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/FunctionService.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/FunctionService.java index 7717980531..04da335ca9 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/FunctionService.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/FunctionService.java @@ -102,4 +102,12 @@ public interface FunctionService extends BaseService { * @Date 2020/3/23 22:10 **/ Result> queryFunctionList(); + + /** + * @param dto + * @return + * @Author sun + * @Description 默认功能新增 + **/ + void saveFunction(FunctionDTO dto); } diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/FunctionCustomizedServiceImpl.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/FunctionCustomizedServiceImpl.java index e84ee6e617..1020ed8ce6 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/FunctionCustomizedServiceImpl.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/FunctionCustomizedServiceImpl.java @@ -287,6 +287,7 @@ public class FunctionCustomizedServiceImpl extends BaseServiceImpl page(Map params) { @@ -119,4 +129,36 @@ public class FunctionServiceImpl extends BaseServiceImpl>().ok(baseDao.selectFunctionList()); } + /** + * @param dto + * @return + * @Author sun + * @Description 默认功能新增 + **/ + @Override + @Transactional(rollbackFor = Exception.class) + public void saveFunction(FunctionDTO dto) { + //1.调用oper-crm服务,查询有效客户列表 + Result> result = operCrmOpenFeignClient.getAllCustomerList(); + if(!result.success()){ + throw new RenException("调用oper_crm服务 获取有效客户列表失败"); + } + List list = result.getData(); + + //2.新增默认功能 + FunctionEntity functionEntity = ConvertUtils.sourceToTarget(dto, FunctionEntity.class); + insert(functionEntity); + + //3.为已有客户绑定新的默认功能关系 + List listEntity = new ArrayList<>(); + list.forEach(l->{ + CustomerFunctionEntity entity = new CustomerFunctionEntity(); + entity.setCustomerId(l.getId()); + entity.setFunctionId(functionEntity.getId()); + listEntity.add(entity); + }); + customerFunctionService.insertBatch(listEntity); + + } + }