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 | 218 ++++++++++++++++++++++++++++++++++------------------- 1 files changed, 139 insertions(+), 79 deletions(-) diff --git a/Source/UBCS-WEB/src/views/docking/info.vue b/Source/UBCS-WEB/src/views/docking/info.vue index 9caf94c..08f7265 100644 --- a/Source/UBCS-WEB/src/views/docking/info.vue +++ b/Source/UBCS-WEB/src/views/docking/info.vue @@ -2,28 +2,45 @@ <el-container> <el-main> <basic-container> - <avue-crud ref="crud" v-model="form" :data="data" :option="option" :page.sync="page" @on-load="onLoad" + <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" :cell-style="cellStyle"> + @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)" :disabled="row.usedFlag === 'true' ? false :true">缂栬緫</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 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-else icon="el-icon-finished" size="small" type="text" @click="DISABLE(row,index)">鍋滅敤 + <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 icon="el-icon-plus" size="small" type="primary" @click="addSave">鏂� 澧� + <el-button v-if="permissionList.add" icon="el-icon-plus" size="small" type="primary" + @click="addSave"> + 鏂� 澧� </el-button> - <el-button icon="el-icon-share" size="small" @click="PUSH">鍚� 姝� + <el-button v-if="permissionList.sync" icon="el-icon-share" size="small" @click="PUSH">鍚� 姝� </el-button> - <el-button icon="el-icon-search" size="small" @click="openAdvancedQuery">鏌� 璇� + <el-button v-if="permissionList.query" icon="el-icon-search" size="small" + @click="openAdvancedQuery">鏌� 璇� </el-button> </template> </avue-crud> @@ -42,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}, + data() { return { + //涓嬫媺鎬荤被鍨� + DropDownTheTotalType: [], //鎺ュ彛绫诲瀷涓嬫媺 interfaceTypeList: [{ label: 'webService', value: 'webService' @@ -72,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: '鍒嗙被鎺ㄩ��'}, @@ -81,7 +110,7 @@ {value: '6', label: '鍚鍒欎俊鎭殑鍒嗙被鏌ヨ'}, {value: '7', label: '鏁版嵁鏌ヨ'}], page: { - pageSize: 10, + pageSize: 20, currentPage: 1, total: 100 }, @@ -93,57 +122,59 @@ 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: [ { + column: [{ label: '鏄惁鍚敤', prop: 'usedFlag', width: 150, formatter: res => res.usedFlag === "true" ? "鍚敤" : "鍋滅敤" - },{ + }, { label: '闆嗘垚绯荤粺', prop: 'sysBaseName', sortable: true, width: 150 - },{ + }, { label: '鍒嗙被閫夋嫨', prop: 'classifyName', - align:'center', + align: 'center', // sortable: true, width: 150 - },{ + }, { label: '缂栫爜绫诲瀷', prop: 'isGroupCodeFlag', sortable: true, width: 150, - formatter: res => res.isGroupCodeFlag ? '闆嗗洟鐮�' : '浼佷笟缂栫爜' - },{ + formatter: res => res.isGroupCodeFlag === 'true' ? '闆嗗洟鐮�' : '浼佷笟缂栫爜' + }, { label: '鎺ュ彛绫诲瀷', - prop:'dataFlowTypeText', - align:'center', + prop: 'dataFlowTypeText', + align: 'center', sortable: true, - width:150, - },{ + width: 150, + }, { label: '鎺ㄩ�佺被鍨�', prop: 'pushTypeText', sortable: true, - overHidden:true, - align:'center', + overHidden: true, + align: 'center', width: 150, //pushTypeList浣滅敤鍩� // formatter: (d) => { @@ -153,57 +184,59 @@ label: '绯荤粺缂栧彿', prop: 'id', sortable: true, - hide:true, + hide: true, width: 150 }, { label: '绯荤粺鍚嶇О', prop: 'name', - hide:true, + hide: true, sortable: true, width: 150 - },{ + }, { label: '鎺ュ彛鏂瑰紡', prop: 'interfaceType', // sortable: true, width: 150 - },{ + }, { label: '绫昏矾寰�', prop: 'classPath', // sortable: true, width: 150 - },{ + }, { label: 'soapAction', prop: 'soapAction', + overHidden: true, sortable: true, - width: 150 - }, { + width: 200 + }, { label: '璋冪敤鏂瑰紡', prop: 'cxfaxis', sortable: true, width: 150 }, { - label: '璇锋眰鏂瑰紡', - prop: 'requestMethod', - align:'center', - // sortable: true, - width: 150 - }, { + label: '璇锋眰鏂瑰紡', + prop: 'requestMethod', + align: 'center', + // sortable: true, + width: 150 + }, { label: '璇锋眰鍦板潃', prop: 'requestUrl', sortable: true, - width: 150 - }, { + overHidden: true, + width: 200 + }, { label: '鎺ュ彛鍑芥暟', prop: 'interfaceFunction', sortable: true, - align:'center', + align: 'center', width: 150 }, { - label: '鍙傛暟鍚嶇О', - prop: 'targetName', - sortable: true, - width: 150 - },{ + label: '鍙傛暟鍚嶇О', + prop: 'targetName', + sortable: true, + width: 150 + }, { label: '鍙傛暟绫诲瀷', prop: 'paramType', sortable: true, @@ -224,6 +257,14 @@ prop: 'nameSpace', sortable: true, width: 150 + }, { + label: '鍐呭绫诲瀷', + prop: 'contentType', + sortable: true, + width: 150, + formatter: (d) => { + return this.contentTypeList[d.contentType] + } },{ label: '绯荤粺鎻忚堪', prop: 'description', @@ -243,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 => { @@ -251,7 +304,7 @@ return oids.join(","); } }, - watch:{ + watch: { // editAttribute:{ // immediate: true, // handler(newData) { @@ -261,9 +314,9 @@ }, methods: { //鍗曞厓鏍兼牱寮� - cellStyle(row,column,rowIndex,columnIndex){ - if(row.columnIndex==2) { - if(row.row.usedFlag == 'false'){ + cellStyle(row, column, rowIndex, columnIndex) { + if (row.columnIndex == 2) { + if (row.row.usedFlag == '' || row.row.usedFlag == 'false') { return { color: 'red', fontWeight: 'bold', @@ -325,10 +378,17 @@ this.editAttribute.sysIntParamVOs = row.sysIntParamVOs || []; this.editAttribute.sysIntHeaderVOs = row.sysIntHeaderVOs || []; this.editAttribute.type = 'edit'; - this.$refs.infoForm.formData = this.editAttribute; + this.$refs.infoForm.formData = row; + this.$refs.infoForm.groupCode = row.isGroupCodeFlag === 'true' ? true : false; this.$refs.infoForm.showSubmitDialog = true; - console.log('row',row.dataFlowTypeText) - console.log('editAttribute',this.editAttribute.dataFlowTypeText) + //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) { this.$confirm("鍒犻櫎鏁版嵁灏嗘棤娉曡鎭㈠, 鏄惁缁х画?", "鎻愮ず", { @@ -338,7 +398,7 @@ showClose: true, type: "warning" }).then(() => { - del({oids:row.oid}).then(res => { + del({oids: row.oid}).then(res => { this.$message.success("鍒犻櫎鎴愬姛"); this.refreshChange(); }); @@ -400,30 +460,10 @@ onLoad(page, params = {}) { this.loading = true; getList(this.page.currentPage, this.page.pageSize, Object.assign(params, this.query)).then(res => { - console.log(res) + // console.log(res) const data = res.data.data; this.page.total = data.total; this.data = data.records; - // const Props = { - // paramType: '', - // returnType: '', - // dataFlowType: '', - // pushType: '', - // classifyName: '', - // sourceSystemName: '', - // targetSystemName: '', - // classPath:'', - // requestMethod:'', - // requestUrl:'', - // interfaceFunction:'', - // nameSpace:'', - // soapAction:'', - // targetName:'', - // cxfaxis:'' - // }; - // this.pushTypeList.forEach(item => { - // Object.assign(item, Props); - // }); this.loading = false; }); }, @@ -437,6 +477,9 @@ if (JSON.stringify(conditionMaps) != '{}') { this.query = conditionMaps; this.onLoad(this.page); + } else { + this.query = {}; + this.onLoad(this.page, this.query); } }, openAdvancedQuery() { @@ -499,8 +542,25 @@ } </script> -<style lang="scss"> +<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