From cf9d04b97ef0b8abb63e587e0898e301765ed4b9 Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期一, 18 八月 2025 17:07:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 .env.development                                         |    2 
 src/views/andon/modules/AndonResponseConfigForm.vue      |  340 ++++++----
 src/views/mes/modules/MesMaterialTransferRequestForm.vue |   84 +-
 src/views/cms/modules/CuttingToolModal.vue               |    9 
 src/views/andon/AndonOrderList.vue                       |    6 
 src/views/andon/modules/AndonOrderForm.vue               |  307 +++++-----
 src/views/cms/CuttingToolList.vue                        |  359 ++++++------
 src/views/cms/ToolStocktakingList.vue                    |    6 
 src/views/mes/MesMaterialTransferRequestList.vue         |  259 +++-----
 src/views/andon/modules/AndonButtonConfigForm.vue        |  327 ++++++----
 10 files changed, 891 insertions(+), 808 deletions(-)

diff --git a/.env.development b/.env.development
index f7a86b2..2fceb85 100644
--- a/.env.development
+++ b/.env.development
@@ -1,5 +1,5 @@
 NODE_ENV=development
-VUE_APP_API_BASE_URL=http://127.0.0.1:9989/jeecg-boot
+VUE_APP_API_BASE_URL=http://127.0.0.1:9989
 VUE_APP_CAS_BASE_URL=http://cas.example.org:8443/cas
 VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview
 
diff --git a/src/views/andon/AndonOrderList.vue b/src/views/andon/AndonOrderList.vue
index 8246434..9641f6c 100644
--- a/src/views/andon/AndonOrderList.vue
+++ b/src/views/andon/AndonOrderList.vue
@@ -149,7 +149,7 @@
           {
             title:'瀹夌伅浜�',
             align:"center",
-            dataIndex: 'operator'
+            dataIndex: 'operator_dictText'
           },
           {
             title:'瀹夌伅鏃堕棿',
@@ -164,7 +164,7 @@
           {
             title:'鍝嶅簲浜�',
             align:"center",
-            dataIndex: 'responder'
+            dataIndex: 'responder_dictText'
           },
           {
             title:'鍝嶅簲鏃堕棿',
@@ -174,7 +174,7 @@
           {
             title:'澶勭悊浜�',
             align:"center",
-            dataIndex: 'processor'
+            dataIndex: 'processor_dictText'
           },
           {
             title:'澶勭悊瀹屾垚鏃堕棿',
diff --git a/src/views/andon/modules/AndonButtonConfigForm.vue b/src/views/andon/modules/AndonButtonConfigForm.vue
index 7465026..cc47986 100644
--- a/src/views/andon/modules/AndonButtonConfigForm.vue
+++ b/src/views/andon/modules/AndonButtonConfigForm.vue
@@ -1,46 +1,59 @@
 <template>
   <a-spin :spinning="confirmLoading">
-    <j-form-container :disabled="formDisabled">
+    <j-form-container :disabled="formDisabled" class="andon-button-form">
       <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
-        <a-row>
+        <!-- 绗竴琛岋細瀹夌伅鍚嶇О + 瀹夌伅缂栫爜 -->
+        <a-row :gutter="24">
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="buttonName">
-              <a-input v-model="model.buttonName" placeholder="璇疯緭鍏ュ畨鐏悕绉�"  ></a-input>
+              <a-input v-model="model.buttonName" placeholder="璇疯緭鍏�" />
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅缂栫爜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="buttonCode">
-              <a-input v-model="model.buttonCode" placeholder="璇疯緭鍏ュ畨鐏紪鐮�"  ></a-input>
+              <a-input v-model="model.buttonCode" placeholder="璇疯緭鍏�" />
+            </a-form-model-item>
+          </a-col>
+        </a-row>
+
+        <!-- 绗簩琛岋細鍗囩骇鍝嶅簲鏃堕暱 + 鍗囩骇澶勭悊鏃堕暱 -->
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-model-item label="鍗囩骇鍝嶅簲" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upgradeResponseDuration">
+              <a-input-number v-model="model.upgradeResponseDuration" placeholder="璇疯緭鍏�" style="width: 100%" />
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item label="鍗囩骇鍝嶅簲鏃堕暱(鍒嗛挓)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upgradeResponseDuration">
-              <a-input-number v-model="model.upgradeResponseDuration" placeholder="璇疯緭鍏ュ崌绾у搷搴旀椂闀�(鍒嗛挓)" style="width: 100%" />
+            <a-form-model-item label="鍗囩骇澶勭悊" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upgradeProcessDuration">
+              <a-input-number v-model="model.upgradeProcessDuration" placeholder="璇疯緭鍏�" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+        </a-row>
+
+        <!-- 绗笁琛岋細浜屾鍗囩骇鍝嶅簲鏃堕暱 + 浜屾鍗囩骇澶勭悊鏃堕暱 -->
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-model-item label="浜屾鍗囩骇鍝嶅簲" :labelCol="labelColWide" :wrapperCol="wrapperColNarrow" prop="secondUpgradeResponseDuration">
+              <a-input-number v-model="model.secondUpgradeResponseDuration" placeholder="璇疯緭鍏�" style="width: 100%" />
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item label="鍗囩骇澶勭悊鏃堕暱(鍒嗛挓)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upgradeProcessDuration">
-              <a-input-number v-model="model.upgradeProcessDuration" placeholder="璇疯緭鍏ュ崌绾у鐞嗘椂闀�(鍒嗛挓)" style="width: 100%" />
+            <a-form-model-item label="浜屾鍗囩骇澶勭悊" :labelCol="labelColWide" :wrapperCol="wrapperColNarrow" prop="secondUpgradeProcessDuration">
+              <a-input-number v-model="model.secondUpgradeProcessDuration" placeholder="璇疯緭鍏�" style="width: 100%" />
             </a-form-model-item>
           </a-col>
+        </a-row>
+
+        <!-- 绗洓琛岋細瀹夌伅鎸夐挳鐘舵�� + 澶囨敞 -->
+        <a-row :gutter="24">
           <a-col :span="12">
-            <a-form-model-item label="浜屾鍗囩骇鍝嶅簲鏃堕暱(鍒嗛挓)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="secondUpgradeResponseDuration">
-              <a-input-number v-model="model.secondUpgradeResponseDuration" placeholder="璇疯緭鍏ヤ簩娆″崌绾у搷搴旀椂闀�(鍒嗛挓)" style="width: 100%" />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="浜屾鍗囩骇澶勭悊鏃堕暱(鍒嗛挓)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="secondUpgradeProcessDuration">
-              <a-input-number v-model="model.secondUpgradeProcessDuration" placeholder="璇疯緭鍏ヤ簩娆″崌绾у鐞嗘椂闀�(鍒嗛挓)" style="width: 100%" />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="瀹夌伅鎸夐挳鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="buttonStatus">
-              <j-dict-select-tag type="list" v-model="model.buttonStatus" dictCode="button_status" placeholder="璇烽�夋嫨瀹夌伅鎸夐挳鐘舵��" />
+            <a-form-model-item label="鎸夐挳鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="buttonStatus">
+              <j-dict-select-tag type="list" v-model="model.buttonStatus" dictCode="button_status" placeholder="璇烽�夋嫨" />
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
             <a-form-model-item label="澶囨敞" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark">
-              <a-input v-model="model.remark" placeholder="璇疯緭鍏ュ娉�"  ></a-input>
+              <a-input v-model="model.remark" placeholder="璇疯緭鍏�" />
             </a-form-model-item>
           </a-col>
         </a-row>
@@ -50,111 +63,173 @@
 </template>
 
 <script>
+import { httpAction, getAction } from '@/api/manage'
+import { validateDuplicateValue } from '@/utils/util'
 
-  import { httpAction, getAction } from '@/api/manage'
-  import { validateDuplicateValue } from '@/utils/util'
-
-  export default {
-    name: 'AndonButtonConfigForm',
-    components: {
-    },
-    props: {
-      //琛ㄥ崟绂佺敤
-      disabled: {
-        type: Boolean,
-        default: false,
-        required: false
-      }
-    },
-    data () {
-      return {
-        model:{
-         },
-        labelCol: {
-          xs: { span: 24 },
-          sm: { span: 5 },
-        },
-        wrapperCol: {
-          xs: { span: 24 },
-          sm: { span: 16 },
-        },
-        confirmLoading: false,
-        validatorRules: {
-          buttonName: [
-            { required: true, message: '瀹夌伅鍚嶇О鏄繀閫夐」', trigger: 'change' }
-          ],
-          buttonCode: [
-            { required: true, message: '瀹夌伅缂栫爜鏄繀閫夐」', trigger: 'change' }
-          ],
-          upgradeResponseDuration: [
-            { required: true, message: '鍗囩骇鍝嶅簲鏃堕暱鏄繀閫夐」', trigger: 'change' }
-          ],
-          upgradeProcessDuration: [
-            { required: true, message: '鍗囩骇澶勭悊鏃堕暱鏄繀閫夐」', trigger: 'change' }
-          ],
-          secondUpgradeResponseDuration: [
-            { required: true, message: '浜屾鍗囩骇鍝嶅簲鏃堕暱鏄繀閫夐」', trigger: 'change' }
-          ],
-          secondUpgradeProcessDuration: [
-            { required: true, message: '浜屾鍗囩骇澶勭悊鏃堕暱鏄繀閫夐」', trigger: 'change' }
-          ],
-          buttonStatus: [
-            { required: true, message: '瀹夌伅鎸夐挳鐘舵�佹槸蹇呴�夐」', trigger: 'change' }
-          ],
-        },
-        url: {
-          add: "/andonbuttonconfig/andonButtonConfig/add",
-          edit: "/andonbuttonconfig/andonButtonConfig/edit",
-          queryById: "/andonbuttonconfig/andonButtonConfig/queryById"
-        }
-      }
-    },
-    computed: {
-      formDisabled(){
-        return this.disabled
-      },
-    },
-    created () {
-       //澶囦唤model鍘熷鍊�
-      this.modelDefault = JSON.parse(JSON.stringify(this.model));
-    },
-    methods: {
-      add () {
-        this.edit(this.modelDefault);
-      },
-      edit (record) {
-        this.model = Object.assign({}, record);
-        this.visible = true;
-      },
-      submitForm () {
-        const that = this;
-        // 瑙﹀彂琛ㄥ崟楠岃瘉
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            that.confirmLoading = true;
-            let httpurl = '';
-            let method = '';
-            if(!this.model.id){
-              httpurl+=this.url.add;
-              method = 'post';
-            }else{
-              httpurl+=this.url.edit;
-               method = 'put';
-            }
-            httpAction(httpurl,this.model,method).then((res)=>{
-              if(res.success){
-                that.$message.success(res.message);
-                that.$emit('ok');
-              }else{
-                that.$message.warning(res.message);
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-            })
-          }
-
-        })
-      },
+export default {
+  name: 'AndonButtonConfigForm',
+  components: {},
+  props: {
+    disabled: {
+      type: Boolean,
+      default: false,
+      required: false
     }
+  },
+  data() {
+    return {
+      model: {},
+      // 鏅�氭爣绛惧垪瀹藉害
+      labelCol: {
+        xs: { span: 24 },
+        sm: { span: 6 },
+      },
+      // 瀹芥爣绛惧垪锛堢敤浜庘�滀簩娆″崌绾у搷搴斺�濈瓑闀挎爣绛撅級
+      labelColWide: {
+        xs: { span: 24 },
+        sm: { span: 8 }, // 澧炲姞鏍囩瀹藉害
+      },
+      // 绐勮緭鍏ユ鍒楋紙閰嶅悎瀹芥爣绛撅紝淇濇寔甯冨眬骞宠 锛�
+      wrapperColNarrow: {
+        xs: { span: 24 },
+        sm: { span: 16 },
+      },
+      wrapperCol: {
+        xs: { span: 24 },
+        sm: { span: 18 },
+      },
+      confirmLoading: false,
+      validatorRules: {
+        buttonName: [
+          { required: true, message: '瀹夌伅鍚嶇О鏄繀閫夐」', trigger: 'change' }
+        ],
+        buttonCode: [
+          { required: true, message: '瀹夌伅缂栫爜鏄繀閫夐」', trigger: 'change' }
+        ],
+        upgradeResponseDuration: [
+          { required: true, message: '鍗囩骇鍝嶅簲鏃堕暱鏄繀閫夐」', trigger: 'change' }
+        ],
+        upgradeProcessDuration: [
+          { required: true, message: '鍗囩骇澶勭悊鏃堕暱鏄繀閫夐」', trigger: 'change' }
+        ],
+        secondUpgradeResponseDuration: [
+          { required: true, message: '浜屾鍗囩骇鍝嶅簲鏃堕暱鏄繀閫夐」', trigger: 'change' }
+        ],
+        secondUpgradeProcessDuration: [
+          { required: true, message: '浜屾鍗囩骇澶勭悊鏃堕暱鏄繀閫夐」', trigger: 'change' }
+        ],
+        buttonStatus: [
+          { required: true, message: '瀹夌伅鎸夐挳鐘舵�佹槸蹇呴�夐」', trigger: 'change' }
+        ],
+      },
+      url: {
+        add: '/andonbuttonconfig/andonButtonConfig/add',
+        edit: '/andonbuttonconfig/andonButtonConfig/edit',
+        queryById: '/andonbuttonconfig/andonButtonConfig/queryById'
+      }
+    }
+  },
+  computed: {
+    formDisabled() {
+      return this.disabled
+    },
+  },
+  created() {
+    this.modelDefault = JSON.parse(JSON.stringify(this.model));
+  },
+  methods: {
+    add() {
+      this.edit(this.modelDefault);
+    },
+    edit(record) {
+      this.model = Object.assign({}, record);
+      this.visible = true;
+    },
+    submitForm() {
+      const that = this;
+      this.$refs.form.validate(valid => {
+        if (valid) {
+          that.confirmLoading = true;
+          let httpurl = '';
+          let method = '';
+          if (!this.model.id) {
+            httpurl += this.url.add;
+            method = 'post';
+          } else {
+            httpurl += this.url.edit;
+            method = 'put';
+          }
+          httpAction(httpurl, this.model, method).then((res) => {
+            if (res.success) {
+              that.$message.success(res.message);
+              that.$emit('ok');
+            } else {
+              that.$message.warning(res.message);
+            }
+          }).finally(() => {
+            that.confirmLoading = false;
+          })
+        }
+      })
+    },
   }
-</script>
\ No newline at end of file
+}
+</script>
+
+<style scoped>
+.andon-button-form {
+  padding: 24px;
+  background-color: #fff;
+  border-radius: 8px;
+  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
+}
+
+/* 缁熶竴琛ㄥ崟椤瑰瀭鐩撮棿璺� */
+.a-form-model-item {
+  margin-bottom: 16px !important;
+}
+
+/* 鏍囩涓庤緭鍏ユ姘村钩闂磋窛锛堣В鍐虫枃瀛楁嫢鎸わ級 */
+.a-form-model-item-label {
+  margin-right: 12px !important;
+}
+
+/* 杈撳叆妗� & 鏁板瓧杈撳叆妗� 鍗犱綅绗︽牱寮忎紭鍖� */
+.a-input::placeholder,
+.a-input-number::placeholder {
+  color: #ccc;
+  font-style: italic;
+}
+
+/* 蹇呴�夋爣绛剧殑绾㈣壊鏄熷彿寮鸿皟 */
+.a-form-model-item-label > span:first-child {
+  color: #f5222d;
+  margin-right: 2px;
+}
+
+/* 鎸夐挳鍖哄煙鍙冲榻� & 鎸夐挳鏍峰紡浼樺寲 */
+.a-form-footer {
+  text-align: right;
+  margin-top: 32px;
+}
+
+.a-button-primary {
+  background-color: #1890ff;
+  border-color: #1890ff;
+  transition: all 0.3s ease;
+}
+
+.a-button-primary:hover {
+  background-color: #40a9ff;
+  border-color: #40a9ff;
+}
+
+.a-button-default {
+  border-color: #d9d9d9;
+  transition: all 0.3s ease;
+}
+
+.a-button-default:hover {
+  border-color: #bfbfbf;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/andon/modules/AndonOrderForm.vue b/src/views/andon/modules/AndonOrderForm.vue
index 84fff50..5950cf1 100644
--- a/src/views/andon/modules/AndonOrderForm.vue
+++ b/src/views/andon/modules/AndonOrderForm.vue
@@ -1,76 +1,58 @@
 <template>
   <a-spin :spinning="confirmLoading">
-    <j-form-container :disabled="formDisabled">
+    <j-form-container :disabled="formDisabled" class="andon-order-form">
       <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
-        <a-row>
-          <a-col :span="24">
+        <!-- 绗竴琛岋細浜х嚎 + 瀹夌伅绫诲瀷 -->
+        <a-row :gutter="24">
+          <a-col :span="12">
             <a-form-model-item label="浜х嚎" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryId">
-              <a-row :gutter="24">
-                <a-col :span="24">
-                  <a-form-item
-                    :labelCol="labelCol"
-                    :wrapperCol="wrapperCol"
-                    label=""
-                  >
-                    <j-select-factory
-                      :disabled="disabled"
-                      v-model="model.factoryId"
-                      :multi="true"
-                      @back="backFactoryInfo"
-                      :backProduction="true"
-                      :treeProductOpera="true"
-                    ></j-select-factory>
-                  </a-form-item>
-                </a-col>
-              </a-row>
+              <j-select-factory
+                :disabled="disabled"
+                v-model="model.factoryId"
+                :multi="true"
+                @back="backFactoryInfo"
+                :backProduction="true"
+                :treeProductOpera="true"
+              ></j-select-factory>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="buttonId">
-              <j-search-select-tag v-model="model.buttonId" placeholder="璇疯緭鍏ュ畨鐏被鍨�"
-                                   dict="andon_button_config,button_name,id"></j-search-select-tag>
+              <j-search-select-tag v-model="model.buttonId" placeholder="璇疯緭鍏ュ畨鐏被鍨�" dict="andon_button_config,button_name,id"></j-search-select-tag>
             </a-form-model-item>
           </a-col>
+        </a-row>
+
+        <!-- 绗簩琛岋細瀹夌伅浜� + 瀹夌伅鏃堕棿 -->
+        <a-row :gutter="24">
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="operator">
-              <j-select-user-by-dep :multi="false" v-model="model.operator" placeholder="璇疯緭鍏ュ畨鐏汉"  ></j-select-user-by-dep>
+              <j-select-user-by-dep :multi="false" v-model="model.operator" placeholder="璇烽�夋嫨瀹夌伅浜�"></j-select-user-by-dep>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="operateTime">
-              <j-date placeholder="璇烽�夋嫨瀹夌伅鏃堕棿"  v-model="model.operateTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
+              <j-date placeholder="璇烽�夋嫨瀹夌伅鏃堕棿" v-model="model.operateTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
             </a-form-model-item>
           </a-col>
+        </a-row>
+
+        <!-- 绗笁琛岋細瀹夌伅绛夌骇 + 瀹夌伅鐘舵�� -->
+        <a-row :gutter="24">
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅绛夌骇" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="andonLevel">
               <j-dict-select-tag type="list" v-model="model.andonLevel" dictCode="andon_level" placeholder="璇烽�夋嫨瀹夌伅绛夌骇" />
             </a-form-model-item>
           </a-col>
-<!--          <a-col :span="12">-->
-<!--            <a-form-model-item label="鍝嶅簲浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="responder">-->
-<!--              <j-select-user-by-dep v-model="model.responder" placeholder="璇疯緭鍏ュ搷搴斾汉"  ></j-select-user-by-dep>-->
-<!--            </a-form-model-item>-->
-<!--          </a-col>-->
-<!--          <a-col :span="12">-->
-<!--            <a-form-model-item label="鍝嶅簲鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="responseTime">-->
-<!--              <j-date placeholder="璇烽�夋嫨鍝嶅簲鏃堕棿"  v-model="model.responseTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />-->
-<!--            </a-form-model-item>-->
-<!--          </a-col>-->
-<!--          <a-col :span="12">-->
-<!--            <a-form-model-item label="澶勭悊浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="processor">-->
-<!--              <j-select-user-by-dep v-model="model.processor" placeholder="璇疯緭鍏ュ鐞嗕汉"  ></j-select-user-by-dep>-->
-<!--            </a-form-model-item>-->
-<!--          </a-col>-->
-<!--          <a-col :span="12">-->
-<!--            <a-form-model-item label="澶勭悊瀹屾垚鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="processTime">-->
-<!--              <j-date placeholder="璇烽�夋嫨澶勭悊瀹屾垚鏃堕棿"  v-model="model.processTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />-->
-<!--            </a-form-model-item>-->
-<!--          </a-col>-->
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderStatus">
               <j-dict-select-tag type="list" v-model="model.orderStatus" dictCode="order_status" placeholder="璇烽�夋嫨瀹夌伅鐘舵��" />
             </a-form-model-item>
           </a-col>
+        </a-row>
+
+        <!-- 绗洓琛岋細闂鎻忚堪 + 澶勭悊缁撴灉鎻忚堪 -->
+        <a-row :gutter="24">
           <a-col :span="12">
             <a-form-model-item label="闂鎻忚堪" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="problemDescreption">
               <a-textarea v-model="model.problemDescreption" rows="4" placeholder="璇疯緭鍏ラ棶棰樻弿杩�" />
@@ -81,9 +63,13 @@
               <a-textarea v-model="model.resolutionDescreption" rows="4" placeholder="璇疯緭鍏ュ鐞嗙粨鏋滄弿杩�" />
             </a-form-model-item>
           </a-col>
+        </a-row>
+
+        <!-- 绗簲琛岋細澶勭悊缁撴灉鍥剧墖 -->
+        <a-row :gutter="24">
           <a-col :span="12">
             <a-form-model-item label="澶勭悊缁撴灉鍥剧墖" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="imageFiles">
-              <j-image-upload isMultiple  v-model="model.imageFiles" ></j-image-upload>
+              <j-image-upload isMultiple v-model="model.imageFiles"></j-image-upload>
             </a-form-model-item>
           </a-col>
         </a-row>
@@ -93,117 +79,124 @@
 </template>
 
 <script>
+import { httpAction, getAction } from '@/api/manage'
+import { validateDuplicateValue } from '@/utils/util'
+import JSelectFactory from '@comp/jeecgbiz/JSelectFactory.vue'
 
-  import { httpAction, getAction } from '@/api/manage'
-  import { validateDuplicateValue } from '@/utils/util'
-  import JSelectFactory from '@comp/jeecgbiz/JSelectFactory.vue'
-
-  export default {
-    name: 'AndonOrderForm',
-    components: {
-      JSelectFactory
-    },
-    props: {
-      //琛ㄥ崟绂佺敤
-      disabled: {
-        type: Boolean,
-        default: false,
-        required: false
-      }
-    },
-    data () {
-      return {
-        model:{
-         },
-        labelCol: {
-          xs: { span: 24 },
-          sm: { span: 5 },
-        },
-        wrapperCol: {
-          xs: { span: 24 },
-          sm: { span: 16 },
-        },
-        confirmLoading: false,
-        validatorRules: {
-          factoryId: [
-            { required: true, message: '浜х嚎鏄繀閫夐」', trigger: 'change' }
-          ],
-          buttonId: [
-            { required: true, message: '瀹夌伅绫诲瀷鏄繀閫夐」', trigger: 'change' }
-          ],
-          operator: [
-            { required: true, message: '瀹夌伅浜烘槸蹇呴�夐」', trigger: 'change' }
-          ],
-          operateTime: [
-            { required: true, message: '瀹夌伅鏃堕棿鏄繀閫夐」', trigger: 'change' }
-          ],
-          andonLevel: [
-            { required: true, message: '瀹夌伅绛夌骇鏄繀閫夐」', trigger: 'change' }
-          ],
-          orderStatus: [
-            { required: true, message: '瀹夌伅鐘舵�佹槸蹇呴�夐」', trigger: 'change' }
-          ],
-        },
-        url: {
-          add: "/andonorder/andonOrder/add",
-          edit: "/andonorder/andonOrder/edit",
-          queryById: "/andonorder/andonOrder/queryById"
-        }
-      }
-    },
-    computed: {
-      formDisabled(){
-        return this.disabled
-      },
-    },
-    created () {
-       //澶囦唤model鍘熷鍊�
-      this.modelDefault = JSON.parse(JSON.stringify(this.model));
-    },
-    methods: {
-      backFactoryInfo(info) {
-        this.model.factoryIds = this.model.factoryId
-        this.nextFactoryOptions = info.map((item, index, arr) => {
-          let c = { label: item.text, value: item.value + '' }
-          return c
-        })
-      },
-      add () {
-        this.edit(this.modelDefault);
-      },
-      edit (record) {
-        this.model = Object.assign({}, record);
-        this.visible = true;
-      },
-      submitForm () {
-        const that = this;
-        // 瑙﹀彂琛ㄥ崟楠岃瘉
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            that.confirmLoading = true;
-            let httpurl = '';
-            let method = '';
-            if(!this.model.id){
-              httpurl+=this.url.add;
-              method = 'post';
-            }else{
-              httpurl+=this.url.edit;
-               method = 'put';
-            }
-            httpAction(httpurl,this.model,method).then((res)=>{
-              if(res.success){
-                that.$message.success(res.message);
-                that.$emit('ok');
-              }else{
-                that.$message.warning(res.message);
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-            })
-          }
-
-        })
-      },
+export default {
+  name: 'AndonOrderForm',
+  components: {
+    JSelectFactory
+  },
+  props: {
+    disabled: {
+      type: Boolean,
+      default: false,
+      required: false
     }
+  },
+  data() {
+    return {
+      model: {},
+      labelCol: {
+        xs: { span: 24 },
+        sm: { span: 6 }, // 璋冩暣鏍囩瀹藉害锛屾洿绱у噾
+      },
+      wrapperCol: {
+        xs: { span: 24 },
+        sm: { span: 16 },
+      },
+      confirmLoading: false,
+      validatorRules: {
+        factoryId: [{ required: true, message: '浜х嚎鏄繀閫夐」', trigger: 'change' }],
+        buttonId: [{ required: true, message: '瀹夌伅绫诲瀷鏄繀閫夐」', trigger: 'change' }],
+        operator: [{ required: true, message: '瀹夌伅浜烘槸蹇呴�夐」', trigger: 'change' }],
+        operateTime: [{ required: true, message: '瀹夌伅鏃堕棿鏄繀閫夐」', trigger: 'change' }],
+        andonLevel: [{ required: true, message: '瀹夌伅绛夌骇鏄繀閫夐」', trigger: 'change' }],
+        orderStatus: [{ required: true, message: '瀹夌伅鐘舵�佹槸蹇呴�夐」', trigger: 'change' }],
+      },
+      url: {
+        add: '/andonorder/andonOrder/add',
+        edit: '/andonorder/andonOrder/edit',
+        queryById: '/andonorder/andonOrder/queryById'
+      }
+    }
+  },
+  computed: {
+    formDisabled() {
+      return this.disabled
+    },
+  },
+  created() {
+    this.modelDefault = JSON.parse(JSON.stringify(this.model));
+  },
+  methods: {
+    backFactoryInfo(info) {
+      this.model.factoryIds = this.model.factoryId
+      this.nextFactoryOptions = info.map((item, index, arr) => {
+        let c = { label: item.text, value: item.value + '' }
+        return c
+      })
+    },
+    add() {
+      this.edit(this.modelDefault);
+    },
+    edit(record) {
+      this.model = Object.assign({}, record);
+      this.visible = true;
+    },
+    submitForm() {
+      const that = this;
+      this.$refs.form.validate(valid => {
+        if (valid) {
+          that.confirmLoading = true;
+          let httpurl = '';
+          let method = '';
+          if (!this.model.id) {
+            httpurl += this.url.add;
+            method = 'post';
+          } else {
+            httpurl += this.url.edit;
+            method = 'put';
+          }
+          httpAction(httpurl, this.model, method).then((res) => {
+            if (res.success) {
+              that.$message.success(res.message);
+              that.$emit('ok');
+            } else {
+              that.$message.warning(res.message);
+            }
+          }).finally(() => {
+            that.confirmLoading = false;
+          })
+        }
+      })
+    },
   }
-</script>
\ No newline at end of file
+}
+</script>
+
+<style scoped>
+.andon-order-form {
+  padding: 24px;
+  background-color: #fff;
+  border-radius: 8px;
+  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
+}
+/* 缁熶竴琛ㄥ崟椤归棿璺� */
+.a-form-model-item {
+  margin-bottom: 16px !important;
+}
+/* 璋冩暣鏂囨湰鍩熼珮搴﹀拰鍗犱綅绗︽牱寮� */
+.a-textarea {
+  resize: vertical;
+}
+.a-textarea::placeholder {
+  color: #ccc;
+}
+/* 鎸夐挳鍖哄煙鍙冲榻� */
+.a-form-footer {
+  text-align: right;
+  margin-top: 24px;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/andon/modules/AndonResponseConfigForm.vue b/src/views/andon/modules/AndonResponseConfigForm.vue
index 131a263..e9cbdc2 100644
--- a/src/views/andon/modules/AndonResponseConfigForm.vue
+++ b/src/views/andon/modules/AndonResponseConfigForm.vue
@@ -1,49 +1,73 @@
 <template>
   <a-spin :spinning="confirmLoading">
-    <j-form-container :disabled="formDisabled">
+    <j-form-container :disabled="formDisabled" class="andon-response-form">
       <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
-        <a-row>
-          <a-col :span="24">
+
+        <a-row :gutter="24">
+          <a-col :span="12">
             <a-form-model-item label="浜х嚎" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryId">
-              <a-row :gutter="24">
-                <a-col :span="24">
-                  <a-form-item
-                    :labelCol="labelCol"
-                    :wrapperCol="wrapperCol"
-                    label=""
-                  >
-                    <j-select-factory
-                      :disabled="disabled"
-                      v-model="model.factoryId"
-                      :multi="true"
-                      @back="backFactoryInfo"
-                      :backProduction="true"
-                      :treeProductOpera="true"
-                    ></j-select-factory>
-                  </a-form-item>
-                </a-col>
-              </a-row>
+              <j-select-factory
+                :disabled="disabled"
+                v-model="model.factoryId"
+                :multi="true"
+                @back="backFactoryInfo"
+                :backProduction="true"
+                :treeProductOpera="true"
+              ></j-select-factory>
             </a-form-model-item>
           </a-col>
+        </a-row>
+
+
+        <a-row :gutter="24">
           <a-col :span="12">
             <a-form-model-item label="瀹夌伅绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="buttonId">
-              <j-search-select-tag v-model="model.buttonId" placeholder="璇疯緭鍏ュ畨鐏被鍨�"
-                                   dict="andon_button_config,button_name,id"></j-search-select-tag>
+              <j-search-select-tag
+                v-model="model.buttonId"
+                placeholder="璇烽�夋嫨"
+                dict="andon_button_config,button_name,id"
+              ></j-search-select-tag>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
             <a-form-model-item label="鍒濆鍝嶅簲浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="firsterResponder">
-              <j-select-user-by-dep :multi="false" v-model="model.firsterResponder" placeholder="璇疯緭鍏ュ垵濮嬪搷搴斾汉"  ></j-select-user-by-dep>
+              <j-select-user-by-dep
+                :multi="false"
+                v-model="model.firsterResponder"
+                placeholder="璇烽�夋嫨"
+              ></j-select-user-by-dep>
+            </a-form-model-item>
+          </a-col>
+        </a-row>
+
+        <!-- 浜岀骇鍝嶅簲浜� + 涓夌骇鍝嶅簲浜� -->
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-model-item
+              label="浜岀骇鍝嶅簲浜�"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+              prop="secondResponder"
+            >
+              <j-select-user-by-dep
+                :multi="false"
+                v-model="model.secondResponder"
+                placeholder="璇烽�夋嫨"
+              ></j-select-user-by-dep>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item label="浜岀骇鍝嶅簲浜�(鍗囩骇涓�娆�)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="secondResponder">
-              <j-select-user-by-dep :multi="false" v-model="model.secondResponder" placeholder="璇疯緭鍏ヤ簩绾у搷搴斾汉(鍗囩骇涓�娆�)"  ></j-select-user-by-dep>
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="涓夌骇鍝嶅簲浜�(鍗囩骇涓ゆ)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="thirdResponder">
-              <j-select-user-by-dep :multi="false" v-model="model.thirdResponder" placeholder="璇疯緭鍏ヤ笁绾у搷搴斾汉(鍗囩骇涓ゆ)"  ></j-select-user-by-dep>
+            <a-form-model-item
+              label="涓夌骇鍝嶅簲浜�"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+              prop="thirdResponder"
+            >
+              <j-select-user-by-dep
+                :multi="false"
+                v-model="model.thirdResponder"
+                placeholder="璇烽�夋嫨"
+              ></j-select-user-by-dep>
             </a-form-model-item>
           </a-col>
         </a-row>
@@ -53,113 +77,153 @@
 </template>
 
 <script>
+import { httpAction } from '@/api/manage'
+import JSelectFactory from '@comp/jeecgbiz/JSelectFactory.vue'
 
-  import { httpAction, getAction } from '@/api/manage'
-  import { validateDuplicateValue } from '@/utils/util'
-  import JSelectFactory from '@comp/jeecgbiz/JSelectFactory.vue'
-  export default {
-    name: 'AndonResponseConfigForm',
-    components: {
-      JSelectFactory
-    },
-    props: {
-      //琛ㄥ崟绂佺敤
-      disabled: {
-        type: Boolean,
-        default: false,
-        required: false
-      }
-    },
-    data () {
-      return {
-        model:{
-         },
-        labelCol: {
-          xs: { span: 24 },
-          sm: { span: 5 },
-        },
-        wrapperCol: {
-          xs: { span: 24 },
-          sm: { span: 16 },
-        },
-        confirmLoading: false,
-        validatorRules: {
-          factoryId: [
-            { required: true, message: '浜х嚎鏄繀閫夐」', trigger: 'change' }
-          ],
-          buttonId: [
-            { required: true, message: '瀹夌伅绫诲瀷鏄繀閫夐」', trigger: 'change' }
-          ],
-          firsterResponder: [
-            { required: true, message: '鍒濆鍝嶅簲浜烘槸蹇呴�夐」', trigger: 'change' }
-          ],
-          secondResponder: [
-            { required: true, message: '浜岀骇鍝嶅簲浜烘槸蹇呴�夐」', trigger: 'change' }
-          ],
-          thirdResponder: [
-            { required: true, message: '涓夌骇鍝嶅簲浜烘槸蹇呴�夐」', trigger: 'change' }
-          ],
-        },
-        url: {
-          add: "/andonresponseconfig/andonResponseConfig/add",
-          edit: "/andonresponseconfig/andonResponseConfig/edit",
-          queryById: "/andonresponseconfig/andonResponseConfig/queryById"
-        }
-      }
-    },
-    computed: {
-      formDisabled(){
-        return this.disabled
-      },
-    },
-    created () {
-       //澶囦唤model鍘熷鍊�
-      this.modelDefault = JSON.parse(JSON.stringify(this.model));
-    },
-    methods: {
-      backFactoryInfo(info) {
-        this.model.factoryIds = this.model.factoryId
-        this.nextFactoryOptions = info.map((item, index, arr) => {
-          let c = { label: item.text, value: item.value + '' }
-          return c
-        })
-      },
-      add () {
-        this.edit(this.modelDefault);
-      },
-      edit (record) {
-        this.model = Object.assign({}, record);
-        this.visible = true;
-      },
-      submitForm () {
-        const that = this;
-        // 瑙﹀彂琛ㄥ崟楠岃瘉
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            that.confirmLoading = true;
-            let httpurl = '';
-            let method = '';
-            if(!this.model.id){
-              httpurl+=this.url.add;
-              method = 'post';
-            }else{
-              httpurl+=this.url.edit;
-               method = 'put';
-            }
-            httpAction(httpurl,this.model,method).then((res)=>{
-              if(res.success){
-                that.$message.success(res.message);
-                that.$emit('ok');
-              }else{
-                that.$message.warning(res.message);
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-            })
-          }
-
-        })
-      },
+export default {
+  name: 'AndonResponseConfigForm',
+  components: {
+    JSelectFactory
+  },
+  props: {
+    disabled: {
+      type: Boolean,
+      default: false,
+      required: false
     }
+  },
+  data () {
+    return {
+      model: {},
+      // 缁熶竴鏍囩鍒楀搴︼紙浜х嚎銆佸畨鐏被鍨嬬瓑鍏辩敤锛�
+      labelCol: {
+        xs: { span: 24 },
+        sm: { span: 6 },
+      },
+      // 缁熶竴杈撳叆妗嗗垪瀹藉害
+      wrapperCol: {
+        xs: { span: 24 },
+        sm: { span: 18 },
+      },
+      confirmLoading: false,
+      validatorRules: {
+        factoryId: [
+          { required: true, message: '浜х嚎鏄繀閫夐」', trigger: 'change' }
+        ],
+        buttonId: [
+          { required: true, message: '瀹夌伅绫诲瀷鏄繀閫夐」', trigger: 'change' }
+        ],
+        firsterResponder: [
+          { required: true, message: '鍒濆鍝嶅簲浜烘槸蹇呴�夐」', trigger: 'change' }
+        ],
+        secondResponder: [
+          { required: true, message: '浜岀骇鍝嶅簲浜烘槸蹇呴�夐」', trigger: 'change' }
+        ],
+        thirdResponder: [
+          { required: true, message: '涓夌骇鍝嶅簲浜烘槸蹇呴�夐」', trigger: 'change' }
+        ],
+      },
+      url: {
+        add: "/andonresponseconfig/andonResponseConfig/add",
+        edit: "/andonresponseconfig/andonResponseConfig/edit",
+        queryById: "/andonresponseconfig/andonResponseConfig/queryById"
+      }
+    }
+  },
+  computed: {
+    formDisabled(){
+      return this.disabled
+    },
+  },
+  created () {
+    this.modelDefault = JSON.parse(JSON.stringify(this.model));
+  },
+  methods: {
+    backFactoryInfo(info) {
+      this.model.factoryIds = this.model.factoryId
+      this.nextFactoryOptions = info.map((item, index, arr) => {
+        let c = { label: item.text, value: item.value + '' }
+        return c
+      })
+    },
+    add () {
+      this.edit(this.modelDefault);
+    },
+    edit (record) {
+      this.model = Object.assign({}, record);
+      this.visible = true;
+    },
+    submitForm () {
+      const that = this;
+      this.$refs.form.validate(valid => {
+        if (valid) {
+          that.confirmLoading = true;
+          let httpurl = '';
+          let method = '';
+          if(!this.model.id){
+            httpurl+=this.url.add;
+            method = 'post';
+          }else{
+            httpurl+=this.url.edit;
+            method = 'put';
+          }
+          httpAction(httpurl,this.model,method).then((res)=>{
+            if(res.success){
+              that.$message.success(res.message);
+              that.$emit('ok');
+            }else{
+              that.$message.warning(res.message);
+            }
+          }).finally(() => {
+            that.confirmLoading = false;
+          })
+        }
+      })
+    },
   }
-</script>
\ No newline at end of file
+}
+</script>
+
+<style scoped>
+.andon-response-form {
+  padding: 24px;
+  background-color: #fff;
+  border-radius: 8px;
+  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
+}
+.a-form-model-item {
+  margin-bottom: 20px !important;
+}
+.a-form-model-item-label {
+  margin-right: 16px !important;
+}
+.a-input::placeholder,
+.a-select-selection-placeholder {
+  color: #ccc;
+  font-style: italic;
+}
+.a-form-model-item-label > span:first-child {
+  color: #f5222d;
+  margin-right: 4px;
+}
+.a-form-footer {
+  text-align: right;
+  margin-top: 36px;
+}
+.a-button-primary {
+  background-color: #1890ff;
+  border-color: #1890ff;
+  transition: all 0.3s ease;
+}
+.a-button-primary:hover {
+  background-color: #40a9ff;
+  border-color: #40a9ff;
+}
+.a-button-default {
+  border-color: #d9d9d9;
+  transition: all 0.3s ease;
+}
+.a-button-default:hover {
+  border-color: #bfbfbf;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/cms/CuttingToolList.vue b/src/views/cms/CuttingToolList.vue
index 1746e41..38825cc 100644
--- a/src/views/cms/CuttingToolList.vue
+++ b/src/views/cms/CuttingToolList.vue
@@ -10,38 +10,23 @@
             </a-form-item>
           </a-col>
           <a-col :md="6" :sm="8">
-              <a-form-item label="鍒�鍏峰悕绉�">
-                <a-input placeholder="璇疯緭鍏ュ垁鍏峰悕绉�" v-model="queryParam.cuttingName" />
-              </a-form-item>
-            </a-col>
+            <a-form-item label="鍒�鍏峰悕绉�">
+              <a-input placeholder="璇疯緭鍏ュ垁鍏峰悕绉�" v-model="queryParam.cuttingName" />
+            </a-form-item>
+          </a-col>
           <a-col :md="6" :sm="8">
-              <a-form-item label="鍒�鍏峰垎绫�">
-                <j-search-select-tag
-                  placeholder="璇烽�夋嫨鍒�鍏峰垎绫�"
-                  v-model="queryParam.cuttingCategory"
-                  dict="cutting_category"
-                />
-              </a-form-item>
-            </a-col>
-            <a-col
-            :md="6"
-            :sm="8"
-          >
-            <span
-              style="float: left;overflow: hidden;"
-              class="table-page-search-submitButtons"
-            >
-              <a-button
-                type="primary"
-                @click="searchQuery"
-                icon="search"
-              >鏌ヨ</a-button>
-              <a-button
-                type="primary"
-                @click="searchReset"
-                icon="reload"
-                style="margin-left: 8px"
-              >閲嶇疆</a-button>
+            <a-form-item label="鍒�鍏峰垎绫�">
+              <j-search-select-tag
+                placeholder="璇烽�夋嫨鍒�鍏峰垎绫�"
+                v-model="queryParam.cuttingCategory"
+                dict="cutting_category"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col :md="6" :sm="8">
+            <span style="float: left; overflow: hidden;" class="table-page-search-submitButtons">
+              <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button>
+              <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button>
             </span>
           </a-col>
         </a-row>
@@ -52,9 +37,14 @@
     <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
     <div class="table-operator">
       <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>
-      <!-- 瀵煎叆銆佸鍑哄姛鑳� -->
       <a-button type="primary" icon="download" @click="handleExportXls('鍒�鍏蜂俊鎭�')">瀵煎嚭</a-button>
-      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
+      <a-upload
+        name="file"
+        :showUploadList="false"
+        :multiple="false"
+        :headers="tokenHeader"
+        :action="importExcelUrl"
+        @change="handleImportExcel">
         <a-button type="primary" icon="import">瀵煎叆</a-button>
       </a-upload>
     </div>
@@ -62,7 +52,8 @@
     <!-- table鍖哄煙-begin -->
     <div>
       <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
-        <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤�
+        <i class="anticon anticon-info-circle ant-alert-icon"></i>
+        宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤�
         <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a>
       </div>
 
@@ -71,12 +62,12 @@
         size="middle"
         :scroll="{x:true}"
         bordered
-        rowKey="id"
+        :rowKey="record => record.id"
         :columns="columns"
         :dataSource="dataSource"
         :pagination="ipagination"
         :loading="loading"
-        :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange,type:'radio'}"
+        :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type:'radio'}"
         class="j-table-force-nowrap"
         :customRow="customRow"
         @change="handleTableChange">
@@ -84,10 +75,19 @@
         <template slot="htmlSlot" slot-scope="text">
           <div v-html="text"></div>
         </template>
+
         <template slot="imgSlot" slot-scope="text,record">
           <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span>
-          <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
+          <img
+            v-else
+            :src="getImgView(text)"
+            :preview="record.id"
+            height="25px"
+            alt=""
+            style="max-width:80px;font-size: 12px;font-style: italic;"
+          />
         </template>
+
         <template slot="fileSlot" slot-scope="text">
           <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span>
           <a-button
@@ -103,7 +103,6 @@
 
         <span slot="action" slot-scope="text, record">
           <a @click="handleEdit(record)">缂栬緫</a>
-
           <a-divider type="vertical" />
           <a-dropdown>
             <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
@@ -119,165 +118,162 @@
             </a-menu>
           </a-dropdown>
         </span>
-
       </a-table>
     </div>
+
     <a-tabs defaultActiveKey="1">
       <a-tab-pane tab="鎵╁睍灞炴��" key="1">
         <cutting-properties-list ref="cuttingPropertiesList"></cutting-properties-list>
       </a-tab-pane>
-      <!-- <a-tab-pane tab="棰濆畾瀵垮懡" key="2">
-        <rated-life-list ref="ratedLifeList"></rated-life-list>
-      </a-tab-pane> -->
     </a-tabs>
     <!-- table鍖哄煙-end -->
-    <cutting-tool-modal ref="modalForm" @ok="modalFormOk"></cutting-tool-modal>
+
+    <cutting-tool-modal ref="modalForm" @ok="handleOk"></cutting-tool-modal>
   </a-card>
 </template>
 
 <script>
+import '@/assets/less/TableExpand.less'
+import { mixinDevice } from '@/utils/mixin'
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import CuttingToolModal from './modules/CuttingToolModal'
+import CuttingPropertiesList from './CuttingPropertiesList'
+import JDictSelectTag from '@/components/dict/JDictSelectTag'
+import JSearchSelectTag from '@/components/dict/JSearchSelectTag'
 
-  import '@/assets/less/TableExpand.less'
-  import { mixinDevice } from '@/utils/mixin'
-  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
-  import CuttingToolModal from './modules/CuttingToolModal'
-  import CuttingPropertiesList from './CuttingPropertiesList'
-  import JDictSelectTag from '@/components/dict/JDictSelectTag'
-  import JSearchSelectTag from '@/components/dict/JSearchSelectTag'
-
-  export default {
-    name: 'CuttingToolList',
-    mixins:[JeecgListMixin, mixinDevice],
-    components: {
-      CuttingToolModal,CuttingPropertiesList, JDictSelectTag,
+export default {
+  name: 'CuttingToolList',
+  mixins: [JeecgListMixin, mixinDevice],
+  components: {
+    CuttingToolModal,
+    CuttingPropertiesList,
+    JDictSelectTag,
     JSearchSelectTag
-    },
-    data () {
-      return {
-        description: '鍒�鍏蜂俊鎭鐞嗛〉闈�',
-        // 琛ㄥご
-        columns: [
-          {
-            title: '#',
-            dataIndex: '',
-            key:'rowIndex',
-            width:60,
-            align:"center",
-            customRender:function (t,r,index) {
-              return parseInt(index)+1;
-            }
-          },
-          {
-            title:'鍒�鍏风紪鐮�',
-            align:"center",
-            dataIndex: 'cuttingCode'
-          },
-          {
-            title:'鍒�鍏峰悕绉�',
-            align:"center",
-            dataIndex: 'cuttingName'
-          },
-          {
-            title:'鍒�鍏峰垎绫�',
-            align:"center",
-            dataIndex: 'cuttingCategory'
-          },
-          {
-            title:'瀛樻斁浣嶇疆',
-            align:"center",
-            dataIndex: 'storeLocation'
-          },
-          {
-            title:'渚涘簲鍟�',
-            align:"center",
-            dataIndex: 'supplierId'
-          },
-          {
-            title:'鏈�灏忓寘瑁呭崟浣�',
-            align:"center",
-            dataIndex: 'minimumPackageUnit'
-          },
-          {
-            title:'鍒�鍏锋潗璐�',
-            align:"center",
-            dataIndex: 'cuttingMaterial'
-          },
-          {
-            title:'鍨嬪彿',
-            align:"center",
-            dataIndex: 'cuttingModel'
-          },
-          {
-            title:'鍥惧彿',
-            align:"center",
-            dataIndex: 'drawingNumber'
-          },
-          {
-            title:'搴撳瓨棰勮鍊�',
-            align:"center",
-            dataIndex: 'inventoryWarning'
-          },
-          {
-            title:'澶囨敞',
-            align:"center",
-            dataIndex: 'remark'
-          },
-          {
-            title: '鎿嶄綔',
-            dataIndex: 'action',
-            align:"center",
-            fixed:"right",
-            width:147,
-            scopedSlots: { customRender: 'action' }
-          }
-        ],
-        url: {
-          list: "/cms/cuttingTool/getCuttingToolList",
-          delete: "/cms/cuttingTool/delete",
-          deleteBatch: "/cms/cuttingTool/deleteBatch",
-          exportXlsUrl: "/cms/cuttingTool/exportXls",
-          importExcelUrl: "cms/cuttingTool/importExcel",
-          
+  },
+  data() {
+    return {
+      description: '鍒�鍏蜂俊鎭鐞嗛〉闈�',
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          width: 60,
+          align: "center",
+          customRender: (t, r, index) => parseInt(index) + 1
         },
-        dictOptions:{},
-        superFieldList:[],
-      }
-    },
-    created() {
-      this.getSuperFieldList();
-    },
-    computed: {
-      importExcelUrl: function(){
-        return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
+        {
+          title: '鍒�鍏风紪鐮�',
+          align: "center",
+          dataIndex: 'cuttingCode'
+        },
+        {
+          title: '鍒�鍏峰悕绉�',
+          align: "center",
+          dataIndex: 'cuttingName'
+        },
+        {
+          title: '鍒�鍏峰垎绫�',
+          align: "center",
+          dataIndex: 'cuttingCategory'
+        },
+        {
+          title: '瀛樻斁浣嶇疆',
+          align: "center",
+          dataIndex: 'storeLocation'
+        },
+        {
+          title: '渚涘簲鍟�',
+          align: "center",
+          dataIndex: 'supplierId'
+        },
+        {
+          title: '鏈�灏忓寘瑁呭崟浣�',
+          align: "center",
+          dataIndex: 'minimumPackageUnit'
+        },
+        {
+          title: '鍒�鍏锋潗璐�',
+          align: "center",
+          dataIndex: 'cuttingMaterial'
+        },
+        {
+          title: '鍨嬪彿',
+          align: "center",
+          dataIndex: 'cuttingModel'
+        },
+        {
+          title: '鍥惧彿',
+          align: "center",
+          dataIndex: 'drawingNumber'
+        },
+        {
+          title: '搴撳瓨棰勮鍊�',
+          align: "center",
+          dataIndex: 'inventoryWarning'
+        },
+        {
+          title: '澶囨敞',
+          align: "center",
+          dataIndex: 'remark'
+        },
+        {
+          title: '鎿嶄綔',
+          dataIndex: 'action',
+          align: "center",
+          fixed: "right",
+          width: 147,
+          scopedSlots: { customRender: 'action' }
+        }
+      ],
+      url: {
+        list: "/cms/cuttingTool/getCuttingToolList",
+        delete: "/cms/cuttingTool/delete",
+        deleteBatch: "/cms/cuttingTool/deleteBatch",
+        exportXlsUrl: "/cms/cuttingTool/exportXls",
+        importExcelUrl: "cms/cuttingTool/importExcel"
       },
-    },
-    methods: {
-      customRow(record) {
-        return {
+      dictOptions: {},
+      superFieldList: []
+    }
+  },
+  computed: {
+    importExcelUrl() {
+      return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
+    }
+  },
+  created() {
+    this.getSuperFieldList();
+  },
+  methods: {
+    customRow(record) {
+      return {
         on: {
-          click: e => {
-            this.onSelectChange(record.id.split(","), [record]);
+          click: () => {
+            this.onSelectChange([record.id], [record]);
           }
         }
       };
-      },
-      onSelectChange(selectedRowKeys) {
-      this.selectedRowKeys = selectedRowKeys;
-      this.$refs.cuttingPropertiesList.getCuttingProperties(selectedRowKeys[0]);
     },
-    handleEdit: function (record) {
-        this.$refs.modalForm.edit(record)
-        this.$refs.modalForm.title = '缂栬緫'
-        this.$refs.modalForm.disableSubmit = false
+    onSelectChange(selectedRowKeys) {
+      this.selectedRowKeys = selectedRowKeys;
+      if (selectedRowKeys.length > 0) {
+        this.$refs.cuttingPropertiesList.getCuttingProperties(selectedRowKeys[0]);
+      }
+    },
+    handleEdit(record) {
+      this.$refs.modalForm.edit(record);
+      this.$refs.modalForm.title = '缂栬緫';
+      this.$refs.modalForm.disableSubmit = false;
     },
     handleAdd() {
-      this.$refs.modalForm.add()
-      this.$refs.modalForm.title = '鏂板'
-      this.$refs.modalForm.disableSubmit = false
+      this.$refs.modalForm.add();
+      this.$refs.modalForm.title = '鏂板';
+      this.$refs.modalForm.disableSubmit = false;
     },
-    handleDetail:function(record){
+    handleDetail(record) {
       this.$refs.modalForm.edit(record);
-      this.$refs.modalForm.title="璇︽儏";
+      this.$refs.modalForm.title = "璇︽儏";
       this.$refs.modalForm.disableSubmit = true;
     },
     searchQuery() {
@@ -288,15 +284,24 @@
       this.loadData();
     },
     searchReset() {
-      this.queryParam.cuttingCode = '';
-      this.queryParam.cuttingName = '';
-      this.queryParam.cuttingCategory = '';
+      this.queryParam = {
+        cuttingCode: '',
+        cuttingName: '',
+        cuttingCategory: ''
+      };
       this.$refs.cuttingPropertiesList.getCuttingProperties("-1");
       this.loadData();
     },
-    }
+    handleOk() {
+      // 鏂板/淇敼 鎴愬姛鏃讹紝閲嶈浇鍒楄〃
+      this.loadData();
+      //娓呯┖鍒楄〃閫変腑
+      this.onClearSelected()
+    },
   }
+}
 </script>
+
 <style scoped>
-  @import '~@assets/less/common.less';
+@import '~@assets/less/common.less';
 </style>
\ No newline at end of file
diff --git a/src/views/cms/ToolStocktakingList.vue b/src/views/cms/ToolStocktakingList.vue
index db72ad1..c8bb8c0 100644
--- a/src/views/cms/ToolStocktakingList.vue
+++ b/src/views/cms/ToolStocktakingList.vue
@@ -232,9 +232,9 @@
       initDictConfig(){
       },
       handleAdd(){
-      this.$refs.modalForm.add()
-      this.$refs.modalForm.title = '鏂板'
-      this.$refs.modalForm.disableSubmit = false      
+        this.$refs.modalForm.add()
+        this.$refs.modalForm.title = '鏂板'
+        this.$refs.modalForm.disableSubmit = false      
       },
       getSuperFieldList(){
         let fieldList=[];
diff --git a/src/views/cms/modules/CuttingToolModal.vue b/src/views/cms/modules/CuttingToolModal.vue
index b6cc324..dcec493 100644
--- a/src/views/cms/modules/CuttingToolModal.vue
+++ b/src/views/cms/modules/CuttingToolModal.vue
@@ -98,8 +98,8 @@
                 slot-scope='text, record, index'
               >
                 <div :key="col.dataIndex">
-                  
-          
+
+
 
                   <a-input
                     :value="text"
@@ -329,7 +329,7 @@
       }
       this.$nextTick(() => {
         this.form.setFieldsValue(
-          pick(this.model, 'cuttingCode', 'cuttingName', 'cuttingCategory', 'storeLocation','cuttingModel', 'supplierId', 'minimumPackageUnit', 
+          pick(this.model, 'cuttingCode', 'cuttingName', 'cuttingCategory', 'storeLocation','cuttingModel', 'supplierId', 'minimumPackageUnit',
           'cuttingMaterial','drawingNumber','inventoryWarning','remark')
         )
       })
@@ -354,6 +354,7 @@
         this.deletePropertiesIds.push(record.id);
       }
     },
+
     handleOk() {
       const that = this
       let dataSource = that.dataSource;
@@ -388,7 +389,7 @@
     handleCancel() {
       this.close()
     },
-  
+
     //娣诲姞鎵╁睍灞炴��
     addPropertiesList() {
       const temp = [...(this.dataSource || [])]
diff --git a/src/views/mes/MesMaterialTransferRequestList.vue b/src/views/mes/MesMaterialTransferRequestList.vue
index b370b82..c2242c4 100644
--- a/src/views/mes/MesMaterialTransferRequestList.vue
+++ b/src/views/mes/MesMaterialTransferRequestList.vue
@@ -12,24 +12,24 @@
     <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
     <div class="table-operator">
       <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('鐗╂枡鎷夊姩鐢宠')">瀵煎嚭</a-button>
-      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
-        <a-button type="primary" icon="import">瀵煎叆</a-button>
-      </a-upload>
-      <!-- 楂樼骇鏌ヨ鍖哄煙 -->
-      <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>
       <a-dropdown v-if="selectedRowKeys.length > 0">
         <a-menu slot="overlay">
-          <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item>
+          <a-menu-item key="1" @click="batchDel">
+            <a-icon type="delete" />
+            鍒犻櫎
+          </a-menu-item>
         </a-menu>
-        <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button>
+        <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔
+          <a-icon type="down" />
+        </a-button>
       </a-dropdown>
     </div>
 
     <!-- table鍖哄煙-begin -->
     <div>
       <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
-        <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤�
+        <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a
+        style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤�
         <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a>
       </div>
 
@@ -46,27 +46,6 @@
         :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
         class="j-table-force-nowrap"
         @change="handleTableChange">
-
-        <template slot="htmlSlot" slot-scope="text">
-          <div v-html="text"></div>
-        </template>
-        <template slot="imgSlot" slot-scope="text,record">
-          <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span>
-          <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
-        </template>
-        <template slot="fileSlot" slot-scope="text">
-          <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span>
-          <a-button
-            v-else
-            :ghost="true"
-            type="primary"
-            icon="download"
-            size="small"
-            @click="downloadFile(text)">
-            涓嬭浇
-          </a-button>
-        </template>
-
         <span slot="action" slot-scope="text, record">
           <a @click="handleEdit(record)">缂栬緫</a>
 
@@ -95,138 +74,104 @@
 
 <script>
 
-  import '@/assets/less/TableExpand.less'
-  import { mixinDevice } from '@/utils/mixin'
-  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
-  import MesMaterialTransferRequestModal from './modules/MesMaterialTransferRequestModal'
-  import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
+import '@/assets/less/TableExpand.less'
+import { mixinDevice } from '@/utils/mixin'
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import MesMaterialTransferRequestModal from './modules/MesMaterialTransferRequestModal'
 
-  export default {
-    name: 'MesMaterialTransferRequestList',
-    mixins:[JeecgListMixin, mixinDevice],
-    components: {
-      MesMaterialTransferRequestModal
-    },
-    data () {
-      return {
-        description: '鐗╂枡鎷夊姩鐢宠绠$悊椤甸潰',
-        // 琛ㄥご
-        columns: [
-          {
-            title: '#',
-            dataIndex: '',
-            key:'rowIndex',
-            width:60,
-            align:"center",
-            customRender:function (t,r,index) {
-              return parseInt(index)+1;
-            }
-          },
-          {
-            title:'鍒犻櫎鏍囪',
-            align:"center",
-            dataIndex: 'delFlag'
-          },
-          {
-            title:'鎷夊姩鍗曞彿',
-            align:"center",
-            dataIndex: 'requestCode'
-          },
-          {
-            title:'宸ュ崟ID',
-            align:"center",
-            dataIndex: 'workOrderId'
-          },
-          {
-            title:'SAP棰勭暀鍙�',
-            align:"center",
-            dataIndex: 'reservationCode'
-          },
-          {
-            title:'鍙戝竷鐘舵��',
-            align:"center",
-            dataIndex: 'publishStatus_dictText'
-          },
-          {
-            title:'璇锋眰鐘舵��',
-            align:"center",
-            dataIndex: 'requestStatus_dictText'
-          },
-          {
-            title:'璇锋眰鏃堕棿',
-            align:"center",
-            dataIndex: 'requestTime'
-          },
-          {
-            title:'鍘熷簱瀛樺湴',
-            align:"center",
-            dataIndex: 'originalWarehouseId'
-          },
-          {
-            title:'鐩爣搴撳瓨鍦�',
-            align:"center",
-            dataIndex: 'targetWarehouseId'
-          },
-          {
-            title:'浼樺厛绾э紙鎷夊姩绫诲瀷锛�',
-            align:"center",
-            dataIndex: 'priority_dictText'
-          },
-          {
-            title:'鏈�鏅氶厤閫佹椂闂�',
-            align:"center",
-            dataIndex: 'latestDeliveryTime'
-          },
-          {
-            title: '鎿嶄綔',
-            dataIndex: 'action',
-            align:"center",
-            fixed:"right",
-            width:147,
-            scopedSlots: { customRender: 'action' }
+export default {
+  name: 'MesMaterialTransferRequestList',
+  mixins: [JeecgListMixin, mixinDevice],
+  components: {
+    MesMaterialTransferRequestModal
+  },
+  data() {
+    return {
+      description: '鐗╂枡鎷夊姩鐢宠绠$悊椤甸潰',
+      // 琛ㄥご
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          width: 60,
+          align: 'center',
+          customRender: function(t, r, index) {
+            return parseInt(index) + 1
           }
-        ],
-        url: {
-          list: "/mesmaterialtransferrequest/mesMaterialTransferRequest/list",
-          delete: "/mesmaterialtransferrequest/mesMaterialTransferRequest/delete",
-          deleteBatch: "/mesmaterialtransferrequest/mesMaterialTransferRequest/deleteBatch",
-          exportXlsUrl: "/mesmaterialtransferrequest/mesMaterialTransferRequest/exportXls",
-          importExcelUrl: "mesmaterialtransferrequest/mesMaterialTransferRequest/importExcel",
-          
         },
-        dictOptions:{},
-        superFieldList:[],
-      }
-    },
-    created() {
-    this.getSuperFieldList();
-    },
-    computed: {
-      importExcelUrl: function(){
-        return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
-      },
-    },
-    methods: {
-      initDictConfig(){
-      },
-      getSuperFieldList(){
-        let fieldList=[];
-        fieldList.push({type:'int',value:'delFlag',text:'鍒犻櫎鏍囪',dictCode:''})
-        fieldList.push({type:'string',value:'requestCode',text:'鎷夊姩鍗曞彿',dictCode:''})
-        fieldList.push({type:'string',value:'workOrderId',text:'宸ュ崟ID',dictCode:''})
-        fieldList.push({type:'string',value:'reservationCode',text:'SAP棰勭暀鍙�',dictCode:''})
-        fieldList.push({type:'string',value:'publishStatus',text:'鍙戝竷鐘舵��',dictCode:'publish_status'})
-        fieldList.push({type:'string',value:'requestStatus',text:'璇锋眰鐘舵��',dictCode:'request_status'})
-        fieldList.push({type:'datetime',value:'requestTime',text:'璇锋眰鏃堕棿'})
-        fieldList.push({type:'string',value:'originalWarehouseId',text:'鍘熷簱瀛樺湴',dictCode:''})
-        fieldList.push({type:'string',value:'targetWarehouseId',text:'鐩爣搴撳瓨鍦�',dictCode:''})
-        fieldList.push({type:'string',value:'priority',text:'浼樺厛绾э紙鎷夊姩绫诲瀷锛�',dictCode:'priority'})
-        fieldList.push({type:'datetime',value:'latestDeliveryTime',text:'鏈�鏅氶厤閫佹椂闂�'})
-        this.superFieldList = fieldList
+        {
+          title: '鎷夊姩鍗曞彿',
+          align: 'center',
+          dataIndex: 'requestCode'
+        },
+        {
+          title: '宸ュ崟ID',
+          align: 'center',
+          dataIndex: 'workOrderId'
+        },
+        {
+          title: 'SAP棰勭暀鍙�',
+          align: 'center',
+          dataIndex: 'reservationCode'
+        },
+        {
+          title: '鍙戝竷鐘舵��',
+          align: 'center',
+          dataIndex: 'publishStatus_dictText'
+        },
+        {
+          title: '璇锋眰鐘舵��',
+          align: 'center',
+          dataIndex: 'requestStatus_dictText'
+        },
+        {
+          title: '璇锋眰鏃堕棿',
+          align: 'center',
+          dataIndex: 'requestTime'
+        },
+        {
+          title: '鍘熷簱瀛樺湴',
+          align: 'center',
+          dataIndex: 'originalWarehouseId'
+        },
+        {
+          title: '鐩爣搴撳瓨鍦�',
+          align: 'center',
+          dataIndex: 'targetWarehouseId'
+        },
+        {
+          title: '浼樺厛绾э紙鎷夊姩绫诲瀷锛�',
+          align: 'center',
+          dataIndex: 'priority_dictText'
+        },
+        {
+          title: '鏈�鏅氶厤閫佹椂闂�',
+          align: 'center',
+          dataIndex: 'latestDeliveryTime'
+        },
+        {
+          title: '鎿嶄綔',
+          dataIndex: 'action',
+          align: 'center',
+          fixed: 'right',
+          width: 147,
+          scopedSlots: { customRender: 'action' }
+        }
+      ],
+      url: {
+        list: '/mes/mesMaterialTransferRequest/list',
+        delete: '/mes/mesMaterialTransferRequest/delete',
+        deleteBatch: '/mes/mesMaterialTransferRequest/deleteBatch'
       }
     }
-  }
+  },
+  created() {
+  },
+  computed: {},
+  methods: {}
+}
 </script>
 <style scoped>
-  @import '~@assets/less/common.less';
+@import '~@assets/less/common.less';
 </style>
\ No newline at end of file
diff --git a/src/views/mes/modules/MesMaterialTransferRequestForm.vue b/src/views/mes/modules/MesMaterialTransferRequestForm.vue
index 2ec3134..e24608f 100644
--- a/src/views/mes/modules/MesMaterialTransferRequestForm.vue
+++ b/src/views/mes/modules/MesMaterialTransferRequestForm.vue
@@ -4,58 +4,43 @@
       <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
         <a-row>
           <a-col :span="12">
-            <a-form-model-item label="鍒犻櫎鏍囪" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag">
-              <a-input-number v-model="model.delFlag" placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" style="width: 100%" />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
             <a-form-model-item label="鎷夊姩鍗曞彿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requestCode">
-              <a-input v-model="model.requestCode" placeholder="璇疯緭鍏ユ媺鍔ㄥ崟鍙�"  ></a-input>
+              <a-input v-model="model.requestCode" placeholder="鎷夊姩鍗曞彿鑷姩鐢熸垚" readOnly></a-input>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item label="宸ュ崟ID" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workOrderId">
+            <a-form-model-item label="璧峰搴撳瓨鍦扮偣" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="originalWarehouseId">
+              <j-dict-select-tag type="list" v-model="model.originalWarehouseId" dictCode="original_warehouse_list" placeholder="璇烽�夋嫨璧峰搴撳瓨鍦扮偣" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-model-item label="浠诲姟鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workOrderId">
               <a-input v-model="model.workOrderId" placeholder="璇疯緭鍏ュ伐鍗旾D"  ></a-input>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item label="SAP棰勭暀鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="reservationCode">
-              <a-input v-model="model.reservationCode" placeholder="璇疯緭鍏AP棰勭暀鍙�"  ></a-input>
+            <a-form-model-item label="鐩爣搴撳瓨鍦扮偣" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="targetWarehouseId">
+              <a-input v-model="model.targetWarehouseId" placeholder="鑷姩鑾峰彇" readOnly ></a-input>
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item label="鍙戝竷鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="publishStatus">
-              <j-dict-select-tag type="list" v-model="model.publishStatus" dictCode="publish_status" placeholder="璇烽�夋嫨鍙戝竷鐘舵��" />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="璇锋眰鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requestStatus">
-              <j-dict-select-tag type="list" v-model="model.requestStatus" dictCode="request_status" placeholder="璇烽�夋嫨璇锋眰鐘舵��" />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="璇锋眰鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requestTime">
-              <j-date placeholder="璇烽�夋嫨璇锋眰鏃堕棿"  v-model="model.requestTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="鍘熷簱瀛樺湴" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="originalWarehouseId">
-              <a-input v-model="model.originalWarehouseId" placeholder="璇疯緭鍏ュ師搴撳瓨鍦�"  ></a-input>
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="鐩爣搴撳瓨鍦�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="targetWarehouseId">
-              <a-input v-model="model.targetWarehouseId" placeholder="璇疯緭鍏ョ洰鏍囧簱瀛樺湴"  ></a-input>
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item label="浼樺厛绾э紙鎷夊姩绫诲瀷锛�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="priority">
-              <j-dict-select-tag type="list" v-model="model.priority" dictCode="priority" placeholder="璇烽�夋嫨浼樺厛绾э紙鎷夊姩绫诲瀷锛�" />
+            <a-form-model-item label="鎷夊姩绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialTransferCategory">
+              <j-dict-select-tag type="list" v-model="model.materialTransferCategory" dictCode="material_transfer_category" placeholder="璇烽�夋嫨鎷夊姩绫诲瀷" />
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
             <a-form-model-item label="鏈�鏅氶厤閫佹椂闂�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="latestDeliveryTime">
-              <j-date placeholder="璇烽�夋嫨鏈�鏅氶厤閫佹椂闂�"  v-model="model.latestDeliveryTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
+              <j-date placeholder="璇烽�夋嫨鏈�鏅氶厤閫佹椂闂�"  v-model="model.latestDeliveryTime" :show-time="false" date-format="YYYY-MM-DD" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-model-item label="鎷夊姩鐗╂枡" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialNumber">
+              <j-dict-select-tag type="list" v-model="model.materialNumber" dictCode="priority" placeholder="璇烽�夋嫨鎷夊姩鐗╂枡" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-model-item label="鎷夊姩鏁伴噺" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="specifiedQuantity">
+              <a-input-number v-model="model.specifiedQuantity" placeholder="璇疯緭鍏ユ媺鍔ㄦ暟閲�" style="width: 100%" />
             </a-form-model-item>
           </a-col>
         </a-row>
@@ -87,7 +72,7 @@
          },
         labelCol: {
           xs: { span: 24 },
-          sm: { span: 5 },
+          sm: { span: 6 },
         },
         wrapperCol: {
           xs: { span: 24 },
@@ -95,11 +80,26 @@
         },
         confirmLoading: false,
         validatorRules: {
+          originalWarehouseId: [
+            { required: true, message: '璧峰搴撳瓨鍦扮偣蹇呴��', trigger: 'change' }
+          ],
+          workOrderId: [
+            { required: true, message: '浠诲姟鍙峰繀閫�', trigger: 'change' }
+          ],
+          materialNumber: [
+            { required: true, message: '鎷夊姩鐗╂枡蹇呴��', trigger: 'change' }
+          ],
+          specifiedQuantity: [
+            { required: true, message: '鎷夊姩鏁伴噺蹇呭~', trigger: 'change' }
+          ],
+          materialTransferCategory: [
+            { required: true, message: '鎷夊姩绫诲瀷蹇呴��', trigger: 'change' }
+          ],
         },
         url: {
-          add: "/mesmaterialtransferrequest/mesMaterialTransferRequest/add",
-          edit: "/mesmaterialtransferrequest/mesMaterialTransferRequest/edit",
-          queryById: "/mesmaterialtransferrequest/mesMaterialTransferRequest/queryById"
+          add: "/mes/mesMaterialTransferRequest/add",
+          edit: "/mes/mesMaterialTransferRequest/edit",
+          queryById: "/mes/mesMaterialTransferRequest/queryById"
         }
       }
     },
@@ -146,7 +146,7 @@
               that.confirmLoading = false;
             })
           }
-         
+
         })
       },
     }

--
Gitblit v1.9.3