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

This commit is contained in:
YunaiV 2024-01-04 09:18:44 +08:00
parent 2668e0cfeb
commit c6a9751511

View File

@ -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 合同配置重点是到期提醒
}