Commit 99976f1bc1e56c6838acfdf0dc051281a38b627e

Authored by 房远帅
1 parent c57660c2

合同变更:流程变量参数改正

... ... @@ -180,7 +180,7 @@ public class ContractChangeApplicationServiceImpl extends BaseMpServiceImpl<Cont
180 180 data.setAfterDataJson(JsonUtil.toJsonString(afterData));
181 181 data.setApprovalStatus(CustomerDevelopStatus.AUDIT.name());
182 182
183   - fillFlowVariables(data, contract);
  183 + fillFlowVariables(data, contract, afterData);
184 184 getBaseMapper().insert(data);
185 185
186 186 OpLogUtil.setVariable("id", data.getId());
... ... @@ -204,18 +204,16 @@ public class ContractChangeApplicationServiceImpl extends BaseMpServiceImpl<Cont
204 204 }
205 205
206 206 ContractDistributorStandard contract = getContractOrThrow(data.getContractId());
207   - UpdateContractDistributorStandardVo beforeData = buildContractData(contract);
208 207 UpdateContractDistributorStandardVo afterData = normalizeContractData(contract, vo.getContractData(), vo.getChangeReason());
209 208
210 209 Wrapper<ContractChangeApplication> wrapper = Wrappers.lambdaUpdate(ContractChangeApplication.class)
211 210 .set(ContractChangeApplication::getChangeReason, StringUtils.defaultIfBlank(vo.getChangeReason(), afterData.getChangeReason()))
212   - .set(ContractChangeApplication::getBeforeDataJson, JsonUtil.toJsonString(beforeData))
213 211 .set(ContractChangeApplication::getAfterDataJson, JsonUtil.toJsonString(afterData))
214 212 .set(ContractChangeApplication::getApprovalStatus, CustomerDevelopStatus.AUDIT.name())
215 213 .eq(ContractChangeApplication::getId, vo.getId());
216 214 update(wrapper);
217 215
218   - fillFlowVariables(data, contract);
  216 + fillFlowVariables(data, contract, afterData);
219 217 data.setAfterDataJson(JsonUtil.toJsonString(afterData));
220 218 data.setChangeReason(StringUtils.defaultIfBlank(vo.getChangeReason(), afterData.getChangeReason()));
221 219 flowInstanceWrapperService.startInstance(BPM_FLAG, data.getId(), BPM_FLAG, data);
... ... @@ -577,15 +575,24 @@ public class ContractChangeApplicationServiceImpl extends BaseMpServiceImpl<Cont
577 575 *
578 576 * @param data 申请单
579 577 * @param contract 合同
  578 + * @param afterData 变更后数据
580 579 */
581   - private void fillFlowVariables(ContractChangeApplication data, ContractDistributorStandard contract) {
  580 + private void fillFlowVariables(ContractChangeApplication data, ContractDistributorStandard contract,
  581 + UpdateContractDistributorStandardVo afterData) {
582 582 if (data == null || contract == null) {
583 583 return;
584 584 }
585 585
586   - Workshop workshop = workshopService.findById(contract.getWorkshopId());
  586 + String workshopId = afterData == null || StringUtils.isBlank(afterData.getWorkshopId())
  587 + ? contract.getWorkshopId()
  588 + : afterData.getWorkshopId();
  589 + String deptId = afterData == null || StringUtils.isBlank(afterData.getDeptId())
  590 + ? contract.getDeptId()
  591 + : afterData.getDeptId();
  592 +
  593 + Workshop workshop = workshopService.findById(workshopId);
587 594 data.setWorkshopCode(workshop == null ? "" : workshop.getCode());
588   - SysDept sysDept = sysDeptService.findById(contract.getDeptId());
  595 + SysDept sysDept = sysDeptService.findById(deptId);
589 596 data.setDeptCode(sysDept == null ? "" : sysDept.getCode());
590 597 }
591 598
... ...