From 25155dd82217ed0f9420d9f1e898f0d05ed2b0d9 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期六, 13 十二月 2025 13:34:27 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 1
src/main/java/com/zy/asrs/service/LocDetlService.java | 1
src/main/webapp/static/js/orderPakout/out.js | 6 +-
src/main/resources/mapper/LocDetlMapper.xml | 65 +++++++++++++++++++++
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 5 +
src/main/java/com/zy/asrs/controller/OutController.java | 51 ++++++++++++++++
6 files changed, 122 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java
index bc6f66f..1f1fa3d 100644
--- a/src/main/java/com/zy/asrs/controller/OutController.java
+++ b/src/main/java/com/zy/asrs/controller/OutController.java
@@ -74,7 +74,7 @@
// 鑾峰彇璁㈠崟涓昏〃
OrderPakout orderPakOut = orderPakOutService.selectByNo(orderDetlPakouts.get(0).getOrderNo());
// 鐩樼偣鍗曞嚭搴�
- if (orderPakOut.getDocType() == 8) {
+ if (orderPakOut.getDocType() == 20) {
for (OrderDetlPakout orderDetl : orderDetlPakouts) {
double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
if (issued <= 0.0D) {
@@ -122,7 +122,54 @@
locDtos.add(locDto);
}
}
- } else {
+ } else if(orderPakOut.getDocType() == 10 || orderPakOut.getDocType() == 14) {
+ for (OrderDetlPakout orderDetl : orderDetlPakouts) {
+ double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
+ if (issued <= 0.0D) {
+ continue;
+ }
+// List<LocDetl> locDetls = locDetlService.queryStockAll(null, exist,orderDetl.getMatnr(), orderDetl.getBatch(),
+// orderDetl.getBrand(),orderDetl.getStandby1(),orderDetl.getStandby2(),orderDetl.getStandby3(),orderDetl.getBoxType1(),orderDetl.getBoxType2(),orderDetl.getBoxType3());
+ List<LocDetl> locDetls = locDetlService.queryStockMatnr(orderDetl.getMatnr());
+ for (LocDetl locDetl : locDetls) {
+ if (issued > 0) {
+ LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
+ issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo()));
+ locDto.setFrozen(locDetl.getFrozen());
+ locDto.setFrozenLoc(locMast.getFrozen());
+ List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locDetl.getLocNo(), issued >= locDetl.getAnfme() ? 101 : 103);
+ locDto.setStaNos(staNos);
+ locDto.setBrand(orderDetl.getBrand());
+
+ locDto.setStandby1(orderDetl.getStandby1());
+ locDto.setStandby2(orderDetl.getStandby2());
+ locDto.setStandby3(orderDetl.getStandby3());
+ locDto.setBoxType1(orderDetl.getBoxType1());
+ locDto.setBoxType2(orderDetl.getBoxType2());
+ locDto.setBoxType3(orderDetl.getBoxType3());
+ locDtos.add(locDto);
+ exist.add(locDetl.getLocNo());
+ // 鍓╀綑寰呭嚭鏁伴噺閫掑噺
+ issued = issued - locDetl.getAnfme();
+ } else {
+ break;
+ }
+ }
+ if (issued > 0) {
+ LocDto locDto = new LocDto(null, orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued);
+ locDto.setBrand(orderDetl.getBrand());
+ locDto.setStandby1(orderDetl.getStandby1());
+ locDto.setStandby2(orderDetl.getStandby2());
+ locDto.setStandby3(orderDetl.getStandby3());
+ locDto.setBoxType1(orderDetl.getBoxType1());
+ locDto.setBoxType2(orderDetl.getBoxType2());
+ locDto.setBoxType3(orderDetl.getBoxType3());
+ locDto.setLack(Boolean.TRUE);
+ locDtos.add(locDto);
+ }
+ }
+ }else {
for (OrderDetlPakout orderDetl : orderDetlPakouts) {
double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
if (issued <= 0.0D) {
diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
index a8b4dc9..f72dbe8 100644
--- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -79,6 +79,7 @@
@Param("standby3")String standby3,@Param("boxType1")String boxType1,@Param("boxType2")String boxType2);
Double queryStockAnfme(String matnr, String batch);
+ List<LocDetl> queryStockMatnr(@Param("matnr")String matnr);
List<StockVo> queryStockTotal();
diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java
index 2fcf658..dfce28d 100644
--- a/src/main/java/com/zy/asrs/service/LocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -66,6 +66,7 @@
// --------------------------------------------------
List<LocDetl> queryStock(String matnr, String batch, String orderNo, Set<String> locNos);
+ List<LocDetl> queryStockMatnr(String matnr);
// List<LocDetl> queryStockAll(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3);
List<LocDetl> queryStockAll(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2);
diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
index 07306c3..3e96d5a 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -111,7 +111,10 @@
return this.baseMapper.queryStock(matnr, batch, orderNo, locNos);
}
-
+ @Override
+ public List<LocDetl> queryStockMatnr(String matnr) {
+ return this.baseMapper.queryStockMatnr(matnr);
+ }
// @Override
// public List<LocDetl> queryStockAll(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 51690b8..241fd4d 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -535,7 +535,70 @@
end
desc
</select>
-
+ <select id="queryStockMatnr" resultMap="BaseResultMap">
+ select a.*
+ from asr_loc_detl a
+ left join asr_loc_mast b on a.loc_no = b.loc_no
+ where 1=1
+ and b.loc_sts = 'F'
+ and a.matnr = #{matnr}
+ order by
+ DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
+ desc,
+ NEWID(),
+ case
+ when (left(a.loc_no, 2) = '01') then 0
+ when (left(a.loc_no, 2) = '02') then 1
+ when (left(a.loc_no, 2) = '03') then 1
+ when (left(a.loc_no, 2) = '04') then 0
+ when (left(a.loc_no, 2) = '05') then 0
+ when (left(a.loc_no, 2) = '06') then 1
+ when (left(a.loc_no, 2) = '07') then 1
+ when (left(a.loc_no, 2) = '08') then 0
+ when (left(a.loc_no, 2) = '09') then 0
+ when (left(a.loc_no, 2) = '10') then 1
+ when (left(a.loc_no, 2) = '11') then 1
+ when (left(a.loc_no, 2) = '12') then 0
+ when (left(a.loc_no, 2) = '13') then 0
+ when (left(a.loc_no, 2) = '14') then 1
+ when (left(a.loc_no, 2) = '15') then 1
+ when (left(a.loc_no, 2) = '16') then 0
+ when (left(a.loc_no, 2) = '17') then 0
+ when (left(a.loc_no, 2) = '18') then 1
+ when (left(a.loc_no, 2) = '19') then 1
+ when (left(a.loc_no, 2) = '20') then 0
+ when (left(a.loc_no, 2) = '21') then 0
+ when (left(a.loc_no, 2) = '22') then 1
+ when (left(a.loc_no, 2) = '23') then 1
+ when (left(a.loc_no, 2) = '24') then 0
+ when (left(a.loc_no, 2) = '25') then 0
+ when (left(a.loc_no, 2) = '26') then 1
+ when (left(a.loc_no, 2) = '27') then 1
+ when (left(a.loc_no, 2) = '28') then 0
+ when (left(a.loc_no, 2) = '29') then 0
+ when (left(a.loc_no, 2) = '30') then 1
+ when (left(a.loc_no, 2) = '31') then 1
+ when (left(a.loc_no, 2) = '32') then 0
+ when (left(a.loc_no, 2) = '33') then 0
+ when (left(a.loc_no, 2) = '34') then 1
+ when (left(a.loc_no, 2) = '35') then 1
+ when (left(a.loc_no, 2) = '36') then 0
+ when (left(a.loc_no, 2) = '37') then 0
+ when (left(a.loc_no, 2) = '38') then 1
+ when (left(a.loc_no, 2) = '39') then 1
+ when (left(a.loc_no, 2) = '40') then 0
+ when (left(a.loc_no, 2) = '41') then 0
+ when (left(a.loc_no, 2) = '42') then 1
+ when (left(a.loc_no, 2) = '43') then 1
+ when (left(a.loc_no, 2) = '44') then 0
+ when (left(a.loc_no, 2) = '45') then 0
+ when (left(a.loc_no, 2) = '46') then 1
+ when (left(a.loc_no, 2) = '47') then 1
+ when (left(a.loc_no, 2) = '48') then 0
+ else 0
+ end
+ desc
+ </select>
<select id="queryStockAll" resultMap="BaseResultMap">
select a.*
from asr_loc_detl a
diff --git a/src/main/webapp/static/js/orderPakout/out.js b/src/main/webapp/static/js/orderPakout/out.js
index 40e74f9..fbe2f93 100644
--- a/src/main/webapp/static/js/orderPakout/out.js
+++ b/src/main/webapp/static/js/orderPakout/out.js
@@ -34,8 +34,8 @@
,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', templet: '#orderNoTpl', width: 160}
,{field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿', width: 160}
,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', width: 200}
- ,{field: 'batch', align: 'center',title: '搴忓垪鐮�',hide:true}
- ,{field: 'specs', align: 'center',title: '瑙勬牸'}
+ // ,{field: 'batch', align: 'center',title: '搴忓垪鐮�',hide:true}
+ // ,{field: 'specs', align: 'center',title: '瑙勬牸'}
,{field: 'standby1', align: 'center',title: 'po', hide: false}
,{field: 'standby2', align: 'center',title: 'upc', hide: false}
// ,{field: 'anfme', align: 'center',title: '鏁伴噺'}
@@ -160,7 +160,7 @@
cols: [[
// {type: 'checkbox', merge: ['orderNo']},
{field: 'orderNo', title: '鍗曟嵁缂栧彿', merge: true, align: 'center'},
- {field: 'title', title: '鍟嗗搧', merge: true, align: 'center', width: 350},
+ {field: 'matnr', title: '鐗╂枡缂栫爜', merge: true, align: 'center', width: 350},
{field: 'batch', title: '搴忓垪鐮�', align: 'center',hide:true},
{field: 'anfme', title: '鏁伴噺', align: 'center', width: 90, style: 'font-weight: bold'},
{field: 'locNo', title: '璐т綅', align: 'center', width: 100, templet: '#locNoTpl'},
--
Gitblit v1.9.1