From 9630f5f0c834496da20fca1e391dcdfef1021de1 Mon Sep 17 00:00:00 2001 From: fujunling <2984387807@qq.com> Date: 星期三, 26 七月 2023 17:38:01 +0800 Subject: [PATCH] 关闭弹窗 --- Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 379 ++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 269 insertions(+), 110 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue index 1744b66..6685967 100644 --- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue @@ -1,81 +1,105 @@ <template> <basic-container> - <div class="testbox"> - <div> - <!-- <el-button plain size="small" type="primary" @click="addvisible = true">澧炲姞 - </el-button> - <el-button plain size="small" type="primary" @click="editHandler">缂栬緫 - </el-button> - <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">鎵归噺瀵煎叆鐢宠</el-button> - <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">鍘嗗彶鏁版嵁瀵煎叆</el-button> - <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">鎵归噺鐢宠缂栫爜</el-button> - <el-button plain size="small" type="primary">鎵归噺鍙戝竷</el-button> - <el-button plain size="small" type="primary">鏌ョ湅娴佺▼鍘嗗彶</el-button> - <el-button plain size="small" type="primary">鍒犻櫎</el-button> - <el-button plain size="small" type="primary" @click="setHandler">鍙戝竷</el-button> - <el-button plain size="small" type="primary" @click="DataChange">鏁版嵁鏇存敼</el-button> - <el-button plain size="small" type="primary" @click="huishouHandler">鍥炴敹</el-button> - <el-button plain size="small" type="primary" @click="openD">瀵煎嚭 - </el-button> - <el-button plain size="small" type="primary" @click="findHandler">鏌ヨ - </el-button> - <el-button plain size="small" type="primary" @click="similarHandler">鐩镐技椤规煡璇�</el-button> - <el-button plain size="small" type="primary">鍒锋柊</el-button> - <el-input placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" - style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> --> + <div class="main"> + <div class="top"> + <div class="testbox" style=""> + <div> + <!-- <el-button plain size="small" type="primary" @click="addvisible = true">澧炲姞 + </el-button> + <el-button plain size="small" type="primary" @click="editHandler">缂栬緫 + </el-button> + <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">鎵归噺瀵煎叆鐢宠</el-button> + <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">鍘嗗彶鏁版嵁瀵煎叆</el-button> + <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">鎵归噺鐢宠缂栫爜</el-button> + <el-button plain size="small" type="primary">鎵归噺鍙戝竷</el-button> + <el-button plain size="small" type="primary">鏌ョ湅娴佺▼鍘嗗彶</el-button> + <el-button plain size="small" type="primary">鍒犻櫎</el-button> + <el-button plain size="small" type="primary" @click="setHandler">鍙戝竷</el-button> + <el-button plain size="small" type="primary" @click="DataChange">鏁版嵁鏇存敼</el-button> + <el-button plain size="small" type="primary" @click="huishouHandler">鍥炴敹</el-button> + <el-button plain size="small" type="primary" @click="openD">瀵煎嚭 + </el-button> + <el-button plain size="small" type="primary" @click="findHandler">鏌ヨ + </el-button> + <el-button plain size="small" type="primary" @click="similarHandler">鐩镐技椤规煡璇�</el-button> + <el-button plain size="small" type="primary">鍒锋柊</el-button> + <el-input placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" + style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> --> - </div> - <el-row style="height: 700px; width: 100%"> - <div> - <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary" - @click="handelBtnClick(item)">{{ - item.name - }} - </el-button> - <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" - size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> + </div> + <el-row style="width: 100%;margin-bottom: 20px"> + <div> + <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary" + v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)" + @click="handelBtnClick(item)">{{ + item.name + }} + </el-button> + <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" + size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> + </div> + <el-table v-if="tableData.length != 0" v-loading="isLoading" :data="tableData" :height="tableHeight" ref="dataTable" + @cell-click="handleCellClick" @row-click="handleRowClick" @select="handleSelection" @select-all="handleSelectionAll" @selection-change="handleSelectionChange" @sort-change="sortChange"> + <el-table-column fixed type="selection" width="55"></el-table-column> + <el-table-column 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'" + align="center"> + </el-table-column> + </el-table> + </el-row> +<!-- 鏂板--> + <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" + :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" type="add" + @submit="AddSumbit"> + </FormTemplateDialog> +<!-- 淇敼--> + <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" + :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'淇敼缂栫爜淇℃伅'" + :visible.sync="editvisible" + type="edit" @submit="EditSumbit"></FormTemplateDialog> +<!-- 宸插彂甯冩暟鎹慨鏀�--> + <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" + :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'宸插彂甯冩暟鎹洿鏀�'" + :type="edit" + :visible.sync="DataVisible"></FormTemplateDialog> +<!-- 鍙戝竷--> + <set-personnel :parameter="this.parameter" :visible.sync="visibleFlow" :title="title"></set-personnel> +<!-- 鍋滅敤--> + <set-personnel :parameter="this.parameter" :visible.sync="visibleDeactivate" :title="title"></set-personnel> +<!-- 鍚敤--> + <set-personnel :parameter="this.parameter" :visible.sync="visibleEnable" :title="title"></set-personnel> +<!-- 鍥炴敹--> + <set-personnel :parameter="this.parameter" :visible.sync="visibleRecovery" :title="title"></set-personnel> +<!-- 楂樼骇鏌ヨ--> + <advanced-query :options="this.options" :visible.sync="findvisible" @echoContion="echoContion"></advanced-query> +<!-- 瀵煎嚭--> + <MasterTransfer :visible.sync="dialogPush" :tableHeadData="tableHeadFindData"></MasterTransfer> +<!-- 鐩镐技椤�--> + <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid" + :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog> + <div class="block" style="display: flex; justify-content: flex-end"> + <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes" + :total="page.total" layout="total, sizes, prev, pager, next, jumper" + @size-change="handleSizeChange" + @current-change="handleCurrentChange"> + </el-pagination> </div> - <el-table v-if="tableData.length != 0" v-loading="isLoading" :data="tableData" max-height="700" style="" - @cell-click="handleCellClick" @selection-change="handleSelectionChange" @sort-change="sortChange"> - <el-table-column fixed type="selection" width="55"></el-table-column> - <el-table-column 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'" - align="center"> - </el-table-column> - </el-table> - </el-row> - <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" type="add" - @submit="AddSumbit"> - </FormTemplateDialog> - <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'淇敼缂栫爜淇℃伅'" - :visible.sync="editvisible" - type="edit" @submit="EditSumbit"></FormTemplateDialog> - <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'宸插彂甯冩暟鎹洿鏀�'" - :type="edit" - :visible.sync="DataVisible"></FormTemplateDialog> - <set-personnel :parameter="this.parameter" :visible.sync="visibleFlow"></set-personnel> - <advanced-query :options="this.options" :visible.sync="findvisible" @echoContion="echoContion"></advanced-query> - <integration-transfer :data="transferData" :props="transferProps" :visible.sync="dialogPush" - @save="handelTransferSave"></integration-transfer> - <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid" - :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog> + </div> + <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible" :resetTable="CrudRend"> + </BatchImport> + </div> + <div class="bottom"> + <el-collapse v-model="visibleNames" @change="handleCollapse"> + <el-collapse-item title="闄勪欢鍒楄〃" name="1"> + <fileInHtml :options="fileOptions"></fileInHtml> + </el-collapse-item> + </el-collapse> + </div> </div> - <div class="block" style="display: flex; justify-content: flex-end"> - <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes" - :total="page.total" layout="total, sizes, prev, pager, next, jumper" - @size-change="handleSizeChange" - @current-change="handleCurrentChange"> - </el-pagination> - </div> - <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible"> - </BatchImport> </basic-container> </template> <script> @@ -86,13 +110,15 @@ import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue"; import BatchImport from '@/components/BatchImport' import {validatenull} from "@/util/validate"; +import fileInHtml from "@/components/file/inHtml.vue"; export default { components: { integrationTransfer, SetPersonnel, ResembleQueryDialog, - BatchImport + BatchImport, + fileInHtml }, name: "Crud.vue", props: { @@ -145,13 +171,24 @@ parameter: { ids: [], code: "", - type: "PUBLIC", + type: '', + // this.visibleDeactivate ?'ENABLE':this.visibleEnable ? 'DISABLE' :this.visibleRecovery ? 'ROLLBACK' :'PUBLIC' template: "", vars: { - codeClassifyOid: "" + codeClassifyOid: "", + templateOid:"" } }, + visibleNames:[], + //鍙戝竷 visibleFlow: false, + //鍋滅敤 + visibleDeactivate:false, + //鍚敤 + visibleEnable:false, + //鍥炴敹 + visibleRecovery:false, + title:'', transferData: [], transferProps: { key: "oid", @@ -181,6 +218,7 @@ datetime: "datetime", }, tableData: [], + tableHeight:'calc(100vh - 330px)', DataVisible: false, tableHeadData: [], items: {}, @@ -193,7 +231,16 @@ codeClassifyOid: '' }, // 涓绘暟鎹寜閽� - masterVrBtnList: [] + masterVrBtnList: [], + fileOptions:{ + ownbizOid:"0", + ownbizBtm:"0", + fileDocClassify:'!=processAuditSuggest', + fileDocClassifyName:'', + hasDownload:true, + hasUpload:true, + height:100 + } }; }, computed: {}, @@ -213,8 +260,7 @@ codeClassifyOid: { handler(newval, oldval) { this.codeClassifyOid = newval; - this.parameter.vars.codeClassifyOid = newval; - console.log('瀛�',newval) + this.parameter.vars.codeClassifyOid = newval }, deep: true, }, @@ -251,6 +297,8 @@ templateOid: { handler(newval, oldval) { this.parameter.code = newval; + this.fileOptions.ownbizOid="0"; + this.parameter.vars.templateOid = newval }, deep: true, }, @@ -264,14 +312,14 @@ } }, methods: { - // 鍙戝竷 - setHandler() { - if (this.selectRow.length <= 0) { - this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); + //灞曞紑闄勪欢 + handleCollapse(activeNames) { + if (activeNames.length > 0) { + this.tableHeight = 'calc(100vh - 630px)'; + this.$refs.dataTable.doLayout() } else { - this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.visibleFlow = true; + this.tableHeight = 'calc(100vh - 330px)'; + this.$refs.dataTable.doLayout() } }, openVis(visible) { @@ -290,9 +338,14 @@ // if(uniqueFlag === 'CODEEDIT') return this.openBatchImport('batchApplyCode') if (uniqueFlag === 'CODESTARTPROCESS') return this.setHandler() if (uniqueFlag === 'CODEUPREVISION') return this.DataChange() - if (uniqueFlag === 'CODERECYCLE') return this.huishouHandler() if (uniqueFlag === 'CODEEXPORT') return this.openD() if (uniqueFlag === 'CODEQUERY') return this.findHandler() + //鍋滅敤 + if (uniqueFlag === 'CODEDISABLE') return this.Deactivate() + //鍚敤 + if (uniqueFlag === 'CODEENABLE') return this.Enable() + //鍥炴敹 + if (uniqueFlag === 'CODERECYCLE') return this.Recovery() // 鐩镐技椤规煡璇� // if(uniqueFlag === 'CODEEDIT') return this.similarHandler() }); @@ -301,6 +354,7 @@ this.getListCodeByClassId(); }, async getListCodeByClassId() { + this.dialogPush=true; this.transferData = []; const response = await listCodeAttributeByClassId({ codeClassifyId: this.codeClassifyOid, @@ -310,8 +364,79 @@ this.transferData = data; } }, + handelTransferSave(val){ + console.log('鍙戝竷',val) + }, rend() { this.tableData = this.tableHeadData; + }, + // 鍙戝竷 + setHandler() { + // let EditFlag1=false + // let EditFlag2=false + // if(EditFlag1){ + // this.$message.warning('鍙湁鐘舵�佹槸銆愮紪杈戜腑銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�') + // }else if(EditFlag2){ + // this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愮紪杈戜腑銆戞墠鍙互鍙戣捣娴佺▼') + // } + this.selectRow.forEach(item=>{ + if(this.selectRow.length === 1 && item.lcstatus !== "Editing"){ + this.$message.warning('鍙湁鐘舵�佹槸銆愮紪杈戜腑銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�') + }else if(item.lcstatus !== 'Editing'){ + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愮紪杈戜腑銆戞墠鍙互鍙戣捣娴佺▼') + }else { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.parameter.type='PUBLIC' + this.title='娴佺▼瀹℃壒' + this.visibleFlow = true; + } + }) + // if (this.selectRow.length <= 0) { + // this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); + // } else { + // this.userName = localStorage.getItem("username"); + // this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + // this.parameter.type='PUBLIC' + // this.title='娴佺▼瀹℃壒' + // this.visibleFlow = true; + // } + }, + //鍋滅敤 + Deactivate(){ + if (this.selectRow.length <= 0) { + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); + } else { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.parameter.type='DISABLE' + this.title='鍋滅敤锛堝喕缁擄級缂栫爜鏁版嵁' + this.visibleDeactivate=true; + } + }, + //鍚敤 + Enable(){ + if (this.selectRow.length <= 0) { + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); + } else { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.parameter.type='ENABLE' + this.title='鍚敤锛堣В鍐伙級缂栫爜鏁版嵁' + this.visibleEnable=true; + } + }, + //鍥炴敹 + Recovery(){ + if (this.selectRow.length <= 0) { + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); + } else { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.parameter.type='ROLLBACK' + this.title='鍥炴敹缂栫爜鏁版嵁' + this.visibleRecovery=true; + } }, handleSizeChange(val) { this.isLoading = true; @@ -335,6 +460,11 @@ this.editShow = column.property; this.rowOid = row.oid; }, + handleRowClick(row, column) { + this.fileOptions.ownbizOid = row.oid; + this.fileOptions.ownbizBtm = row.btmname; + this.$refs.dataTable.toggleRowSelection(row); + }, //鍒犻櫎 enumDeleteRow(row) { this.tableData.splice(row, 1); @@ -353,8 +483,7 @@ CrudHeaderRend() { if (this.codeClassifyOid != "") { MasterTable({ - codeClassifyOid: this.codeClassifyOid, - functionId: 5, + codeClassifyOid: this.codeClassifyOid }).then((res) => { this.options = res.data.tableDefineVO.seniorQueryColumns; this.List = res.data.tableDefineVO.cols[0]; @@ -415,26 +544,31 @@ await TableData({ templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, - page: val.currentPage, - limit: val.pageSize, + page: this.page.currentPage, + limit: this.page.pageSize, }).then((res) => { - this.data = res.data.data; + this.tableData = res.data.data; }); }, //澶氶�� - handleSelectionChange(row) { - console.log(row) - if (this.row) { - this.rowOid = row[0].oid; - } else { - this.rowOid = ""; - } - this.selectRow = row; + handleSelectionChange(list) { + this.selectRow = list; this.parameter.ids = []; - row.forEach((item) => { + list.forEach((item) => { this.parameter.ids.push(item.oid); }); - console.log(' this.parameter.ids', this.parameter.ids) + }, + //閫夋嫨 + handleSelection(list, row) { + this.fileOptions.ownbizOid = row.oid; + this.fileOptions.ownbizBtm = row.btmname; + + }, + //閫夋嫨鍏ㄩ儴 + handleSelectionAll() { + this.fileOptions.ownbizOid = '0'; + this.fileOptions.ownbizBtm = '0'; + }, //缂栬緫 editHandler() { @@ -491,25 +625,29 @@ AddSumbit(val) { this.addvisible = false; console.log(val) - addSaveCode(val).then(res=>{ + addSaveCode(val).then(res => { console.log(res) - this.onLoad() + this.$nextTick(() => { + this.onLoad() + }) }) }, EditSumbit(val) { this.editvisible = false; console.log(val) - editSaveCode(val).then(res=>{ + editSaveCode(val).then(res => { console.log(res) - this.onLoad() + this.$nextTick(() => { + this.onLoad() + }) }) }, openBatchImport(type) { - this.batchImportData.visible = true; - this.batchImportData.type = type; - this.batchImportData.codeClassifyOid = this.codeClassifyOid; + this.batchImportData.visible = true + this.batchImportData.type = type + this.batchImportData.codeClassifyOid = this.codeClassifyOid } - }, + } }; </script> @@ -518,6 +656,7 @@ .el-table--scrollable-x .el-table__body-wrapper { overflow: auto !important; } + .el-table__fixed-right-patch { background-color: #f5f7fa !important; } @@ -526,4 +665,24 @@ /deep/ .el-button { margin: 0 10px 10px 0; } + +.main { + display: flex; + flex-direction: column; + height: calc(100vh - 150px); + min-height: 400px; +} +.top { + overflow-y: scroll; + min-height: 55%; +} + +.bottom { + margin-top: 20px; + overflow-y: scroll; +} + +.el-collapse-item__content{ + padding-bottom: 0; +} </style> -- Gitblit v1.9.3