Commit ab1da0f44f304d97707ca606165106fec2594adf

Authored by 房远帅
1 parent b0920b33

合同:1、库存合同拆分-审核通过才可拆分;2、库存合同 锁价时可改物料编码

@@ -215,8 +215,7 @@ public class ContractDistributorStandardServiceImpl extends @@ -215,8 +215,7 @@ public class ContractDistributorStandardServiceImpl extends
215 public List<ContractDistributorStandard> query(QueryContractDistributorStandardVo vo) { 215 public List<ContractDistributorStandard> query(QueryContractDistributorStandardVo vo) {
216 216
217 List<ContractDistributorStandard> datas = getBaseMapper().query(vo); 217 List<ContractDistributorStandard> datas = getBaseMapper().query(vo);
218 - CollectionUtils.emptyIfNull(datas).forEach(data -> data.setCanSplit(isCanSplitByCode(data.getCode())  
219 - && !Boolean.TRUE.equals(data.getPriceSpecLocked()))); 218 + CollectionUtils.emptyIfNull(datas).forEach(data -> data.setCanSplit(isCanSplit(data)));
220 return datas; 219 return datas;
221 } 220 }
222 221
@@ -227,7 +226,7 @@ public class ContractDistributorStandardServiceImpl extends @@ -227,7 +226,7 @@ public class ContractDistributorStandardServiceImpl extends
227 if (data == null) { 226 if (data == null) {
228 return null; 227 return null;
229 } 228 }
230 - data.setCanSplit(isCanSplitByCode(data.getCode()) && !Boolean.TRUE.equals(data.getPriceSpecLocked())); 229 + data.setCanSplit(isCanSplit(data));
231 Wrapper<PurchaseOrderInfo> orderInfoWrapper = Wrappers.lambdaQuery(PurchaseOrderInfo.class) 230 Wrapper<PurchaseOrderInfo> orderInfoWrapper = Wrappers.lambdaQuery(PurchaseOrderInfo.class)
232 .eq(PurchaseOrderInfo::getContractId, data.getId()); 231 .eq(PurchaseOrderInfo::getContractId, data.getId());
233 List<PurchaseOrderInfo> purchaseOrderInfoList = purchaseOrderInfoService.list(orderInfoWrapper); 232 List<PurchaseOrderInfo> purchaseOrderInfoList = purchaseOrderInfoService.list(orderInfoWrapper);
@@ -293,6 +292,19 @@ public class ContractDistributorStandardServiceImpl extends @@ -293,6 +292,19 @@ public class ContractDistributorStandardServiceImpl extends
293 return !code.matches(".*_\\d{2}$"); 292 return !code.matches(".*_\\d{2}$");
294 } 293 }
295 294
  295 + private boolean isCanSplit(ContractDistributorStandard data) {
  296 + if (data == null) {
  297 + return false;
  298 + }
  299 + if (!isCanSplitByCode(data.getCode()) || Boolean.TRUE.equals(data.getPriceSpecLocked())) {
  300 + return false;
  301 + }
  302 + if ("FORMAL".equals(data.getStatus())) {
  303 + return "PASS".equals(data.getFormalApproved());
  304 + }
  305 + return true;
  306 + }
  307 +
296 @OpLog(type = OtherOpLogType.class, name = "新增合同,ID:{}", params = {"#id"}) 308 @OpLog(type = OtherOpLogType.class, name = "新增合同,ID:{}", params = {"#id"})
297 @Transactional(rollbackFor = Exception.class) 309 @Transactional(rollbackFor = Exception.class)
298 @Override 310 @Override
@@ -1314,7 +1326,15 @@ public class ContractDistributorStandardServiceImpl extends @@ -1314,7 +1326,15 @@ public class ContractDistributorStandardServiceImpl extends
1314 contractDistributorLine.setAmountExcludingTax(lineVo.getAmountExcludingTax()); 1326 contractDistributorLine.setAmountExcludingTax(lineVo.getAmountExcludingTax());
1315 contractDistributorLine.setTotalAmount(lineVo.getTotalAmount()); 1327 contractDistributorLine.setTotalAmount(lineVo.getTotalAmount());
1316 contractDistributorLine.setDeliveryDate(lineVo.getDeliveryDate()); 1328 contractDistributorLine.setDeliveryDate(lineVo.getDeliveryDate());
  1329 + contractDistributorLine.setMaterialCode(lineVo.getMaterialCode());
1317 contractDistributorLineService.getBaseMapper().insert(contractDistributorLine); 1330 contractDistributorLineService.getBaseMapper().insert(contractDistributorLine);
  1331 +
  1332 + //更新物料编码
  1333 + Wrapper<ContractDistributorLine> contractDistributorLineWrapper = Wrappers.lambdaUpdate(ContractDistributorLine.class)
  1334 + .set(ContractDistributorLine::getMaterialCode, lineVo.getMaterialCode())
  1335 + .eq(ContractDistributorLine::getId, lineVo.getId());
  1336 +
  1337 + contractDistributorLineService.update(contractDistributorLineWrapper);
1318 } 1338 }
1319 1339
1320 Wrapper<ContractDistributorStandard> changeLocked = Wrappers.lambdaUpdate(ContractDistributorStandard.class) 1340 Wrapper<ContractDistributorStandard> changeLocked = Wrappers.lambdaUpdate(ContractDistributorStandard.class)