From 03c38da7555b69cb598e534c97fa25bd5385701c Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期二, 29 十月 2024 17:55:50 +0800 Subject: [PATCH] 表单定义权限控制和属性权限&&成员管理添加密级&&首页修改密码&&登录判断过期停用修改密码后跳转首页 --- Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue | 192 ++++++++++++++++++++++++++++++------------------ 1 files changed, 120 insertions(+), 72 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue index 4842e75..b49b2bd 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue @@ -18,10 +18,11 @@ @current-change="currentChange" > <template slot="menuLeft" slot-scope="scope"> - <el-button icon="el-icon-plus" size="small" type="primary" @click="rowSaveHandlerClick">鍒涘缓</el-button> + <el-button icon="el-icon-plus" plain size="small" type="primary" @click="rowSaveHandlerClick">鍒涘缓</el-button> <el-button icon="el-icon-delete" plain size="small" type="danger" @click="allDelHandler">鍒犻櫎</el-button> <el-button icon="el-icon-view" plain size="small" type="primary" @click="chekView">鏌ョ湅浣跨敤鑼冨洿</el-button> - <el-button icon="el-icon-download" plain size="small" type="primary" @click="downloadTemplateHandler">涓嬭浇瀵煎叆妯℃澘 + <el-button icon="el-icon-download" plain size="small" type="primary" @click="downloadTemplateHandler"> + 涓嬭浇瀵煎叆妯℃澘 </el-button> <el-button icon="el-icon-upload2" plain size="small" type="primary" @click="upLoadHandler">瀵煎叆</el-button> <el-button icon="el-icon-download" plain size="small" type="primary" @click="downLoadHandler">瀵煎嚭</el-button> @@ -45,19 +46,25 @@ <template slot="label"> 鍚嶇О </template> - {{ lastItem.id }} + <div style="width: 330px"> + {{ lastItem.id }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 鏍囩 </template> - {{ lastItem.name }} + <div style="width: 330px"> + {{ lastItem.name }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 鎻忚堪 </template> - {{ lastItem.description }} + <div style="width: 330px"> + {{ lastItem.description }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> @@ -75,9 +82,11 @@ <template slot="label"> 鍏佽涓虹┖ </template> - <el-tag :type="lastItem.nullableFlag ? 'success' : 'danger'"> - {{ lastItem.nullableFlag ? '鏄�' : '鍚�' }} - </el-tag> + <div style="width: 330px"> + <el-tag :type="lastItem.nullableFlag ? 'success' : 'danger'"> + {{ lastItem.nullableFlag ? '鏄�' : '鍚�' }} + </el-tag> + </div> </el-descriptions-item> <el-descriptions-item v-if="accuracy"> <template slot="label"> @@ -89,13 +98,17 @@ <template slot="label"> 闀垮害 </template> - {{ lastItem.attrLength }} + <div style="width: 330px"> + {{ lastItem.attrLength }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 榛樿鍊� </template> - {{ lastItem.defaultValue }} + <div style="width: 330px"> + {{ lastItem.defaultValue }} + </div> </el-descriptions-item> </el-descriptions> @@ -106,33 +119,43 @@ <template slot="label"> 褰撳墠绫诲瀷 </template> - {{ lastItem.version ? '閾炬帴绫诲瀷' : '涓氬姟绫诲瀷' }} + <div style="width: 345px"> + {{ lastItem.version ? '閾炬帴绫诲瀷' : '涓氬姟绫诲瀷' }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 褰撳墠绫诲瀷鍊� </template> - {{ lastItem.version ? lastItem.linkTypeName : lastItem.btmTypeId }} + <div style="width: 345px"> + {{ lastItem.version ? lastItem.linkTypeName : lastItem.btmTypeId }} + </div> </el-descriptions-item> <el-descriptions-item v-if="lastItem.version"> <template slot="label"> 褰撳墠鐗堟湰娆� </template> - {{ lastItem.version }} + <div style="width: 345px"> + {{ lastItem.version }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 浣跨敤鏋氫妇 </template> - <el-tag :type="lastItem.enumId ? 'success' : 'danger'"> - {{ lastItem.enumId ? '鏄�' : '鍚�' }} - </el-tag> + <div style="width: 345px"> + <el-tag :type="lastItem.enumId ? 'success' : 'danger'"> + {{ lastItem.enumId ? '鏄�' : '鍚�' }} + </el-tag> + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 褰撳墠鏋氫妇绫诲瀷 </template> - {{ lastItem.enumId }} + <div style="width: 345px"> + {{ lastItem.enumId }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> @@ -153,21 +176,25 @@ <template slot="label"> 浣跨敤鏋氫妇 </template> - <el-tag :type="lastItem.enumFlag ? 'success' : 'danger'"> - {{ lastItem.enumFlag ? '鏄�' : '鍚�' }} - </el-tag> + <div style="width: 330px"> + <el-tag :type="lastItem.enumFlag ? 'success' : 'danger'"> + {{ lastItem.enumFlag ? '鏄�' : '鍚�' }} + </el-tag> + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 鏋氫妇绫诲瀷 </template> - {{ lastItem.enumFlag }} + <div style="width: 330px"> + {{ lastItem.enumFlag }} + </div> </el-descriptions-item> <el-descriptions-item> <template slot="label"> 鍙栧�艰寖鍥� </template> - <div style="width: 330px; height: 80px;overflow: auto"> + <div style="width: 345px; height: 80px;overflow: auto"> <el-tag v-for="item in rangeList" plain style="margin: 5px">{{ item }}</el-tag> </div> </el-descriptions-item> @@ -206,9 +233,7 @@ <el-row> <div class="addDialog"> <div> - <h3>灞炴�ч」</h3> - <el-col :span="12"> <el-form-item label="鍚嶇О锛�" prop="id"> <el-input v-model="form.id"></el-input> @@ -347,13 +372,13 @@ </el-form-item> <el-form-item v-if="!form.enumSwitch" label="杩愮畻绗︼細"> <div> - <el-button size="mini" @click="operationHandler('>')"> > </el-button> - <el-button size="mini" @click="operationHandler('<')"> < </el-button> - <el-button size="mini" @click="operationHandler('>=')"> >= </el-button> - <el-button size="mini" @click="operationHandler('<=')"> <= </el-button> - <el-button size="mini" @click="operationHandler('=')"> = </el-button> - <el-button size="mini" @click="operationHandler('!=')"> != </el-button> - <el-button size="mini" @click="operationHandler('()')"> () </el-button> + <el-button size="mini" @click="operationHandler('>')"> ></el-button> + <el-button size="mini" @click="operationHandler('<')"> <</el-button> + <el-button size="mini" @click="operationHandler('>=')"> >=</el-button> + <el-button size="mini" @click="operationHandler('<=')"> <=</el-button> + <el-button size="mini" @click="operationHandler('=')"> =</el-button> + <el-button size="mini" @click="operationHandler('!=')"> !=</el-button> + <el-button size="mini" @click="operationHandler('()')"> ([])</el-button> </div> </el-form-item> <el-form-item :label="form.enumSwitch ? '褰撳墠鏋氫妇鍊硷細' : '褰撳墠鍊煎煙锛�'" prop="rangeValue"> @@ -371,16 +396,16 @@ </el-form-item> <el-form-item label="杩愮畻绗︼細"> <div> - <el-button size="mini" @click="operationHandler('>')"> > </el-button> - <el-button size="mini" @click="operationHandler('<')"> < </el-button> - <el-button size="mini" @click="operationHandler('>=')"> >= </el-button> - <el-button size="mini" @click="operationHandler('<=')"> <= </el-button> - <el-button size="mini" @click="operationHandler('=')"> = </el-button> - <el-button size="mini" @click="operationHandler('!=')"> != </el-button> - <el-button size="mini" @click="operationHandler('()')"> () </el-button> + <el-button size="mini" @click="operationHandler('>')"> ></el-button> + <el-button size="mini" @click="operationHandler('<')"> <</el-button> + <el-button size="mini" @click="operationHandler('>=')"> >=</el-button> + <el-button size="mini" @click="operationHandler('<=')"> <=</el-button> + <el-button size="mini" @click="operationHandler('=')"> =</el-button> + <el-button size="mini" @click="operationHandler('!=')"> !=</el-button> + <el-button size="mini" @click="operationHandler('()')">([])</el-button> </div> </el-form-item> - <el-form-item :label="form.enumSwitch ? '褰撳墠鏋氫妇鍊硷細' : '褰撳墠鍊煎煙锛�'" prop="rangeValue"> + <el-form-item :label="form.enumSwitch ? '褰撳墠鏋氫妇鍊硷細' : '褰撳墠鍊煎煙锛�'" prop="rangeValue"> <textarea v-model="form.rangeValue" style="width: 330px; height: 80px; border: 1px solid #DCDFE6; overflow: auto; text-align: left;resize: none;"> </textarea> @@ -576,6 +601,7 @@ addBtn: false, editBtn: false, delBtn: false, + menuWidth: 160, column }, tableLoading: false, @@ -649,6 +675,7 @@ ], upFileType: ['xls', 'xlsx'], fileUrl: 'api/attributeController/importAttributes', + lastIndex: null } }, computed: { @@ -732,7 +759,17 @@ // 鐐瑰嚮琛� rowClickHandler(row) { - this.$refs.userCrud.toggleRowSelection(row); + func.rowClickHandler( + row, + this.$refs.userCrud, + this.lastIndex, + (newIndex) => { + this.lastIndex = newIndex; + }, + () => { + this.selectList = []; + } + ); }, // 鏉℃暟 @@ -956,8 +993,13 @@ // 澶勭悊 '()' 杩愮畻绗︾殑鎯呭喌 if (val === '()') { + let regex = /[,\[\]()]+/g; + let firstValue = this.form.enumAddValue[0]; + let lastValue = this.form.enumAddValue[(this.form.enumAddValue.length - 1)]; // 鍒囧壊 enumAddValue 鐨勯�楀彿 - let values = this.form.enumAddValue.split(',').map(item => item.trim()); + let values = this.form.enumAddValue.split(regex).map(item => item.trim()).filter(item => item !== ""); + ; + // 妫�鏌ユ槸鍚︽湁鏈夋晥鐨勫�� if (values.length < 2 || values.some(item => item === '')) { @@ -980,7 +1022,7 @@ } // 鏋勫缓 newValue 鐨勫舰寮� (鍊�1,鍊�2) - let newValue = `(${values.join(',')})`; + let newValue = `${firstValue}${values.join(',')}${lastValue}`; // 妫�鏌ユ柊鐨勫�兼槸鍚﹀凡瀛樺湪 if (currentRangeArray.includes(newValue)) { @@ -1206,38 +1248,44 @@ linkTypeName: "", rangeValue: "" }; - if (this.dialogTitle === 'add') { - this.form.range = this.form.rangeValue.replace(/\n/g, ';'); - if (this.form.attributeSelectType === 'business') { - this.form.btmTypeId = this.form.referValue; - } else { - this.form.linkTypeName = this.form.referValue; - } - addAttribute(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.getTableList(); - this.form = form; - this.addVisible = false; + this.$refs.form.validate((valid) => { + if (valid) { + if (this.dialogTitle === 'add') { + this.form.range = this.form.rangeValue ? this.form.rangeValue.replace(/\n/g, ';') : ''; + if (this.form.attributeSelectType === 'business') { + this.form.btmTypeId = this.form.referValue; + } else { + this.form.linkTypeName = this.form.referValue; + } + addAttribute(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.getTableList(); + this.form = form; + this.addVisible = false; + } + }) } - }) - } - if (this.dialogTitle === 'edit') { - this.form.range = this.form.rangeValue.replace(/\n/g, ';'); - if (this.form.attributeSelectType === 'business') { - this.form.btmTypeId = this.form.referValue; - } else { - this.form.linkTypeName = this.form.referValue; - } - updateAttribute(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.getTableList(); - this.form = form; - this.addVisible = false; + if (this.dialogTitle === 'edit') { + this.form.range = this.form.rangeValue ? this.form.rangeValue.replace(/\n/g, ';') : ''; + if (this.form.attributeSelectType === 'business') { + this.form.btmTypeId = this.form.referValue; + } else { + this.form.linkTypeName = this.form.referValue; + } + updateAttribute(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.getTableList(); + this.form = form; + this.addVisible = false; + } + }) } - }) - } + } else { + return false; + } + }); }, // 瀵煎叆 -- Gitblit v1.9.3