From f256124e79bbab26dbb8d9b6d97fceaa5cc7fd16 Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Tue, 5 Dec 2023 15:43:59 +0800 Subject: [PATCH] =?UTF-8?q?dev:=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wql/core/engine/syntax/wqlSELECT.java | 12 +++--------- .../mes/service/impl/LmsToMesServiceImpl.java | 4 ++-- .../mes/service/impl/MesToLmsServiceImpl.java | 4 ++-- .../mps/service/impl/BakingServiceImpl.java | 13 ++----------- .../pdm/ivt/service/dto/SbPointIvtDto.java | 3 +++ .../service/impl/SbPointIvtServiceImpl.java | 1 + .../org/nl/wms/pdm/wql/ST_IVT_SBPOINTIVT.wql | 4 ++++ .../src/main/java/org/nl/wms/pdm/wql/pdm.xls | Bin 258560 -> 265216 bytes .../outbill/rest/CheckOutBillController.java | 4 ++-- .../st/outbill/wql/QST_IVT_CHECKOUTBILL.wql | 2 +- .../impl/InAndOutRetrunServiceImpl.java | 2 +- .../st/returns/wql/QST_IVT_INANDOUTRETRUN.wql | 8 ++++---- .../views/wms/pdm/ivt/sbpointivt/index.vue | 18 ++++++++++++++++++ .../wms/st/inStor/productscrap/index.vue | 4 ++-- .../src/views/wms/st/outbill/DivDialog.vue | 1 + 15 files changed, 46 insertions(+), 34 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlSELECT.java b/lms/nladmin-system/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlSELECT.java index 0641afe81..435359dc2 100644 --- a/lms/nladmin-system/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlSELECT.java +++ b/lms/nladmin-system/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlSELECT.java @@ -1,6 +1,5 @@ package org.nl.modules.wql.core.engine.syntax; -import cn.hutool.core.util.StrUtil; import lombok.extern.slf4j.Slf4j; import org.nl.modules.wql.WQLCore; import org.nl.modules.wql.core.DataType; @@ -160,7 +159,7 @@ public class wqlSELECT extends IWQL { if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { // String sqlTmp = "select * from("+wo.wp.sSQL+") TOTALRECORDVIEW order by " + wo.wp.SORT_ORDERBYFIELD + " limit "+wo.wp.PAGE_PAGESTART+","+wo.wp.PAGE_PAGERECORDNUM; // String sqlTmp = wo.wp.sSQL+" order by " + wo.wp.SORT_ORDERBYFIELD + " limit "+wo.wp.PAGE_PAGESTART+","+wo.wp.PAGE_PAGERECORDNUM; -// String sqlTmp = "select top "+wo.wp.PAGE_PAGERECORDNUM+"* FROM () WHERE ID NOT IN(SELECT TOP 45000 ID FROM ARTICLE ORDER BY YEAR DESC, ID DESC) ORDER BY YEAR DESC,ID DESC +// String sqlTmp = "select top "+wo.wp.PAGE_PAGERECORDNUM+"* FROM () WHERE ID NOT IN(SELECT TOP 45000 ID FROM ARTICLE ORDER BY YEAR DESC, ID DESC) ORDER BY YEAR DESC,ID DESC String sqlTmp = "select * from (select row_number() over( order by " + wo.wp.SORT_ORDERBYFIELD + ") rownumber,* from (" + wo.wp.sSQL + ") b ) a1 where rownumber between " + (wo.wp.PAGE_PAGESTART + 1) + " and " + (wo.wp.PAGE_PAGESTART + wo.wp.PAGE_PAGERECORDNUM); @@ -371,15 +370,10 @@ public class wqlSELECT extends IWQL { //2.2、对分页进行处理 Set keySettTempTable = WQLCore.tempTableMap.keySet(); if (this.isInQuery && this.isPageQuery) { - if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) ) { + if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { // String sqlTmp = "select * from("+wo.wp.sSQL+") TOTALRECORDVIEW order by " + wo.wp.SORT_ORDERBYFIELD + " limit "+wo.wp.PAGE_PAGESTART+","+wo.wp.PAGE_PAGERECORDNUM; String sqlTmp = wo.wp.sSQL + " order by " + wo.wp.SORT_ORDERBYFIELD + " limit " + wo.wp.PAGE_PAGESTART + "," + wo.wp.PAGE_PAGERECORDNUM; - if (StrUtil.isEmpty(wo.wp.SORT_ORDERBYFIELD)){ - sqlTmp = wo.wp.sSQL + " limit " + wo.wp.PAGE_PAGESTART + "," + wo.wp.PAGE_PAGERECORDNUM; - - } - // String sqlTmp = "select * from (select PAGE_SRCRESULTSET_1.*, row_number() over(order by " + wo.wp.SORT_ORDERBYFIELD + ")" // + " as SORT_INDEXFIELDALIAS from ( " // + wo.wp.sSQL @@ -412,7 +406,7 @@ public class wqlSELECT extends IWQL { log.error("关闭st,rs出错" + e.toString()); } } - if (this.isPageQuery) { + if (wo.wp.SORT_ORDERBYFIELD.length() > 0) { //对sql进行特殊处理,找出和第一个select配对的from,并把中间全部换为1 // String page_sql = change_1(wo.wp.sSQL); String page_sql = wo.wp.sSQL; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/LmsToMesServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/LmsToMesServiceImpl.java index a2959b62d..9a5e89f1d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/LmsToMesServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/LmsToMesServiceImpl.java @@ -105,7 +105,7 @@ public class LmsToMesServiceImpl implements LmsToMesService { if (ObjectUtil.isEmpty(sb_jo)) { throw new BadRequestException("未查询到母卷号:" + iContainerName + "对应的生箔机台编号!"); } - if (StrUtil.equals("0", sb_jo.getString("is_used"))) { + if (StrUtil.equals("0", sb_jo.getString("mes_used"))) { result.put("status", HttpStatus.OK.value()); result.put("message", "设备:" + sb_jo.getString("point_code") + "未启动!"); result.put("data", new JSONObject()); @@ -165,7 +165,7 @@ public class LmsToMesServiceImpl implements LmsToMesService { if (ObjectUtil.isEmpty(sb_jo)) { throw new BadRequestException("未查询到母卷号:" + iContainerName + "对应的生箔机台编号!"); } - if (StrUtil.equals("0", sb_jo.getString("is_used"))) { + if (StrUtil.equals("0", sb_jo.getString("mes_used"))) { result.put("status", HttpStatus.OK.value()); result.put("message", "设备:" + sb_jo.getString("point_code") + "未启动!"); result.put("data", new JSONObject()); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java index de3d62a29..ed0a486dd 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java @@ -160,7 +160,7 @@ public class MesToLmsServiceImpl implements MesToLmsService { if (ObjectUtil.isEmpty(jsonPoint)) { jsonPoint = new JSONObject(); } - if (StrUtil.equals("1", jsonPoint.getString("is_used"))) { + if (StrUtil.equals("1", jsonPoint.getString("mes_used"))) { JSONObject json = new JSONObject(); json.put("ContainerName", raw_jo.getString("container_name")); json.put("ResourceName", raw_jo.getString("resource_name")); @@ -284,7 +284,7 @@ public class MesToLmsServiceImpl implements MesToLmsService { if (ObjectUtil.isEmpty(sb_jo)) { throw new BadRequestException("未查询到母卷号:" + ContainerName + "对应的生箔机台编号!"); } - if (StrUtil.equals("1", sb_jo.getString("is_used"))) { + if (StrUtil.equals("1", sb_jo.getString("mes_used"))) { if (StrUtil.equals(nextSpec, "1")) { /* * 入烘箱 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java index 371cdc56a..795883fd9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java @@ -96,15 +96,10 @@ public class BakingServiceImpl implements BakingService { throw new BadRequestException("未查询到母卷号:" + container_name + "对应的生箔机台编号!"); } - /*if (StrUtil.equals("1", sb_jo.getString("is_used")) && !raw_jo.getString("is_baking").equals("1")) { - throw new BadRequestException("该母卷在MES上未进行决策入烘箱,不允许进行入烘箱操作!"); - }*/ - - if (!raw_jo.getString("is_baking").equals("1")) { + if (StrUtil.equals("1", sb_jo.getString("mes_used")) && !raw_jo.getString("is_baking").equals("1")) { throw new BadRequestException("该母卷在MES上未进行决策入烘箱,不允许进行入烘箱操作!"); } - if (ObjectUtil.isEmpty(container_name)) { throw new BadRequestException("母卷号不能为空"); } @@ -472,11 +467,7 @@ public class BakingServiceImpl implements BakingService { throw new BadRequestException("未查询到母卷号:" + container_name + "对应的生箔机台编号!"); } - /*if (StrUtil.equals("1", sb_jo.getString("is_used")) && !raw_jo.getString("is_instor").equals("1")) { - throw new BadRequestException("该母卷在MES上未进行决策入半成品库,不允许进行入冷却操作!"); - }*/ - - if (!raw_jo.getString("is_instor").equals("1")) { + if (StrUtil.equals("1", sb_jo.getString("mes_used")) && !raw_jo.getString("is_instor").equals("1")) { throw new BadRequestException("该母卷在MES上未进行决策入半成品库,不允许进行入冷却操作!"); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/dto/SbPointIvtDto.java b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/dto/SbPointIvtDto.java index a70676978..e88d7609d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/dto/SbPointIvtDto.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/dto/SbPointIvtDto.java @@ -43,6 +43,9 @@ public class SbPointIvtDto implements Serializable { /** 是否启用 */ private String is_used; + /** 是否启用 */ + private String mes_used; + /** 创建人 */ private String create_id; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/impl/SbPointIvtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/impl/SbPointIvtServiceImpl.java index 8c81face8..4a350aa51 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/impl/SbPointIvtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/ivt/service/impl/SbPointIvtServiceImpl.java @@ -46,6 +46,7 @@ public class SbPointIvtServiceImpl implements SbPointIvtService { map.put("point_code", "%" + whereJson.get("point_code") + "%"); map.put("product_area", whereJson.get("product_area")); map.put("is_used", whereJson.get("is_used")); + map.put("mes_used", whereJson.get("mes_used")); if (ObjectUtil.isNotEmpty(in_area_id)) map.put("in_area_id", in_area_id); JSONObject json = WQL.getWO("ST_IVT_SBPOINTIVT").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "product_area,point_code"); return json; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/ST_IVT_SBPOINTIVT.wql b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/ST_IVT_SBPOINTIVT.wql index 039e454b8..4c31f666c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/ST_IVT_SBPOINTIVT.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/ST_IVT_SBPOINTIVT.wql @@ -17,6 +17,7 @@ 输入.point_code TYPEAS s_string 输入.product_area TYPEAS s_string 输入.is_used TYPEAS s_string + 输入.mes_used TYPEAS s_string 输入.in_area_id TYPEAS f_string @@ -58,6 +59,9 @@ OPTION 输入.is_used <> "" is_used = 输入.is_used ENDOPTION + OPTION 输入.is_used <> "" + mes_used = 输入.mes_used + ENDOPTION ENDSELECT ENDPAGEQUERY ENDIF \ No newline at end of file diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/pdm.xls b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/pdm.xls index 40558cf76e148128aa6cecac019b62146b948684..7ba6a10b5de2ddd4ef38ca297f3ee281c5264b13 100644 GIT binary patch delta 35845 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 delta 31622 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ȴzmcU1-HnNTO^+h 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.NO_CONTENT); } @PostMapping("/allSetPoint") - @Log("设置全部站点") - @ApiOperation("设置全部站点") + @Log("一键设置") + @ApiOperation("一键设置") public ResponseEntity allSetPoint(@RequestBody JSONObject whereJson) { checkOutBillService.allSetPoint(whereJson); return new ResponseEntity<>(HttpStatus.NO_CONTENT); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql index aaa3cb5f3..e20e18311 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql @@ -93,7 +93,7 @@ LEFT JOIN md_cs_customerbase cu ON ios.cust_code = cu.cust_code LEFT JOIN st_ivt_iostorinvdtl dtl ON ios.iostorinv_id = dtl.iostorinv_id LEFT JOIN st_ivt_iostorinvdis dis ON dtl.iostorinvdtl_id = dis.iostorinvdtl_id - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn + LEFT JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn AND sub.bill_code = ios.bill_code WHERE ios.io_type = '1' and ios.is_delete='0' diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java index f4684232a..27d143d0e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java @@ -415,7 +415,7 @@ public class InAndOutRetrunServiceImpl implements InAndOutReturnService { } JSONObject jsonSub = subTab.query("container_name = '" + json2.getString("pcsn") + "' AND package_box_sn = '" + json2.getString("box_no") + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(jsonSect)) { + if (ObjectUtil.isNotEmpty(jsonSub)) { jsonDis.put("CHARG", jsonSub.getString("sap_pcsn")); // sap批次 } jsonDis.put("VBELN", json.getString("vbeln")); // 交货 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/wql/QST_IVT_INANDOUTRETRUN.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/wql/QST_IVT_INANDOUTRETRUN.wql index bc04daedd..06ad82d2f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/wql/QST_IVT_INANDOUTRETRUN.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/wql/QST_IVT_INANDOUTRETRUN.wql @@ -68,7 +68,7 @@ user.person_name AS upload_name FROM st_ivt_iostorinv mst - LEFT JOIN ( + INNER JOIN ( SELECT iostorinv_id, MAX( source_bill_type ) AS source_bill_type, @@ -91,13 +91,13 @@ GROUP BY iostorinv_id ) a ON mst.iostorinv_id = a.iostorinv_id - LEFT JOIN ( + INNER JOIN ( SELECT iostorinv_id FROM st_ivt_iostorinvdis dis - LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn - AND dis.box_no = sub.package_box_sn + LEFT JOIN pdm_bi_subpackagerelationrecord sub ON sub.container_name = dis.pcsn + AND dis.box_no = sub.package_box_sn AND dis.iostorinv_id = sub.bill_id WHERE 1=1 OPTION 输入.pcsn <> "" diff --git a/lms/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue b/lms/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue index 2adc10e03..42916118a 100644 --- a/lms/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue +++ b/lms/nladmin-ui/src/views/wms/pdm/ivt/sbpointivt/index.vue @@ -48,6 +48,16 @@ @change="hand" /> + + + @@ -99,6 +109,9 @@ + + +