From 41f11d5fd764a2bc7e8463a70bb340467d99a3ca Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期五, 14 七月 2023 09:42:36 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 397 ++++++++++++++++++++++++++++++++------------------------ 1 files changed, 224 insertions(+), 173 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue index dd31f9a..1f91490 100644 --- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue @@ -1,155 +1,112 @@ <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="height: 720px"> + <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=" 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" style="" + @cell-click="handleCellClick" @row-click="handleRowClick" @selection="handleSelection" @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 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> </div> - <el-row style="height: 700px; width: 100%"> - <el-table - v-loading="isLoading" - :data="tableData" - max-height="700" - style="" - @cell-click="handleCellClick" - @selection-change="handleSelectionChange" - @sort-change="sortChange" - v-if="tableData.length != 0" - > - <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" - :label="item.label" - :prop="item.prop" - :sortable="item.sortable" - :formatter="item.formatter" - :width="item.label.length >=4 ?'150':item.label.length==3 ?'120':'90'" - :show-overflow-tooltip="true" - align="center" - > - </el-table-column> - </el-table> - </el-row> - <FormTemplateDialog - :codeClassifyOid="this.codeClassifyOid" - :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" - :templateOid="templateOid" - type="add" - :visible.sync="addvisible" - @submit="AddSumbit" - > - </FormTemplateDialog> - <FormTemplateDialog - :codeClassifyOid="this.codeClassifyOid" - :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" - :rowOid="rowOid" - :templateOid="templateOid" - type="edit" - :title="'淇敼缂栫爜淇℃伅'" - :visible.sync="editvisible" - @submit="EditSumbit" - ></FormTemplateDialog> - <FormTemplateDialog - :codeClassifyOid="this.codeClassifyOid" - :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" - :rowOid="rowOid" - :templateOid="templateOid" - :type="edit" - :title="'宸插彂甯冩暟鎹洿鏀�'" - :visible.sync="DataVisible" - ></FormTemplateDialog> - <set-personnel - :visible.sync="visibleFlow" - :parameter="this.parameter" - ></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 - :visible.sync="similarVisible" - :templateOid="templateOid" - :codeClassifyOid="codeClassifyOid" - :rowOid="rowOid" - :codeRuleOid="this.codeRuleOid" - ></ResembleQueryDialog> + <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible"> + </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" :visible.sync="batchImportData.visible" v-bind="batchImportData"></BatchImport> </basic-container> </template> <script> -import { MasterTable, TableData, FindData } from "@/api/GetItem"; -import { listCodeAttributeByClassId } from "@/api/integration/integration.js"; +import {MasterTable, TableData, FindData,addSaveCode,editSaveCode} from "@/api/GetItem"; +import {listCodeAttributeByClassId} from "@/api/integration/integration.js"; import integrationTransfer from "@/views/integration/integrationTransfer"; import SetPersonnel from "@/components/template/SetPersonnel"; import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue"; import BatchImport from '@/components/BatchImport' -import { validatenull } from "@/util/validate"; +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: { @@ -188,9 +145,14 @@ tableHeadFindData: { type: Array, }, + tableHeadBtnData: { + type: Array, + }, }, data() { return { + //棣栭〉鍙充晶鎼滅储 + WupinFindValue: "", //鐩镐技椤规煡璇� similarVisible: false, //鍙戝竷 @@ -199,8 +161,12 @@ code: "", type: "PUBLIC", template: "", - codeClassifyOid:"" + vars: { + codeClassifyOid: "", + templateOid:"" + } }, + visibleNames:[], visibleFlow: false, transferData: [], transferProps: { @@ -241,25 +207,38 @@ visible: false, type: '', codeClassifyOid: '' + }, + // 涓绘暟鎹寜閽� + masterVrBtnList: [], + fileOptions:{ + ownbizOid:"0", + ownbizBtm:"0", + fileDocClassify:'!=processAuditSuggest', + fileDocClassifyName:'', + hasDownload:true, + hasUpload:true, + height:100 } }; }, computed: {}, - created() {}, - mounted() {}, + created() { + }, + mounted() { + }, activated() { - this.doLayout(); + // this.doLayout(); }, watch: { - tableHeadDataFateher:{ - handler(newval,oldval){ - this.options=newval.tableDefineVO.seniorQueryColumns + tableHeadDataFateher: { + handler(newval, oldval) { + this.options = newval.tableDefineVO.seniorQueryColumns } }, codeClassifyOid: { handler(newval, oldval) { this.codeClassifyOid = newval; - this.parameter.codeClassifyOid=newval + this.parameter.vars.codeClassifyOid = newval }, deep: true, }, @@ -270,14 +249,18 @@ }, tableHeadFindData: { handler(newval, oldval) { - newval.forEach((record,_index) =>{ - if(record.field == 'id' && validatenull(record.templet)){ + newval.forEach((record, _index) => { + if (record.field == 'id' && validatenull(record.templet)) { //浼佷笟缂栫爜鐨勯粯璁ゆ坊鍔犺秴閾炬帴,鏆傛湭瀹炵幇 record.formatter = ''; - }else { - if (record.templet && typeof (record.templet) == 'string' && !validatenull(record.templet) && record.templet.indexOf("function(row,column)")>-1) { + } else { + if (record.templet && typeof (record.templet) == 'string' && !validatenull(record.templet) && record.templet.indexOf("function(row,column)") > -1) { record.formatter = eval("(" + record.templet + ")"); - //function(row,column){return row[column.property]=='true'?'鏄�':'鍚�'} + //function(row,column){return row[column.property]=='true' || row[column.property]=='1'?'鏄�':'鍚�'} + } else if (record.fieldType == "truefalse") { + record.formatter = function (row, column) { + return row[column.property] == 'true' || row[column.property] == '1' ? '鏄�' : '鍚�' + } } } }) @@ -292,18 +275,21 @@ templateOid: { handler(newval, oldval) { this.parameter.code = newval; + this.fileOptions.ownbizOid="0"; + this.parameter.vars.templateOid = newval }, deep: true, }, + tableHeadBtnData: { + handler(newval) { + if (newval.length !== 0) { + this.masterVrBtnList = newval + } + }, + deep: true + } }, methods: { - // 杞崲鏁版嵁true鍜宖alse - formatBoolean(row, column) { - if (column.fieldType === "truefalse") { - return row[column.property] =='true'? "鏄�" : "鍚�"; - } - return row[column.property]; - }, // 鍙戝竷 setHandler() { if (this.selectRow.length <= 0) { @@ -313,6 +299,29 @@ this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; this.visibleFlow = true; } + }, + openVis(visible) { + console.log(visible) + this[visible] = true + }, + handelBtnClick(event) { + const {uniqueFlag} = event + this.$nextTick(() => { + if (uniqueFlag === 'CODEADD') return this.addvisible = true + if (uniqueFlag === 'CODEEDIT') return this.editHandler() + if (uniqueFlag === 'CODEBATCHADD') return this.openBatchImport('batchImportApply') + if (uniqueFlag === 'CODEIMPORTHISTORY') return this.openBatchImport('historyImport') + if (uniqueFlag === 'batchApplyCode') return this.openBatchImport('batchApplyCode') + // 鎵归噺鐢宠缂栫爜 + // 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 === 'CODEEDIT') return this.similarHandler() + }); }, openD() { this.getListCodeByClassId(); @@ -352,6 +361,11 @@ this.editShow = column.property; this.rowOid = row.oid; }, + handleRowClick(row,column){ + this.fileOptions.ownbizOid= row.oid; + this.fileOptions.ownbizBtm=row.btmname; + this.$refs.crud.toggleRowSelection(row); + }, //鍒犻櫎 enumDeleteRow(row) { this.tableData.splice(row, 1); @@ -362,6 +376,7 @@ }, doLayout() { this.$nextTick(() => { + console.log(this.$refs) this.$refs.crud.doLayout(); }); }, @@ -369,8 +384,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]; @@ -431,25 +445,25 @@ 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) { - 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; + }, //缂栬緫 editHandler() { @@ -461,6 +475,7 @@ this.$message.warning("缂栫爜鐘舵�佷笉鏄�滅紪杈戜腑鈥�,涓嶅彲缂栬緫"); } else { this.editvisible = true; + this.rowOid = this.selectRow[0]['oid'] } }, //楂樼骇鏌ヨ鎸夐挳 @@ -475,8 +490,8 @@ ...val, }).then((res) => { console.log(res); - this.tableData=res.data.data; - this.page.total=res.data.total + this.tableData = res.data.data; + this.page.total = res.data.total }); }, //鐩镐技椤规煡璇� @@ -502,16 +517,37 @@ } }, //澧炲姞淇濆瓨 - AddSumbit() { + AddSumbit(val) { this.addvisible = false; + console.log(val) + addSaveCode(val).then(res=>{ + console.log(res) + this.$nextTick(() => { + this.onLoad() + }) + }) }, EditSumbit(val) { this.editvisible = false; + console.log(val) + editSaveCode(val).then(res=>{ + console.log(res) + this.$nextTick(() => { + this.onLoad() + }) + }) }, openBatchImport(type) { this.batchImportData.visible = true this.batchImportData.type = type this.batchImportData.codeClassifyOid = this.codeClassifyOid + }, + handleCollapse(activeNames){ + if(activeNames.length>0){ + + }else{ + + } } }, }; @@ -532,5 +568,20 @@ 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; + max-height: 43%; + overflow-y: scroll; +} </style> -- Gitblit v1.9.3