From c6345e41d502997346e70b63f2bc8a7c8adfe627 Mon Sep 17 00:00:00 2001 From: wangh <123456> Date: Wed, 31 Aug 2022 18:09:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A5=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LogisticsTurnoverController.java | 16 + .../meapi/mapper/LogisticsTurnoverMapper.java | 18 + .../mesnac/meapi/model/StoreSfcInfo.java | 125 +++ .../service/LogisticsTurnoverService.java | 5 + .../impl/LogisticsTurnoverServiceImpl.java | 23 + .../mapper/LogisticsTurnoverMapper.xml | 841 ++++++++++-------- 6 files changed, 674 insertions(+), 354 deletions(-) create mode 100644 meapi/src/main/java/com/foreverwin/mesnac/meapi/model/StoreSfcInfo.java diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/LogisticsTurnoverController.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/LogisticsTurnoverController.java index fb422bc4..90585df6 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/LogisticsTurnoverController.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/LogisticsTurnoverController.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.foreverwin.mesnac.meapi.dto.LogisticsDto; import com.foreverwin.mesnac.meapi.enums.HandleEnum; import com.foreverwin.mesnac.meapi.model.LogisticsBill; +import com.foreverwin.mesnac.meapi.model.StoreSfcInfo; import com.foreverwin.mesnac.meapi.model.UserGroup; import com.foreverwin.mesnac.meapi.service.LogisticsBillService; import com.foreverwin.mesnac.meapi.service.UserGroupService; @@ -13,6 +14,7 @@ import com.foreverwin.modular.core.util.FrontPage; import com.foreverwin.modular.core.util.CommonMethods; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -281,4 +283,18 @@ public class LogisticsTurnoverController { } } + @PostMapping("/selectSFC") + @ResponseBody + public String selectSFC(String sfc){ + StoreSfcInfo storeSfcInfo= logisticsTurnoverService.storeSelectSfc(sfc); + return Optional.ofNullable(storeSfcInfo).map(t->JSONObject.toJSONString(t)).orElse("null"); + } + @PostMapping("/submentInStore") + @ResponseBody + public String selectSFC(String sfc,double qty,int inStoreType,String user, + @RequestParam(value = "storeLocation",defaultValue = "") String storeLocation){ + + return logisticsTurnoverService.submentInStore(sfc,qty, inStoreType, user,storeLocation); + } + } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/LogisticsTurnoverMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/LogisticsTurnoverMapper.java index c082bdeb..f16dd3e9 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/LogisticsTurnoverMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/LogisticsTurnoverMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.foreverwin.mesnac.meapi.dto.LogisticsDto; import com.foreverwin.mesnac.meapi.model.LogisticsTurnover; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.foreverwin.mesnac.meapi.model.StoreSfcInfo; import com.foreverwin.modular.core.util.FrontPage; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -28,4 +29,21 @@ public interface LogisticsTurnoverMapper extends BaseMapper { LogisticsTurnover queryNewtistTurnoverTask(String InspectionTaskNo); List selectlogisticsturnoverlist(LogisticsDto logisticsDto); + + StoreSfcInfo storeSelectSfc(String sfc); + + int insertRecordInStore(@Param("sfc") String sfc, + @Param("qty") double qty, + @Param("inStoreType") int inStoreType, + @Param("user") String user, + @Param("storeLocation") String storeLocation); + + int countLedgerBySfc(String sfc); + + void updateRecordLedger(@Param("sfc") String sfc, + @Param("qty") double qty); + + void insertRecordLedger(@Param("sfc") String sfc, + @Param("qty") double qty, + @Param("storeLocation") String storeLocation); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/StoreSfcInfo.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/StoreSfcInfo.java new file mode 100644 index 00000000..fa1f744f --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/StoreSfcInfo.java @@ -0,0 +1,125 @@ +package com.foreverwin.mesnac.meapi.model; + +import javax.xml.ws.Dispatch; + +/** + * @author wanghao + * @date 2022/8/31 13:46 + */ +public class StoreSfcInfo { + private String sfc, + shop_order, + item_bo, + description, + work_order, + item_number, + store_location, + work_user; + private double dispatch_qty, + in_qty, + in_type, zs_qty,ls_qty; + + public String getSfc() { + return sfc; + } + + public void setSfc(String sfc) { + this.sfc = sfc; + } + + public String getShop_order() { + return shop_order; + } + + public void setShop_order(String shop_order) { + this.shop_order = shop_order; + } + + public String getItem_bo() { + return item_bo; + } + + public double getZs_qty() { + return zs_qty; + } + + public void setZs_qty(double zs_qty) { + this.zs_qty = zs_qty; + } + + public double getLs_qty() { + return ls_qty; + } + + public void setLs_qty(double ls_qty) { + this.ls_qty = ls_qty; + } + + public void setItem_bo(String item_bo) { + this.item_bo = item_bo; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getWork_order() { + return work_order; + } + + public void setWork_order(String work_order) { + this.work_order = work_order; + } + + public String getItem_number() { + return item_number; + } + + public void setItem_number(String item_number) { + this.item_number = item_number; + } + + public String getStore_location() { + return store_location; + } + + public void setStore_location(String store_location) { + this.store_location = store_location; + } + + public String getWork_user() { + return work_user; + } + + public void setWork_user(String work_user) { + this.work_user = work_user; + } + + public double getDispatch_qty() { + return dispatch_qty; + } + + public void setDispatch_qty(double dispatch_qty) { + this.dispatch_qty = dispatch_qty; + } + + public double getIn_qty() { + return in_qty; + } + + public void setIn_qty(double in_qty) { + this.in_qty = in_qty; + } + + public double getIn_type() { + return in_type; + } + + public void setIn_type(double in_type) { + this.in_type = in_type; + } +} diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/LogisticsTurnoverService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/LogisticsTurnoverService.java index 1e3dc33e..b63bf335 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/LogisticsTurnoverService.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/LogisticsTurnoverService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.foreverwin.mesnac.meapi.dto.LogisticsDto; import com.foreverwin.mesnac.meapi.model.LogisticsTurnover; import com.baomidou.mybatisplus.extension.service.IService; +import com.foreverwin.mesnac.meapi.model.StoreSfcInfo; import com.foreverwin.modular.core.util.FrontPage; import java.util.List; @@ -35,4 +36,8 @@ public interface LogisticsTurnoverService extends IService { IPage selectLogisticsDtoPage(FrontPage frontPage, LogisticsDto logisticsDto); List selectlogisticsturnoverlist(LogisticsDto logisticsDto); + + StoreSfcInfo storeSelectSfc(String sfc); + + String submentInStore(String sfc, double qty, int inStoreType, String user,String storeLocation); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/LogisticsTurnoverServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/LogisticsTurnoverServiceImpl.java index 97e78f64..30f338c7 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/LogisticsTurnoverServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/LogisticsTurnoverServiceImpl.java @@ -1,6 +1,7 @@ package com.foreverwin.mesnac.meapi.service.impl; import com.foreverwin.mesnac.meapi.dto.LogisticsDto; +import com.foreverwin.mesnac.meapi.model.StoreSfcInfo; import com.foreverwin.modular.core.util.FrontPage; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -63,5 +64,27 @@ public class LogisticsTurnoverServiceImpl extends ServiceImpl0){ + if (inStoreType==0){ + int tag=logisticsTurnoverMapper.countLedgerBySfc(sfc); + if (tag==0){ + logisticsTurnoverMapper.insertRecordLedger(sfc,qty,storeLocation); + }else { + logisticsTurnoverMapper.updateRecordLedger(sfc,qty); + } + } + return "suess"; + }else { + return "error"; + } + + } } \ No newline at end of file diff --git a/meapi/src/main/resources/mapper/LogisticsTurnoverMapper.xml b/meapi/src/main/resources/mapper/LogisticsTurnoverMapper.xml index 7bf36e5b..3d52c683 100644 --- a/meapi/src/main/resources/mapper/LogisticsTurnoverMapper.xml +++ b/meapi/src/main/resources/mapper/LogisticsTurnoverMapper.xml @@ -4,34 +4,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -46,7 +46,8 @@ @@ -97,26 +99,29 @@ - - HANDLE=#{ew.entity.handle} - - AND SFC_DISPATCH_BO=#{ew.entity.sfcDispatchBo} - AND STATUS=#{ew.entity.status} - AND CREATED_DATE_TIME=#{ew.entity.createdDateTime} - AND USER=#{ew.entity.user} - AND USER_NAME=#{ew.entity.userName} - AND OTHER1=#{ew.entity.other1} - AND OTHER2=#{ew.entity.other2} - AND OTHER3=#{ew.entity.other3} - AND STORAGE_LOCATION=#{ew.entity.storageLocation} - AND TURNOVER_WORK_CENTER=#{ew.entity.turnoverWorkCenter} - AND COM_DATE_TIME=#{ew.entity.comDateTime} - AND IS_RECEIVE=#{ew.entity.isReceive} - AND TURNOUT_WORKCENTER=#{ew.entity.turnoutWorkcenter} - AND TURNOUT_ITEM=#{ew.entity.turnoutItem} - AND OTHER4=#{ew.entity.other4} - AND OTHER5=#{ew.entity.other5} - AND OTHER6=#{ew.entity.other6} + + HANDLE=#{ew.entity.handle} + + AND SFC_DISPATCH_BO=#{ew.entity.sfcDispatchBo} + AND STATUS=#{ew.entity.status} + AND CREATED_DATE_TIME=#{ew.entity.createdDateTime} + AND USER=#{ew.entity.user} + AND USER_NAME=#{ew.entity.userName} + AND OTHER1=#{ew.entity.other1} + AND OTHER2=#{ew.entity.other2} + AND OTHER3=#{ew.entity.other3} + AND STORAGE_LOCATION=#{ew.entity.storageLocation} + AND + TURNOVER_WORK_CENTER=#{ew.entity.turnoverWorkCenter} + + AND COM_DATE_TIME=#{ew.entity.comDateTime} + AND IS_RECEIVE=#{ew.entity.isReceive} + AND TURNOUT_WORKCENTER=#{ew.entity.turnoutWorkcenter} + + AND TURNOUT_ITEM=#{ew.entity.turnoutItem} + AND OTHER4=#{ew.entity.other4} + AND OTHER5=#{ew.entity.other5} + AND OTHER6=#{ew.entity.other6} ${ew.sqlSegment} @@ -129,30 +134,40 @@ - SELECT ${ew.sqlSelect} FROM Z_LOGISTICS_TURNOVER ZLT + SELECT + + ${ew.sqlSelect} + + + + + FROM Z_LOGISTICS_TURNOVER ZLT @@ -260,23 +302,26 @@ HANDLE=#{ew.entity.handle} - AND SFC_DISPATCH_BO=#{ew.entity.sfcDispatchBo} - AND STATUS=#{ew.entity.status} - AND CREATED_DATE_TIME=#{ew.entity.createdDateTime} - AND USER=#{ew.entity.user} - AND USER_NAME=#{ew.entity.userName} - AND OTHER1=#{ew.entity.other1} - AND OTHER2=#{ew.entity.other2} - AND OTHER3=#{ew.entity.other3} - AND STORAGE_LOCATION=#{ew.entity.storageLocation} - AND TURNOVER_WORK_CENTER=#{ew.entity.turnoverWorkCenter} - AND COM_DATE_TIME=#{ew.entity.comDateTime} - AND IS_RECEIVE=#{ew.entity.isReceive} - AND TURNOUT_WORKCENTER=#{ew.entity.turnoutWorkcenter} - AND TURNOUT_ITEM=#{ew.entity.turnoutItem} - AND OTHER4=#{ew.entity.other4} - AND OTHER5=#{ew.entity.other5} - AND OTHER6=#{ew.entity.other6} + AND SFC_DISPATCH_BO=#{ew.entity.sfcDispatchBo} + AND STATUS=#{ew.entity.status} + AND CREATED_DATE_TIME=#{ew.entity.createdDateTime} + AND USER=#{ew.entity.user} + AND USER_NAME=#{ew.entity.userName} + AND OTHER1=#{ew.entity.other1} + AND OTHER2=#{ew.entity.other2} + AND OTHER3=#{ew.entity.other3} + AND STORAGE_LOCATION=#{ew.entity.storageLocation} + AND + TURNOVER_WORK_CENTER=#{ew.entity.turnoverWorkCenter} + + AND COM_DATE_TIME=#{ew.entity.comDateTime} + AND IS_RECEIVE=#{ew.entity.isReceive} + AND TURNOUT_WORKCENTER=#{ew.entity.turnoutWorkcenter} + + AND TURNOUT_ITEM=#{ew.entity.turnoutItem} + AND OTHER4=#{ew.entity.other4} + AND OTHER5=#{ew.entity.other5} + AND OTHER6=#{ew.entity.other6} ${ew.sqlSegment} @@ -289,30 +334,40 @@ WCT.DESCRIPTION NEXT_WORK_CENTER, @@ -636,7 +712,7 @@ ZLT.CREATED_DATE_TIME - + SELECT distinct + ZLT.HANDLE, + WCT.DESCRIPTION NEXT_WORK_CENTER, + ZSD.SFC, + C1.VALUE WORK_ORDER, + IT.DESCRIPTION ITEM_DESCRIPTION, + ZSD.BLANKING_SIZE, + ZSD.DISPATCH_QTY, + OT1.DESCRIPTION OVER_OPERATION, + OT.DESCRIPTION NEXT_OPERATION, + ZSD.EMPLOYEE_DESCRIPTION, + ZLT.TURNOVER_WORK_CENTER, + ZLT.CREATED_DATE_TIME, + C2.VALUE TEXTURE, + SO.QTY_TO_BUILD, + SO.SHOP_ORDER, + ZL.DESCRIPTION ZL_DESCRIPTION, + CASE WHEN ZLT.STATUS = 'NEW' THEN '待转运' ELSE '转运完成' END STATUS, + CASE WHEN ZLT.IS_RECEIVE = 'Y' THEN '已接收' ELSE '未接收' END IS_RECEIVE, + ZLT.OTHER5 COMFIRM_USER + FROM + Z_LOGISTICS_TURNOVER ZLT + LEFT JOIN WORK_CENTER WC ON WC.WORK_CENTER = ZLT.TURNOVER_WORK_CENTER + LEFT JOIN WORK_CENTER_T WCT ON WCT.WORK_CENTER_BO = WC.HANDLE + LEFT JOIN Z_SFC_DISPATCH ZSD ON ZLT.SFC_DISPATCH_BO = ZSD.HANDLE + LEFT JOIN OPERATION O1 ON O1.OPERATION = ZSD.OPERATION + LEFT JOIN OPERATION_T OT1 ON OT1.OPERATION_BO = O1.HANDLE + LEFT JOIN OPERATION O ON O.OPERATION = ZLT.OTHER1 + LEFT JOIN OPERATION_T OT ON OT.OPERATION_BO = O.HANDLE + LEFT JOIN Z_LOCATION ZL ON ZL.LOCATION_CODE = ZLT.STORAGE_LOCATION + INNER JOIN SHOP_ORDER SO ON SO.SITE = ZSD.SITE + AND SO.SHOP_ORDER = ZSD.SHOP_ORDER + LEFT JOIN CUSTOM_FIELDS C1 ON C1.HANDLE = SO.HANDLE + AND C1."ATTRIBUTE" = 'WORK_ORDER' + INNER JOIN ITEM IM ON IM.HANDLE = SO.ITEM_BO + LEFT JOIN CUSTOM_FIELDS C2 ON C2.HANDLE = IM.HANDLE AND C2.ATTRIBUTE = 'TEXTTURE' + LEFT JOIN ITEM_T IT ON IT.ITEM_BO = IM.HANDLE + AND IT.LOCALE = 'zh' + INNER JOIN OPERATION O ON O.SITE = ZSD.SITE + AND O.OPERATION = ZSD.OPERATION + AND O.CURRENT_REVISION = 'true' + LEFT JOIN OPERATION_T OT ON OT.OPERATION_BO = O.HANDLE + AND OT.LOCALE = 'zh' - AND STATUS=#{status} - AND TURNOVER_WORK_CENTER=#{nextWorkCenter} - AND IS_RECEIVE=#{isReceive} - AND TURNOUT_ITEM=#{turnoutItem} - AND IT.DESCRIPTION LIKE '%'||#{itemDescription}||'%' - AND C1.VALUE LIKE '%'||#{workOrder}||'%' + AND STATUS=#{status} + AND TURNOVER_WORK_CENTER=#{nextWorkCenter} + AND IS_RECEIVE=#{isReceive} + AND TURNOUT_ITEM=#{turnoutItem} + AND IT.DESCRIPTION LIKE '%'||#{itemDescription}||'%' + AND C1.VALUE LIKE '%'||#{workOrder}||'%' + + + + + + + + + + + + + + + INSERT INTO WIP.STORE_RECORD_IN (SFC, IN_QTY, STORE_LOCATION, WORK_USER, IN_TYPE) + VALUES (#{sfc}, #{qty}, #{storeLocation}, #{user}, #{inStoreType}) + + + + + INSERT INTO WIP.STORE_RECORD_LEDGER (SFC, IN_QTY, STORE_LOCATION) VALUES (#{sfc}, #{qty}, #{storeLocation}) + + + update WIP.STORE_RECORD_LEDGER set IN_QTY=IN_QTY+#{qty} where SFC=#{sfc} +