From ee7d7c29b8d95f0adab3bd9d93fdb1af51565a2d Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 03 八月 2023 20:54:48 +0800 Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs --- Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue | 246 ++++++++++++++++++++++++++++++++++--------------- 1 files changed, 170 insertions(+), 76 deletions(-) diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue index 33e8bfe..0b8e3cd 100644 --- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue @@ -15,23 +15,38 @@ item.name }} </el-button> + <span v-if="tableHeadFindData.length > 0"> + <el-select v-model="keyWordFind" slot="prepend" placeholder="璇烽�夋嫨" size="small"> + <el-option v-for="item in tableHeadFindData" :label="item.label" :value="item.prop"></el-option> + </el-select> <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" style="width: 180px; margin-left: 5px; margin-top: 10px" - @keyup.enter.native="tableFindInp" v-if="tableData.length != 0"></el-input> + @keyup.enter.native="tableFindInp"></el-input> + </span> + <span v-if="tableHeadFindData.length > 0" style="margin-left: 10px"> + <p style="font-size: 13px;display: inline-block;"> 鐘舵�侊細</p> + <el-select slot="prepend" v-model="statusSelect" placeholder="璇烽�夋嫨" size="small" + @change="cellSelectHandler"> + <el-option label="鍏ㄩ儴" value="all"></el-option> + <el-option label="宸插彂甯�" value="Released"></el-option> + <el-option label="缂栬緫涓�" value="Editing"></el-option> + <el-option label="宸插仠鐢�" value="Disabled"></el-option> + <el-option label="瀹℃牳涓�" value="Auditing"></el-option> + </el-select></span> </div> - <el-table ref="dataTable" v-loading="isLoading" :data="tableData" + <el-table ref="dataTable" v-loading="isLoading" :data="tableData" :height="tableHeight" @select="handleSelection" @cell-click="handleCellClick" @row-click="handleRowClick" @select-all="handleSelectionAll" @selection-change="handleSelectionChange" @sort-change="sortChange"> - <el-table-column fixed type="selection" width="55" v-if="tableData.length != 0"></el-table-column> - <el-table-column fixed label="搴忓彿" type="index" width="55" v-if="tableData.length != 0"> + <el-table-column v-if="tableData.length != 0" fixed type="selection" width="55"></el-table-column> + <el-table-column v-if="tableData.length != 0" fixed label="搴忓彿" type="index" width="55"> </el-table-column> <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter" :label="item.label" :prop="item.prop" :show-overflow-tooltip="true" :sortable="item.sortable" - :width="item.label.length >= 4 ? '150' : item.label.length == 3 ? '120' : '90'" + :width="item.width" align="center"> </el-table-column> </el-table> @@ -54,19 +69,24 @@ :type="edit" :visible.sync="DataVisible"></FormTemplateDialog> <!-- 鍙戝竷--> - <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleFlow"></set-personnel> + <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleFlow" + @onLoad="onLoad"></set-personnel> <!-- 鍋滅敤--> - <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleDeactivate"></set-personnel> + <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleDeactivate" + @onLoad="onLoad"></set-personnel> <!-- 鍚敤--> - <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleEnable"></set-personnel> + <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleEnable" + @onLoad="onLoad"></set-personnel> <!-- 鍥炴敹--> - <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleRecovery"></set-personnel> + <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleRecovery" + @onLoad="onLoad"></set-personnel> <!-- 楂樼骇鏌ヨ--> <advanced-query :options="this.options" :visible.sync="findvisible" @echoContion="echoContion"></advanced-query> <!-- 瀵煎嚭--> - <MasterTransfer :codeClassifyOid="codeClassifyOid" :limit="page.pageSize" :templateOid="templateOid" :selectRow="selectRow" - :tableData="tableData" :tableHeadData="tableHeadFindData" + <MasterTransfer :codeClassifyOid="codeClassifyOid" :limit="page.pageSize" :selectRow="selectRow" + :tableData="tableData" + :tableHeadData="tableHeadFindData" :templateOid="templateOid" :visible.sync="dialogPush"></MasterTransfer> <!-- 鐩镐技椤�--> <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid" @@ -81,7 +101,8 @@ </div> </div> <div> - <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible" :resetTable="CrudRend"> + <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :resetTable="CrudRend" + :visible.sync="batchImportData.visible"> </BatchImport> </div> <div class="bottom"> @@ -95,8 +116,8 @@ </basic-container> </template> <script> -import {MasterTable, TableData, FindData, addSaveCode, editSaveCode} from "@/api/GetItem"; -import {processTS,changeStatus} from "@/api/template/setPersonnel" +import {MasterTable, TableData, FindData, addSaveCode, editSaveCode, deleteCode} from "@/api/GetItem"; +import {processTS, changeStatus} from "@/api/template/setPersonnel" import {listCodeAttributeByClassId} from "@/api/integration/integration.js"; import integrationTransfer from "@/views/integration/integrationTransfer"; import SetPersonnel from "@/components/template/SetPersonnel"; @@ -153,9 +174,16 @@ tableHeadBtnData: { type: Array, }, + Treedata:{ + type:Array + } }, data() { return { + // 鐘舵�佹悳绱� + statusSelect: "all", + // 鍏抽敭瀛楁煡璇� + keyWordFind:"", searchResults: [], //棣栭〉鍙充晶鎼滅储 WupinFindValue: "", @@ -164,6 +192,7 @@ //鍙戝竷 parameter: { ids: [], + btmtype:'', code: "", type: '', // this.visibleDeactivate ?'ENABLE':this.visibleEnable ? 'DISABLE' :this.visibleRecovery ? 'ROLLBACK' :'PUBLIC' @@ -234,20 +263,22 @@ hasDownload: true, hasUpload: true, height: 100 - } + }, + result: '' }; }, computed: {}, created() { + const index = this.$route.query.id.indexOf('@name=') + '@name='.length; + this.result = this.$route.query.id.substring(index); }, mounted() { - }, activated() { - // this.doLayout(); - this.$nextTick(() => { - this.$refs.dataTable.doLayout() - }) + this.doLayout() + }, + updated() { + this.doLayout() }, watch: { tableHeadDataFateher: { @@ -264,8 +295,11 @@ }, tableDataArray: { handler(newval, oldval) { + this.keyWordFind=''; + this.WupinFindValue='' this.tableData = newval; this.searchResults = newval + this.doLayout() }, }, tableHeadFindData: { @@ -308,9 +342,29 @@ } }, deep: true - } + }, }, methods: { + //鐘舵�佹悳绱� + cellSelectHandler(row) { + if (row === 'all') { + this.cellStatusFind() + } else { + this.cellStatusFind(row) + } + }, + cellStatusFind(lcstatus) { + TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + page: this.page.currentPage, + limit: this.page.pageSize, + 'conditionMap[lcstatus]': lcstatus + }).then(res => { + console.log(res) + this.tableData = res.data.data + }) + }, //灞曞紑闄勪欢 handleCollapse(activeNames) { if (activeNames.length > 0) { @@ -344,6 +398,8 @@ if (uniqueFlag === 'CODEENABLE') return this.Enable() //鍥炴敹 if (uniqueFlag === 'CODERECYCLE') return this.Recovery() + //鍒犻櫎 + if (uniqueFlag === 'CODEDELETE') return this.enumDeleteRow() // 鐩镐技椤规煡璇� // if(uniqueFlag === 'CODEEDIT') return this.similarHandler() }); @@ -370,6 +426,7 @@ }, // 鍙戝竷 setHandler() { + console.log('Treedata',this.Treedata) if (this.selectRow.length > 0) { let hasEditing = this.selectRow.some(item => item.lcstatus !== 'Editing'); let showMessage = true; @@ -382,25 +439,27 @@ showMessage = false; } else if (showMessage) { processTS({templateId: this.templateOid, buttonTypeKey: 'PUBLIC'}).then(res => { - if (res.data.records != [] && res.data.code != 200) { + if (res.data.data.records && res.data.data.records.length != 0) { this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.parameter.type = 'PUBLIC' + this.parameter.template = this.userName + '-鐢宠[' + this.Treedata[0].name + '-' + this.selectRow[0].name + ']'; + this.parameter.type = 'PUBLIC'; + this.parameter.code = this.templateOid; + this.parameter.btmtype=this.selectRow[0].btmname || this.selectRow[0].btmtype; this.title = '娴佺▼瀹℃壒' this.visibleFlow = true; - this.onLoad() } else { this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', { confirmButtonText: '纭畾', cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { - this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.parameter.type = 'PUBLIC' - this.title = '娴佺▼瀹℃壒' - this.visibleFlow = true; - this.onLoad() + const oid = this.selectRow.map(obj => obj.oid).join(","); + changeStatus({oid: oid, btmname: this.selectRow[0].btmname, lcStatus: 'Released'}).then(res => { + if (res.data.code == 200) { + this.$message.success('鍙戝竷鎴愬姛') + this.onLoad() + } + }); }).catch(() => { this.$message({ type: 'info', @@ -426,15 +485,17 @@ if (this.selectRow.length === 1 && item.lcstatus === "Disabled" && showMessage) { this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�'); showMessage = false; - } else if (this.selectRow.length >=1 && !hasEditing && showMessage) { + } else if (this.selectRow.length > 1 && !hasEditing && showMessage) { this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼'); showMessage = false; - } else if (this.selectRow.length > 1 && hasEditing && showMessage) { - processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { - if (res.data.records != [] && res.data.code != 200) { + } else if (this.selectRow.length >= 1 && hasEditing && showMessage) { + processTS({templateId: this.templateOid, buttonTypeKey: 'DISABLE'}).then(res => { + if (res.data.records != [] && res.data.data.records.length != 0) { this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "鍋滅敤" + "[鐗╁搧]"; - this.parameter.type = 'DISABLE' + this.parameter.template = this.userName + '-鍋滅敤[' + this.Treedata[0].name + '-' + this.selectRow[0].name + ']'; + this.parameter.type = 'DISABLE'; + this.parameter.code = this.templateOid + this.parameter.btmtype=this.selectRow[0].btmname || this.selectRow[0].btmtype; this.title = '鍋滅敤锛堝喕缁擄級缂栫爜鏁版嵁' this.visibleDeactivate = true; } else { @@ -445,15 +506,13 @@ cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { - const index = this.$route.query.id.indexOf('@'); - const result = this.$route.query.id.substring(0, index); const oid = this.selectRow.map(obj => obj.oid).join(","); - changeStatus({ oid: oid, btmname: result, lcStatus: 'Disabled' }).then(res => { - if(res.data.code == 200 ){ - this.$message.success('鍋滅敤鎴愬姛') - this.onLoad() - } - }); + changeStatus({oid: oid, btmname: this.selectRow[0].btmname, lcStatus: 'Disabled'}).then(res => { + if (res.data.code == 200) { + this.$message.success('鍋滅敤鎴愬姛') + this.onLoad() + } + }); }).catch(() => { this.$message({ type: 'info', @@ -463,7 +522,7 @@ } } }); - }else { + } else if(this.selectRow.length == 1 && !hasEditing && showMessage ) { this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼') } }); @@ -480,12 +539,15 @@ if (this.selectRow.length === 1 && item.lcstatus !== "Disabled" && showMessage) { this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�'); showMessage = false; - } else if (this.selectRow.length >=1 && hasEditing && showMessage) { - processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { - if (res.data.records != [] && res.data.code != 200) { + } else if (this.selectRow.length >= 1 && hasEditing && showMessage) { + processTS({templateId: this.templateOid, buttonTypeKey: 'ENABLE'}).then(res => { + if (res.data.data.records && res.data.data.records.length != 0) { + this.parameter = res.data.data.records[0] this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "鍚敤" + "[鐗╁搧]"; - this.parameter.type = 'Released' + this.parameter.template = this.userName + '-鍚敤[' + this.Treedata[0].name + '-' + this.selectRow[0].name + ']'; + this.parameter.type = 'Released'; + this.parameter.code = this.templateOid + this.parameter.btmtype=this.selectRow[0].btmname || this.selectRow[0].btmtype; this.title = '鍚敤缂栫爜鏁版嵁' this.visibleDeactivate = true; } else { @@ -496,11 +558,9 @@ cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { - const index = this.$route.query.id.indexOf('@'); - const result = this.$route.query.id.substring(0, index); const oid = this.selectRow.map(obj => obj.oid).join(","); - changeStatus({ oid: oid, btmname: result, lcStatus: 'Released' }).then(res => { - if(res.data.code == 200 ){ + changeStatus({oid: oid, btmname: this.selectRow[0].btmname, lcStatus: 'Released'}).then(res => { + if (res.data.code == 200) { this.$message.success('鍚敤鎴愬姛') this.onLoad() } @@ -514,7 +574,7 @@ } } }); - } else if (this.selectRow.length >1 && !hasEditing && showMessage) { + } else if (this.selectRow.length > 1 && !hasEditing && showMessage) { this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬併�戞墠鍙互鍙戣捣娴佺▼'); showMessage = false; } @@ -537,13 +597,15 @@ if (this.selectRow.length === 1 && item.lcstatus == "TakeBack" && showMessage) { this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�'); showMessage = false; - } else if (this.selectRow.length >=1 && (disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { + } else if (this.selectRow.length >= 1 && (disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { //disabledCount 鍜� releasedCount 涓换鎰忎竴涓瓑浜� this.selectRow 鏁扮粍鐨勯暱搴﹀垯琛ㄧず鍏ㄩ儴鏄悓涓�绉嶇姸鎬侊紝杩斿洖 true 濡傛灉disabledCount 鍜� releasedCount 閮藉ぇ浜�0锛屽垯琛ㄧず鏃㈡湁Disabled涔熸湁Released杩斿洖 true - processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { - if (res.data.records != [] && res.data.code != 200) { + processTS({templateId: this.templateOid, buttonTypeKey: 'ROLLBACK'}).then(res => { + if (res.data.records != [] && res.data.data.records.length != 0) { this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "鍥炴敹" + "[鐗╁搧]"; - this.parameter.type = 'TakeBack' + this.parameter.template = this.userName + '-鍥炴敹[' + this.selectRow[0].btmname + '-' + this.selectRow[0].name + ']'; + this.parameter.type = 'TakeBack'; + this.parameter.code = this.templateOid + this.parameter.btmtype=this.selectRow[0].btmname || this.selectRow[0].btmtype; this.title = '鍥炴敹缂栫爜鏁版嵁' this.visibleDeactivate = true; } else { @@ -554,11 +616,9 @@ cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { - const index = this.$route.query.id.indexOf('@'); - const result = this.$route.query.id.substring(0, index); const oid = this.selectRow.map(obj => obj.oid).join(","); - changeStatus({ oid: oid, btmname: result, lcStatus: 'TakeBack' }).then(res => { - if(res.data.code == 200 ){ + changeStatus({oid: oid, btmname: this.selectRow[0].btmname, lcStatus: 'TakeBack'}).then(res => { + if (res.data.code == 200) { this.$message.success('鍥炴敹鎴愬姛') this.onLoad() } @@ -572,9 +632,11 @@ } } }); - } else if (this.selectRow.length >=1 && !(disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { + } else if (showMessage && this.selectRow.length > 1 && !(disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0)) { this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬佹垨鍙戝竷鐘舵�併�戞墠鍙互鍙戣捣娴佺▼'); showMessage = false; + } else if (showMessage) { + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹负銆愬仠鐢ㄧ姸鎬佹垨鍙戝竷鐘舵�併�戞墠鍙互鍙戣捣娴佺▼') } }); } @@ -608,16 +670,43 @@ }, //鍒犻櫎 enumDeleteRow(row) { - this.tableData.splice(row, 1); + this.$confirm('鏄惁鍒犻櫎閫変腑鏁版嵁?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + const list = []; + this.selectRow.forEach((item) => { + list.push(item.oid) + }) + deleteCode({codeClassifyOid: this.codeClassifyOid, oidList: list}).then(res => { + console.log(res) + if (res.data.code === 200) { + this.$message({ + type: 'success', + message: '鍒犻櫎鎴愬姛!' + }); + } + this.onLoad() + }) + }).catch(() => { + this.$message({ + type: 'info', + message: '宸插彇娑堝垹闄�' + }); + }); }, // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬� saveRow() { this.editingRow = null; }, + //琛ㄦ牸閿欒闂 doLayout() { this.$nextTick(() => { - this.$refs.crud.doLayout(); - }); + if (this.$refs.dataTable && this.$refs.dataTable.doLayout) { + this.$refs.dataTable.doLayout(); + } + }) }, //琛ㄦ牸澶存覆鏌� CrudHeaderRend() { @@ -688,11 +777,13 @@ limit: this.page.pageSize, }).then((res) => { this.tableData = res.data.data; + this.doLayout() }); }, //澶氶�� handleSelectionChange(list) { this.selectRow = list; + console.log(this.selectRow) this.parameter.ids = []; list.forEach((item) => { this.parameter.ids.push(item.oid); @@ -787,13 +878,16 @@ this.$message.warning('杈撳叆鍊间笉鑳戒负绌�') return; } - this.tableData = this.searchResults.filter(item => { - if (typeof item.name === 'string') { - return item.name.includes(this.WupinFindValue); - } else { - return false; // item.name涓嶆槸瀛楃涓茬被鍨嬶紝杩斿洖false - } - }); + TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + page: this.page.currentPage, + limit: this.page.pageSize, + [ 'conditionMap[' + this.keyWordFind + ']']: '*' + this.WupinFindValue + '*' + }).then(res => { + console.log(res) + this.tableData = res.data.data + }) } } -- Gitblit v1.9.3