From d6f94d02fd033c1c0a68fe2d4e987eb233d2afb1 Mon Sep 17 00:00:00 2001 From: 田源 <tianyuan@vci-tech.com> Date: 星期三, 05 三月 2025 18:05:03 +0800 Subject: [PATCH] 整合代码 --- Source/UBCS-WEB/src/views/docking/info.vue | 400 +++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 278 insertions(+), 122 deletions(-) diff --git a/Source/UBCS-WEB/src/views/docking/info.vue b/Source/UBCS-WEB/src/views/docking/info.vue index 0360a59..08f7265 100644 --- a/Source/UBCS-WEB/src/views/docking/info.vue +++ b/Source/UBCS-WEB/src/views/docking/info.vue @@ -2,31 +2,51 @@ <el-container> <el-main> <basic-container> - <avue-crud v-model="form" ref="crud" :option="option" :data="data" @on-load="onLoad" :page.sync="page" + <avue-crud ref="crud" v-model="form" :cell-style="cellStyle" :data="data" :option="option" :page.sync="page" + :permission="permissionList" + @on-load="onLoad" @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange" - @size-change="sizeChange" - @refresh-change="refreshChange" @row-click="rowClick"> + @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> + <el-button v-if="permissionList.edit" :disabled="row.usedFlag === 'true' ? false :true" + icon="el-icon-edit" size="small" + type="text" + @click="updateSave(row,index)">缂栬緫 + </el-button> + <el-button v-if="permissionList.delete" icon="el-icon-delete" size="small" type="text" + @click="deleteSave(row,index)">鍒犻櫎 + </el-button> + <span v-if="permissionList.enable"> + + <el-button v-if="row.usedFlag=='false' || row.usedFlag==''" icon="el-icon-position" size="small" + type="text" @click="ENABLE(row,index)">鍚敤 + </el-button> + </span> + <span v-if="permissionList.stop"> + <el-button v-if="row.usedFlag !== 'false' && row.usedFlag !== ''" icon="el-icon-finished" + size="small" + type="text" @click="DISABLE(row, index)">鍋滅敤 + </el-button> + </span> </template> <template slot="menuLeft"> - <el-button size="small" type="primary" icon="el-icon-plus" @click="addSave">鏂� 澧� + <el-button v-if="permissionList.add" icon="el-icon-plus" size="small" type="primary" + @click="addSave"> + 鏂� 澧� </el-button> - <el-button size="small" icon="el-icon-share" @click="PUSH">鍚� 姝� + <el-button v-if="permissionList.sync" icon="el-icon-share" size="small" @click="PUSH">鍚� 姝� </el-button> - <el-button size="small" icon="el-icon-search" @click="openAdvancedQuery">鏌� 璇� + <el-button v-if="permissionList.query" icon="el-icon-search" size="small" + @click="openAdvancedQuery">鏌� 璇� </el-button> </template> </avue-crud> </basic-container> </el-main> - <infoForm ref="infoForm" @refreshTable="refreshChange" :formData="editAttribute"></infoForm> + <infoForm ref="infoForm" :formData="editAttribute" @refreshTable="refreshChange"></infoForm> <!-- 楂樼骇鏌ヨ瀵硅瘽妗� --> <advanced-query :ref="advancedQueryParam.ref" @@ -39,16 +59,20 @@ <script> import { - getList,add,edit,del,push,updateStatus + getList, add, edit, del, push, updateStatus, HeaderRequest, ParmRequest } from "@/api/docking/info"; import {getDictionary} from "@/api/omd/enum"; import infoForm from "./infoForm.vue"; +import {mapGetters} from "vuex"; export default { name: "info", - components:{infoForm}, + components: {infoForm}, + data() { return { + //涓嬫媺鎬荤被鍨� + DropDownTheTotalType: [], //鎺ュ彛绫诲瀷涓嬫媺 interfaceTypeList: [{ label: 'webService', value: 'webService' @@ -69,6 +93,14 @@ }, { label: 'Json', value: 'json' }], + //鍐呭绫诲瀷 + contentTypeList: [{ + label:'application/json',value:'application/json' + },{ + label:'application/x-www-form-urlencoded',value:'application/x-www-form-urlencoded' + },{ + label:'multipart/form-data',value:'multipart/form-data' + }], //鎺ㄩ�佺被鍨� pushTypeList: [{value: '1', label: '鏁版嵁鎺ㄩ��'}, {value: '2', label: '鍒嗙被鎺ㄩ��'}, @@ -78,7 +110,7 @@ {value: '6', label: '鍚鍒欎俊鎭殑鍒嗙被鏌ヨ'}, {value: '7', label: '鏁版嵁鏌ヨ'}], page: { - pageSize: 10, + pageSize: 20, currentPage: 1, total: 100 }, @@ -90,69 +122,118 @@ option: { height: "auto", calcHeight: 20, + columnBtn: false, tip: false, headerAlign: "center", border: true, index: true, selection: true, + indexFixed: false, + selectionFixed: false, searchShow: false, + refreshBtn: false, searchMenuSpan: 6, rowKey: "id", tabs: true, stripe: true, - indexFixed: false, menuWidth: 180, highlightCurrentRow: true, addBtn: false, editBtn: false, delBtn: false, - columnBtn: false, column: [{ - label: '鎺ㄩ�佺被鍨�', - prop: 'pushType', + label: '鏄惁鍚敤', + prop: 'usedFlag', + width: 150, + formatter: res => res.usedFlag === "true" ? "鍚敤" : "鍋滅敤" + }, { + label: '闆嗘垚绯荤粺', + prop: 'sysBaseName', + sortable: true, + width: 150 + }, { + label: '鍒嗙被閫夋嫨', + prop: 'classifyName', + align: 'center', + // sortable: true, + width: 150 + }, { + label: '缂栫爜绫诲瀷', + prop: 'isGroupCodeFlag', sortable: true, width: 150, - formatter:function (d){ - return this.pushTypeList[d.pushType] - } + formatter: res => res.isGroupCodeFlag === 'true' ? '闆嗗洟鐮�' : '浼佷笟缂栫爜' + }, { + label: '鎺ュ彛绫诲瀷', + prop: 'dataFlowTypeText', + align: 'center', + sortable: true, + width: 150, + }, { + label: '鎺ㄩ�佺被鍨�', + prop: 'pushTypeText', + sortable: true, + overHidden: true, + align: 'center', + width: 150, + //pushTypeList浣滅敤鍩� + // formatter: (d) => { + // return this.pushTypeList[d.pushType] + // } }, { label: '绯荤粺缂栧彿', prop: 'id', sortable: true, + hide: true, width: 150 }, { label: '绯荤粺鍚嶇О', prop: 'name', + hide: true, sortable: true, width: 150 }, { - label: '鎺ュ彛鍑芥暟', - prop: 'interfaceFunction', - sortable: true, + label: '鎺ュ彛鏂瑰紡', + prop: 'interfaceType', + // sortable: true, width: 150 }, { - label: '鍛藉悕绌洪棿', - prop: 'nameSpace', - sortable: true, + label: '绫昏矾寰�', + prop: 'classPath', + // sortable: true, width: 150 }, { label: 'soapAction', prop: 'soapAction', + overHidden: true, sortable: true, - width: 150 - }, { - label: '鍙傛暟鍚嶇О', - prop: 'targName', - sortable: true, - width: 150 + width: 200 }, { label: '璋冪敤鏂瑰紡', prop: 'cxfaxis', sortable: true, width: 150 }, { + label: '璇锋眰鏂瑰紡', + prop: 'requestMethod', + align: 'center', + // sortable: true, + width: 150 + }, { label: '璇锋眰鍦板潃', prop: 'requestUrl', + sortable: true, + overHidden: true, + width: 200 + }, { + label: '鎺ュ彛鍑芥暟', + prop: 'interfaceFunction', + sortable: true, + align: 'center', + width: 150 + }, { + label: '鍙傛暟鍚嶇О', + prop: 'targetName', sortable: true, width: 150 }, { @@ -160,7 +241,7 @@ prop: 'paramType', sortable: true, width: 150, - formatter:function (d){ + formatter: (d) => { return this.paramTypeList[d.paramType] } }, { @@ -168,10 +249,23 @@ prop: 'returnType', sortable: true, width: 150, - formatter:function (d){ + formatter: (d) => { return this.returnTypeList[d.returnType] } }, { + label: '鍛藉悕绌洪棿', + prop: 'nameSpace', + sortable: true, + width: 150 + }, { + label: '鍐呭绫诲瀷', + prop: 'contentType', + sortable: true, + width: 150, + formatter: (d) => { + return this.contentTypeList[d.contentType] + } + },{ label: '绯荤粺鎻忚堪', prop: 'description', width: 150 @@ -190,6 +284,18 @@ created() { }, computed: { + ...mapGetters(["permission"]), + permissionList() { + return { + sync: this.vaildData(this.permission.info.info_sync, false), + add: this.vaildData(this.permission.info.info_add, false), + query: this.vaildData(this.permission.info.info_query, false), + edit: this.vaildData(this.permission.info.info_edit, false), + delete: this.vaildData(this.permission.info.info_delete, false), + enable: this.vaildData(this.permission.info.info_enable, false), + stop: this.vaildData(this.permission.info.info_stop, false), + } + }, oids() { let oids = []; this.selectionList.forEach(ele => { @@ -198,7 +304,27 @@ return oids.join(","); } }, + watch: { + // editAttribute:{ + // immediate: true, + // handler(newData) { + // this.$refs.infoForm.formData = Object.assign({}, newData); + // } + // } + }, methods: { + //鍗曞厓鏍兼牱寮� + cellStyle(row, column, rowIndex, columnIndex) { + if (row.columnIndex == 2) { + if (row.row.usedFlag == '' || row.row.usedFlag == 'false') { + return { + color: 'red', + fontWeight: 'bold', + fontSize: '20' + } + } + } + }, searchReset() { this.query = {}; this.onLoad(this.page); @@ -211,11 +337,11 @@ }, selectionChange(list) { this.selectionList = list; - if(this.selectionList.length <= 0){ + if (this.selectionList.length <= 0) { this.selectRow = null } if (this.selectionList.length > 0) { - this.selectRow = this.selectionList[list.length-1].$index; + this.selectRow = this.selectionList[list.length - 1].$index; } }, selectionClear() { @@ -234,27 +360,37 @@ addSave() { this.$refs.infoForm.showSubmitDialog = true; this.$refs.infoForm.formData = { - dataFlowType:'push', - pushType:'1', - sourceSystemName:'缂栫爜绯荤粺', - sourceSystemOid:'code00000001', - sourceSystemId:'CODE', - targetSystemName:'', - targetSystemOid:'', - targetSystemId:'', - sysIntParamVOs:[], - sysIntHeaderVOs:[] + dataFlowType: '', + pushType: '', + sourceSystemName: '', + sourceSystemOid: '', + sourceSystemId: '', + targetSystemName: '', + targetSystemOid: '', + targetSystemId: '', + sysIntParamVOs: [], + sysIntHeaderVOs: [] }; }, - updateSave(row,index) { + updateSave(row, index) { this.selectRow = row; this.editAttribute = row; - this.editAttribute.sysIntParamVOs = row.sysIntParamVOs||[]; - this.editAttribute.sysIntHeaderVOs = row.sysIntHeaderVOs||[]; - this.$refs.infoForm.formData = this.editAttribute; + this.editAttribute.sysIntParamVOs = row.sysIntParamVOs || []; + this.editAttribute.sysIntHeaderVOs = row.sysIntHeaderVOs || []; + this.editAttribute.type = 'edit'; + this.$refs.infoForm.formData = row; + this.$refs.infoForm.groupCode = row.isGroupCodeFlag === 'true' ? true : false; this.$refs.infoForm.showSubmitDialog = true; + //header瀵硅薄 + HeaderRequest(1, -1, {'conditionMap[infoOid]': row.oid}).then(res => { + this.$refs.infoForm.formData.sysIntHeaderVOs = res.data.data.records; + }) + //鍙傛暟瀵硅薄 + ParmRequest(1, -1, {'conditionMap[infoOid]': row.oid}).then(res => { + this.$refs.infoForm.formData.sysIntParamVOs = res.data.data.records; + }) }, - deleteSave(row,index) { + deleteSave(row, index) { this.$confirm("鍒犻櫎鏁版嵁灏嗘棤娉曡鎭㈠, 鏄惁缁х画?", "鎻愮ず", { iconClass: 'el-icon-question', confirmButtonText: "纭畾", @@ -262,28 +398,28 @@ showClose: true, type: "warning" }).then(() => { - remove(row.oid).then(res => { + del({oids: row.oid}).then(res => { this.$message.success("鍒犻櫎鎴愬姛"); this.refreshChange(); }); }); }, - ENABLE(row,index){ + ENABLE(row, index) { //鍚敤 - this.updateStatus(row,"enable"); + this.updateStatus(row, "enable"); }, - DISABLE(row,index){ + DISABLE(row, index) { //鍋滅敤 - this.updateStatus(row,"disable"); + this.updateStatus(row, "disable"); }, - updateStatus(selectRow,able){ + updateStatus(selectRow, able) { var that = this; var paramTemp = { - update:able, - oid:selectRow.oid, - ts:selectRow.ts + update: able, + oid: selectRow.oid, + ts: selectRow.ts }; - this.$confirm("鏄惁瑕�"+(able == "enbale" ? "鍚敤" : (able == "disable" ? "鍋滅敤": "鍙戝竷")) +"杩欐潯鏁版嵁锛�", { + this.$confirm("鏄惁瑕�" + (able == "enbale" ? "鍚敤" : (able == "disable" ? "鍋滅敤" : "鍙戝竷")) + "杩欐潯鏁版嵁锛�", { confirmButtonText: "纭畾", cancelButtonText: "鍙栨秷", type: "warning" @@ -295,16 +431,16 @@ this.onLoad(this.page); this.$message({ type: "success", - message:(able == "enbale" ? "鍚敤鎴愬姛" : (able == "disable" ? "鍋滅敤鎴愬姛": "鍙戝竷鎴愬姛")) + message: (able == "enbale" ? "鍚敤鎴愬姛" : (able == "disable" ? "鍋滅敤鎴愬姛" : "鍙戝竷鎴愬姛")) }); }); }, - PUSH(){ + PUSH() { if (this.selectionList.length != 1) { this.$message.warning('璇烽�夋嫨鏁版嵁') return false; } - this.$confirm("鏄惁瑕�"+ (this.selectionList[0].pushType == "1" ? "鎺ㄩ�佹暟鎹�" : "鎺ㄩ�佸垎绫�"), { + this.$confirm("鏄惁瑕�" + (this.selectionList[0].pushType == "1" ? "鎺ㄩ�佹暟鎹�" : "鎺ㄩ�佸垎绫�"), { confirmButtonText: "纭畾", cancelButtonText: "鍙栨秷", type: "warning" @@ -324,8 +460,8 @@ onLoad(page, params = {}) { this.loading = true; getList(this.page.currentPage, this.page.pageSize, Object.assign(params, this.query)).then(res => { + // console.log(res) const data = res.data.data; - debugger; this.page.total = data.total; this.data = data.records; this.loading = false; @@ -337,64 +473,67 @@ this.$refs.crud.toggleRowSelection(row); //閫変腑褰撳墠琛� }, /** 楂樼骇鏌ヨ瀵硅瘽妗嗙粍浠�,缁勪欢杩斿洖鐨勫�兼槸condtionMap[field]褰㈠紡鐨勬煡璇㈡潯浠讹紝淇濈暀浜嗗拰涔嬪墠涓�鏍风殑鏂瑰紡 */ - echoSeniorContionMap(conditionMaps){ - if(JSON.stringify(conditionMaps)!='{}'){ + echoSeniorContionMap(conditionMaps) { + if (JSON.stringify(conditionMaps) != '{}') { this.query = conditionMaps; this.onLoad(this.page); + } else { + this.query = {}; + this.onLoad(this.page, this.query); } }, - openAdvancedQuery(){ - this.advancedQueryParam.options = [{ - data: this.pushTypeList, - title: '鎺ㄩ�佺被鍨�', - queryField: 'pushType', - fieldType: 'combox', - comboxKey: 'searchPushType' - }, { - title: '绯荤粺鍚嶇О', - queryField: 'sysBaseName', - fieldType: 'text' - }, { - title: '绯荤粺缂栧彿', - queryField: 'sysBaseId', - fieldType: 'text' - }, { - title: '鎺ュ彛鍑芥暟', - queryField: 'interfaceFunction', - fieldType: 'text' - }, { - title: '鍛藉悕绌洪棿', - queryField: 'nameSpace', - fieldType: 'text' - }, { - title: 'soapAction', - queryField: 'soapAction', - fieldType: 'text' - }, { - title: '鍙傛暟鍚嶇О', - queryField: 'targName', - fieldType: 'text' - }, { - title: '璋冪敤鏂瑰紡', - queryField: 'cxfaxis', - fieldType: 'text' - }, { - title: '璇锋眰鍦板潃', - queryField: 'requestUrl', - fieldType: 'text' - }, { - title: '鍙傛暟绫诲瀷', - queryField: 'paramType', - fieldType: 'combox', - comboxKey: 'searchparamType', - data:this.paramTypeList - }, { - title: '杩斿洖鍊肩被鍨�', - queryField: 'returnType', - fieldType: 'combox', - comboxKey: 'searchreturnType', - data:this.returnTypeList - }] + openAdvancedQuery() { + this.advancedQueryParam.options = [{ + data: this.pushTypeList, + title: '鎺ㄩ�佺被鍨�', + queryField: 'pushType', + fieldType: 'combox', + comboxKey: 'searchPushType' + }, { + title: '绯荤粺鍚嶇О', + queryField: 'sysBaseName', + fieldType: 'text' + }, { + title: '绯荤粺缂栧彿', + queryField: 'sysBaseId', + fieldType: 'text' + }, { + title: '鎺ュ彛鍑芥暟', + queryField: 'interfaceFunction', + fieldType: 'text' + }, { + title: '鍛藉悕绌洪棿', + queryField: 'nameSpace', + fieldType: 'text' + }, { + title: 'soapAction', + queryField: 'soapAction', + fieldType: 'text' + }, { + title: '鍙傛暟鍚嶇О', + queryField: 'targetName', + fieldType: 'text' + }, { + title: '璋冪敤鏂瑰紡', + queryField: 'cxfaxis', + fieldType: 'text' + }, { + title: '璇锋眰鍦板潃', + queryField: 'requestUrl', + fieldType: 'text' + }, { + title: '鍙傛暟绫诲瀷', + queryField: 'paramType', + fieldType: 'combox', + comboxKey: 'searchparamType', + data: this.paramTypeList + }, { + title: '杩斿洖鍊肩被鍨�', + queryField: 'returnType', + fieldType: 'combox', + comboxKey: 'searchreturnType', + data: this.returnTypeList + }] this.advancedQueryParam.currentOpen = 'info'; this.advancedQueryParam.advancedQuerySettingBox = true; @@ -403,8 +542,25 @@ } </script> -<style lang="scss"> -.applyRangeTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu { +<style lang="scss" scoped> +.applyRangeTable > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu { display: none !important; } + +// 婊氬姩鏉℃牱寮忎慨鏀� +// 婊氬姩鏉$殑瀹藉害 +/deep/ .el-table__body-wrapper::-webkit-scrollbar { + height: 15px; // 绾靛悜婊氬姩鏉� 蹇呭啓 + background: white; + border: white; + width: 10px; + +} + +// 婊氬姩鏉$殑婊戝潡 +/deep/ .el-table__body-wrapper::-webkit-scrollbar-thumb { + background-color: #ececec; + border-radius: 20px; + border: #ececec; +} </style> -- Gitblit v1.9.3