From 8e832c69b20bd34f6da9ef25324ec690d1cccbe3 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 30 一月 2024 11:30:32 +0800
Subject: [PATCH] 业务类型对象,分类授权,字符集相关代码修改

---
 Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue |  176 +++++++++++++++++++++++++++-------------------------------
 1 files changed, 83 insertions(+), 93 deletions(-)

diff --git a/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue b/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
index fc533eb..d91ed31 100644
--- a/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
+++ b/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
@@ -1,6 +1,5 @@
 <template>
   <basic-container>
-
     <el-header>
       <div style="margin-bottom: 15px">
         缂栫爜瑙勫垯锛�
@@ -8,7 +7,7 @@
                    @change="selectHandler">
           <el-option v-for="(item,index) in queryReleasedList"
                      :key="item.oid"
-                     :label="item.name"
+                     :label="item.name + ' (' + item.id + ')'"
                      :value="item.oid"></el-option>
         </el-select>
       </div>
@@ -19,96 +18,50 @@
         :data="tableData"
         :header-cell-style="{background:'#FAFAFA',color:'#505050'}"
         border
-        style="width: 100%;height:  calc(100vh - 320px)"
+        style="width: 100%;height:  calc(100vh - 315px)"
         @cell-click="cellClickHandler">
-        <el-table-column
-          align="center"
-          label="1"
-          prop="1"
-        >
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="2"
-          prop="2"
-        >
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="3"
-          prop="3">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="4"
-          prop="4">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="5"
-          prop="5">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="6"
-          prop="6">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="7"
-          prop="7">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="8"
-          prop="8">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="9"
-          prop="9">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="10"
-          prop="10">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="11"
-          prop="11">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="12"
-          prop="12">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="13"
-          prop="13">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="14"
-          prop="14">
-        </el-table-column>
-        <el-table-column
-          align="center"
-          label="15"
-          prop="15">
-        </el-table-column>
+        <el-table-column align="center" label="1" prop="1"></el-table-column>
+        <el-table-column align="center" label="2" prop="2"></el-table-column>
+        <el-table-column align="center" label="3" prop="3"></el-table-column>
+        <el-table-column align="center" label="4" prop="4"></el-table-column>
+        <el-table-column align="center" label="5" prop="5"></el-table-column>
+        <el-table-column align="center" label="6" prop="6"></el-table-column>
+        <el-table-column align="center" label="7" prop="7"></el-table-column>
+        <el-table-column align="center" label="8" prop="8"></el-table-column>
+        <el-table-column align="center" label="9" prop="9"></el-table-column>
+        <el-table-column align="center" label="10" prop="10"></el-table-column>
+        <el-table-column align="center" label="11" prop="11"></el-table-column>
+        <el-table-column align="center" label="12" prop="12"></el-table-column>
+        <el-table-column align="center" label="13" prop="13"></el-table-column>
+        <el-table-column align="center" label="14" prop="14"></el-table-column>
+        <el-table-column align="center" label="15" prop="15"></el-table-column>
       </el-table>
     </el-main>
     <el-footer>
-      <div style="width: 260px; display: flex; align-items: center;margin-top: 5px">
+      <div style="width: 460px; display: flex; align-items: center;margin-top: 5px">
         <p>鍊硷細</p>
-        <el-input v-model="characterValue" size="small" style="flex: 1;"></el-input>
+        <el-input v-model="characterValue" size="small" style="flex: 1; display: flex;">
+          <template slot="prefix">
+            <div style="display: flex; align-items: center;height: 100%;text-align: center;margin-left: 5px">
+              <el-tag v-for="(item,index) in this.editValueList" :key="index" closable size="small"
+                      @close="handleClose(item,index)">
+                {{ item }}
+              </el-tag>
+            </div>
+          </template>
+        </el-input>
       </div>
     </el-footer>
+    <el-dialog :visible.sync="editVisble" append-to-body title="淇敼鍙敤瀛楃" width="40%">
+      <el-input v-model="characterValue" size="small"></el-input>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="editVisble = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="editSaveHandler">纭� 瀹�</el-button>
+  </span>
+    </el-dialog>
     <div style="margin-bottom: 10px;text-align: center">
       <el-button icon="el-icon-plus" plain size="small" type="success" @click="addSaveHandler">娣诲姞</el-button>
-      <el-button icon="el-icon-edit" plain size="small" type="primary" @click="editSaveHandler">淇敼</el-button>
+      <el-button icon="el-icon-edit" plain size="small" type="primary" @click="editDialog">淇敼</el-button>
       <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">鍒犻櫎</el-button>
     </div>
   </basic-container>
@@ -116,13 +69,14 @@
 
 <script>
 import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
-import {gridCodeRule} from "@/api/code/codeCharcter"
+import {gridCodeRule} from "@/api/code/mdmrule"
 
 export default {
   name: "usableCharacter",
   data() {
     return {
       loading: false,
+      editValueList: [],
       //涓嬫媺妗嗘暟缁�
       queryReleasedList: [],
       //涓嬫媺妗嗗垵濮嬫暟鎹暟缁�
@@ -131,7 +85,8 @@
       characterEditOldValue: "",
       tableData: [],
       select: "",
-      selectValue: ""
+      selectValue: "",
+      editVisble: false
     }
   },
   watch: {
@@ -145,14 +100,42 @@
     this.getCodeRule();
   },
   methods: {
+    editDialog() {
+      if (this.editValueList.length > 1) {
+        this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹紒');
+        return;
+      }
+      if (this.editValueList.length === 0) {
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹紒');
+        return;
+      }
+      this.editVisble = true;
+    },
+    handleClose(tag, index) {
+      this.$delete(this.editValueList, index);
+      if (this.editValueList.length === 0) {
+        this.characterValue = "";
+        return;
+      }
+    },
     cellClickHandler(row, column) {
       this.characterValue = row[column.property];
-      this.characterEditOldValue = row[column.property]
+      this.characterEditOldValue = row[column.property];
+      if (this.editValueList.includes(row[column.property])) {
+        this.$message.warning('璇锋鏌ュ瓧绗﹂泦鏄惁鏈夐噸澶嶏紒')
+      } else if (row[column.property] === undefined || row[column.property] === null) {
+        this.$message.warning('璇锋鏌ュ瓧绗﹂泦鏄惁鏈夌┖鍊硷紒');
+      } else {
+        this.editValueList.push(row[column.property]);
+      }
+      // else if (this.editValueList.some(value => value.trim() === '')) {
+      //   this.$message.warning('璇锋鏌ュ瓧绗﹂泦鏄惁鏈夌┖鍊硷紒');
+      // }
     },
     async getCodeRule() {
       try {
         // 缂栫爜瑙勫垯宸插彂甯冩暟鎹簮
-        const res = await gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"});
+        const res = await gridCodeRule(1,-1);
         this.characterReleasedList = res.data.data.records;
         this.queryReleasedList = this.characterReleasedList;
         this.select = this.characterReleasedList[0].oid;
@@ -160,14 +143,12 @@
         const res2 = await getList({codeRuleId: this.select, chartType: "charset", chartValue: this.characterValue});
         this.tableData = res2.data.data;
         this.loading = false;
-        // console.log("this.tableData", this.tableData);
       } catch (error) {
         this.$message.warning(error)
       }
     },
     //缂栫爜瑙勫垯涓嬫媺妗嗘悳绱�
     filterValue(query) {
-      console.log(query)
       if (query !== "") {
         this.queryReleasedList = this.characterReleasedList.filter(item => {
           return item.name.includes(query.toString());
@@ -186,7 +167,7 @@
       // const targetObject = this.characterReleasedList.find(obj => obj.oid === this.selectValue);
       // const chartValue = targetObject.name;
       getList({codeRuleId: this.select, chartType: "charset", chartValue: this.characterValue}).then(res => {
-        console.log(res.data.data);
+        // console.log(res.data.data);
         this.tableData = res.data.data;
         this.loading = false;
       });
@@ -196,12 +177,17 @@
         this.$message.warning('璇峰~鍐欒娣诲姞鐨勫�硷紒');
         return; // 鍒ゆ柇杈撳叆鍊�
       }
-
+      ;
+      if (this.editValueList.length != 0) {
+        this.$message.warning('璇峰厛鍙栨秷宸查�夋嫨鐨勫�硷紒');
+        return; // 鍒ゆ柇杈撳叆鍊�
+      }
+      ;
       const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
       if (!targetObject) {
         return; // 鏌ユ壘瀵瑰簲typeText
       }
-
+      ;
       const codeRuleCharacterVO = {
         codeRuleId: this.select,
         chartType: "charset",
@@ -246,6 +232,8 @@
         .then(res => {
           this.$message.success(res.data.msg);
           this.characterValue = "";
+          this.editVisble = false;
+          this.editValueList = [];
           this.getTableData();
         }).catch(error => {
         this.$message.error('淇敼澶辫触');
@@ -262,16 +250,18 @@
       if (!targetObject) {
         return; // 鏌ユ壘瀵瑰簲typeText
       }
+      const value = this.editValueList.join("");
       const codeRuleCharacterVO = {
         codeRuleId: this.select,
         chartType: "charset",
-        chartValue: this.characterValue,
+        chartValue: value,
         chartTypeText: targetObject.name
       };
 
       deleteSave(codeRuleCharacterVO)
         .then(res => {
           this.$message.success(res.data.msg);
+          this.editValueList = [];
           this.characterValue = "";
           this.getTableData();
         }).catch(error => {

--
Gitblit v1.9.3