Browse Source

修改bug。

master
刘忱 2 years ago
parent
commit
7d4d343d16
  1. 22
      win-module-system/win-module-system-biz/src/main/java/com/win/module/system/service/serialnumber/SerialNumberServiceImpl.java
  2. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java
  3. 26
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java
  4. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainService.java
  5. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainServiceImpl.java
  6. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java

22
win-module-system/win-module-system-biz/src/main/java/com/win/module/system/service/serialnumber/SerialNumberServiceImpl.java

@ -113,21 +113,17 @@ public class SerialNumberServiceImpl implements SerialNumberService {
LocalDate currentDate = LocalDate.now();
pattern = currentDate.format(DateTimeFormatter.ofPattern(encodedRule.getPattern().replace("m", "M")));
}
long millMinutes = 0;
if(encodedRule.getPattern() != null && !encodedRule.getPattern().isEmpty()) {
if (encodedRule.getPattern().toLowerCase().indexOf("d") > 0) { //包含日
LocalDateTime midnight = LocalDateTime.now().plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(1);
millMinutes = ChronoUnit.MINUTES.between(LocalDateTime.now(), midnight);
} else if (encodedRule.getPattern().toLowerCase().indexOf("m") > 0) { //包含月
LocalDateTime midnight = LocalDateTime.now().plusMonths(1).plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(1);
millMinutes = ChronoUnit.MONTHS.between(LocalDateTime.now(), midnight);
} else if (encodedRule.getPattern().toLowerCase().indexOf("y") > 0) {
LocalDateTime midnight = LocalDateTime.now().plusYears(1).plusMonths(1).plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(1);
millMinutes = ChronoUnit.YEARS.between(LocalDateTime.now(), midnight);
}
LocalDateTime midnight = null;
if(encodedRule.getPattern().toLowerCase().indexOf("d") > 0) { //包含日
midnight = LocalDateTime.now().plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(1);
} else if(encodedRule.getPattern().toLowerCase().indexOf("m") > 0) { //包含月
midnight = LocalDateTime.now().plusMonths(1).plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(1);
} else if(encodedRule.getPattern().toLowerCase().indexOf("y") > 0) {
midnight = LocalDateTime.now().plusYears(1).plusMonths(1).plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(1);
}
long millSeconds = ChronoUnit.SECONDS.between(LocalDateTime.now(), midnight);
StringBuilder code = new StringBuilder();
Long increment = redisCache.incr(encodedRule.getRuleCode() + pattern, millMinutes);
Long increment = redisCache.incr(encodedRule.getRuleCode() + pattern, millSeconds);
code.append(encodedRule.getPrefix());
code.append(pattern);
if(encodedRule.getSeparator() != null && !encodedRule.getSeparator().isEmpty()) {

15
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java

@ -232,7 +232,9 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InspectJob");
transactionCreateReqVOIn.setBusinessType(businesstypeDO.getCode());
TransactiontypeDO transactiontypeDOIn = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVOIn.setInventoryAction(transactiontypeDOIn.getInventoryAction());
transactionCreateReqVOIn.setTransactionType(transactiontypeDOIn.getCode());
transactionCreateReqVOIn.setLocationCode(inspectJobDetailUpdateReqVO.getFromLocationCode());
transactionCreateReqVOIn.setRecordNumber(number);
transactionCreateReqVOIn.setBatch(inspectRecordMainDO.getBatch());
transactionCreateReqVOIn.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
@ -246,19 +248,21 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
if(inspectJobDetailUpdateReqVO.getGoodQty() != null && inspectJobDetailUpdateReqVO.getGoodQty().compareTo(BigDecimal.ZERO) > 0) {
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(transactionCreateReqVOIn, transactionCreateReqVO);
transactionCreateReqVO.setInventoryAction("OK");
transactionCreateReqVO.setInventoryStatus("OK");
transactionCreateReqVO.setQty(inspectJobDetailUpdateReqVO.getGoodQty());
transactionCreateReqVOList.add(transactionCreateReqVO);
} else if (inspectJobDetailUpdateReqVO.getCrackQty() != null && inspectJobDetailUpdateReqVO.getCrackQty().compareTo(BigDecimal.ZERO) > 0) {
}
if (inspectJobDetailUpdateReqVO.getCrackQty() != null && inspectJobDetailUpdateReqVO.getCrackQty().compareTo(BigDecimal.ZERO) > 0) {
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(transactionCreateReqVOIn, transactionCreateReqVO);
transactionCreateReqVO.setInventoryAction("SCRAP");
transactionCreateReqVO.setInventoryStatus("SCRAP");
transactionCreateReqVO.setQty(inspectJobDetailUpdateReqVO.getCrackQty());
transactionCreateReqVOList.add(transactionCreateReqVO);
} else if (inspectJobDetailUpdateReqVO.getFailedQty() != null && inspectJobDetailUpdateReqVO.getFailedQty().compareTo(BigDecimal.ZERO) > 0) {
}
if (inspectJobDetailUpdateReqVO.getFailedQty() != null && inspectJobDetailUpdateReqVO.getFailedQty().compareTo(BigDecimal.ZERO) > 0) {
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(transactionCreateReqVOIn, transactionCreateReqVO);
transactionCreateReqVO.setInventoryAction("NOK");
transactionCreateReqVO.setInventoryStatus("NOK");
transactionCreateReqVO.setQty(inspectJobDetailUpdateReqVO.getFailedQty());
transactionCreateReqVOList.add(transactionCreateReqVO);
}
@ -270,6 +274,7 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
TransactiontypeDO transactiontypeDOOut = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getOutTransactionType());
transactionCreateReqVOOut.setInventoryAction(transactiontypeDOOut.getInventoryAction());
transactionCreateReqVOOut.setTransactionType(transactiontypeDOOut.getCode());
transactionCreateReqVOOut.setLocationCode(inspectJobDetailUpdateReqVO.getFromLocationCode());
transactionCreateReqVOOut.setBatch(inspectRecordMainDO.getBatch());
transactionCreateReqVOOut.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVOOut.setRecordNumber(number);

26
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java

@ -120,9 +120,12 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
//子表校验
List<InspectRequestDetailCreateReqVO> subList = createReqVO.getSubList();
List<InspectRequestDetailDO> subDOList = InspectRequestDetailConvert.INSTANCE.convertList03(subList);
BigDecimal sumQty = BigDecimal.ZERO;
for (InspectRequestDetailDO detailDO : subDOList) {
this.validatorDetail(detailDO, mainDO, businesstypeDO);
sumQty = sumQty.add(detailDO.getQty());
}
mainDO.setReceiveQty(sumQty);
String number = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_REQUEST.getCode());
mainDO.setNumber(number);
RequestStatusState requestStatusState = new RequestStatusState();
@ -202,8 +205,10 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
List<InspectRequestDetailCreateReqVO> subList = createReqVO.getSubList();
List<InspectRequestDetailDO> subDOList = InspectRequestDetailConvert.INSTANCE.convertList03(subList);
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InspectRequest");
BigDecimal sumQty = BigDecimal.ZERO;
for (InspectRequestDetailDO detailDO : subDOList) {
String messageDetail = this.validatorInspectRequestDetailImport(detailDO, mainDO, businesstypeDO);
sumQty = sumQty.add(detailDO.getQty());
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = InspectRequestDetailConvert.INSTANCE.convert1(detailDO);
InspectRequestImportErrorVO importVO = InspectRequestDetailConvert.INSTANCE.convert(createReqVO, inspectRequestDetailCreateReqVO);
if (!messageMain.isEmpty() || !messageDetail.isEmpty()) {
@ -213,6 +218,7 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
errorList.add(importVO);
}
}
mainDO.setReceiveQty(sumQty);
mainDO.setBusinessType(businesstypeDO.getCode());
mainDO.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
mainDO.setFromAreaCodes(businesstypeDO.getOutAreaCodes());
@ -480,10 +486,6 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
return mapRule;
}
private PurchasereceiptRecordDetailDO validatorPurchasereceiptExist(String purchaseReceiptRecordNumber, String poNumber, String poLine, String itemCode) {
return purchasereceiptRecordMainService.selectPurchasereceiptExist(poNumber, null, purchaseReceiptRecordNumber, poLine, itemCode);
}
private void validatorRule(InspectRequestMainDO mainDO) {
HashMap<String, String> rule = selectRule(null, mainDO.getItemCode());
mainDO.setSampleQty(selectInspectType(mainDO, mainDO.getReceiveQty(), rule));
@ -501,8 +503,6 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
//校验主表公共方法(适用于新增/修改)
private InspectRequestMainDO validatorMain(InspectRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO) {
InspectRequestMainDO mainDo = InspectRequestMainConvert.INSTANCE.convert(baseVO);
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = this.validatorPurchasereceiptExist(mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoNumber(), mainDo.getPoLine(), mainDo.getItemCode());
mainDo.setReceiveQty(purchasereceiptRecordDetailDO.getQty());
this.validatorRule(mainDo);
mainDo.setBusinessType(businesstypeDO.getCode());
mainDo.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
@ -516,6 +516,8 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
//校验子表公共方法(适用于新增/修改)
private void validatorDetail(InspectRequestDetailDO detailDo, InspectRequestMainDO mainDo, BusinesstypeDO businesstypeDO) {
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(mainDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoLine(), mainDo.getItemCode(), detailDo.getPackingNumber(), mainDo.getBatch());
detailDo.setQty(purchasereceiptRecordDetailDO.getQty());
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode());
detailDo.setNumber(mainDo.getNumber());
detailDo.setItemDesc1(itembasicDO.getDesc1());
@ -538,12 +540,6 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
*/
private String validatorInspectRequestMainImport(InspectRequestMainDO mainDo) {
StringBuilder message = new StringBuilder();
try {
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = validatorPurchasereceiptExist(mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoNumber(), mainDo.getPoLine(), mainDo.getItemCode());
mainDo.setReceiveQty(purchasereceiptRecordDetailDO.getQty());
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
try {
validatorRule(mainDo);
} catch (Exception ex) {
@ -565,6 +561,12 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
*/
private String validatorInspectRequestDetailImport(InspectRequestDetailDO detailDo, InspectRequestMainDO mainDo, BusinesstypeDO businesstypeDO) {
StringBuilder message = new StringBuilder();
try {
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(mainDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoLine(), mainDo.getItemCode(), detailDo.getPackingNumber(), mainDo.getBatch());
detailDo.setQty(purchasereceiptRecordDetailDO.getQty());
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
try {
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode());
detailDo.setItemDesc1(itembasicDO.getDesc1());

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainService.java

@ -64,9 +64,11 @@ public interface PurchasereceiptRecordMainService {
* @param pNumber 单据号
* @param ppoLine 订单行
* @param pitemCode 零件号
* @param packingNumber 箱码
* @param batch 批次
* @return
*/
PurchasereceiptRecordDetailDO selectPurchasereceiptExist(String ppoNumber,String psupplierCode, String pNumber,String ppoLine, String pitemCode);
PurchasereceiptRecordDetailDO selectPurchasereceiptExist(String ppoNumber,String psupplierCode, String pNumber,String ppoLine, String pitemCode, String packingNumber, String batch);
// /**
// * 生成检验申请

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainServiceImpl.java

@ -71,7 +71,7 @@ public class PurchasereceiptRecordMainServiceImpl implements PurchasereceiptReco
}
@Override
public PurchasereceiptRecordDetailDO selectPurchasereceiptExist(String ppoNumber, String psupplierCode, String pNumber, String ppoLine, String pitemCode) {
public PurchasereceiptRecordDetailDO selectPurchasereceiptExist(String ppoNumber, String psupplierCode, String pNumber, String ppoLine, String pitemCode, String packingNumber, String batch) {
QueryWrapper<PurchasereceiptRecordMainDO> queryWrapperMain = new QueryWrapper<>();
queryWrapperMain.eq("number", pNumber);
if (psupplierCode != null && !psupplierCode.isEmpty()) {
@ -85,6 +85,8 @@ public class PurchasereceiptRecordMainServiceImpl implements PurchasereceiptReco
queryWrapperDetail.eq("po_number", ppoNumber);
queryWrapperDetail.eq("po_line", ppoLine);
queryWrapperDetail.eq("item_code", pitemCode);
queryWrapperDetail.eq("to_packing_number", packingNumber);
queryWrapperDetail.eq("to_batch", batch);
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordDetailMapper.selectOne(queryWrapperDetail);
if (purchasereceiptRecordDetailDO != null) {
return purchasereceiptRecordDetailDO;

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java

@ -459,7 +459,7 @@ public class PurchasereturnRequestMainServiceImpl implements PurchasereturnReque
detailDo.setProjectCode(itembasicDO.getProject());
this.ifUomSuccess(itembasicDO.getUom(), detailDo.getUom());
validatorLocation(detailDo.getFromLocationCode());
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(detailDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), detailDo.getPoLine(), detailDo.getItemCode());
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(detailDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), detailDo.getPoLine(), detailDo.getItemCode(), detailDo.getPackingNumber(), detailDo.getBatch());
PurchasereceiptRecordMainDO purchasereceiptRecordMainDO = purchasereceiptRecordMainMapper.selectById(purchasereceiptRecordDetailDO.getMasterId());
mainDo.setPpNumber(purchasereceiptRecordMainDO.getPpNumber());
mainDo.setAsnNumber(purchasereceiptRecordMainDO.getAsnNumber());
@ -541,7 +541,7 @@ public class PurchasereturnRequestMainServiceImpl implements PurchasereturnReque
message.append(ex.getMessage()).append(",");
}
try {
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(detailDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), detailDo.getPoLine(), detailDo.getItemCode());
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(detailDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), detailDo.getPoLine(), detailDo.getItemCode(), detailDo.getPackingNumber(), detailDo.getBatch());
PurchasereceiptRecordMainDO purchasereceiptRecordMainDO = purchasereceiptRecordMainMapper.selectById(purchasereceiptRecordDetailDO.getMasterId());
try {
ifdetailQtyBigThanQty(purchasereceiptRecordDetailDO.getQty(), detailDo.getQty());

Loading…
Cancel
Save