|
@@ -80,16 +80,15 @@ public class CrmBusinessServiceImpl implements CrmBusinessService {
|
|
|
CrmBusinessDO business = BeanUtils.toBean(createReqVO, CrmBusinessDO.class).setOwnerUserId(userId);
|
|
|
businessMapper.insert(business);
|
|
|
// 1.2 插入商机关联商品
|
|
|
- if (CollUtil.isNotEmpty(createReqVO.getProductItems())) { // 如果有的话
|
|
|
- List<CrmBusinessProductDO> productList = buildBusinessProductList(createReqVO.getProductItems(), business.getId());
|
|
|
+ if (CollUtil.isNotEmpty(createReqVO.getItems())) { // 如果有的话
|
|
|
+ List<CrmBusinessProductDO> productList = buildBusinessProductList(createReqVO.getItems(), business.getId());
|
|
|
businessProductMapper.insertBatch(productList);
|
|
|
// 更新合同商品总金额
|
|
|
businessMapper.updateById(new CrmBusinessDO().setId(business.getId()).setProductPrice(
|
|
|
getSumValue(productList, CrmBusinessProductDO::getTotalPrice, Integer::sum)));
|
|
|
}
|
|
|
- // TODO @puhui999:在联系人的详情页,如果直接【新建商机】,则需要关联下。这里要搞个 CrmContactBusinessDO 表
|
|
|
- createContactBusiness(business.getId(), createReqVO.getContactId());
|
|
|
-
|
|
|
+ // 在联系人的详情页,如果直接【新建商机】,则需要关联下。
|
|
|
+ contactBusinessService.createContactBusiness(createReqVO.getContactId(), business.getId());
|
|
|
// 2. 创建数据权限
|
|
|
// 设置当前操作的人为负责人
|
|
|
permissionService.createPermission(new CrmPermissionCreateReqBO().setBizType(CrmBizTypeEnum.CRM_BUSINESS.getType())
|
|
@@ -100,14 +99,6 @@ public class CrmBusinessServiceImpl implements CrmBusinessService {
|
|
|
return business.getId();
|
|
|
}
|
|
|
|
|
|
- // TODO @lzxhqs:CrmContactBusinessService 调用这个;这样逻辑才能收敛哈;
|
|
|
- private void createContactBusiness(Long businessId, Long contactId) {
|
|
|
- CrmContactBusinessDO contactBusiness = new CrmContactBusinessDO();
|
|
|
- contactBusiness.setBusinessId(businessId);
|
|
|
- contactBusiness.setContactId(contactId);
|
|
|
- contactBusinessService.insert(contactBusiness);
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@LogRecord(type = CRM_BUSINESS_TYPE, subType = CRM_BUSINESS_UPDATE_SUB_TYPE, bizNo = "{{#updateReqVO.id}}",
|
|
@@ -121,7 +112,7 @@ public class CrmBusinessServiceImpl implements CrmBusinessService {
|
|
|
CrmBusinessDO updateObj = BeanUtils.toBean(updateReqVO, CrmBusinessDO.class);
|
|
|
businessMapper.updateById(updateObj);
|
|
|
// 2.2 更新商机关联商品
|
|
|
- List<CrmBusinessProductDO> productList = buildBusinessProductList(updateReqVO.getProductItems(), updateObj.getId());
|
|
|
+ List<CrmBusinessProductDO> productList = buildBusinessProductList(updateReqVO.getItems(), updateObj.getId());
|
|
|
updateBusinessProduct(productList, updateObj.getId());
|
|
|
|
|
|
// TODO @商机待定:如果状态发生变化,插入商机状态变更记录表
|
|
@@ -175,10 +166,9 @@ public class CrmBusinessServiceImpl implements CrmBusinessService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private List<CrmBusinessProductDO> buildBusinessProductList(List<CrmBusinessSaveReqVO.CrmBusinessProductItem> productItems,
|
|
|
- Long businessId) {
|
|
|
+ private List<CrmBusinessProductDO> buildBusinessProductList(List<CrmBusinessSaveReqVO.Item> productItems, Long businessId) {
|
|
|
// 校验商品存在
|
|
|
- Set<Long> productIds = convertSet(productItems, CrmBusinessSaveReqVO.CrmBusinessProductItem::getId);
|
|
|
+ Set<Long> productIds = convertSet(productItems, CrmBusinessSaveReqVO.Item::getId);
|
|
|
List<CrmProductDO> productList = productService.getProductList(productIds);
|
|
|
if (CollUtil.isEmpty(productIds) || productList.size() != productIds.size()) {
|
|
|
throw exception(PRODUCT_NOT_EXISTS);
|
|
@@ -237,7 +227,7 @@ public class CrmBusinessServiceImpl implements CrmBusinessService {
|
|
|
public void updateBusinessProduct(CrmBusinessUpdateProductReqBO updateProductReqBO) {
|
|
|
// 更新商机关联商品
|
|
|
List<CrmBusinessProductDO> productList = buildBusinessProductList(
|
|
|
- BeanUtils.toBean(updateProductReqBO.getProductItems(), CrmBusinessSaveReqVO.CrmBusinessProductItem.class), updateProductReqBO.getId());
|
|
|
+ BeanUtils.toBean(updateProductReqBO.getItems(), CrmBusinessSaveReqVO.Item.class), updateProductReqBO.getId());
|
|
|
updateBusinessProduct(productList, updateProductReqBO.getId());
|
|
|
}
|
|
|
|