新增合同收发货规则
This commit is contained in:
@@ -31,6 +31,11 @@ public interface ContractApi {
|
|||||||
@Operation(summary = "通过合同编号获取对应的合同信息")
|
@Operation(summary = "通过合同编号获取对应的合同信息")
|
||||||
ContractRespDTO getContractByPaperNumber(@RequestParam("contractPaperNumber") String contractPaperNumber);
|
ContractRespDTO getContractByPaperNumber(@RequestParam("contractPaperNumber") String contractPaperNumber);
|
||||||
|
|
||||||
|
|
||||||
|
@GetMapping(PREFIX + "/get/by-sys-number")
|
||||||
|
@Operation(summary = "通过合同编号获取对应的合同信息")
|
||||||
|
ContractRespDTO getFormulasBySysNumber(@RequestParam("contractSysNumber") String contractSysNumber);
|
||||||
|
|
||||||
@GetMapping(PREFIX + "/updateOrderStatus")
|
@GetMapping(PREFIX + "/updateOrderStatus")
|
||||||
@Operation(summary = "更新订单状态")
|
@Operation(summary = "更新订单状态")
|
||||||
CommonResult<Boolean> updateOrderStatus(@RequestParam("orderId") Long orderId, @RequestParam("status") String status);
|
CommonResult<Boolean> updateOrderStatus(@RequestParam("orderId") Long orderId, @RequestParam("status") String status);
|
||||||
|
|||||||
@@ -80,6 +80,11 @@ public class ContractApiImpl implements ContractApi {
|
|||||||
return contractService.getFormulasByPaperNumber(contractPaperNumber);
|
return contractService.getFormulasByPaperNumber(contractPaperNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ContractRespDTO getFormulasBySysNumber(String contractSysNumber) {
|
||||||
|
return contractService.getFormulasByPaperNumber(contractSysNumber);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CommonResult<Boolean> updateOrderStatus(Long orderId, String status) {
|
public CommonResult<Boolean> updateOrderStatus(Long orderId, String status) {
|
||||||
return success(purchaseOrderService.updateOrderStatus(orderId, status));
|
return success(purchaseOrderService.updateOrderStatus(orderId, status));
|
||||||
|
|||||||
@@ -99,6 +99,14 @@ public interface ContractService {
|
|||||||
*/
|
*/
|
||||||
ContractRespDTO getFormulasByPaperNumber(String contractPaperNumber);
|
ContractRespDTO getFormulasByPaperNumber(String contractPaperNumber);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过合同编号获取对应的合同信息
|
||||||
|
*
|
||||||
|
* @param contractSysNumber 合同编号
|
||||||
|
* @return 结算条款数据
|
||||||
|
*/
|
||||||
|
ContractRespDTO getFormulasBySysNumber(String contractSysNumber);
|
||||||
/**
|
/**
|
||||||
* 提交ERP
|
* 提交ERP
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1381,11 +1381,109 @@ public class ContractServiceImpl implements ContractService {
|
|||||||
}
|
}
|
||||||
//收发货
|
//收发货
|
||||||
List<ContractReceiveSendRespVO> contractReceiveSendListByContractId = contractReceiveSendService.getContractReceiveSendListByContractId(contractMainDO.getId());
|
List<ContractReceiveSendRespVO> contractReceiveSendListByContractId = contractReceiveSendService.getContractReceiveSendListByContractId(contractMainDO.getId());
|
||||||
respDTO.setContractReceiveSends(BeanUtils.toBean(contractReceiveSendListByContractId, ContractReceiveSendRespDTO.class));
|
if (contractReceiveSendListByContractId!=null&&!contractReceiveSendListByContractId.isEmpty()){
|
||||||
|
respDTO.setContractReceiveSends(BeanUtils.toBean(contractReceiveSendListByContractId, ContractReceiveSendRespDTO.class));
|
||||||
|
}
|
||||||
|
|
||||||
return respDTO;
|
return respDTO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ContractRespDTO getFormulasBySysNumber(String contractSysNumber) {
|
||||||
|
|
||||||
|
// 通过合同编号查询合同信息
|
||||||
|
ContractMainDO contractMainDO = contractMainMapper
|
||||||
|
.selectOne(TableFieldConstants.BSE_CTRT_MAIN_CTRT_PPR_NUM, contractSysNumber);
|
||||||
|
|
||||||
|
// 合同不存在
|
||||||
|
if (contractMainDO == null) {
|
||||||
|
throw exception(CONTRACT_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 合同ID
|
||||||
|
Long contractId = contractMainDO.getId();
|
||||||
|
|
||||||
|
// 返回结果
|
||||||
|
ContractRespDTO respDTO = new ContractRespDTO();
|
||||||
|
BeanUtils.copyProperties(contractMainDO, respDTO);
|
||||||
|
|
||||||
|
// 查询并设置合同明细
|
||||||
|
List<ContractDetailDO> detailDOS = contractDetailMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_DTL_CTRT_MAIN_ID, contractMainDO.getId());
|
||||||
|
if (detailDOS != null && !detailDOS.isEmpty()) {
|
||||||
|
respDTO.setDetail(BeanUtils.toBean(detailDOS, DetailRespDTO.class));
|
||||||
|
respDTO.getDetail().forEach(detail -> {
|
||||||
|
|
||||||
|
// 查询并设置交货计划
|
||||||
|
List<ContractPlanDO> planDOS = contractPlanMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_PLN_CTRT_DTL_ID, detail.getId());
|
||||||
|
if (planDOS != null && !planDOS.isEmpty()) {
|
||||||
|
detail.setPlans(BeanUtils.toBean(planDOS, PlanRespDTO.class));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询并设置价款结算条款
|
||||||
|
List<ContractFormulaDO> formulaDOS = contractFormulaMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_FMU_CTRT_ID, contractId);
|
||||||
|
if (formulaDOS != null && !formulaDOS.isEmpty()) {
|
||||||
|
respDTO.setFormulas(BeanUtils.toBean(formulaDOS, FormulaRespDTO.class));
|
||||||
|
|
||||||
|
respDTO.getFormulas().forEach(formula -> {
|
||||||
|
|
||||||
|
// 查询并设置基础系数配置
|
||||||
|
List<ContractCoefficientDO> coefficientDOS = contractCoefficientMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_COEF_FMU_ID, formula.getId());
|
||||||
|
if (coefficientDOS != null && !coefficientDOS.isEmpty()) {
|
||||||
|
formula.setCoefficients(BeanUtils.toBean(coefficientDOS, CoefficientRespDTO.class));
|
||||||
|
}
|
||||||
|
// 查询并设置品位等级价配置
|
||||||
|
List<ContractGradeDO> gradeDOS = contractGradeMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_GRD_FMU_ID, formula.getId());
|
||||||
|
if (gradeDOS != null && !gradeDOS.isEmpty()) {
|
||||||
|
formula.setGrades(BeanUtils.toBean(gradeDOS, GradeRespDTO.class));
|
||||||
|
}
|
||||||
|
// 查询并设置调整价配置
|
||||||
|
List<ContractDeductDO> deductDOS = contractDeductMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_DDCT_FMU_ID, formula.getId());
|
||||||
|
if (deductDOS != null && !deductDOS.isEmpty()) {
|
||||||
|
formula.setDeducts(BeanUtils.toBean(deductDOS, DeductRespDTO.class));
|
||||||
|
}
|
||||||
|
// 查询并设置市场价配置
|
||||||
|
List<ContractPriceDO> priceDOS = contractPriceMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_PRC_FMU_ID, formula.getId());
|
||||||
|
if (priceDOS != null && !priceDOS.isEmpty()) {
|
||||||
|
formula.setPrices(BeanUtils.toBean(priceDOS, PriceRespDTO.class));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询并设置参数降级规则
|
||||||
|
List<ContractDemoteDO> demoteDOS = contractDemoteMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_DMOT_CTRT_ID, contractMainDO.getId());
|
||||||
|
if (demoteDOS != null && !demoteDOS.isEmpty()) {
|
||||||
|
respDTO.setDemotes(BeanUtils.toBean(demoteDOS, DemoteRespDTO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询并设置品位不计价规则
|
||||||
|
List<ContractNotDO> notDOS = contractNotMapper
|
||||||
|
.selectList(TableFieldConstants.BSE_CTRT_NT_CTRT_ID, contractMainDO.getId());
|
||||||
|
if (notDOS != null && !notDOS.isEmpty()) {
|
||||||
|
respDTO.setNots(BeanUtils.toBean(notDOS, NotRespDTO.class));
|
||||||
|
}
|
||||||
|
//收发货
|
||||||
|
List<ContractReceiveSendRespVO> contractReceiveSendListByContractId = contractReceiveSendService.getContractReceiveSendListByContractId(contractMainDO.getId());
|
||||||
|
if (contractReceiveSendListByContractId!=null&&!contractReceiveSendListByContractId.isEmpty()){
|
||||||
|
respDTO.setContractReceiveSends(BeanUtils.toBean(contractReceiveSendListByContractId, ContractReceiveSendRespDTO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
return respDTO;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JSONObject submitErp(Long id) {
|
public JSONObject submitErp(Long id) {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user