From e237b2ee7b69245255b30d8134d4f3cce0ce302b Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Fri, 15 Dec 2023 09:08:54 +0800 Subject: [PATCH 01/10] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/controller/index/IndexController.java | 14 +++- .../service/purchase/PurchaseMainService.java | 2 +- .../SupplierdeliverRecordMainService.java | 23 +++++- .../SupplierdeliverRecordMainServiceImpl.java | 76 +++++++++++++------ 4 files changed, 82 insertions(+), 33 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java index 6d4de25c..bb51bde3 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java @@ -3,6 +3,7 @@ package com.win.module.wms.controller.index; import com.win.framework.common.pojo.CommonResult; import com.win.module.wms.service.purchase.PurchaseMainService; import com.win.module.wms.service.purchasePlan.PurchasePlanMainService; +import com.win.module.wms.service.supplierdeliverRecord.SupplierdeliverRecordMainService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; @@ -26,15 +27,20 @@ public class IndexController { private PurchaseMainService purchaseMainService; @Resource private PurchasePlanMainService purchasePlanMainService; + @Resource + private SupplierdeliverRecordMainService supplierdeliverRecordMainService; @GetMapping("/index") @Operation(summary = "开放订单数") public CommonResult> index() { Map dataMap = new HashMap<>(); - dataMap.put("openPurchaseNum", purchaseMainService.getPurchaseCount(true)); - dataMap.put("allPurchaseNum", purchaseMainService.getPurchaseCount(false)); - dataMap.put("openPurchasePlanNum", purchasePlanMainService.getPurchasePlanCount(true)); - dataMap.put("allPurchasePlanNum", purchasePlanMainService.getPurchasePlanCount(false)); + dataMap.put("openPurchaseCount", purchaseMainService.getPurchaseCount(true));//开放订单数 + dataMap.put("allPurchaseCount", purchaseMainService.getPurchaseCount(false));//全部订单数 + dataMap.put("openPurchasePlanCount", purchasePlanMainService.getPurchasePlanCount(true));//开放计划数 + dataMap.put("allPurchasePlanCount", purchasePlanMainService.getPurchasePlanCount(false));//全部计划数 + dataMap.put("takeSupplierdeliverCount", supplierdeliverRecordMainService.getSupplierdeliverCount(true));//已收货订单数 + dataMap.put("notTakeSupplierdeliverCount", supplierdeliverRecordMainService.getSupplierdeliverCount(false));//未收货订单数 + dataMap.put("supplierdeliverMonthCount", supplierdeliverRecordMainService.getSupplierdeliverMonthCount());//本月发货单趋势 return success(dataMap); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainService.java index 3a0a93c3..cc159268 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainService.java @@ -164,7 +164,7 @@ public interface PurchaseMainService { void updateOrderPurchaseReturnQty(String poNumber , String poLine, String itemCode, BigDecimal returnedQty); /** - * 放订单数 + * 首页查询订单数 * @param isOpen 是否开放true开放false全部 * @return */ diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainService.java index 42415b0f..0b606b2c 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainService.java @@ -1,16 +1,18 @@ package com.win.module.wms.service.supplierdeliverRecord; -import java.util.*; -import javax.validation.*; - import com.win.framework.common.pojo.CustomConditions; +import com.win.framework.common.pojo.PageResult; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainCreateReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainExportReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainPageReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainUpdateReqVO; import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordDetailDO; import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordMainDO; -import com.win.framework.common.pojo.PageResult; + +import javax.validation.Valid; +import java.util.Collection; +import java.util.List; +import java.util.Map; /** * 供应商发货记录主 Service 接口 @@ -91,4 +93,17 @@ public interface SupplierdeliverRecordMainService { * @return 供应商发货记录子 */ public SupplierdeliverRecordDetailDO selectSupplierdeliverRecordMainDO(String psupplierCode,String pasnNumber, String pitemCode, String ppoNumber, String ppoLine); + + /** + * 首页查询收货订单数 + * @param isTake 是否收货true已收货false全部 + * @return 收货订单数 + */ + long getSupplierdeliverCount(boolean isTake); + + /** + * 本月发货单趋势 + * @return 每天发货数量 + */ + List> getSupplierdeliverMonthCount(); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainServiceImpl.java index 2f37f87b..9f7d1ed8 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordMainServiceImpl.java @@ -3,26 +3,27 @@ package com.win.module.wms.service.supplierdeliverRecord; import cn.hutool.core.exceptions.UtilException; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.win.framework.common.pojo.CustomConditions; +import com.win.framework.common.pojo.PageResult; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainCreateReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainExportReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainPageReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainUpdateReqVO; +import com.win.module.wms.convert.supplierdeliverRecord.SupplierdeliverRecordMainConvert; import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordDetailDO; +import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordMainDO; import com.win.module.wms.dal.mysql.supplierdeliverRecord.SupplierdeliverRecordDetailMapper; +import com.win.module.wms.dal.mysql.supplierdeliverRecord.SupplierdeliverRecordMainMapper; import org.springframework.stereotype.Service; -import javax.annotation.Resource; import org.springframework.validation.annotation.Validated; -import java.util.*; - -import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordMainDO; -import com.win.framework.common.pojo.PageResult; - -import com.win.module.wms.convert.supplierdeliverRecord.SupplierdeliverRecordMainConvert; -import com.win.module.wms.dal.mysql.supplierdeliverRecord.SupplierdeliverRecordMainMapper; +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.Collection; +import java.util.List; +import java.util.Map; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; -import static com.win.module.wms.enums.ErrorCodeConstants.*; +import static com.win.module.wms.enums.ErrorCodeConstants.SUPPLIERDELIVER_RECORD_MAIN_NOT_EXISTS; /** * 供应商发货记录主 Service 实现类 @@ -55,10 +56,12 @@ public class SupplierdeliverRecordMainServiceImpl implements SupplierdeliverReco SupplierdeliverRecordMainDO updateObj = SupplierdeliverRecordMainConvert.INSTANCE.convert(updateReqVO); supplierdeliverRecordMainMapper.updateById(updateObj); } + @Override public PageResult getSupplierdeliverRecordMainSenior(CustomConditions conditions) { return supplierdeliverRecordMainMapper.selectSenior(conditions); } + @Override public void deleteSupplierdeliverRecordMain(Long id) { // 校验存在 @@ -92,27 +95,52 @@ public class SupplierdeliverRecordMainServiceImpl implements SupplierdeliverReco public List getSupplierdeliverRecordMainList(SupplierdeliverRecordMainExportReqVO exportReqVO) { return supplierdeliverRecordMainMapper.selectList(exportReqVO); } + @Override - public SupplierdeliverRecordDetailDO selectSupplierdeliverRecordMainDO(String psupplierCode,String pasnNumber, String pitemCode, String ppoNumber, String ppoLine) { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("asn_number",pasnNumber); - queryWrapper.eq("supplier_code",psupplierCode); + public SupplierdeliverRecordDetailDO selectSupplierdeliverRecordMainDO(String psupplierCode, String pasnNumber, String pitemCode, String ppoNumber, String ppoLine) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("asn_number", pasnNumber); + queryWrapper.eq("supplier_code", psupplierCode); SupplierdeliverRecordMainDO supplierdeliverRecordMainDO = supplierdeliverRecordMainMapper.selectOne(queryWrapper); - if(supplierdeliverRecordMainDO != null && "TRUE".equals(supplierdeliverRecordMainDO.getAvailable())){ - QueryWrapper queryWrapper1 = new QueryWrapper(); - queryWrapper1.eq("master_id",supplierdeliverRecordMainDO.getId()); - queryWrapper1.eq("item_code",pitemCode); - queryWrapper1.eq("po_number",ppoNumber); - queryWrapper1.eq("po_line",ppoLine); + if (supplierdeliverRecordMainDO != null && "TRUE".equals(supplierdeliverRecordMainDO.getAvailable())) { + QueryWrapper queryWrapper1 = new QueryWrapper<>(); + queryWrapper1.eq("master_id", supplierdeliverRecordMainDO.getId()); + queryWrapper1.eq("item_code", pitemCode); + queryWrapper1.eq("po_number", ppoNumber); + queryWrapper1.eq("po_line", ppoLine); SupplierdeliverRecordDetailDO supplierdeliverRecordDetailDO = supplierdeliverRecordDetailMapper.selectOne(queryWrapper1); - if(supplierdeliverRecordDetailDO != null){ + if (supplierdeliverRecordDetailDO != null) { return supplierdeliverRecordDetailDO; - }else { - throw new UtilException( "供应商发货明细:订单号" + ppoNumber + "、订单行" + ppoLine + "物品代码、" + pitemCode + "无效"); + } else { + throw new UtilException("供应商发货明细:订单号" + ppoNumber + "、订单行" + ppoLine + "物品代码、" + pitemCode + "无效"); } - }else { - throw new UtilException( "发货订单" + pasnNumber + "无效"); + } else { + throw new UtilException("发货订单" + pasnNumber + "无效"); } } + + @Override + public long getSupplierdeliverCount(boolean isTake) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("available", "TRUE"); + if (isTake) { + queryWrapper.inSql("asn_number", "SELECT asn_number FROM record_purchasereceipt_main WHERE available='TRUE'"); + } else { + queryWrapper.notInSql("asn_number", "SELECT asn_number FROM record_purchasereceipt_main WHERE available='TRUE'"); + } + return supplierdeliverRecordMainMapper.selectCount(queryWrapper); + } + + @Override + public List> getSupplierdeliverMonthCount() { + LocalDateTime endTime = LocalDateTime.now(); + LocalDateTime beginTime = endTime.withDayOfMonth(1).withHour(0).withMinute(0).withSecond(0).withNano(0); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.select("DATE_FORMAT(create_time, '%Y-%m-%d') `date`", "count(1) c"); + queryWrapper.between("create_time", beginTime, endTime); + queryWrapper.groupBy("`date`"); + queryWrapper.orderByAsc("`date`"); + return supplierdeliverRecordMainMapper.selectMaps(queryWrapper); + } } From 9219ee6c576af8f9bc2470907e42f882c2530463 Mon Sep 17 00:00:00 2001 From: yejiaxing <591141169@qq.com> Date: Fri, 15 Dec 2023 09:27:34 +0800 Subject: [PATCH 02/10] =?UTF-8?q?BUG=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/wms/enums/ErrorCodeConstants.java | 1 + .../purchase/PurchaseMainServiceImpl.java | 4 +- .../PurchasePlanMainServiceImpl.java | 53 ++++++++----------- ...SupplierdeliverRequestMainServiceImpl.java | 11 +++- 4 files changed, 34 insertions(+), 35 deletions(-) diff --git a/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java b/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java index 19671284..0591617e 100644 --- a/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java +++ b/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java @@ -354,6 +354,7 @@ public interface ErrorCodeConstants { //标签定义ErrorCode ErrorCode LABLE_TYPE_NOT_EXISTS = new ErrorCode(1_000_059_000, "标签定义不存在"); ErrorCode LABLE_AND_PACK_TYPE_NOT_EXISTS = new ErrorCode(1_000_059_000, "包装和标签已存在,无法再次生成"); + ErrorCode LABLE_AND_PACK_TYPE_NO_EXISTS = new ErrorCode(1_000_059_000, "包装和标签不存在,请生成标签后再进行处理操作"); //条码片段ErrorCode ErrorCode BARCODE_NOT_EXISTS = new ErrorCode(1_000_060_000, "条码片段不存在"); ErrorCode BARCODE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_000_060_001, "导入条码片段不能为空"); diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainServiceImpl.java index aa986dca..02217d06 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchase/PurchaseMainServiceImpl.java @@ -530,7 +530,8 @@ public class PurchaseMainServiceImpl implements PurchaseMainService { if (businesstypeDO != null) { purchasePlanMainDO.setBusinessType(businesstypeDO.getCode()); } - purchasePlanMainDO.setNumber(mainDO.getNumber()); + String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_PLAN.getCode()); + purchasePlanMainDO.setNumber(number); purchasePlanMainDO.setAvailable("TRUE"); //供应商代码 purchasePlanMainDO.setSupplierCode(mainDO.getSupplierCode()); @@ -558,6 +559,7 @@ public class PurchaseMainServiceImpl implements PurchaseMainService { for (PurchaseDetailDO purchaseDetailDO : purchasePlanDetailDOList) { PurchasePlanDetailDO purchasePlanDetailDO = new PurchasePlanDetailDO(); purchasePlanDetailDO.setMasterId(purchasePlanMainDO.getId()); + purchasePlanDetailDO.setNumber(number); purchasePlanDetailDO.setPlanQty(purchaseDetailDO.getOrderQty()); purchasePlanDetailDO.setPoNumber(purchaseDetailDO.getNumber()); purchasePlanDetailDO.setPoLine(purchaseDetailDO.getLineNumber()); diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasePlan/PurchasePlanMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasePlan/PurchasePlanMainServiceImpl.java index a742c4c4..6092abea 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasePlan/PurchasePlanMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasePlan/PurchasePlanMainServiceImpl.java @@ -222,8 +222,9 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { //校验子表公共方法(适用于新增/修改) private void validatorDetailMethod(PurchasePlanDetailDO detailDo, PurchasePlanMainDO mainDo) { this.validatorItembasic(detailDo.getItemCode()); - this.validatorSupplierItemExist(mainDo.getSupplierCode(),detailDo.getItemCode()); + this.validatorSupplierItemExist(mainDo.getSupplierCode(), detailDo.getItemCode()); } + @Override @Transactional public List importPurchasePlanMainList(List datas, Integer mode, boolean updatePart) { @@ -268,7 +269,7 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { detailDO.setNumber(mainDo.getNumber()); detailDO.setShippedQty(BigDecimal.ZERO); detailDO.setAvailable("TRUE"); - DictDataRespDTO uom = dictDataApi.selectDictTypeAndLabel(DictTypeConstants.UOM,detailDO.getUom()); + DictDataRespDTO uom = dictDataApi.selectDictTypeAndLabel(DictTypeConstants.UOM, detailDO.getUom()); detailDO.setUom(uom.getValue()); //选择已发布状态下订单号、订单行、零件号 判断订单类型 QueryWrapper purchaseDetailDOQueryWrapper = new QueryWrapper<>(); @@ -276,7 +277,7 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { purchaseDetailDOQueryWrapper.eq("item_code", detailDO.getItemCode()); purchaseDetailDOQueryWrapper.eq("line_number ", detailDO.getPoLine()); PurchaseDetailDO purchaseDetailDO = purchaseDetailMapper.selectOne(purchaseDetailDOQueryWrapper); - if(purchaseDetailDO!=null){ + if (purchaseDetailDO != null) { PurchaseMainDO purchaseMainDO = purchaseMainService.getPurchaseMain(purchaseDetailDO.getMasterId()); //如果是离散单 if ("DISCRETE".equals(purchaseMainDO.getType())) { @@ -333,6 +334,7 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { } return messageDetail; } + //新增校验 private PurchasePlanMainDO validatorToCreate(PurchasePlanMainCreateReqVO createReqVO) { PurchasePlanMainDO purchasePlanMainDO = validatorMainMethod(createReqVO); @@ -353,7 +355,7 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { purchaseDetailDOQueryWrapper.eq("item_code", purchasePlanDetailDO.getItemCode()); purchaseDetailDOQueryWrapper.eq("line_number ", purchasePlanDetailDO.getPoLine()); PurchaseDetailDO purchaseDetailDO = purchaseDetailMapper.selectOne(purchaseDetailDOQueryWrapper); - if(purchaseDetailDO!=null){ + if (purchaseDetailDO != null) { PurchaseMainDO purchaseMainDO = purchaseMainService.getPurchaseMain(purchaseDetailDO.getMasterId()); //如果是离散单 if ("DISCRETE".equals(purchaseMainDO.getType())) { @@ -451,35 +453,22 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { QueryWrapper purchasePlanMainDOQueryWrapper = new QueryWrapper<>(); purchasePlanMainDOQueryWrapper.eq("number", poNumber); purchasePlanMainDOQueryWrapper.eq("status", PurchasePlanStatusEnum.ACCEPTED.getCode()); - List purchasePlanMainDOList = purchasePlanMainMapper.selectList(purchasePlanMainDOQueryWrapper); - if (purchasePlanMainDOList != null && !purchasePlanMainDOList.isEmpty()) { - for (PurchasePlanMainDO purchasePlanMainDO : purchasePlanMainDOList) { - int i = 0; - QueryWrapper purchasePlanDetailDOQueryWrapper = new QueryWrapper<>(); - purchasePlanDetailDOQueryWrapper.eq("number", poNumber); - purchasePlanDetailDOQueryWrapper.eq("po_line", poLine); - purchasePlanDetailDOQueryWrapper.eq("item_code", itemCode); - purchasePlanDetailDOQueryWrapper.eq("available", "TRUE"); - List purchasePlanDetailDOList = purchasePlanDetailMapper.selectList(purchasePlanDetailDOQueryWrapper); - if (purchasePlanDetailDOList != null && !purchasePlanDetailDOList.isEmpty()) { - for (PurchasePlanDetailDO purchasePlanDetailDO : purchasePlanDetailDOList) { - purchasePlanDetailDO.setShippedQty(shippedQty); - if (purchasePlanDetailDO.getPlanQty().compareTo(purchasePlanDetailDO.getShippedQty()) == 0) { - purchasePlanDetailDO.setAvailable("FALSE"); - } - purchasePlanDetailMapper.updateById(purchasePlanDetailDO); - } - for (PurchasePlanDetailDO purchasePlanDetailDO : purchasePlanDetailDOList) { - if ("TRUE".equals(purchasePlanDetailDO.getAvailable())) { - i = 1; - } - } - } - if (i == 0) { - purchasePlanMainDO.setStatus(PurchasePlanStatusEnum.COMPLETED.getCode()); + PurchasePlanMainDO purchasePlanMainDO = purchasePlanMainMapper.selectOne(purchasePlanMainDOQueryWrapper); + if (purchasePlanMainDO != null) { + QueryWrapper purchasePlanDetailDOQueryWrapper = new QueryWrapper<>(); + purchasePlanDetailDOQueryWrapper.eq("number", poNumber); + purchasePlanDetailDOQueryWrapper.eq("po_line", poLine); + purchasePlanDetailDOQueryWrapper.eq("item_code", itemCode); + purchasePlanDetailDOQueryWrapper.eq("available", "TRUE"); + List purchasePlanDetailDOList = purchasePlanDetailMapper.selectList(purchasePlanDetailDOQueryWrapper); + for (PurchasePlanDetailDO purchasePlanDetailDO : purchasePlanDetailDOList) { + purchasePlanDetailDO.setShippedQty(shippedQty); + if (purchasePlanDetailDO.getPlanQty().compareTo(purchasePlanDetailDO.getShippedQty()) == 0) { + purchasePlanDetailDO.setAvailable("FALSE"); } - purchasePlanMainMapper.updateById(purchasePlanMainDO); + purchasePlanDetailMapper.updateById(purchasePlanDetailDO); } + //叶佳兴 } else { throw new ServiceException(PURCHASE_PLAN_DETAIL_ACCEPTED); } @@ -489,7 +478,7 @@ public class PurchasePlanMainServiceImpl implements PurchasePlanMainService { public long getPurchasePlanCount(boolean isOpen) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("available", "TRUE"); - if(isOpen) { + if (isOpen) { queryWrapper.ne("status", OrderStatusEnum.CLOSED.getCode()); } return purchasePlanMainMapper.selectCount(queryWrapper); diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java index bb531fab..e122a710 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java @@ -655,6 +655,13 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.eq("id", id); SupplierdeliverRequestMainDO mainDO = supplierdeliverRequestMainMapper.selectOne(queryWrapper); + //判断ASN单号 是否重复,如果重复不生成 + QueryWrapper doQueryWrapper = new QueryWrapper(); + doQueryWrapper.eq("asn_number", mainDO.getAsnNumber()); + Long count = packageMapper.selectCount(doQueryWrapper); + if (count == 0) { + throw exception(LABLE_AND_PACK_TYPE_NO_EXISTS); + } //子表 QueryWrapper supplierdeliverRequestDetailDOQueryWrapper = new QueryWrapper(); supplierdeliverRequestDetailDOQueryWrapper.eq("master_id", id); @@ -725,10 +732,10 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq List packageDOList = packageMapper.selectList(packageDOQueryWrapper); for (PackageDO packageDO : packageDOList) { PurchasereceiptRequestDetailDO purchasereceiptRequestDetailDO = new PurchasereceiptRequestDetailDO(); - purchasereceiptRequestDetailDO.setMasterId(purchasereceiptRequestMainDO.getId()); - purchasereceiptRequestDetailDO.setNumber(number2); //供应商子表 BeanUtils.copyProperties(detailDO, purchasereceiptRequestDetailDO); + purchasereceiptRequestDetailDO.setMasterId(purchasereceiptRequestMainDO.getId()); + purchasereceiptRequestDetailDO.setNumber(number2); purchasereceiptRequestDetailDO.setContainerNumber(null); purchasereceiptRequestDetailDO.setBatch(packageDO.getBatch()); purchasereceiptRequestDetailDO.setAltBatch(packageDO.getAltBatch()); From 71be086396fbe286ef66483f9419f5d219c7227d Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Fri, 15 Dec 2023 12:24:38 +0800 Subject: [PATCH 03/10] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PurchasereceiptRequestMainServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java index 56cc6db5..009ce73e 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java @@ -423,6 +423,7 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq for(PurchasereceiptRequestDetailDO purchasereceiptRequestDetailDO : detailDOList) { PurchasereceiptRecordDetailCreateReqVO purchasereceiptRecordDetailCreateReqVO = new PurchasereceiptRecordDetailCreateReqVO(); BeanUtils.copyProperties(purchasereceiptRequestDetailDO, purchasereceiptRecordDetailCreateReqVO); + purchasereceiptRecordDetailCreateReqVO.setToLocationCode(purchasereceiptRequestDetailDO.getDefaultToLocationCode()); purchasereceiptRecordDetailCreateReqVO.setNumber(number); purchasereceiptRecordDetailMapper.insert(PurchasereceiptRecordDetailConvert.INSTANCE.convert(purchasereceiptRecordDetailCreateReqVO)); } @@ -540,7 +541,7 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq BeanUtils.copyProperties(purchasereceiptJobDetailDO, expectinCreateReqVO); expectinCreateReqVO.setJobNumber(number); expectinCreateReqVO.setBusinessType(purchasereceiptJobMainDO.getBusinessType()); - expectinCreateReqVO.setLocationCode(purchasereceiptJobDetailDO.getFromLocationCode()); + expectinCreateReqVO.setLocationCode(purchasereceiptJobDetailDO.getToLocationCode()); expectinCreateReqVO.setOwnerCode(purchasereceiptJobDetailDO.getFromOwnerCode()); expectinCreateReqVOList.add(expectinCreateReqVO); } From 4f620f444f523c0da2a10bcebe897b2b7fd06499 Mon Sep 17 00:00:00 2001 From: yejiaxing <591141169@qq.com> Date: Fri, 15 Dec 2023 12:34:21 +0800 Subject: [PATCH 04/10] =?UTF-8?q?BUG=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...SupplierdeliverRecordDetailController.java | 16 ++--- .../SupplierdeliverRecordDetailMapper.java | 6 ++ .../SupplierdeliverRecordDetailService.java | 7 ++ ...upplierdeliverRecordDetailServiceImpl.java | 23 +++++++ ...SupplierdeliverRequestMainServiceImpl.java | 64 +++++++++---------- 5 files changed, 75 insertions(+), 41 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/supplierdeliverRecord/SupplierdeliverRecordDetailController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/supplierdeliverRecord/SupplierdeliverRecordDetailController.java index 67fdec3d..b7a67384 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/supplierdeliverRecord/SupplierdeliverRecordDetailController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/supplierdeliverRecord/SupplierdeliverRecordDetailController.java @@ -119,13 +119,13 @@ public class SupplierdeliverRecordDetailController { ExcelUtils.write(response, "供应商发货记录子.xls", "数据", SupplierdeliverRecordDetailExcelVO.class, datas); } -// @GetMapping("/allList") -// @Operation(summary = "高级搜索获得供应商发货记录子信息") -// @PreAuthorize("@ss.hasPermission('wms:supplierdeliver-record-detail:allList')") -// public CommonResult> selectAllList(@RequestParam String number) { -// List list = supplierdeliverRecordDetailService.selectAllList(number); -// List result = SupplierdeliverRecordDetailConvert.INSTANCE.convertList(list); -// return success(result); -// } + @GetMapping("/allList") + @Operation(summary = "高级搜索获得供应商发货记录子信息") + @PreAuthorize("@ss.hasPermission('wms:supplierdeliver-record-detail:allList')") + public CommonResult> selectAllList(@RequestParam String asnNumber) { + List list = supplierdeliverRecordDetailService.selectAllList(asnNumber); + List result = SupplierdeliverRecordDetailConvert.INSTANCE.convertList(list); + return success(result); + } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/supplierdeliverRecord/SupplierdeliverRecordDetailMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/supplierdeliverRecord/SupplierdeliverRecordDetailMapper.java index 32e5cba9..63c2e5e8 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/supplierdeliverRecord/SupplierdeliverRecordDetailMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/supplierdeliverRecord/SupplierdeliverRecordDetailMapper.java @@ -9,6 +9,7 @@ import com.win.framework.mybatis.core.mapper.BaseMapperX; import com.win.framework.mybatis.core.util.QueryWrapperUtils; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailExportReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailPageReqVO; +import com.win.module.wms.dal.dataobject.purchasePlan.PurchasePlanDetailDO; import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordDetailDO; import org.apache.ibatis.annotations.Mapper; @@ -107,4 +108,9 @@ public interface SupplierdeliverRecordDetailMapper extends BaseMapperX selectAllList(Long masterId) { + return selectList(new LambdaQueryWrapperX() + .eq(SupplierdeliverRecordDetailDO::getMasterId, masterId)); + } + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailService.java index 113612c7..32f2bb36 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailService.java @@ -78,4 +78,11 @@ public interface SupplierdeliverRecordDetailService { */ List getSupplierdeliverRecordDetailList(SupplierdeliverRecordDetailExportReqVO exportReqVO); + /** + * 高级搜索获得供应商发货记录子信息 + * @param asnNumber + * @return + */ + List selectAllList( String asnNumber); + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailServiceImpl.java index 3522238a..fd4e5667 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRecord/SupplierdeliverRecordDetailServiceImpl.java @@ -1,13 +1,20 @@ package com.win.module.wms.service.supplierdeliverRecord; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.win.framework.common.pojo.CustomConditions; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailCreateReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailExportReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailPageReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailUpdateReqVO; +import com.win.module.wms.dal.dataobject.purchase.PurchaseDetailDO; +import com.win.module.wms.dal.dataobject.purchasePlan.PurchasePlanDetailDO; +import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordMainDO; +import com.win.module.wms.dal.mysql.supplierdeliverRecord.SupplierdeliverRecordMainMapper; import org.springframework.stereotype.Service; + import javax.annotation.Resource; + import org.springframework.validation.annotation.Validated; import java.util.*; @@ -32,6 +39,8 @@ public class SupplierdeliverRecordDetailServiceImpl implements SupplierdeliverRe @Resource private SupplierdeliverRecordDetailMapper supplierdeliverRecordDetailMapper; + @Resource + private SupplierdeliverRecordMainMapper supplierdeliverRecordMainMapper; @Override public Long createSupplierdeliverRecordDetail(SupplierdeliverRecordDetailCreateReqVO createReqVO) { @@ -50,10 +59,12 @@ public class SupplierdeliverRecordDetailServiceImpl implements SupplierdeliverRe SupplierdeliverRecordDetailDO updateObj = SupplierdeliverRecordDetailConvert.INSTANCE.convert(updateReqVO); supplierdeliverRecordDetailMapper.updateById(updateObj); } + @Override public PageResult getSupplierdeliverRecordDetailSenior(CustomConditions conditions) { return supplierdeliverRecordDetailMapper.selectSenior(conditions); } + @Override public void deleteSupplierdeliverRecordDetail(Long id) { // 校验存在 @@ -88,4 +99,16 @@ public class SupplierdeliverRecordDetailServiceImpl implements SupplierdeliverRe return supplierdeliverRecordDetailMapper.selectList(exportReqVO); } + @Override + public List selectAllList(String asnNumber) { + List supplierdeliverRecordDetailDOList = new ArrayList<>(); + QueryWrapper supplierdeliverRecordMainDOQueryWrapper = new QueryWrapper<>(); + supplierdeliverRecordMainDOQueryWrapper.eq("asn_number", asnNumber); + SupplierdeliverRecordMainDO supplierdeliverRecordMainDO = supplierdeliverRecordMainMapper.selectOne(supplierdeliverRecordMainDOQueryWrapper); + if (supplierdeliverRecordMainDO != null) { + supplierdeliverRecordDetailDOList = supplierdeliverRecordDetailMapper.selectAllList(supplierdeliverRecordMainDO.getId()); + } + return supplierdeliverRecordDetailDOList; + } + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java index e122a710..fa83ac9d 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java @@ -12,6 +12,10 @@ import com.win.module.infra.api.trends.TrendsApi; import com.win.module.infra.enums.TrendsTypeEnum; import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.enums.serialNumber.RuleCodeEnum; +import com.win.module.wms.controller.purchasereceiptRequest.vo.PurchasereceiptRequestDetailCreateReqVO; +import com.win.module.wms.controller.purchasereceiptRequest.vo.PurchasereceiptRequestMainCreateReqVO; +import com.win.module.wms.controller.putawayRequest.vo.PutawayRequestDetailCreateReqVO; +import com.win.module.wms.controller.putawayRequest.vo.PutawayRequestMainCreateReqVO; import com.win.module.wms.controller.rule.vo.RuleRespVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordDetailCreateReqVO; import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainCreateReqVO; @@ -50,6 +54,7 @@ import com.win.module.wms.service.location.LocationService; import com.win.module.wms.service.packageMassage.PackageService; import com.win.module.wms.service.purchase.PurchaseMainService; import com.win.module.wms.service.purchasePlan.PurchasePlanMainService; +import com.win.module.wms.service.purchasereceiptRequest.PurchasereceiptRequestMainService; import com.win.module.wms.service.requestsetting.RequestsettingService; import com.win.module.wms.service.rule.RuleService; import com.win.module.wms.service.shift.ShiftService; @@ -124,6 +129,8 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq private PurchaseMainService purchaseMainService; @Resource private LocationService locationService; + @Resource + PurchasereceiptRequestMainService purchasereceiptRequestMainService; @Override @Transactional @@ -710,18 +717,10 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq supplierdeliverRecordDetailDO.setUpdateTime(null); supplierdeliverRecordDetailMapper.insert(supplierdeliverRecordDetailDO); } - //生成采购收货申请 叶佳兴 - PurchasereceiptRequestMainDO purchasereceiptRequestMainDO = new PurchasereceiptRequestMainDO(); - BeanUtils.copyProperties(mainDO, purchasereceiptRequestMainDO); - String number2 = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode()); - purchasereceiptRequestMainDO.setNumber(number2); - purchasereceiptRequestMainDO.setId(null); - purchasereceiptRequestMainDO.setCreator(null); - purchasereceiptRequestMainDO.setCreateTime(null); - purchasereceiptRequestMainDO.setUpdater(null); - purchasereceiptRequestMainDO.setUpdateTime(null); - purchasereceiptRequestMainMapper.insert(purchasereceiptRequestMainDO); + PurchasereceiptRequestMainCreateReqVO purchasereceiptRequestMainCreateReqVO = new PurchasereceiptRequestMainCreateReqVO(); + BeanUtils.copyProperties(mainDO, purchasereceiptRequestMainCreateReqVO); + List purchasereceiptRequestDetailCreateReqVOList = new ArrayList<>(); for (SupplierdeliverRequestDetailDO detailDO : detailDOList) { //包装 QueryWrapper packageDOQueryWrapper = new QueryWrapper(); @@ -731,30 +730,20 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq packageDOQueryWrapper.eq("item_code", detailDO.getItemCode()); List packageDOList = packageMapper.selectList(packageDOQueryWrapper); for (PackageDO packageDO : packageDOList) { - PurchasereceiptRequestDetailDO purchasereceiptRequestDetailDO = new PurchasereceiptRequestDetailDO(); + PurchasereceiptRequestDetailCreateReqVO purchasereceiptRequestDetailCreateReqVO = new PurchasereceiptRequestDetailCreateReqVO(); //供应商子表 - BeanUtils.copyProperties(detailDO, purchasereceiptRequestDetailDO); - purchasereceiptRequestDetailDO.setMasterId(purchasereceiptRequestMainDO.getId()); - purchasereceiptRequestDetailDO.setNumber(number2); - purchasereceiptRequestDetailDO.setContainerNumber(null); - purchasereceiptRequestDetailDO.setBatch(packageDO.getBatch()); - purchasereceiptRequestDetailDO.setAltBatch(packageDO.getAltBatch()); - purchasereceiptRequestDetailDO.setArriveDate(detailDO.getArriveDate()); - purchasereceiptRequestDetailDO.setProduceDate(packageDO.getProduceDate()); - purchasereceiptRequestDetailDO.setExpireDate(packageDO.getExpireDate()); - purchasereceiptRequestDetailDO.setPackingNumber(packageDO.getNumber()); - purchasereceiptRequestDetailDO.setInventoryStatus("INS"); - purchasereceiptRequestDetailDO.setFromLocationCode(null); + BeanUtils.copyProperties(detailDO, purchasereceiptRequestDetailCreateReqVO); + purchasereceiptRequestDetailCreateReqVO.setBatch(packageDO.getBatch()); + purchasereceiptRequestDetailCreateReqVO.setAltBatch(packageDO.getAltBatch()); + purchasereceiptRequestDetailCreateReqVO.setArriveDate(detailDO.getArriveDate()); + purchasereceiptRequestDetailCreateReqVO.setProduceDate(packageDO.getProduceDate()); + purchasereceiptRequestDetailCreateReqVO.setExpireDate(packageDO.getExpireDate()); + purchasereceiptRequestDetailCreateReqVO.setPackingNumber(packageDO.getNumber()); + purchasereceiptRequestDetailCreateReqVO.setInventoryStatus("INS"); SupplieritemDO supplieritemDO = supplieritemService.selectSupplierItemExist(mainDO.getSupplierCode(), detailDO.getItemCode()); - purchasereceiptRequestDetailDO.setDefaultToLocationCode(supplieritemDO.getDefaultLocationCode()); - purchasereceiptRequestDetailDO.setRemark(null); - purchasereceiptRequestDetailDO.setSiteId(null); - purchasereceiptRequestDetailDO.setId(null); - purchasereceiptRequestDetailDO.setCreator(null); - purchasereceiptRequestDetailDO.setCreateTime(null); - purchasereceiptRequestDetailDO.setUpdater(null); - purchasereceiptRequestDetailDO.setUpdateTime(null); - purchasereceiptRequestDetailMapper.insert(purchasereceiptRequestDetailDO); + purchasereceiptRequestDetailCreateReqVO.setDefaultToLocationCode(supplieritemDO.getDefaultLocationCode()); + purchasereceiptRequestDetailCreateReqVO.setId(null); + purchasereceiptRequestDetailCreateReqVOList.add(purchasereceiptRequestDetailCreateReqVO); } //更新要货计划的已发货数量 purchasePlanMainService.updatePlanPurchaseShippedQty(detailDO.getNumber(), mainDO.getPpNumber(), detailDO.getPoLine() @@ -762,6 +751,15 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq //更新要货计划的已发货数量 purchaseMainService.updateOrderPurchaseShippedQty(detailDO.getPoNumber(), detailDO.getPoLine(), detailDO.getItemCode(), detailDO.getQty()); } + purchasereceiptRequestMainCreateReqVO.setId(null); + purchasereceiptRequestMainCreateReqVO.setCreateTime(null); + purchasereceiptRequestMainCreateReqVO.setCreator(null); + purchasereceiptRequestMainCreateReqVO.setUpdateTime(null); + purchasereceiptRequestMainCreateReqVO.setUpdater(null); + purchasereceiptRequestMainCreateReqVO.setSubList(purchasereceiptRequestDetailCreateReqVOList); + if(!purchasereceiptRequestDetailCreateReqVOList.isEmpty()) { + purchasereceiptRequestMainService.createPurchasereceiptRequestMain(purchasereceiptRequestMainCreateReqVO); + } SupplierdeliverRequestMainDO supplierdeliverRequestMain = supplierdeliverRequestMainMapper.selectById(id); supplierdeliverRequestMain.setStatus(RequestStatusEnum.COMPLETED.getCode()); From 6c04d888c88e2f0420fb3a178112ba88343509cf Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Fri, 15 Dec 2023 13:38:46 +0800 Subject: [PATCH 05/10] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PurchasereceiptJobMainServiceImpl.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java index f4c8290a..606ddc7b 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java @@ -300,10 +300,12 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain purchasereceiptRecordDetailDO.setQty(purchasereceiptJobDetailUpdateReqVOTemp.getHandleQty()); purchasereceiptRecordDetailDO.setFromContainerNumber(purchasereceiptJobDetailDO.getContainerNumber()); purchasereceiptRecordDetailDO.setToContainerNumber(purchasereceiptJobDetailDO.getContainerNumber()); - LocationDO locationDO1 = locationService.selectLocation(purchasereceiptJobDetailDO.getFromLocationCode()); - purchasereceiptRecordDetailDO.setFromAreaCode(locationDO1.getAreaCode()); - purchasereceiptRecordDetailDO.setFromLocationGroupCode(locationDO1.getLocationGroupCode()); - LocationDO locationDO2 = locationService.selectLocation(purchasereceiptJobDetailDO.getFromLocationCode()); + if(purchasereceiptJobDetailDO.getFromLocationCode() != null && !purchasereceiptJobDetailDO.getFromLocationCode().isEmpty()) { + LocationDO locationDO1 = locationService.selectLocation(purchasereceiptJobDetailDO.getFromLocationCode()); + purchasereceiptRecordDetailDO.setFromAreaCode(locationDO1.getAreaCode()); + purchasereceiptRecordDetailDO.setFromLocationGroupCode(locationDO1.getLocationGroupCode()); + } + LocationDO locationDO2 = locationService.selectLocation(purchasereceiptJobDetailDO.getToLocationCode()); purchasereceiptRecordDetailDO.setToAreaCode(locationDO2.getAreaCode()); purchasereceiptRecordDetailDO.setToLocationGroupCode(locationDO2.getLocationGroupCode()); PurchaseDetailDO purchaseDetailDO = purchaseDetailService.selectPurchaseDetail(purchasereceiptJobDetailDO.getPoNumber(), purchasereceiptJobDetailDO.getPoLine(), purchasereceiptJobDetailDO.getItemCode()); @@ -350,10 +352,12 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain purchaseshortageDetailDO.setToPackingNumber(purchasereceiptJobDetailDO.getPackingNumber()); purchaseshortageDetailDO.setFromContainerNumber(purchasereceiptJobDetailDO.getContainerNumber()); purchaseshortageDetailDO.setToContainerNumber(purchasereceiptJobDetailDO.getContainerNumber()); - LocationDO locationDO1 = locationService.selectLocation(purchasereceiptJobDetailDO.getFromLocationCode()); - purchaseshortageDetailDO.setFromAreaCode(locationDO1.getAreaCode()); - purchaseshortageDetailDO.setFromLocationGroupCode(locationDO1.getLocationGroupCode()); - LocationDO locationDO2 = locationService.selectLocation(purchasereceiptJobDetailDO.getFromLocationCode()); + if(purchasereceiptJobDetailDO.getFromLocationCode() != null && !purchasereceiptJobDetailDO.getFromLocationCode().isEmpty()) { + LocationDO locationDO1 = locationService.selectLocation(purchasereceiptJobDetailDO.getFromLocationCode()); + purchaseshortageDetailDO.setFromAreaCode(locationDO1.getAreaCode()); + purchaseshortageDetailDO.setFromLocationGroupCode(locationDO1.getLocationGroupCode()); + } + LocationDO locationDO2 = locationService.selectLocation(purchasereceiptJobDetailDO.getToLocationCode()); purchaseshortageDetailDO.setToAreaCode(locationDO2.getAreaCode()); purchaseshortageDetailDO.setToLocationGroupCode(locationDO2.getLocationGroupCode()); PurchaseDetailDO purchaseDetailDO = purchaseDetailService.selectPurchaseDetail(purchasereceiptJobDetailDO.getPoNumber(), purchasereceiptJobDetailDO.getPoLine(), purchasereceiptJobDetailDO.getItemCode()); From 9896890cce8ba4aea5664bf75e8c928eeabd16e3 Mon Sep 17 00:00:00 2001 From: yejiaxing <591141169@qq.com> Date: Fri, 15 Dec 2023 14:43:11 +0800 Subject: [PATCH 06/10] =?UTF-8?q?BUG=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SupplierdeliverRequestMainServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java index fa83ac9d..d1af3bc7 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/supplierdeliverRequest/SupplierdeliverRequestMainServiceImpl.java @@ -360,6 +360,8 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq supplierdeliverRequestDetailDO.setCreateTime(null); supplierdeliverRequestDetailDO.setUpdater(null); supplierdeliverRequestDetailDO.setUpdateTime(null); + ItembasicDO itembasicDO = itembasicService.selectItembasic(supplierdeliverRequestDetailDO.getItemCode()); + supplierdeliverRequestDetailDO.setItemName(itembasicDO.getName()); } supplierdeliverRequestDetailMapper.insertBatch(subDOList); return supplierdeliverRequestMainDO; @@ -697,11 +699,13 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq SupplierdeliverRecordDetailDO supplierdeliverRecordDetailDO = new SupplierdeliverRecordDetailDO(); BeanUtils.copyProperties(supplierdeliverRequestDetailDO, supplierdeliverRecordDetailDO); supplierdeliverRecordDetailDO.setNumber(number); + ItembasicDO itembasicDO = itembasicService.selectItembasic(supplierdeliverRecordDetailDO.getItemCode()); + supplierdeliverRecordDetailDO.setItemName(itembasicDO.getName()); supplierdeliverRecordDetailDO.setMasterId(supplierdeliverRecordMainDO.getId()); supplierdeliverRecordDetailDO.setFromPackingNumber(""); supplierdeliverRecordDetailDO.setToPackingNumber(""); - supplierdeliverRecordDetailDO.setFromBatch(""); - supplierdeliverRecordDetailDO.setToBatch(""); + supplierdeliverRecordDetailDO.setFromBatch(supplierdeliverRequestDetailDO.getBatch()); + supplierdeliverRecordDetailDO.setToBatch(supplierdeliverRequestDetailDO.getBatch()); supplierdeliverRecordDetailDO.setAltBatch(""); supplierdeliverRecordDetailDO.setFromContainerNumber(""); supplierdeliverRecordDetailDO.setToContainerNumber(""); @@ -739,7 +743,7 @@ public class SupplierdeliverRequestMainServiceImpl implements SupplierdeliverReq purchasereceiptRequestDetailCreateReqVO.setProduceDate(packageDO.getProduceDate()); purchasereceiptRequestDetailCreateReqVO.setExpireDate(packageDO.getExpireDate()); purchasereceiptRequestDetailCreateReqVO.setPackingNumber(packageDO.getNumber()); - purchasereceiptRequestDetailCreateReqVO.setInventoryStatus("INS"); + purchasereceiptRequestDetailCreateReqVO.setInventoryStatus("INSP"); SupplieritemDO supplieritemDO = supplieritemService.selectSupplierItemExist(mainDO.getSupplierCode(), detailDO.getItemCode()); purchasereceiptRequestDetailCreateReqVO.setDefaultToLocationCode(supplieritemDO.getDefaultLocationCode()); purchasereceiptRequestDetailCreateReqVO.setId(null); From 1d15ed9fccebc6cc87717ce34950766122fcba7b Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Fri, 15 Dec 2023 15:06:30 +0800 Subject: [PATCH 07/10] =?UTF-8?q?=E9=87=8D=E7=9B=98=E3=80=81=E7=9B=91?= =?UTF-8?q?=E7=9B=98=E5=92=8Cbug=E4=BF=AE=E5=A4=8D=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CountRequestMainController.java | 8 +++++ .../vo/CountRequestMainBaseVO.java | 12 +++++++ .../vo/CountRequestMainUpdateReqVO.java | 12 +++++++ .../inspectJob/InspectJobMainController.java | 10 +++--- .../inspectJob/vo/InspectJobMainRespVO.java | 2 +- .../CountRequestDetailConvert.java | 2 ++ .../countRequest/CountRequestMainDO.java | 19 +++++++++-- .../CountRequestDetailMapper.java | 31 +++++++++++++++++ .../countRequest/CountRequestMainService.java | 15 ++++++++- .../CountRequestMainServiceImpl.java | 33 +++++++++++++++++++ .../PutawayRequestMainServiceImpl.java | 14 ++++++-- 11 files changed, 146 insertions(+), 12 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java index f6613d1d..c3e9ffd8 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java @@ -233,4 +233,12 @@ public class CountRequestMainController { return success(count > 0); } + @PutMapping("/reCount") + @Operation(summary = "重盘") + @PreAuthorize("@ss.hasPermission('wms:count-request-main:reCount')") + public CommonResult createReCountJob(@Valid @RequestBody CountRequestMainUpdateReqVO updateReqVO) { + int result = countRequestMainService.createReCountJob(updateReqVO); + return success(result > 0); + } + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java index 67d5f1f4..2db3270f 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java @@ -81,4 +81,16 @@ public class CountRequestMainBaseVO { @Schema(description = "直接生成记录") private String directCreateRecord; + + @Schema(description = "初盘任务状态") + private String jobStatus1; + + @Schema(description = "重盘任务状态") + private String jobStatus2; + + @Schema(description = "监盘任务状态") + private String jobStatus3; + + @Schema(description = "生成盘点调整状态") + private String countAdjustStatus; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainUpdateReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainUpdateReqVO.java index 697ad94b..272bc1a4 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainUpdateReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainUpdateReqVO.java @@ -1,12 +1,24 @@ package com.win.module.wms.controller.countRequest.vo; +import com.win.framework.excel.core.annotations.SubObject; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; +import java.util.List; + @Schema(description = "管理后台 - 盘点申请主更新 Request VO") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) public class CountRequestMainUpdateReqVO extends CountRequestMainBaseVO { + @Schema(description = "类型") + private String type; + + @Schema(description = "数量") + private Integer count; + + @SubObject + @Schema(description = "子表数据") + private List subList; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/InspectJobMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/InspectJobMainController.java index 67c73a24..d07212d0 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/InspectJobMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/InspectJobMainController.java @@ -143,14 +143,14 @@ public class InspectJobMainController { public CommonResult getInspectJobById(@RequestParam("id") Long id) { InspectJobMainDO inspectJobMain = inspectJobMainService.getInspectJobMain(id); InspectJobMainRespVO result = InspectJobMainConvert.INSTANCE.convert(inspectJobMain); - if(result==null) { - return success(result); - }; + if(result == null) { + return success(null); + } InspectJobDetailExportReqVO inspectJobDetailExportReqVO = new InspectJobDetailExportReqVO(); inspectJobDetailExportReqVO.setMasterId(result.getId()); List inspectJobDetailList = inspectJobDetailService.getInspectJobDetailList(inspectJobDetailExportReqVO); - List inspectJobDetailExcelVOS = InspectJobDetailConvert.INSTANCE.convertList02(inspectJobDetailList); - result.setSubList(inspectJobDetailExcelVOS); + List inspectJobDetailRespVOList = InspectJobDetailConvert.INSTANCE.convertList(inspectJobDetailList); + result.setSubList(inspectJobDetailRespVOList); return success(result); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/vo/InspectJobMainRespVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/vo/InspectJobMainRespVO.java index 1f45fce1..56c01f26 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/vo/InspectJobMainRespVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/vo/InspectJobMainRespVO.java @@ -12,5 +12,5 @@ import java.util.List; public class InspectJobMainRespVO extends InspectJobMainBaseVO { @Schema(description = "检验任务任务子表job_inspect_detail 列表数据", requiredMode = Schema.RequiredMode.REQUIRED) - private List subList; + private List subList; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/countRequest/CountRequestDetailConvert.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/countRequest/CountRequestDetailConvert.java index 138eb2e7..cd6f9872 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/countRequest/CountRequestDetailConvert.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/countRequest/CountRequestDetailConvert.java @@ -35,6 +35,8 @@ public interface CountRequestDetailConvert { List convertList03(List list); + List convertList04(List list); + CountRequestDetailCreateReqVO convert1(CountRequestDetailDO bean); @Mappings({ diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestMainDO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestMainDO.java index af1d11ac..5385de46 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestMainDO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestMainDO.java @@ -79,8 +79,6 @@ public class CountRequestMainDO extends BaseDO { private String departmentCode; /** * 状态 - * - * 枚举 {@link TODO request_status 对应的类} */ private String status; /** @@ -107,5 +105,20 @@ public class CountRequestMainDO extends BaseDO { * 直接生成记录 */ private String directCreateRecord; - + /** + * 初盘任务状态 + */ + private String jobStatus1; + /** + * 重盘任务状态 + */ + private String jobStatus2; + /** + * 监盘任务状态 + */ + private String jobStatus3; + /** + * 生成盘点调整状态1不可生成2可生成3已生成4不需要生成 + */ + private String countAdjustStatus; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java index f1e60168..9f60c100 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java @@ -1,5 +1,6 @@ package com.win.module.wms.dal.mysql.countRequest; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.PageResult; import com.win.framework.mybatis.core.mapper.BaseMapperX; @@ -48,9 +49,39 @@ public interface CountRequestDetailMapper extends BaseMapperX selectList(Long masterId) { return selectList(new LambdaQueryWrapperX() .eq(CountRequestDetailDO::getMasterId, masterId)); } + /** + * 根据主表id随机查询 + * @param masterId 主表id + * @param count 查询数量 + * @return 子表数据 + */ + default List selectList(Long masterId, int count) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("master_id", masterId); + queryWrapper.orderByDesc("RAND()"); + queryWrapper.last("LIMIT " + count); + return selectList(queryWrapper); + } + + /** + * 根据主表id随机查询 + * @param masterId 主表id + * @return 子表数据 + */ + default List selectDifferenceList(Long masterId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("master_id", masterId); + return selectList(queryWrapper); + } + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainService.java index a549b4cf..7a33caf1 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainService.java @@ -115,5 +115,18 @@ public interface CountRequestMainService { * @return 更新数量 */ Integer abortCountRequestMain(Long id); - + /** + * 生成重盘任务 + * + * @param updateReqVO 盘点申请 + * @return 更新数量 + */ + Integer createReCountJob(CountRequestMainUpdateReqVO updateReqVO); + /** + * 生成监盘务 + * + * @param updateReqVO 盘点申请 + * @return 更新数量 + */ + Integer createSuperviseCountJob(CountRequestMainUpdateReqVO updateReqVO); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java index f8e7703c..32bc7b64 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java @@ -311,6 +311,7 @@ public class CountRequestMainServiceImpl implements CountRequestMainService { throw new ServiceException(COUNT_REQUEST_CANNOT_HANDLE); } mainDO.setStatus(requestStatusState.getState().getCode()); + mainDO.setJobStatus1("1"); //调用执行方法 this.generateJob(mainDO, countRequestDetailMapper.selectList(mainDO.getId())); trendsApi.createTrends(id, "countRequest", "执行了盘点申请", TrendsTypeEnum.UPDATE); @@ -332,6 +333,38 @@ public class CountRequestMainServiceImpl implements CountRequestMainService { return countRequestMainMapper.updateById(mainDO); } + @Override + public Integer createReCountJob(CountRequestMainUpdateReqVO updateReqVO) { + CountRequestMainDO mainDO = CountRequestMainConvert.INSTANCE.convert(updateReqVO); + mainDO.setStage("RECOUNT");//重盘 + mainDO.setJobStatus2("1"); + List detailDOList; + if(updateReqVO.getType().equals("1")) {//全部 + detailDOList = countRequestDetailMapper.selectList(updateReqVO.getId()); + } else if(updateReqVO.getType().equals("2")) {//差异 + detailDOList = countRequestDetailMapper.selectDifferenceList(updateReqVO.getId()); + } else {//选择 + detailDOList = CountRequestDetailConvert.INSTANCE.convertList04(updateReqVO.getSubList()); + } + this.generateJob(mainDO, detailDOList); + return countRequestMainMapper.updateById(mainDO); + } + + @Override + public Integer createSuperviseCountJob(CountRequestMainUpdateReqVO updateReqVO) { + CountRequestMainDO mainDO = CountRequestMainConvert.INSTANCE.convert(updateReqVO); + mainDO.setStage("AUDIT_COUNT");//监盘 + mainDO.setJobStatus2("1"); + List detailDOList; + if(updateReqVO.getType().equals("1")) {//数量 + detailDOList = countRequestDetailMapper.selectList(updateReqVO.getId(), updateReqVO.getCount()); + } else {//选择 + detailDOList = CountRequestDetailConvert.INSTANCE.convertList04(updateReqVO.getSubList()); + } + this.generateJob(mainDO, detailDOList); + return countRequestMainMapper.updateById(mainDO); + } + /** * 生成盘点任务 * @param mainDO 盘点申请主 diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/putawayRequest/PutawayRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/putawayRequest/PutawayRequestMainServiceImpl.java index 723db45d..af3cbb3b 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/putawayRequest/PutawayRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/putawayRequest/PutawayRequestMainServiceImpl.java @@ -329,7 +329,7 @@ public class PutawayRequestMainServiceImpl implements PutawayRequestMainService //增加业务类型 BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchasePutawayRecord"); putawayRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode()); - int result = putawayRecordMainMapper.insert(PutawayRecordMainConvert.INSTANCE.convert(putawayRecordMainCreateReqVO)); + putawayRecordMainMapper.insert(PutawayRecordMainConvert.INSTANCE.convert(putawayRecordMainCreateReqVO)); for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList) { PutawayRecordDetailCreateReqVO putawayRecordDetailCreateReqVO = new PutawayRecordDetailCreateReqVO(); BeanUtils.copyProperties(putawayRequestDetailDO, putawayRecordDetailCreateReqVO); @@ -359,6 +359,11 @@ public class PutawayRequestMainServiceImpl implements PutawayRequestMainService putawayJobMainDO.setBusinessType(businesstypeDO.getCode()); putawayJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses()); putawayJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses()); + putawayJobMainDO.setId(null); + putawayJobMainDO.setCreateTime(null); + putawayJobMainDO.setCreator(null); + putawayJobMainDO.setUpdateTime(null); + putawayJobMainDO.setUpdater(null); putawayJobMainMapper.insert(putawayJobMainDO); List putawayJobDetailDOList = new ArrayList<>(); for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList) { @@ -367,7 +372,12 @@ public class PutawayRequestMainServiceImpl implements PutawayRequestMainService LocationDO locationDO = locationService.inspectLocation(groundingRuleRespVO, putawayRequestDetailDO.getItemCode(), putawayJobDetailDO.getBatch(), putawayJobDetailDO.getInventoryStatus()); putawayJobDetailDO.setToLocationCode(locationDO.getCode()); putawayJobDetailDO.setNumber(number); - putawayJobDetailDO.setMasterId(putawayJobDetailDO.getId()); + putawayJobDetailDO.setMasterId(putawayJobMainDO.getId()); + putawayJobDetailDO.setId(null); + putawayJobDetailDO.setCreateTime(null); + putawayJobDetailDO.setCreator(null); + putawayJobDetailDO.setUpdateTime(null); + putawayJobDetailDO.setUpdater(null); putawayJobDetailDOList.add(putawayJobDetailDO); //预计出 ExpectoutCreateReqVO expectoutCreateReqVO = new ExpectoutCreateReqVO(); From 286eb110db52891f4c2bec381324f8f5701e086e Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Fri, 15 Dec 2023 15:52:45 +0800 Subject: [PATCH 08/10] =?UTF-8?q?=E9=87=8D=E7=9B=98=E3=80=81=E7=9B=91?= =?UTF-8?q?=E7=9B=98=E5=92=8Cbug=E4=BF=AE=E5=A4=8D=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../countRequest/CountRequestDetailMapper.java | 3 ++- .../CountRequestMainServiceImpl.java | 2 +- .../inspectJob/InspectJobMainServiceImpl.java | 11 +++++++++-- .../InspectRequestMainServiceImpl.java | 17 +++++++++++++++++ 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java index 9f60c100..48ba8724 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countRequest/CountRequestDetailMapper.java @@ -78,9 +78,10 @@ public interface CountRequestDetailMapper extends BaseMapperX selectDifferenceList(Long masterId) { + default List selectDifferenceList(Long masterId, String requestNumber) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("master_id", masterId); + queryWrapper.inSql("", "SELECT d1.count_detail_number FROM record_count_detail d1,(SELECT master_id,count_detail_number,MAX(create_time) create_time FROM record_count_detail WHERE master_id IN(SELECT id FROM record_count_main WHERE request_number='" + requestNumber + "')GROUP BY master_id,count_detail_number) d2 WHERE d1.master_id=d2.master_id AND d1.count_detail_number=d2.count_detail_number AND d1.create_time=d2.create_time AND d1.qty!=d1.count_qty"); return selectList(queryWrapper); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java index 32bc7b64..b57c5873 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java @@ -342,7 +342,7 @@ public class CountRequestMainServiceImpl implements CountRequestMainService { if(updateReqVO.getType().equals("1")) {//全部 detailDOList = countRequestDetailMapper.selectList(updateReqVO.getId()); } else if(updateReqVO.getType().equals("2")) {//差异 - detailDOList = countRequestDetailMapper.selectDifferenceList(updateReqVO.getId()); + detailDOList = countRequestDetailMapper.selectDifferenceList(updateReqVO.getId(), updateReqVO.getNumber()); } else {//选择 detailDOList = CountRequestDetailConvert.INSTANCE.convertList04(updateReqVO.getSubList()); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java index 8c3daa33..becea038 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java @@ -35,6 +35,7 @@ import com.win.module.wms.enums.job.JobStatusState; import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.service.documentSwitch.SwitchService; import com.win.module.wms.service.expectin.ExpectinService; +import com.win.module.wms.service.expectout.ExpectoutService; import com.win.module.wms.service.putawayRequest.PutawayRequestMainService; import com.win.module.wms.service.transaction.TransactionService; import com.win.module.wms.util.JobUtils; @@ -85,6 +86,8 @@ public class InspectJobMainServiceImpl implements InspectJobMainService { @Resource private TransactionService transactionService; @Resource + private ExpectoutService expectoutService; + @Resource private ExpectinService expectinService; @Resource private BalanceMapper balanceMapper; @@ -287,6 +290,7 @@ public class InspectJobMainServiceImpl implements InspectJobMainService { BeanUtils.copyProperties(transactionCreateReqVOIn, transactionCreateReqVO); transactionCreateReqVO.setInventoryStatus("SCRAP"); transactionCreateReqVO.setQty(inspectJobDetailUpdateReqVO.getCrackQty()); + transactionCreateReqVO.setLocationCode("HOLD"); transactionCreateReqVOList.add(transactionCreateReqVO); } if (inspectJobDetailUpdateReqVO.getFailedQty() != null && inspectJobDetailUpdateReqVO.getFailedQty().compareTo(BigDecimal.ZERO) > 0) { @@ -294,6 +298,7 @@ public class InspectJobMainServiceImpl implements InspectJobMainService { BeanUtils.copyProperties(transactionCreateReqVOIn, transactionCreateReqVO); transactionCreateReqVO.setInventoryStatus("NOK"); transactionCreateReqVO.setQty(inspectJobDetailUpdateReqVO.getFailedQty()); + transactionCreateReqVO.setLocationCode("HOLD"); transactionCreateReqVOList.add(transactionCreateReqVO); } //添加库存事务出list @@ -372,7 +377,9 @@ public class InspectJobMainServiceImpl implements InspectJobMainService { //增加库存事务 transactionService.createTransaction(transactionCreateReqVOList); } - //移除预计入 + //移除预计出 + expectoutService.deleteExpectoutByJobNumber(inspectJobMainDO.getNumber()); + //移除预计出 expectinService.deleteExpectinByJobNumber(inspectJobMainDO.getNumber()); //上架申请子 SwitchDO switchDO = switchService.selectSwitchExist("CreatePutawayRequestAfterInspectRecordCreated"); @@ -382,7 +389,7 @@ public class InspectJobMainServiceImpl implements InspectJobMainService { BeanUtils.copyProperties(inspectRecordMainDO, putawayRequestMainCreateReqVO); List putawayRequestDetailCreateReqVOList = new ArrayList<>(); for(InspectJobDetailUpdateReqVO inspectJobDetailUpdateReqVO : inspectJobDetailUpdateReqVOList) { - if(!inspectJobDetailUpdateReqVO.getToInventoryStatus().equals("OK")) { + if(inspectJobDetailUpdateReqVO.getGoodQty().compareTo(BigDecimal.ZERO) <= 0) { continue; } PutawayRequestDetailCreateReqVO putawayRequestDetailCreateReqVO = new PutawayRequestDetailCreateReqVO(); diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java index 6ba20b42..824f49a4 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java @@ -16,6 +16,7 @@ import com.win.module.system.api.dict.DictDataApi; import com.win.module.system.api.dict.dto.DictDataRespDTO; import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.enums.serialNumber.RuleCodeEnum; +import com.win.module.wms.controller.expectin.vo.ExpectinCreateReqVO; import com.win.module.wms.controller.expectout.vo.ExpectoutCreateReqVO; import com.win.module.wms.controller.inspectRecord.vo.InspectRecordDetailCreateReqVO; import com.win.module.wms.controller.inspectRecord.vo.InspectRecordMainCreateReqVO; @@ -44,6 +45,7 @@ import com.win.module.wms.dal.mysql.inspectRequest.InspectRequestMainMapper; import com.win.module.wms.enums.job.JobStatusEnum; import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.enums.request.RequestStatusState; +import com.win.module.wms.service.expectin.ExpectinService; import com.win.module.wms.service.expectout.ExpectoutService; import com.win.module.wms.service.itembasic.ItembasicService; import com.win.module.wms.service.location.LocationService; @@ -111,6 +113,8 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService private InspectRecordDetailMapper inspectRecordDetailMapper; @Resource private ExpectoutService expectoutService; + @Resource + private ExpectinService expectinService; @Override @Transactional @@ -394,6 +398,7 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService return; } List expectoutCreateReqVOList = new ArrayList<>(); + List expectinCreateReqVOList = new ArrayList<>(); InspectJobMainDO inspectJobMainDO = InspectJobMainConvert.INSTANCE.convert(mainDO); inspectJobMainDO.setStatus(JobStatusEnum.PENDING.getCode()); inspectJobMainDO.setRequestNumber(mainDO.getNumber()); @@ -433,10 +438,22 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService expectoutCreateReqVO.setLocationCode(inspectJobDetailDO.getFromLocationCode()); expectoutCreateReqVO.setOwnerCode(mainDO.getOwnerCode()); expectoutCreateReqVOList.add(expectoutCreateReqVO); + //预计入 + ExpectinCreateReqVO expectinCreateReqVO = new ExpectinCreateReqVO(); + BeanUtils.copyProperties(inspectJobDetailDO, expectinCreateReqVO); + expectinCreateReqVO.setId(null); + expectinCreateReqVO.setJobNumber(number); + expectinCreateReqVO.setBatch(inspectJobMainDO.getBatch()); + expectinCreateReqVO.setBusinessType(inspectJobMainDO.getBusinessType()); + expectinCreateReqVO.setLocationCode(inspectJobDetailDO.getFromLocationCode()); + expectinCreateReqVO.setOwnerCode(mainDO.getOwnerCode()); + expectinCreateReqVOList.add(expectinCreateReqVO); } inspectJobDetailMapper.insertBatch(inspectJobDetailDOList); //增加预计出 expectoutService.createExpectout(expectoutCreateReqVOList); + //增加预计出 + expectinService.createExpectin(expectinCreateReqVOList); trendsApi.createTrends(inspectJobMainDO.getId(), "purchasereceiptJob", "到货检验申请生成到货检验任务", TrendsTypeEnum.CREATE); } From f12a12addf6340e13d5a24d2e9a6bb0fb7cc541c Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Fri, 15 Dec 2023 16:08:51 +0800 Subject: [PATCH 09/10] =?UTF-8?q?=E9=87=87=E8=B4=AD=E9=80=80=E8=B4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PurchasereturnRequestMainServiceImpl.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java index 55e7f429..1332e121 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java @@ -474,15 +474,15 @@ public class PurchasereturnRequestMainServiceImpl implements PurchasereturnReque detailDo.setItemDesc2(itembasicDO.getDesc2()); detailDo.setItemName(itembasicDO.getName()); detailDo.setProjectCode(itembasicDO.getProject()); - this.ifUomSuccess(itembasicDO.getUom(), detailDo.getUom()); - validatorLocation(detailDo.getFromLocationCode()); - if(mainDo.getPurchaseReceiptRecordNumber() != null && !mainDo.getPurchaseReceiptRecordNumber().isEmpty()) { - 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()); - ifDetailQtyBigThanQty(purchasereceiptRecordDetailDO.getQty(), detailDo.getQty()); - } +// this.ifUomSuccess(itembasicDO.getUom(), detailDo.getUom()); +// validatorLocation(detailDo.getFromLocationCode()); +// if(mainDo.getPurchaseReceiptRecordNumber() != null && !mainDo.getPurchaseReceiptRecordNumber().isEmpty()) { +// 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()); +// ifDetailQtyBigThanQty(purchasereceiptRecordDetailDO.getQty(), detailDo.getQty()); +// } BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReturnRequest"); List inventoryStatusList = Arrays.asList(businesstypeDO.getOutInventoryStatuses().split(",")); BigDecimal bigDecimal = validatorBalance(detailDo, mainDo, inventoryStatusList); From 3ea38c625f60a0d897377879bf8fa13edc17df25 Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Fri, 15 Dec 2023 16:19:16 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E7=9B=98=E7=82=B9=E7=9B=91=E7=9B=98?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../countRequest/CountRequestMainController.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java index c3e9ffd8..e015dc14 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java @@ -241,4 +241,12 @@ public class CountRequestMainController { return success(result > 0); } + @PutMapping("/supervise") + @Operation(summary = "监盘") + @PreAuthorize("@ss.hasPermission('wms:count-request-main:supervise')") + public CommonResult createSuperviseCountJob(@Valid @RequestBody CountRequestMainUpdateReqVO updateReqVO) { + int result = countRequestMainService.createSuperviseCountJob(updateReqVO); + return success(result > 0); + } + }