From b6bc27020cf028c4390d7262c4d2f08eaa51b2f0 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期二, 27 六月 2023 21:35:06 +0800 Subject: [PATCH] 代码整合 --- Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 467 +++++++++++++++++++++++++++++++-------------------------- 1 files changed, 252 insertions(+), 215 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue index 82279db..48731fd 100644 --- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue @@ -1,106 +1,138 @@ <template> <basic-container> <div class="testbox"> - <div style="margin-top: 10px;display: flex;flex-wrap: wrap;width: 100%;"> - <el-button plain size="small" type="primary" @click="addvisible=true">澧炲姞 + <div> + <el-button plain size="small" type="primary" @click="addvisible = true" + >澧炲姞 </el-button> - <FormTemplateDialog - :codeClassifyOid="this.codeClassifyOid" - :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" - :templateOid="templateOid" - type="add" - :visible.sync="addvisible" - @submit="AddSumbit" - > - </FormTemplateDialog> - <el-button plain size="small" type="primary" @click="editHandler">缂栬緫 + <el-button plain size="small" type="primary" @click="editHandler" + >缂栬緫 </el-button> - <FormTemplateDialog - :codeClassifyOid="this.codeClassifyOid" - :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" - :rowOid="rowOid" - :templateOid="templateOid" - type="edit" - :title="'淇敼缂栫爜淇℃伅'" - :visible.sync="editvisible" - @submit="EditSumbit" - ></FormTemplateDialog> - <el-button plain size="small" type="primary" @click="importDataShow('batchImportApply')">鎵归噺瀵煎叆鐢宠</el-button> - <el-button plain size="small" type="primary" @click="importDataShow('historyImport')">鍘嗗彶鏁版嵁瀵煎叆</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">鎵归噺鍙戝竷</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> - <set-personnel :visible.sync="visibleFlow" :parameter="parameter" - ></set-personnel> - <el-button plain size="small" type="primary" @click="DataChange">鏁版嵁鏇存敼</el-button> - <FormTemplateDialog - :codeClassifyOid="this.codeClassifyOid" - :codeRuleOid="this.codeRuleOid" - :disabledProp="disabledProp" - :rowOid="rowOid" - :templateOid="templateOid" - :type="edit" - :title="'宸插彂甯冩暟鎹洿鏀�'" - :visible.sync="DataVisible" - ></FormTemplateDialog> - <el-button plain size="small" type="primary" @click="huishouHandler">鍥炴敹</el-button> - <el-button plain size="small" type="primary" @click="openD">瀵煎嚭 - <integration-transfer :data="transferData" :props="transferProps" - :visible.sync="dialogPush" @save="handelTransferSave"></integration-transfer> + <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">鏌ヨ - <advanced-query :options="this.options" :visible.sync="findvisible" - @echoContion="echoContion"></advanced-query> + <el-button plain size="small" type="primary" @click="findHandler" + >鏌ヨ </el-button> - <el-button plain size="small" type="primary" @click="similarHandler">鐩镐技椤规煡璇�</el-button> - <ResembleQueryDialog - :visible.sync="similarVisible" - :templateOid="templateOid" - :codeClassifyOid="codeClassifyOid" - :rowOid="rowOid" - :codeRuleOid="this.codeRuleOid" - ></ResembleQueryDialog> - <el-button plain size="small" style="margin-left: 1px;margin-top:10px" type="primary">鍒锋柊</el-button> - <el-input placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" - style="width: 180px;margin-left: 5px;margin-top:10px"></el-input> + <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%"> - <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-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 - fixed - label="搴忓彿" - type="index" - width="55"> + v-for="item in this.tableHeadFindData" + :key="item.id" + :label="item.label" + :prop="item.prop" + :sortable="item.sortable" + :formatter="formatBoolean" + :width="item.label.length >=4 ?'150':item.label.length==3 ?'120':'90'" + :show-overflow-tooltip="true" + align="center" + > + <!-- 缂栬緫鍜屽睍绀洪�昏緫 --> + <!-- <template slot-scope="{ row }">--> + <!-- <el-input v-if="editingRow === row && editShow== item.prop" v-model="row[item.prop]" @blur="saveRow"></el-input>--> + <!-- <span v-else>{{row[item.prop]}}</span>--> + <!-- <el-switch--> + <!-- v-if="editShow === 'true'"--> + <!-- v-model="row[item.prop]"--> + <!-- active-color="#13ce66"--> + <!-- inactive-color="#ff4949">--> + <!-- </el-switch>--> + <!-- </template>--> </el-table-column> -<!-- <div>--> - <el-table-column v-for="(item,index) in this.tableHeadFindData" :key="item.id" :label="item.label" :prop="item.prop" :sortable="item.sortable" > - <!-- 缂栬緫鍜屽睍绀洪�昏緫 --> - <!-- <template slot-scope="{ row }">--> - <!-- <el-input v-if="editingRow === row && editShow== item.prop" v-model="row[item.prop]" @blur="saveRow"></el-input>--> - <!-- <span v-else>{{row[item.prop]}}</span>--> - <!-- <el-switch--> - <!-- v-if="editShow === 'true'"--> - <!-- v-model="row[item.prop]"--> - <!-- active-color="#13ce66"--> - <!-- inactive-color="#ff4949">--> - <!-- </el-switch>--> - <!-- </template>--> - </el-table-column> -<!-- </div>--> </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> </div> - <div class="block" style="display: flex;justify-content: flex-end"> + <div class="block" style="display: flex; justify-content: flex-end"> <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" @@ -108,87 +140,85 @@ :total="page.total" layout="total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange" - @current-change="handleCurrentChange"> + @current-change="handleCurrentChange" + > </el-pagination> </div> - <historyImport :visible.sync="importVisible" v-if="importVisible" :codeClassifyOid="codeClassifyOid" :type="importType"></historyImport> </basic-container> </template> <script> -import {MasterTable, TableData,FindData} from "@/api/GetItem"; -import {listCodeAttributeByClassId} from '@/api/integration/integration.js' -import integrationTransfer from '@/views/integration/integrationTransfer' -import SetPersonnel from '@/components/template/SetPersonnel' +import { MasterTable, TableData, FindData } 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 historyImport from '../BatchImport/index.vue' export default { components: { integrationTransfer, SetPersonnel, ResembleQueryDialog, - historyImport }, name: "Crud.vue", props: { page: { type: Object, default: () => { - return {} - } + return {}; + }, }, codeClassifyOid: { type: String, - default: "" + default: "", }, coderuleoid: { type: String, - default: "" + default: "", }, tableDataArray: { type: Array, }, total: { type: String, - default: "" + default: "", }, templateOid: { type: String, + default: "", }, tableHeadDataFateher: { type: Array, }, isLoading: { type: Boolean, - default: false + default: false, }, - tableHeadFindData:{ - type:Array, - } + tableHeadFindData: { + type: Array, + }, }, data() { return { //鐩镐技椤规煡璇� - similarVisible:false, + similarVisible: false, //鍙戝竷 - parameter:{ - ids:['0000','22222222'], - code:this.templateOid, - type:'PUBLIC', - template:'妯℃澘template' + parameter: { + ids: [], + code: "", + type: "PUBLIC", + template: "", }, visibleFlow: false, transferData: [], transferProps: { - key: 'oid', - label: 'name' + key: "oid", + label: "name", }, - tableHeadFindDatas:[], - templateOid: "", + tableHeadFindDatas: [], addvisible: false, editvisible: false, findvisible: false, dialogPush: false, - rowOid: '', + rowOid: "", disabledProp: ["id"], editingRow: null, editShow: "", @@ -196,7 +226,7 @@ data: [], options: {}, option: { - column: [] + column: [], }, List: [], columnType: { @@ -207,29 +237,22 @@ datetime: "datetime", }, tableData: [], - DataVisible:false, + DataVisible: false, tableHeadData: [], items: {}, seniorQueryColumns: [], selectRow: [], - historyVisible: false, - importType: undefined, //瀵煎叆绫诲瀷, - importVisible: false - } + userName: "", + }; }, computed: {}, - created() { - // this.CrudHeaderRend(); - // this.tableHeadHandle() - }, - mounted() { - - }, + created() {}, + mounted() {}, activated() { - this.doLayout() + this.doLayout(); }, watch: { - tableHeadDataFateher:{ + tableHeadDataFateher:{ handler(newval,oldval){ this.options=newval.tableDefineVO.seniorQueryColumns } @@ -237,74 +260,97 @@ codeClassifyOid: { handler(newval, oldval) { this.codeClassifyOid = newval; - }, - deep: true + deep: true, }, tableDataArray: { handler(newval, oldval) { this.tableData = newval; - } + }, }, - tableHeadFindData:{ + tableHeadFindData: { handler(newval, oldval) { this.tableHeadFindDatas = newval; - } + }, }, total: { handler(newval, oldval) { this.page.total = newval; - } + }, + }, + templateOid: { + handler(newval, oldval) { + this.parameter.code = newval; + }, + deep: true, }, }, methods: { - setHandler() { - this.visibleFlow = true; + // 杞崲鏁版嵁true鍜宖alse + formatBoolean(row, column) { + if (column.property === "xiaoshouwl" + ||column.property === "shifoupihaoguanli" + ||column.property === "caigouwl" + ||column.property === "kucunwl" + ||column.property === "passing") { + return row[column.property] =='true'? "鏄�" : "鍚�"; + } + return row[column.property]; }, - huishouHandler() { + // 鍙戝竷 + setHandler() { + console.log("1111"); + console.log("鐖�", this.parameter); + if (this.selectRow.length <= 0) { + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); + } else { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.visibleFlow = true; + } }, openD() { - this.dialogPush = true; - this.getListCodeByClassId() + this.getListCodeByClassId(); }, async getListCodeByClassId() { - this.transferData = [] - const response = await listCodeAttributeByClassId({codeClassifyId: this.codeClassifyOid}) + this.transferData = []; + const response = await listCodeAttributeByClassId({ + codeClassifyId: this.codeClassifyOid, + }); if (response.status === 200) { - const data = response.data.data - this.transferData = data + const data = response.data.data; + this.transferData = data; } }, rend() { - this.tableData = this.tableHeadData + this.tableData = this.tableHeadData; }, handleSizeChange(val) { this.isLoading = true; setTimeout(() => { - this.page.pageSize = val - this.$emit('pageSize', val) - this.CrudRend() + this.page.pageSize = val; + this.$emit("pageSize", val); + this.CrudRend(); }, 3000); - }, handleCurrentChange(val) { this.isLoading = true; setTimeout(() => { - this.page.currentPage = val - this.$emit('currentPage', val) - this.CrudRend() + this.page.currentPage = val; + this.$emit("currentPage", val); + this.CrudRend(); }, 3000); }, // 鐩戝惉鍗曞厓鏍肩偣鍑讳簨浠跺苟瀛樺偍姝e湪缂栬緫鐨勮 handleCellClick(row, column) { this.editingRow = row; this.editShow = column.property; - this.rowOid = row.oid + this.rowOid = row.oid; }, //鍒犻櫎 enumDeleteRow(row) { - this.tableData.splice(row, 1) + this.tableData.splice(row, 1); }, // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬� saveRow() { @@ -321,23 +367,23 @@ MasterTable({ codeClassifyOid: this.codeClassifyOid, functionId: 5, - }).then(res => { - this.options = res.data.tableDefineVO.seniorQueryColumns + }).then((res) => { + this.options = res.data.tableDefineVO.seniorQueryColumns; this.List = res.data.tableDefineVO.cols[0]; - this.List.forEach(item => { + this.List.forEach((item) => { let columnItem = { label: item.title, prop: item.field, type: this.columnType[item.type], sortable: item.sort, - width: item.minWidth + width: item.minWidth, }; this.option.column.push(columnItem); this.option.column = this.tableHeadData; - this.templateOid = res.data.tableDefineVO.oid - this.$emit('templateOid', this.templateOid) - }) - }) + this.templateOid = res.data.tableDefineVO.oid; + this.$emit("templateOid", this.templateOid); + }); + }); } }, //琛ㄦ牸鏁版嵁 @@ -347,16 +393,16 @@ codeClassifyOid: this.codeClassifyOid, page: this.page.currentPage, limit: this.page.pageSize, - }).then(res => { + }).then((res) => { this.page.total = res.data.total; this.data = res.data.data; this.tableData = res.data.data; - }) + }); }, // 鎺掑簭 sortChange(val) { this.isLoading = true; - let order = "" + let order = ""; if (val.order == "ascending") { order = "asc"; } else { @@ -369,104 +415,95 @@ sort: val.prop, page: this.page.currentPage, limit: this.page.pageSize, - }).then(res => { + }).then((res) => { setTimeout(() => { this.data = res.data.data; this.isLoading = false; }, 100); - }) + }); }, //鍒嗛〉鍒锋柊 async onLoad(val) { - console.log('鍒嗛〉', this.templateOid) await TableData({ templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, page: val.currentPage, limit: val.pageSize, - }).then(res => { + }).then((res) => { this.data = res.data.data; - }) + }); }, //澶氶�� handleSelectionChange(row) { - if(this.row){ + if (this.row) { this.rowOid = row[0].oid; - }else { - this.rowOid='' + } else { + this.rowOid = ""; } this.selectRow = row; - console.log(row) + row.forEach((item) => { + this.parameter.ids.push(item.oid); + }); }, //缂栬緫 editHandler() { - console.log('row',this.rowOid) - console.log('temp',this.templateOid) - console.log('code',this.codeClassifyOid) - console.log('rule',this.coderuleoid) if (this.selectRow.length <= 0) { - this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); } else if (this.selectRow.length > 1) { - this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�') - } else if (this.selectRow[0].lcstatus != 'Editing') { - this.$message.warning('缂栫爜鐘舵�佷笉鏄�滅紪杈戜腑鈥�,涓嶅彲缂栬緫') + this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); + } else if (this.selectRow[0].lcstatus != "Editing") { + this.$message.warning("缂栫爜鐘舵�佷笉鏄�滅紪杈戜腑鈥�,涓嶅彲缂栬緫"); } else { - this.editvisible = true + this.editvisible = true; } }, //楂樼骇鏌ヨ鎸夐挳 - findHandler(){ - this.findvisible=true; - console.log(this.options) + findHandler() { + this.findvisible = true; }, // 楂樼骇鏌ヨ echoContion(val) { - console.log(val) - FindData({templateOid:this.templateOid, + FindData({ + templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, - ...val - }).then(res=>{ - console.log(res) - }) + ...val, + }).then((res) => { + console.log(res); + this.tableData=res.data.data; + this.page.total=res.data.total + }); }, //鐩镐技椤规煡璇� - similarHandler(){ + similarHandler() { if (this.selectRow.length <= 0) { - this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); } else if (this.selectRow.length > 1) { - this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�') - } else { - this.similarVisible=true; + this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); + } else { + this.similarVisible = true; } - }, //鏁版嵁鏇存敼 - DataChange(){ + DataChange() { if (this.selectRow.length <= 0) { - this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); } else if (this.selectRow.length > 1) { - this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�') - } else if (this.selectRow[0].lcstatus != 'Released') { - this.$message.warning('鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼') + this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); + } else if (this.selectRow[0].lcstatus != "Released") { + this.$message.warning("鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼"); } else { - this.DataVisible = true + this.DataVisible = true; } }, //澧炲姞淇濆瓨 - AddSumbit(val){ - console.log(val) - this.addvisible=false + AddSumbit() { + this.addvisible = false; }, - EditSumbit(val){ - console.log(val) - this.editvisible=false + EditSumbit(val) { + this.editvisible = false; }, - importDataShow(type) { - this.importType = type - this.importVisible = true - } - } -} + }, +}; </script> <style lang="scss" scoped> -- Gitblit v1.9.3