Browse Source

BUG修改

master
叶佳兴 2 years ago
parent
commit
3e680dba9a
  1. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/demandforecasting/vo/DemandforecastingMainBaseVO.java
  2. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/purchase/PurchaseDetailMapper.java
  3. 17
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/demandforecasting/DemandforecastingMainServiceImpl.java
  4. 17
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainServiceImpl.java

15
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/demandforecasting/vo/DemandforecastingMainBaseVO.java

@ -1,16 +1,11 @@
package com.win.module.wms.controller.demandforecasting.vo; package com.win.module.wms.controller.demandforecasting.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.Data;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/** /**
@ -20,7 +15,6 @@ import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY
@Data @Data
public class DemandforecastingMainBaseVO { public class DemandforecastingMainBaseVO {
@Schema(description = "id", example = "id") @Schema(description = "id", example = "id")
private Long id; private Long id;
@ -35,11 +29,9 @@ public class DemandforecastingMainBaseVO {
private LocalDateTime publishTime; private LocalDateTime publishTime;
@Schema(description = "单据号", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "单据号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "单据号不能为空")
private String number; private String number;
@Schema(description = "业务类型", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "业务类型", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "业务类型不能为空")
private String businessType; private String businessType;
@Schema(description = "备注") @Schema(description = "备注")
@ -71,7 +63,6 @@ public class DemandforecastingMainBaseVO {
private String updater; private String updater;
@Schema(description = "是否可用", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "是否可用", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "是否可用不能为空")
private String available; private String available;
} }

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/purchase/PurchaseDetailMapper.java

@ -22,6 +22,7 @@ public interface PurchaseDetailMapper extends BaseMapperX<PurchaseDetailDO> {
default PageResult<PurchaseDetailDO> selectPage(PurchaseDetailPageReqVO reqVO) { default PageResult<PurchaseDetailDO> selectPage(PurchaseDetailPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<PurchaseDetailDO>() return selectPage(reqVO, new LambdaQueryWrapperX<PurchaseDetailDO>()
.eq(PurchaseDetailDO::getMasterId,reqVO.getMasterId())
.eqIfPresent(PurchaseDetailDO::getLineNumber, reqVO.getLineNumber()) .eqIfPresent(PurchaseDetailDO::getLineNumber, reqVO.getLineNumber())
.eqIfPresent(PurchaseDetailDO::getErpLocationCode, reqVO.getErpLocationCode()) .eqIfPresent(PurchaseDetailDO::getErpLocationCode, reqVO.getErpLocationCode())
.eqIfPresent(PurchaseDetailDO::getProjectCode, reqVO.getProjectCode()) .eqIfPresent(PurchaseDetailDO::getProjectCode, reqVO.getProjectCode())

17
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/demandforecasting/DemandforecastingMainServiceImpl.java

@ -17,7 +17,6 @@ import com.win.module.wms.dal.dataobject.demandforecasting.DemandforecastingDeta
import com.win.module.wms.dal.dataobject.demandforecasting.DemandforecastingMainDO; import com.win.module.wms.dal.dataobject.demandforecasting.DemandforecastingMainDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.purchase.PurchaseDetailDO; import com.win.module.wms.dal.dataobject.purchase.PurchaseDetailDO;
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.dataobject.supplier.SupplierDO; import com.win.module.wms.dal.dataobject.supplier.SupplierDO;
import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO; import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO;
import com.win.module.wms.dal.mysql.demandforecasting.DemandforecastingDetailMapper; import com.win.module.wms.dal.mysql.demandforecasting.DemandforecastingDetailMapper;
@ -74,25 +73,23 @@ public class DemandforecastingMainServiceImpl implements DemandforecastingMainSe
@Override @Override
public Long createDemandforecastingMain(DemandforecastingMainCreateReqVO createReqVO) { public Long createDemandforecastingMain(DemandforecastingMainCreateReqVO createReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("Demandforecasting");
DemandforecastingMainDO demandforecastingMainDO = validatorToCreate(createReqVO); DemandforecastingMainDO demandforecastingMainDO = validatorToCreate(createReqVO);
//调用自动执行方法 //调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(demandforecastingMainDO.getStatus())) { if(RequestStatusEnum.HANDLING.getCode().equals(demandforecastingMainDO.getStatus())) {
} }
trendsApi.createTrends(requestsettingDO.getId(), "Demandforecasting", "增加了要货预测", TrendsTypeEnum.CREATE); trendsApi.createTrends(demandforecastingMainDO.getId(), "Demandforecasting", "增加了要货预测", TrendsTypeEnum.CREATE);
return demandforecastingMainDO.getId(); return demandforecastingMainDO.getId();
} }
@Override @Override
public void updateDemandforecastingMain(DemandforecastingMainUpdateReqVO updateReqVO) { public void updateDemandforecastingMain(DemandforecastingMainUpdateReqVO updateReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("Demandforecasting");
// 校验存在 // 校验存在
validateDemandforecastingMainExists(updateReqVO.getId()); validateDemandforecastingMainExists(updateReqVO.getId());
DemandforecastingMainDO demandforecastingMainDO = validatorToUpdate(updateReqVO); DemandforecastingMainDO demandforecastingMainDO = validatorToUpdate(updateReqVO);
if(RequestStatusEnum.HANDLING.getCode().equals(demandforecastingMainDO.getStatus())) { if(RequestStatusEnum.HANDLING.getCode().equals(demandforecastingMainDO.getStatus())) {
} }
trendsApi.createTrends(requestsettingDO.getId(), "Demandforecasting", "修改了要货预测", TrendsTypeEnum.CREATE); trendsApi.createTrends(demandforecastingMainDO.getId(), "Demandforecasting", "修改了要货预测", TrendsTypeEnum.CREATE);
} }
@Override @Override
@ -248,8 +245,7 @@ public class DemandforecastingMainServiceImpl implements DemandforecastingMainSe
//新增方法(主和子) //新增方法(主和子)
private DemandforecastingMainDO validatorToCreate(DemandforecastingMainCreateReqVO createReqVO) { private DemandforecastingMainDO validatorToCreate(DemandforecastingMainCreateReqVO createReqVO) {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("Demandforecasting"); DemandforecastingMainDO demandforecastingMainDO = validateMainMethod(createReqVO);
DemandforecastingMainDO demandforecastingMainDO = validateMainMethod(createReqVO,businesstypeDO);
//子表校验 //子表校验
List<DemandforecastingDetailCreateReqVO> subList = createReqVO.getSubList(); List<DemandforecastingDetailCreateReqVO> subList = createReqVO.getSubList();
List<DemandforecastingDetailDO> subDOList = DemandforecastingDetailConvert.INSTANCE.convertList03(subList); List<DemandforecastingDetailDO> subDOList = DemandforecastingDetailConvert.INSTANCE.convertList03(subList);
@ -269,8 +265,7 @@ public class DemandforecastingMainServiceImpl implements DemandforecastingMainSe
//修改方法(主和子) //修改方法(主和子)
private DemandforecastingMainDO validatorToUpdate(DemandforecastingMainUpdateReqVO updateReqVO) { private DemandforecastingMainDO validatorToUpdate(DemandforecastingMainUpdateReqVO updateReqVO) {
BusinesstypeDO businesstypeDO = new BusinesstypeDO(); DemandforecastingMainDO demandforecastingMainDO = validateMainMethod(updateReqVO);
DemandforecastingMainDO demandforecastingMainDO = validateMainMethod(updateReqVO,businesstypeDO);
//子表校验 //子表校验
List<DemandforecastingDetailUpdateReqVO> subList = updateReqVO.getSubList(); List<DemandforecastingDetailUpdateReqVO> subList = updateReqVO.getSubList();
List<DemandforecastingDetailDO> subDOList = DemandforecastingDetailConvert.INSTANCE.convertList05(subList); List<DemandforecastingDetailDO> subDOList = DemandforecastingDetailConvert.INSTANCE.convertList05(subList);
@ -283,7 +278,7 @@ public class DemandforecastingMainServiceImpl implements DemandforecastingMainSe
} }
//校验主表公共方法(适用于新增/修改) //校验主表公共方法(适用于新增/修改)
private DemandforecastingMainDO validateMainMethod(DemandforecastingMainBaseVO baseVO, BusinesstypeDO businesstypeDO){ private DemandforecastingMainDO validateMainMethod(DemandforecastingMainBaseVO baseVO){
DemandforecastingMainDO demandforecastingMainDO = DemandforecastingMainConvert.INSTANCE.convert(baseVO); DemandforecastingMainDO demandforecastingMainDO = DemandforecastingMainConvert.INSTANCE.convert(baseVO);
this.validatorSupplier(demandforecastingMainDO.getSupplierCode()); this.validatorSupplier(demandforecastingMainDO.getSupplierCode());
return demandforecastingMainDO; return demandforecastingMainDO;
@ -292,7 +287,7 @@ public class DemandforecastingMainServiceImpl implements DemandforecastingMainSe
//校验子表公共方法(适用于新增/修改) //校验子表公共方法(适用于新增/修改)
private void validateDetailMethod(DemandforecastingMainDO demandforecastingMainDO,DemandforecastingDetailDO demandforecastingDetailDO) { private void validateDetailMethod(DemandforecastingMainDO demandforecastingMainDO,DemandforecastingDetailDO demandforecastingDetailDO) {
itembasicService.selectItembasic(demandforecastingDetailDO.getItemCode()); itembasicService.selectItembasic(demandforecastingDetailDO.getItemCode());
purchaseMainService.selectPurchaseDetailDoExist(demandforecastingDetailDO.getPoNumber(), demandforecastingMainDO.getSupplierCode(), demandforecastingDetailDO.getItemCode(), demandforecastingDetailDO.getPoLine()); purchaseMainService.selectPurchaseDetailDoExist(demandforecastingDetailDO.getNumber(), demandforecastingMainDO.getSupplierCode(), demandforecastingDetailDO.getItemCode(), demandforecastingDetailDO.getPoLine());
supplieritemService.selectSupplierItemExist(demandforecastingMainDO.getSupplierCode(), demandforecastingDetailDO.getItemCode()); supplieritemService.selectSupplierItemExist(demandforecastingMainDO.getSupplierCode(), demandforecastingDetailDO.getItemCode());
} }

17
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainServiceImpl.java

@ -29,6 +29,7 @@ import com.win.module.wms.dal.dataobject.purchasePlan.PurchasePlanMainDO;
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO; import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.dataobject.shift.ShiftDO; import com.win.module.wms.dal.dataobject.shift.ShiftDO;
import com.win.module.wms.dal.dataobject.stdcostprice.StdcostpriceDO; import com.win.module.wms.dal.dataobject.stdcostprice.StdcostpriceDO;
import com.win.module.wms.dal.dataobject.supplier.SupplierDO;
import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO; import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO;
import com.win.module.wms.dal.mysql.purchase.PurchaseDetailMapper; import com.win.module.wms.dal.mysql.purchase.PurchaseDetailMapper;
import com.win.module.wms.dal.mysql.purchase.PurchaseMainMapper; import com.win.module.wms.dal.mysql.purchase.PurchaseMainMapper;
@ -49,6 +50,7 @@ import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.service.rule.RuleService; import com.win.module.wms.service.rule.RuleService;
import com.win.module.wms.service.shift.ShiftService; import com.win.module.wms.service.shift.ShiftService;
import com.win.module.wms.service.stdcostprice.StdcostpriceService; import com.win.module.wms.service.stdcostprice.StdcostpriceService;
import com.win.module.wms.service.supplier.SupplierService;
import com.win.module.wms.service.supplieritem.SupplieritemService; import com.win.module.wms.service.supplieritem.SupplieritemService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@ -109,7 +111,8 @@ public class PurchaseMainServiceImpl implements PurchaseMainService {
private PurchasePlanDetailMapper purchasePlanDetailMapper; private PurchasePlanDetailMapper purchasePlanDetailMapper;
@Resource @Resource
private SerialNumberApi serialNumberApi; private SerialNumberApi serialNumberApi;
@Resource
private SupplierService supplierService;
@Override @Override
public Long createPurchaseMain(PurchaseMainCreateReqVO createReqVO) { public Long createPurchaseMain(PurchaseMainCreateReqVO createReqVO) {
@ -260,9 +263,9 @@ public class PurchaseMainServiceImpl implements PurchaseMainService {
return errorList; return errorList;
} }
//主表校验 校验供应商基础信息 //主表校验 校验班次基础信息
private ShiftDO validatorShiftExist(String supplierCode) { private SupplierDO validatorShiftExist(String supplierCode) {
return shiftService.selectShiftExist(supplierCode); return supplierService.selectSupplier(supplierCode);
} }
//子表校验 校验供应商基础信息 //子表校验 校验供应商基础信息
@ -289,8 +292,8 @@ public class PurchaseMainServiceImpl implements PurchaseMainService {
//校验主表公共方法(适用于新增/修改) //校验主表公共方法(适用于新增/修改)
private PurchaseMainDO validatorMainMethod(PurchaseMainBaseVO baseVO) { private PurchaseMainDO validatorMainMethod(PurchaseMainBaseVO baseVO) {
PurchaseMainDO mainDo = PurchaseMainConvert.INSTANCE.convert(baseVO); PurchaseMainDO mainDo = PurchaseMainConvert.INSTANCE.convert(baseVO);
ShiftDO shiftDO = this.validatorShiftExist(mainDo.getSupplierCode()); SupplierDO supplierDO = this.validatorShiftExist(mainDo.getSupplierCode());
if (shiftDO == null) { if (supplierDO == null) {
throw exception(STDCOSTPRICE_SUPPLIER_CODE_NOT_EXISTS); throw exception(STDCOSTPRICE_SUPPLIER_CODE_NOT_EXISTS);
} }
mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增")); mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增"));
@ -334,6 +337,7 @@ public class PurchaseMainServiceImpl implements PurchaseMainService {
//子表校验 //子表校验
List<PurchaseDetailCreateReqVO> subList = createReqVO.getSubList(); List<PurchaseDetailCreateReqVO> subList = createReqVO.getSubList();
List<PurchaseDetailDO> subDOList = PurchaseDetailConvert.INSTANCE.convertList03(subList); List<PurchaseDetailDO> subDOList = PurchaseDetailConvert.INSTANCE.convertList03(subList);
purchaseMainMapper.insert(purchaseMainDO);
for (PurchaseDetailDO purchaseDetailDO : subDOList) { for (PurchaseDetailDO purchaseDetailDO : subDOList) {
validatorDetailMethod(purchaseDetailDO, purchaseMainDO); validatorDetailMethod(purchaseDetailDO, purchaseMainDO);
purchaseDetailDO.setMasterId(purchaseMainDO.getId()); purchaseDetailDO.setMasterId(purchaseMainDO.getId());
@ -347,7 +351,6 @@ public class PurchaseMainServiceImpl implements PurchaseMainService {
purchaseDetailDO.setAvailable("TRUE"); purchaseDetailDO.setAvailable("TRUE");
purchaseDetailDO.setStatus(OrderStatusEnum.READY.getCode()); purchaseDetailDO.setStatus(OrderStatusEnum.READY.getCode());
} }
purchaseMainMapper.insert(purchaseMainDO);
purchaseDetailMapper.insertBatch(subDOList); purchaseDetailMapper.insertBatch(subDOList);
return purchaseMainDO; return purchaseMainDO;
} }

Loading…
Cancel
Save