合同管理增加客户类型字段

This commit is contained in:
zhou-hongcheng
2026-02-25 11:01:12 +08:00
parent 6ec0e5b3f5
commit a6aa766f3c
5 changed files with 52 additions and 0 deletions
@@ -18,6 +18,7 @@ import com.mhd.basic.interfaces.dto.contractManageDetail.ContractManageDetailDTO
import com.mhd.common.core.domain.po.BillingRulesPO;
import com.mhd.common.core.domain.po.DocumentTypePO;
import com.mhd.common.core.domain.po.SettlementCustomersPO;
import com.mhd.common.core.domain.po.SysDictDataVo;
import com.mhd.common.core.enums.DictCode;
import com.mhd.common.core.exception.ServiceException;
import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException;
@@ -27,6 +28,7 @@ import com.mhd.common.core.utils.StringUtils;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.system.api.BmsServiceFeign;
import com.mhd.system.api.SystemServiceFeign;
import com.mhd.system.api.domain.SysDictData;
import com.mhd.system.api.model.LoginUser;
import com.mhd.system.service.ISysDictTypeService;
@@ -60,6 +62,9 @@ public class ContractManageApplicationService {
@Autowired
private BmsServiceFeign bmsServiceFeign;
@Autowired
private SystemServiceFeign systemServiceFeign;
/**
* 分页查询合同管理列表
@@ -93,6 +98,7 @@ public class ContractManageApplicationService {
*/
checkContract(contractManageDO);
handleData(contractManageDO);
handleDict(contractManageDO);
contractManageDO.setContractNumber(OrderSequence.getOrderCode("HT"));
contractManageDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
contractManageDO.setOrganizationId(loginUser.getUserPo().getOrganizationId());
@@ -102,6 +108,27 @@ public class ContractManageApplicationService {
return flag;
}
/**
* 处理数据字典
*/
private void handleDict(ContractManageDO ContractManageDO) {
if(StringUtils.isNotEmpty(ContractManageDO.getCustomerTypeCode())){
//查询数据字典
List<SysDictDataVo> sysDictDataVoList = new ArrayList<>();
AjaxResult ajaxResult = systemServiceFeign.selectListByDictType(DictCode.CUSTOMER_TYPE.getCode());
if("200".equals(String.valueOf(ajaxResult.get("code")))){
sysDictDataVoList = JSON.parseArray(JSONObject.toJSONString(ajaxResult.get("data")), SysDictDataVo.class);
}
if(sysDictDataVoList.size()>0){
SysDictDataVo sysDictDataVo = sysDictDataVoList.stream().filter(info-> ObjectUtil.equal(info.getDictValue(),ContractManageDO.getCustomerTypeCode())).findAny().orElse(null);
if(null != sysDictDataVo){
ContractManageDO.setCustomerType(sysDictDataVo.getDictLabel());
}
}
}
}
/**
* 处理数据
*/
@@ -260,6 +287,7 @@ public class ContractManageApplicationService {
checkContract(contractManageDO);
handleData(contractManageDO);
handleDetils(contractManageDO);
handleDict(contractManageDO);
return contractManageDomainService.update(contractManageDO);
}
@@ -163,6 +163,12 @@ public class ContractManage extends BaseVOEntity{
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
private Integer principalType;
@ApiModelProperty("客户类型")
private String customerType;
@ApiModelProperty("客户类型编码")
private String customerTypeCode;
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
private Integer transportationCosts;
@@ -172,6 +172,12 @@ public class ContractManagePO extends BaseVOEntity{
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
private Integer principalType;
@ApiModelProperty("客户类型")
private String customerType;
@ApiModelProperty("客户类型编码")
private String customerTypeCode;
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
private Integer transportationCosts;
@@ -202,6 +202,12 @@ public class ContractManageDO extends BaseVOEntity{
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
private Integer principalType;
@ApiModelProperty("客户类型")
private String customerType;
@ApiModelProperty("客户类型编码")
private String customerTypeCode;
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
private Integer transportationCosts;
@@ -193,6 +193,12 @@ public class ContractManageDTO extends BaseVOEntity{
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
private Integer principalType;
@ApiModelProperty("客户类型")
private String customerType;
@ApiModelProperty("客户类型编码")
private String customerTypeCode;
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
private Integer transportationCosts;
}