From b903759eab59a5f4ad35af0985da12d42d419ec0 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期四, 10 四月 2025 10:46:14 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue | 337 +++++++++++++++++++++++++++++++++++++ src/views/flowable/workflow/FlowTodo.vue | 27 ++ src/views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal.vue | 118 ++++-------- 3 files changed, 396 insertions(+), 86 deletions(-) diff --git a/src/views/flowable/workflow/FlowTodo.vue b/src/views/flowable/workflow/FlowTodo.vue index 510cacd..42b5430 100644 --- a/src/views/flowable/workflow/FlowTodo.vue +++ b/src/views/flowable/workflow/FlowTodo.vue @@ -105,7 +105,8 @@ <DispatchFileBachHandleStyle ref="modalFormDispatchFileBatch" @searchReset="searchReset" @ok="modalFormOk"></DispatchFileBachHandleStyle> <InspectionOrderHandle ref="modalFormInspectionOrder" :selectShenpiData="selectInspectionOrderData" @searchReset="searchReset"></InspectionOrderHandle> <InspectionOrderHandleBzz ref="modalFormInspectionOrderBzz" :selectShenpiData="selectInspectionOrderDataBzz" @searchReset="searchReset"></InspectionOrderHandleBzz> - <week-maintenance-approval-modal ref = "weekMaintenanceApprovalModal" :maintenanceId="dataId"></week-maintenance-approval-modal> + <week-maintenance-approval-modal ref = "weekMaintenanceApprovalModal" ></week-maintenance-approval-modal> + <repair-order-approval-modal ref="repairOrderApprovalModal" :selectShenpiData="selectRepairOrderData" ></repair-order-approval-modal> </a-card> </template> @@ -118,9 +119,10 @@ import AssignFileStreamHandle from '@views/flowable/workflow/assignFileStream/AssignFileStreamHandle.vue' import DispatchFileHandle from '@views/flowable/workflow/dispatchFile/DispatchFileHandle.vue' import DispatchFileBachHandleStyle from '@views/flowable/workflow/dispatchFile/DispatchFileBachHandleStyle#Drawer.vue' +import WeekMaintenanceApprovalModal from '@views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal' +import RepairOrderApprovalModal from '@views/flowable/workflow/repairOrder/RepairOrderApprovalModal' import InspectionOrderHandle from '@views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue' import InspectionOrderHandleBzz from '@views/flowable/workflow/InspectionOrder/InspectionOrderHandleBzz.vue' -import WeekMaintenanceApprovalModal from '@views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal'; import { getAction } from '@api/manage' export default { @@ -131,9 +133,10 @@ JDictSelectTag, DispatchFileHandle, DispatchFileBachHandleStyle, + WeekMaintenanceApprovalModal, + RepairOrderApprovalModal, InspectionOrderHandle, InspectionOrderHandleBzz, - WeekMaintenanceApprovalModal }, data () { return { @@ -211,6 +214,7 @@ selectInspectionOrderData:{}, selectInspectionOrderDataBzz:{}, selectBachData:{}, + selectRepairOrderData: {}, //涓氬姟淇℃伅ID dataId: undefined, } @@ -241,6 +245,9 @@ break case 'WEEK_MAINTENANCE': this.handleWeekMaintenance(item) + break + case 'eam_repair': + this.handleRepairOrder(item) break default: alert('娌℃壘鍒拌娴佺▼') @@ -308,10 +315,16 @@ } }, handleWeekMaintenance(item) { - this.dataId = item.dataId; - this.$refs.weekMaintenanceApprovalModal.add() - this.$refs.weekMaintenanceApprovalModal.title = item.preNode; - this.$refs.weekMaintenanceApprovalModal.disableSubmit = false; + if(item && item.dataId) { + this.$refs.weekMaintenanceApprovalModal.handleDetail(item.dataId) + this.$refs.weekMaintenanceApprovalModal.title = item.name; + this.$refs.weekMaintenanceApprovalModal.disableSubmit = false; + } + }, + handleRepairOrder(item) { + this.selectRepairOrderData = item + this.$refs.repairOrderApprovalModal.clearTableSource() + this.$refs.repairOrderApprovalModal.getAllApproveData(item) } } } diff --git a/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue b/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue new file mode 100644 index 0000000..01a921c --- /dev/null +++ b/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue @@ -0,0 +1,337 @@ +<template> + <a-modal + :title="title" + :width="width" + :visible="visible" + :footer="null" + @cancel="handCancel" + > + <a-card :bordered="false"> + <div> + <b>{{ selectShenpiData.title }}</b> + <br> + <br> + <a-tag color="blue"> + 澶勭悊浜� {{ selectShenpiData.assignee }} + </a-tag> + <a-tag color="blue"> + 鍒涘缓鏃堕棿 {{ selectShenpiData.createTime }} + </a-tag> + <br> + <br> + <button @click="fetchAndShowBmp" class="btn-custom">鎵撳紑娴佺▼鍥�</button> + <div v-if="imageSrc"> + <img :src="imageSrc" alt="Fetched Image" /> + </div> + <hr class="shallow-hr"> + </div> + <div> + <b>鎸囨淳璇︽儏</b> + <br> + <a-form :form='form'> + <a-spin :spinning="spinning"> + <a-tabs default-active-key='1' @change='callback'> + <a-tab-pane key='1' tab='鍩烘湰淇℃伅'> + <a-form-model ref='form' :model='tableRowRecord' :rules='validatorRules'> + <a-row> + <a-col :span='span'> + <a-form-model-item label='浜у搧鍚嶇О' :labelCol='labelCol' :wrapperCol='wrapperCol' prop='productName'> + <a-input :disabled='coldisabled' v-model='tableRowRecord.productName'></a-input> + </a-form-model-item> + </a-col> + <a-col :span='span'> + <a-form-model-item label='閮ㄤ欢鍚嶇О' :labelCol='labelCol' :wrapperCol='wrapperCol' prop='componentId'> + <a-input :disabled='coldisabled' v-model='tableRowRecord.componentName'></a-input> + </a-form-model-item> + </a-col> + </a-row> + </a-form-model> + </a-tab-pane> + <a-tab-pane key='2' tab='娴佺▼鑺傜偣'> + <a-card> + <a-timeline style="padding:0 1% 0 12%" > + <a-timeline-item color='white' v-for="(item,index1) in hitaskDataSource" :key="index1"> + <div class="bottom"> + <p>寮�濮嬫椂闂达細{{item.startTime}}</p> + <p>缁撴潫鏃堕棿锛歿{item.endTime}}</p> + <p>澶勭悊浜猴細{{item.assignee}}</p> + <p>鍔炵悊绫诲瀷锛歿{item.bllx_dictText}}</p> + <p v-if="item.name == '鎻愪氦鐢宠'">鎸囨淳鍘熷洜锛歿{item.cause}}</p> + <p v-else >澶勭悊鎰忚锛歿{item.cause}}</p> + <div class="left_qiu"><span>{{item.name}}</span></div> + </div> + </a-timeline-item> + </a-timeline> + </a-card> + </a-tab-pane> + </a-tabs> + </a-spin> + </a-form> + </div> + <div> + <hr class="shallow-hr"> + <br> + <b>瀹℃壒璇︽儏</b> + <br> + <a-form-model ref="form" :model="approveData" :rules="validatorRules" slot="detail"> + <a-row> + <a-col :span="24" class="btxx"> + <a-form-item label="瀹℃壒鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <j-dict-select-tag type='list' v-model='assignFileStream.status' dictCode='dnc_assign_stream_status' placeholder="璇烽�夋嫨瀹℃壒鐘舵��" /> + </a-form-item> + </a-col> + <a-col :span="24" class="btxx"> + <a-form-model-item label="瀹℃壒鎰忚" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <a-textarea v-model="assignFileStream.approveContent" rows="4" placeholder="璇疯緭鍏ュ鎵规剰瑙�"/> + </a-form-model-item > + </a-col> + </a-row> + <div class="table-operator" style="text-align: right;"> + <a-button @click="handleQueXiaoTask" type="primary" icon="close">鍙栨秷</a-button> + <a-button @click="submitForm">鎻� 浜�</a-button> + </div> + </a-form-model> + </div> + </a-card> + + + </a-modal> +</template> + +<script> + +import '@assets/less/TableExpand.less' +import { mixinDevice } from '@/utils/mixin' +import { getAction, deleteAction, postAction, downFile, httpAction } from '@api/manage' + +export default { + name: 'RepairOrderApprovalModal', + mixins: [mixinDevice], + props: { + selectShenpiData: { + type: Object, + required: true + } + }, + + data() { + return { + form: this.$form.createForm(this), + span: 12, + span1: 8, + coldisabled: true, + spinning: false, + tableRowRecord: {}, + assignFileStream:{}, + tableDataSource: [], + usageDataSource: [], + hitaskDataSource:[], + bomForm: {}, + approveContent:"", + imageSrc: null, + drawerVisible: true, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 } + }, + wrapperCol: { + xs: { span: 30 }, + sm: { span: 16 } + }, + validatorRules: { + }, + approveData: {}, + flowData: {}, + title: '', + width: 1000, + visible: false, + // 琛ㄥご + url: { + queryBomDataById: '/eam/eamRepairOrder/queryById', + diagramView: '/assign/flow/diagramView', + queryHisTaskList:'/assign/flow/queryHisTaskList', + approve:"/activit/assign/file/approve", + }, + dictOptions: {}, + superFieldList: [], + workflowSource: [] + } + }, + created() { + }, + computed: {}, + methods: { + callback() { + }, + handCancel() { + this.visible = false + }, + clearTableSource() { + this.tableDataSource = [] + this.usageDataSource = [] + }, + fetchAndShowBmp() { + console.log('flowData----->', this.flowData) + try { + let parm = { + processDefinitionId: this.flowData.processDefinitionId, + processInstanceId:this.flowData.processInstanceId, + TaskDefinitionKey:this.flowData.processDefinitionKey + } + downFile(this.url.diagramView,parm,'get').then((res=>{ + console.log('Pica------>',res) + const urlObject = window.URL.createObjectURL(new Blob([res])) + this.imageSrc = urlObject + })) + } catch (error) { + console.error('Error fetching image blob:', error) + alert('鏃犳硶鍔犺浇鍥剧墖锛岃绋嶅悗鍐嶈瘯銆�') + } + }, + handleQueXiaoTask(){ + this.visible = false + this.routeReload() + }, + submitForm () { + const that = this; + if (!that.assignFileStream.status==null || that.assignFileStream.status===undefined){ + this.$message.warning('璇烽�夋嫨瀹℃壒鐘舵�侊紒') + return false; + } + if (!that.assignFileStream.approveContent==null || that.assignFileStream.approveContent===undefined) { + this.$message.warning('璇疯緭鍏ュ鎵规剰瑙侊紒') + return false; + } + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.form.validateFields((err, values) => { + if (!err) { + that.confirmLoading = true; + let url=this.url.approve + let method = 'post'; + let flowTaskVo = {} + flowTaskVo.status=that.assignFileStream.status; + flowTaskVo.approveContent =that.assignFileStream.approveContent; + flowTaskVo.comment =that.assignFileStream.approveContent; + flowTaskVo.secretLevel = that.assignFileStream.secretLevel; + flowTaskVo.dataId = this.selectShenpiData.dataId + flowTaskVo.taskId = this.selectShenpiData.id + flowTaskVo.userId = this.selectShenpiData.assignee + flowTaskVo.instanceId = this.selectShenpiData.procInstId + flowTaskVo.targetKey = this.selectShenpiData.taskDefKey + flowTaskVo.values = this.selectShenpiData.variables + flowTaskVo.assignee = this.selectShenpiData.assignee + flowTaskVo.secretLevel = that.assignFileStream.secretLevel; + console.log("琛ㄥ崟鎻愪氦鏁版嵁",flowTaskVo) + httpAction(url,flowTaskVo,method).then((res)=>{ + if(res.success){ + that.$message.success(res.message); + that.$emit('ok'); + }else{ + that.$message.warning(res.message); + } + }).finally(() => { + that.confirmLoading = false; + }) + } + + }) + }, + getAllApproveData(item) { + console.log('selectShenpiData----->', this.selectShenpiData) + this.flowData = item + let param = { + 'id': item.dataId + } + let parmhis={ + 'procInstId': item.dataId + } + getAction(this.url.queryHisTaskList,parmhis).then(res=>{ + this.hitaskDataSource=res.result + getAction(this.url.queryBomDataById, param).then((res => { + if (res.success) { + this.tableRowRecord = res.result + console.log('this.tableRowRecord----->', this.tableRowRecord) + } + })) + }).finally( + this.visible = true, + console.log('this.approveData---->', this.approveData) + ) + } + } +} +</script> +<style scoped> +.shallow-hr { + border: 0; + height: 1px; /* 鍒嗙晫绾跨殑楂樺害 */ + background-color: rgba(0, 0, 0, 0.1); /* 浣跨敤 RGBA 棰滆壊锛屽苟璁剧疆杈冧綆鐨勯�忔槑搴� */ + margin: 20px 0; /* 鍒嗙晫绾夸笂涓嬬殑澶栬竟璺� */ +} +.btn-custom { + background-color: #4CAF50; /* 缁胯壊鑳屾櫙 */ + color: white; /* 鐧借壊鏂囧瓧 */ + border: none; /* 鏃犺竟妗� */ + padding: 5px 15px; /* 鍐呰竟璺� */ + text-align: center; /* 鏂囧瓧灞呬腑 */ + text-decoration: none; /* 鏃犱笅鍒掔嚎 */ + display: inline-block; /* 琛屽唴鍧楀厓绱� */ + font-size: 12px; /* 瀛椾綋澶у皬 */ + margin: 4px 2px; /* 澶栬竟璺� */ + cursor: pointer; /* 榧犳爣鎮仠鏃舵樉绀烘墜鍨� */ + border-radius: 4px; /* 鍦嗚杈规 */ +} + +.bold-large-label { + font-weight: bold; + font-size: 20px; /* 鎴栦綘闇�瑕佺殑浠讳綍澶у皬 */ +} +.left_qiu{ + position: absolute; + left: -74px; + top: 0; + width:54px; + border-radius: 50%; + height:54px; + font-size: 13px; + margin: auto; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: center; + background: #0099ff; + transform: translate(0, 0); +} +/deep/ .ant-timeline-item-tail{ + left: -29px !important; +} +.left_qiu span{ + width: 3em; + display: block; + color: #fff; + text-align: center; +} +.img{ + width: 75%; +} + +.wrap{ + clear: both; + width: 100%; + display: flex; + height: 50px; + border: 1px solid #ccc; + /* background-color: aqua; */ +} +.box{ + width:21%; + height:50px; + border-right: 1px solid #ccc; + line-height: 50px; + /* background: red; */ + text-align:center; + margin: auto; +} + +@import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal.vue b/src/views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal.vue index 220a1e6..aed2480 100644 --- a/src/views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal.vue +++ b/src/views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal.vue @@ -11,7 +11,7 @@ <a-spin :spinning="confirmLoading"> <a-form-model ref="form" :model="model" :rules="validatorRules"> - <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 璁惧鍩虹淇℃伅 + <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 淇濆吇鍩虹淇℃伅 </a-divider> <a-row :gutter="24"> <a-col :span="8"> @@ -23,7 +23,7 @@ <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧缂栫爜"> <maintenance-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="model.equipmentId" :maintenanceCategory="maintenanceCategory" - @autocompleteForm="autocompleteForm" :disabled="editable"></maintenance-equipment-select> + @autocompleteForm="autocompleteForm" disabled></maintenance-equipment-select> </a-form-model-item> </a-col> <a-col :span="8"> @@ -35,13 +35,13 @@ <a-row :gutter="24"> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="maintenanceDate" label="淇濆吇鏃ユ湡"> - <a-date-picker placeholder="璇烽�夋嫨璁″垝淇濆吇鏃ユ湡" v-model="model.maintenanceDate" format="YYYY-MM-DD" + <a-date-picker placeholder="璇烽�夋嫨璁″垝淇濆吇鏃ユ湡" v-model="model.maintenanceDate" format="YYYY-MM-DD" disabled style="width: 100%" /> </a-form-model-item> </a-col> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="operator" label="淇濆吇浜�"> - <j-search-select-tag v-model="model.operator" placeholder="璇烽�夋嫨淇濆吇浜�" + <j-search-select-tag v-model="model.operator" placeholder="璇烽�夋嫨淇濆吇浜�" disabled :dictOptions="maintenanceOperatorOptions" /> </a-form-model-item> </a-col> @@ -53,9 +53,12 @@ </a-row> <a-row :gutter="24"> <a-form-model-item :labelCol="labelColLong" :wrapperCol="wrapperColLong" prop="remark" label="澶囨敞"> - <a-textarea placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" /> + <a-textarea placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" disabled /> </a-form-model-item> </a-row> + + <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 淇濆吇椤逛俊鎭� + </a-divider> <a-row :gutter="24"> <j-vxe-table ref="editableDetailTable" @@ -72,6 +75,12 @@ :columns="detail.columns" style="margin-top: 8px;" /> </a-row> + <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 鐝粍闀跨‘璁や俊鎭� + </a-divider> + <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 鍒濋獙鏀朵俊鎭� + </a-divider> + <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 缁堥獙鏀朵俊鎭� + </a-divider> </a-form-model> </a-spin> </j-modal> @@ -84,15 +93,8 @@ import MaintenanceEquipmentSelect from '@views/eam/equipment/modules/MaintenanceEquipmentSelect' export default { - name: 'EamWeekMaintenanceOrderModal', + name: 'WeekMaintenanceApprovalModal', mixins: [JVxeTableModelMixin], - props: { - maintenanceId: { - type: String, - default: '', - required: true, - } - }, components: { MaintenanceEquipmentSelect }, @@ -100,6 +102,12 @@ return { title: '鎿嶄綔', visible: false, + //鐘舵�佹帶鍒� + //淇濆吇涓� 涓嶅彲缂栬緫 + underMaintenanceDisable : false, + confirmDisable : false, + initialAcceptanceDisable : false, + finalAcceptanceDisable : false, editable: false, model: {}, maintenanceCategory: 'WEEK_MAINTENANCE', @@ -124,10 +132,9 @@ validatorRules: { }, url: { - add: '/eam/weekMaintenanceOrder/add', - edit: '/eam/weekMaintenanceOrder/edit', - standardDetail: '/eam/eamMaintenanceStandardDetail/queryList', + queryById: '/eam/weekMaintenanceOrder/queryById', detail: '/eam/weekMaintenanceOrderDetail/queryList', + approval : '/eam/weekMaintenanceOrder/approval', userSelect: '/eam/user_select/list', }, detail: { @@ -147,46 +154,37 @@ { title: '搴忓彿', key: 'itemCode', - type: JVXETypes.inputNumber, + type: JVXETypes.normal, width: '10%', align: 'center', - validateRules: [ - { required: true, unique: true, message: '搴忓彿涓嶈兘閲嶅' } - ] }, { title: '淇濆吇椤�', key: 'itemName', - type: JVXETypes.textarea, + type: JVXETypes.normal, width: '20%', align: 'center', - validateRules: [ - { required: true, message: '淇濆吇椤逛笉鑳戒负绌猴紒' } - ] }, { title: '瀛愪繚鍏婚」', key: 'subItemName', - type: JVXETypes.textarea, + type: JVXETypes.normal, width: '25%', align: 'center' }, { title: '淇濆吇瑕佹眰', key: 'itemDemand', - type: JVXETypes.textarea, + type: JVXETypes.normal, width: '30%', align: 'center', - validateRules: [ - { required: true, message: '淇濆吇瑕佹眰涓嶈兘涓虹┖锛�' } - ] } ], toolbarConfig: { // prefix 鍓嶇紑锛泂uffix 鍚庣紑 slot: ['prefix', 'suffix'], // add 鏂板鎸夐挳锛況emove 鍒犻櫎鎸夐挳锛沜learSelection 娓呯┖閫夋嫨鎸夐挳 - btn: ['add', 'remove', 'clearSelection'] + btn: ['clearSelection'] } } } @@ -194,20 +192,14 @@ created() { }, methods: { - add() { - //鍒濆鍖栭粯璁ゅ�� - this.model = {} - this.visible = true - this.editable = false + async handleDetail(dataId) { + this.loading = true; + this.visible = true; this.detail.dataSource = [] - this.loadMaintenanceOperatorList(); - }, - edit(record) { - this.model = Object.assign({}, record) - this.visible = true - this.editable = true - this.detail.dataSource = [] - this.loadDetail(record.id) + let res = await getAction(this.url.queryById, {id: dataId}); + this.model = Object.assign({}, res.result); + await this.loadDetail(dataId); + this.loading = false; }, close() { this.$emit('close') @@ -225,20 +217,12 @@ this.$refs.form.validate(valid => { if (valid) { let tableData = that.$refs.editableDetailTable.getTableData() - let removeData = that.$refs.editableDetailTable.getDeleteData() that.model.tableDetailList = [...tableData] - that.model.removeDetailList = [...removeData] that.confirmLoading = true - let httpurl = '' - let method = '' - if (!this.model.id) { - httpurl += this.url.add - method = 'post' - } else { - httpurl += this.url.edit - method = 'put' - } + let httpurl = this.url.approval + let method = 'put' + httpAction(httpurl, this.model, method).then((res) => { if (res.success) { that.$message.success(res.message) @@ -259,16 +243,6 @@ this.close() }, autocompleteForm(selectObj) { - //鏍囧噯鍚嶇О锛屼繚鍏诲懆鏈熶笉鍒锋柊瑙e喅鍔炴硶 - //鍔炴硶涓� validatorRules equipmentId 杩樻槸鏈夐棶棰� - // const newObj = { - // standardName: selectObj.standardName, - // maintenancePeriod: selectObj.maintenancePeriod, - // standardId : selectObj.id, - // equipmentId: selectObj.equipmentId, - // }; - // this.model = Object.assign({}, newObj, this.model) - //鍔炴硶浜� this.$set(this.model, 'standardName', selectObj.standardName) this.$set(this.model, 'maintenancePeriod', selectObj.maintenancePeriod) this.$set(this.model, 'standardId', selectObj.id) @@ -277,22 +251,8 @@ if (!this.model.id) { this.loadStandardDetail(selectObj.id) } + debugger this.loadMaintenanceOperatorList(this.model.equipmentId); - }, - //鍔犺浇璇︽儏鏁版嵁 - loadStandardDetail(standardId) { - if (standardId) { - getAction(this.url.standardDetail, { standardId: standardId }).then(res => { - if (res.success) { - this.detail.dataSource = res.result.map(item => ({ - itemCode: item.itemCode, - itemName: item.itemName, - subItemName: item.subItemName, - itemDemand: item.itemDemand - })) - } - }) - } }, //鏍囧噯閫夋嫨鍙樺寲 loadDetail(orderId) { -- Gitblit v1.9.3