From 28f1104e32c40273778eed24392bbf14ce03e7fe Mon Sep 17 00:00:00 2001
From: Houjie <714924425@qq.com>
Date: 星期六, 16 八月 2025 09:34:43 +0800
Subject: [PATCH] 安灯模块,相关功能表单页面样式调整

---
 src/views/andon/modules/AndonOrderForm.vue |  307 +++++++++++++++++++++++++--------------------------
 1 files changed, 150 insertions(+), 157 deletions(-)

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

--
Gitblit v1.9.3