From 0a850e560dd357e86a51e1f6e9ab0e54b13ba5e9 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期三, 01 四月 2026 16:52:47 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/wrkMast/wrkMast.html                  |   32 +++++++++++++++
 src/main/webapp/static/js/wrkMast/wrkMast.js                |   51 +++++++++++++++++++++++++
 src/main/java/com/zy/asrs/controller/WrkMastController.java |    2 +
 3 files changed, 83 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/WrkMastController.java b/src/main/java/com/zy/asrs/controller/WrkMastController.java
index ab1121f..51496f6 100644
--- a/src/main/java/com/zy/asrs/controller/WrkMastController.java
+++ b/src/main/java/com/zy/asrs/controller/WrkMastController.java
@@ -76,6 +76,8 @@
                 String[] dates = val.split(RANGE_TIME_LINK);
                 wrapper.ge(column, DateUtils.convert(dates[0]));
                 wrapper.le(column, DateUtils.convert(dates[1]));
+            } else if ("io_type".equals(column) || "wrk_sts".equals(column)) {
+                wrapper.eq(column, val);
             } else {
                 wrapper.like(column, val);
             }
diff --git a/src/main/webapp/static/js/wrkMast/wrkMast.js b/src/main/webapp/static/js/wrkMast/wrkMast.js
index e3069ec..6e48597 100644
--- a/src/main/webapp/static/js/wrkMast/wrkMast.js
+++ b/src/main/webapp/static/js/wrkMast/wrkMast.js
@@ -30,10 +30,13 @@
             condition: "",
             wrk_no: "",
             wms_wrk_no: "",
+            io_type: "",
+            wrk_sts: "",
             loc_no: "",
             source_loc_no: "",
             crn_no: "",
-            dual_crn_no: ""
+            dual_crn_no: "",
+            barcode: ""
         };
     }
 
@@ -70,6 +73,10 @@
                 pageTotal: 0,
                 tableHeight: 520,
                 searchForm: cloneSearchForm(),
+                filterOptions: {
+                    ioTypes: [],
+                    wrkStatuses: []
+                },
                 sortState: {
                     prop: "",
                     order: ""
@@ -91,6 +98,7 @@
             }
         },
         created: function () {
+            this.loadFilterOptions();
             this.loadList();
         },
         mounted: function () {
@@ -105,6 +113,47 @@
             }
         },
         methods: {
+            loadFilterOptions: function () {
+                var vm = this;
+                [
+                    {
+                        field: "wrkStatuses",
+                        url: baseUrl + "/basWrkStatus/list/auth",
+                        valueField: "wrkSts",
+                        labelField: "wrkDesc"
+                    },
+                    {
+                        field: "ioTypes",
+                        url: baseUrl + "/basWrkIotype/list/auth",
+                        valueField: "ioType",
+                        labelField: "ioDesc"
+                    }
+                ].forEach(function (config) {
+                    $.ajax({
+                        url: config.url,
+                        headers: { token: localStorage.getItem("token") },
+                        method: "GET",
+                        data: {
+                            curr: 1,
+                            limit: 200
+                        },
+                        success: function (res) {
+                            if (res.code === 200) {
+                                vm.$set(vm.filterOptions, config.field, ((res.data && res.data.records) || []).map(function (item) {
+                                    return {
+                                        value: item[config.valueField],
+                                        label: item[config.labelField]
+                                    };
+                                }));
+                                return;
+                            }
+                            if (res.code === 403) {
+                                top.location.href = baseUrl + "/";
+                            }
+                        }
+                    });
+                });
+            },
             displayCellValue: function (row, column) {
                 var value;
                 if (!row || !column) {
diff --git a/src/main/webapp/views/wrkMast/wrkMast.html b/src/main/webapp/views/wrkMast/wrkMast.html
index 9a9eabb..bafcb4c 100644
--- a/src/main/webapp/views/wrkMast/wrkMast.html
+++ b/src/main/webapp/views/wrkMast/wrkMast.html
@@ -288,6 +288,36 @@
                             </el-input>
                         </div>
                         <div class="toolbar-search-item">
+                            <el-select
+                                v-model="searchForm.io_type"
+                                clearable
+                                size="small"
+                                placeholder="浠诲姟绫诲瀷"
+                                style="width: 100%;">
+                                <el-option
+                                    v-for="item in filterOptions.ioTypes"
+                                    :key="'io-type-' + item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </div>
+                        <div class="toolbar-search-item">
+                            <el-select
+                                v-model="searchForm.wrk_sts"
+                                clearable
+                                size="small"
+                                placeholder="宸ヤ綔鐘舵��"
+                                style="width: 100%;">
+                                <el-option
+                                    v-for="item in filterOptions.wrkStatuses"
+                                    :key="'wrk-sts-' + item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </div>
+                        <div class="toolbar-search-item">
                             <el-input
                                 v-model.trim="searchForm.loc_no"
                                 clearable
@@ -444,5 +474,5 @@
 <script type="text/javascript" src="../../static/js/common.js?v=20260309_i18n_fix1"></script>
 <script type="text/javascript" src="../../static/vue/js/vue.min.js"></script>
 <script type="text/javascript" src="../../static/vue/element/element.js"></script>
-<script type="text/javascript" src="../../static/js/wrkMast/wrkMast.js?v=20260322_system_msg_wrap"></script>
+<script type="text/javascript" src="../../static/js/wrkMast/wrkMast.js?v=20260401_filter_state_type"></script>
 </html>

--
Gitblit v1.9.1