Commit 6624a93a84f9b90ebdfc5e2d13f16cdff7e5d6aa
1 parent
ca552825
CRM:跟进记录 code review
Showing
10 changed files
with
19 additions
and
12 deletions
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/followup/CrmFollowUpRecordController.java
| ... | ... | @@ -38,7 +38,7 @@ import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUti |
| 38 | 38 | public class CrmFollowUpRecordController { |
| 39 | 39 | |
| 40 | 40 | @Resource |
| 41 | - private CrmFollowUpRecordService crmFollowUpRecordService; | |
| 41 | + private CrmFollowUpRecordService followUpRecordService; | |
| 42 | 42 | @Resource |
| 43 | 43 | private CrmContactService contactService; |
| 44 | 44 | @Resource |
| ... | ... | @@ -48,7 +48,7 @@ public class CrmFollowUpRecordController { |
| 48 | 48 | @Operation(summary = "创建跟进记录") |
| 49 | 49 | @PreAuthorize("@ss.hasPermission('crm:follow-up-record:create')") |
| 50 | 50 | public CommonResult<Long> createFollowUpRecord(@Valid @RequestBody CrmFollowUpRecordSaveReqVO createReqVO) { |
| 51 | - return success(crmFollowUpRecordService.createFollowUpRecord(createReqVO)); | |
| 51 | + return success(followUpRecordService.createFollowUpRecord(createReqVO)); | |
| 52 | 52 | } |
| 53 | 53 | |
| 54 | 54 | @DeleteMapping("/delete") |
| ... | ... | @@ -56,7 +56,7 @@ public class CrmFollowUpRecordController { |
| 56 | 56 | @Parameter(name = "id", description = "编号", required = true) |
| 57 | 57 | @PreAuthorize("@ss.hasPermission('crm:follow-up-record:delete')") |
| 58 | 58 | public CommonResult<Boolean> deleteFollowUpRecord(@RequestParam("id") Long id) { |
| 59 | - crmFollowUpRecordService.deleteFollowUpRecord(id, getLoginUserId()); | |
| 59 | + followUpRecordService.deleteFollowUpRecord(id, getLoginUserId()); | |
| 60 | 60 | return success(true); |
| 61 | 61 | } |
| 62 | 62 | |
| ... | ... | @@ -65,7 +65,7 @@ public class CrmFollowUpRecordController { |
| 65 | 65 | @Parameter(name = "id", description = "编号", required = true, example = "1024") |
| 66 | 66 | @PreAuthorize("@ss.hasPermission('crm:follow-up-record:query')") |
| 67 | 67 | public CommonResult<CrmFollowUpRecordRespVO> getFollowUpRecord(@RequestParam("id") Long id) { |
| 68 | - CrmFollowUpRecordDO followUpRecord = crmFollowUpRecordService.getFollowUpRecord(id); | |
| 68 | + CrmFollowUpRecordDO followUpRecord = followUpRecordService.getFollowUpRecord(id); | |
| 69 | 69 | return success(BeanUtils.toBean(followUpRecord, CrmFollowUpRecordRespVO.class)); |
| 70 | 70 | } |
| 71 | 71 | |
| ... | ... | @@ -73,7 +73,7 @@ public class CrmFollowUpRecordController { |
| 73 | 73 | @Operation(summary = "获得跟进记录分页") |
| 74 | 74 | @PreAuthorize("@ss.hasPermission('crm:follow-up-record:query')") |
| 75 | 75 | public CommonResult<PageResult<CrmFollowUpRecordRespVO>> getFollowUpRecordPage(@Valid CrmFollowUpRecordPageReqVO pageReqVO) { |
| 76 | - PageResult<CrmFollowUpRecordDO> pageResult = crmFollowUpRecordService.getFollowUpRecordPage(pageReqVO); | |
| 76 | + PageResult<CrmFollowUpRecordDO> pageResult = followUpRecordService.getFollowUpRecordPage(pageReqVO); | |
| 77 | 77 | /// 拼接数据 |
| 78 | 78 | Map<Long, CrmContactDO> contactMap = convertMap(contactService.getContactList( |
| 79 | 79 | convertSetByFlatMap(pageResult.getList(), item -> item.getContactIds().stream())), CrmContactDO::getId); | ... | ... |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/business/bo/CrmBusinessUpdateFollowUpReqBO.java
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/clue/bo/CrmClueUpdateFollowUpReqBO.java
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/contact/CrmContactService.java
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/contact/bo/CrmContactUpdateFollowUpReqBO.java
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/contract/bo/CrmContractUpdateFollowUpReqBO.java
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/customer/CrmCustomerServiceImpl.java
| ... | ... | @@ -227,15 +227,16 @@ public class CrmCustomerServiceImpl implements CrmCustomerService { |
| 227 | 227 | // 1.3. 校验客户是否锁定 |
| 228 | 228 | validateCustomerIsLocked(customer, true); |
| 229 | 229 | |
| 230 | - // 2. 设置负责人为 NULL | |
| 230 | + // 2.1 设置负责人为 NULL | |
| 231 | 231 | int updateOwnerUserIncr = customerMapper.updateOwnerUserIdById(customer.getId(), null); |
| 232 | 232 | if (updateOwnerUserIncr == 0) { |
| 233 | 233 | throw exception(CUSTOMER_UPDATE_OWNER_USER_FAIL); |
| 234 | 234 | } |
| 235 | - // 3. 删除负责人数据权限 | |
| 235 | + // 2.2 删除负责人数据权限 | |
| 236 | 236 | permissionService.deletePermission(CrmBizTypeEnum.CRM_CUSTOMER.getType(), customer.getId(), |
| 237 | 237 | CrmPermissionLevelEnum.OWNER.getLevel()); |
| 238 | - // 联系人的负责人,也要设置为 null;这块和领取是对应的;因为领取后,负责人也要关联过来; | |
| 238 | + | |
| 239 | + // 3. 联系人的负责人,也要设置为 null。因为:因为领取后,负责人也要关联过来,这块和 receiveCustomer 是对应的 | |
| 239 | 240 | contactService.updateOwnerUserIdByCustomerId(customer.getId(), null); |
| 240 | 241 | |
| 241 | 242 | // 记录操作日志上下文 | ... | ... |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/customer/bo/CrmCustomerUpdateFollowUpReqBO.java
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/followup/CrmFollowUpRecordServiceImpl.java
| ... | ... | @@ -59,10 +59,11 @@ public class CrmFollowUpRecordServiceImpl implements CrmFollowUpRecordService { |
| 59 | 59 | crmFollowUpRecordMapper.insert(followUpRecord); |
| 60 | 60 | |
| 61 | 61 | LocalDateTime now = LocalDateTime.now(); |
| 62 | - // 更新 bizId 对应的记录; | |
| 62 | + // 2. 更新 bizId 对应的记录; | |
| 63 | 63 | followUpHandlers.forEach(handler -> handler.execute(followUpRecord, now)); |
| 64 | - // 更新 contactIds 对应的记录 | |
| 64 | + // 3.1 更新 contactIds 对应的记录 | |
| 65 | 65 | if (CollUtil.isNotEmpty(createReqVO.getContactIds())) { |
| 66 | + // TODO @puhui999:可以用链式设置哈 | |
| 66 | 67 | contactService.updateContactFollowUpBatch(convertList(createReqVO.getContactIds(), contactId -> { |
| 67 | 68 | CrmContactUpdateFollowUpReqBO crmContactUpdateFollowUpReqBO = new CrmContactUpdateFollowUpReqBO(); |
| 68 | 69 | crmContactUpdateFollowUpReqBO.setId(contactId).setContactNextTime(followUpRecord.getNextTime()) |
| ... | ... | @@ -70,7 +71,7 @@ public class CrmFollowUpRecordServiceImpl implements CrmFollowUpRecordService { |
| 70 | 71 | return crmContactUpdateFollowUpReqBO; |
| 71 | 72 | })); |
| 72 | 73 | } |
| 73 | - // 需要更新 businessIds、contactIds 对应的记录 | |
| 74 | + // 3.2 需要更新 businessIds、contactIds 对应的记录 | |
| 74 | 75 | if (CollUtil.isNotEmpty(createReqVO.getBusinessIds())) { |
| 75 | 76 | businessService.updateContactFollowUpBatch(convertList(createReqVO.getBusinessIds(), businessId -> { |
| 76 | 77 | CrmBusinessUpdateFollowUpReqBO crmBusinessUpdateFollowUpReqBO = new CrmBusinessUpdateFollowUpReqBO(); | ... | ... |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/followup/handle/CrmFollowUpHandler.java