From c93dc65537a9ae5bdd3548e4be0dfc84954cad50 Mon Sep 17 00:00:00 2001 From: ruanqi Date: Tue, 25 Apr 2023 13:36:47 +0800 Subject: [PATCH] =?UTF-8?q?0412=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../heai/modules/app/dao/WareHouseDao.java | 17 +++++++++-- .../service/impl/WareHouseServiceImpl.java | 18 ++++++++++-- .../entity/POReceiptDetailInData.java | 9 ++++++ .../production/entity/StockPrintData.java | 6 ++++ src/main/resources/mapper/app/WareHouse.xml | 29 ++++++++++++++++--- src/main/resources/mapper/pad/PadMapper.xml | 2 +- .../production/SoScheduledListMapper.xml | 6 ++++ 7 files changed, 78 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/heai/modules/app/dao/WareHouseDao.java b/src/main/java/com/heai/modules/app/dao/WareHouseDao.java index b5cfcad..ea9665f 100644 --- a/src/main/java/com/heai/modules/app/dao/WareHouseDao.java +++ b/src/main/java/com/heai/modules/app/dao/WareHouseDao.java @@ -36,7 +36,7 @@ public interface WareHouseDao { /** * @Description 检查库位 * @Title checkLocation - * @param inData + * @param * @author rq * @date 2022/9/15 17:42 * @return String @@ -94,7 +94,9 @@ public interface WareHouseDao { * @throw */ void updatePOReceiptDetail(POReceiptDetailInData inData); - + void updatePOInspect(POReceiptDetailInData inData); + void updatePODetail(POReceiptDetailInData inData); + void updatePOHeader(POReceiptDetailInData inData); /** * @Description 获取物料信息 * @Title getStockData @@ -128,4 +130,15 @@ public interface WareHouseDao { */ void saveSOOpsTransferHeaderForStockInspect(saveInspectData inData); void saveSOOpsTransferDetailForStockInspect(saveInspectData inData); + + /** + * @Description 查看采购单关闭的比例 + * @Title getCloseTolerance + * @param inData + * @author rq + * @date 2023/4/25 10:33 + * @return Double + * @throw + */ + Double getCloseTolerance(POReceiptDetailInData inData); } diff --git a/src/main/java/com/heai/modules/app/service/impl/WareHouseServiceImpl.java b/src/main/java/com/heai/modules/app/service/impl/WareHouseServiceImpl.java index 92602fe..e468392 100644 --- a/src/main/java/com/heai/modules/app/service/impl/WareHouseServiceImpl.java +++ b/src/main/java/com/heai/modules/app/service/impl/WareHouseServiceImpl.java @@ -206,8 +206,8 @@ public class WareHouseServiceImpl implements WareHouseService { params.add(DateUtil.getDate(DateUtil.getStringDate(new Date()))); params.add(inData.getUsername()); params.add(inData.getUsername()); + params.add("S"); params.add(inData.getSupplierID()); - params.add(inData.getSupplierDesc()); params.add(""); params.add(inData.getReceiptNo()); params.add(""); @@ -234,7 +234,7 @@ public class WareHouseServiceImpl implements WareHouseService { params.add(""); params.add(inList.get(i).getReceiptNo()); params.add(inList.get(i).getItemNo()); - params.add(""); + params.add(inList.get(i).getSite()); params.add("N"); params.add(inList.get(i).getManufactureDateStr()); params.add(inList.get(i).getExpiredDateStr()); @@ -242,8 +242,22 @@ public class WareHouseServiceImpl implements WareHouseService { if(Integer.parseInt(String.valueOf(map.get("result_code"))) != 200){ throw new RuntimeException(String.valueOf(map.get("result_msg"))); } + POReceiptInData searchData=new POReceiptInData(); + searchData.setSite(inData.getDetailList().get(0).getSite()); + searchData.setReceiptNo(inData.getDetailList().get(0).getReceiptNo()); + searchData.setItemNo(inData.getDetailList().get(0).getItemNo().floatValue()); + List getPOReceiptDetailData =wareHouseDao.getPOReceiptDetailData(searchData); + if(getPOReceiptDetailData.size()==0){ + throw new RuntimeException("该接收单明细不存在"); + } + wareHouseDao.updatePOInspect(inList.get(i)); wareHouseDao.updatePOReceiptDetail(inList.get(i)); + + //查下采购单关闭数量 + getPOReceiptDetailData.get(0).setCloseTolerance(wareHouseDao.getCloseTolerance(getPOReceiptDetailData.get(0))); + wareHouseDao.updatePODetail(getPOReceiptDetailData.get(0)); + wareHouseDao.updatePOHeader(getPOReceiptDetailData.get(0)); } } diff --git a/src/main/java/com/heai/modules/production/entity/POReceiptDetailInData.java b/src/main/java/com/heai/modules/production/entity/POReceiptDetailInData.java index ee7d902..7a86c7e 100644 --- a/src/main/java/com/heai/modules/production/entity/POReceiptDetailInData.java +++ b/src/main/java/com/heai/modules/production/entity/POReceiptDetailInData.java @@ -6,6 +6,7 @@ public class POReceiptDetailInData extends POReceiptDetailData{ private String manufactureDateStr; private String expiredDateStr; private Double qty; + private Double closeTolerance; public String getPartDesc() { return partDesc; } @@ -45,4 +46,12 @@ public class POReceiptDetailInData extends POReceiptDetailData{ public void setQty(Double qty) { this.qty = qty; } + + public Double getCloseTolerance() { + return closeTolerance; + } + + public void setCloseTolerance(Double closeTolerance) { + this.closeTolerance = closeTolerance; + } } diff --git a/src/main/java/com/heai/modules/production/entity/StockPrintData.java b/src/main/java/com/heai/modules/production/entity/StockPrintData.java index a1d9f05..5d6f84a 100644 --- a/src/main/java/com/heai/modules/production/entity/StockPrintData.java +++ b/src/main/java/com/heai/modules/production/entity/StockPrintData.java @@ -199,6 +199,12 @@ public class StockPrintData { this.id = id; } + public String getStatus() { + return status; + } + public void setStatus(String status) { + this.status = status; + } } diff --git a/src/main/resources/mapper/app/WareHouse.xml b/src/main/resources/mapper/app/WareHouse.xml index 1095168..83f9e9f 100644 --- a/src/main/resources/mapper/app/WareHouse.xml +++ b/src/main/resources/mapper/app/WareHouse.xml @@ -73,12 +73,28 @@ InvoiceQty,InvoicePrice,InvoiceNo,LocationID,OrderNo,OrderItemNo,CancelRemark,Ba SampleInspectionMethodID,SampleInspectionLevelNo,Remark,ToInvNofityQty,InvNotifyQty,InspectType_DB,InspectType, NeedReceiveFlag,ToInvoiceQty,QtyRBJS,OrderRef1,OrderRef2,OrderRefType,dbo.Get_Part_UMID(Site,PartNo) umid from POReceiptDetail where site=#{site} and ReceiptNo=#{receiptNo} and itemNo=#{itemNo} - + - update POReceiptDetail set QtyReceived=Round(QtyReceived+#{qty},3) ,QtyToReceived=Round(QtyToReceived-#{qty},3) , Status=case when 0>=(QtyToReceived-#{qty}) then '已入库' else '部分入库' - end where site=#{site} and receiptNo=#{receiptNo} and itemNo=#{itemNo} + update POReceiptDetail set Status=(Case when Round(isnull(QtyReceived,0)+isnull(QtyReturned,0)+isnull(QtyReplace,0)+isnull(QtyScrapt,0) -ArriveQty,6)>=0 then '已入库' else '部分入库' end) + where site=#{site} and receiptNo=#{receiptNo} and itemNo=#{itemNo} + + + update PODetail set Status=(Case when 0 >( Round(isnull(ReceiveQty,0)- (round(Qty,3) - round(isnull(QtyReturned,0.0),3) - + round(isnull(QtyScrapt,0.0),3)) * (1 - 1.0 * #{closeTolerance} / 100),3) ) then '部分入库' else '已入库' end) + where site=#{site} and orderNo=#{orderNo} and itemNo=#{orderItemNo} + + + Update POHeader set Status=dbo.Get_UPdatePOHeaderStatus(#{site},#{orderNo}) + where site=#{site} and orderNo=#{orderNo} + + + + + update POInspect set QtyReceived=Round(isnull(QtyReceived,0)+#{qty},3) + ,QtyToReceived=Round(isnull(QtyToReceived,0)-#{qty},3) + where site=#{site} and ReceiptNo=#{receiptNo} + and ItemNo=#{itemNo} and InspectItemNo=1 - + Select isnull(round(T.CloseTolerance,2),0) as CloseTolerance from SupplierforPart as T,POHeader as P + Where T.Site=P.Site and T.SupplierID=P.SupplierID and T.Site=#{site} and P.OrderNo=#{orderNo} and T.PartNo=#{partNo} + + \ No newline at end of file diff --git a/src/main/resources/mapper/pad/PadMapper.xml b/src/main/resources/mapper/pad/PadMapper.xml index efb977a..f8fe1a7 100644 --- a/src/main/resources/mapper/pad/PadMapper.xml +++ b/src/main/resources/mapper/pad/PadMapper.xml @@ -97,7 +97,7 @@ diff --git a/src/main/resources/mapper/production/SoScheduledListMapper.xml b/src/main/resources/mapper/production/SoScheduledListMapper.xml index 08a06ab..e79d3c2 100644 --- a/src/main/resources/mapper/production/SoScheduledListMapper.xml +++ b/src/main/resources/mapper/production/SoScheduledListMapper.xml @@ -61,6 +61,9 @@ AND a.ToTypeFlag = #{toTypeFlag} + + + AND a.ToTypeFlag_db = #{toTypeFlagDb} AND b.PartNo like #{partNo} @@ -77,6 +80,9 @@ and a.TransDate >= #{startDate} + + and b.seqNo = #{seqNo} + and #{endDate} >= a.TransDate -1