From 9981d4d90db5a6ee6b138eeea400502636f7f098 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期二, 27 八月 2024 17:57:04 +0800 Subject: [PATCH] 完善业务类型创建索引&&完善系统配置模块(管理功能模块、业务功能模块、操作类型管理、系统配置、系统运行监控) --- Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue | 199 ++++++++++++++++++++++++++++++++++++------------- 1 files changed, 147 insertions(+), 52 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue b/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue index 281ec3b..cea9234 100644 --- a/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue @@ -3,7 +3,7 @@ <el-aside> <basic-container> <div style="max-height: calc(100vh - 170px);overflow: auto"> - <avue-tree ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick"> + <avue-tree :key="refresh" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick"> <span slot-scope="{ node, data }" class="el-tree-node__label"> <span style="font-size: 15px"> <i class="el-icon-s-promotion"></i> @@ -27,28 +27,31 @@ <el-form-item label="鍒悕锛�"> <el-input v-model="form.alias" placeholder="璇疯緭鍏ュ埆鍚�"></el-input> </el-form-item> - <el-form-item label="缂栧彿锛�"> - <el-input v-model="form.sort" placeholder="璇疯緭鍏ョ紪鍙�"></el-input> + <el-form-item label="椤哄簭锛�"> + <el-input-number v-model="form.sort" :min="0" :max="9999" label="椤哄簭"></el-input-number> </el-form-item> <el-form-item label="鎻忚堪锛�"> <el-input v-model="form.remark" placeholder="璇疯緭鍏ユ弿杩�"></el-input> </el-form-item> </el-form> - <div class="btnBox"> - <el-button v-if="!addStatus" :disabled="mangeShowBtn ? false : !childTypeBtn" icon="el-icon-plus" plain + <div v-if="nodeRow.childType === 0 || nodeRow.childType === -1" class="btnBox"> + <el-button v-if="!addStatus" :disabled="nodeRow.childType === 0" icon="el-icon-plus" plain size="small" type="primary" @click="addClickHandler">澧炲姞 </el-button> <el-button v-if="addStatus" icon="el-icon-check" plain size="small" type="success" @click="addSaveClickHandler">淇濆瓨 </el-button> - <el-button :disabled="mangeShowBtn" icon="el-icon-edit" plain size="small" type="primary" - @click="addClickHandler">淇敼 + <el-button v-if="!editStatus" :disabled="nodeRow.childType === -1" icon="el-icon-edit" plain size="small" type="primary" + @click="editClickHandler">淇敼 </el-button> - <el-button :disabled="mangeShowBtn" icon="el-icon-close" plain size="small" type="danger" - @click="addClickHandler">鍒犻櫎 + <el-button v-if="editStatus" icon="el-icon-check" plain size="small" + type="success" @click="editSaveClickHandler">淇濆瓨 </el-button> - <el-button icon="el-icon-upload2" plain size="small" type="primary" @click="upLoadClickHandler">瀵煎叆sql + <el-button :disabled="nodeRow.childType === -1" icon="el-icon-close" plain size="small" type="danger" + @click="delClickHandler">鍒犻櫎 + </el-button> + <el-button icon="el-icon-upload2" plain size="small" type="primary" @click="sqlClickExportClick">瀵煎嚭sql </el-button> </div> </basic-container> @@ -58,12 +61,16 @@ <script> //绠$悊鍔熻兘妯″潡 -import {getSysModelTreeMenuByPID, addModel} from "@/api/systemModel/mangeModel/api" +import {exportFunctionSql, getSysModelTreeMenuByPID} from "@/api/systemModel/mangeModel/api" +import {addOperationType,updateOperationType,delOperationType} from "@/api/systemModel/operateType/api" +import func from "@/util/func"; export default { name: "index", data() { return { + refresh:Math.random(), + editStatus:false, addStatus: false, nodeRow: {}, form: {}, @@ -82,7 +89,7 @@ treeLoad: (node, resolve) => { const params = { parentId: node.level === 0 ? "operateNode" : node.data.id, - modeType: node.level === 0 ? "firstNode" : node.data.modeType, + modeType: node.level === 0 ? 'firstNode' : "", } getSysModelTreeMenuByPID(params).then(res => { resolve(res.data.data.map(item => { @@ -101,21 +108,6 @@ created() { }, computed: { - /** - * childType - * 涓�-1 鍏ㄩ儴鎸夐挳灞曠ず 绂佺敤淇敼 鍒犻櫎 澧炲姞鎿嶄綔绫诲瀷 - * 涓嶄负-1 闅愯棌 鍒犻櫎闈炵郴缁熸ā鍧� 鍒犻櫎涓氬姟妯″潡 - * 涓�1鏃� 绂佺敤鎿嶄綔绫诲瀷銆佸鍏ャ�佸鍑� - * 涓�2鏃� 绂佺敤澧炲姞 瀵煎叆 瀵煎嚭 - * mangeShowBtn 涓� true 璇存槑鏄《灞傝妭鐐� 鍏ㄩ儴鎸夐挳灞曠ず 绂佺敤淇敼 鍒犻櫎 澧炲姞鎿嶄綔绫诲瀷 - * @returns {Number} - */ - mangeShowBtn() { - return this.form.childType === -1; - }, - childTypeBtn() { - return this.form.childType === 1; - } }, methods: { // 鏍戣鐐瑰嚮 @@ -124,53 +116,156 @@ this.form = {...row}; this.nodeRow = {...row}; this.addStatus = false; + this.editStatus = false; }, + // 娓呯┖琛ㄥ崟缁戝畾鍊� + resetFormValue() { + this.form = {}; + this.refresh = Math.random(); // 鍒锋柊宸︿晶鏍� + }, + // 鏂板鎸夐挳 addClickHandler() { - for (const key in this.form) { - if (this.form.hasOwnProperty(key)) { - this.form[key] = null; - } - } + this.form = {}; this.addStatus = true; + this.editStatus = false; }, // 淇濆瓨鎸夐挳 addSaveClickHandler() { - console.log(this.form) if (!this.form.name) { - this.$message.error('妯″潡鍚嶄笉鑳戒负绌�'); + this.$message.error('鍚嶇О涓嶈兘涓虹┖'); + return + } + if (!this.form.code) { + this.$message.error('鏍囪瘑涓嶈兘涓虹┖'); + return + } + if (!this.form.alias) { + this.$message.error('鍒悕涓嶈兘涓虹┖'); + return + } + if (!this.form.sort) { + this.$message.error('椤哄簭涓嶈兘涓虹┖'); return } if (this.form.name.length > 128) { - this.$message.error('妯″潡鍚嶉暱搴﹁秴杩�128锛�'); + this.$message.error('鍚嶇О闀垮害涓嶈兘瓒呰繃128锛�'); return } if (this.form.remark && this.form.remark.length > 255) { - this.$message.error('鎻忚堪闀垮害瓒呰繃255锛�'); + this.$message.error('鎻忚堪闀垮害涓嶈兘瓒呰繃255锛�'); return } - if (this.form.resourceDotNet && this.form.resourceDotNet.length > 255) { - this.$message.error('.NET鏍囪瘑闀垮害涓嶈兘255锛�'); + if (this.form.alias && this.form.alias.length > 255) { + this.$message.error('鍒悕闀垮害涓嶈兘瓒呰繃255锛�'); return } - if (this.form.pathc && this.form.pathc.length > 255) { - this.$message.error('C/S鏍囪瘑闀垮害涓嶈兘255锛�'); - return - } - if (this.form.resourceMobile && this.form.resourceMobile.length > 255) { - this.$message.error('Mobile鏍囪瘑闀垮害涓嶈兘255锛�'); - return - } - console.log(this.nodeRow); this.form.parentId = this.nodeRow.id; - this.form.modeType = this.nodeRow.modeType; - addModel(this.form).then(res => { - console.log(res) - this.addStatus = false; + const params = { + name:this.form.name, + identify:this.form.code, + alias:this.form.alias, + desc:this.form.remark, + seq:this.form.sort + } + addOperationType(params).then(res => { + if(res.data.code === 200){ + this.$message.success(res.data.msg); + this.refresh = Math.random(); // 鍒锋柊宸︿晶鏍� + this.addStatus = false; + } }) - } + }, + + // 淇敼鎸夐挳 + editClickHandler(){ + this.addStatus = false; + this.editStatus = true; + }, + + // 淇敼淇濆瓨 + editSaveClickHandler(){ + console.log(this.form); + if (!this.form.name) { + this.$message.error('鍚嶇О涓嶈兘涓虹┖'); + return + } + if (!this.form.code) { + this.$message.error('鏍囪瘑涓嶈兘涓虹┖'); + return + } + if (!this.form.alias) { + this.$message.error('鍒悕涓嶈兘涓虹┖'); + return + } + if (!this.form.sort) { + this.$message.error('椤哄簭涓嶈兘涓虹┖'); + return + } + if (this.form.name.length > 128) { + this.$message.error('鍚嶇О闀垮害涓嶈兘瓒呰繃128锛�'); + return + } + if (this.form.remark && this.form.remark.length > 255) { + this.$message.error('鎻忚堪闀垮害涓嶈兘瓒呰繃255锛�'); + return + } + if (this.form.alias && this.form.alias.length > 255) { + this.$message.error('鍒悕闀垮害涓嶈兘瓒呰繃255锛�'); + return + }; + const params = { + id:this.form.id, + name:this.form.name, + identify:this.form.code, + alias:this.form.alias, + desc:this.form.remark, + seq:this.form.sort + } + updateOperationType(params).then(res => { + if(res.data.code === 200){ + this.$message.success(res.data.msg); + this.refresh = Math.random(); // 鍒锋柊宸︿晶鏍� + this.editStatus = false; + } + }) + }, + + // 鍒犻櫎 + delClickHandler(){ + this.$confirm('鎮ㄧ‘瀹氳鍒犻櫎鎵�閫夋嫨鐨勬暟鎹悧锛�', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + delOperationType(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.msg); + this.resetFormValue(); + this.addStatus = false; + this.editStatus = false; + this.nodeRow = {}; + } + }) + }).catch(() => { + this.$message({ + type: 'info', + message: '宸插彇娑堝垹闄�' + }); + }); + }, + + // 瀵煎嚭sql + sqlClickExportClick() { + exportFunctionSql({isFunction: false}).then(res => { + func.downloadFileByBlobHandler(res); + this.$message.success('瀵煎嚭鎴愬姛'); + }).catch(err => { + this.$message.error(err); + }); + }, } } </script> -- Gitblit v1.9.3