| | |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :md="8" |
| | | :sm="6" |
| | | > |
| | | <a-form-item label="ä¸å¿"> |
| | | <!-- <a-input |
| | | placeholder="ä¸å¿" |
| | | v-model="queryParam.useId" |
| | | /> --> |
| | | <j-dict-select-tag |
| | | placeholder='è¯·éæ©æå±ä¸å¿' |
| | | dictCode="mom_base_area,name,id,del_flag!='1' and type='1'" |
| | | v-model="queryParam.workCenterId" |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="3"> |
| | | <span |
| | | style="float: left;overflow: hidden;" |
| | |
| | | :loading="loading" |
| | | @change="handleTableChange" |
| | | > |
| | | <template slot="equipmentPhoto" slot-scope="text,record"> |
| | | <span v-if="!text" style="font-size: 12px;font-style: italic;">æ å¾ç</span> |
| | | <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> |
| | | <template |
| | | slot="equipmentPhoto" |
| | | slot-scope="text,record" |
| | | > |
| | | <span |
| | | v-if="!text" |
| | | style="font-size: 12px;font-style: italic;" |
| | | >æ å¾ç</span> |
| | | <img |
| | | v-else |
| | | :src="getImgView(text)" |
| | | :preview="record.id" |
| | | height="25px" |
| | | alt="" |
| | | style="max-width:80px;font-size: 12px;font-style: italic;" |
| | | /> |
| | | </template> |
| | | </a-table> |
| | | </a-card> |
| | |
| | | scrollTrigger: {}, |
| | | dataSource: [], |
| | | selectionRows: [], |
| | | selectionRowsNotClear: [], |
| | | title: 'éæ©è®¾å¤', |
| | | ipagination: { |
| | | current: 1, |
| | |
| | | type: 'checkbox', |
| | | onChange: (selectedRowKeys, selectedRows) => { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.onSelectChange(selectedRows) |
| | | this.selectionRows = selectedRows |
| | | // debugger |
| | | // this.selectionRowsNotClear.push(selectedRows) |
| | | // this.onSelectChange(selectedRows) |
| | | }, |
| | | onSelect: (record, selected, selectedRows) => { |
| | | if (selected) { |
| | | this.selectionRowsNotClear.push(record); |
| | | } |
| | | if (!selected) { |
| | | let delIndex = this.selectionRowsNotClear.findIndex(val => { |
| | | return val.id === record.id |
| | | }) |
| | | this.selectionRowsNotClear.splice(delIndex, 1); |
| | | } |
| | | }, |
| | | getCheckboxProps: record => ({ |
| | | props: { |
| | | disabled: record.distable |
| | | } |
| | | }), |
| | | selectedRowKeys: this.selectedRowKeys |
| | | selectedRowKeys: this.selectedRowKeys, |
| | | selectedRows: this.selectionRows |
| | | } |
| | | } |
| | | }, |
| | |
| | | }, |
| | | |
| | | showModals(oldSelectRows) { |
| | | this.selectionRows = [] |
| | | this.selectedRowKeys = [] |
| | | this.selectionRowsNotClear = [] |
| | | this.oldSelectRows = oldSelectRows |
| | | this.visible = true |
| | | this.loadData(1) |
| | |
| | | this.loadData() |
| | | }, |
| | | handleSubmit() { |
| | | this.$emit('selectionRows', this.selectionRows) |
| | | debugger |
| | | this.$emit('selectionRows', this.selectionRowsNotClear) |
| | | this.searchReset(0) |
| | | this.close() |
| | | }, |
| | |
| | | <a-spin :spinning="confirmLoading"> |
| | | <j-form-container :disabled="formDisabled"> |
| | | <!-- 主表ååºå --> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> |
| | | <a-form-model |
| | | ref="form" |
| | | :model="model" |
| | | :rules="validatorRules" |
| | | slot="detail" |
| | | > |
| | | <a-row :gutter="24"> |
| | | <a-col :span="12" > |
| | | <a-form-model-item label="åæ®å·" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="num"> |
| | | <a-input v-model="model.num" placeholder="ç³»ç»èªå¨çæ" :disabled="true" ></a-input> |
| | | <a-form-model-item |
| | | label="åæ®å·" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | prop="num" |
| | | > |
| | | <a-input |
| | | v-model="model.num" |
| | | placeholder="ç³»ç»èªå¨çæ" |
| | | :disabled="true" |
| | | ></a-input> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="12"> |
| | |
| | | </a-form-model> |
| | | </j-form-container> |
| | | <!-- å表ååºå --> |
| | | <a-tabs v-model="activeKey" @change="handleChangeTabs"> |
| | | <a-tab-pane tab="ABCè¯ä»·" :key="refKeys[0]" :forceRender="true"> |
| | | <a-tabs |
| | | v-model="activeKey" |
| | | @change="handleChangeTabs" |
| | | > |
| | | <a-tab-pane |
| | | tab="ABCè¯ä»·" |
| | | :key="refKeys[0]" |
| | | :forceRender="true" |
| | | > |
| | | <j-vxe-table |
| | | keep-source |
| | | :ref="refKeys[0]" |
| | |
| | | :toolbarConfig="toolbarConfig" |
| | | > |
| | | <template slot="toolbarPrefix"> |
| | | <a-button type="primary" @click="selectEquipmentList" :disabled="formDisabled">éæ©è®¾å¤ |
| | | <a-button |
| | | type="primary" |
| | | @click="selectEquipmentList" |
| | | :disabled="formDisabled" |
| | | >éæ©è®¾å¤ |
| | | </a-button> |
| | | </template> |
| | | </j-vxe-table> |
| | | </a-tab-pane> |
| | | </a-tabs> |
| | | <equipment-select-model ref="EquipmentSelectModal" @selectionRows="addSelectedEquipments"></equipment-select-model> |
| | | <equipment-select-model |
| | | ref="EquipmentSelectModal" |
| | | @selectionRows="addSelectedEquipments" |
| | | ></equipment-select-model> |
| | | </a-spin> |
| | | </template> |
| | | |
| | |
| | | }, |
| | | addSelectedEquipments(data) { |
| | | let tableData = this.$refs.aBCAssessment.getTableData() |
| | | debugger |
| | | // const seletedEquipmentIds = tableData. |
| | | var tableStr = JSON.stringify(tableData) |
| | | const addRows = [] |
| | |
| | | <template> |
| | | <j-modal |
| | | :title="title" |
| | | :width="1200" |
| | | :width="1500" |
| | | :visible="visible" |
| | | :maskClosable="false" |
| | | switchFullscreen |
| | | :fullscreen="true" |
| | | :fullscreen="false" |
| | | @ok="handleOk" |
| | | :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" |
| | | @cancel="handleCancel"> |
| | | <stream-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"/> |
| | | @cancel="handleCancel" |
| | | > |
| | | <stream-form |
| | | ref="realForm" |
| | | @ok="submitCallback" |
| | | :disabled="disableSubmit" |
| | | /> |
| | | </j-modal> |
| | | </template> |
| | | |
| | |
| | | allow-clear |
| | | placeholder="è¯·éæ©å·¥åº" |
| | | :triggerChange="true" |
| | | dictCode="mom_base_area,name,id,del_flag!='1'" |
| | | dictCode="mom_base_area,name,id,del_flag!='1' and type = '2'" |
| | | v-model="queryParam.factoryModelId" |
| | | /> |
| | | </a-form-item> |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | delete: "/eam/equipment/delete", |
| | | deleteBatch: "/eam/equipment/deleteBatch", |
| | | active: "/eam/equipment/active", |
| | |
| | | <template> |
| | | <a-card |
| | | title="è®¾å¤æ
éåå " |
| | | title="è®¾å¤æ
éç±»åç»è®¡" |
| | | :bordered="true" |
| | | > |
| | | <!-- æ¥è¯¢åºå --> |
| | |
| | | placeholder="请è¾å
¥ç»ä¸ç¼ç " |
| | | v-model="queryParam.equipmentNum" |
| | | ></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="使ç¨é¨é¨"> |
| | | <j-dict-select-tag |
| | | allow-clear |
| | | placeholder='è¯·éæ©ä½¿ç¨é¨é¨' |
| | | :triggerChange='true' |
| | | dictCode="sys_depart,depart_name,id,del_flag!='1'" |
| | | v-model='queryParam.useId' |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | |
| | | import moment from 'moment' |
| | | |
| | | export default { |
| | | name: 'TeamList', |
| | | name: 'FaultCauseChart', |
| | | mixins: [JeecgListMixin, mixinDevice], |
| | | components: { |
| | | Pie, |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <a-card |
| | | title="è®¾å¤æ
鿬¡æ°ç»è®¡" |
| | | :bordered="true" |
| | | > |
| | | <!-- æ¥è¯¢åºå --> |
| | | <div class="table-page-search-wrapper"> |
| | | <a-form |
| | | layout="inline" |
| | | @keyup.enter.native="searchQuery" |
| | | > |
| | | <a-row :gutter="24"> |
| | | <a-col |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="ç»ä¸ç¼ç "> |
| | | <a-input |
| | | placeholder="请è¾å
¥ç»ä¸ç¼ç " |
| | | v-model="queryParam.equipmentNum" |
| | | ></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="使ç¨é¨é¨"> |
| | | <j-dict-select-tag |
| | | allow-clear |
| | | placeholder='è¯·éæ©ä½¿ç¨é¨é¨' |
| | | :triggerChange='true' |
| | | dictCode="sys_depart,depart_name,id,del_flag!='1'" |
| | | v-model='queryParam.useId' |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="ç»´ä¿®æ¶é´"> |
| | | <a-range-picker |
| | | style="width: 100%;" |
| | | format="YYYY-MM-DD HH:mm:ss" |
| | | v-model="faultTime" |
| | | @change="timeChange" |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <span |
| | | style="float: left;overflow: hidden;" |
| | | class="table-page-search-submitButtons" |
| | | > |
| | | <a-button |
| | | type="primary" |
| | | @click="searchQuery" |
| | | icon="search" |
| | | >æ¥è¯¢</a-button> |
| | | <a-button |
| | | type="primary" |
| | | @click="searchReset" |
| | | icon="reload" |
| | | style="margin-left: 8px" |
| | | >éç½®</a-button> |
| | | </span> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- æ¥è¯¢åºå-END --> |
| | | |
| | | <a-row> |
| | | <a-col :span="24"> |
| | | <a-card |
| | | :loading="loading" |
| | | :bordered="false" |
| | | title="æè¿ä¸æè®¾å¤æ
鿬¡æ°ç»è®¡" |
| | | :style="{ marginTop: '24px' }" |
| | | > |
| | | <!--<a-row> |
| | | <a-col :span="6"> |
| | | <head-info title="仿¥IP" :content="loginfo.todayIp"></head-info> |
| | | </a-col> |
| | | <a-col :span="2"> |
| | | <a-spin class='circle-cust'> |
| | | <a-icon slot="indicator" type="environment" style="font-size: 24px" /> |
| | | </a-spin> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <head-info title="仿¥è®¿é®" :content="loginfo.todayVisitCount"></head-info> |
| | | </a-col> |
| | | <a-col :span="2"> |
| | | <a-spin class='circle-cust'> |
| | | <a-icon slot="indicator" type="team" style="font-size: 24px" /> |
| | | </a-spin> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <head-info title="æ»è®¿é®é" :content="loginfo.totalVisitCount"></head-info> |
| | | </a-col> |
| | | <a-col :span="2"> |
| | | <a-spin class='circle-cust'> |
| | | <a-icon slot="indicator" type="rise" style="font-size: 24px" /> |
| | | </a-spin> |
| | | </a-col> |
| | | </a-row> --> |
| | | <line-chart-multid |
| | | :dataSource="visitInfo" |
| | | :fields="visitFields" |
| | | ></line-chart-multid> |
| | | </a-card> |
| | | </a-col> |
| | | </a-row> |
| | | </a-card> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import '@/assets/less/TableExpand.less' |
| | | import { mixinDevice } from '@/utils/mixin' |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { getAction, deleteAction, postAction } from '@/api/manage' |
| | | import LineChartMultid from '@/components/chart/LineChartMultid' |
| | | import moment from 'moment' |
| | | |
| | | export default { |
| | | name: 'FaultCauseChartEquipment', |
| | | mixins: [JeecgListMixin, mixinDevice], |
| | | components: { |
| | | LineChartMultid |
| | | }, |
| | | data() { |
| | | return { |
| | | description: 'FaultCauseChartEquipment', |
| | | visitFields: ['è®¾å¤æ
鿬¡æ°'], |
| | | // visitInfo: [{ 'è®¾å¤æ
鿬¡æ°': '5', type: '07-28' }, { 'è®¾å¤æ
鿬¡æ°': '6', type: '07-29' }], |
| | | visitInfo: [], |
| | | url: { |
| | | list: "/eam/repairOrder/getEquipmentFaultCause", |
| | | }, |
| | | // 表头 |
| | | faultTime: [], |
| | | dictOptions: {}, |
| | | superFieldList: [], |
| | | queryParam: {} |
| | | } |
| | | }, |
| | | // created() { |
| | | // this.loadData2(1); |
| | | // }, |
| | | methods: { |
| | | |
| | | timeChange() { |
| | | this.queryParam.faultStartTime = moment(this.faultTime[0]).format("YYYY-MM-DD HH:mm:ss") |
| | | this.queryParam.faultEndTime = moment(this.faultTime[1]).format("YYYY-MM-DD HH:mm:ss") |
| | | }, |
| | | |
| | | searchQuery() { |
| | | this.loadData(1); |
| | | }, |
| | | |
| | | searchReset() { |
| | | this.faultTime = [] |
| | | this.queryParam = {} |
| | | this.loadData(1); |
| | | }, |
| | | |
| | | loadData(arg) { |
| | | this.loading = true; |
| | | getAction(this.url.list, this.queryParam).then((res) => { |
| | | if (res.success) { |
| | | this.visitInfo = res.result.records || res.result; |
| | | } else { |
| | | this.$message.warning(res.message) |
| | | } |
| | | }).finally(() => { |
| | | this.loading = false |
| | | }) |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | @import '~@assets/less/common.less'; |
| | | </style> |
| | |
| | | <template> |
| | | <a-card |
| | | :bordered="false" |
| | | title="MTBF" |
| | | title="æ
éç±»åç»è®¡" |
| | | > |
| | | <!-- æ¥è¯¢åºå --> |
| | | <div class="table-page-search-wrapper"> |
| | |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="使ç¨é¨é¨"> |
| | | <j-dict-select-tag |
| | | allow-clear |
| | | placeholder='è¯·éæ©ä½¿ç¨é¨é¨' |
| | | :triggerChange='true' |
| | | dictCode="sys_depart,depart_name,id,del_flag!='1'" |
| | | v-model='queryParam.useId' |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :md="6" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="ç»´ä¿®æ¶é´"> |
| | | <a-range-picker |
| | | style="width: 100%;" |
| | |
| | | > |
| | | <maintenance-standard-work-instruction :maintenanceStandardId='maintenanceStandardId' /> |
| | | </div> |
| | | </a-tab-pane> |
| | | </a-tab-pane>--> |
| | | <a-tab-pane |
| | | tab='å®é
ç¨æ' |
| | | key="5" |
| | |
| | | :equipmentId="this.model.equipmentId" |
| | | ></actual-material-edit-table> |
| | | </div> |
| | | </a-tab-pane>--> |
| | | </a-tab-pane> |
| | | <a-tab-pane |
| | | tab='å®é
å·¥æ¶' |
| | | key="6" |
| | |
| | | mounted() { |
| | | this.$bus.$on('selectionRows', (data) => { |
| | | for (let i = 0; i < data.length; i++) { |
| | | debugger |
| | | this.dataSource.push({ |
| | | id: data[i][0].id, |
| | | inspectionProjectId: data[i][0].id, |
| | | name: data[i][0].name, |
| | | detectionStandard: data[i][0].detectionStandard, |
| | | acceptabilityLimit: data[i][0].acceptabilityLimit, |
| | | inspectionMethodName: data[i][0].inspectionMethod_dictText, |
| | | inspectionTool: data[i][0].inspectionTool, |
| | | id: data[i].id, |
| | | inspectionProjectId: data[i].id, |
| | | name: data[i].name, |
| | | detectionStandard: data[i].detectionStandard, |
| | | acceptabilityLimit: data[i].acceptabilityLimit, |
| | | inspectionMethodName: data[i].inspectionMethod_dictText, |
| | | inspectionTool: data[i].inspectionTool, |
| | | inspectionCycles: this.inspectionCycles, |
| | | }) |
| | | } |
| | |
| | | |
| | | ], |
| | | selectedRowKeys: [], |
| | | selectedRows: [], |
| | | selectionRowsNotClear: [], |
| | | oldSelectRows: [], |
| | | scrollTrigger: {}, |
| | |
| | | type: 'checkbox', |
| | | onChange: (selectedRowKeys, selectedRows) => { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectionRows = selectedRows |
| | | this.selectionRowsNotClear.push(selectedRows) |
| | | }, |
| | | onSelect: (record, selected, selectedRows) => { |
| | | if (selected) { |
| | | this.selectionRowsNotClear.push(record); |
| | | } |
| | | if (!selected) { |
| | | let delIndex = this.selectionRowsNotClear.findIndex(val => { |
| | | return val.id === record.id |
| | | }) |
| | | this.selectionRowsNotClear.splice(delIndex, 1); |
| | | } |
| | | }, |
| | | getCheckboxProps: record => ({ |
| | | props: { |
| | |
| | | } |
| | | }), |
| | | selectedRowKeys: this.selectedRowKeys, |
| | | selectedRows: this.selectionRows |
| | | } |
| | | } |
| | | }, |
| | | |
| | | methods: { |
| | | |
| | | async loadData(arg) { |
| | | if (arg === 1) { |
| | | this.ipagination.current = 1 |
| | |
| | | if (num !== 0) { |
| | | that.loadData(1) |
| | | } |
| | | that.selectborrowIds = [] |
| | | }, |
| | | close() { |
| | | this.searchReset(0) |
| | |
| | | this.searchReset(0) |
| | | this.close() |
| | | }, |
| | | onSelectChange(selectionRows) { |
| | | this.selectionRows = selectionRows |
| | | onSelectionChange(selectedRowKeys, selectedRows) { |
| | | this.selectedRowKeys = selectedRowKeys; |
| | | this.selectedRows = selectedRows; |
| | | }, |
| | | |
| | | searchQuery() { |
| | | this.loadData(1) |
| | | } |
| | |
| | | @change="handleTableChange" |
| | | :loading="loading" |
| | | > |
| | | |
| | | <template |
| | | v-for="col in columns" |
| | | :slot="col.dataIndex" |
| | | slot-scope='text, record, index' |
| | | > |
| | | <div :key="col.dataIndex"> |
| | | <a-input-search |
| | | v-if="col.dataIndex == 'materialName'" |
| | | enter-button |
| | | @search="onSearchMaterial(index)" |
| | | <a-input |
| | | :value="text" |
| | | :read-only="true" |
| | | v-if="col.dataIndex == 'sparePartId'" |
| | | auto-size |
| | | placeholder="请è¾å
¥ç©æåç§°" |
| | | @change="(e) => handleChange(e, record.key, col, index)" |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | /> |
| | | <a-input |
| | | :value="text" |
| | | v-if="col.dataIndex == 'smoamUda2'" |
| | | auto-size |
| | | placeholder="请è¾å
¥åä½" |
| | | @change="(e)=>handleChange(e, record.key, col, index)" |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | /> |
| | | <j-dict-select-tag |
| | | :value='text' |
| | | v-if="col.dataIndex == 'smoamUda1'" |
| | | dictCode="material_type" |
| | | style="width: 100%;" |
| | | @change="(e)=>handleChange(e, record.key, col, index)" |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | /> |
| | | <a-input-number |
| | | :value="text" |
| | |
| | | :min="1" |
| | | :max="99999" |
| | | @change="(e)=>handleChange(e, record.key, col, index)" |
| | | :disabled="record.isLock == 'yes'||dailyMaintenanceOrderStatus!='4'" |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | /> |
| | | |
| | | </div> |
| | | </template> |
| | | <span |
| | | slot='action' |
| | | slot-scope='text, record' |
| | | > |
| | | <a-popconfirm |
| | | title="确认éæå?" |
| | | @confirm="() => handleLock(record)" |
| | | dailyMaintenanceOrder:actualMaterialLock |
| | | slot-scope='text, record,index' |
| | | > |
| | | <a |
| | | v-has="'dailyMaintenanceOrder:actualMaterialLock'" |
| | | v-if="record.isLock=='no'&&dailyMaintenanceOrderStatus=='4'" |
| | | >éæ</a> |
| | | </a-popconfirm> |
| | | <a-divider |
| | | v-if="record.isLock=='no'" |
| | | type="vertical" |
| | | /> |
| | | <a-popconfirm |
| | | title="è§£éåä¼èªå¨éæ¾åºåï¼ç¡®è®¤è§£éå?" |
| | | @confirm="() => handleUnLock(record)" |
| | | > |
| | | <a |
| | | v-has="'dailyMaintenanceOrder:actualMaterialLock'" |
| | | v-if="record.isLock=='yes'&&dailyMaintenanceOrderStatus=='4'" |
| | | >è§£é</a> |
| | | </a-popconfirm> |
| | | <a-popconfirm |
| | | title="ç¡®å®å é¤å?" |
| | | @confirm="() => handleDelete(record.id)" |
| | | > |
| | | <a |
| | | v-has="'dailyMaintenanceOrder:actualMaterialDelete'" |
| | | v-if="record.isLock=='no'&&dailyMaintenanceOrderStatus=='4'" |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | @click='handleDeleteFake(index)' |
| | | >å é¤</a> |
| | | </a-popconfirm> |
| | | <!-- :disabled="mainId.status=='4'" --> |
| | | </span> |
| | | </a-table> |
| | | <a-button |
| | |
| | | type="primary" |
| | | :style="{marginRight: '8px'}" |
| | | :disabled="specialyMaintenanceOrderStatus!='4'" |
| | | >æå</a-button> |
| | | >æå</a-button> --> |
| | | <a-button |
| | | @click="handleOk(0)" |
| | | type="primary" |
| | | :disabled="specialyMaintenanceOrderStatus!='4'" |
| | | >ä¿å</a-button> --> |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | >ä¿å</a-button> |
| | | </a-row> |
| | | <!-- :disabled="false" --> |
| | | </div> |
| | | <actual-material-select ref="actualMaterialSelect"> |
| | | <!-- @sendMaterialRecord="sendMaterialRecord" --> |
| | | </actual-material-select> |
| | | <j-select-spare-part-modal ref='JSelectSparePartModal' @selection2Rows="getSelectRows"></j-select-spare-part-modal> |
| | | <j-select-spare-part-modal |
| | | ref='JSelectSparePartModal' |
| | | @selection2Rows="getSelectRows" |
| | | ></j-select-spare-part-modal> |
| | | </a-card> |
| | | </template> |
| | | <script> |
| | |
| | | dataSource: [], |
| | | columns: [ |
| | | { |
| | | title: '颿åºåºå', |
| | | dataIndex: 'num', |
| | | title: '#', |
| | | dataIndex: '', |
| | | key: 'rowIndex', |
| | | width: 60, |
| | | align: "center", |
| | | width: 150, |
| | | customRender: function (t, r, index) { |
| | | return parseInt(index) + 1; |
| | | } |
| | | }, |
| | | { |
| | | title: 'å¤ä»¶ç¼ç ', |
| | | dataIndex: 'sparePartNum', |
| | | title: 'ç©æåç§°', |
| | | dataIndex: 'sparePartId', |
| | | scopedSlots: { customRender: 'sparePartId' }, |
| | | align: "center", |
| | | |
| | | // className: 'red', |
| | | // width: 250, |
| | | }, |
| | | { |
| | | title: 'å¤ä»¶åç§°', |
| | | dataIndex: 'sparePartName', |
| | | title: 'ç©æç§ç±»', |
| | | dataIndex: 'smoamUda1', |
| | | scopedSlots: { customRender: 'smoamUda1' }, |
| | | align: "center", |
| | | |
| | | }, |
| | | { |
| | | title: 'è§æ ¼', |
| | | dataIndex: 'specification', |
| | | align: "center", |
| | | }, |
| | | { |
| | | title: 'åå·', |
| | | dataIndex: 'model', |
| | | align: "center", |
| | | }, |
| | | { |
| | | title: 'å¶é å', |
| | | dataIndex: 'constructorName', |
| | | align: "center", |
| | | }, |
| | | { |
| | | title: '主åä½', |
| | | dataIndex: 'mainUnitName', |
| | | align: "center", |
| | | |
| | | }, |
| | | { |
| | | title: '主æ°é', |
| | | align: 'center', |
| | | dataIndex: 'mainQuantity' |
| | | }, |
| | | { |
| | | title: 'å¯ç¨æ°é', |
| | | align: 'center', |
| | | dataIndex: 'availableQuantity' |
| | | // width: 250, |
| | | }, |
| | | { |
| | | title: 'ä½¿ç¨æ°é', |
| | | dataIndex: 'quantity', |
| | | align: "center", |
| | | scopedSlots: { customRender: 'quantity' }, |
| | | className: 'red', |
| | | |
| | | // className: 'red', |
| | | }, |
| | | { |
| | | title: 'åä½', |
| | | dataIndex: 'smoamUda2', |
| | | |
| | | align: "center", |
| | | scopedSlots: { customRender: 'smoamUda2' }, |
| | | // className: 'red', |
| | | }, |
| | | |
| | | { |
| | | title: 'æä½', |
| | | dataIndex: 'action', |
| | | align: 'center', |
| | | width: 250, |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | ], |
| | |
| | | // } |
| | | // } |
| | | }, |
| | | // created() { |
| | | // this.queryParam['maintenanceOrderId'] = this.dailyMaintenanceOrderId; |
| | | // this.queryParam['equipmentId'] = this.equipmentId |
| | | // this.loadData(1); |
| | | // }, |
| | | created() { |
| | | this.queryParam['maintenanceOrderId'] = this.dailyMaintenanceOrderId; |
| | | this.queryParam['equipmentId'] = this.equipmentId |
| | | this.loadData(1); |
| | | }, |
| | | methods: { |
| | | // addMaterial() { |
| | | // let ids = []; |
| | | // for (let i = 0; i < this.dataSource.length; i++) { |
| | | // ids.push(this.dataSource[i].outboundOrderDetailId); |
| | | // } |
| | | // this.$refs.JSelectSparePartModal.showModals(ids); |
| | | // this.$refs.JSelectSparePartModal.title = 'éæ©å¤ä»¶ä¿¡æ¯' |
| | | // this.$refs.JSelectSparePartModal.disableSubmit = false |
| | | // }, |
| | | addMaterial() { |
| | | let ids = []; |
| | | for (let i = 0; i < this.dataSource.length; i++) { |
| | | ids.push(this.dataSource[i].outboundOrderDetailId); |
| | | } |
| | | this.$refs.JSelectSparePartModal.showModals(ids); |
| | | this.$refs.JSelectSparePartModal.title = 'éæ©å¤ä»¶ä¿¡æ¯' |
| | | this.$refs.JSelectSparePartModal.disableSubmit = false |
| | | this.dataSource.push({ sparePartId: '', smoamUda1: '', smoamUda2: '', quantity: '', repairOrderId: this.equipmentId }) |
| | | }, |
| | | handleCancel() { |
| | | this.$bus.$emit('closeDrawer'); |
| | |
| | | if (saveStatus == 0) { |
| | | let materialDataSource = that.dataSource; |
| | | let indexIdList = []; |
| | | for (let i = 0; i < materialDataSource.length; i++) { |
| | | if (materialDataSource[i].materialId == undefined || materialDataSource[i].materialId == null || materialDataSource[i].materialId == '') { |
| | | that.$message.warning("è¯·éæ©ç¬¬" + (i + 1) + "è¡ç©æï¼"); |
| | | return false; |
| | | } |
| | | if (materialDataSource[i].quantity == undefined || materialDataSource[i].quantity == null || materialDataSource[i].quantity == '') { |
| | | that.$message.warning("请填å第" + (i + 1) + "è¡ç¨ææ°ï¼"); |
| | | return false; |
| | | } |
| | | } |
| | | // for (let i = 0; i < materialDataSource.length; i++) { |
| | | // if (materialDataSource[i].materialId == undefined || materialDataSource[i].materialId == null || materialDataSource[i].materialId == '') { |
| | | // that.$message.warning("è¯·éæ©ç¬¬" + (i + 1) + "è¡ç©æï¼"); |
| | | // return false; |
| | | // } |
| | | // if (materialDataSource[i].quantity == undefined || materialDataSource[i].quantity == null || materialDataSource[i].quantity == '') { |
| | | // that.$message.warning("请填å第" + (i + 1) + "è¡ç¨ææ°ï¼"); |
| | | // return false; |
| | | // } |
| | | // } |
| | | } |
| | | if (that.dataSource.length === 0) { |
| | | that.$message.warning("请添å ç©æï¼") |
| | |
| | | console.log(column) |
| | | const temp = [...this.dataSource] |
| | | const target = temp[index] |
| | | let availableQuantity = target['availableQuantity'] |
| | | if (target) { |
| | | if (value != undefined && value != null && value != '' && availableQuantity < value) { |
| | | this.$message.error('ä½¿ç¨æ°éä¸è½å¤§äºå¯ç¨æ°é!') |
| | | } else { |
| | | // let availableQuantity = target['availableQuantity'] |
| | | // if (target) { |
| | | // if (value != undefined && value != null && value != '' && availableQuantity < value) { |
| | | // this.$message.error('ä½¿ç¨æ°éä¸è½å¤§äºå¯ç¨æ°é!') |
| | | // } else { |
| | | // } |
| | | // target[column.dataIndex] = value |
| | | // this.dataSource = temp |
| | | // } |
| | | if ('sparePartId' == column.dataIndex) { |
| | | target['sparePartId'] = value.target.value |
| | | } |
| | | target[column.dataIndex] = value |
| | | this.dataSource = temp |
| | | if ('smoamUda2' == column.dataIndex) { |
| | | target['smoamUda2'] = value.target.value |
| | | } |
| | | if ('quantity' == column.dataIndex) { |
| | | target['quantity'] = value |
| | | } |
| | | if ('smoamUda1' == column.dataIndex) { |
| | | target['smoamUda1'] = value |
| | | } |
| | | }, |
| | | onSearchMaterial(index) { |
| | |
| | | > |
| | | <a |
| | | v-has="'dailyMaintenanceOrder:actualWorkHoursDelete'" |
| | | :disabled="dailyMaintenanceOrderStatus!='4'" |
| | | @click="handleDeleteFake(index)" |
| | | >å é¤</a> |
| | | </span> |
| | |
| | | for (let i = 0; i < data.length; i++) { |
| | | let id = this.getUuiD(15); |
| | | this.dataSource.push({ |
| | | id: id, |
| | | maintenanceProjectId: data[i][0].id, |
| | | name: data[i][0].name, |
| | | standard: data[i][0].standard, |
| | | maintenanceMethodName: data[i][0].maintenanceMethod_dictText, |
| | | maintenanceTool: data[i][0].maintenanceTool, |
| | | location: data[i][0].location, |
| | | maintenanceSpecialtyName: data[i][0].maintenanceSpecialtyId_dictText, |
| | | maintenanceRequire: data[i][0].maintenanceRequire, |
| | | workingHourQuota: data[i][0].workingHourQuota, |
| | | id: data[i].id, |
| | | maintenanceProjectId: data[i].id, |
| | | name: data[i].name, |
| | | standard: data[i].standard, |
| | | maintenanceMethodName: data[i].maintenanceMethod_dictText, |
| | | maintenanceTool: data[i].maintenanceTool, |
| | | location: data[i].location, |
| | | maintenanceSpecialtyName: data[i].maintenanceSpecialtyId_dictText, |
| | | maintenanceRequire: data[i].maintenanceRequire, |
| | | workingHourQuota: data[i].workingHourQuota, |
| | | // upload: this.upload, |
| | | // maintenanceCycles: this.maintenanceCycles, |
| | | }) |
| | |
| | | type: 'checkbox', |
| | | onChange: (selectedRowKeys, selectedRows) => { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectionRowsNotClear.push(selectedRows) |
| | | // this.selectionRowsNotClear.push(selectedRows) |
| | | this.onSelectChange(selectedRows) |
| | | }, |
| | | onSelect: (record, selected, selectedRows) => { |
| | | if (selected) { |
| | | this.selectionRowsNotClear.push(record); |
| | | } |
| | | if (!selected) { |
| | | let delIndex = this.selectionRowsNotClear.findIndex(val => { |
| | | return val.id === record.id |
| | | }) |
| | | this.selectionRowsNotClear.splice(delIndex, 1); |
| | | } |
| | | }, |
| | | getCheckboxProps: record => ({ |
| | | props: { |
| | | disabled: record.distable |
| | |
| | | let id = this.getUuiD(15); |
| | | this.dataSource.push({ |
| | | id: id, |
| | | maintenanceProjectId: data[i][0].id, |
| | | name: data[i][0].name, |
| | | standard: data[i][0].standard, |
| | | maintenanceMethodName: data[i][0].maintenanceMethod_dictText, |
| | | maintenanceTool: data[i][0].maintenanceTool, |
| | | location: data[i][0].location, |
| | | maintenanceSpecialtyName: data[i][0].maintenanceSpecialtyId_dictText, |
| | | maintenanceRequire: data[i][0].maintenanceRequire, |
| | | workingHourQuota: data[i][0].workingHourQuota, |
| | | maintenanceProjectId: data[i].id, |
| | | name: data[i].name, |
| | | standard: data[i].standard, |
| | | maintenanceMethodName: data[i].maintenanceMethod_dictText, |
| | | maintenanceTool: data[i].maintenanceTool, |
| | | location: data[i].location, |
| | | maintenanceSpecialtyName: data[i].maintenanceSpecialtyId_dictText, |
| | | maintenanceRequire: data[i].maintenanceRequire, |
| | | workingHourQuota: data[i].workingHourQuota, |
| | | // upload: this.upload, |
| | | // maintenanceCycles: this.maintenanceCycles, |
| | | }) |
| | |
| | | type: 'checkbox', |
| | | onChange: (selectedRowKeys, selectedRows) => { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectionRowsNotClear.push(selectedRows) |
| | | // this.selectionRowsNotClear.push(selectedRows) |
| | | this.onSelectChange(selectedRows) |
| | | }, |
| | | onSelect: (record, selected, selectedRows) => { |
| | | if (selected) { |
| | | this.selectionRowsNotClear.push(record); |
| | | } |
| | | if (!selected) { |
| | | let delIndex = this.selectionRowsNotClear.findIndex(val => { |
| | | return val.id === record.id |
| | | }) |
| | | this.selectionRowsNotClear.splice(delIndex, 1); |
| | | } |
| | | }, |
| | | getCheckboxProps: record => ({ |
| | | props: { |
| | | disabled: record.distable |
| | |
| | | }, |
| | | ], |
| | | url: { |
| | | list: "/eam/equipment/getEquipmentList", |
| | | list: "/eam/equipment/getEquipmentTZList", |
| | | }, |
| | | } |
| | | }, |
| | |
| | | list() { |
| | | this.selectedRowKeys = []; |
| | | this.selectedRowRecord = []; |
| | | this.queryParam.equipmentStatus = "1" |
| | | // this.queryParam.equipmentStatus = "1" |
| | | this.visible = true; |
| | | this.loadData(1); |
| | | }, |
| | |
| | | this.ipagination.current = 1 |
| | | } |
| | | this.onClearSelected() |
| | | this.queryParam.equipmentStatus = '1'; |
| | | // this.queryParam.equipmentStatus = '1'; |
| | | var params = this.getQueryParams()//æ¥è¯¢æ¡ä»¶ |
| | | this.loading = true |
| | | getAction(this.url.list, params).then((res) => { |
| | |
| | | { |
| | | title: 'ç¨æ·', |
| | | key: 'userId', |
| | | type: JVXETypes.selectSearch, |
| | | type: JVXETypes.select, |
| | | dictCode: 'sys_user,realname,id ', |
| | | width: '200px', |
| | | placeholder: '请è¾å
¥${title}', |
| | | defaultValue: '', |
| | | validateRules: [{ required: true, message: '${title}ä¸è½ä¸ºç©º' }] |
| | | }, |
| | | // type: JVXETypes.selectSearch, |
| | | // { |
| | | // title: '设å¤ç»ä¸ç¼ç ', |
| | | // key: 'equipmentIds', |
| | |
| | | </a-col> |
| | | <a-col :span="12"> |
| | | <a-form-item |
| | | label="ç»´ä¿®æ ååç§°" |
| | | label="ç»´ä¿®æ åå
容" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | > |
| | | <a-input |
| | | allow-clear |
| | | :disabled="disableSubmit" |
| | | :placeholder="disableSubmit?'':'请è¾å
¥ç»´ä¿®æ ååç§°'" |
| | | :placeholder="disableSubmit?'':'请è¾å
¥ç»´ä¿®æ åå
容'" |
| | | v-decorator="['name', validatorRules.name ]" |
| | | /> |
| | | </a-form-item> |
| | |
| | | :md="8" |
| | | :sm="8" |
| | | > |
| | | <a-form-item label="ç»´ä¿®æ ååç§°"> |
| | | <a-form-item label="ç»´ä¿®æ åå
容"> |
| | | <j-input |
| | | placeholder="请è¾å
¥ç»´ä¿®æ ååç§°" |
| | | placeholder="请è¾å
¥ç»´ä¿®æ åå
容" |
| | | v-model="queryParam.name" |
| | | ></j-input> |
| | | </a-form-item> |
| | |
| | | // sorter: true, |
| | | }, |
| | | { |
| | | title: 'ç»´ä¿®æ ååç§°', |
| | | title: 'ç»´ä¿®æ åå
容', |
| | | align: 'center', |
| | | dataIndex: 'name', |
| | | scopedSlots: { |
| | |
| | | dataIndex: 'userId', |
| | | align: 'center', |
| | | scopedSlots: { customRender: 'userId' }, |
| | | className: 'red', |
| | | // className: 'red', |
| | | width: 200 |
| | | }, |
| | | { |
| | |
| | | dataIndex: 'principalContractor', |
| | | align: 'center', |
| | | scopedSlots: { customRender: 'principalContractor' }, |
| | | className: 'red', |
| | | // className: 'red', |
| | | width: 150 |
| | | }, |
| | | { |
| | | title: '*å®é
å·¥æ¶', |
| | | dataIndex: 'actualHour', |
| | | align: 'center', |
| | | className: 'red', |
| | | // className: 'red', |
| | | scopedSlots: { customRender: 'actualHour' }, |
| | | width: 150 |
| | | }, |
| | |
| | | dataIndex: 'sparePartId', |
| | | scopedSlots: { customRender: 'sparePartId' }, |
| | | align: "center", |
| | | className: 'red', |
| | | // className: 'red', |
| | | // width: 250, |
| | | }, |
| | | { |
| | |
| | | dataIndex: 'actualQuantity', |
| | | align: "center", |
| | | scopedSlots: { customRender: 'actualQuantity' }, |
| | | className: 'red', |
| | | // className: 'red', |
| | | }, |
| | | { |
| | | title: 'åä½', |
| | | dataIndex: 'repairOrderAmUda1', |
| | | scopedSlots: { customRender: 'repairOrderAmUda1' }, |
| | | align: "center", |
| | | className: 'red', |
| | | // className: 'red', |
| | | }, |
| | | |
| | | { |
| | |
| | | <j-dict-select-tag |
| | | allow-clear |
| | | :disabled="disabledEdit" |
| | | :placeholder="'è¯·éæ©ç»´ä¿®æ å'" |
| | | :placeholder="'è¯·éæ©ç»´ä¿®æ åå
容'" |
| | | :triggerChange="true" |
| | | dictCode="mom_eam_repair_standard,name,id, del_flag!='1'" |
| | | v-decorator="['repairOrderFaultAnalysisUda5',validatorRules.repairOrderFaultAnalysisUda5]" |
| | |
| | | :wrapperCol="wrapperCol" |
| | | v-show="!productionDisabled" |
| | | > |
| | | <a-input-search :readOnly="true" v-model="model.equipmentIds" @search="deviceSearch" enter-button |
| | | placeholder="è¯·éæ©è®¾å¤" :disabled="!model.selectedProduction"/> |
| | | <a-input-search |
| | | :readOnly="true" |
| | | v-model="model.equipmentIds" |
| | | @search="deviceSearch" |
| | | enter-button |
| | | placeholder="è¯·éæ©è®¾å¤" |
| | | :disabled="!model.selectedProduction" |
| | | /> |
| | | </a-form-model-item> |
| | | |
| | | <a-form-model-item label="é¦é¡µæé" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-radio-group v-model="model.userType" :defaultValue="0"> |
| | | <a-form-model-item |
| | | label="é¦é¡µæé" |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | > |
| | | <a-radio-group |
| | | v-model="model.userType" |
| | | :defaultValue="0" |
| | | > |
| | | <a-radio :value="4">å
¬å¸çº§</a-radio> |
| | | <a-radio :value="3">车é´çº§</a-radio> |
| | | <a-radio :value="2">工段级</a-radio> |
| | |
| | | :wrapperCol="wrapperCol" |
| | | prop="areaId" |
| | | > |
| | | <j-dict-select-tag |
| | | <!-- <j-dict-select-tag |
| | | v-model="model.areaId" |
| | | :triggerChange="true" |
| | | dictCode="mom_base_area,name,id,del_flag = 0" |
| | | placeholder="请维æ¤ä¸å¿" |
| | | ></j-dict-select-tag> |
| | | ></j-dict-select-tag> --> |
| | | <j-multi-select-tag |
| | | :triggerChange="true" |
| | | v-model="model.areaId" |
| | | dictCode="mom_base_area,name,id,del_flag = 0 and type = 1" |
| | | placeholder="请维æ¤ä¸å¿" |
| | | > |
| | | </j-multi-select-tag> |
| | | </a-form-model-item> |
| | | <a-form-model-item |
| | | label="è´è´£é¨é¨" |
| | |
| | | </a-button> |
| | | </div> |
| | | |
| | | <select-device-modal ref="selectDeviceModal" @selectFinished="selectOK" :title="'éæ©è®¾å¤'"/> |
| | | <select-device-modal |
| | | ref="selectDeviceModal" |
| | | @selectFinished="selectOK" |
| | | :title="'éæ©è®¾å¤'" |
| | | /> |
| | | </a-drawer> |
| | | </template> |
| | | |