From 6b9c331b4499f463717c0ec64a8090d9a96ca7d7 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期二, 28 十一月 2023 10:26:40 +0800 Subject: [PATCH] 主数据申请-修订 主题库测试按钮 --- Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue | 171 +++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 123 insertions(+), 48 deletions(-) diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue index 0277de9..a8121e9 100644 --- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue @@ -6,15 +6,15 @@ <div> </div> <el-row style="width: 100%;margin-bottom: 10px"> - <div style="margin-bottom: 10px" > - <el-button v-for="(item, index) in masterVrBtnList" - v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)" - :key="index" plain size="small" - type="primary" - @click="handleBtnClick(item)">{{ - item.name - }} - </el-button> + <div style="margin-bottom: 10px"> + <el-button v-for="(item, index) in masterVrBtnList" + v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)" + :key="index" plain size="small" + type="primary" + @click="handleBtnClick(item)">{{ + item.name + }} + </el-button> <span v-if="tableHeadFindData.length > 0"> <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small"> <el-option v-for="item in tableHeadFindData" :key="item.id" :label="item.label" @@ -36,8 +36,8 @@ </el-select></span> </div> <div class="custom-table"> - <el-table class="cus-table" ref="dataTable" v-loading="isLoading" :data="tableData" - :height="tableHeight" border + <el-table ref="dataTable" v-loading="isLoading" :data="tableData" :height="tableHeight" + border class="cus-table" @select="handleSelection" @cell-click="handleCellClick" @row-click="handleRowClick" @select-all="handleSelectionAll" @selection-change="handleSelectionChange" @sort-change="sortChange"> @@ -45,24 +45,27 @@ <el-table-column v-if="tableData.length != 0" fixed label="搴忓彿" type="index" width="55"> </el-table-column> <!-- 鐢熷懡鍛ㄦ湡--> - <el-table-column v-for="(item,index) in lcstatusArray" key="index" v-if=" lcstatusArray.length !== 0 && !item.hidden" label="鐢熷懡鍛ㄦ湡鍊�" prop="lcstatus" - :show-overflow-tooltip="true" :sortable="item.sortable" :width="item.width" - align="center"> + <el-table-column v-for="(item,index) in lcstatusArray" v-if=" lcstatusArray.length !== 0 && !item.hidden" + key="index" :show-overflow-tooltip="true" :sortable="item.sortable" + :width="item.width" align="center" label="鐢熷懡鍛ㄦ湡鍊�" + prop="lcstatus"> <template slot-scope="scope"> <span>{{ scope.row.lcstatus_text }}</span> </template> </el-table-column> <!-- 缂栧彿--> - <el-table-column v-for="(item, index) in CodeArray" key="index" v-if="CodeArray.length !== 0 && !item.hidden" :label="item.label" :prop="item.prop" - :show-overflow-tooltip="true" :sortable="item.sortable" :width="item.width" - align="center"> + <el-table-column v-for="(item, index) in CodeArray" v-if="CodeArray.length !== 0 && !item.hidden" + key="index" :label="item.label" :prop="item.prop" + :show-overflow-tooltip="true" :sortable="item.sortable" :width="item.width" + align="center"> <template slot-scope="scope"> <el-link type="primary" @click="CodeLinkHandler(scope.row)"> {{ scope.row[item.prop] }} </el-link> </template> </el-table-column> - <el-table-column v-for="item in this.tableHeadFindData" v-if="!item.hidden && item.prop !== 'id' && item.prop !== 'lcstatus'" + <el-table-column v-for="item in this.tableHeadFindData" + v-if="!item.hidden && item.prop !== 'id' && item.prop !== 'lcstatus' && Object.keys(item.referConfig).length <= 0" :key="item.id" :formatter="item.formatter" :label="item.label" :prop="item.prop" @@ -71,21 +74,30 @@ :width="item.width" align="center"> </el-table-column> - + <!-- 鍙傜収鏁版嵁--> + <el-table-column v-for="(item,index) in referArray" v-if="item.referConfig && Object.keys(item.referConfig).length > 0 && !item.hidden" + :key="index" + :label="item.title" :show-overflow-tooltip="true" + :sortable="item.sortable" :width="item.width" align="center" + prop="jiliangdw"> + <template slot-scope="scope"> + <span>{{ scope.row.jiliangdwname }}</span> + </template> + </el-table-column> </el-table> </div> </el-row> <!-- 鐢宠--> <FormTemplateDialog :TreeValue="TreeValue" :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" :disabledProp="disabledProp" :templateOid="templateOid" - :visible.sync="applyvisible" + :visible.sync="applyvisible" status="apply" type="add" @submit="applySumbit"> </FormTemplateDialog> <!-- 淇--> <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'淇敼缂栫爜淇℃伅'" - :visible.sync="amendvisible" + :visible.sync="amendvisible" status="amend" type="edit" @submit="amendSumbit"></FormTemplateDialog> <!-- 鏂板--> <FormTemplateDialog :TreeValue="TreeValue" :codeClassifyOid="this.codeClassifyOid" @@ -99,9 +111,11 @@ :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'淇敼缂栫爜淇℃伅'" :visible.sync="editvisible" type="edit" @submit="EditSumbit"></FormTemplateDialog> + <!-- 鎵归噺缂栬緫--> + <!-- <MasterEditBulk :visible.sync="bulkeditvisible" ></MasterEditBulk>--> <!-- 鏁版嵁璇︽儏--> <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" - :rowOid="this.LinkObject.oid" :templateOid="templateOid" + :rowOid="this.LinkObject.oid" :templateOid="templateOid" :title="'鏁版嵁璇︽儏'" :visible.sync="LinkVisible" type="detail"></FormTemplateDialog> @@ -131,6 +145,11 @@ :tableData="tableData" :tableHeadData="tableHeadFindData" :templateOid="templateOid" :visible.sync="dialogPush"></MasterTransfer> + <!-- 瀵煎叆--> + <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :resetTable="CrudRend" + :selectRow="selectRow" :tableHeadData="tableHeadFindData" + :visible.sync="batchImportData.visible"> + </BatchImport> <!-- 鐩镐技椤�--> <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid" :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog> @@ -142,11 +161,6 @@ </el-pagination> </div> </div> - </div> - <div> - <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :resetTable="CrudRend" - :visible.sync="batchImportData.visible"> - </BatchImport> </div> <div class="bottom"> <el-collapse v-model="visibleNames" @change="handleCollapse"> @@ -168,7 +182,8 @@ deleteCode, upSaveCode, applyGroupCode, - receiveEditApply + receiveEditApply, + applySaveCode } from "@/api/GetItem"; import {processTS, changeStatus} from "@/api/template/setPersonnel" import {listCodeAttributeByClassId} from "@/api/integration/integration.js"; @@ -176,6 +191,7 @@ import SetPersonnel from "@/components/template/SetPersonnel"; import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue"; import BatchImport from '@/components/BatchImport' +import MasterEditBulk from '@/components/Master/MasterEditBulk' import {validatenull} from "@/util/validate"; import fileInHtml from "@/components/file/inHtml.vue"; import {getUserInfo} from "@/api/system/user"; @@ -187,7 +203,8 @@ SetPersonnel, ResembleQueryDialog, BatchImport, - fileInHtml + fileInHtml, + MasterEditBulk }, name: "Crud.vue", props: { @@ -236,17 +253,26 @@ Treedata: { type: Array }, - + nodeClickList: { + type: Array, + default: [] + } }, data() { return { + //鎵归噺缂栬緫瀵硅瘽妗� + bulkeditvisible: false, LinkVisible: false, LinkObject: {}, // 缂栫爜鏁版嵁 LinkList: [], isCodeArrayPushed: false, // 缂栫爜鏁扮粍娣诲姞鏍囪瘑鍙橀噺 CodeArray: [], - lcstatusArray:[], - islcstatusPushed:false, + //鐢熷懡鍛ㄦ湡鏁扮粍 + lcstatusArray: [], + //鍙傜収鏁版嵁鏁扮粍 + referArray: [], + islcstatusPushed: false, + isReferPushed: false, // 鐘舵�佹悳绱� statusSelect: "all", // 鍏抽敭瀛楁煡璇� @@ -285,8 +311,8 @@ label: "name", }, tableHeadFindDatas: [], - applyvisible:false, - amendvisible:false, + applyvisible: false, + amendvisible: false, addvisible: false, editvisible: false, findvisible: false, @@ -334,7 +360,7 @@ height: 110 }, result: '', - elapsedTime:'', + elapsedTime: '', }; }, computed: { @@ -421,7 +447,14 @@ // console.log('lcstatusArray', this.lcstatusArray); this.islcstatusPushed = true; } - // console.log('new',newval) + if (!this.isReferPushed) { + if (newval.find(item => Object.keys(item.referConfig).length > 0)) { + this.referArray.push(newval.find(item => Object.keys(item.referConfig).length > 0)); + } else { + this.referArray.push([]) + } + } + this.isReferPushed = true; this.WupinFindValue = '' }, }, @@ -438,7 +471,7 @@ }, tableHeadBtnData: { handler(newval) { - this.masterVrBtnList = newval + this.masterVrBtnList = newval }, deep: true }, @@ -515,32 +548,71 @@ if (uniqueFlag === 'CODEAPPLY') return this.codeApplyHandler() // 鏍囧噯淇 if (uniqueFlag === 'CODEAMEND') return this.codeAMENDHandler() + //鎵归噺缂栬緫 + if (uniqueFlag === 'bulkEdit') return this.bulkEditHandler("bulkEdit") }); }, //鏍囧噯鐢宠 - codeApplyHandler(){ + codeApplyHandler() { this.$nextTick(() => { this.applyvisible = true; }); }, - applySumbit(){ - + applySumbit(val) { + // console.log('val',val) + if (func.notEmpty(val.ts)) { + val.ts = func.formattedDateTime(val.ts); + //console.log(val.ts); + } + applySaveCode(val).then(res => { + this.$nextTick(() => { + this.applyvisible = false; + this.$message.success("淇濆瓨鎴愬姛"); + this.onLoad() + }) + }) }, - amendSumbit(){ + amendSumbit(val) { + applySaveCode(val).then(res => { + this.$nextTick(() => { + this.amendvisible = false; + this.$message.success("淇濆瓨鎴愬姛"); + this.onLoad() + }) + }) }, //鏍囧噯淇 - codeAMENDHandler(){ + codeAMENDHandler() { if (this.selectRow.length !== 1) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); - } else if (this.selectRow[0].lcstatus !== "Editing") { - this.$message.warning("缂栫爜鐘舵�佷笉鏄�滅紪杈戜腑鈥濓紝涓嶅彲缂栬緫"); } else { this.amendvisible = true; this.rowOid = this.selectRow[0].oid; } }, - addSaveHandler(){ + //鎵归噺缂栬緫 + bulkEditHandler(type) { + console.log(this.nodeClickList) + if (this.nodeClickList.children.length >= 1) { + this.$message.warning('褰撳墠閫夋嫨鐨勫垎绫讳笉鏄彾瀛愯妭鐐癸紝涓嶅厑璁告壒閲忕紪杈戯紒') + return; + } + if (this.selectRow.length <= 0) { + this.$message.warning('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹紒') + return; + } + const Editing = this.selectRow.every(item => item.lcstatus === 'Editing'); + + if (Editing) { + this.batchImportData.visible = true + this.batchImportData.type = type + this.batchImportData.codeClassifyOid = this.codeClassifyOid + } else { + this.$message.warning('閫夋嫨鐨勬暟鎹腑鏈夌紪鐮佺姸鎬佷笉鏄�滅紪杈戜腑鈥濓紝涓嶅彲缂栬緫锛�'); + } + }, + addSaveHandler() { this.$nextTick(() => { this.addvisible = true; }); @@ -553,6 +625,7 @@ // const requestData = this.selectRow.forEach(item => { // return { oids: item.oid, btmName: item.btmname }; // }); + const oids = this.selectRow.map(item => item.oid).join(','); applyGroupCode({oids, btmName: this.selectRow[0].btmname}).then(res => { if (res.data.code == 200) { @@ -904,7 +977,7 @@ //澧炲姞淇濆瓨 AddSumbit(val) { // console.log('val',val) - if(func.notEmpty(val.ts)) { + if (func.notEmpty(val.ts)) { val.ts = func.formattedDateTime(val.ts); //console.log(val.ts); } @@ -968,8 +1041,9 @@ <style lang="scss" scoped> //鍥哄畾鍒楅珮搴� /deep/ .el-table__fixed { - height: calc(100vh - 370px)!important; + height: calc(100vh - 370px) !important; } + // 婊氬姩鏉℃牱寮忎慨鏀� // 婊氬姩鏉$殑瀹藉害 /deep/ .el-table__body-wrapper::-webkit-scrollbar { @@ -979,6 +1053,7 @@ width: 10px; } + // 婊氬姩鏉$殑婊戝潡 /deep/ .el-table__body-wrapper::-webkit-scrollbar-thumb { background-color: #ececec; @@ -1011,7 +1086,7 @@ margin-top: 10px; } - .el-table__body-wrapper{ +.el-table__body-wrapper { height: calc(100% - 44px) !important; } </style> -- Gitblit v1.9.3