From f489649c62e21188a1679a936135c3b4f10ca996 Mon Sep 17 00:00:00 2001 From: liuxy Date: Tue, 29 Nov 2022 15:22:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/VirtualOutServiceImpl.java | 62 ++++++++++--------- .../impl/InAndOutRetrunServiceImpl.java | 2 + .../st/returns/wql/QST_IVT_INANDOUTRETRUN.wql | 6 ++ .../src/views/wms/st/inAndOutReturn/index.vue | 11 +++- .../src/views/wms/st/incharge/index.vue | 16 ++++- .../src/views/wms/st/outbill/ViewDialog.vue | 16 ++--- .../src/views/wms/st/outcharge/index.vue | 16 ++++- 7 files changed, 88 insertions(+), 41 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/VirtualOutServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/VirtualOutServiceImpl.java index 7e09c815e..5d6e1eff7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/VirtualOutServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/VirtualOutServiceImpl.java @@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.wms.pda.st.service.VirtualOutService; @@ -95,37 +96,42 @@ public class VirtualOutServiceImpl implements VirtualOutService { JSONArray box_rows = whereJson.getJSONArray("box_rows"); - HashSet boxSet = new HashSet<>(); + String box_no = whereJson.getString("box_no"); + if (ObjectUtil.isEmpty(box_no)) throw new BadRequestException("木箱不能为空"); - for (int i = 0; i < box_rows.size(); i++) { + + /* for (int i = 0; i < box_rows.size(); i++) { JSONObject json = box_rows.getJSONObject(i); - boxSet.add(json.getString("package_box_sn")); - } + if (!StrUtil.equals(json.getString("package_box_sn"), box_no)) { + throw new BadRequestException("请输入正确的木箱号"); + } + }*/ - for (String box_no : boxSet) { - JSONArray disArr = WQL.getWO("PDA_ST_01").addParam("flag", "7").addParam("box_no", box_no).process().getResultJSONArray(0); - for (int i = 0; i < disArr.size(); i++) { - JSONObject jsonDis = disArr.getJSONObject(i); - // 更新状态为完成 - jsonDis.put("work_status", "99"); - disTab.update(jsonDis); + // 传单据号 - // 判断分配明细是否全部完成 - JSONArray disNoArr = disTab.query("iostorinvdtl_id = '" + jsonDis.getString("iostorinvdtl_id") + "' and work_status <> '99'").getResultJSONArray(0); - if (ObjectUtil.isEmpty(disNoArr)) { - // 更新明细表状态为完成 - JSONObject jsonDtl = dtlTab.query("iostorinvdtl_id = '" + jsonDis.getString("iostorinvdtl_id") + "'").uniqueResult(0); - jsonDtl.put("bill_status", "99"); - dtlTab.update(jsonDtl); + JSONArray disArr = WQL.getWO("PDA_ST_01").addParam("flag", "7").addParam("box_no", box_no).process().getResultJSONArray(0); + if (ObjectUtil.isEmpty(disArr)) throw new BadRequestException("木箱码无效"); + for (int i = 0; i < disArr.size(); i++) { + JSONObject jsonDis = disArr.getJSONObject(i); + // 更新状态为完成 + jsonDis.put("work_status", "99"); + disTab.update(jsonDis); - // 判断此明细是否全部完成 - JSONArray dtlNoArr = dtlTab.query("iostorinv_id = '" + jsonDis.getString("iostorinv_id") + "' and bill_status <> '99'").getResultJSONArray(0); - if (ObjectUtil.isEmpty(dtlNoArr)) { - // 调用强制完成接口 - JSONObject param = new JSONObject(); - param.put("iostorinv_id",jsonDis.getString("iostorinv_id")); - checkOutBillService.confirm(param); - } + // 判断分配明细是否全部完成 + JSONArray disNoArr = disTab.query("iostorinvdtl_id = '" + jsonDis.getString("iostorinvdtl_id") + "' and work_status <> '99'").getResultJSONArray(0); + if (ObjectUtil.isEmpty(disNoArr)) { + // 更新明细表状态为完成 + JSONObject jsonDtl = dtlTab.query("iostorinvdtl_id = '" + jsonDis.getString("iostorinvdtl_id") + "'").uniqueResult(0); + jsonDtl.put("bill_status", "99"); + dtlTab.update(jsonDtl); + + // 判断此明细是否全部完成 + JSONArray dtlNoArr = dtlTab.query("iostorinv_id = '" + jsonDis.getString("iostorinv_id") + "' and bill_status <> '99'").getResultJSONArray(0); + if (ObjectUtil.isEmpty(dtlNoArr)) { + // 调用强制完成接口 + JSONObject param = new JSONObject(); + param.put("iostorinv_id", jsonDis.getString("iostorinv_id")); + checkOutBillService.confirm(param); } } } @@ -135,8 +141,8 @@ public class VirtualOutServiceImpl implements VirtualOutService { } @Override - public JSONObject printType(JSONObject whereJson){ - JSONArray rows = WQL.getWO("PDA_ST_01").addParam("flag","6").process().getResultJSONArray(0); + public JSONObject printType(JSONObject whereJson) { + JSONArray rows = WQL.getWO("PDA_ST_01").addParam("flag", "6").process().getResultJSONArray(0); JSONObject jo = new JSONObject(); jo.put("data", rows); jo.put("message", "查询成功!"); 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 f15c9e491..24831bb25 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 @@ -38,6 +38,7 @@ public class InAndOutRetrunServiceImpl implements InAndOutReturnService { public Map pageQuery(Map whereJson, Pageable page) { HashMap map = new HashMap<>(whereJson); String bill_code = MapUtil.getStr(whereJson, "bill_code"); + String box_no = MapUtil.getStr(whereJson, "box_no"); String material_search = MapUtil.getStr(whereJson, "material_search"); map.put("flag", "1"); map.put("stor_id", MapUtil.getStr(whereJson, "stor_id")); @@ -50,6 +51,7 @@ public class InAndOutRetrunServiceImpl implements InAndOutReturnService { map.put("pcsn", MapUtil.getStr(whereJson, "pcsn")); if (!ObjectUtil.isEmpty(bill_code)) map.put("bill_code", "%" + bill_code + "%"); if (!ObjectUtil.isEmpty(material_search)) map.put("material_search", "%" + material_search + "%"); + if (!ObjectUtil.isEmpty(box_no)) map.put("box_no", "%" + box_no + "%"); JSONObject jo = WQL.getWO("QST_IVT_INANDOUTRETRUN").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.input_time desc"); return jo; 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 fca848e96..ec760b6b5 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 @@ -30,6 +30,7 @@ 输入.material_type_id TYPEAS f_string 输入.iostorinv_id TYPEAS s_string 输入.ids TYPEAS f_string + 输入.box_no TYPEAS s_string @@ -66,6 +67,7 @@ FROM st_ivt_iostorinv mst LEFT JOIN st_ivt_iostorinvdtl dtl ON mst.iostorinv_id = dtl.iostorinv_id + LEFT JOIN ST_IVT_IOStorInvDis dis ON dis.iostorinvdtl_id = dtl.iostorinvdtl_id LEFT JOIN sys_user user ON user.user_id = mst.upload_optid INNER JOIN md_me_materialbase mb ON mb.material_id = dtl.material_id WHERE @@ -86,6 +88,10 @@ mst.bill_type = 输入.bill_type ENDOPTION + OPTION 输入.box_no <> "" + dis.box_no like 输入.box_no + ENDOPTION + OPTION 输入.bill_status <> "" mst.bill_status = 输入.bill_status ENDOPTION diff --git a/lms/nladmin-ui/src/views/wms/st/inAndOutReturn/index.vue b/lms/nladmin-ui/src/views/wms/st/inAndOutReturn/index.vue index 4a050e73c..bf6b5713c 100644 --- a/lms/nladmin-ui/src/views/wms/st/inAndOutReturn/index.vue +++ b/lms/nladmin-ui/src/views/wms/st/inAndOutReturn/index.vue @@ -110,6 +110,15 @@ @keyup.enter.native="crud.toQuery" /> + + + - + + + @@ -134,6 +138,7 @@ + @@ -146,10 +151,11 @@ import pagination from '@crud/Pagination' import DateRangePicker from '@/components/DateRangePicker/index' import crudInchargefrom from '@/views/wms/st/incharge/incharge' import crudStorattr from '@/views/wms/basedata/st/stor/storattr' +import ViewDialog from '@/views/wms/st/outbill/ViewDialog' export default { name: 'Incharge', - components: { crudOperation, rrOperation, udOperation, pagination, DateRangePicker }, + components: { crudOperation, rrOperation, udOperation, pagination, DateRangePicker, ViewDialog }, cruds() { return CRUD({ title: '入库冲销', @@ -171,6 +177,8 @@ export default { dicts: ['ST_CREATE_MODE', 'ST_INV_IN_TYPE', 'io_bill_status'], data() { return { + mstrow: {}, + viewShow: false, permission: { }, storlist: [] @@ -185,6 +193,10 @@ export default { [CRUD.HOOK.beforeRefresh]() { return true }, + toView(index, row) { + this.mstrow = row + this.viewShow = true + }, charge() { const _selectData = this.$refs.table.selection crudInchargefrom.charge(_selectData[0]).then(res => { diff --git a/lms/nladmin-ui/src/views/wms/st/outbill/ViewDialog.vue b/lms/nladmin-ui/src/views/wms/st/outbill/ViewDialog.vue index 7cf4783a6..39235e149 100644 --- a/lms/nladmin-ui/src/views/wms/st/outbill/ViewDialog.vue +++ b/lms/nladmin-ui/src/views/wms/st/outbill/ViewDialog.vue @@ -42,7 +42,7 @@ disabled > - + - - - - + + + + @@ -160,7 +160,7 @@ export default { name: 'ViewDialog', components: { }, mixins: [crud()], - dicts: ['io_bill_status', 'work_status', 'task_status', 'SCH_TASK_TYPE_DTL','ST_INV_OUT_TYPE'], + dicts: ['io_bill_status', 'work_status', 'task_status', 'SCH_TASK_TYPE_DTL','ST_INV_OUT_TYPE', 'INANDOUT_BILL_TYPE'], props: { dialogShow: { type: Boolean, @@ -198,7 +198,7 @@ export default { this.billtypelist = res }), // 查询原材料库的仓库 - crudStorattr.getStor({ 'is_materialstore': '1' }).then(res => { + crudStorattr.getStor({ 'is_productstore': '1' }).then(res => { this.storlist = res.content }) }, diff --git a/lms/nladmin-ui/src/views/wms/st/outcharge/index.vue b/lms/nladmin-ui/src/views/wms/st/outcharge/index.vue index 1c8a50baa..c61575504 100644 --- a/lms/nladmin-ui/src/views/wms/st/outcharge/index.vue +++ b/lms/nladmin-ui/src/views/wms/st/outcharge/index.vue @@ -134,7 +134,11 @@ @select-all="onSelectAll" > - + + + @@ -155,6 +159,7 @@ + @@ -167,10 +172,11 @@ import pagination from '@crud/Pagination' import DateRangePicker from '@/components/DateRangePicker/index' import crudOutchargefrom from '@/views/wms/st/outcharge/outcharge' import crudStorattr from '@/views/wms/basedata/st/stor/storattr' +import ViewDialog from '@/views/wms/st/outbill/ViewDialog' export default { name: 'Outcharge', - components: { crudOperation, rrOperation, udOperation, pagination, DateRangePicker }, + components: { crudOperation, rrOperation, udOperation, pagination, DateRangePicker, ViewDialog }, cruds() { return CRUD({ title: '出库冲销', @@ -196,6 +202,8 @@ export default { }, billType: null, storlist: [], + mstrow: {}, + viewShow: false, currentRow: null, createtypelist: [], statuslist: [] @@ -210,6 +218,10 @@ export default { [CRUD.HOOK.beforeRefresh]() { return true }, + toView(index, row) { + this.mstrow = row + this.viewShow = true + }, create_modeFormat(row, column) { return this.dict.label.ST_CREATE_MODE[row.create_mode] },