Commit ecf728966fb4ac33eb0f570e01e5824462793fed

Authored by YunaiV
1 parent 9ee6a27b

code review:客户逻辑

yudao-module-crm/yudao-module-crm-biz/pom.xml
... ... @@ -33,6 +33,10 @@
33 33 <groupId>cn.iocoder.boot</groupId>
34 34 <artifactId>yudao-spring-boot-starter-biz-operatelog</artifactId>
35 35 </dependency>
  36 + <dependency>
  37 + <groupId>cn.iocoder.boot</groupId>
  38 + <artifactId>yudao-spring-boot-starter-biz-ip</artifactId>
  39 + </dependency>
36 40  
37 41 <!-- Web 相关 -->
38 42 <dependency>
... ... @@ -57,12 +61,6 @@
57 61 <artifactId>yudao-spring-boot-starter-excel</artifactId>
58 62 </dependency>
59 63  
60   - <!-- 地址相关 -->
61   - <dependency>
62   - <groupId>cn.iocoder.boot</groupId>
63   - <artifactId>yudao-spring-boot-starter-biz-ip</artifactId>
64   - </dependency>
65   -
66 64 <!-- Test 测试相关 -->
67 65 <dependency>
68 66 <groupId>cn.iocoder.boot</groupId>
... ...
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/CrmCustomerController.java
... ... @@ -102,12 +102,15 @@ public class CrmCustomerController {
102 102 public CommonResult<PageResult<CrmCustomerRespVO>> getCustomerPage(@Valid CrmCustomerPageReqVO pageVO) {
103 103 PageResult<CrmCustomerDO> pageResult = customerService.getCustomerPage(pageVO);
104 104 PageResult<CrmCustomerRespVO> pageVo = CrmCustomerConvert.INSTANCE.convertPage(pageResult);
  105 + // TODO @wanwan: 可以参考 CollectionUtils.convertListByFlatMap(),目的是简洁
105 106 Set<Long> userSet = pageVo.getList().stream().flatMap(i -> Stream.of(NumberUtil.parseLong(i.getCreator()), i.getOwnerUserId())).collect(Collectors.toSet());
106 107 Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userSet);
107 108 Map<Long, DeptRespDTO> deptMap = deptApi.getDeptMap(userMap.values().stream().map(AdminUserRespDTO::getDeptId).collect(Collectors.toSet()));
  109 + // TODO @wanwan:这块可以形成一个 convertPage 方法,default 实现;
108 110 pageVo.getList().forEach(customerRespVO -> {
109 111 customerRespVO.setAreaName(AreaUtils.format(customerRespVO.getAreaId()));
110 112 customerRespVO.setCreatorName(Optional.ofNullable(userMap.get(NumberUtil.parseLong(customerRespVO.getCreator()))).map(AdminUserRespDTO::getNickname).orElse(null));
  113 + // TODO @wanwan:可以使用 MapUtils.findAndThen
111 114 AdminUserRespDTO ownerUser = userMap.get(customerRespVO.getOwnerUserId());
112 115 if (Objects.nonNull(ownerUser)) {
113 116 customerRespVO.setOwnerUserName(ownerUser.getNickname());
... ...
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/customer/vo/CrmCustomerRespVO.java
... ... @@ -30,10 +30,8 @@ public class CrmCustomerRespVO extends CrmCustomerBaseVO {
30 30  
31 31 @Schema(description = "负责人的用户编号", example = "25682")
32 32 private Long ownerUserId;
33   -
34 33 @Schema(description = "负责人名字", example = "25682")
35 34 private String ownerUserName;
36   -
37 35 @Schema(description = "负责人部门")
38 36 private String ownerUserDept;
39 37  
... ... @@ -52,7 +50,7 @@ public class CrmCustomerRespVO extends CrmCustomerBaseVO {
52 50  
53 51 @Schema(description = "创建人")
54 52 private String creator;
55   -
56 53 @Schema(description = "创建人名字")
57 54 private String creatorName;
  55 +
58 56 }
... ...
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/dataobject/customer/CrmCustomerDO.java
... ... @@ -98,8 +98,11 @@ public class CrmCustomerDO extends BaseDO {
98 98 private String remark;
99 99 /**
100 100 * 负责人的用户编号
  101 + *
  102 + * 关联 AdminUserDO 的 id 字段
101 103 */
102 104 private Long ownerUserId;
  105 + // TODO @puhui999:这块抽到 permission 里;
103 106 /**
104 107 * 只读权限的用户编号数组
105 108 */
... ...
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/framework/core/aop/CrmPermissionAspect.java
... ... @@ -65,6 +65,10 @@ public class CrmPermissionAspect {
65 65 // TODO @puhui999:一般核心的方法,放到最前面,private 放后面。主要是,主次要分出来哈;
66 66 @Before("@annotation(crmPermission)")
67 67 public void doBefore(JoinPoint joinPoint, CrmPermission crmPermission) {
  68 + // TODO 芋艿:临时,方便大家调试
  69 + if (true) {
  70 + return;
  71 + }
68 72 try {
69 73 Long bizId = crmPermission.getIdFor().length > 0 ? getBizId(joinPoint, crmPermission) : (Long) joinPoint.getArgs()[0]; // 获取操作数据的编号
70 74 Integer bizType = crmPermission.bizType().getType(); // 模块类型
... ...