diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/StructivtController.java b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/StructivtController.java index 684ca8a32..8126fd533 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/StructivtController.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/StructivtController.java @@ -99,4 +99,12 @@ public class StructivtController { structivtService.download(map, response, product_area,ivt_flag); } + @PostMapping("/save") + @Log("保存") + @ApiOperation("保存") + public ResponseEntity save(@RequestBody JSONObject whereJson){ + structivtService.save(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/StructivtService.java b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/StructivtService.java index be65afc21..4c7c85691 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/StructivtService.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/StructivtService.java @@ -73,4 +73,6 @@ public interface StructivtService { JSONArray getUnits(); void download(Map map, HttpServletResponse response,String[] product_area,String[] ivt_flag) throws IOException; + + void save(JSONObject whereJson); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/StructivtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/StructivtServiceImpl.java index 6ee1dfb1f..d8f6a5609 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/StructivtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/StructivtServiceImpl.java @@ -208,10 +208,12 @@ public class StructivtServiceImpl implements StructivtService { String sale_order_name = MapUtil.getStr(whereJson, "sale_order_name"); String is_virtual = MapUtil.getStr(whereJson, "is_virtual"); String rein_flag = MapUtil.getStr(whereJson, "rein_flag"); + String ivt_status = MapUtil.getStr(whereJson, "ivt_status"); JSONObject map = new JSONObject(); map.put("flag", "2"); map.put("stor_id", stor_id); map.put("is_virtual", is_virtual); + map.put("ivt_status", ivt_status); if (StrUtil.isNotEmpty(material)) { map.put("material", "%" + material + "%"); } @@ -302,4 +304,13 @@ public class StructivtServiceImpl implements StructivtService { FileUtil.downloadExcel(list, response); } + @Override + @Transactional + public void save(JSONObject whereJson) { + JSONObject jsonObject = new JSONObject(); + jsonObject.put("remark", whereJson.getString("remark")); + + WQLObject.getWQLObject("st_ivt_structivt").update(jsonObject,"stockrecord_id = '"+whereJson.getString("stockrecord_id")+"'"); + } + } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STRUCTIVT001.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STRUCTIVT001.wql index c48b98c3b..c8227a5a3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STRUCTIVT001.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STRUCTIVT001.wql @@ -197,7 +197,6 @@ sub.un_plan_product_property1, sub.un_plan_product_property2, sub.un_plan_product_property3, - sub.remark, sub.isUnPackBox, sub.isRePrintPackageBoxLabel, sub.width_standard, @@ -276,6 +275,18 @@ OPTION 输入.rein_flag <> "" IFNULL(sub.sub_type,'') in 输入.rein_flag ENDOPTION + + OPTION 输入.ivt_status = "canuse_qty" + ivt.canuse_qty > 0 + ENDOPTION + + OPTION 输入.ivt_status = "warehousing_qty" + ivt.warehousing_qty > 0 + ENDOPTION + + OPTION 输入.ivt_status = "frozen_qty" + ivt.frozen_qty > 0 + ENDOPTION ) a INNER JOIN ( SELECT diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/stivt.xls b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/stivt.xls index 2c150d92a..422f1ef4b 100644 Binary files a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/stivt.xls and b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/stivt.xls differ diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AUTOQUERYBILLINFO.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AUTOQUERYBILLINFO.wql index 46f424faa..dac997a0b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AUTOQUERYBILLINFO.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AUTOQUERYBILLINFO.wql @@ -41,13 +41,13 @@ IF 输入.flag = "1" QUERY SELECT - SUM( ivt.ivt_qty ) / 1000 AS num, + SUM( ivt.canuse_qty ) / 1000 AS num, attr.stor_id FROM st_ivt_structivt ivt LEFT JOIN st_ivt_structattr attr ON ivt.struct_id = attr.struct_id WHERE - ivt.ivt_qty > '0' + ivt.canuse_qty > '0' GROUP BY attr.stor_id @@ -58,7 +58,7 @@ IF 输入.flag = "2" QUERY SELECT - SUM( ivt.ivt_qty ) / 1000 AS num, + SUM( ivt.canuse_qty ) / 1000 AS num, attr.stor_id FROM st_ivt_structivt ivt @@ -67,7 +67,7 @@ AND ivt.pcsn = sub.container_name WHERE DATEDIFF( NOW(), sub.date_of_production ) >= '90' - AND ivt.ivt_qty > '0' + AND ivt.canuse_qty > '0' GROUP BY attr.stor_id @@ -78,7 +78,7 @@ IF 输入.flag = "3" QUERY SELECT - SUM( ivt.ivt_qty ) / 1000 AS num, + SUM( ivt.canuse_qty ) / 1000 AS num, attr.stor_id FROM st_ivt_structivt ivt @@ -88,7 +88,7 @@ WHERE DATEDIFF( NOW(), sub.date_of_production ) > '60' AND DATEDIFF( NOW(), sub.date_of_production ) <= '90' - AND ivt.ivt_qty > '0' + AND ivt.canuse_qty > '0' GROUP BY attr.stor_id @@ -99,7 +99,7 @@ IF 输入.flag = "4" QUERY SELECT - SUM( ivt.ivt_qty ) / 1000 AS num, + SUM( ivt.canuse_qty ) / 1000 AS num, attr.stor_id FROM st_ivt_structivt ivt @@ -108,7 +108,7 @@ AND ivt.pcsn = sub.container_name WHERE DATEDIFF( NOW(), sub.date_of_production ) < '90' - AND ivt.ivt_qty > '0' + AND ivt.canuse_qty > '0' GROUP BY attr.stor_id @@ -119,7 +119,7 @@ IF 输入.flag = "5" QUERY SELECT - SUM( ivt.ivt_qty ) / 1000 AS num, + SUM( ivt.canuse_qty ) / 1000 AS num, attr.stor_id FROM st_ivt_structivt ivt @@ -127,7 +127,7 @@ LEFT JOIN pdm_bi_subpackagerelation sub ON sub.package_box_sn = attr.storagevehicle_code AND ivt.pcsn = sub.container_name WHERE - ivt.ivt_qty > '0' + ivt.canuse_qty > '0' OPTION 输入.customer_name <> "" sub.customer_name in 输入.customer_name @@ -142,7 +142,7 @@ IF 输入.flag = "6" QUERY SELECT - SUM( ivt.ivt_qty ) / 1000 AS num, + SUM( ivt.canuse_qty ) / 1000 AS num, attr.stor_id FROM st_ivt_structivt ivt @@ -150,7 +150,7 @@ LEFT JOIN pdm_bi_subpackagerelation sub ON sub.package_box_sn = attr.storagevehicle_code AND ivt.pcsn = sub.container_name WHERE - ivt.ivt_qty > '0' + ivt.canuse_qty > '0' OPTION 输入.customer_name <> "" sub.customer_name not in 输入.customer_name @@ -168,15 +168,35 @@ SUM( dis.plan_qty ) / 1000 AS num, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '0' + AND b.bill_type = '0001' + AND b.bill_status = '99' + AND b.is_delete = '0' + AND (LEFT(b.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= b.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '0' AND mst.bill_type = '0001' AND mst.bill_status = '99' - AND mst.biz_date = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + AND (LEFT(mst.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= mst.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= mst.confirm_time GROUP BY sub.customer_name @@ -190,15 +210,35 @@ SUM( dis.plan_qty ) / 1000 AS num, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '1' + AND b.bill_type in ('1001','1004') + AND b.bill_status = '99' + AND b.is_delete = '0' + AND (LEFT ( b.confirm_time, 10 ) = DATE_SUB( CURDATE(), INTERVAL 1 DAY ) + OR LEFT ( confirm_time, 10 ) = CURDATE()) + AND CONCAT( DATE_SUB( CURDATE(), INTERVAL 1 DAY ), ' 08:00:00' ) <= b.confirm_time + AND CONCAT( CURDATE(), ' 08:00:00' ) >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '1' AND mst.bill_type in ('1001','1004') AND mst.bill_status = '99' - AND mst.biz_date = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + AND (LEFT(mst.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= mst.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= mst.confirm_time GROUP BY sub.customer_name @@ -212,16 +252,33 @@ SUM( dis.plan_qty ) / 1000 AS num, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '0' + AND b.bill_type = '0001' + AND b.bill_status = '99' + AND b.is_delete = '0' + AND MONTH(LEFT(b.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= b.confirm_time + AND NOW() >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '0' AND mst.bill_type = '0001' AND mst.bill_status = '99' - AND MONTH(mst.biz_date) = MONTH(CURDATE()) - AND YEAR(mst.biz_date) = YEAR(CURDATE()) + AND MONTH(LEFT(mst.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= mst.confirm_time + AND NOW() >= mst.confirm_time GROUP BY sub.customer_name @@ -235,16 +292,33 @@ SUM( dis.plan_qty ) / 1000 AS num, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '1' + AND b.bill_type in ('1001','1004') + AND b.bill_status = '99' + AND b.is_delete = '0' + AND MONTH (LEFT ( b.confirm_time, 10 )) = MONTH (CURDATE()) + AND CONCAT( DATE_FORMAT( NOW(), '%Y-%m-01' ), ' 08:00:00' ) <= b.confirm_time + AND NOW() >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '1' AND mst.bill_type in ('1001','1004') AND mst.bill_status = '99' - AND MONTH(mst.biz_date) = MONTH(CURDATE()) - AND YEAR(mst.biz_date) = YEAR(CURDATE()) + AND MONTH(LEFT(mst.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= mst.confirm_time + AND NOW() >= mst.confirm_time GROUP BY sub.customer_name @@ -258,15 +332,35 @@ SUM( dis.plan_qty ) / 1000 AS num, LEFT(dis.pcsn,2) AS region_code FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '0' + AND b.bill_type = '0001' + AND b.bill_status = '99' + AND b.is_delete = '0' + AND (LEFT(b.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= b.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '0' AND mst.bill_type = '0001' AND mst.bill_status = '99' - AND mst.biz_date = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + AND (LEFT(mst.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= mst.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2) @@ -280,15 +374,35 @@ SUM( dis.plan_qty ) / 1000 AS num, LEFT(dis.pcsn,2) AS region_code FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '1' + AND b.bill_type in ('1001','1004') + AND b.bill_status = '99' + AND b.is_delete = '0' + AND (LEFT(b.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= b.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '1' AND mst.bill_type in ('1001','1004') AND mst.bill_status = '99' - AND mst.biz_date = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + AND (LEFT(mst.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= mst.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2) @@ -303,15 +417,35 @@ LEFT(dis.pcsn,2) AS region_code, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '0' + AND b.bill_type = '0001' + AND b.bill_status = '99' + AND b.is_delete = '0' + AND (LEFT(b.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= b.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '0' AND mst.bill_type = '0001' AND mst.bill_status = '99' - AND mst.biz_date = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + AND (LEFT(mst.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= mst.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2),sub.customer_name @@ -326,15 +460,36 @@ LEFT(dis.pcsn,2) AS region_code, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '1' + AND b.bill_type in ('1001','1004') + AND b.bill_status = '99' + AND b.is_delete = '0' + AND (LEFT(b.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= b.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= b.confirm_time + + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '1' AND mst.bill_type in ('1001','1004') AND mst.bill_status = '99' - AND mst.biz_date = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + AND (LEFT(mst.confirm_time,10) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) + OR LEFT(confirm_time,10) = CURDATE()) + AND CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 08:00:00') <= mst.confirm_time + AND CONCAT(CURDATE(), ' 08:00:00') >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2),sub.customer_name @@ -348,16 +503,33 @@ SUM( dis.plan_qty ) / 1000 AS num, LEFT(dis.pcsn,2) AS region_code FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '0' + AND b.bill_type = '0001' + AND b.bill_status = '99' + AND b.is_delete = '0' + AND MONTH(LEFT(b.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= b.confirm_time + AND NOW() >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '0' AND mst.bill_type = '0001' AND mst.bill_status = '99' - AND MONTH(mst.biz_date) = MONTH(CURDATE()) - AND YEAR(mst.biz_date) = YEAR(CURDATE()) + AND MONTH(LEFT(mst.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= mst.confirm_time + AND NOW() >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2) @@ -371,16 +543,33 @@ SUM( dis.plan_qty ) / 1000 AS num, LEFT(dis.pcsn,2) AS region_code FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '1' + AND b.bill_type in ('1001','1004') + AND b.bill_status = '99' + AND b.is_delete = '0' + AND MONTH(LEFT(b.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= b.confirm_time + AND NOW() >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '1' AND mst.bill_type in ('1001','1004') AND mst.bill_status = '99' - AND MONTH(mst.biz_date) = MONTH(CURDATE()) - AND YEAR(mst.biz_date) = YEAR(CURDATE()) + AND MONTH(LEFT(mst.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= mst.confirm_time + AND NOW() >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2) @@ -395,16 +584,33 @@ LEFT(dis.pcsn,2) AS region_code, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '0' + AND b.bill_type = '0001' + AND b.bill_status = '99' + AND b.is_delete = '0' + AND MONTH(LEFT(b.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= b.confirm_time + AND NOW() >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '0' AND mst.bill_type = '0001' AND mst.bill_status = '99' - AND MONTH(mst.biz_date) = MONTH(CURDATE()) - AND YEAR(mst.biz_date) = YEAR(CURDATE()) + AND MONTH(LEFT(mst.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= mst.confirm_time + AND NOW() >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2),sub.customer_name @@ -419,16 +625,33 @@ LEFT(dis.pcsn,2) AS region_code, sub.customer_name FROM - st_ivt_iostorinvdis dis + ( SELECT + MIN( a.iostorinvdis_id ) AS iostorinvdis_id + FROM + st_ivt_iostorinvdis a + LEFT JOIN st_ivt_iostorinv b ON a.iostorinv_id = b.iostorinv_id + WHERE + b.io_type = '1' + AND b.bill_type in ('1001','1004') + AND b.bill_status = '99' + AND b.is_delete = '0' + AND MONTH(LEFT(b.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= b.confirm_time + AND NOW() >= b.confirm_time + GROUP BY + pcsn + ) AS a + LEFT JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = a.iostorinvdis_id LEFT JOIN st_ivt_iostorinv mst ON dis.iostorinv_id = mst.iostorinv_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no + INNER JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND sub.package_box_sn = dis.box_no AND sub.bill_id = dis.iostorinv_id WHERE mst.is_delete = '0' AND mst.io_type = '1' AND mst.bill_type in ('1001','1004') AND mst.bill_status = '99' - AND MONTH(mst.biz_date) = MONTH(CURDATE()) - AND YEAR(mst.biz_date) = YEAR(CURDATE()) + AND MONTH(LEFT(mst.confirm_time,10)) = MONTH(CURDATE()) + AND CONCAT(DATE_FORMAT(NOW(), '%Y-%m-01'), ' 08:00:00') <= mst.confirm_time + AND NOW() >= mst.confirm_time GROUP BY LEFT(dis.pcsn,2),sub.customer_name diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java index e539a0aed..5f38e11d6 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java @@ -2702,7 +2702,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { + "' and row_num = '" + jsonRow.getString("row_num") + "' and is_used = '1' and is_delete = '0' and lock_type not in ('1','6','3')").getResultJSONArray(0); if (ObjectUtil.isNotEmpty(structArr)) { - throw new BadRequestException(jsonRow.getString("block_num") + "区-" + jsonRow.getString("row_num") + "排有未完成的入库任务!"); + throw new BadRequestException("有其他任务正在执行中,请稍后在试!"); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/InBillQueryServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/InBillQueryServiceImpl.java index e69a1c662..990ae4a11 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/InBillQueryServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/InBillQueryServiceImpl.java @@ -464,6 +464,7 @@ public class InBillQueryServiceImpl implements InBillQueryService { mp.put("客户需求抗拉下限", json.getString("demand_limit")); mp.put("生产日期", json.getString("date_of_production").replace("-","/")); mp.put("入库日期", json.getString("confirm_time")); + mp.put("生产区域", json.getString("pcsn").substring(0, 2)); list.add(mp); } }else { diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/OutBillQueryServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/OutBillQueryServiceImpl.java index 98cca8fda..9002215f3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/OutBillQueryServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/stat/service/impl/OutBillQueryServiceImpl.java @@ -1,5 +1,6 @@ package org.nl.wms.stat.service.impl; +import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.ObjectUtil; @@ -87,11 +88,28 @@ public class OutBillQueryServiceImpl implements OutBillQueryService { map.put("bill_type",joiner.toString()); } map.put("with",with); - map.put("begin_time",begin_time); - map.put("end_time",end_time); map.put("pcsn",pcsn); if (ObjectUtil.isNotEmpty(customer_name)) map.put("customer_name","%"+customer_name+"%"); + // 处理时间 + if (ObjectUtil.isNotEmpty(begin_time) && ObjectUtil.isNotEmpty(end_time)) { + String begin_time_today = begin_time.substring(0, 10); + String end_time_today = end_time.substring(0, 10); + + + // 开始时间 + String today_begin_time = begin_time_today + " 08:00:00"; + + // 结束时间:19:59:59 + DateTime parse = DateUtil.parse(end_time_today); + String substring = DateUtil.offsetDay(parse, 1).toString().substring(0, 10); + + String today_end_time = substring + " 07:59:59"; + + map.put("begin_time", today_begin_time); + map.put("end_time", today_end_time); + } + JSONObject json = WQL.getWO("ST_IVT_OUTBILLQUERY").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.input_time DESC,dis.box_no"); return json; } @@ -227,10 +245,27 @@ public class OutBillQueryServiceImpl implements OutBillQueryService { } mapParam.put("with",with); mapParam.put("pcsn",pcsn); - mapParam.put("begin_time",begin_time); - mapParam.put("end_time",end_time); if (ObjectUtil.isNotEmpty(customer_name)) mapParam.put("customer_name","%"+customer_name+"%"); + // 处理时间 + if (ObjectUtil.isNotEmpty(begin_time) && ObjectUtil.isNotEmpty(end_time)) { + String begin_time_today = begin_time.substring(0, 10); + String end_time_today = end_time.substring(0, 10); + + + // 开始时间 + String today_begin_time = begin_time_today + " 08:00:00"; + + // 结束时间:19:59:59 + DateTime parse = DateUtil.parse(end_time_today); + String substring = DateUtil.offsetDay(parse, 1).toString().substring(0, 10); + + String today_end_time = substring + " 07:59:59"; + + mapParam.put("begin_time", today_begin_time); + mapParam.put("end_time", today_end_time); + } + JSONArray resultJSONArray = WQL.getWO("ST_IVT_OUTBILLQUERY").addParamMap(mapParam).process().getResultJSONArray(0); List> list = new ArrayList<>(); @@ -243,6 +278,7 @@ public class OutBillQueryServiceImpl implements OutBillQueryService { mp.put("移入仓库", json.getString("in_stor_name")); } mp.put("库区", json.getString("sect_name")); + mp.put("生产区域", json.getString("pcsn").substring(0, 2)); mp.put("交货单号", json.getString("vbeln")); mp.put("物流公司", json.getString("cust_name")); mp.put("运费", json.getString("estimated_freight")); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_INBILLQUERY.wql b/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_INBILLQUERY.wql index 7dfc6a80b..0af28e587 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_INBILLQUERY.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_INBILLQUERY.wql @@ -118,6 +118,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn @@ -253,6 +260,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn @@ -391,6 +405,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn @@ -528,6 +549,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn @@ -668,7 +696,14 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' + GROUP BY pcsn @@ -690,6 +725,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn @@ -831,6 +873,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_OUTBILLQUERY.wql b/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_OUTBILLQUERY.wql index 1549fab3b..293444ae3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_OUTBILLQUERY.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/stat/wql/ST_IVT_OUTBILLQUERY.wql @@ -192,6 +192,13 @@ OPTION 输入.pcsn <> "" a.pcsn = 输入.pcsn ENDOPTION + OPTION 输入.begin_time <> "" + b.confirm_time >= 输入.begin_time + ENDOPTION + + OPTION 输入.end_time <> "" + b.confirm_time <= 输入.end_time + ENDOPTION AND b.bill_status = '99' GROUP BY pcsn @@ -231,11 +238,11 @@ ENDOPTION OPTION 输入.begin_time <> "" - mst.input_time >= 输入.begin_time + mst.confirm_time >= 输入.begin_time ENDOPTION OPTION 输入.end_time <> "" - mst.input_time <= 输入.end_time + mst.confirm_time <= 输入.end_time ENDOPTION OPTION 输入.with <> "" diff --git a/lms/nladmin-ui/src/views/wms/basedata/st/ivt/index.vue b/lms/nladmin-ui/src/views/wms/basedata/st/ivt/index.vue index 69c98f164..928ae3ab1 100644 --- a/lms/nladmin-ui/src/views/wms/basedata/st/ivt/index.vue +++ b/lms/nladmin-ui/src/views/wms/basedata/st/ivt/index.vue @@ -200,6 +200,16 @@ + + + + + + @@ -258,6 +268,8 @@ export default { crudUserStor.getSect({ 'stor_id': '' }).then(res => { this.sects = res.content }) + this.crud.query.ivt_status = 'canuse_qty' + this.crud.toQuery() }, methods: { // 取两位小数点 @@ -302,6 +314,12 @@ export default { crud.downloadLoading = false }) } + }, + save(row) { + crudStructivt.save(row).then(res => { + this.crud.notify('操作成功', CRUD.NOTIFICATION_TYPE.SUCCESS) + this.crud.toQuery() + }) } } } diff --git a/lms/nladmin-ui/src/views/wms/basedata/st/ivt/structivt.js b/lms/nladmin-ui/src/views/wms/basedata/st/ivt/structivt.js index 2e3f029f0..762aeb53d 100644 --- a/lms/nladmin-ui/src/views/wms/basedata/st/ivt/structivt.js +++ b/lms/nladmin-ui/src/views/wms/basedata/st/ivt/structivt.js @@ -46,4 +46,12 @@ export function getUnits() { }) } -export default { add, edit, del, getStruct, getStructById, getUnits } +export function save(data) { + return request({ + url: 'api/structivt/save', + method: 'post', + data: data + }) +} + +export default { add, edit, del, getStruct, getStructById, getUnits, save }