From 389379ad574a0b5d92476338c37389ee62c43eaf Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期一, 31 七月 2023 17:22:54 +0800 Subject: [PATCH] 新增接口信息管理页面 --- Source/UBCS-WEB/src/views/docking/info.vue | 396 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue | 4 2 files changed, 398 insertions(+), 2 deletions(-) diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue index 2c79a93..d74fc46 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue @@ -157,13 +157,13 @@ this.option.column = [{ prop: 'id', label: '鑻辨枃鍚嶇О', - sort: true, + sortable: true, width: 150, search: true }, { prop: 'name', label: '涓枃鍚嶇О', - sort: true, + sortable: true, width: 150, search: true }, { diff --git a/Source/UBCS-WEB/src/views/docking/info.vue b/Source/UBCS-WEB/src/views/docking/info.vue new file mode 100644 index 0000000..c299842 --- /dev/null +++ b/Source/UBCS-WEB/src/views/docking/info.vue @@ -0,0 +1,396 @@ +<template> + <el-container> + <el-main> + <basic-container> + <avue-crud v-model="form" ref="crud" :option="option" :data="data" @on-load="onLoad" :page.sync="page" + @search-change="searchChange" + @search-reset="searchReset" + @selection-change="selectionChange" + @current-change="currentChange" + @size-change="sizeChange" + @refresh-change="refreshChange" @row-click="rowClick"> + <template slot="menu" slot-scope="{row,index}"> + <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave(row,index)">缂栬緫</el-button> + <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave(row,index)">鍒犻櫎</el-button> + <el-button v-if="row.usedflag=='false'" icon="el-icon-position" size="small" type="text" @click="ENABLE(row,index)">鍚敤</el-button> + <el-button v-else icon="el-icon-finished" size="small" type="text" @click="DISABLE(row,index)">鍋滅敤</el-button> + </template> + <template slot="menuLeft"> + <el-button size="small" type="primary" icon="el-icon-plus" @click="addSave">鏂� 澧� + </el-button> + <el-button size="small" icon="el-icon-share" @click="PUSH">鍚� 姝� + </el-button> + <el-button size="small" icon="el-icon-search" @click="openAdvancedQuery">鏌� 璇� + </el-button> + </template> + </avue-crud> + </basic-container> + </el-main> + <originalAdd ref="originalAdd" @refreshTable="refreshChange" :attribute="editAttribute"></originalAdd> + <!-- 楂樼骇鏌ヨ瀵硅瘽妗� --> + <advanced-query + :ref="advancedQueryParam.ref" + :options="advancedQueryParam.options" + :visible.sync="advancedQueryParam.advancedQuerySettingBox" + @echoContion="echoSeniorContionMap"> + </advanced-query> + </el-container> +</template> + +<script> +import { + getList, + remove, + add, + update, getPage, getApplyRange +} from "@/api/omd/OmdAttribute"; +import {getDictionary} from "@/api/omd/enum"; +import {mapGetters} from "vuex"; + +export default { + name: "info", + data() { + return { + page: { + pageSize: 10, + currentPage: 1, + total: 100 + }, + selectRow: "", + data: [], + form: {}, + attribute: { + nullable: true + }, + editAttribute: {}, + applyRangeData: [], + selectionList: [], + option: { + height: "auto", + calcHeight: 20, + tip: false, + headerAlign: "center", + border: true, + index: true, + selection: true, + searchShow: false, + searchMenuSpan: 6, + rowKey: "id", + tabs: true, + stripe: true, + indexFixed: false, + menuWidth: 300, + highlightCurrentRow: true, + addBtn: false, + editBtn: false, + delBtn: false, + columnBtn: false, + column: [{ + label: '鎺ㄩ�佺被鍨�', + field: 'pushTypeText', + sortable: true, + width: 150, + type: 'select', + dicData: this.pushType, + props: { + label: "value", + value: "key" + }, + }, { + label: '绯荤粺鍚嶇О', + prop: 'sysbasename', + sortable: true, + search: true, + width: 150 + }, { + label: '绯荤粺缂栧彿', + prop: 'sysbaseid', + sortable: true, + search: true, + width: 150 + }, { + label: '鎺ュ彛鍑芥暟', + prop: 'interfaceFunction', + sortable: true, + width: 150 + }, { + label: '鍛藉悕绌洪棿', + prop: 'namespace', + sortable: true, + width: 150 + }, { + label: 'soapAction', + prop: 'soapaction', + sortable: true, + width: 150 + }, { + label: '鍙傛暟鍚嶇О', + prop: 'targName', + sortable: true, + width: 150 + }, { + label: '璋冪敤鏂瑰紡', + prop: 'cxfaxis', + sortable: true, + width: 150 + }, { + label: '璇锋眰鍦板潃', + prop: 'requesturl', + sortable: true, + width: 150 + }, { + label: '鍙傛暟绫诲瀷', + prop: 'paramtype', + sortable: true, + width: 150 + }, { + label: '杩斿洖鍊肩被鍨�', + prop: 'returntype', + sortable: true, + width: 150 + }] + }, + itemForm: { + itemData: {}, + activeName: "referTab", + enumInitFlag: false, + referInitFlag: false, + form: {} + }, + pushType: [{key: '1', value: '鏁版嵁鎺ㄩ��'}, + {key: '2', value: '鍒嗙被鎺ㄩ��'}, + {key: '3', value: '缂栫爜鐢宠'}, + {key: '4', value: '缂栫爜鏇存敼锛堢姸鎬併�佸洖鏀讹級'}, + {key: '5', value: '鍒嗙被鏌ヨ'}, + {key: '6', value: '鍚鍒欎俊鎭殑鍒嗙被鏌ヨ'}, + {key: '7', value: '鏁版嵁鏌ヨ'}], + // 楂樼骇鏌ヨ瀵硅瘽妗嗙浉鍏冲弬鏁� + advancedQueryParam: { + ref: 'advancedQuery', + advancedQuerySettingBox: false, + options: [], + currentOpen: '', //褰撳墠鎵撳紑楂樼骇鏌ヨ鐨勭獥鍙f槸 + //conditionMapParams: {}, + } + }; + }, + created() { + }, + computed: { + oids() { + let oids = []; + this.selectionList.forEach(ele => { + oids.push(ele.oid); + }); + return oids.join(","); + } + }, + methods: { + searchReset() { + this.query = {}; + this.onLoad(this.page); + }, + searchChange(params, done) { + this.query = params; + this.page.currentPage = 1; + this.onLoad(this.page); + done(); + }, + selectionChange(list) { + this.selectionList = list; + if(this.selectionList.length <= 0){ + this.itemForm.itemData = null + this.selectRow = null + this.attribute = null + } + if (this.selectionList.length > 0) { + this.itemForm.itemData = this.selectionList[list.length-1]; + this.selectRow = this.selectionList[list.length-1].$index; + this.attribute = this.selectionList[list.length-1]; + } + }, + selectionClear() { + this.selectionList = []; + this.$refs.crud.toggleSelection(); + }, + currentChange(currentPage) { + this.page.currentPage = currentPage; + }, + sizeChange(pageSize) { + this.page.pageSize = pageSize; + }, + refreshChange() { + this.onLoad(this.page, this.query); + }, + addSave() { + this.$refs.originalAdd.showSubmitDialog = true; + const newAttr = {}; + newAttr.nullable = true; + this.$refs.originalAdd.attribute = newAttr; + }, + updateSave(row,index) { + this.selectRow = index; + var json = JSON.stringify(row); + this.editAttribute = JSON.parse(json); + this.editAttribute.nullable = row.nullable == 'true' ? true : false; + this.$refs.originalAdd.attribute = this.editAttribute; + this.$refs.originalAdd.showSubmitDialog = true; + this.checkUsingReferDict(row); + this.$refs.originalAdd.activeName = this.itemForm.activeName; + this.$refs.originalAdd.enumInitFlag = this.itemForm.enumInitFlag; + this.$refs.originalAdd.referInitFlag = this.itemForm.referInitFlag; + // this.refreshChange() + }, + deleteSave(row,index) { + this.$confirm("鍒犻櫎鍏冩暟鎹皢鏃犳硶琚仮澶�, 鏄惁缁х画?", "鎻愮ず", { + iconClass: 'el-icon-question', + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + showClose: true, + type: "warning" + }).then(() => { + remove(row.oid).then(res => { + this.$message.success("鍒犻櫎鎴愬姛"); + this.refreshChange(); + }); + }); + }, + PUSH(){ + if (this.selectionList.length != 1) { + this.$message.error('璇烽�夋嫨涓�鏉℃暟鎹�') + return false; + } + this.$confirm("鏄惁瑕�"+ (this.selectionList[0].pushType == "1" ? "鎺ㄩ�佹暟鎹�" : "鎺ㄩ�佸垎绫�"), { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + }) + .then(() => { + return push(this.oids.split(',')); + }) + .then(() => { + this.onLoad(this.page); + this.$message({ + type: "success", + message: "鎿嶄綔鎴愬姛!" + }); + this.$refs.crud.toggleSelection(); + }); + }, + onLoad(page, params = {}) { + this.loading = true; + getPage(this.page.currentPage, this.page.pageSize, Object.assign(params, this.query)).then(res => { + const data = res.data.data; + this.page.total = data.total; + this.data = data.records; + this.loading = false; + this.data = res.data.data.records; + this.itemData = this.data[0]; + }); + }, + rowClick(row) { + this.itemForm.itemData = row; + this.selectRow = row.$index; + this.attribute = row; + + this.$refs.crud.toggleSelection(); + this.$refs.crud.toggleRowSelection(row); //閫変腑褰撳墠琛� + //this.checkUsingReferDict(row); + }, + checkUsingReferDict(row){ + if (row.referToId !== null && row.referToId !== ""){ + this.itemForm.activeName = 'referTab'; + this.itemForm.referInitFlag = true; + this.itemForm.enumInitFlag = false; + }else if (row.usingDict === 'true'){ + this.itemForm.activeName = 'enumTab'; + this.itemForm.referInitFlag = false; + this.itemForm.enumInitFlag = true; + getDictionary({code: row.dictCode}).then(res => { + this.editAttribute.dictValue = res.data.data[0].label; + this.itemForm.itemData.dictValue = this.editAttribute.dictValue; + this.$refs.originalAdd.dictEnums = res.data.data; + }) + }else { + this.itemForm.activeName = 'referTab'; + this.itemForm.referInitFlag = true; + this.itemForm.enumInitFlag = false; + } + }, + selectBtmType() { + this.referType.display = true; + this.referType.title = "璇烽�夋嫨" + this.referType.value; + }, + applyRangeOpen() { + if (!this.selectRow && this.selectRow != 0) { + this.$message({ + type: "warning", + message: "璇峰厛閫夋嫨灞炴��" + }); + } + var oid = this.data[this.selectRow].oid; + getApplyRange(oid).then(res => { + this.applyRangeData = res.data.data; + this.$refs.applyRange.rangeData = this.applyRangeData; + this.$refs.applyRange.showDialog = true; + + }); + }, + /** 楂樼骇鏌ヨ瀵硅瘽妗嗙粍浠�,缁勪欢杩斿洖鐨勫�兼槸condtionMap[field]褰㈠紡鐨勬煡璇㈡潯浠讹紝淇濈暀浜嗗拰涔嬪墠涓�鏍风殑鏂瑰紡 */ + echoSeniorContionMap(conditionMaps){ + if(JSON.stringify(conditionMaps)!='{}'){ + this.query = conditionMaps; + this.onLoad(this.page); + } + }, + openAdvancedQuery(){ + this.advancedQueryParam.options = [ + { + data: [], + title: '缂栧彿', + fieldType: 'text', + queryField: 'id', + },{ + data: [], + title: '鍚嶇О', + fieldType: 'text', + queryField: 'name', + },{ + data: [], + title: '鎻忚堪', + fieldType: 'text', + queryField: 'description', + },{ + data: [ + // { + // key: '缂栬緫涓�', + // value: 'Editing', + // }, + // { + // key: '宸插彂甯�', + // value: 'Released', + // }, + // { + // key: '鍋滅敤', + // value: 'Disabled', + // }, + ], + title: '鐘舵��', + fieldType: 'combox', + queryField: 'lcStatus', + comboxKey: 'codeSearchLCStatus', + }, + ] + + this.advancedQueryParam.currentOpen = 'info'; + this.advancedQueryParam.advancedQuerySettingBox = true; + }, + } +} +</script> + +<style lang="scss"> +.applyRangeTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu { + display: none !important; +} +</style> -- Gitblit v1.9.3