From 7521100425838f0ce8d4ef8005861ef4941f961b Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期三, 24 一月 2024 15:59:41 +0800
Subject: [PATCH] 整合代码

---
 Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue |  213 +++++++++++++++++++++++++++++------------------------
 1 files changed, 116 insertions(+), 97 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue
index 183da7e..982fa57 100644
--- a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue
@@ -276,8 +276,8 @@
       </el-dialog>
       <!--        鍏ㄥ睆缂栬緫-->
       <el-dialog :before-close="escEdit" :visible.sync="attrEditVisible" append-to-body fullscreen="true">
-        <attrCrud :ProData="this.ProData" :attrFlagChiledren="this.attrFlag" :crudArrayFlag="this.crudArrayFlag"
-                  :editOpenFlag="editOpenFlag" :editStyleFlag="editStyleFlag"
+        <attrCrud :ProData="this.ProData" :attrFlagChiledren="this.attrFlag" :btnAuthList="btnAuthList"
+                  :crudArrayFlag="this.crudArrayFlag" :editOpenFlag="editOpenFlag" :editStyleFlag="editStyleFlag"
                   @editCloseChildren="editClose"></attrCrud>
       </el-dialog>
       <!--      缁勫悎瑙勫垯-->
@@ -321,80 +321,83 @@
 
     </div>
 
-      <el-table v-if="this.crudArrayFlag"
-                ref="referAttrCrud"
-                v-loading="loading"
-                :data="ProData"
-                :height="this.tableHeight"
-                border
-                style="width: 100%"
-                @select="selectHandle"
-                @cell-click="handleCellClicks"
-                @selection-change="selectionChange"
-                @row-click="rowClick"
+    <el-table v-if="this.crudArrayFlag"
+              ref="referAttrCrud"
+              v-loading="loading"
+              :data="ProData"
+              :header-cell-style="{background:'#FAFAFA',color:'#505050'}"
+              :height="this.tableHeight"
+              border
+              style="width: 100%"
+              @select="selectHandle"
+              @cell-click="handleCellClicks"
+              @selection-change="selectionChange"
+              @row-click="rowClick"
+    >
+      <el-table-column
+        :fixed="!editStyleFlag ? 'left' : undefined"
+        type="selection" width="55">
+      </el-table-column>
+      <!--<el-table-column fixed label="搴忓彿" type="index" width="55"></el-table-column>-->
+      <el-table-column v-for="(item,index) in this.option.column" v-if="item.edit !='referName'"
+                       :key="item.id"
+                       :fixed="!editStyleFlag ? item.fixed : undefined"
+                       :formatter="formAttr"
+                       :label="item.label"
+                       :prop="item.prop"
+                       :show-overflow-tooltip="true"
+                       :sortable="item.sortable"
+                       :width="item.width||(item.label.length >=4 ?'160':item.label.length==3 ?'130':'100')"
+                       align="center"
       >
-        <el-table-column
-          :fixed="!editStyleFlag ? 'left' : undefined"
-          type="selection" width="55">
-        </el-table-column>
-        <!--<el-table-column fixed label="搴忓彿" type="index" width="55"></el-table-column>-->
-        <el-table-column v-for="(item,index) in this.option.column" v-if="item.edit !='referName'"
-                         :key="item.id"
-                         :fixed="!editStyleFlag ? item.fixed : undefined"
-                         :formatter="formAttr"
-                         :label="item.label"
-                         :prop="item.prop"
-                         :show-overflow-tooltip="true"
-                         :sortable="item.sortable"
-                         :width="item.width||(item.label.length >=4 ?'160':item.label.length==3 ?'130':'100')"
-                         align="center"
-        >
-          <template slot-scope="{ row }">
-            <el-input
-              v-if="editingRows === row && editShows== item.prop && item.prop != 'codeDateFormat' && (item.edit == 'text'  ||item.edit == 'refer' )"
-              v-show="!AddCellFlag"
-              :ref="'input' + row.oid"
-              v-model="row[item.prop]"
-              @blur="saveRows(row)"
-            ></el-input>
-            <el-input-number v-if="editingRows === row && editShows== item.prop && item.edit == 'number'"
-                             v-model="row[item.prop]"
-                             :style="{width:(item.width-10)+'px'}"
-                             controls-position="right"
-                             size="small" @blur="saveRows"></el-input-number>
-            <el-select v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " slot="prepend"
-                       v-model="row[item.prop]" allow-create default-first-option
-                       filterable
-                       @blur="selectChangeHandler(item.editConfig,index)">
-              <el-option
-                v-for="optionItem in item.data"
-                :key="optionItem.dictValue"
-                :label="optionItem.dictValue"
-                :value="optionItem.dictValue">
-              </el-option>
-            </el-select>
-            <el-switch
-              v-if="item.edit === 'switch'" v-model="row[item.prop]" :disabled="!editOpenFlag" active-value="true"
-              inactive-value="false">
-            </el-switch>
-            <span v-else>{{ row[item.prop] }}</span>
-          </template>
-        </el-table-column>
-        <el-table-column
-          fixed="right"
-          label="鎿嶄綔"
-          width="70">
-          <template slot-scope="scope">
-            <el-button
-              size="small"
-              type="text"
-              @click.native.prevent="CrudRowDel(scope.$index)">
-              绉婚櫎
-            </el-button>
-          </template>
-        </el-table-column>
-      </el-table>
-    </div>
+        <template slot-scope="{ row }">
+          <el-input
+            v-if="editingRows === row && editShows== item.prop && item.prop != 'codeDateFormat' && (item.edit == 'text'  ||item.edit == 'refer' )"
+            v-show="!AddCellFlag"
+            :ref="'input' + row.oid"
+            v-model="row[item.prop]"
+            @blur="saveRows(row)"
+          ></el-input>
+          <el-input-number v-if="editingRows === row && editShows== item.prop && item.edit == 'number'"
+                           v-show="!AddCellFlag"
+                           v-model="row[item.prop]"
+                           :style="{width:(item.width-10)+'px'}"
+                           controls-position="right"
+                           size="small" @blur="saveRows"></el-input-number>
+          <el-select v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " v-show="!AddCellFlag"
+                     slot="prepend"
+                     v-model="row[item.prop]" :clearable="true" allow-create
+                     default-first-option filterable
+                     @blur="selectChangeHandler(item.editConfig,index)">
+            <el-option
+              v-for="optionItem in item.data"
+              :key="optionItem.dictValue"
+              :label="optionItem.dictValue"
+              :value="optionItem.dictValue">
+            </el-option>
+          </el-select>
+          <el-switch
+            v-if="item.edit === 'switch'" v-model="row[item.prop]" :disabled="!editOpenFlag" active-value="true"
+            inactive-value="false">
+          </el-switch>
+          <span v-else>{{ row[item.prop] }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column
+        fixed="right"
+        label="鎿嶄綔"
+        width="70">
+        <template slot-scope="scope">
+          <el-button
+            size="small"
+            type="text"
+            @click.native.prevent="CrudRowDel(scope.$index)">
+            绉婚櫎
+          </el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+  </div>
 </template>
 
 <script>
@@ -449,6 +452,9 @@
       type: Boolean,
       default: false
     },
+    btnAuthList: {
+      type: Array
+    }
   },
   watch: {
     crudOid: {
@@ -1105,8 +1111,10 @@
         indexClassName: "搴忓彿",
         indexLabelClassName: '搴忓彿',
         index: true,
-        indexFixed:false,
-        selectionFixed:false,
+        indexFixed: false,
+        selectionFixed: false,
+        columnBtn: false,
+        refreshBtn: false,
         border: true,
         addBtn: false,
         menu: false,
@@ -1556,20 +1564,20 @@
     ...mapGetters(["permission"]),
     permissionList() {
       return {
-        busineStatus: this.vaildData(this.permission.classifyTree.attr_add, false),
-        fullscreenStatus: this.vaildData(this.permission.classifyTree.attr_view_edit, false),
-        ruleStatus: this.vaildData(this.permission.classifyTree.attr_rule, false),
-        attrStatus: this.vaildData(this.permission.classifyTree.attr_group, false),
-        saveStatus: this.vaildData(this.permission.classifyTree.attr_save, false),
-        resetStatus: this.vaildData(this.permission.classifyTree.attr_reset, false),
-        injectStatus: this.vaildData(this.permission.classifyTree.attr_inject, false),
-        isShowStatus: this.vaildData(this.permission.classifyTree.attr_formrule, false),
-        enumStatus: this.vaildData(this.permission.classifyTree.attr_enum, false),
-        cascadStatus: this.vaildData(this.permission.classifyTree.attr_parentcode, false),
-        syncStatus: this.vaildData(this.permission.classifyTree.attr_sync, false),
-        applicationStatus: this.vaildData(this.permission.classifyTree.attr_application, false),
-        orderStatus: this.vaildData(this.permission.classifyTree.attr_sort, false),
-        removeStatus: this.vaildData(this.permission.classifyTree.attr_delete, false),
+        busineStatus: this.vaildData(this.btnAuthList.attr_add, false),
+        fullscreenStatus: this.vaildData(this.btnAuthList.attr_view_edit, false),
+        ruleStatus: this.vaildData(this.btnAuthList.attr_rule, false),
+        attrStatus: this.vaildData(this.btnAuthList.attr_group, false),
+        saveStatus: this.vaildData(this.btnAuthList.attr_save, false),
+        resetStatus: this.vaildData(this.btnAuthList.attr_reset, false),
+        injectStatus: this.vaildData(this.btnAuthList.attr_inject, false),
+        isShowStatus: this.vaildData(this.btnAuthList.attr_formrule, false),
+        enumStatus: this.vaildData(this.btnAuthList.attr_enum, false),
+        cascadStatus: this.vaildData(this.btnAuthList.attr_parentcode, false),
+        syncStatus: this.vaildData(this.btnAuthList.attr_sync, false),
+        applicationStatus: this.vaildData(this.btnAuthList.attr_application, false),
+        orderStatus: this.vaildData(this.btnAuthList.attr_sort, false),
+        removeStatus: this.vaildData(this.btnAuthList.attr_delete, false),
       }
     },
     attrOids() {
@@ -1590,7 +1598,7 @@
       if (this.editStyleFlag) {
         return '800px'
       } else {
-        return 'calc(100vh - 595px)'
+        return 'calc(100vh - 565px)'
       }
     }
   },
@@ -1716,7 +1724,10 @@
             attrTableWidth: 120,
             ts: ""
           })
-          this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList)))
+          // 灏嗚嫳鏂囩紪鍙疯浆鎹负灏忓啓
+          let {id, ...res} = this.busineAddList;
+          this.busineAddList = {id: id.toLowerCase(), ...res};
+          this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList)));
         }
       })
       this.addVisible = false;
@@ -1850,8 +1861,8 @@
       // 鏂板嚱鏁扮敤浜庢墽琛宐atchAddSave鏂规硶
       const executeBatchAddSave = () => {
         batchAddSave(JSON.parse(JSON.stringify(this.ProData))).then(res => {
-          this.$message.success('淇濆瓨鎴愬姛')
           this.editOpenFlag = false;
+          this.$message.success('淇濆瓨鎴愬姛')
           // 璋冪敤鐖剁粍浠朵慨鏀规寜閽姸鎬�
           this.$emit('editCloseChildren')
           this.AddCellFlag = true;
@@ -2062,16 +2073,24 @@
       const regex = new RegExp(this.rulesData.ruleRowBds);
       if (regex.test(this.RulesForm.TestContent)) {
         this.$message.success('鏍¢獙鎴愬姛')
+      } else {
+        this.$message.error('鏍¢獙澶辫触')
       }
     },
     //鐐瑰嚮鍒嗙被娉ㄥ叆鎸夐挳
     injectBtn() {
       if (this.attrSelectList.length > 1) {
         this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉挎暟鎹�')
-      } else if (this.attrSelectList.length < 1) {
+        return;
+      }
+      if (this.attrSelectList.length < 1) {
         this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉挎暟鎹�')
-      } else if (this.attrSelectList.length === 1) {
+        return;
+        ;
+      }
+      if (this.attrSelectList.length === 1) {
         this.injectVisible = true;
+        return;
       }
     },
     //鍒嗙被娉ㄥ叆淇濆瓨
@@ -2227,7 +2246,7 @@
 <style lang="scss" scoped>
 //鍥哄畾鍒楅珮搴�
 /deep/ .el-table__fixed {
-  height: calc(100vh - 612px) !important;
+  height: calc(100vh - 584px) !important;
 }
 
 ///deep/ .el-table__fixed[v-if='editStyleFlag'] {

--
Gitblit v1.9.3