From a79582f0c67ddc681d2804669455ae13c64de8f9 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期二, 26 十二月 2023 20:20:22 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/views/code/codeKeyAttrRepeat.vue | 6 Source/UBCS-WEB/src/components/refer/vciWebRefer.vue | 61 ++ Source/UBCS/ubcs-codeApply/pom.xml | 12 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 18 Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js | 9 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue | 67 ++ Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue | 22 Source/UBCS-WEB/src/components/StatisticsComponent/ColumnarChart.vue | 113 ++-- Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue | 235 ++++++----- Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue | 1 Source/UBCS-WEB/src/components/StatisticsComponent/pieChart.vue | 17 Source/UBCS-WEB/src/components/template/Business.vue | 2 Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue | 321 ++++++++------- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 4 Source/UBCS-WEB/src/styles/tags.scss | 4 Source/UBCS-WEB/src/views/statistic/statisticPage.vue | 141 +++++- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 1 Source/UBCS-WEB/src/components/StatisticsComponent/mixCart.vue | 17 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/TestIntegrateFrame.java | 23 + Source/UBCS-WEB/src/components/Master/MasterTree.vue | 5 Source/UBCS-WEB/src/components/advanced-query/advancedQuery.vue | 2 Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue | 124 +++-- 22 files changed, 761 insertions(+), 444 deletions(-) diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue index 73d8a17..e59f156 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue @@ -25,6 +25,7 @@ <template v-for="item in slotColumnList" :slot="item.prop + ''"> <vciWebRefer v-if="item.type == 'refer'" :key="item.dataKey" + referType="master" :data-key="item.dataKey" :disabled="item.disabled" :display="item.display" diff --git a/Source/UBCS-WEB/src/components/Master/MasterTree.vue b/Source/UBCS-WEB/src/components/Master/MasterTree.vue index d1ec150..12e2074 100644 --- a/Source/UBCS-WEB/src/components/Master/MasterTree.vue +++ b/Source/UBCS-WEB/src/components/Master/MasterTree.vue @@ -180,10 +180,11 @@ List.forEach(item => { let columnItem = { label: item.title, - prop: item.queryField, + prop: item.field, // type: this.columnType[item.type], sortable: item.sort, - width: item.minWidth + width: item.minWidth, + query: item.queryField }; this.tableHeadFindData.push(Object.assign(item, columnItem)) }) diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue index 6abed72..14f0d6b 100644 --- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue @@ -15,14 +15,24 @@ item.name }} </el-button> - <span v-if="tableHeadFindData.length > 0"> - <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small"> + <span v-if="tableHeadFindData.length > 0 "> + <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small" @change="searchChange"> <el-option v-for="item in tableHeadFindData" :key="item.id" :label="item.label" - :value="item.prop"></el-option> + :value="item.query"></el-option> </el-select> - <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" - size="small" style="width: 180px; margin-left: 5px; margin-top: 10px" + <el-input v-if="!isTimeStatus" v-model="WupinFindValue" + placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" style="width: 180px; margin-left: 5px; margin-top: 10px" @keyup.enter.native="tableFindInp"></el-input> + </span> + <span v-if="tableHeadFindData.length > 0 && isTimeStatus" class="block"> + <el-date-picker + v-model="dateValue" + placeholder="閫夋嫨鏃ユ湡" + size="small" + style="margin-left: 5px" + type="date" + @change="dateChange"> + </el-date-picker> </span> <span v-if="tableHeadFindData.length > 0" style="margin-left: 10px"> <p style="font-size: 13px;display: inline-block;"> 鐘舵�侊細</p> @@ -191,6 +201,7 @@ import fileInHtml from "@/components/file/inHtml.vue"; import {getUserInfo} from "@/api/system/user"; import func from "@/util/func"; +import moment from "moment/moment"; export default { components: { @@ -255,6 +266,9 @@ }, data() { return { + isTimeStatus: false, + isTimeName: '', + dateValue: "", //鎵归噺缂栬緫瀵硅瘽妗� bulkeditvisible: false, LinkVisible: false, @@ -304,7 +318,6 @@ key: "oid", label: "name", }, - tableHeadFindDatas: [], applyvisible: false, amendvisible: false, addvisible: false, @@ -427,8 +440,13 @@ if (_index == 0) { this.keyWordFind = record.queryField; } + ; + // if(record.fieldType === "datetime"){ + // this.isTimeStatus = true; + // console.log(this.isTimeStatus) + // console.log(record) + // } }) - this.tableHeadFindDatas = newval; if (newval) { this.CodeArray = []; if (newval.find(item => item.prop === 'id')) { @@ -1011,7 +1029,7 @@ templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, ...val, - page: this.page.currentPage = 1,/** 姣忔鐐瑰嚮楂樼骇鏌ヨ閮藉簲璇ヤ粠绗竴椤靛紑濮�*/ + page: this.page.currentPage = 1, /** 姣忔鐐瑰嚮楂樼骇鏌ヨ閮藉簲璇ヤ粠绗竴椤靛紑濮�*/ limit: this.page.pageSize }); this.tableData = res.data.data; @@ -1090,12 +1108,45 @@ this.batchImportData.type = type this.batchImportData.codeClassifyOid = this.codeClassifyOid }, + searchChange(val) { + this.isTimeName = val; + this.isTimeStatus = this.tableHeadFindData.some(item => { + if (item.fieldType === "datetime" && item.prop === val) { + return true; + } + return false; + }); + // console.log(this.isTimeStatus) + }, + dateChange(val) { + if (val) { + const momentDate = moment(this.dateValue); + const dateString = momentDate.format("yyyy-MM-DD"); + this.isLoading = true; + try { + TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + page: this.page.currentPage, + limit: this.page.pageSize, + ['conditionMap[' + this.keyWordFind + ']']: dateString + }).then(res => { + this.tableData = res.data.data; + this.page.total = res.data.total; + }) + } finally { + this.isLoading = false; + } + } + }, //杈撳叆鍥炶溅鎼滅储 tableFindInp() { this.isLoading = true; try { + this.conditionMap = {}; // 瀛樺偍鏌ヨ鏉′欢锛屼富瑕佹槸涓轰簡鐐瑰嚮椤电爜鏃跺甫涓婅繖涓潯浠� this.conditionMap["conditionMap[" + this.keyWordFind + "]"] = '*' + this.WupinFindValue + '*'; + console.log(this.conditionMap) TableData({ templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, diff --git a/Source/UBCS-WEB/src/components/StatisticsComponent/ColumnarChart.vue b/Source/UBCS-WEB/src/components/StatisticsComponent/ColumnarChart.vue index 3824b23..bf10bb2 100644 --- a/Source/UBCS-WEB/src/components/StatisticsComponent/ColumnarChart.vue +++ b/Source/UBCS-WEB/src/components/StatisticsComponent/ColumnarChart.vue @@ -1,6 +1,9 @@ <template> <basic-container> <v-chart id="chart" :auto-resize="true" :options="chartOptions"></v-chart> + <div style="display: inline-block;float: right;margin-bottom: 10px;margin-right: 60px"> + <el-button size="small" type="danger" plain @click="delHandler">鍒犻櫎</el-button> + </div> </basic-container> </template> @@ -9,90 +12,66 @@ import 'echarts/lib/component/tooltip' import 'echarts/lib/component/title' import 'echarts/lib/component/legend' +import { deleteChartId } from "@/api/statistic/chart" export default { name: "ColumnarChart", - props:{ - columnarData:{ - type:Array, - default:[] + props: { + columnarData: { + type: Array, + default: [] }, - chartName:{ - type:String, + chartName: { + type: String, default: "" + }, + btmname: { + type: String } }, - watch:{ - columnarData:{ - immediate:true, - handler(newval,oldval){ - if(newval && newval.length > 0){ - const minValues = newval[0].map(function (_, i) { - return Math.min.apply( - null, - newval.map(function (item) { - return item[i]; - }) - ); - }); - - let colors = ['#84C9E5', '#F68686']; - - const seriesData = []; - for (let i = 0; i < newval.length; i++) { - let curSeriesData = []; - for (let j = 0; j < newval[i].length; j++) { - let borderRadius = [0, 0, 0, 0]; - if (newval[i][j] === minValues[j]) { - borderRadius = [50, 50, 0, 0]; - } - curSeriesData.push({ - value: newval[i][j], - itemStyle: { - normal: { - // barBorderRadius: borderRadius, // 璁剧疆鍦嗚 - color: colors[i], - } - }, - }); - } - let seriesName = (i === 0 ? "鎬婚噺" : "鏂板") - seriesData.push({ - name: seriesName, - type: "bar", - stack: "鎬婚噺", - barWidth: 60, - data: curSeriesData, + watch: { + columnarData: { + immediate: true, + handler(newval, oldval) { + if (newval && newval.length > 0) { + let seriesData = newval.map((data, index) => { + let name = index === 0 ? "鎬婚噺" : "鏂板"; + return { + name: name, + type: 'bar', + data: data, + barWidth: '40%', label: { show: true, position: 'top', - formatter: function (params) { - return params.value === 0 ? '' : params.value; // 鍊间负 0 涓嶆樉绀猴紝鍏朵粬鎯呭喌鏄剧ず - } + // formatter: function (params) { + // if (params.value !== 0) { + // return params.value; + // } else { + // return ''; + // } + // } }, - emphasis: { - focus: "series", - }, - }); - this.chartOptions.series=seriesData - } + }; + }); + this.chartOptions.series = seriesData; } } }, - chartName:{ - handler(newval,oldval){ - if(newval){ + chartName: { + handler(newval, oldval) { + if (newval) { this.chartOptions.title.text = newval + "鏁版嵁缁熻" } }, - immediate:true, - deep:true + immediate: true, + deep: true } }, data() { return { chartOptions: { - color:['#84C9E5', '#F68686'], + color: ['#84C9E5', '#F68686'], title: { text: "", }, @@ -141,6 +120,16 @@ }, created() { }, + methods: { + delHandler() { + deleteChartId({ btmname: this.btmname, chartId: '2' }).then(res => { + this.$message.success(this.chartName+'鏌辩姸鍥撅紝鍒犻櫎鎴愬姛锛�') + this.$emit('refresh'); + }).catch(error => { + this.$message.error(error) + }) + } + } }; </script> diff --git a/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue b/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue index f37802e..083b0ac 100644 --- a/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue +++ b/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue @@ -1,7 +1,10 @@ <template> - <div id="main"> + <div id="main" style="height: 460px;margin-bottom: 15px"> <basic-container> <v-chart id="chart" :auto-resize="true" :options="chartOptions"></v-chart> + <div style="display: inline-block;float: right;margin-bottom: 10px;margin-right: 60px"> + <el-button size="small" type="danger" plain @click="delHandler">鍒犻櫎</el-button> + </div> </basic-container> </div> </template> @@ -12,6 +15,7 @@ import 'echarts/lib/component/tooltip' import 'echarts/lib/component/title' import 'echarts/lib/component/legend' +import {deleteChartId} from "@/api/statistic/chart" export default { name: "lineChart", @@ -23,6 +27,9 @@ chartName: { type: String, default: "" + }, + btmname :{ + type: String } }, watch: { @@ -56,7 +63,7 @@ }, immediate: true, deep: true - } + }, }, data() { return { @@ -86,7 +93,15 @@ } }; }, - created() { + methods:{ + delHandler(){ + deleteChartId({btmname:this.btmname,chartId:'0'}).then(res=>{ + this.$message.success(this.chartName+'鎶樼嚎鍥撅紝鍒犻櫎鎴愬姛锛�') + this.$emit('refresh'); + }).catch(error=>{ + this.$message.error(error) + }) + } } }; </script> @@ -96,4 +111,5 @@ width: 100%; height: 400px; } + </style> diff --git a/Source/UBCS-WEB/src/components/StatisticsComponent/mixCart.vue b/Source/UBCS-WEB/src/components/StatisticsComponent/mixCart.vue index 222f97a..981a190 100644 --- a/Source/UBCS-WEB/src/components/StatisticsComponent/mixCart.vue +++ b/Source/UBCS-WEB/src/components/StatisticsComponent/mixCart.vue @@ -1,6 +1,9 @@ <template> <basic-container> <v-chart id="chart" :auto-resize="true" :options="chartOptions"></v-chart> + <div style="display: inline-block;float: right;margin-bottom: 10px;margin-right: 60px"> + <el-button size="small" type="danger" plain @click="delHandler">鍒犻櫎</el-button> + </div> </basic-container> </template> @@ -10,6 +13,7 @@ import 'echarts/lib/component/tooltip' import 'echarts/lib/component/title' import 'echarts/lib/component/legend' +import {deleteChartId} from "@/api/statistic/chart" export default { name: "stackedAreaChart", @@ -21,6 +25,9 @@ chartName: { type: String, default: "" + }, + btmname :{ + type: String } }, data() { @@ -109,6 +116,16 @@ immediate: true, deep: true } + }, + methods:{ + delHandler(){ + deleteChartId({btmname:this.btmname,chartId:'3'}).then(res=>{ + this.$message.success(this.chartName+'鍫嗗彔鎶樼嚎鍥撅紝鍒犻櫎鎴愬姛锛�') + this.$emit('refresh'); + }).catch(error=>{ + this.$message.error(error) + }) + } } }; </script> diff --git a/Source/UBCS-WEB/src/components/StatisticsComponent/pieChart.vue b/Source/UBCS-WEB/src/components/StatisticsComponent/pieChart.vue index d81c227..7bf5749 100644 --- a/Source/UBCS-WEB/src/components/StatisticsComponent/pieChart.vue +++ b/Source/UBCS-WEB/src/components/StatisticsComponent/pieChart.vue @@ -1,6 +1,9 @@ <template> <basic-container style="width: 100%"> <v-chart :options="chartOptions" :auto-resize="true" id="chart"></v-chart> + <div style="display: inline-block;float: right;margin-bottom: 10px;margin-right: 60px"> + <el-button size="small" type="danger" plain @click="delHandler">鍒犻櫎</el-button> + </div> </basic-container> </template> @@ -9,6 +12,7 @@ import 'echarts/lib/chart/bar' // 瀵煎叆鏌辩姸鍥剧粍浠� import 'echarts/lib/component/tooltip' import 'echarts/lib/component/legend' +import {deleteChartId} from "@/api/statistic/chart" export default { name: "polarBarChart", props:{ @@ -23,6 +27,9 @@ monthData:{ type:Array, default: () => ['涓�鏈�', '浜屾湀', '涓夋湀', '鍥涙湀', '浜旀湀', '鍏湀', '涓冩湀', '鍏湀', '涔濇湀', '鍗佹湀', '鍗佷竴鏈�', '鍗佷簩鏈�'] + }, + btmname :{ + type: String } }, watch:{ @@ -95,6 +102,16 @@ }, created(){ this.chartOptions.color = ['#5470c6', '#91cc75', '#fac858', '#ca8622', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4']; + }, + methods:{ + delHandler(){ + deleteChartId({btmname:this.btmname,chartId:'1'}).then(res=>{ + this.$message.success(this.chartName+'楗肩姸鍥撅紝鍒犻櫎鎴愬姛锛�') + this.$emit('refresh'); + }).catch(error=>{ + this.$message.error(error) + }) + } } } </script> diff --git a/Source/UBCS-WEB/src/components/advanced-query/advancedQuery.vue b/Source/UBCS-WEB/src/components/advanced-query/advancedQuery.vue index f928c61..b6cc3f3 100644 --- a/Source/UBCS-WEB/src/components/advanced-query/advancedQuery.vue +++ b/Source/UBCS-WEB/src/components/advanced-query/advancedQuery.vue @@ -329,7 +329,7 @@ condtionParam['conditionMap['+searchConditions[index].queryField+searchConditions[index].condition+']'] = searchConditions[index].fieldValue; } } - + } // 鏌ヨ鏉′欢娌℃湁鍑虹幇閲嶅灞炴�э紝骞朵笖杩囨护鎺変簡绌哄�硷紝灏变紶閫掔粰鐖剁粍浠� //console.log(condtionParam); diff --git a/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue b/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue index 046f761..66eebd6 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue @@ -1,8 +1,40 @@ <template> <div v-if="display"> - <vciWebReferTree :key="key" :data-key="key" ref="vciWebReferTree" v-if="refertype=='tree'" @setValue="setValue" :value="value" :text="text" :title="title" :disabled="disabled" :referConfig="referConfig"></vciWebReferTree> - <vciWebReferTable :key="key" :data-key="key" v-else-if="refertype=='table'" @setValue="setValue" :value="value" :text="text" :title="title" :disabled="disabled" :referConfig="referConfig"></vciWebReferTable> - <vciWebReferDefalut :key="key" :data-key="key" v-else @setValue="setValue" :value="value" :text="text" :title="title" :disabled="disabled" :referConfig="referConfig"></vciWebReferDefalut> + <vciWebReferTree + v-if="refertype=='tree'" + :key="key" ref="vciWebReferTree" + :data-key="key" + :disabled="disabled" + :referConfig="referConfig" + :text="text" + :title="title" + :value="value" + @setValue="setValue"> + </vciWebReferTree> + + <vciWebReferTable + v-else-if="refertype=='table'" + :key="key" :data-key="key" + :disabled="disabled" + :referConfig="referConfig" + :referType="referType" + :text="text" + :title="title" + :value="value" + @setValue="setValue"> + </vciWebReferTable> + + <vciWebReferDefalut + v-else + :key="key" + :data-key="key" + :disabled="disabled" + :referConfig="referConfig" + :referType="referType" + :text="text" :title="title" + :value="value" + @setValue="setValue"> + </vciWebReferDefalut> </div> </template> @@ -11,22 +43,23 @@ import vciWebReferTree from "./vciWebReferTree.vue"; import vciWebReferTable from "./vciWebReferTable.vue"; import vciWebReferDefalut from "./vciWebReferDefalut.vue"; + export default { name: "vciWebRefer", - props: ["referConfig","value","text","disabled","display",'key'], + props: ["referConfig", "value", "text", "disabled", "display", 'key', 'referType'], components: {vciWebReferTree, vciWebReferTable, vciWebReferDefalut}, data() { return { - reterTypeLeavl:'213', + reterTypeLeavl: '213', refertype: this.referConfig.options.type, - emitData:{}, - title:'', - display:this.display || true, - disabled:this.disabled || false + emitData: {}, + title: '', + display: this.display || true, + disabled: this.disabled || false }; }, created() { - if (!this.referConfig.options && this.referConfig.options.isMuti==undefined) { + if (!this.referConfig.options && this.referConfig.options.isMuti == undefined) { this.referConfig.options = { isMuti: this.referConfig.options.muti || false } @@ -36,21 +69,21 @@ var title = this.referConfig.title || ''; title = title.replace(":", ""); title = title ? ('涓恒��' + title + '銆戦�夊彇鍊�') : ('涓恒��' + this.referConfig.showField + '銆戦�夊彇鍊�'); - this.title=title; + this.title = title; }, methods: { setValue(value) { this.emitData = value; } }, - watch:{ + watch: { // 淇敼鍙嶉鍒扮埗缁勪欢 emitData: { deep: true, immediate: true, handler(newV) { - this.text=newV.text; - this.value=newV.value; + this.text = newV.text; + this.value = newV.value; this.$emit("setReferValue", newV); } }, diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue index 19776b2..f46541a 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue @@ -1,18 +1,19 @@ <template> <div> - <el-dialog :title="title" - v-dialogDrag append-to-body="true" + <el-dialog v-dialogDrag + :height="options.height|| 'auto'" :title="title" :visible.sync="visible" - top="0" - class="avue-dialog avue-dialog--top" :width="options.width|| '80%'" - :height="options.height|| 'auto'"> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - :page.sync="page" + append-to-body="true" + class="avue-dialog avue-dialog--top" + top="0" + @close="dialogClose"> + <avue-crud ref="referDefalutCrud" v-model="value" - ref="referDefalutCrud" + :data="data" + :option="option" + :page.sync="page" + :table-loading="loading" @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange" @@ -24,25 +25,27 @@ </avue-crud> <div class="avue-dialog__footer"> <div class="avue-dialog__footer--left valueInfo">{{ valueInfo }}</div> - <el-button @click="visible=false">鍙� 娑�</el-button> - <el-button @click="setValue" type="primary">纭� 瀹�</el-button> + <el-button @click="escHandler">鍙� 娑�</el-button> + <el-button type="primary" @click="setValue">纭� 瀹�</el-button> </div> </el-dialog> - <avue-input v-model="text" :disabled="disabled" :readonly="true" :placeholder="title" @click="!disabled && (visible=true)" ></avue-input> + <avue-input v-model="text" :disabled="disabled" :placeholder="title" :readonly="true" + @click="!disabled && (visible=true)"></avue-input> </div> </template> <script> -import { validatenull } from "@/util/validate"; -import {getList,getLazyList,getTableDefinedUrl} from "@/api/refer/table"; +import {validatenull} from "@/util/validate"; +import {getList, getLazyList, getTableDefinedUrl} from "@/api/refer/table"; + export default { name: "vciWebReferDefalut", - props:["referConfig","value","text","title","disabled"], + props: ["referConfig", "value", "text", "title", "disabled", "referType"], data() { return { visible: false, - options: this.referConfig.options||{}, + options: this.referConfig.options || {}, isMuti: ("true" == this.referConfig.options.isMuti || this.referConfig.options.isMuti == true || this.referConfig.options.muti == true) ? true : false, props: { value: this.referConfig.valueField || this.referConfig.options.valueField || 'oid', @@ -50,31 +53,32 @@ }, url: this.referConfig.options.url || '/api/ubcs-code/mdmEngineController/defaultReferDataGrid', method: this.referConfig.options.method || 'GET', - tableDefinedUrl:'',//骞冲彴琛ㄦ牸鍦板潃 - copyParam: ['referBo', 'textField', 'valueField', 'displayTable', 'whereSql', 'queryScheme'], + tableDefinedUrl: '',//骞冲彴琛ㄦ牸鍦板潃 + copyParam: ['referBo', 'textField', 'valueField', 'displayTable', 'whereSql', 'queryScheme'], query: {}, loading: false, page: { + layout: this.referType === "master" ? "total,pager,prev, next,jumper" : "total,pager,prev, next,jumper,sizes", pageSize: 10, currentPage: 1, - total: this.referConfig.options.data?this.referConfig.options.data.length :0 + total: this.referConfig.options.data ? this.referConfig.options.data.length : 0 }, - data:this.referConfig.options.data || [], + data: this.referConfig.options.data || [], selectionList: [], option: { addBtn: false, - columnBtn:false, + columnBtn: false, //height: this.referConfig.options.height ? this.referConfig.options.height : 475, calcHeight: 30, tip: false, - menu:false, + menu: false, searchShow: true, searchMenuSpan: 6, searchLabelWidth: 90, border: true, index: true, selection: true, - reserveSelection:true, + reserveSelection: true, dialogClickModal: false, highlightCurrentRow: true, column: [] @@ -85,22 +89,30 @@ this.getParams(); }, mounted() { - if(this.referConfig.options.tableConfig.page){ - this.page.pageSize=this.referConfig.options.tableConfig.page.limit || this.referConfig.options.tableConfig.page.pageSize; - this.page.currentPage=this.referConfig.options.tableConfig.page.page || this.referConfig.options.tableConfig.page.currentPage; - }else if(!validatenull(this.referConfig.options.limit)){ - this.page.pageSize=this.referConfig.options.limit - }else if(!validatenull(this.referConfig.options.tableConfig.limit)){ - this.page.pageSize=this.referConfig.options.tableConfig.limit + if (this.referConfig.options.tableConfig && this.referConfig.options.tableConfig.page) { + this.page.pageSize = this.referConfig.options.tableConfig.page.limit || this.referConfig.options.tableConfig.page.pageSize; + this.page.currentPage = this.referConfig.options.tableConfig.page.page || this.referConfig.options.tableConfig.page.currentPage; + } else if (!validatenull(this.referConfig.options.limit)) { + this.page.pageSize = this.referConfig.options.limit; + } else if (this.referConfig.options.tableConfig && !validatenull(this.referConfig.options.tableConfig.limit)) { + this.page.pageSize = this.referConfig.options.tableConfig.limit; } }, - computed:{ - valueInfo:function (){ - return this.text ? ("宸茶缃殑鍊间负[" + this.text + "]"): '鏈缃��' + computed: { + valueInfo: function () { + return this.text ? ("宸茶缃殑鍊间负[" + this.text + "]") : '鏈缃��' } }, methods: { - getParams:function () { + escHandler() { + this.visible = false; + this.$refs.referDefalutCrud.refreshTable() + }, + dialogClose() { + this.visible = false; + this.$refs.referDefalutCrud.refreshTable() + }, + getParams: function () { var queryParams = {}; if (this.options.extraParams) { queryParams = this.options.extraParams; @@ -127,10 +139,10 @@ queryParams['order'] = this.options.initSort.type;//鏂规硶 queryParams['sort'] = this.options.initSort.field;//瀛楁 } - if(this.options.sortField){ + if (this.options.sortField) { queryParams['sort'] = this.options.sortField;//瀛楁 } - if(this.options.sortType){ + if (this.options.sortType) { queryParams['order'] = this.options.sortType;//鏂规硶 } if (this.options.conditionParams) { @@ -168,7 +180,7 @@ sortable: true, width: 150, search: true, - formatter:function (d){ + formatter: function (d) { return d.id || d.data.id } }, { @@ -177,14 +189,14 @@ sortable: true, width: 150, search: true, - formatter:function (d){ + formatter: function (d) { return d.name || d.data.name } }, { prop: 'description', label: '鎻忚堪', width: 250, - formatter:function (d){ + formatter: function (d) { return d.description || d.data.description } }, { @@ -193,23 +205,23 @@ width: 60, hidden: (!this.controllerSecret), hide: (!this.controllerSecret), - formatter:function (d){ + formatter: function (d) { return d.secretGradeText || d.data.secretGradeText } }]; } else { this.option.column = this.options.tableConfig.cols.map(item => { if (item.field != 'LAY_TABLE_INDEX' && item.field != 'LAY_CHECKED') { - let formatter=item.template || item.templet; - if(typeof formatter == "string" && formatter !=''){ - formatter=eval("(" + formatter + ")") - }else{ - formatter=function (d){ - if(d[item.field]!=undefined){ + let formatter = item.template || item.templet; + if (typeof formatter == "string" && formatter != '') { + formatter = eval("(" + formatter + ")") + } else { + formatter = function (d) { + if (d[item.field] != undefined) { return d[item.field] - }else if(d.data[item.field] !=undefined){ + } else if (d.data[item.field] != undefined) { return d.data[item.field] - }else { + } else { return '' } } @@ -218,11 +230,11 @@ ...item, label: item.title, prop: item.field, - formatter:formatter, - sortable:item.sort, - hide:item.hidden, - search:this.options.tableConfig.queryColumns.some(qItem=>{ - return qItem.field==item.field + formatter: formatter, + sortable: item.sort, + hide: item.hidden, + search: this.options.tableConfig.queryColumns.some(qItem => { + return qItem.field == item.field }) } } @@ -239,67 +251,74 @@ } this.params = paramsData; }, - setValue(){ - if(this.selectionList.length==0){ - this.$message.warning( '娌℃湁閫夋嫨鏁版嵁'); + setValue() { + if (this.selectionList.length == 0) { + this.$message.warning('娌℃湁閫夋嫨鏁版嵁'); return false; - }else if(this.selectionList.length>1 && !this.isMuti){ - this.$message.warning( '姣忔鍙兘閫夋嫨涓�鏉℃暟鎹�'); + } else if (this.selectionList.length > 1 && !this.isMuti) { + this.$message.warning('姣忔鍙兘閫夋嫨涓�鏉℃暟鎹�'); return false; } var value = []; var text = []; - var isMutiValue = (this.props.value.indexOf(",")>-1); - var isMutiRaw = (this.props.label.indexOf(",")>-1); - var _that=this - this.selectionList.forEach((item,_index) =>{ - if(isMutiValue){ + var isMutiValue = (this.props.value.indexOf(",") > -1); + var isMutiRaw = (this.props.label.indexOf(",") > -1); + var _that = this + this.selectionList.forEach((item, _index) => { + if (isMutiValue) { var valueFieldArray = _that.props.value.split(","); - valueFieldArray.forEach((_itemField,_indexField)=>{ - let itemValue=item[_itemField]; - if(itemValue==undefined || itemValue == null){ - itemValue=item['data'][_itemField] + valueFieldArray.forEach((_itemField, _indexField) => { + let itemValue = item[_itemField]; + if (itemValue == undefined || itemValue == null) { + itemValue = item['data'][_itemField] } - value.push( itemValue + (_that.referConfig.valueSep?_that.referConfig.valueSep:' ')); + value.push(itemValue + (_that.referConfig.valueSep ? _that.referConfig.valueSep : ' ')); }) - }else { - let itemValue=item[_that.props.value]; - if(itemValue==undefined || itemValue == null){ - itemValue=item['data'][_that.props.value] + } else { + let itemValue = item[_that.props.value]; + if (itemValue == undefined || itemValue == null) { + itemValue = item['data'][_that.props.value] } value.push(itemValue); } - if(isMutiRaw) { + if (isMutiRaw) { var rawFieldArray = _that.props.label.split(","); - rawFieldArray.forEach((_itemField,_indexField)=>{ - let itemText=item[_itemField]; - if(itemText==undefined || itemText == null){ - itemText=item['data'][_itemField] + rawFieldArray.forEach((_itemField, _indexField) => { + let itemText = item[_itemField]; + if (itemText == undefined || itemText == null) { + itemText = item['data'][_itemField] } - text.push(itemText + (_that.referConfig.textSep?_that.referConfig.textSep:' ')) ; + text.push(itemText + (_that.referConfig.textSep ? _that.referConfig.textSep : ' ')); }) - }else{ - let itemText=item[_that.props.label]; - if(itemText==undefined || itemText == null){ - itemText=item['data'][_that.props.label] + } else { + let itemText = item[_that.props.label]; + if (itemText == undefined || itemText == null) { + itemText = item['data'][_that.props.label] } text.push(itemText); } }) - let mapFields =this.referConfig.fieldMap || {}; + let mapFields = this.referConfig.fieldMap || {}; try { - if(!validatenull(this.options.mapFields)){ - mapFields =Object.assign(this.referConfig.fieldMap,JSON.parse(this.options.mapFields)) ; + if (!validatenull(this.options.mapFields)) { + mapFields = Object.assign(this.referConfig.fieldMap, JSON.parse(this.options.mapFields)); } - }catch (e) { + } catch (e) { } - this.value=value.join(','); - this.text=text.join(',') - this.$emit("setValue", {field:this.referConfig.field,showField:this.referConfig.showField,value:this.value,text:this.text,rawData:this.selectionList,fieldMap:mapFields}); - this.visible=false; + this.value = value.join(','); + this.text = text.join(',') + this.$emit("setValue", { + field: this.referConfig.field, + showField: this.referConfig.showField, + value: this.value, + text: this.text, + rawData: this.selectionList, + fieldMap: mapFields + }); + this.visible = false; }, searchReset() { this.query = {}; @@ -311,16 +330,16 @@ this.onLoad(this.page); done(); }, - currentChange(currentPage){ + currentChange(currentPage) { this.page.currentPage = currentPage; }, - sizeChange(pageSize){ + sizeChange(pageSize) { this.page.pageSize = pageSize; }, - rowClick (row) { + rowClick(row) { this.$refs.referDefalutCrud.toggleSelection(); this.$refs.referDefalutCrud.toggleRowSelection(row); //閫変腑褰撳墠琛� - this.selectionList=[row] + this.selectionList = [row] }, selectionChange(list) { if (!this.isMuti && list.length > 1) { @@ -336,33 +355,33 @@ refreshChange() { this.onLoad(this.page, this.query); }, - onLoad(page, params={}) { - if(this.url){ + onLoad(page, params = {}) { + if (this.url) { this.loading = true; - var query={} + var query = {} if (this.query) { for (var key in this.query) { query['conditionMap["' + key + '"]'] = this.query[key]; } } - getList(Object.assign(params,this.params,this.query, query),page.currentPage, page.pageSize, this.url, this.method).then(res => { - let data=[] - if(res.data.records){ + getList(Object.assign(params, this.params, this.query, query), page.currentPage, page.pageSize, this.url, this.method).then(res => { + let data = [] + if (res.data.records) { data = res.data.records - this.page.total=res.data.total ; - }else{ + this.page.total = res.data.total; + } else { data = res.data.data.records; - this.page.total=res.data.data.total; + this.page.total = res.data.data.total; } - this.data=data.map(item => { - item.data=item.data || {} + this.data = data.map(item => { + item.data = item.data || {} return { ...item } }) this.loading = false; this.selectionClear(); - }).catch(error=>{ + }).catch(error => { this.$message.error(error); this.loading = false; }); @@ -374,7 +393,7 @@ </script> <style scoped> -.valueInfo{ +.valueInfo { float: left; border: 1px solid #E9E7E7; display: inline-block; diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue index 7f49775..bbf5e3b 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue @@ -1,18 +1,19 @@ <template> <div> - <el-dialog :title="title" - v-dialogDrag append-to-body="true" + <el-dialog v-dialogDrag + :height="options.height|| 'auto'" :title="title" :visible.sync="visible" - top="0" - class="avue-dialog avue-dialog--top" :width="options.width|| '80%'" - :height="options.height|| 'auto'"> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - :page.sync="page" + append-to-body="true" + class="avue-dialog avue-dialog--top" + top="0" + @close="dialogClose"> + <avue-crud ref="referCrud" v-model="value" - ref="referCrud" + :data="data" + :option="option" + :page.sync="page" + :table-loading="loading" @search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange" @@ -26,22 +27,24 @@ </template> </avue-crud> <div class="avue-dialog__footer"> - <div class="avue-dialog__footer--left valueInfo">{{ valueInfo }} </div> - <el-button @click="visible=false">鍙� 娑�</el-button> - <el-button @click="setValue" type="primary">纭� 瀹�</el-button> + <div class="avue-dialog__footer--left valueInfo">{{ valueInfo }}</div> + <el-button @click="escHandler">鍙� 娑�</el-button> + <el-button type="primary" @click="setValue">纭� 瀹�</el-button> </div> </el-dialog> - <avue-input v-model="text" :disabled="disabled" :readonly="true" :placeholder="title" @click="!disabled && (visible=true)"></avue-input> + <avue-input v-model="text" :disabled="disabled" :placeholder="title" :readonly="true" + @click="!disabled && (visible=true)"></avue-input> </div> </template> <script> -import { validatenull } from "@/util/validate"; -import {getList,getLazyList,getTableDefinedUrl} from "@/api/refer/table"; +import {validatenull} from "@/util/validate"; +import {getList, getLazyList, getTableDefinedUrl} from "@/api/refer/table"; + export default { name: "vciWebReferTable", - props:["referConfig","value","text","title","disabled"], + props: ["referConfig", "value", "text", "title", "disabled", "referType"], data() { return { visible: false, @@ -52,35 +55,36 @@ label: this.referConfig.textField || this.referConfig.options.textField || "name" }, url: this.referConfig.options.url || '/api/ubcs-code/mdmEngineController/defaultReferDataGrid', - tableDefinedUrl:'',//骞冲彴琛ㄦ牸鍦板潃 - copyParam: ['referBo', 'textField', 'valueField', 'displayTable', 'whereSql', 'queryScheme'], + tableDefinedUrl: '',//骞冲彴琛ㄦ牸鍦板潃 + copyParam: ['referBo', 'textField', 'valueField', 'displayTable', 'whereSql', 'queryScheme'], query: {}, loading: false, page: { + layout: this.referType === "master" ? "total,pager,prev, next,jumper" : "total,pager,prev, next,jumper,sizes", pageSize: 10, currentPage: 1, - total: this.referConfig.options.data?this.referConfig.options.data.length :0 + total: this.referConfig.options.data ? this.referConfig.options.data.length : 0 }, - data:this.referConfig.options.data || [], + data: this.referConfig.options.data || [], selectionList: [], option: { addBtn: false, - columnBtn:false, + columnBtn: false, height: this.referConfig.options.height ? this.referConfig.options.height : 475, calcHeight: 30, tip: false, - menu:false, + menu: false, searchShow: true, searchMenuSpan: 6, searchLabelWidth: 90, border: true, index: true, selection: true, - reserveSelection:true, + reserveSelection: true, dialogClickModal: false, highlightCurrentRow: true, - rowKey:'oid', - rowParentKey:'parentSaleProduct', + rowKey: 'oid', + rowParentKey: 'parentSaleProduct', column: [] } }; @@ -89,56 +93,64 @@ this.getParams(); }, mounted() { - if(this.referConfig.options.page){ - this.page.pageSize=this.referConfig.options.tableConfig.page.limit || this.referConfig.options.tableConfig.page.pageSize; - this.page.currentPage=this.referConfig.options.tableConfig.page.page || this.referConfig.options.tableConfig.page.currentPage; - }else if(!validatenull(this.referConfig.options.limit)){ - this.page.pageSize=this.referConfig.options.limit - }else if(!validatenull(this.referConfig.options.tableConfig.limit)){ - this.page.pageSize=this.referConfig.options.tableConfig.limit + if (this.referConfig.options.tableConfig && this.referConfig.options.tableConfig.page) { + this.page.pageSize = this.referConfig.options.tableConfig.page.limit || this.referConfig.options.tableConfig.page.pageSize; + this.page.currentPage = this.referConfig.options.tableConfig.page.page || this.referConfig.options.tableConfig.page.currentPage; + } else if (!validatenull(this.referConfig.options.limit)) { + this.page.pageSize = this.referConfig.options.limit; + } else if (this.referConfig.options.tableConfig && !validatenull(this.referConfig.options.tableConfig.limit)) { + this.page.pageSize = this.referConfig.options.tableConfig.limit; } this.$nextTick(() => { this.$refs.referCrud.doLayout() }) }, - computed:{ - valueInfo:function (){ - return this.text ? ("宸茶缃殑鍊间负[" + this.text + "]"): '鏈缃��' + computed: { + valueInfo: function () { + return this.text ? ("宸茶缃殑鍊间负[" + this.text + "]") : '鏈缃��' } }, methods: { - getParams:function (){ + escHandler() { + this.visible = false; + this.$refs.referDefalutCrud.refreshTable() + }, + dialogClose() { + this.visible = false; + this.$refs.referDefalutCrud.refreshTable() + }, + getParams: function () { var queryParams = {}; - if(this.options.extraParams){ + if (this.options.extraParams) { queryParams = this.options.extraParams; } - if(this.options.useFormKey && this.options.formValues){ + if (this.options.useFormKey && this.options.formValues) { //浣跨敤琛ㄥ崟涓婄殑瀛楁鏉ヨ繃婊� - queryParams['conditionMap["' + (this.options.paramForFormKey?this.options.paramForFormKey:this.options.useFormKey) + '"]'] = this.options.formValues[this.options.useFormKey]; + queryParams['conditionMap["' + (this.options.paramForFormKey ? this.options.paramForFormKey : this.options.useFormKey) + '"]'] = this.options.formValues[this.options.useFormKey]; } - if(this.options.where ) { + if (this.options.where) { for (var key in this.options.where) { queryParams['conditionMap["' + key + '"]'] = this.options.where[key];//鏂� } } - for(var i= 0 ; i < this.copyParam.length ; i ++){ + for (var i = 0; i < this.copyParam.length; i++) { queryParams[this.copyParam[i]] = this.options[this.copyParam[i]]; } - queryParams["isMuti"]=this.isMuti; - queryParams.muti =this.isMuti; - if(!queryParams['referBo']){ + queryParams["isMuti"] = this.isMuti; + queryParams.muti = this.isMuti; + if (!queryParams['referBo']) { queryParams['referBo'] = this.options['referBo'] || this.options['referType']; } - queryParams['referType']= queryParams['referBo'] + queryParams['referType'] = queryParams['referBo'] if (this.options.initSort) { queryParams['order'] = this.options.initSort.type;//鏂规硶 queryParams['sort'] = this.options.initSort.field;//瀛楁 } - if(this.options.sortField){ + if (this.options.sortField) { queryParams['sort'] = this.options.sortField;//瀛楁 } - if(this.options.sortType){ + if (this.options.sortType) { queryParams['order'] = this.options.sortType;//鏂规硶 } if (this.options.conditionParams) { @@ -163,36 +175,40 @@ } var paramsData = {}; //涓轰簡澶勭悊鍗曞紩鍙峰拰鍙屽紩鍙风殑 - if(queryParams){ - for (var key in queryParams){ + if (queryParams) { + for (var key in queryParams) { paramsData[key.replace(/"/g, "'")] = queryParams[key]; } } - if(this.options.displayTable){ + if (this.options.displayTable) { //璇存槑鏄娇鐢ㄥ钩鍙扮殑琛ㄦ牸 - getTableDefinedUrl({btmType:(this.options.referBo||this.options.referType),code:this.options.displayTable,isMuti:this.isMuti},this.tableDefinedUrl).then(result => { - console.log('result',result) - if(result.success){ + getTableDefinedUrl({ + btmType: (this.options.referBo || this.options.referType), + code: this.options.displayTable, + isMuti: this.isMuti + }, this.tableDefinedUrl).then(result => { + console.log('result', result) + if (result.success) { var queryScheme = result.querySchema; - if(!validatenull(queryScheme) && validatenull(this.options.queryScheme)){ + if (!validatenull(queryScheme) && validatenull(this.options.queryScheme)) { this.options.queryScheme = queryScheme; } paramsData['queryScheme'] = this.options.queryScheme; - if(result.showIndex){ + if (result.showIndex) { this.option.index = true; } - if(result.showCheckbox){ + if (result.showCheckbox) { this.option.selection = true } var referColumn = ""; - if(result.columns){ - this.option.column= result.columns.map(item => { - if(item.field.indexOf(".")>-1){ + if (result.columns) { + this.option.column = result.columns.map(item => { + if (item.field.indexOf(".") > -1) { referColumn += item.field + ","; - item.field = item.field.replace(".","_"); + item.field = item.field.replace(".", "_"); } - if(!validatenull(item.enumCode)) { + if (!validatenull(item.enumCode)) { //鏄灇涓剧殑鍐呭 item.type = 'select'; item.dicUrl = "/api/ubcs-omd/enum/dictionary?code=" + item.enumCode; @@ -209,12 +225,12 @@ trigger: "blur" }]; } - item.formatter=function(d){ - if(d[item.field]!=undefined){ + item.formatter = function (d) { + if (d[item.field] != undefined) { return d[item.field] - }else if(d.data[item.field] !=undefined){ + } else if (d.data[item.field] != undefined) { return d.data[item.field] - }else { + } else { return '' } }; @@ -227,48 +243,48 @@ }) } paramsData['referColumn'] = referColumn; - if(result.limit>0){ + if (result.limit > 0) { this.page.pageSize = result.limit; - this.page.currentPage=1 + this.page.currentPage = 1 } - if(this.options.isTreeGrid){ + if (this.options.isTreeGrid) { //琛ㄦ牸鏍戝姞涓婇厤缃� } - this.params=paramsData; - }else{ + this.params = paramsData; + } else { this.$message.error(result.msg); } }); - }else{ + } else { //璇存槑鏄嚜瀹氫箟鐨勮〃鏍� var tableConfig = this.options.tableConfig; - if(!tableConfig){ - this.$message.error( '娌℃湁瀹氫箟鍙傜収鐨勮〃鏍奸厤缃�'); + if (!tableConfig) { + this.$message.error('娌℃湁瀹氫箟鍙傜収鐨勮〃鏍奸厤缃�'); } - if(!paramsData){ + if (!paramsData) { paramsData = { - currentUserReferModelKey:this.options.currentUserReferModelKey, - currentUserReferMethodKey:this.options.currentUserReferMethodKey + currentUserReferModelKey: this.options.currentUserReferModelKey, + currentUserReferMethodKey: this.options.currentUserReferMethodKey }; - }else{ + } else { paramsData['currentUserReferModelKey'] = this.options.currentUserReferModelKey; paramsData['currentUserReferMethodKey'] = this.options.currentUserReferMethodKey; } - if(this.options.tableConfig && this.options.tableConfig.cols && this.options.tableConfig.cols.length>0) { + if (this.options.tableConfig && this.options.tableConfig.cols && this.options.tableConfig.cols.length > 0) { //璇存槑浼犻�掍簡鐨� - this.option.column= this.options.tableConfig.cols.map(item => { + this.option.column = this.options.tableConfig.cols.map(item => { if (item.field != 'LAY_TABLE_INDEX' && item.field != 'LAY_CHECKED') { - let formatter=item.template || item.templet; - if(typeof formatter == "string" && formatter !=''){ - formatter=eval("(" + formatter + ")") - }else{ - formatter=function (d){ - if(d[item.field]!=undefined){ + let formatter = item.template || item.templet; + if (typeof formatter == "string" && formatter != '') { + formatter = eval("(" + formatter + ")") + } else { + formatter = function (d) { + if (d[item.field] != undefined) { return d[item.field] - }else if(d.data[item.field] !=undefined){ + } else if (d.data[item.field] != undefined) { return d.data[item.field] - }else { + } else { return '' } } @@ -277,82 +293,89 @@ ...item, label: item.title, prop: item.field, - formatter:formatter, - sortable:item.sort, - hide:item.hidden, - search: this.options.tableConfig.queryColumns.some(qItem=>{ - return qItem.field==item.field + formatter: formatter, + sortable: item.sort, + hide: item.hidden, + search: this.options.tableConfig.queryColumns.some(qItem => { + return qItem.field == item.field }) } } }) } - if(this.options.isTreeGrid){ + if (this.options.isTreeGrid) { //琛ㄦ牸鏍戝姞涓婇厤缃� } } - this.params=paramsData; + this.params = paramsData; }, - setValue(){ - if(this.selectionList.length==0){ - this.$message.warning( '娌℃湁閫夋嫨鏁版嵁'); + setValue() { + if (this.selectionList.length == 0) { + this.$message.warning('娌℃湁閫夋嫨鏁版嵁'); return false; - }else if(this.selectionList.length>1 && !this.isMuti){ - this.$message.warning( '姣忔鍙兘閫夋嫨涓�鏉℃暟鎹�'); + } else if (this.selectionList.length > 1 && !this.isMuti) { + this.$message.warning('姣忔鍙兘閫夋嫨涓�鏉℃暟鎹�'); return false; } var value = []; var text = []; - var isMutiValue = (this.props.value.indexOf(",")>-1); - var isMutiRaw = (this.props.label.indexOf(",")>-1); - var _that=this - this.selectionList.forEach((item,_index) =>{ - if(isMutiValue){ + var isMutiValue = (this.props.value.indexOf(",") > -1); + var isMutiRaw = (this.props.label.indexOf(",") > -1); + var _that = this + this.selectionList.forEach((item, _index) => { + if (isMutiValue) { var valueFieldArray = _that.props.value.split(","); - valueFieldArray.forEach((_itemField,_indexField)=>{ - let itemValue=item[_itemField]; - if(itemValue==undefined || itemValue == null){ - itemValue=item['data'][_itemField] + valueFieldArray.forEach((_itemField, _indexField) => { + let itemValue = item[_itemField]; + if (itemValue == undefined || itemValue == null) { + itemValue = item['data'][_itemField] } - value.push( itemValue + (_that.referConfig.valueSep?_that.referConfig.valueSep:' ')); + value.push(itemValue + (_that.referConfig.valueSep ? _that.referConfig.valueSep : ' ')); }) - }else { - let itemValue=item[_that.props.value]; - if(itemValue==undefined || itemValue == null){ - itemValue=item['data'][_that.props.value] + } else { + let itemValue = item[_that.props.value]; + if (itemValue == undefined || itemValue == null) { + itemValue = item['data'][_that.props.value] } value.push(itemValue); } - if(isMutiRaw) { + if (isMutiRaw) { var rawFieldArray = _that.props.label.split(","); - rawFieldArray.forEach((_itemField,_indexField)=>{ - let itemText=item[_itemField]; - if(itemText==undefined || itemText == null){ - itemText=item['data'][_itemField] + rawFieldArray.forEach((_itemField, _indexField) => { + let itemText = item[_itemField]; + if (itemText == undefined || itemText == null) { + itemText = item['data'][_itemField] } - text.push(itemText + (_that.referConfig.textSep?_that.referConfig.textSep:' ')) ; + text.push(itemText + (_that.referConfig.textSep ? _that.referConfig.textSep : ' ')); }) - }else{ - let itemText=item[_that.props.label]; - if(itemText==undefined || itemText == null){ - itemText=item['data'][_that.props.label] + } else { + let itemText = item[_that.props.label]; + if (itemText == undefined || itemText == null) { + itemText = item['data'][_that.props.label] } text.push(itemText); } }) - let mapFields =this.referConfig.fieldMap || {}; + let mapFields = this.referConfig.fieldMap || {}; try { - if(!validatenull(this.options.mapFields)){ - mapFields =Object.assign(this.referConfig.fieldMap,JSON.parse(this.options.mapFields)) ; + if (!validatenull(this.options.mapFields)) { + mapFields = Object.assign(this.referConfig.fieldMap, JSON.parse(this.options.mapFields)); } - }catch (e) { + } catch (e) { } - this.value=value.join(','); - this.text=text.join(',') - this.$emit("setValue", {field:this.referConfig.field,showField:this.referConfig.showField,value:this.value,text:this.text,rawData:this.selectionList,fieldMap:mapFields}); - this.visible=false; + this.value = value.join(','); + this.text = text.join(',') + this.$emit("setValue", { + field: this.referConfig.field, + showField: this.referConfig.showField, + value: this.value, + text: this.text, + rawData: this.selectionList, + fieldMap: mapFields + }); + this.visible = false; }, searchReset() { this.query = {}; @@ -364,16 +387,16 @@ this.onLoad(this.page); done(); }, - currentChange(currentPage){ + currentChange(currentPage) { this.page.currentPage = currentPage; }, - sizeChange(pageSize){ + sizeChange(pageSize) { this.page.pageSize = pageSize; }, - rowClick (row) { + rowClick(row) { this.$refs.referCrud.toggleSelection(); this.$refs.referCrud.toggleRowSelection(row); //閫変腑褰撳墠琛� - this.selectionList=[row] + this.selectionList = [row] }, selectionChange(list) { if (!this.isMuti && list.length > 1) { @@ -389,33 +412,33 @@ refreshChange() { this.onLoad(this.page, this.query); }, - onLoad(page, params={}) { - if(this.url){ + onLoad(page, params = {}) { + if (this.url) { this.loading = true; - var query={} + var query = {} if (this.query) { for (var key in this.query) { query['conditionMap["' + key + '"]'] = this.query[key]; } } - getList(Object.assign(params,this.params,this.query, query),page.currentPage, page.pageSize, this.url).then(res => { - let data=[] - if(res.data.records){ + getList(Object.assign(params, this.params, this.query, query), page.currentPage, page.pageSize, this.url).then(res => { + let data = [] + if (res.data.records) { data = res.data.records - this.page.total=res.data.total ; - }else{ + this.page.total = res.data.total; + } else { data = res.data.data.records; - this.page.total=res.data.data.total; + this.page.total = res.data.data.total; } - this.data=data.map(item => { - item.data=item.data || {} + this.data = data.map(item => { + item.data = item.data || {} return { ...item } }) this.loading = false; this.selectionClear(); - }).catch(error=>{ + }).catch(error => { this.$message.error(error); this.loading = false; }); @@ -427,7 +450,7 @@ </script> <style scoped> -.valueInfo{ +.valueInfo { float: left; border: 1px solid #E9E7E7; display: inline-block; diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue index f1a8c0d..6e1cbeb 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue @@ -1,34 +1,44 @@ <template> - <avue-input-tree ref="referTree" :props="props" :disabled="disabled" :lazy="lazy" :tree-load="treeLoad" :node-click="nodeClick" :checked="checked" - :leaf-only="referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="title" :dic="treeData"></avue-input-tree> + <avue-input-tree ref="referTree" + v-model="value" + :checked="checked" + :dic="treeData" + :disabled="disabled" + :lazy="lazy" + :leaf-only="referConfig.onlyLeaf" + :multiple="isMuti" + :node-click="nodeClick" + :placeholder="title" + :props="props" + :tree-load="treeLoad"></avue-input-tree> </template> <script> -import {getTree,getLazyTree} from "@/api/refer/tree"; +import {getTree, getLazyTree} from "@/api/refer/tree"; import {validatenull} from "@/util/validate"; export default { name: "vciWebReferTree", - props:["referConfig","value","text","title","disabled"], + props: ["referConfig", "value", "text", "title", "disabled"], data() { return { visible: false, options: this.referConfig.options, lazy: this.referConfig.options.loadType == 'node', - isMuti:("true" == this.referConfig.options.isMuti || this.referConfig.options.isMuti == true || this.referConfig.options.muti == true) ? true : false, + isMuti: ("true" == this.referConfig.options.isMuti || this.referConfig.options.isMuti == true || this.referConfig.options.muti == true) ? true : false, props: { value: 'oid', label: "name" }, - config:{ + config: { valueField: this.referConfig.valueField || this.referConfig.options.valueField || 'oid', - textField:this.referConfig.textField || this.referConfig.options.textField || "name", - textSep:this.referConfig.textSep || ' ' + textField: this.referConfig.textField || this.referConfig.options.textField || "name", + textSep: this.referConfig.textSep || ' ' }, treeUrl: this.referConfig.options.url || '/api/ubcs-code/mdmEngineController/defaultReferTree', treeData: [], - checkedData:[], - currentNode:{}, + checkedData: [], + currentNode: {}, params: {}, loadType: {'all': 'all', 'node': 'node'}, copyParam: ['btmType', 'lnType', 'toBtmType', 'textField', 'valueField', 'parentFieldName', 'parentValue', 'sort', 'order', 'isDirection', 'whereSql', 'isMuti', 'queryScheme', 'isQueryAllColumn', 'queryColumn', 'split', 'loadType', 'onlyLeaf', 'onlyLeafText', 'parentUsedField'] @@ -38,44 +48,44 @@ this.getParams(); }, mounted() { - if(!this.lazy){ - if(this.options.data){//濡傛灉鏄浐瀹氭暟鎹殑鎯呭喌涓� - this.treeData=this.options.data - }else{ + if (!this.lazy) { + if (this.options.data) {//濡傛灉鏄浐瀹氭暟鎹殑鎯呭喌涓� + this.treeData = this.options.data + } else { this.getTree() } } }, - computed:{}, + computed: {}, methods: { - getParams:function (){ + getParams: function () { var queryParams = {}; - if(this.options.extraParams){ + if (this.options.extraParams) { queryParams = this.options.extraParams; } - for(var i= 0 ; i < this.copyParam.length ; i ++){ - if(this.copyParam[i] == "btmType") { + for (var i = 0; i < this.copyParam.length; i++) { + if (this.copyParam[i] == "btmType") { queryParams[this.copyParam[i]] = this.options['referBo'] || this.options['referType']; - }else if(this.copyParam[i] in this.options){ + } else if (this.copyParam[i] in this.options) { queryParams[this.copyParam[i]] = this.options[this.copyParam[i]]; } } queryParams['referBo'] = this.options['referBo'] || this.options['referType']; - queryParams['referType']= queryParams['referBo'] - queryParams['selectAllLevel'] = (this.options.loadType == this.loadType.all?true:false);//true鏃跺悗鍙颁細鎶ラ敊 + queryParams['referType'] = queryParams['referBo'] + queryParams['selectAllLevel'] = (this.options.loadType == this.loadType.all ? true : false);//true鏃跺悗鍙颁細鎶ラ敊 - queryParams.muti =this.isMuti; - if(queryParams.isQueryAllColumn =="true"){ + queryParams.muti = this.isMuti; + if (queryParams.isQueryAllColumn == "true") { queryParams.isQueryAllColumn = true; } - if(this.options.useFormKey && this.options.formValues){ + if (this.options.useFormKey && this.options.formValues) { //浣跨敤琛ㄥ崟涓婄殑瀛楁鏉ヨ繃婊� - queryParams['conditionMap["' + (this.options.paramForFormKey?this.options.paramForFormKey:this.options.useFormKey) + '"]'] = this.options.formValues[this.options.useFormKey]; + queryParams['conditionMap["' + (this.options.paramForFormKey ? this.options.paramForFormKey : this.options.useFormKey) + '"]'] = this.options.formValues[this.options.useFormKey]; } if (!this.options.loadType) { this.options.loadType = this.loadType.node; } - queryParams['queryAllLevel'] = this.options.loadType == this.loadType.node? false : true;//榛樿閫愮骇灞曞紑 + queryParams['queryAllLevel'] = this.options.loadType == this.loadType.node ? false : true;//榛樿閫愮骇灞曞紑 queryParams['loadType'] = this.options.loadType; queryParams['multipleSelect'] = this.isMuti; queryParams['isMuti'] = queryParams['multipleSelect']; @@ -83,10 +93,10 @@ queryParams['order'] = this.options.initSort.type;//鏂规硶 queryParams['sort'] = this.options.initSort.field;//瀛楁 } - if(this.options.sortField){ + if (this.options.sortField) { queryParams['sort'] = this.options.sortField;//瀛楁 } - if(this.options.sortType){ + if (this.options.sortType) { queryParams['order'] = this.options.sortType;//鏂规硶 } if (this.options.rootParams) { @@ -100,7 +110,7 @@ queryParams['conditionMap["' + key + '"]'] = this.options.conditionParams[key];//鏂扮殑鏂瑰紡 } } - if(this.options.where ) { + if (this.options.where) { for (var key in this.options.where) { queryParams['conditionMap["' + key + '"]'] = this.options.where[key];//鏂� } @@ -125,7 +135,7 @@ queryParams['replaceMap["' + key + '"]'] = this.options.replaceParams[key];//鏂扮殑鏂瑰紡 } } - this.params=queryParams; + this.params = queryParams; }, getTree() { @@ -150,24 +160,24 @@ treeLoad: function (treeNode, resolve) { //閫愮骇鍔犺浇 const parentOid = (treeNode.level === 0) ? 0 : treeNode.data.oid; - this.params.parentOid=parentOid.indexOf('@vcitreesep@') > -1 ? parentOid.split('@vcitreesep@')[1] : parentOid; - this.params.parentValue=this.params.parentOid; - this.params.parentBtmName=treeNode.data.attributes.btmName || treeNode.data.attributes.btmname; - this.params.parentBtmType=this.params.parentBtmName; + this.params.parentOid = parentOid.indexOf('@vcitreesep@') > -1 ? parentOid.split('@vcitreesep@')[1] : parentOid; + this.params.parentValue = this.params.parentOid; + this.params.parentBtmName = treeNode.data.attributes.btmName || treeNode.data.attributes.btmname; + this.params.parentBtmType = this.params.parentBtmName; if (this.options.rootParams && treeNode.level !== 0) { for (var key in this.options.rootParams) { delete this.params[key] } } - getLazyTree(this.params,this.treeUrl).then(res => { + getLazyTree(this.params, this.treeUrl).then(res => { resolve(res.data.data.map(item => { - if(!item.attributes){ - item.attributes={ - data:{} + if (!item.attributes) { + item.attributes = { + data: {} } - }else{ - item.attributes.data=item.attributes.data || {} + } else { + item.attributes.data = item.attributes.data || {} } return { ...item, @@ -176,39 +186,39 @@ })) }); }, - nodeClick(data, node, nodeComp){ - if(!this.isMuti) { - this.setValue({checkedNodes:[data]}) + nodeClick(data, node, nodeComp) { + if (!this.isMuti) { + this.setValue({checkedNodes: [data]}) } }, checked(checkedNode, checkedData) { this.setValue(checkedData) }, - setValue:function (checkedData){ - this.checkedData=checkedData + setValue: function (checkedData) { + this.checkedData = checkedData var value = []; var text = []; - const textSep =this.config.textSep; - for(var j =0;j<checkedData.checkedNodes.length;j++){ - const item=checkedData.checkedNodes[j]; - var v=this.config.valueField.indexOf("attribute.")>=0?(item.attributes[this.config.valueField.replace("attribute.","")] || item.attributes.data[this.config.valueField.replace("attribute.","")]):(item.attributes[this.config.valueField] || item[this.config.valueField] || item.attributes.data[this.config.valueField]) + const textSep = this.config.textSep; + for (var j = 0; j < checkedData.checkedNodes.length; j++) { + const item = checkedData.checkedNodes[j]; + var v = this.config.valueField.indexOf("attribute.") >= 0 ? (item.attributes[this.config.valueField.replace("attribute.", "")] || item.attributes.data[this.config.valueField.replace("attribute.", "")]) : (item.attributes[this.config.valueField] || item[this.config.valueField] || item.attributes.data[this.config.valueField]) value.push(v); var tempRaw = []; var textFieldArray = this.config.textField.split(","); for (var i = 0; i < textFieldArray.length; i++) {//鏄剧ず鐨勫瓧娈靛彲鑳芥湁澶氫釜 if (!validatenull(textFieldArray[i])) { - var t=textFieldArray[i].indexOf("attribute.")>=0?(item.attributes[textFieldArray[i].replace("attribute.","")] ||item.attributes.data[textFieldArray[i].replace("attribute.","")]):(item.attributes[textFieldArray[i]] || item[textFieldArray[i]] || item.attributes.data[textFieldArray[i]]) + var t = textFieldArray[i].indexOf("attribute.") >= 0 ? (item.attributes[textFieldArray[i].replace("attribute.", "")] || item.attributes.data[textFieldArray[i].replace("attribute.", "")]) : (item.attributes[textFieldArray[i]] || item[textFieldArray[i]] || item.attributes.data[textFieldArray[i]]) tempRaw.push(t); } } text.push(tempRaw.join(textSep)); } - let mapFields =this.referConfig.fieldMap || {}; + let mapFields = this.referConfig.fieldMap || {}; try { - if(!validatenull(this.options.mapFields)){ - mapFields =Object.assign(this.referConfig.fieldMap,JSON.parse(this.options.mapFields)) ; + if (!validatenull(this.options.mapFields)) { + mapFields = Object.assign(this.referConfig.fieldMap, JSON.parse(this.options.mapFields)); } - }catch (e) { + } catch (e) { } this.value = value.join(','); @@ -218,9 +228,9 @@ showField: this.referConfig.showField, value: this.value, text: this.text || '', - isTreeMuti:this.isMuti, + isTreeMuti: this.isMuti, rawData: checkedData.checkedNodes, - fieldMap:mapFields + fieldMap: mapFields }); } } diff --git a/Source/UBCS-WEB/src/components/template/Business.vue b/Source/UBCS-WEB/src/components/template/Business.vue index d5dacde..60ff04a 100644 --- a/Source/UBCS-WEB/src/components/template/Business.vue +++ b/Source/UBCS-WEB/src/components/template/Business.vue @@ -202,4 +202,4 @@ margin: 15px 0 16px; } } -</style> \ No newline at end of file +</style> diff --git a/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js b/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js index 4aba109..693c4bb 100644 --- a/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js +++ b/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js @@ -329,5 +329,14 @@ trigger: "blur" }], }, + { + required: true, + label: '娣锋穯瀛楃杞崲', + prop:'confound', + labelWidth : 110, + search: false, + formslot:true, + display:true + } ] } diff --git a/Source/UBCS-WEB/src/styles/tags.scss b/Source/UBCS-WEB/src/styles/tags.scss index 283be5e..5b61199 100644 --- a/Source/UBCS-WEB/src/styles/tags.scss +++ b/Source/UBCS-WEB/src/styles/tags.scss @@ -1,7 +1,7 @@ .avue-tags { - user-select: none; + user-select: none; position: relative; padding: 0 10px; margin-bottom: 10px; @@ -89,4 +89,4 @@ padding: 1px 0 0 15px; box-sizing: border-box; } -} \ No newline at end of file +} diff --git a/Source/UBCS-WEB/src/views/code/codeKeyAttrRepeat.vue b/Source/UBCS-WEB/src/views/code/codeKeyAttrRepeat.vue index 490300f..922fd88 100644 --- a/Source/UBCS-WEB/src/views/code/codeKeyAttrRepeat.vue +++ b/Source/UBCS-WEB/src/views/code/codeKeyAttrRepeat.vue @@ -27,6 +27,9 @@ @click="handleDelete">鍒� 闄� </el-button> </template> + <template slot-scope="scope" slot="confoundForm"> + <el-input placeholder="璇疯緭鍏ユ贩娣嗗瓧绗︿互閫楀彿闅斿紑" v-model="confoundValue"></el-input> + </template> </avue-crud> </basic-container> </template> @@ -49,7 +52,8 @@ }, selectionList: [], option: option, - data: [] + data: [], + confoundValue:'' }; }, computed: { diff --git a/Source/UBCS-WEB/src/views/statistic/statisticPage.vue b/Source/UBCS-WEB/src/views/statistic/statisticPage.vue index 0369f5c..64dbfa1 100644 --- a/Source/UBCS-WEB/src/views/statistic/statisticPage.vue +++ b/Source/UBCS-WEB/src/views/statistic/statisticPage.vue @@ -1,13 +1,13 @@ <template> <!-- 鏂板鍙充晶鎸夐挳--> - <div> + <div v-loading="loading"> <div style=" display: flex; justify-content: flex-end;"> <el-button plain type="primary" @click="addHandler">閰嶇疆</el-button> </div> <!--鏂板瀵硅瘽妗�--> <el-dialog :visible.sync="addVisible" append-to-body class="avue-dialog avue-dialog--top" title="閰嶇疆鏁版嵁缁熻鍒嗘瀽" top="-50px"> - <el-table ref="table" :data="tableData" border style="width: 100%" @selection-change="selectChange"> + <el-table ref="table" :data="tableData" border style="width: 100%" @selection-change="selectChange" @row-click="rowHandlerClick"> <el-table-column type="selection" width="55"></el-table-column> <el-table-column align="center" label="涓绘暟鎹簱鍚�" prop="menuName" width="300"></el-table-column> <el-table-column align="center" label="绫诲瀷" prop="codeType"> @@ -28,23 +28,32 @@ <lineChart v-for="(item,index) in lineList" :key="index" + :btmname="item.btmname" :chartName="item.menuName" - :lineData="item.menuData"></lineChart> + :lineData="item.menuData" + @refresh="getEcharts"> + </lineChart> <pieChart v-for="(item,index) in pieList" :key="index" + :btmname="item.btmname" :chartName="item.menuName" - :pieData="item.menuData"></pieChart> + :pieData="item.menuData" + @refresh="getEcharts"></pieChart> <ColumnarChart v-for="(item,index) in columnarList" :key="index" + :btmname="item.btmname" :chartName="item.menuName" - :columnarData="item.menuData"></ColumnarChart> + :columnarData="item.menuData" + @refresh="getEcharts"></ColumnarChart> <mixCart v-for="(item,index) in mixList" :key="index" + :btmname="item.btmname" :chartName="item.menuName" - :mixData="item.menuData"></mixCart> + :mixData="item.menuData" + @refresh="getEcharts"></mixCart> </div> </div> </template> @@ -67,6 +76,7 @@ name: "statisticPage", data() { return { + loading: false, selectValue: '', selectList: [ { @@ -95,15 +105,16 @@ columnarList: [], mixList: [], selectData: [], - tableData: [] + tableData: [], + ResponseData: {} } }, created() { - this.getMasterList(); + this.loading = true; + }, + mounted() { this.getEcharts(); - // deleteChartId({btmname:'zxssaac',chartId:'3'}).then(res=>{ - // console.log('res',res) - // }) + this.getMasterList(); }, methods: { getMasterList() { @@ -114,25 +125,92 @@ this.$message.error(error) }) }, - getEcharts() { - getBtmAndChart().then(firstResponse => { - console.log('btm', firstResponse) + //鍒楄〃鏁版嵁 + async getEcharts() { + try { + const firstResponse = await getBtmAndChart(); const btmNames = Object.keys(firstResponse.data.data).join(','); - const firstData = firstResponse.data.data; - Object.keys(firstData).forEach((item,index) => { - let firstIndex = firstData[item].split(','); - console.log('firstIndex',firstIndex); - }); - if (btmNames) { - getStatisticAnalysis({btmNames}).then(secondResponse => { - console.log('getStatisticAnalysis', secondResponse) - }) + const btmValue = Object.values(firstResponse.data.data); + if (!btmNames) { + this.lineList = []; + this.pieList = []; + this.columnarList = []; + this.mixList = []; + this.loading = false; + return; } - }) + const typeList = { + '0': 'lineList', + '1': 'pieList', + '2': 'columnarList', + '3': 'mixList' + }; + await this.handleStatisticAnalysis(btmNames, firstResponse); + this.loading = false; + } catch (error) { + this.loading = false; + console.error('Error:', error); + } + }, + async handleStatisticAnalysis(btmNames, firstResponse) { + const secondResponse = await getStatisticAnalysis({btmNames}); + const secondData = secondResponse.data.data; + const typeList = { + "0": "lineList", + "1": "pieList", + "2": "columnarList", + "3": "mixList" + }; + this.lineList = []; + this.pieList = []; + this.columnarList = []; + this.mixList = []; + const firstData = firstResponse.data.data; + //Object.keys瀵艰嚧瀵硅薄椤哄簭涓嶄竴鑷达紝浣跨敤sort鎺掑簭涓庡悗绔繑鍥炴牸寮忎竴鑷� + Object.keys(firstData).sort().forEach((key, index) => { + if (firstData[key]) { + const indexes = firstData[key].split(','); + for (const indexSec of indexes) { + const listType = typeList[indexSec]; + const list = secondData.map(record => { + return { + menuData: record.menuData, + menuName: record.menuName, + btmname: key + }; + }); + this.$nextTick(() => { + list.forEach((i, j) => { + if (index === j) { + this[listType].push(i); + } + }); + }); + } + } + }); }, //鏂板 addHandler() { this.addVisible = true; + // let checkedrow = [] + // this.tableData.forEach(item => { + // // item.codeType = []; + // Object.keys(this.ResponseData.data.data).forEach(k => { + // if (item.code === k) { + // Object.values(this.ResponseData.data.data).forEach(v => { + // // item.codeType.push(v); + // checkedrow.push(item) + // }) + // } + // }) + // }) + // this.$nextTick(() => { + // checkedrow.forEach(row => { + // // console.log(row) + // this.$refs.table.toggleRowSelection(row, true) // 鍥炴樉 + // }) + // }) }, //鍙栨秷 escHandler() { @@ -144,12 +222,12 @@ this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹紒'); return; } - let codeStatus = this.selectData.every(key => key.codeType) + let codeStatus = this.selectData.every(key => key.codeType.length > 0); + if (!codeStatus) { this.$message.warning("璇锋鏌ュ凡鍕鹃�夋暟鎹被鍨嬫槸鍚︿负绌猴紒"); return; } - const newArray = this.selectData.map(item => { return { btmname: item.code, @@ -157,9 +235,10 @@ } }) saveStatisticAnalysis(newArray).then(res => { - this.menuList = res.data.data; - this.nextSave(); + // this.menuList = res.data.data; + this.getEcharts(); this.$message.success('淇濆瓨鎴愬姛') + this.addVisible = false; }).catch(error => { this.$message.error(error) }); @@ -179,8 +258,6 @@ const dataKey = typeList[item.codeType]; if (dataKey) { this[dataKey].push(item); - this[dataKey].forEach(res => { - }) hasValidData = true; } }); @@ -194,6 +271,10 @@ selectChange(selection) { this.selectData = selection; }, + rowHandlerClick(row){ + this.selectData = row; + this.$refs.table.toggleRowSelection(row); + } } } diff --git a/Source/UBCS/ubcs-codeApply/pom.xml b/Source/UBCS/ubcs-codeApply/pom.xml index 2a2063c..d59e021 100644 --- a/Source/UBCS/ubcs-codeApply/pom.xml +++ b/Source/UBCS/ubcs-codeApply/pom.xml @@ -8,6 +8,18 @@ <version>3.0.1.RELEASE</version> </parent> <modelVersion>4.0.0</modelVersion> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>8</source> + <target>8</target> + </configuration> + </plugin> + </plugins> + </build> <properties> <vciplt.version>2022.RELEASE</vciplt.version> <old.spring.version>3.2.0.RELEASE</old.spring.version> diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/TestIntegrateFrame.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/TestIntegrateFrame.java index 187dfa6..24d9de9 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/TestIntegrateFrame.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/TestIntegrateFrame.java @@ -4,13 +4,32 @@ import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; +import java.util.stream.Collectors; public class TestIntegrateFrame { public static JButton apply = new JButton(); public static JTextField text = new JTextField(); public static void main(String[] args) { + + List<Integer> list=new ArrayList<>(); + list.add(1); + list.add(5); + list.add(6); + list.add(3); + list.add(2); + list.add(4); + List<Integer> classifyVOS =list.stream().sorted(((o1, o2) -> o2.compareTo(o1))).collect(Collectors.toList()); + int level=1; + int tt=1; + if (classifyVOS.size() >= level && level > 0) { + tt = classifyVOS.get(level - 1); + } + + final JFrame j = new JFrame(); j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel p = new JPanel(); @@ -26,6 +45,10 @@ apply.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { + + + + Map<String, String> map = new HashMap<String, String>(); // map.put("鍘熸潗鏂欐浛鎹欢", "YUANCAILIAOTIHUANJIAN"); // map.put("鍘熸潗鏂欓儴浠�", "1"); diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java index 8a1d0f9..9ea8b4d 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java @@ -1191,6 +1191,7 @@ if(i>nowmonth){ monthCount.add(0); month.add(0); + continue; } //褰撳墠鏈堜唤涔嬪墠涔嬪拰 Integer count = 0; diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java index d06a186..6f47399 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java @@ -2740,7 +2740,7 @@ //cboOidMap.put("id", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0])) + ")"); String tableName =""; try { - R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId()); + R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(codeClassifyVO.getBtmTypeId()); if(!r.isSuccess()) { throw new Throwable(r.getMsg()); } @@ -2838,7 +2838,17 @@ cbo.setDescription(StringUtils.isBlank(orderDTO.getDescription())?"":orderDTO.getDescription()); cbo.setName(orderDTO.getName()); try { - cbo.setAttributeValueWithNoCheck("description", orderDTO.getDescription()); + //涓昏澶勭悊澶у皬鍐欓棶棰橈紝灏哾ata閲岄潰鐨勬暟鎹殑key閮借浆涓哄皬鍐� + HashMap<String,String> lowerData = new HashMap<>(); + Iterator<Map.Entry<String, String>> iterator = cbo.getData().entrySet().iterator(); + while (iterator.hasNext()){ + Map.Entry<String, String> next = iterator.next(); + lowerData.put(next.getKey().toLowerCase(Locale.ROOT),next.getValue()); + } + cbo.getData().clear(); + cbo.getData().putAll(lowerData); + cbo.setAttributeValueWithNoCheck("description", (StringUtil.isNotBlank(orderDTO.getData() + .get("description")) ? orderDTO.getData().get("description") : orderDTO.getDescription() )); // cbo.setAttributeValue("name", orderDTO.getName()); // if(finalIsProcess){//鍦ㄦ祦绋嬩腑涓嶅厑璁告洿鏀� // errorMap.put(code,errorMap.getOrDefault(code, errorMap.getOrDefault(code,"")+";鏁版嵁"+code+"鍦ㄦ祦绋嬩腑锛屼笉鍏佽鏇存敼!")); @@ -2901,7 +2911,7 @@ List<CodeAllCode>newCodeAllCodeList= codeAllCodeService.selectByWrapper(Wrappers.<CodeAllCode>query().lambda().eq(CodeAllCode::getCreateCodeOid, cbo.getOid())); if (!CollectionUtils.isEmpty(newCodeAllCodeList)) { - CodeAllCode codeCbo = codeAllCodeList.get(0); + CodeAllCode codeCbo = newCodeAllCodeList.get(0); log.info("codeCbos code:" + codeCbo.getId()); codeCbo.setLcStatus(status); codeAllCodeList.add(codeCbo); @@ -2939,7 +2949,7 @@ engineService.updateBatchByBaseModel(classifyFullInfo.getTopClassifyVO().getBtmTypeId(),updateList); codeAllCodeService.saveOrUpdateBatch(codeAllCodeList); if(deleteList.size()>0) { - commonsMapper.deleteByTaleAndOid(tableName, VciBaseUtil.array2String(deleteList.toArray(new String[]{}))); + commonsMapper.deleteByTaleAndOid(tableName, VciBaseUtil.toInSql(deleteList.toArray(new String[]{}))); } //鏄惁璋冪敤闆嗗洟鎺ュ彛鐢宠鎺ュ彛 if(isCodeOrGroupCode){ diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java index 8cb5f04..c0545a5 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java @@ -368,7 +368,7 @@ xmlResultDataObjectDetailDO.setCode(""); xmlResultDataObjectDetailDO.setId(applyDataVO.getId()); xmlResultDataObjectDetailDO.setErrorid(objerrorCode); - xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:" + e.getMessage()); + xmlResultDataObjectDetailDO.setMsg("缂栫爜缁存姢澶辫触:" + e.getMessage()); resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); }); }else{ @@ -377,7 +377,7 @@ xmlResultDataObjectDetailDO.setCode(""); xmlResultDataObjectDetailDO.setId(""); xmlResultDataObjectDetailDO.setErrorid(objerrorCode); - xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:" + e.getMessage()); + xmlResultDataObjectDetailDO.setMsg("缂栫爜缁存姢澶辫触:" + e.getMessage()); resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); } e.printStackTrace(); -- Gitblit v1.9.3