From 44246a2082c74db213faa0e2c97445ec1173068b Mon Sep 17 00:00:00 2001
From: fujunling <2984387807@qq.com>
Date: 星期三, 23 八月 2023 11:53:55 +0800
Subject: [PATCH] 新增编码类型

---
 Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue |  433 ++++-------------------------------------------------
 1 files changed, 36 insertions(+), 397 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
index 3023328..b53cf1a 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -5,6 +5,7 @@
     <avue-form
       v-model="form"
       :option="option"
+      v-loading="loading"
       ref="form"
       :style="{ minHeight: loading ? '300px' : '' }"
       :key="updateIndex"
@@ -49,7 +50,7 @@
     // 榛樿绂佺敤鍏冪礌
     disabledProp: {
       type: Array,
-      default: () => ["id"],
+      default: () => ["id", "lcstatus"],
     },
     templateOid: {
       type: String,
@@ -79,6 +80,11 @@
       type: Object,
       default: () => ({}),
     },
+    // 涓�琛屾斁鍑犱釜琛ㄥ崟
+    trendsSpan: {
+      type: Number,
+      default: 8,
+    },
   },
   data() {
     return {
@@ -102,395 +108,6 @@
         date: "date",
         refer: "refer",
       },
-      // 鍋囨暟鎹�
-      testItems: [
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "id",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "浼犲�肩鐢ㄥ姛鑳�",
-          tooltips: "",
-          type: "combox",
-          unique: false,
-          verify: "",
-        },
-        {
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "state",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: true,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "鎺ュ彛绂佺敤鍔熻兘",
-          tooltips: "",
-          type: "combox",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "oldcode",
-          hidden: false,
-          keyAttr: false,
-          prefix: "el-icon-search",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "鏂囨湰鍚庣紑娴嬭瘯",
-          text: "鍓嶅悗缂�鍔熻兘",
-          tooltips: "",
-          type: "text",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "materialname",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: true,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "姝e垯鏍¢獙鍔熻兘",
-          tooltips: "璇疯緭鍏ユ暟瀛�",
-          type: "text",
-          unique: false,
-          verify: /^[0-9]+$/g,
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: [
-            {
-              attributes: {},
-              key: "model_type",
-              value: "妯″瀷",
-            },
-            {
-              attributes: {},
-              key: "part_type",
-              value: "闆朵欢",
-            },
-          ],
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "dataSelect",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "鐩存帴杩斿洖涓嬫媺",
-          tooltips: "",
-          type: "combox",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: "formTemplateTest",
-          customClass: null,
-          data: [],
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "dictSelect",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "瀛楀吀杩斿洖涓嬫媺",
-          tooltips: "",
-          type: "combox",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "firstfl",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "鏁板瓧杈撳叆妗�",
-          tooltips: "",
-          type: "number",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "yyyy-MM-dd HH:mm:ss",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "datetime",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "鏃ユ湡鏃堕棿閫夋嫨鍣�",
-          tooltips: "",
-          type: "datetime",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "time",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "鏃堕棿閫夋嫨鍣�",
-          tooltips: "",
-          type: "date",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "false",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "xiaoshouwl",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "寮�鍏�",
-          tooltips: "",
-          type: "truefalse",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "鎴戞槸榛樿鍊�",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "tuhao",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "榛樿鍊煎姛鑳�",
-          tooltips: "鎻愮ず",
-          type: "text",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "xinghaoguige",
-          hidden: false,
-          keyAttr: true,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "灞炴�у叧閿��",
-          tooltips: "",
-          type: "text",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "jiliangdw",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          tip: "鎴戞槸鎻愮ず鍔熻兘",
-          required: false,
-          selectLibFlag: "",
-          showField: "jiliangdwname",
-          suffix: "",
-          text: "鎻愮ず鍔熻兘",
-          tooltips: "",
-          type: "text",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "textarea",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: false,
-          referConfig: null,
-          required: false,
-          selectLibFlag: "",
-          showField: null,
-          suffix: "",
-          text: "鏂囨湰鍩�",
-          tooltips: "",
-          type: "textarea",
-          unique: false,
-          verify: "",
-        },
-        {
-          comboxKey: null,
-          customClass: null,
-          data: null,
-          dateFormate: "",
-          defaultValue: "",
-          displayExtension: null,
-          extendAttrMap: null,
-          extendAttrString: null,
-          field: "cz",
-          hidden: false,
-          keyAttr: false,
-          prefix: "",
-          readOnly: true,
-          referConfig: {},
-          required: false,
-          selectLibFlag: "",
-          showField: "depId",
-          suffix: "",
-          text: "鍙傜収",
-          tooltips: "",
-          type: "refer",
-          unique: false,
-          verify: "",
-        },
-      ],
-      trendsSpan: 8,
       defaultValue: {},
       // 琛ㄥ崟灞炴��
       attributes: [],
@@ -500,9 +117,20 @@
   mounted() {
     this.handleResize();
   },
+  computed: {
+    localTrendsSpan() {
+      if (this.trendsSpan) {
+        return this.trendsSpan;
+      } else {
+        let windowWidth = document.body.clientWidth;
+        return 24 / Math.floor(windowWidth / 500);
+      }
+    },
+  },
   methods: {
     // 娓叉煋琛ㄥ崟妯℃澘
     templateRender(formItemList) {
+      console.log(formItemList, "formItemList");
       // 鏃犻渶鍒嗙粍鏁版嵁
       let column = [];
       let group = [];
@@ -522,12 +150,17 @@
         if (
           formItem.type === "combox" &&
           formItem.comboxKey &&
-          (!Array.isArray(formItem.dicData) || formItem.dicData.length === 0)
+          (!Array.isArray(formItem.dicData) || formItem.dicData.length === 0) &&
+          (!Array.isArray(formItem.data) || formItem.data.length === 0)
         ) {
           dictKeys.push({ dictKey: formItem.comboxKey, field: formItem.field });
         }
         // 绂佺敤閮ㄥ垎灞炴�э紙澶栭儴浼犲�肩鐢ㄥ拰鍙傜収绂佺敤锛�
         if (this.disabledProp.includes(formItem.field)) {
+          formItem.readOnly = true;
+        }
+        if (formItem.field == "lcstatus") {
+          formItem.field = formItem.field + "_text";
           formItem.readOnly = true;
         }
         // 璁剧疆琛ㄥ崟鏍¢獙鐨勮鍒欙紝鏂囨湰
@@ -557,11 +190,12 @@
           value: formItem.defaultValue,
           placeholder: formItem.inputTip,
           comboxKey: formItem.comboxKey,
+          tip: formItem.tooltips,
           display: !formItem.hidden,
           maxlength: formItem.maxlength,
           filterable: true,
           referConfig:
-            formItem.type == "refer" 
+            formItem.type == "refer"
               ? {
                   title: formItem.text,
                   showField: formItem.showField || formItem.field,
@@ -570,7 +204,11 @@
                   options: formItem.referConfig,
                 }
               : {},
-          span: formItem.span ? formItem.span : formItem.type === "textarea" ? 24 : this.trendsSpan,
+          span: formItem.span
+            ? formItem.span
+            : formItem.type === "textarea"
+            ? 24
+            : this.localTrendsSpan,
           rules: [
             {
               required: formItem.required,
@@ -597,13 +235,14 @@
         }
       });
       this.slotColumnList = slotColumnList;
+      console.log(column, "column");
       this.$set(this.option, "column", column);
       this.$set(this.option, "group", group);
       this.updateIndex++;
       if (this.type === "add") {
         this.loading = false;
       }
-      
+
       this.geDictData(dictKeys);
       this.getFormDetail();
     },
@@ -640,9 +279,9 @@
     },
     // 鏍规嵁灞忓箷鍔ㄦ�侀厤缃〃鍗曞竷灞�
     handleResize() {
-      let windowWidth = document.body.clientWidth;
-      this.trendsSpan = 24 / Math.floor(windowWidth / 500);
-      this.updateIndex++;
+      // let windowWidth = document.body.clientWidth;
+      // this.trendsSpan = 24 / Math.floor(windowWidth / 500);
+      // this.updateIndex++;
     },
     // 鍓嶅悗缂�
     preOrSufFixShow(type, val) {

--
Gitblit v1.9.3