From 47f1f14d7788b0baf4578d3aaa5b9f989ee65210 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 31 一月 2024 16:36:52 +0800
Subject: [PATCH] 首页统计功能查询判断为空增加
---
Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue | 345 ++++++++++++++++++++++++++++++++++----------------------
1 files changed, 209 insertions(+), 136 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue b/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
index 0ac88fd..d246424 100644
--- a/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
+++ b/Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
@@ -1,191 +1,156 @@
<template>
<basic-container>
-
<el-header>
<div style="margin-bottom: 15px">
缂栫爜瑙勫垯锛�
- <el-select v-model="select" filterable :filter-method="filterValue" placeholder="璇烽�夋嫨" size="small" @click="selectHandler">
+ <el-select v-model="select" :filter-method="filterValue" filterable placeholder="璇烽�夋嫨" size="small" v-loading="selectLoading"
+ @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>
</el-header>
<el-main>
<el-table
+ v-loading="loading"
: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="aa"
- >
- </el-table-column>
- <el-table-column
- align="center"
- label="2"
- prop="b"
- >
- </el-table-column>
- <el-table-column
- align="center"
- label="3"
- prop="c">
- </el-table-column>
- <el-table-column
- align="center"
- label="4"
- prop="d">
- </el-table-column>
- <el-table-column
- align="center"
- label="5"
- prop="e">
- </el-table-column>
- <el-table-column
- align="center"
- label="6"
- prop="f">
- </el-table-column>
- <el-table-column
- align="center"
- label="7"
- prop="g">
- </el-table-column>
- <el-table-column
- align="center"
- label="8"
- prop="h">
- </el-table-column>
- <el-table-column
- align="center"
- label="9"
- prop="i">
- </el-table-column>
- <el-table-column
- align="center"
- label="10"
- prop="j">
- </el-table-column>
- <el-table-column
- align="center"
- label="11"
- prop="k">
- </el-table-column>
- <el-table-column
- align="center"
- label="12"
- prop="l">
- </el-table-column>
- <el-table-column
- align="center"
- label="13"
- prop="m">
- </el-table-column>
- <el-table-column
- align="center"
- label="14"
- prop="n">
- </el-table-column>
- <el-table-column
- align="center"
- label="15"
- prop="o">
- </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">娣诲姞</el-button>
- <el-button icon="el-icon-edit" plain size="small" type="primary">淇敼</el-button>
- <el-button icon="el-icon-delete" plain size="small" type="danger">鍒犻櫎</el-button>
+ <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="editDialog">淇敼</el-button>
+ <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">鍒犻櫎</el-button>
</div>
</basic-container>
</template>
<script>
-import {getList} from "@/api/code/codeCharcter"
-import {gridCodeRule} from "@/api/code/codeCharcter"
+import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
+import {gridCodeRule} from "@/api/code/mdmrule"
export default {
name: "usableCharacter",
data() {
return {
+ loading: false,
+ editValueList: [],
//涓嬫媺妗嗘暟缁�
- queryReleasedList:[],
+ queryReleasedList: [],
//涓嬫媺妗嗗垵濮嬫暟鎹暟缁�
characterReleasedList: [],
characterValue: "",
- tableData: [
- {
- aa: 'a1',
- b: 'b1',
- c: 'c1',
- d: 'd1',
- e: 'e1',
- f: 'f1',
- g: 'b1',
- h: 'c1',
- i: 'd1',
- j: 'e1',
- k: 'f1',
- l: 'a1',
- m: 'b1',
- n: 'c1',
- o: 'd1',
- },
- {
- aa: 'a2',
- b: 'b2',
- c: 'c2',
- d: 'd2',
- e: 'e2',
- f: 'f2'
- },
- ],
+ characterEditOldValue: "",
+ tableData: [],
select: "",
+ selectValue: "",
+ editVisble: false,
+ selectLoading:false,
}
},
- watch:{
- select:{
- handler(newV){
+ watch: {
+ select: {
+ handler(newV) {
// console.log(newV)
}
}
},
created() {
- getList({codeRuleId:"1717377846655193088",chartType:"charset",chartValue:"鏍囧噯瑙勫垯"}).then(res=>{
- console.log(res)
- })
- this.getCodeRule()
+ this.getCodeRule();
},
methods: {
- cellClickHandler(row, column) {
- console.log(row)
- console.log(column)
- console.log(row[column.property])
- this.characterValue = row[column.property]
+ editDialog() {
+ if (this.editValueList.length > 1) {
+ this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹紒');
+ return;
+ }
+ if (this.editValueList.length === 0) {
+ this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹紒');
+ return;
+ }
+ this.editVisble = true;
},
- getCodeRule() {
- //缂栫爜瑙勫垯宸插彂甯冩暟鎹簮
- gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"}).then(res => {
+ 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];
+ 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(1,-1);
this.characterReleasedList = res.data.data.records;
this.queryReleasedList = this.characterReleasedList;
- this.select = this.characterReleasedList[0].name;
- })
+ this.select = this.characterReleasedList[0].oid;
+ this.loading = true;
+ const res2 = await getList({codeRuleId: this.select, chartType: "charset", chartValue: this.characterValue});
+ this.tableData = res2.data.data;
+ this.loading = false;
+ this.selectLoading = false;
+ } 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());
@@ -194,8 +159,116 @@
this.queryReleasedList = this.characterReleasedList;
}
},
- selectHandler(val){
- console.log(1)
+ selectHandler(val) {
+ this.selectValue = val;
+ this.characterValue = ""
+ this.getTableData()
+ },
+ getTableData() {
+ this.loading = true;
+ // 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);
+ this.tableData = res.data.data;
+ this.loading = false;
+ });
+ },
+ addSaveHandler() {
+ if (!this.characterValue) {
+ 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",
+ chartValue: this.characterValue,
+ chartTypeText: targetObject.name
+ };
+
+ addSave(codeRuleCharacterVO)
+ .then(res => {
+ this.$message.success(res.data.msg);
+ this.characterValue = "";
+ this.getTableData();
+ }).catch(error => {
+ this.$message.error('娣诲姞澶辫触');
+ });
+ },
+ editSaveHandler() {
+ if (this.characterEditOldValue === "") {
+ this.$message.warning('璇烽�夋嫨淇敼鐨勫�硷紒');
+ return; // 鍒ゆ柇閫夋嫨鍊�
+ }
+
+ if (this.characterValue === "") {
+ 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",
+ chartValue: this.characterValue,
+ oldChartValue: this.characterEditOldValue,
+ chartTypeText: targetObject.name
+ };
+
+ editSave(codeRuleCharacterVO)
+ .then(res => {
+ this.$message.success(res.data.msg);
+ this.characterValue = "";
+ this.editVisble = false;
+ this.editValueList = [];
+ this.getTableData();
+ }).catch(error => {
+ this.$message.error('淇敼澶辫触');
+ });
+ },
+ delSaveHandler() {
+ //鍒ゆ柇閫夋嫨鏁版嵁characterEditOldValue
+ if (this.characterEditOldValue === "" || this.characterValue === "") {
+ this.$message.warning('璇烽�夋嫨瑕佸垹闄ょ殑鍊�');
+ return;
+ }
+
+ const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
+ if (!targetObject) {
+ return; // 鏌ユ壘瀵瑰簲typeText
+ }
+ const value = this.editValueList.join("");
+ const codeRuleCharacterVO = {
+ codeRuleId: this.select,
+ chartType: "charset",
+ chartValue: value,
+ chartTypeText: targetObject.name
+ };
+
+ deleteSave(codeRuleCharacterVO)
+ .then(res => {
+ this.$message.success(res.data.msg);
+ this.editValueList = [];
+ this.characterValue = "";
+ this.getTableData();
+ }).catch(error => {
+ this.$message.error('鍒犻櫎澶辫触');
+ });
}
}
}
--
Gitblit v1.9.3