Merge remote-tracking branch 'origin/master'
# Conflicts:
# Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
| | |
| | | } |
| | | }) |
| | | } |
| | | |
| | | //éå¢ç 模æ¿ä¸è½½ |
| | | export const exportGroupCodeExcel = (params) => { |
| | | return request({ |
| | | url: '/api/ubcs-code/mdmEngineController/exportGroupCodeExcel', |
| | | method: 'get', |
| | | params, |
| | | responseType: 'blob' |
| | | }) |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | import request from '@/router/axios'; |
| | | |
| | | //ç»è®¡åææ°æ® |
| | | export const getStatisticAnalysis = (params) => { |
| | | return request({ |
| | | url: '/api/ubcs-code/mdmEngineController/getStatisticAnalysis', |
| | | method: 'get', |
| | | params |
| | | }) |
| | | } |
| | |
| | | </li> |
| | | </ul> |
| | | <div |
| | | v-show="currentTypeObj[type]['upParams'] === 'classifyAttr' && this.type !== 'bulkEdit'" |
| | | v-show="currentTypeObj[type]['upParams'] === 'classifyAttr' && this.type !== 'bulkEdit'&& this.type !== 'groupCode'" |
| | | class="radio_box" |
| | | > |
| | | <span>åç±»çè·¯å¾ä½¿ç¨ç屿§:</span> |
| | |
| | | > |
| | | </el-upload> |
| | | <template #footer> |
| | | <el-button |
| | | v-if="type !== 'bulkEdit'" |
| | | :loading="downloadLoading" |
| | | size="small" |
| | | type="primary" |
| | | @click="downloadTemplateFun" |
| | | >ä¸è½½å¯¼å
¥æ¨¡æ¿ |
| | | </el-button> |
| | | <el-button v-if="type === 'bulkEdit'" |
| | | :loading="downloadLoading" |
| | | size="small" |
| | | type="primary" |
| | | @click="downloadTemplateFun" |
| | | >ä¸è½½ç¼è¾æ¨¡æ¿ |
| | | </el-button> |
| | | <div v-if="type !== 'groupCode'"> |
| | | <el-button |
| | | v-if="type !== 'bulkEdit' " |
| | | :loading="downloadLoading" |
| | | size="small" |
| | | type="primary" |
| | | @click="downloadTemplateFun" |
| | | >ä¸è½½å¯¼å
¥æ¨¡æ¿ |
| | | </el-button> |
| | | <el-button v-if="type === 'bulkEdit'" |
| | | :loading="downloadLoading" |
| | | size="small" |
| | | type="primary" |
| | | @click="downloadTemplateFun" |
| | | >ä¸è½½ç¼è¾æ¨¡æ¿ |
| | | </el-button> |
| | | </div> |
| | | <el-button size="small" @click="dialogVisible = false">å
³é</el-button> |
| | | </template> |
| | | <ShowImportData |
| | |
| | | downloadTemplateFun: downloadBatchApplyCodeTemplate, |
| | | upParams: "classifyAttr", |
| | | }, |
| | | groupCode: { |
| | | title: "éå¢ç 导å
¥", |
| | | tipList: [ |
| | | "1.æ é¢å¸¦äºè§æç表示å
³é®å±æ§ï¼å¸¦æå·è¡¨ç¤ºå¿
è¾é¡¹", |
| | | "2.æ¯æ¬¡ä»
è½æå¤å¯¼å
¥5000æ¡æ°æ®(å¯éè¿nacosè¿è¡é
ç½®ï¼æ¨è5000/次导å
¥)ï¼å¦æåºéä¼è¿åéè¯¯çæ°æ®ååå ï¼ä½æ¯æ£ç¡®æ°æ®å¯ä»¥ç»§ç»ä¿å", |
| | | "3.Excel第ä¸è¡å第äºè¡ä¾æ¬¡ä¸ºä¼ä¸ç¼ç åéå¢ç¼ç ï¼å¿
å¡«ï¼" |
| | | ], |
| | | action: "/api/ubcs-code/mdmEngineController/importGroupCode" |
| | | } |
| | | }, |
| | | secDTOList: [], |
| | | }; |
| | |
| | | return; |
| | | } |
| | | if (this.type === 'bulkEdit') { |
| | | this.tableHeadFindData.map(item => item.prop) |
| | | .forEach((prop, index) => { |
| | | this.exportArrTwo[`attrIdIndexMap[${index}]`] = prop; |
| | | }); |
| | | downloadExcelBatchEdit({ |
| | | codeClassifyOid: this.codeClassifyOid, |
| | | 'conditionMap[oid]': this.ids, ...this.exportArrTwo, |
| | | limit: -1 |
| | | }).then(res => { |
| | | // console.log('res',res) |
| | | if (res) { |
| | | func.downloadFileByBlobHandler(res); |
| | | this.$message.success('ä¸è½½æåï¼è¯·æ¥çï¼') |
| | |
| | | type: String, |
| | | default: "", |
| | | }, |
| | | selectRow:{ |
| | | type:Array, |
| | | default:[] |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | selectValue:"", |
| | | //å¹´ä»£å· |
| | | dataYearCode: { |
| | | type: "", |
| | |
| | | handler(newV) { |
| | | this.$emit("dataYearCode", newV) |
| | | } |
| | | }, |
| | | selectRow:{ |
| | | handler(newval){ |
| | | console.log(newval); |
| | | let ids = newval.map(item => item.id); |
| | | this.selectValue= ids.join(","); |
| | | }, |
| | | deep:true, |
| | | immediate:true |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | value:formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) || |
| | | (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) || |
| | | (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) || |
| | | (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null), |
| | | (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) || |
| | | //ç¶ç»ä»¶å¦ææ¯åç
§æ°æ®ä¼å°selectRow置空,selectRowä¸ä¸ºç©ºå°±è¯´æä¸æ¯åç
§è¦åå¡«æºæ åå·æ°æ® |
| | | (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null), |
| | | placeholder: formItem.inputTip, |
| | | comboxKey: formItem.comboxKey, |
| | | tip: formItem.tooltips, |
| | |
| | | v-if="dialogVisible" key="masterForm" |
| | | ref="FormTemplate" |
| | | v-bind="$attrs" |
| | | :selectRow="selectRow" |
| | | :TreeValue="TreeValue" |
| | | :eventList="eventList" |
| | | :rowOid="rowOid" |
| | |
| | | :selfColumnConfig="selfColumnConfig" |
| | | :selfColumnType="selfColumnType" |
| | | :type="type" |
| | | :status="status" |
| | | :selectRow="selectRow" |
| | | data-key="codeApplyForm" |
| | | secDTOListv-bind="$attrs" |
| | | @attrList="attrListForm" |
| | |
| | | type: Object, |
| | | default: () => ({}), |
| | | }, |
| | | selectRow:{ |
| | | type:Array, |
| | | default:[] |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | |
| | | }, |
| | | }, |
| | | watch: { |
| | | codeApplyForm: { |
| | | handler(newval, oldval) { |
| | | // console.log('newval',newval) |
| | | } |
| | | } |
| | | |
| | | }, |
| | | methods: { |
| | | openDialog() { |
| | | //æ°å¢åä¿®æ¹å
±åè°ç¨ |
| | | //æ°å¢åä¿®æ¹å
±åè°ç¨(ææ¹å¨ ä¸éè¦å¨ä½¿ç¨editï¼æ¹æ³æ²¡ä»ä¹å½±å) |
| | | this.getFormTemplate(); |
| | | if (this.type === "add" || (this.type !== "add" && this.status === "amend")) { |
| | | this.getCodeRule(); |
| | |
| | | secValue: this.codeApplyForm[item.oid], |
| | | }; |
| | | }); |
| | | //æ åç¹å® |
| | | //æ åç¹å®å段æ å° |
| | | const mappings = { |
| | | codeStandardEditType: 'operationType', |
| | | reviseSeries: 'series', |
| | |
| | | </FormTemplateDialog> |
| | | <!-- 修订--> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'ä¿®æ¹ç¼ç ä¿¡æ¯'" |
| | | :visible.sync="amendvisible" status="amend" |
| | | type="edit" @submit="amendSumbit"></FormTemplateDialog> |
| | | :disabledProp="disabledProp" :templateOid="templateOid" :title="'æ°æ®ä¿®è®¢'" |
| | | :visible.sync="amendvisible" status="amend" :selectRow="selectRow" |
| | | type="add" @submit="amendSumbit"></FormTemplateDialog> |
| | | <!-- æ°å¢--> |
| | | <FormTemplateDialog :TreeValue="TreeValue" :codeClassifyOid="this.codeClassifyOid" |
| | | :codeRuleOid="this.codeRuleOid" :disabledProp="disabledProp" :templateOid="templateOid" |
| | |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :templateOid="templateOid" :title="'ä¿®æ¹ç¼ç ä¿¡æ¯'" |
| | | :visible.sync="editvisible" |
| | | rowOid="rowOid" |
| | | :rowOid="rowOid" |
| | | type="edit" @submit="EditSumbit"></FormTemplateDialog> |
| | | <!-- æ¹éç¼è¾--> |
| | | <!-- <MasterEditBulk :visible.sync="bulkeditvisible" ></MasterEditBulk>--> |
| | |
| | | upSaveCode, |
| | | applyGroupCode, |
| | | receiveEditApply, |
| | | applySaveCode |
| | | applySaveCode, |
| | | exportGroupCodeExcel |
| | | } from "@/api/GetItem"; |
| | | import {processTS, changeStatus} from "@/api/template/setPersonnel" |
| | | import {listCodeAttributeByClassId} from "@/api/integration/integration.js"; |
| | |
| | | } |
| | | }) |
| | | this.tableHeadFindDatas = newval; |
| | | // console.log('new',newval) |
| | | if (!this.isCodeArrayPushed) { |
| | | if (newval.find(item => item.prop === 'id')) { |
| | | this.CodeArray.push(newval.find(item => item.prop === 'id')); |
| | | } else { |
| | | this.CodeArray.push([]); |
| | | // this.CodeArray.push([]); |
| | | this.CodeArray = []; |
| | | } |
| | | // console.log('CodeArray', this.CodeArray); |
| | | this.isCodeArrayPushed = true; |
| | | } |
| | | if (!this.islcstatusPushed) { |
| | |
| | | this.LinkObject = row; |
| | | this.LinkVisible = true; |
| | | this.LinkList = Object.keys(row).map(property => property) |
| | | // console.log(result); |
| | | // console.log(this.LinkObject) |
| | | |
| | | }, |
| | | //ç¶ææç´¢ |
| | | cellSelectHandler(row) { |
| | |
| | | if (uniqueFlag === 'CODEAMEND') return this.codeAMENDHandler() |
| | | //æ¹éç¼è¾ |
| | | if (uniqueFlag === 'bulkEdit') return this.bulkEditHandler("bulkEdit") |
| | | //éå¢ç å¯¼åº |
| | | if (uniqueFlag === 'excelGroupCode') return this.excelGroupCode() |
| | | //éå¢ç 导å
¥ |
| | | if (uniqueFlag === 'importGroupCode') return this.importGroupCode("groupCode") |
| | | }); |
| | | }, |
| | | importGroupCode(type){ |
| | | this.batchImportData.visible = true |
| | | this.batchImportData.type = type |
| | | this.batchImportData.codeClassifyOid = this.codeClassifyOid |
| | | }, |
| | | //éå¢ç å¯¼åº |
| | | excelGroupCode(){ |
| | | debugger |
| | | this.isLoading = true; |
| | | exportGroupCodeExcel({ |
| | | codeClassifyOid: this.codeClassifyOid, |
| | | }).then(res => { |
| | | console.log(res.data) |
| | | if (res) { |
| | | func.downloadFileByBlobHandler(res); |
| | | this.$message.success('ä¸è½½æåï¼è¯·æ¥çï¼'); |
| | | this.isLoading = false; |
| | | } |
| | | }).catch(error=>{ |
| | | this.$message.error(error); |
| | | this.isLoading = false; |
| | | }) |
| | | }, |
| | | //æ åç³è¯· |
| | | codeApplyHandler() { |
| | |
| | | //æ å修订 |
| | | codeAMENDHandler() { |
| | | let foundItem = false; |
| | | |
| | | this.tableHeadFindData.forEach(item => { |
| | | if (item.field === "oldcode" && Object.keys(item.referConfig).length >= 1) { |
| | | foundItem = true; |
| | | } |
| | | }); |
| | | |
| | | if (foundItem) { |
| | | this.amendvisible = true; |
| | | this.rowOid = this.selectRow[0].oid; |
| | | if(this.selectRow.length >= 1){ |
| | | this.$confirm('å·²æåç
§æ¯å¦åæ¶å¾éç»§ç»æ§è¡ï¼', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | this.selectRow = []; |
| | | //åæ¶å¾éç¶æ |
| | | this.$refs.dataTable.clearSelection(); |
| | | this.amendvisible = true; |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已忶å½åæä½' |
| | | }); |
| | | }); |
| | | }else { |
| | | this.amendvisible = true; |
| | | } |
| | | } else { |
| | | if (this.selectRow.length !== 1) { |
| | | this.$message.warning("è¯·éæ©ä¸æ¡æ°æ®"); |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning("请è³å°éæ©ä¸æ¡æ°æ®"); |
| | | } else { |
| | | this.amendvisible = true; |
| | | this.rowOid = this.selectRow[0].oid; |
| | | |
| | | } |
| | | } |
| | | }, |
| | | //æ¹éç¼è¾ |
| | | bulkEditHandler(type) { |
| | | // console.log(this.nodeClickList) |
| | | if (this.nodeClickList.children.length >= 1) { |
| | | this.$message.warning('å½åéæ©çåç±»ä¸æ¯å¶åèç¹ï¼ä¸å
许æ¹éç¼è¾ï¼') |
| | | return; |
| | | } |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning('è¯·éæ©è³å°ä¸æ¡æ°æ®ï¼') |
| | | return; |
| | | } |
| | | const Editing = this.selectRow.every(item => item.lcstatus === 'Editing'); |
| | | |
| | | if (Editing) { |
| | | this.batchImportData.visible = true |
| | | this.batchImportData.type = type |
| | | this.batchImportData.codeClassifyOid = this.codeClassifyOid |
| | | } else { |
| | | this.$message.warning('éæ©çæ°æ®ä¸æç¼ç ç¶æä¸æ¯âç¼è¾ä¸âï¼ä¸å¯ç¼è¾ï¼'); |
| | | } |
| | | }, |
| | | addSaveHandler() { |
| | | this.$nextTick(() => { |
| | |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning('è¯·éæ©ä¸æ¡æ°æ®æ¨¡æ¿ï¼') |
| | | } else { |
| | | // const requestData = this.selectRow.forEach(item => { |
| | | // return { oids: item.oid, btmName: item.btmname }; |
| | | // }); |
| | | |
| | | const oids = this.selectRow.map(item => item.oid).join(','); |
| | | applyGroupCode({oids, btmName: this.selectRow[0].btmname}).then(res => { |
| | | if (res.data.code == 200) { |
| | |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning('è¯·éæ©ä¸æ¡æ°æ®æ¨¡æ¿ï¼') |
| | | } else { |
| | | // const requestData = this.selectRow.forEach(item => { |
| | | // return { oids: item.oid, btmName: item.btmname }; |
| | | // }); |
| | | const oids = this.selectRow.map(item => item.oid).join(','); |
| | | receiveEditApply({oids, btmName: this.selectRow[0].btmname}).then(res => { |
| | | if (res.data.code == 200) { |
| | |
| | | ); |
| | | }); |
| | | |
| | | let colors = ["#91CC75", "#5470C6"]; |
| | | let colors = ['#2eadd6', '#FFA500']; |
| | | |
| | | const seriesData = []; |
| | | for (let i = 0; i < newval.length; i++) { |
| | |
| | | value: newval[i][j], |
| | | itemStyle: { |
| | | normal: { |
| | | barBorderRadius: borderRadius, // 设置åè§ |
| | | // barBorderRadius: borderRadius, // 设置åè§ |
| | | color: colors[i], |
| | | } |
| | | }, |
| | |
| | | data: curSeriesData, |
| | | label: { |
| | | show: true, |
| | | position: 'top' |
| | | position: 'top', |
| | | formatter: function (params) { |
| | | return params.value === 0 ? '' : params.value; // å¼ä¸º 0 䏿¾ç¤ºï¼å
¶ä»æ
嵿¾ç¤º |
| | | } |
| | | }, |
| | | emphasis: { |
| | | focus: "series", |
| | |
| | | immediate: true, |
| | | handler(newval, oldval) { |
| | | if (newval) { |
| | | const colors = ["#8fef5b", "#db3c3c"]; |
| | | const colors = ["#2eadd6", "#db3c3c"]; |
| | | |
| | | const seriesData = newval.map((data, index) => ({ |
| | | name: index === 0 ? "æ»é" : "æ°å¢", |
| | |
| | | </el-option> |
| | | </el-select> |
| | | <el-switch |
| | | v-if="item.edit === 'switch'" v-model="row[item.prop]" :disabled="!editOpenFlag" active-value="true" v-show="!AddCellFlag" |
| | | v-if="item.edit === 'switch'" v-model="row[item.prop]" :disabled="!editOpenFlag" active-value="true" |
| | | inactive-value="false"> |
| | | </el-switch> |
| | | <span v-else>{{ row[item.prop] }}</span> |
| | |
| | | </div> |
| | | </div> |
| | | <!-- 左侧æ --> |
| | | <div style="height: calc(100vh - 230px);overflow: auto"> |
| | | <div style="height: calc(100vh - 230px);overflow: auto;"> |
| | | <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" |
| | | :defaultExpandAll="false" |
| | | :option="Treeoption" |
| | | class="classifyTree" |
| | | style="height: calc(100vh - 280px)" |
| | | style="height: calc(100vh - 280px);" |
| | | @node-click="nodeClick" |
| | | > |
| | | </avue-tree> |
| | |
| | | label: 'name', |
| | | path: 'path', |
| | | icon: 'source', |
| | | children: 'children' |
| | | children: 'children', |
| | | } |
| | | }, |
| | | // ç¬¬ä¸æ¹ç³»ç»ææå°å |
| | |
| | | ssoUrl:'http://localhost:37000/ubcs-auth/oauth/authorize?client_id=sword&response_type=111&redirect_uri=', |
| | | // åç¹ç»å½åè°å°å(Saberæå¡çå°å) |
| | | redirectUri: 'http://localhost:38000', |
| | | } |
| | | } |
| | |
| | | .title{ |
| | | color: red; |
| | | } |
| | | |
| | | </style> |
| | | |
| | |
| | | <div class="menu-wrapper"> |
| | | <template v-for="item in menu"> |
| | | <el-menu-item v-if="validatenull(item[childrenKey]) && vaildRoles(item)" |
| | | :index="item[pathKey]" |
| | | @click="open(item)" |
| | | :key="item[labelKey]" |
| | | :class="{'is-active':vaildActive(item)}"> |
| | | :class="{'is-active':vaildActive(item)}" |
| | | :index="item[pathKey]" |
| | | @click="open(item)"> |
| | | <i :class="item[iconKey]"></i> |
| | | <span slot="title" |
| | | :alt="item[pathKey]">{{generateTitle(item)}}</span> |
| | | :alt="item[pathKey]">{{ generateTitle(item) }}</span> |
| | | </el-menu-item> |
| | | <el-submenu v-else-if="!validatenull(item[childrenKey])&&vaildRoles(item)" |
| | | :index="item[pathKey]" |
| | | :key="item[labelKey]"> |
| | | :key="item[labelKey]" |
| | | :index="item[pathKey]"> |
| | | <template slot="title"> |
| | | <i :class="item[iconKey]"></i> |
| | | <span slot="title" |
| | | :class="{'el-menu--display':collapse && first}">{{generateTitle(item)}}</span> |
| | | :class="{'el-menu--display':collapse && first}">{{ generateTitle(item) }}</span> |
| | | </template> |
| | | <template v-for="(child,cindex) in item[childrenKey]"> |
| | | <el-menu-item :index="child[pathKey],cindex" |
| | | @click="open(child)" |
| | | <el-menu-item v-if="validatenull(child[childrenKey])" |
| | | :key="child[labelKey]" |
| | | :class="{'is-active':vaildActive(child)}" |
| | | v-if="validatenull(child[childrenKey])" |
| | | :key="child[labelKey]"> |
| | | :index="child[pathKey],cindex" |
| | | @click="open(child)"> |
| | | <i :class="child[iconKey]"></i> |
| | | <span slot="title">{{generateTitle(child)}}</span> |
| | | <span slot="title">{{ generateTitle(child) }}</span> |
| | | </el-menu-item> |
| | | <sidebar-item v-else |
| | | :menu="[child]" |
| | | :key="cindex" |
| | | :collapse="collapse" |
| | | :menu="[child]" |
| | | :props="props" |
| | | :screen="screen" |
| | | :collapse="collapse"></sidebar-item> |
| | | :screen="screen"></sidebar-item> |
| | | </template> |
| | | </el-submenu> |
| | | </template> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import {mapGetters} from "vuex"; |
| | | import {isURL, validatenull} from "@/util/validate"; |
| | | import config from "./config.js"; |
| | | import {mapGetters} from "vuex"; |
| | | import {isURL, validatenull} from "@/util/validate"; |
| | | import config from "./config.js"; |
| | | |
| | | export default { |
| | | name: "sidebarItem", |
| | | data() { |
| | | return { |
| | | config: config |
| | | }; |
| | | export default { |
| | | name: "sidebarItem", |
| | | data() { |
| | | return { |
| | | config: config |
| | | }; |
| | | }, |
| | | props: { |
| | | menu: { |
| | | type: Array |
| | | }, |
| | | screen: { |
| | | type: Number |
| | | }, |
| | | first: { |
| | | type: Boolean, |
| | | default: false |
| | | }, |
| | | props: { |
| | | menu: { |
| | | type: Array |
| | | }, |
| | | screen: { |
| | | type: Number |
| | | }, |
| | | first: { |
| | | type: Boolean, |
| | | default: false |
| | | }, |
| | | props: { |
| | | type: Object, |
| | | default: () => { |
| | | return {}; |
| | | } |
| | | }, |
| | | collapse: { |
| | | type: Boolean |
| | | type: Object, |
| | | default: () => { |
| | | return {}; |
| | | } |
| | | }, |
| | | created() { |
| | | collapse: { |
| | | type: Boolean |
| | | } |
| | | }, |
| | | created() { |
| | | }, |
| | | mounted() { |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["roles"]), |
| | | labelKey() { |
| | | return this.props.label || this.config.propsDefault.label; |
| | | }, |
| | | mounted() { |
| | | pathKey() { |
| | | return this.props.path || this.config.propsDefault.path; |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["roles"]), |
| | | labelKey() { |
| | | return this.props.label || this.config.propsDefault.label; |
| | | }, |
| | | pathKey() { |
| | | return this.props.path || this.config.propsDefault.path; |
| | | }, |
| | | iconKey() { |
| | | return this.props.icon || this.config.propsDefault.icon; |
| | | }, |
| | | childrenKey() { |
| | | return this.props.children || this.config.propsDefault.children; |
| | | }, |
| | | isOpenKey() { |
| | | return this.props.isOpen || this.config.propsDefault.isOpen; |
| | | }, |
| | | nowTagValue() { |
| | | return this.$router.$avueRouter.getValue(this.$route); |
| | | iconKey() { |
| | | return this.props.icon || this.config.propsDefault.icon; |
| | | }, |
| | | childrenKey() { |
| | | return this.props.children || this.config.propsDefault.children; |
| | | }, |
| | | isOpenKey() { |
| | | return this.props.isOpen || this.config.propsDefault.isOpen; |
| | | }, |
| | | nowTagValue() { |
| | | return this.$router.$avueRouter.getValue(this.$route); |
| | | } |
| | | }, |
| | | methods: { |
| | | generateTitle(item) { |
| | | return this.$router.$avueRouter.generateTitle( |
| | | item[this.labelKey], |
| | | (item.meta || {}).i18n |
| | | ); |
| | | }, |
| | | vaildActive(item) { |
| | | if (this.validIsOpen(item)) { |
| | | return false; |
| | | } |
| | | const groupFlag = (item["group"] || []).some(ele => |
| | | this.$route.path.includes(ele) |
| | | ); |
| | | return this.nowTagValue === item[this.pathKey] || groupFlag; |
| | | }, |
| | | vaildRoles(item) { |
| | | item.meta = item.meta || {}; |
| | | return item.meta.roles ? item.meta.roles.includes(this.roles) : true; |
| | | }, |
| | | validatenull(val) { |
| | | return validatenull(val); |
| | | }, |
| | | validIsOpen(item) { |
| | | if (item[this.isOpenKey] === 2 && isURL(item[this.pathKey])) { |
| | | return true; |
| | | } |
| | | }, |
| | | methods: { |
| | | generateTitle(item) { |
| | | return this.$router.$avueRouter.generateTitle( |
| | | item[this.labelKey], |
| | | (item.meta || {}).i18n |
| | | ); |
| | | }, |
| | | vaildActive(item) { |
| | | if (this.validIsOpen(item)) { |
| | | return false; |
| | | } |
| | | const groupFlag = (item["group"] || []).some(ele => |
| | | this.$route.path.includes(ele) |
| | | ); |
| | | return this.nowTagValue === item[this.pathKey] || groupFlag; |
| | | }, |
| | | vaildRoles(item) { |
| | | item.meta = item.meta || {}; |
| | | return item.meta.roles ? item.meta.roles.includes(this.roles) : true; |
| | | }, |
| | | validatenull(val) { |
| | | return validatenull(val); |
| | | }, |
| | | validIsOpen(item) { |
| | | if (item[this.isOpenKey] === 2 && isURL(item[this.pathKey])) { |
| | | return true; |
| | | } |
| | | }, |
| | | open(item) { |
| | | if (this.screen <= 1) this.$store.commit("SET_COLLAPSE"); |
| | | if (this.validIsOpen(item)) { |
| | | window.open(item[this.pathKey]); |
| | | } else { |
| | | this.$router.$avueRouter.group = item.group; |
| | | this.$router.$avueRouter.meta = item.meta; |
| | | this.$router.push({ |
| | | path: this.$router.$avueRouter.getPath({ |
| | | name: item[this.labelKey], |
| | | src: item[this.pathKey] |
| | | }, item.meta), |
| | | query: item.query |
| | | }); |
| | | } |
| | | open(item) { |
| | | if (this.screen <= 1) this.$store.commit("SET_COLLAPSE"); |
| | | if (this.validIsOpen(item)) { |
| | | window.open(item[this.pathKey]); |
| | | } else { |
| | | this.$router.$avueRouter.group = item.group; |
| | | this.$router.$avueRouter.meta = item.meta; |
| | | this.$router.push({ |
| | | path: this.$router.$avueRouter.getPath({ |
| | | name: item[this.labelKey], |
| | | src: item[this.pathKey] |
| | | }, item.meta), |
| | | query: item.query |
| | | }); |
| | | } |
| | | } |
| | | }; |
| | | } |
| | | }; |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .el-menu-item:focus, .el-menu-item:hover { |
| | | outline: 0; |
| | | background-color: #060708; |
| | | } |
| | | </style> |
| | | |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | .avue-sidebar { |
| | | user-select: none; |
| | | user-select: none; |
| | | position: relative; |
| | | padding-top: 60px; |
| | | height: 100%; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | |
| | | <template> |
| | | <template> |
| | | <el-dialog |
| | | title="ä¸å¡ç±»å" |
| | | :visible.sync="showSubmitDialog" |
| | |
| | | <el-form ref="form" :model="btmType" show-message="true" inline size="medium" label-suffix=":" class="btmTypeForm" |
| | | :rules="rules" @resetFields="resetForm" status-icon="true"> |
| | | <el-form-item label="è±æåç§°" label-width="100px" required="true" prop="id"> |
| | | <el-input v-model="btmType.id" :prefix-icon="icons.key"></el-input> |
| | | <el-input v-model="btmType.id" :prefix-icon="icons.key" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="䏿åç§°" label-width="100px"> |
| | | <el-input v-model="btmType.name" :prefix-icon="icons.name"></el-input> |
| | |
| | | { |
| | | label: 'è±æåç§°', |
| | | prop: 'id', |
| | | align: 'center' |
| | | align: 'center', |
| | | disabled:true |
| | | }, { |
| | | label: '䏿åç§°', |
| | | prop: 'name', |
| | |
| | | prop: 'id', |
| | | align: 'left', |
| | | search: true, |
| | | disabled:true, |
| | | width: 230 |
| | | }, { |
| | | label: '䏿åç§°', |
| | |
| | | { |
| | | label: 'è±æåç§°', |
| | | prop: 'id', |
| | | disabled:true, |
| | | search: true |
| | | }, |
| | | { |
| | |
| | | { |
| | | label: 'è±æåç§°', |
| | | prop: 'id', |
| | | disabled:true, |
| | | search: true |
| | | }, |
| | | { |
| | |
| | | const nodes = res.data.data.nodes.map((item) => { |
| | | item.label = item.id; |
| | | item.index = item.indexNum; |
| | | item.x = Number(item.x); |
| | | item.y = Number(item.y); |
| | | return item; |
| | | }); |
| | | const edges = res.data.data.edges.map((item) => { |
| | |
| | | top="-50px" |
| | | > |
| | | <el-table |
| | | ref="table" |
| | | :data="tableData" |
| | | border |
| | | style="width: 100%" |
| | |
| | | import pieChart from "../../components/StatisticsComponent/pieChart" |
| | | import ColumnarChart from "../../components/StatisticsComponent/ColumnarChart" |
| | | import mixCart from "../../components/StatisticsComponent/mixCart" |
| | | import {getStatisticAnalysis} from "@/api/statistic/chart" |
| | | import {getList} from "@/api/system/statistic"; |
| | | |
| | | export default { |
| | | components: { |
| | |
| | | name: "statisticPage", |
| | | data() { |
| | | return { |
| | | menuList:[], |
| | | dataKeyList: [], |
| | | addVisible: false, |
| | | chartName: "", |
| | | lineList: [], |
| | |
| | | columnarList: [], |
| | | mixList: [], |
| | | selectData: [], |
| | | tableData: [ |
| | | { |
| | | menuName: "å·¥èºæä»¶", |
| | | codeType: "1", |
| | | menuData: [ |
| | | [222, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "æµè¯sc", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "产ååå·", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "åºå®èµäº§", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "æèªä¸»æ°æ®", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "Part", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "人åä¸»æ°æ®", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "人å", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "æ å", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "ç©åä¸»æ°æ®", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | }, |
| | | { |
| | | menuName: "åå·", |
| | | codeType: null, |
| | | menuData: [ |
| | | [220, 232, 301, 334, 290, 330, 410, 330, 212, 322, 200, 234], |
| | | [120, 132, 101, 134, 90, 230, 210, 130, 10, 122, 100, 80], |
| | | ] |
| | | } |
| | | ] |
| | | tableData: [] |
| | | } |
| | | }, |
| | | created() { |
| | | this.getMasterList() |
| | | }, |
| | | methods: { |
| | | getMasterList() { |
| | | const userId = localStorage.getItem('userId'); |
| | | getList({userId: userId}).then(res => { |
| | | this.tableData = res.data.data; |
| | | }) |
| | | }, |
| | | //æ°å¢ |
| | | addHandler() { |
| | | this.addVisible = true; |
| | |
| | | this.$message.warning('请è³å°éæ©ä¸æ¡æ°æ®ï¼'); |
| | | return; |
| | | } |
| | | let codeStatus = this.selectData.every(key => key.codeType) |
| | | if (!codeStatus) { |
| | | this.$message.warning("è¯·æ£æ¥å·²å¾éæ°æ®ç±»åæ¯å¦ä¸ºç©ºï¼"); |
| | | return; |
| | | } |
| | | |
| | | this.dataKeyList = this.selectData.map(obj => obj.code) |
| | | const btmName = this.dataKeyList.join(","); |
| | | if (btmName) { |
| | | // this.menuList=[ |
| | | // { |
| | | // menuData: [ |
| | | // [0, 0, 0, 0, 0, 0, 4, 9, 12, 12, 12, 12], |
| | | // [0, 0, 0, 0, 0, 0, 4, 5, 3, 0, 0, 0] |
| | | // ], |
| | | // code:1 |
| | | // }, |
| | | // { |
| | | // menuData: [ |
| | | // [0, 0, 0, 1, 1, 1, 1, 1, 1, 29, 5315, 5315], |
| | | // [0, 0, 0, 1, 0, 0, 0, 0, 0, 28, 5286, 0] |
| | | // ], |
| | | // code:2 |
| | | // }, |
| | | // { |
| | | // menuData: [ |
| | | // [0, 58, 60, 61, 75, 84, 145, 162, 166, 177, 186, 186], |
| | | // [0, 58, 2, 1, 14, 9, 61, 17, 4, 11, 9, 0] |
| | | // ], |
| | | // code:3 |
| | | // } |
| | | // ] |
| | | // this.nextSave(); |
| | | // this.$message.success('ä¿åæå') |
| | | getStatisticAnalysis({btmNames: btmName}).then(res => { |
| | | this.menuList = res.data.data; |
| | | this.nextSave(); |
| | | this.$message.success('ä¿åæå') |
| | | }); |
| | | }else { |
| | | this.$message.warning('è¯·éæ©æ°æ®ï¼') |
| | | } |
| | | }, |
| | | nextSave() { |
| | | const typeList = { |
| | | "0": "lineList", |
| | | "1": "pieList", |
| | |
| | | }; |
| | | |
| | | let hasValidData = false; // æ·»å ä¸ä¸ªæ å¿æ¥è®°å½æ¯å¦æææçéæ©æ°æ® |
| | | let codeStatus = this.selectData.every(key => key.codeType) |
| | | if (!codeStatus) { |
| | | this.$message.warning("è¯·æ£æ¥å·²å¾éæ°æ®ç±»åæ¯å¦ä¸ºç©ºï¼"); |
| | | return; |
| | | } |
| | | this.selectData.forEach(item => { |
| | | |
| | | this.selectData.forEach((item, index) => { |
| | | item.menuData = this.menuList[index].menuData; |
| | | const dataKey = typeList[item.codeType]; |
| | | if (dataKey) { |
| | | this[dataKey].push(item); |
| | | hasValidData = true; // æ è®°ææææ°æ®è¢«æ·»å |
| | | hasValidData = true; |
| | | } |
| | | }); |
| | | |
| | | if (hasValidData) { |
| | | // this.$refs.table.clearSelection(); |
| | | this.addVisible = false; |
| | | } |
| | | }, |
| | | //è¡¨æ ¼å¤é |
| | | selectChange(selection, row) { |
| | | // console.log(selection, row) |
| | | selectChange(selection) { |
| | | this.selectData = selection; |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |
| | | <style lang="scss" scoped> |
| | | |
| | | </style> |
| | |
| | | userflag:true, |
| | | usernumber:0, |
| | | userStatus:false, |
| | | isUpdateShowInput:false, |
| | | }; |
| | | }, |
| | | watch: { |
| | |
| | | message: "请è¾å
¥ç»å½è´¦å·", |
| | | trigger: "blur" |
| | | }], |
| | | disabled: this.isUpdateShowInput, |
| | | }, |
| | | { |
| | | label: "ç¨æ·å¹³å°", |
| | |
| | | multiple: true, |
| | | type: "tree", |
| | | dicData: [], |
| | | disabled:this.userStatus, |
| | | disabled: this.isUpdateShowInput, |
| | | props: { |
| | | label: "title" |
| | | }, |
| | |
| | | beforeOpen(done, type) { |
| | | // console.log(type) |
| | | if(type === "edit"){ |
| | | this.userStatus = true; |
| | | this.isUpdateShowInput = true; |
| | | }else { |
| | | this.userStatus = false; |
| | | this.isUpdateShowInput = false; |
| | | } |
| | | //console.log(type) |
| | | // console.log('this.tenantId',this.tenantId) |
| | |
| | | import com.vci.ubcs.starter.exception.VciBaseException; |
| | | import com.vci.ubcs.starter.revision.model.BaseModel; |
| | | import com.vci.ubcs.starter.web.util.VciBaseUtil; |
| | | import org.apache.poi.ss.formula.functions.T; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | |
| | | import java.lang.reflect.Field; |
| | | import java.math.BigDecimal; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.Locale; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws VciBaseException |
| | | */ |
| | | public static <T extends BaseModel> T addDefaultAttrAssimt(T object,String btmName) throws VciBaseException { |
| | | public static <T extends BaseModel> T addDefaultAttrAssimt(T object, String btmName) throws VciBaseException { |
| | | BaseModel baseModel = object; |
| | | try { |
| | | baseModel.setOid(VciBaseUtil.getPk()); |
| | |
| | | baseModel.setLastModifyTime(new Date()); |
| | | baseModel.setTs(new Date()); |
| | | baseModel.setRevisionOid(VciBaseUtil.getPk()); |
| | | // ç¨æ·id |
| | | // String userId = AuthUtil.getUserId().toString(); |
| | | baseModel.setBtmname(btmName); |
| | | baseModel.setCreator(AuthUtil.getUser().getAccount()); |
| | | baseModel.setFirstR("1"); |
| | |
| | | } |
| | | |
| | | /** |
| | | * å½å¨å¤çº¿ç¨æµä¸è°ç¨æ¶ï¼è·åä¸å°è¯·æ±å¤´ä¿¡æ¯ï¼ |
| | | * æä»¥å¾å¨å¤çº¿ç¨æµå¤é¢è·åå°request |
| | | * @param object ç»§æ¿äºBaseModelçå®ä½å¯¹è±¡ |
| | | * @param <T> è¿åå¼çç±»å |
| | | * @param btmName ä¸å¡ç±»å |
| | | * @return |
| | | * @throws VciBaseException |
| | | */ |
| | | public static <T extends BaseModel> T addDefaultAttrAssimt(T object, String btmName, BladeUser user) throws VciBaseException { |
| | | BaseModel baseModel = object; |
| | | try { |
| | | baseModel.setOid(VciBaseUtil.getPk()); |
| | | baseModel.setCreateTime(new Date()); |
| | | baseModel.setNameOid(VciBaseUtil.getPk()); |
| | | baseModel.setLastModifyTime(new Date()); |
| | | baseModel.setTs(new Date()); |
| | | baseModel.setRevisionOid(VciBaseUtil.getPk()); |
| | | baseModel.setBtmname(btmName); |
| | | String account = Func.isNotEmpty(user) ? user.getAccount():AuthUtil.getUser().getAccount(); |
| | | baseModel.setCreator(account); |
| | | baseModel.setFirstR("1"); |
| | | baseModel.setFirstV("1"); |
| | | baseModel.setLastR("1"); |
| | | baseModel.setLastV("1"); |
| | | baseModel.setRevisionSeq(1); |
| | | // TODO:ç®ååªæç¼ç è§å䏿ç¨å°ï¼åæéè¦å»æè¿æ®µä»£ç çè¯ï¼å°±æä»å å¨ç¼ç è§åæ°å¢ä¸å» |
| | | if(Func.isBlank(baseModel.getOwner())){ |
| | | // 设置ææè
|
| | | baseModel.setOwner(Func.isNotEmpty(user) ? user.getUserId().toString():AuthUtil.getUserId().toString()); |
| | | } |
| | | |
| | | baseModel.setVersionSeq(1); |
| | | baseModel.setVersionRule("0"); |
| | | baseModel.setVersionValue("1"); |
| | | baseModel.setRevisionOid(VciBaseUtil.getPk()); |
| | | baseModel.setLastModifier(account); |
| | | baseModel.setRevisionValue("1"); |
| | | baseModel.setRevisionRule("1"); |
| | | baseModel.setTenantId(Func.isNotEmpty(user) ? user.getTenantId():AuthUtil.getTenantId()); |
| | | }catch (VciBaseException e){ |
| | | e.printStackTrace(); |
| | | } |
| | | return (T)baseModel; |
| | | } |
| | | |
| | | /** |
| | | * ä¿®æ¹æ¶å¡«å
é»è®¤å¼ |
| | | * @param object ç»§æ¿äºBaseModelçå®ä½å¯¹è±¡ |
| | | * @param <T> è¿åå¼çç±»å |
| | |
| | | // ç¨æ·id |
| | | // String userId = AuthUtil.getUserId().toString(); |
| | | // è¦æ±æ¹æè´¦å· |
| | | String account = AuthUtil.getUserAccount(); |
| | | baseModel.setLastModifier(account); |
| | | baseModel.setLastModifier(AuthUtil.getUser().getAccount()); |
| | | }catch (VciBaseException e){ |
| | | e.printStackTrace(); |
| | | } |
| | | return (T)baseModel; |
| | | } |
| | | |
| | | /** |
| | | * ä¿®æ¹æ¶å¡«å
é»è®¤å¼ï¼å¤çº¿ç¨æµä¸è°ç¨ |
| | | * @param object ç»§æ¿äºBaseModelçå®ä½å¯¹è±¡ |
| | | * @param <T> è¿åå¼çç±»å |
| | | * @return |
| | | * @throws VciBaseException |
| | | */ |
| | | public static <T extends BaseModel> T updateDefaultAttrAssimt(T object, BladeUser user) throws VciBaseException { |
| | | BaseModel baseModel = object; |
| | | try { |
| | | baseModel.setLastModifyTime(new Date()); |
| | | baseModel.setTs(new Date()); |
| | | // ç¨æ·id |
| | | // String userId = AuthUtil.getUserId().toString(); |
| | | // è¦æ±æ¹æè´¦å· |
| | | baseModel.setLastModifier(Func.isNotEmpty(user) ? user.getAccount():AuthUtil.getUser().getAccount()); |
| | | }catch (VciBaseException e){ |
| | | e.printStackTrace(); |
| | | } |
| | |
| | | Object value=dataMap.get(key); |
| | | newDataMap.put(key.toLowerCase(Locale.ROOT),value); |
| | | }*/ |
| | | /* dataMap.forEach((key,value)->{ |
| | | /* dataMap.forEach((key,value)->{ |
| | | newDataMap.put(key.toLowerCase(Locale.ROOT),value); |
| | | });*/ |
| | | //baseModel.setData((Map)newDataMap); |
| | |
| | | } |
| | | }catch (VciBaseException e){ |
| | | e.printStackTrace(); |
| | | throw e; |
| | | } |
| | | return (T)baseModel; |
| | | } |
| | | |
| | | /** |
| | | * æ°å¢æ¶å¡«å
é»è®¤å¼ï¼å¤çº¿ç¨æµä¸è°ç¨ |
| | | * @param object ç»§æ¿äºBaseModelçå®ä½å¯¹è±¡ |
| | | * @param <T> è¿åå¼çç±»å |
| | | * @return |
| | | * @throws VciBaseException |
| | | */ |
| | | public static <T extends BaseModel> T copplyDefaultAttrAssimt(Map<String,String> dataMap, T object, BladeUser user) throws VciBaseException { |
| | | BaseModel baseModel = object; |
| | | try { |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | baseModel.setOid(dataMap.getOrDefault("OID","")); |
| | | baseModel.setId(dataMap.getOrDefault("ID","")); |
| | | Map<String,Object> newDataMap=new HashMap<>(); |
| | | /*for (String key:dataMap.keySet()){ |
| | | Object value=dataMap.get(key); |
| | | newDataMap.put(key.toLowerCase(Locale.ROOT),value); |
| | | }*/ |
| | | /* dataMap.forEach((key,value)->{ |
| | | newDataMap.put(key.toLowerCase(Locale.ROOT),value); |
| | | });*/ |
| | | //baseModel.setData((Map)newDataMap); |
| | | Object createTimeObj=dataMap.getOrDefault("CREATETIME",""); |
| | | if(createTimeObj!=null) { |
| | | String createTime = createTimeObj.toString(); |
| | | baseModel.setCreateTime(chageStringToDate(createTime)); |
| | | } |
| | | baseModel.setNameOid(dataMap.getOrDefault("NAMEOID","")); |
| | | |
| | | Object lastModifyTimeObj=dataMap.getOrDefault("LASTMODIFYTIME",""); |
| | | if(lastModifyTimeObj!=null) { |
| | | String lastModifyTime = lastModifyTimeObj.toString(); |
| | | baseModel.setLastModifyTime(chageStringToDate(lastModifyTime)); |
| | | } |
| | | Object tsObj=dataMap.getOrDefault("TS",""); |
| | | if(tsObj!=null) { |
| | | String ts = tsObj.toString(); |
| | | baseModel.setTs(chageStringToDate(ts)); |
| | | } |
| | | baseModel.setRevisionOid(dataMap.getOrDefault("REVISIONOID","")); |
| | | //ç¨æ·id ; è¦æ±æ¹æäºè´¦å· |
| | | // String userId = AuthUtil.getUserId().toString(); |
| | | baseModel.setBtmname(dataMap.getOrDefault("BTMNAME","")); |
| | | baseModel.setCreator(dataMap.getOrDefault("CREATOR","")); |
| | | baseModel.setFirstR(dataMap.getOrDefault("FIRSTR","")); |
| | | baseModel.setFirstV(dataMap.getOrDefault("FIRSTV","")); |
| | | baseModel.setLastR(dataMap.getOrDefault("LASTR","")); |
| | | baseModel.setLastV(dataMap.getOrDefault("LASTV","")); |
| | | Object revisionseq =dataMap.getOrDefault("REVISIONSEQ",""); |
| | | if(revisionseq!=null){ |
| | | baseModel.setRevisionSeq(chageStringToInt(revisionseq.toString())); |
| | | } |
| | | |
| | | baseModel.setOwner(dataMap.getOrDefault("OWNER","")); |
| | | Object versionseq =dataMap.getOrDefault("VERSIONSEQ",""); |
| | | if(versionseq!=null){ |
| | | baseModel.setVersionSeq(chageStringToInt(versionseq.toString())); |
| | | } |
| | | baseModel.setVersionRule(dataMap.getOrDefault("VERSIONRULE","")); |
| | | baseModel.setVersionValue(dataMap.getOrDefault("VERSIONVALUE","")); |
| | | baseModel.setRevisionOid(dataMap.getOrDefault("REVISIONOID","")); |
| | | baseModel.setLastModifier(Func.isNotEmpty(user) ? user.getAccount():AuthUtil.getUser().getAccount()); |
| | | baseModel.setLcStatus(dataMap.getOrDefault("LCSTATUS","")); |
| | | baseModel.setName(dataMap.getOrDefault("NAME","")); |
| | | baseModel.setTenantId(dataMap.getOrDefault("TENADTID","")); |
| | | baseModel.setDescription(dataMap.getOrDefault("DESCRIOTION","")); |
| | | baseModel.setCopyFromVersion(dataMap.getOrDefault("COPYFROMVERSION","")); |
| | | Object secretgrade=dataMap.get("SECRETGRADE"); |
| | | if(secretgrade!=null){ |
| | | baseModel.setSecretGrade(chageStringToInt(secretgrade.toString())); |
| | | } |
| | | }catch (VciBaseException e){ |
| | | e.printStackTrace(); |
| | | throw e; |
| | | } |
| | | return (T)baseModel; |
| | | } |
| | |
| | | } |
| | | return date; |
| | | } |
| | | |
| | | } |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | | * è·åç»è®¡åææ°æ® |
| | | * @param btmNames ä¸å¡ç±»å |
| | | * @return |
| | | */ |
| | | @GetMapping("/getStatisticAnalysis") |
| | | @VciBusinessLog(operateName = "è·åç»è®¡åææ°æ®") |
| | | public R getStatisticAnalysis(String btmNames) { |
| | | return engineService.getStatisticAnalysis(btmNames); |
| | | } |
| | | } |
| | |
| | | * @return æ§è¡ç»æ |
| | | */ |
| | | String addSaveBZCodeNotauthUser(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception; |
| | | /** |
| | | * è·åç»è®¡åææ°æ® |
| | | * @param btmNames ä¸å¡ç±»å |
| | | * @return æ°æ®é |
| | | */ |
| | | R getStatisticAnalysis(String btmNames); |
| | | } |
| | |
| | | import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; |
| | | import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO; |
| | | import com.vci.ubcs.starter.revision.model.BaseModel; |
| | | import org.springblade.core.secure.BladeUser; |
| | | |
| | | import java.util.Collection; |
| | | import java.util.List; |
| | |
| | | * @param dataCBOList ä¸å¡æ°æ® |
| | | */ |
| | | List<String> productCodeAndSaveData(CodeClassifyFullInfoBO classifyFullInfoBO, CodeClassifyTemplateVO templateVO, |
| | | CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<BaseModel> dataCBOList) throws Exception; |
| | | CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<BaseModel> dataCBOList, BladeUser user) throws Exception; |
| | | |
| | | /** |
| | | * åæ¶ç å¼ |
| | |
| | | import com.vci.ubcs.system.feign.ISysClient; |
| | | import com.vci.ubcs.system.user.entity.User; |
| | | import com.vci.ubcs.system.user.feign.IUserClient; |
| | | import io.swagger.models.auth.In; |
| | | import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils; |
| | | import oracle.sql.TIMESTAMP; |
| | | import org.slf4j.Logger; |
| | |
| | | import org.springblade.core.cache.utils.CacheUtil; |
| | | import org.springblade.core.log.annotation.OperateLog; |
| | | import org.springblade.core.log.exception.ServiceException; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.DateUtil; |
| | |
| | | CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(orderDTO.getCodeClassifyOid()); |
| | | CodeClassifyTemplateVO templateVO = templateService.getObjectHasAttrByOid(orderDTO.getTemplateOid()); |
| | | CodeRuleVO ruleVO = ruleService.getObjectHasSecByOid(orderDTO.getCodeRuleOid()); |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | //1.夿è§åä¸é¤äºæµæ°´ç æ®µï¼æ¯å¦æå
¶ä»ç 段 |
| | | checkSecValueOnOrder(ruleVO, orderDTO); |
| | | //2.夿å¿
è¾é¡¹ |
| | |
| | | //cbo.setCreator(String.valueOf(AuthUtil.getUser().getUserId()));ã |
| | | if(authUser) { |
| | | // è¦æ±æ¾ç¤ºè´¦å·ï¼æä»¥åäºæ´æ¹ |
| | | cbo.setCreator(String.valueOf(AuthUtil.getUser().getAccount())); |
| | | cbo.setLastModifier(String.valueOf(AuthUtil.getUser().getAccount())); |
| | | cbo.setCreator(String.valueOf(user.getAccount())); |
| | | cbo.setLastModifier(String.valueOf(user.getAccount())); |
| | | }else{ |
| | | cbo.setCreator(orderDTO.getCreator()); |
| | | cbo.setLastModifier(orderDTO.getLastModifier()); |
| | | } |
| | | cbo.setTenantId(AuthUtil.getTenantId()); |
| | | cbo.setTenantId(user.getTenantId()); |
| | | if(StringUtils.isNotBlank(orderDTO.getLcStatus())||StringUtils.isNotBlank(orderDTO.getData().get("lcStatus"))){ |
| | | cbo.setLcStatus(StringUtils.isNotBlank(orderDTO.getLcStatus())?orderDTO.getLcStatus():orderDTO.getData().get("lcStatus")); |
| | | } |
| | |
| | | cbo.setDescription(orderDTO.getDescription()); |
| | | cboList.add(cbo); |
| | | |
| | | List<String> codeList = productCodeService.productCodeAndSaveData(classifyFullInfo, templateVO, ruleVO, orderDTO.getSecDTOList(), cboList); |
| | | List<String> codeList = productCodeService.productCodeAndSaveData(classifyFullInfo, templateVO, ruleVO, orderDTO.getSecDTOList(), cboList,user); |
| | | |
| | | batchSaveSelectChar(templateVO, cboList); |
| | | return codeList.size() > 0 ? codeList.get(0) : ""; |
| | |
| | | @Override |
| | | public String addSaveBZCodeNotauthUser(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception { |
| | | return addSaveBZCode(codeBZApplyDTO,authUser); |
| | | } |
| | | |
| | | /** |
| | | * è·åç»è®¡åææ°æ® |
| | | * @param btmNames ä¸å¡ç±»å |
| | | * @return æ°æ®é |
| | | */ |
| | | @Override |
| | | public R getStatisticAnalysis(String btmNames) { |
| | | //æ¥è¯¢ä¸å¡ç±»å对åºçæ°æ®åºè¡¨ |
| | | R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Arrays.asList(btmNames.split(","))); |
| | | if (!listR.isSuccess() || listR.getData().size() == 0) { |
| | | throw new ServiceException("ä¼ å
¥ä¸å¡ç±»åæªæ¥è¯¢å°ç¸åºè¡¨åï¼è¯·æ£æ¥ï¼"); |
| | | } |
| | | List tableData = new ArrayList(); |
| | | for (BtmTypeVO datum : listR.getData()) { |
| | | String sql = "select count(*) countNum, to_char(CREATETIME, 'mm') countDate\n" + |
| | | "from "+ datum.getTableName() +"\n" + |
| | | "where CREATETIME >= to_date(EXTRACT(YEAR FROM SYSDATE) || '-01-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND LASTV = '1'\n" + |
| | | "group by to_char(CREATETIME, 'mm')\n" + |
| | | "order by to_char(CREATETIME, 'mm')"; |
| | | //æ¥è¯¢åºéè¦å¤ççæ°æ® |
| | | List<Map> maps = commonsMapper.selectBySql(sql); |
| | | if(maps.size() == 0){ |
| | | throw new ServiceException("ä¼ å
¥ç±»å["+ datum.getName() + ":" + |
| | | datum.getId() +"]æªæ¥å°ç¸å
³ç»è®¡æ°æ®ï¼è¯·ç¡®è®¤!!!!"); |
| | | } |
| | | //å½å¹´æ¯ææä»½ä¹åä¹å |
| | | List<Integer> monthCount = new ArrayList<>(12); |
| | | //å½å¹´æ¯æçæä»½æ°æ® |
| | | List<Integer> month = new ArrayList<>(); |
| | | //è·åå½åæçæ°å |
| | | Calendar instance = Calendar.getInstance(); |
| | | int nowmonth = instance.get(Calendar.MONTH) + 1; |
| | | //ä»1å°12æè¿è¡å¤ç |
| | | for (Integer i = 1; i <= 12; i++) { |
| | | //å½åæåæææ°æ®è®¾ç½®ä¸º0 |
| | | if(i>nowmonth){ |
| | | monthCount.add(0); |
| | | month.add(0); |
| | | } |
| | | //å½åæä»½ä¹åä¹å |
| | | Integer count = 0; |
| | | //å½åæä»½æ°æ® |
| | | Integer sameMonth = 0; |
| | | //å¯¹æ°æ®åºæ¥çæ°æ®è¿è¡å¤çï¼å¯¹å½åæä»½è¿è¡ç´¯å |
| | | for (Map map : maps) { |
| | | Integer mounDate = Integer.parseInt(String.valueOf(map.get("COUNTDATE"))); |
| | | if(mounDate <= i){ |
| | | count += Integer.parseInt(String.valueOf(map.get("COUNTNUM"))); |
| | | } |
| | | if (mounDate == i) { |
| | | sameMonth = Integer.parseInt(String.valueOf(map.get("COUNTNUM"))); |
| | | } |
| | | } |
| | | monthCount.add(count); |
| | | month.add(sameMonth); |
| | | } |
| | | //å¯¹æ°æ®è¿è¡æ´å |
| | | HashMap<String,Object> menuData = new HashMap<>(); |
| | | menuData.put("menuName",datum.getName()); |
| | | menuData.put("codeType",null); |
| | | ArrayList monthData = new ArrayList(); |
| | | monthData.add(monthCount); |
| | | monthData.add(month); |
| | | menuData.put("menuData",monthData); |
| | | tableData.add(menuData); |
| | | } |
| | | return R.data(tableData); |
| | | } |
| | | |
| | | /** |
| | |
| | | updateBatchByBaseModel(oldCbo.getBtmname(), Collections.singletonList(oldCbo)); |
| | | // æå
¥æ°çæ°æ® |
| | | insertBatchByType(cbo.getBtmname(), Collections.singletonList(cbo)); |
| | | //å¤çç å¼è¡¨ï¼å¯¹ç å¼è¡¨è¿è¡å¤çæ¿æ¢åå»ºæ°æ®çoid |
| | | QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("CREATECODEOID",orderDTO.getCopyFromVersion()); |
| | | CodeAllCode codeAllCode = codeAllCodeService.getOne(wrapper); |
| | | codeAllCode.setCreateCodeOid(cbo.getOid()); |
| | | codeAllCode.setLastModifyTime(new Date()); |
| | | codeAllCode.setTs(new Date()); |
| | | codeAllCode.setLastModifier(AuthUtil.getUser().getUserName()); |
| | | codeAllCodeService.updateById(codeAllCode); |
| | | // è®°å½æ°æ®æ´æ¹æ¥å¿ |
| | | saveLogUtil.operateLog("æ°æ®æ´æ¹",false, StringUtil.format("{}\nä¿®æ¹ä¸º:\n{}",JSON.toJSONString(Collections.singletonList(oldCbo)),JSON.toJSONString(Collections.singletonList(cbo)))); |
| | | } catch (Exception vciError) { |
| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.google.protobuf.ServiceException; |
| | | import com.vci.ubcs.code.applyjtcodeservice.entity.DockingPreAttrMapping; |
| | | import com.vci.ubcs.code.applyjtcodeservice.feign.IMdmInterJtClient; |
| | | import com.vci.ubcs.code.applyjtcodeservice.vo.DockingPreAttrMappingVO; |
| | | import com.vci.ubcs.code.bo.AttributeValue; |
| | | import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO; |
| | | import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO; |
| | | import com.vci.ubcs.code.constant.MdmEngineConstant; |
| | | import com.vci.ubcs.code.dto.*; |
| | | import com.vci.ubcs.code.entity.CodeAllCode; |
| | | import com.vci.ubcs.code.enumpack.CodeDefaultLC; |
| | |
| | | import org.apache.poi.ss.usermodel.Workbook; |
| | | import org.aspectj.apache.bcel.classfile.Code; |
| | | import org.springblade.core.redis.cache.BladeRedis; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.CollectionUtils; |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import java.beans.BeanInfo; |
| | | import java.beans.Introspector; |
| | | import java.beans.PropertyDescriptor; |
| | |
| | | import java.util.concurrent.CopyOnWriteArrayList; |
| | | import java.util.concurrent.CopyOnWriteArraySet; |
| | | import java.util.concurrent.atomic.AtomicBoolean; |
| | | import java.util.concurrent.atomic.AtomicReference; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static com.alibaba.druid.util.FnvHash.Constants.LIMIT; |
| | |
| | | private SaveLogUtil saveLogUtil; |
| | | |
| | | /** |
| | | * 导åºçå䏿¡ |
| | | * 客æ·ç°åºexcel为èçæ¬ï¼å¯¼åºçæ»æ°éå¶ä¸º65535 |
| | | */ |
| | | public static final int EXPORT_LIMIT = 100000; |
| | | public static final int EXPORT_LIMIT = 65535; |
| | | |
| | | /** |
| | | * æ¹éç³è¯·ï¼éåéä¸åç±»ä¸çæææ¨¡æ¿å
³é®å±æ§ï¼ç¸ä¼¼å±æ§ï¼å¿
填屿§ï¼åå
¥execlä¸ |
| | |
| | | ExcelUtil.writeDataToFile(excelName,eo); |
| | | return excelName; |
| | | } |
| | | |
| | | /** |
| | | * è·åç æ®µå®½åº¦ |
| | | * @param codeClassifyOid |
| | |
| | | //SessionInfo sessionInfo = VciBaseUtil.getCurrentUserSessionInfo(); |
| | | List<ClientBusinessObject> finalNeedSaveCboList = needSaveCboList; |
| | | CodeClassifyTemplateVO finalTemplateVO = templateVO; |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | ruleRowIndexMap.keySet().parallelStream().forEach(ruleOid -> { |
| | | //VciBaseUtil.setCurrentUserSessionInfo(sessionInfo); |
| | | List<String> rowIndexList = ruleRowIndexMap.get(ruleOid); |
| | |
| | | if (!CollectionUtils.isEmpty(thisCbos)) { |
| | | try { |
| | | // TODO å¤çº¿ç¨æµé®é¢ |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, finalTemplateVO, ruleVOMap.get(ruleOid), null, dataCBOList); |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, finalTemplateVO, ruleVOMap.get(ruleOid), null, dataCBOList,user); |
| | | importCount.add(dataCBOList.size()); |
| | | } catch (Throwable e) { |
| | | log.error("æ¹é产çç¼ç çæ¶ååºéäº", e); |
| | |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 导å
¥æ¹éç¼è¾æ°æ® |
| | | * |
| | |
| | | * @param file excelæä»¶çä¿¡æ¯ |
| | | * @return æé误信æ¯çexcel |
| | | */ |
| | | @Transactional |
| | | @Override |
| | | public CodeImProtRusultVO batchImportEdit(String codeClassifyOid, String classifyAttr,File file) throws Throwable{ |
| | | VciBaseUtil.alertNotNull(codeClassifyOid,"åç±»ç主é®"); |
| | | ReadExcelOption reo = new ReadExcelOption(); |
| | | reo.setReadAllSheet(true); |
| | | List<SheetDataSet> sheetDataSetList = ExcelUtil.readDataObjectFromExcel(file,null,reo); |
| | | if (sheetDataSetList.size() > LIMIT + 1) { |
| | | throw new VciBaseException("为äºä¿è¯ç³»ç»çç¨³å®æ§ï¼è¯·ä¸æ¬¡ä¸è¦å¯¼å
¥è¶
è¿1䏿¡çæ°æ®"); |
| | | if (sheetDataSetList.get(0).getRowData().size() > LIMIT + 1) { |
| | | throw new ServiceException("为äºä¿è¯ç³»ç»çç¨³å®æ§ï¼è¯·ä¸æ¬¡ä¸è¦å¯¼å
¥è¶
è¿1䏿¡çæ°æ®"); |
| | | } |
| | | if (sheetDataSetList.get(0).getRowData().size() == 0) { |
| | | throw new ServiceException("æªè¯»åå°excleç¸å
³æ°æ®ï¼è¯·ç¡®è®¤ï¼ï¼ï¼"); |
| | | } |
| | | boolean isExport=false; |
| | | Map<String,List<WriteExcelData>> shetNameMap=new HashMap<>(); |
| | |
| | | titleRowData.remove(titleRowData.size()-1); |
| | | templateVO= templateVOList.get(0); |
| | | }catch (Throwable e){ |
| | | throw new VciBaseException(e.getMessage()); |
| | | throw new ServiceException(e.getMessage()); |
| | | } |
| | | |
| | | CodeClassifyTemplateVO finalTemplateVO = templateVO; |
| | |
| | | //æä»¬ä½¿ç¨åä¸å¡ç±»åçæ¥æ¥è¯¢ |
| | | List<Map> cbosB = commonsMapper.selectBySql(sqlBO.getSqlUnPage()); |
| | | if(cbosB.size() == 0){ |
| | | throw new ServiceException("ç¼ç ï¼"+ sheetRowData.getData().get(0) + ",æªè½æ¥è¯¢å°ç¸å
³æ°æ®ã"); |
| | | throw new ServiceException("ç¼ç ï¼"+ sheetRowData.getData().get(0) + ",æªè½æ¥è¯¢å°ç¸å
³æ°æ®ã"); |
| | | } |
| | | excelToCboEdit(fieldIndexMap, sheetRowData, orderDTO, cbosB.get(0)); |
| | | orderDTO.setCopyFromVersion(orderDTO.getOid()); |
| | | orderDTO.setOid(null); |
| | | try { |
| | | mdmEngineService.upSaveCode(orderDTO); |
| | | List<Map> newCbos = commonsMapper.selectBySql(sqlBO.getSqlUnPage()); |
| | | //对ç å¼è¡¨è¿è¡å¤çæ¿æ¢åå»ºæ°æ®çoid |
| | | QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("CREATECODEOID",orderDTO.getCopyFromVersion()); |
| | | List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper); |
| | | codeAllCodes.get(0).setCreateCodeOid(newCbos.get(0).get("OID").toString()); |
| | | codeAllCodes.get(0).setLastModifyTime(new Date()); |
| | | codeAllCodes.get(0).setTs(new Date()); |
| | | codeAllCodes.get(0).setLastModifier(AuthUtil.getUser().getUserName()); |
| | | codeAllCodeService.updateBatchById(codeAllCodes); |
| | | } catch (Throwable e) { |
| | | log.error("æ¹é产çç¼ç çæ¶ååºéäº", e); |
| | | // thisCbos.stream().forEach(cbo -> { |
| | | // String rowIndex = cbo.getAttributeValue(IMPORT_ROW_INDEX); |
| | | errorMap.put(sheetRowData.getRowIndex(), ";ç³»ç»é误ï¼å卿°æ®çæ¶ååºéäº:"+e.getMessage()); |
| | | // }); |
| | | } |
| | | } |
| | | |
| | | if (errorMap.size() > 0) { |
| | | isExport = true; |
| | | } |
| | |
| | | createRedisDatas(uuid + "-ok",templateVO, rowIndexCboMap, dataSet, fieldIndexMap, newErrorMap,true); |
| | | }else { |
| | | uuid=""; |
| | | |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | //è¦æä»¥ä¸çé误ç齿åºåï¼åç»§ç»å¤çæ¶é´åç»åè§å |
| | | needSaveCboList = cboList.stream().filter(cbo -> { |
| | | String rowIndex = cbo.getAttributeValue(IMPORT_ROW_INDEX); |
| | |
| | | dataCBOIdList.add(baseModel.getOid()); |
| | | }); |
| | | try { |
| | | codeList = productCodeService.productCodeAndSaveData(classifyFullInfo,templateVO,ruleVO, orderDTO.getSecDTOList(),dataCBOList); |
| | | codeList = productCodeService.productCodeAndSaveData(classifyFullInfo,templateVO,ruleVO, orderDTO.getSecDTOList(),dataCBOList,user); |
| | | //妿æ¯ç¼ç çæå¤±è´¥ï¼åç´æ¥å°±å¤±è´¥äºï¼å
¶ä»çå¤æåºæ¥æé误çæä»¬é½ç»ä¸è¿åå°exceléé¢ |
| | | engineService.batchSaveSelectChar(templateVO, dataCBOList); |
| | | } catch (Exception e) { |
| | |
| | | tableName = VciBaseUtil.getTableName(btmTypeId); |
| | | } |
| | | |
| | | String countSql = "select count(*) from " + tableName +" where 1=1" + |
| | | String countSql = "select count(*) from (select * FROM " + tableName +" where 1=1" + |
| | | " and lastr = '1'" + |
| | | " and lastv='1'" + |
| | | " and codeclsfpath like '%" + exportAttrDTO.getCodeClassifyOid() + "%'"; |
| | | " and codeclsfpath like '%" + exportAttrDTO.getCodeClassifyOid() + "%' {}"; |
| | | |
| | | //å
æ¥è¯¢æ»æ° |
| | | int total = 0; |
| | |
| | | thisPage.setSort(exportAttrDTO.getSort()); |
| | | thisPage.setOrder(exportAttrDTO.getOrder()); |
| | | thisPage.addDefaultDesc("createTime"); |
| | | |
| | | total += commonsMapper.queryCountBySql(countSql); |
| | | total += commonsMapper.queryCountBySql(StringUtil.format(countSql," limit " + exportAttrDTO.getLimit() +" offset "+ i +")subquery;")); |
| | | } |
| | | }else{ |
| | | total = commonsMapper.queryCountBySql(countSql); |
| | |
| | | }).collect(Collectors.toList()); |
| | | List<ClientBusinessObject> finalNeedSaveCboList = needSaveCboList; |
| | | Map<String, CodeRuleVO> finalRuleVOMap = ruleVOMap; |
| | | ruleRowIndexMap.keySet().parallelStream().forEach(ruleOid -> { |
| | | // TODOï¼ å¤çº¿ç¨æµå¥å¤çº¿ç¨æµï¼æåï¼ææè¿å¿æ¹æå线ç¨äº |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | ruleRowIndexMap.keySet().stream().forEach(ruleOid -> { |
| | | List <BaseModel>dataCBOList=new CopyOnWriteArrayList<>(); |
| | | List<String> rowIndexList = ruleRowIndexMap.get(ruleOid); |
| | | List<ClientBusinessObject> thisCbos = needSaveCboList.stream().filter(cbo -> rowIndexList.contains(cbo.getAttributeValue(IMPORT_ROW_INDEX)) && !errorMap.containsKey(cbo.getAttributeValue(IMPORT_ROW_INDEX))).collect(Collectors.toList()); |
| | |
| | | dataCBOList.add(baseModel); |
| | | }); |
| | | try { |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, codeClassifyTemplateVO, finalRuleVOMap.get(ruleOid), null, dataCBOList); |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, codeClassifyTemplateVO, finalRuleVOMap.get(ruleOid), null, dataCBOList, user); |
| | | } catch (Throwable e) { |
| | | //success=false; |
| | | log.error("æ¹é产çç¼ç çæ¶ååºéäº", e); |
| | |
| | | engineService.batchSaveSelectChar(codeClassifyTemplateVO, dataCBOList); |
| | | }); |
| | | }else { |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | List<BaseModel> dataCBOList=new ArrayList<>(); |
| | | List<ClientBusinessObject> needSaveCboList = cboList.stream().filter(cbo -> { |
| | | String rowIndex = cbo.getAttributeValue(IMPORT_ROW_INDEX); |
| | |
| | | dataCBOList.add(baseModel); |
| | | }); |
| | | try { |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, codeClassifyTemplateVO, ruleVO, orderDTO.getSecDTOList(), dataCBOList); |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, codeClassifyTemplateVO, ruleVO, orderDTO.getSecDTOList(), dataCBOList,user); |
| | | } catch (Exception e) { |
| | | log.error("æ¹é产çç¼ç çæ¶ååºéäº", e); |
| | | needSaveCboList.stream().forEach(cbo -> { |
| | |
| | | |
| | | List<String>allNeedSaveCboList=new ArrayList<>(); |
| | | List<BaseModel> dataCBOList=new ArrayList<>(); |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | needSaveCboList.stream().forEach(clientBusinessObject -> { |
| | | BaseModel baseModel=new BaseModel(); |
| | | BeanUtil.convert(clientBusinessObject,baseModel); |
| | |
| | | }); |
| | | try { |
| | | List<String>applyGroupCodeIdList=new ArrayList<>(); |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, templateVO, ruleVO, orderDTO.getSecDTOList(), dataCBOList); |
| | | productCodeService.productCodeAndSaveData(classifyFullInfo, templateVO, ruleVO, orderDTO.getSecDTOList(), dataCBOList,user); |
| | | //妿æ¯ç¼ç çæå¤±è´¥ï¼åç´æ¥å°±å¤±è´¥äºï¼å
¶ä»çå¤æåºæ¥æé误çæä»¬é½ç»ä¸è¿åå°exceléé¢ |
| | | engineService.batchSaveSelectChar(templateVO, dataCBOList); |
| | | // if(!isProcess){ |
| | |
| | | resultDataObjectDetailDO.setErrorid("0"); |
| | | } |
| | | resultDataObjectDetailDO.setId(sourceOid); |
| | | |
| | | resultDataObjectDetailDO.setMsg(msg); |
| | | resultDataObjectDetailDOs.add(resultDataObjectDetailDO); |
| | | //å¤çä¼ éçæ°æ®ä¸å
³é®å±æ§éå¤çï¼ç´æ¥æ¿å°å·²ç»ç³è¯·å°ç¼ç çæ°æ®ç¼ç ç´æ¥å°èµç»å
³é®å±æ§éå¤çæ°æ® |
| | |
| | | if (StringUtils.isBlank(field)) { |
| | | throw new VciBaseException("第" + (index + 1) + "åçæ é¢å¨ç³»ç»ä¸ä¸åå¨"); |
| | | } |
| | | map.put(field,value); |
| | | map.put(field.toUpperCase(),value); |
| | | }); |
| | | |
| | | try { |
| | |
| | | Map<String,List<BaseModel>> indexTODataMap=new ConcurrentHashMap<>(); |
| | | // æ¥è¯¢ä¸éè¦åä¸å
³é®å±æ§æ ¡éªçé¤èªå·±ä»¥å¤çææåç±»oid |
| | | final String isParticipateCheckOids = classifyService.selectLeafByParentClassifyOid(classifyFullInfo.getTopClassifyVO().getOid(), classifyFullInfo.getCurrentClassifyVO().getOid()); |
| | | final BladeUser user = AuthUtil.getUser(); |
| | | List<ClientBusinessObject> repeatDataMap = cboList.parallelStream().filter(cbo -> { |
| | | //æ¯è¡é½å¾æ¥è¯¢.妿å
¶ä¸åºç°äºéè¯¯ï¼æä»¬å°±ç´æ¥æåºå¼å¸¸ï¼å
¶ä½çæ¾ç¤º |
| | | //VciBaseUtil.setCurrentUserSessionInfo(sessionInfo); |
| | |
| | | List<BaseModel> newCboList = new ArrayList<>(); |
| | | newDataList.stream().forEach(stringStringMap -> { |
| | | BaseModel baseModel=new BaseModel(); |
| | | DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(stringStringMap,baseModel,true); |
| | | DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(stringStringMap,baseModel,true,user); |
| | | baseModel.setData(stringStringMap); |
| | | newCboList.add(baseModel); |
| | | }); |
| | |
| | | List<ClientBusinessObject> clientBusinessObjectList=new ArrayList<>(); |
| | | oldDataMap.stream().forEach(dataMap->{ |
| | | ClientBusinessObject clientBusinessObject=new ClientBusinessObject(); |
| | | DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject,true); |
| | | DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject); |
| | | for (String key:dataMap.keySet()){ |
| | | Object value= dataMap.getOrDefault(key,""); |
| | | clientBusinessObject.setAttributeValue(key.toLowerCase(Locale.ROOT),value==null?"":value.toString()); |
| | |
| | | |
| | | ExecGroupCodePortDataDTO execGroupCodePortDataDTO=new ExecGroupCodePortDataDTO(); |
| | | createExportGroupCodeMapConfig(templateVO,execGroupCodePortDataDTO);//ç»ç»æ°æ® |
| | | if(CollectionUtils.isEmpty(execGroupCodePortDataDTO.getCodeAttrMapGroupAttrDTOS())){ |
| | | throw new VciBaseException("éå¢å±æ§æ å°æªé
ç½®"); |
| | | if(!CollectionUtils.isEmpty(execGroupCodePortDataDTO.getCodeAttrMapGroupAttrDTOS())){ |
| | | throw new ServiceException("éå¢å±æ§æ å°æªé
ç½®"); |
| | | } |
| | | fieldList=execGroupCodePortDataDTO.getFieldList(); |
| | | List<Map<String,String>>dataList=new ArrayList<>(); |
| | |
| | | import com.vci.ubcs.starter.web.util.VciDateUtil; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springblade.core.log.exception.ServiceException; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.core.tool.utils.WebUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.context.annotation.Lazy; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import java.lang.reflect.Method; |
| | | import java.util.*; |
| | | import java.util.concurrent.CopyOnWriteArrayList; |
| | |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public List<String> productCodeAndSaveData(CodeClassifyFullInfoBO classifyFullInfoBO, CodeClassifyTemplateVO templateVO, CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<BaseModel> dataCBOList) throws Exception { |
| | | public List<String> productCodeAndSaveData(CodeClassifyFullInfoBO classifyFullInfoBO, CodeClassifyTemplateVO templateVO, CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<BaseModel> dataCBOList,BladeUser user) throws Exception { |
| | | dataCBOList = dataCBOList.stream().sorted(((o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime()))).collect(Collectors.toList()); |
| | | List<String> codeList = new ArrayList<>(); |
| | | final CodeRuleVO finalRuleVO = ruleVO; |
| | |
| | | }); |
| | | } |
| | | CodeAllCode allCodeDO = new CodeAllCode(); |
| | | DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCodeDO, MdmBtmTypeConstant.CODE_ALL_CODE); |
| | | DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCodeDO, MdmBtmTypeConstant.CODE_ALL_CODE,user); |
| | | allCodeDO.setCodeClassifyOid(classifyFullInfoBO.getCurrentClassifyVO().getOid()); |
| | | allCodeDO.setCodeRuleOid(finalRuleVO.getOid()); |
| | | allCodeDO.setId(cbo.getId()); |
| | |
| | | log.info("oldmaxSerial--->"+serialValueDO.getMaxSerial()+"---- newmaxSerial---->"+maxSerial); |
| | | if(VciBaseUtil.getDouble(serialValueDO.getMaxSerial())<VciBaseUtil.getDouble(maxSerial)){ |
| | | serialValueDO.setMaxSerial(String.valueOf(maxSerial)); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(serialValueDO); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(serialValueDO,user); |
| | | editSerialValueList.add(serialValueDO); |
| | | } |
| | | }else{ |
| | | //没æ |
| | | CodeSerialValue serialValueDO = new CodeSerialValue(); |
| | | DefaultAttrAssimtUtil.addDefaultAttrAssimt(serialValueDO, MdmBtmTypeConstant.CODE_SERIAL_VALUE); |
| | | DefaultAttrAssimtUtil.addDefaultAttrAssimt(serialValueDO, MdmBtmTypeConstant.CODE_SERIAL_VALUE,user); |
| | | serialValueDO.setCodeRuleOid(finalRuleVO.getOid()); |
| | | serialValueDO.setSerialUnit(serialUnit); |
| | | serialValueDO.setCodeSecOid(secOid); |
| | |
| | | } |
| | | //å¤çallCode |
| | | if(!CollectionUtils.isEmpty(allCodeDOList)){ |
| | | // TODO å岿°æ®å¯¼å
¥çæ¶åè¿å¿å¶å°ä¼è§¦å空æéå¼å¸¸ |
| | | Map<String,List<CodeAllCode>> ruleGroup = allCodeDOList.stream().collect(Collectors.groupingBy(s -> s.getCodeRuleOid())); |
| | | Map<String, CodeAllCode> codeDOMap = allCodeDOList.stream().collect(Collectors.toMap(s -> s.getCodeRuleOid() + "${SEP}" + s.getId(), t -> t)); |
| | | List<CodeAllCode> addCodeDOs = new CopyOnWriteArrayList<>(); |
| | |
| | | saveSerialValue( finalRuleVO, lastMaxSerialValueMap, maxSerialValueMap); |
| | | |
| | | allCodeDOList.stream().forEach( |
| | | allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");} |
| | | allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode",user);allCode.setLctid("codeAllCodeLC");} |
| | | ); |
| | | |
| | | |
| | |
| | | UserVO userVo = interParameterVO.getData().getUser(); |
| | | //å
å¯ç»å½ç³è¯·tokenï¼request䏿·»å ç¨æ·ä¿¡æ¯ |
| | | |
| | | //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(),this.getRequest()); |
| | | passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(Locale.ROOT),this.getRequest()); |
| | | AuthUtil.getUser(); |
| | | List<ClassfyVO> classVOList = classfysVO.getClassify(); |
| | | InterParameterVO finalInterParameterVO = interParameterVO; |
| | | //è¿æ¯è´¦å·ä¿¡æ¯ |
| | |
| | | |
| | | |
| | | /*** |
| | | * æ ¹æ®ç©¿å
¥çåæ°ä¿¡æ¯æ ¡éªç 段è§å |
| | | * æ ¹æ®ä¼ å
¥çåæ°ä¿¡æ¯æ ¡éªç 段è§å |
| | | */ |
| | | private List<CodeOrderSecDTO> getRuleCodeOrderSecDTOs(List<SectionVO> SectionVOList,CodeRuleVO ruleVO,CodeClassifyFullInfoBO classifyFullInfo) throws Throwable{ |
| | | List<CodeBasicSecVO> codeBasicSecVOS= ruleVO.getSecVOList(); |
| | |
| | | CodeOrderSecDTO.setSecValue(sectypeValue); |
| | | codeOrderSecDTOList.add(CodeOrderSecDTO); |
| | | } else { |
| | | message="ä¼ å
¥çç æ®µè§å缺å°" + name + "ç æ®µ"; |
| | | message="ä¼ å
¥çç æ®µè§å缺å°" + name; |
| | | errorMap.put("error",errorMap.getOrDefault("error","")+";"+message); |
| | | } |
| | | } |