ソースを参照

📖 CRM:【合同】code review 合同的代码,补全对应的 todo list

YunaiV 1 年間 前
コミット
c6a9751511

+ 15 - 5
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java

@@ -42,8 +42,10 @@ public class CrmContractServiceImpl implements CrmContractService {
     private CrmPermissionService crmPermissionService;
 
     @Override
+    // TODO @puhui999:添加操作日志
     public Long createContract(CrmContractCreateReqVO createReqVO, Long userId) {
-        // 插入
+        // TODO @合同待定:插入合同商品;需要搞个 BusinessProductDO
+        // 插入合同
         CrmContractDO contract = CrmContractConvert.INSTANCE.convert(createReqVO);
         contractMapper.insert(contract);
 
@@ -57,18 +59,26 @@ public class CrmContractServiceImpl implements CrmContractService {
     @Override
     @Transactional(rollbackFor = Exception.class)
     @CrmPermission(bizType = CrmBizTypeEnum.CRM_CONTRACT, bizId = "#updateReqVO.id", level = CrmPermissionLevelEnum.WRITE)
+    // TODO @puhui999:添加操作日志
     public void updateContract(CrmContractUpdateReqVO updateReqVO) {
+        // TODO @合同待定:只有草稿、审批中,可以编辑;
         // 校验存在
         validateContractExists(updateReqVO.getId());
-        // 更新
+        // 更新合同
         CrmContractDO updateObj = CrmContractConvert.INSTANCE.convert(updateReqVO);
         contractMapper.updateById(updateObj);
+        // TODO @合同待定:插入合同商品;需要搞个 BusinessProductDO
     }
 
+    // TODO @合同待定:缺一个取消合同的接口;只有草稿、审批中可以取消;CrmAuditStatusEnum
+
+    // TODO @合同待定:缺一个发起审批的接口;只有草稿可以发起审批;CrmAuditStatusEnum
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     @CrmPermission(bizType = CrmBizTypeEnum.CRM_CONTRACT, bizId = "#id", level = CrmPermissionLevelEnum.OWNER)
     public void deleteContract(Long id) {
+        // TODO @合同待定:如果被 CrmReceivableDO 所使用,则不允许删除
         // 校验存在
         validateContractExists(id);
         // 删除
@@ -112,6 +122,8 @@ public class CrmContractServiceImpl implements CrmContractService {
 
     @Override
     @Transactional(rollbackFor = Exception.class)
+    // 3. TODO @puhui999:记录转移日志
+    // TODO @puhui999:权限校验,这里要搞哇?
     public void transferContract(CrmContractTransferReqVO reqVO, Long userId) {
         // 1. 校验合同是否存在
         validateContractExists(reqVO.getId());
@@ -121,9 +133,7 @@ public class CrmContractServiceImpl implements CrmContractService {
                 CrmContractConvert.INSTANCE.convert(reqVO, userId).setBizType(CrmBizTypeEnum.CRM_CONTRACT.getType()));
         // 2.2 设置负责人
         contractMapper.updateOwnerUserIdById(reqVO.getId(), reqVO.getNewOwnerUserId());
-
-        // 3. TODO 记录转移日志
-
     }
 
+    // TODO @合同待定:需要新增一个 ContractConfigDO 表,合同配置,重点是到期提醒;
 }