| | |
| | | :width="drawerWidth" |
| | | :visible="visible" |
| | | @close="handleCancel" |
| | | :confirmLoading="confirmLoading" |
| | | :loading="confirmLoading" |
| | | :maskClosable="maskClosable" |
| | | > |
| | | <a-card :style="getBackground()"> |
| | | <template> |
| | | <a-card> |
| | | <div :style="{width: '100%',border: '1px solid #e9e9e9',padding: '10px 16px',background: '#fff',}"> |
| | | <a-row :style="{textAlign:'left'}"> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handleStart" |
| | | :loading="confirmLoading" |
| | | :disabled="repairOrder.status!='2'" |
| | | type="primary" |
| | | >开工</a-button> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handleReport" |
| | | :disabled="repairOrder.status!='3'" |
| | | @click="handleSpare" |
| | | :loading="confirmLoading" |
| | | :disabled="repairOrder.status!=='3' |
| | | ||repairOrder.repairOrderUda1==='needSpare'||repairOrder.repairOrderUda1==='needPart' |
| | | ||(repairOrder.repairOrderUda2!==null&&repairOrder.repairOrderUda3!==null)" |
| | | type="primary" |
| | | >报工</a-button> |
| | | v-if="repairOrder.repairOrderUda1!=='needSpare'" |
| | | >等采购件</a-button> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handleSpareStop" |
| | | :loading="confirmLoading" |
| | | type="primary" |
| | | v-if="repairOrder.repairOrderUda1==='needSpare'" |
| | | >等采购件停止</a-button> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handlePart" |
| | | :loading="confirmLoading" |
| | | :disabled="repairOrder.status!='3' |
| | | ||repairOrder.repairOrderUda1==='needPart'||repairOrder.repairOrderUda1==='needSpare' |
| | | ||(repairOrder.repairOrderUda4!==null&&repairOrder.repairOrderUda5!==null)" |
| | | type="primary" |
| | | v-if="repairOrder.repairOrderUda1!=='needPart'" |
| | | >等加工件</a-button> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handlePartStop" |
| | | :loading="confirmLoading" |
| | | type="primary" |
| | | v-if="repairOrder.repairOrderUda1==='needPart'" |
| | | >等加工件停止</a-button> |
| | | <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handleReportPro" |
| | | :loading="confirmLoading" |
| | | :disabled="repairOrder.status!='3'||repairOrder.repairOrderUda1==='needPart'||repairOrder.repairOrderUda1==='needSpare'" |
| | | type="primary" |
| | | >修完</a-button> |
| | | <!-- <a-button |
| | | :style="{marginRight: '8px'}" |
| | | @click="handleRevoke" |
| | | :loading="confirmLoading" |
| | | :disabled="repairOrder.status!='4'" |
| | | type="primary" |
| | | >撤销</a-button> |
| | | >撤销</a-button> --> |
| | | </a-row> |
| | | </div> |
| | | <div :style="{width: '100%',border: '1px solid #e9e9e9',padding: '10px 16px',background: '#fff',}"> |
| | | <a-divider |
| | | orientation="center" |
| | | style="font-size: large;font-style: italic;color: #66aeed;" |
| | | > 基础信息 </a-divider> |
| | | <a-row :gutter="24"> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | |
| | | v-if="this.repairOrder != null" |
| | | class="hightColor" |
| | | >{{this.repairOrder.status_dictText}}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="维修状态" |
| | | class="hightColor" |
| | | > |
| | | <span |
| | | v-if="this.repairOrder != null" |
| | | class="hightColor" |
| | | >{{this.repairOrder.repairOrderUda1_dictText}}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-row :gutter="24"> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="设备编码" |
| | | label="统一编码" |
| | | class="hightColor" |
| | | > |
| | | <span |
| | |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-row :gutter="24"> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="工时定额" |
| | | label="关键设备?" |
| | | class="hightColor" |
| | | > |
| | | <span |
| | | v-if="this.repairOrder != null" |
| | | class="hightColor" |
| | | >{{ this.repairOrder.workingHourQuota }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="执行人" |
| | | class="hightColor" |
| | | > |
| | | <span |
| | | v-if="this.repairOrder != null" |
| | | class="hightColor" |
| | | >{{ this.repairOrder.recipientUserId_dictText}}</span> |
| | | >{{ this.repairOrder.specificEquipment_dictText}}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-divider |
| | | orientation="center" |
| | | style="font-size: large;font-style: italic;color: #66aeed;" |
| | | > 报修领取信息 </a-divider> |
| | | <a-row :gutter="24"> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="报修时间" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.faultTime }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="报修人" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.errUda2 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="领取时间" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.createTime }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="领取人" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.responsibilityName }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-divider |
| | | orientation="center" |
| | | style="font-size: large;font-style: italic;color: #66aeed;" |
| | | > 维修信息 </a-divider> |
| | | <a-row |
| | | hidden |
| | | :gutter="24" |
| | | > |
| | | <a-col :span="6"> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="开始时间" |
| | | label="开工时间" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.actualStartTime }}</span> |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.actualStartTime}}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="创建人" |
| | | label="完工时间" |
| | | class="hightColor" |
| | | > |
| | | <span |
| | | v-if="this.repairOrder != null" |
| | | class="hightColor" |
| | | >{{ this.repairOrder.createBy}}</span> |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.actualEndTime }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="创建人" |
| | | label="维修时长" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{this.formattedElapsedTime}}</span> |
| | | |
| | | <span |
| | | v-if="this.repairOrder != null" |
| | | class="hightColor" |
| | | >{{ this.repairOrder.createTime}}</span> |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="完成人" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.recipientUserId}}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-divider |
| | | orientation="center" |
| | | style="font-size: large;font-style: italic;color: #66aeed;" |
| | | > 等采购件 </a-divider> |
| | | <a-row |
| | | :gutter="24" |
| | | > |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="等采购件开始" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.repairOrderUda2}}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="等采购件结束" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.repairOrderUda3 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="累计时长" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.time1 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-divider |
| | | orientation="center" |
| | | style="font-size: large;font-style: italic;color: #66aeed;" |
| | | > 等加工件 </a-divider> |
| | | <a-row |
| | | :gutter="24" |
| | | > |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="等加工件开始" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.repairOrderUda4 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="等加工件结束" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.repairOrderUda5 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="累计时长" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.time2 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-divider |
| | | orientation="center" |
| | | style="font-size: large;font-style: italic;color: #66aeed;" |
| | | > 验收信息 </a-divider> |
| | | <a-row |
| | | :gutter="24" |
| | | > |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="验收时间" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.acceptTime }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="验收人" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.repairOrder.errUda3 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | | >-</span> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-form-item |
| | | :labelCol="labelCol" |
| | | :wrapperCol="wrapperCol" |
| | | label="故障时长" |
| | | class="hightColor" |
| | | > |
| | | <span v-if="this.repairOrder != null">{{ this.time3 }}</span> |
| | | <span |
| | | v-else |
| | | class="frozenRowClass" |
| | |
| | | </a-col> |
| | | </a-row> |
| | | </div> |
| | | </a-card> |
| | | <a-card :style="getBackground()"> |
| | | <a-tabs |
| | | type="card" |
| | | defaultActiveKey="1" |
| | |
| | | key="1" |
| | | class="hightColor" |
| | | > |
| | | <!-- <fault-analysis-edit-table |
| | | :repairOrderId="repairOrder.id" |
| | | :repairOrderStatus="repairOrder.status" |
| | | ></fault-analysis-edit-table> --> |
| | | <RepairOrderFaultAnalysisList :repairOrderId="repairOrderId" :repairOrder="repairOrder"/> |
| | | <RepairOrderFaultAnalysisList :repairOrder="repairOrder"/> |
| | | </a-tab-pane> |
| | | <a-tab-pane |
| | | tab='实际工时' |
| | |
| | | key="2" |
| | | class="hightColor" |
| | | > |
| | | <!-- <actual-material-edit-table |
| | | :repairOrderId="repairOrder.id" |
| | | :repairOrderStatus="repairOrder.status" |
| | | ></actual-material-edit-table> --> |
| | | <RepairOrderActualMaterialList :mainId="repairOrder" /> |
| | | </a-tab-pane> |
| | | </a-tabs> |
| | | </a-card> |
| | | </template> |
| | | </a-card> |
| | | <div :style="{width: '100%',border: '1px solid #e9e9e9',padding: '10px 16px',background: '#fff',}"> |
| | | <a-row :style="{textAlign:'right'}"> |
| | | <a-button |
| | |
| | | <script> |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { putAction } from '@/api/manage' |
| | | import dayjs from 'dayjs' |
| | | import Tooltip from 'ant-design-vue/es/tooltip' |
| | | import ActualMaterialEditTable from './moudles/ActualMaterialEditTable.vue' |
| | | import ActualWorkHoursEditTable from './moudles/ActualWorkHoursEditTable.vue' |
| | | import FaultAnalysisEditTable from './moudles/FaultAnalysisEditTable' |
| | | import RepairOrderActualMaterialList from './moudles/RepairOrderActualMaterialReport' |
| | | import RepairOrderActualWorkHoursList from './moudles/RepairOrderActualHoursReport' |
| | | import RepairOrderFaultAnalysisList from './moudles/RepairOrderFaultAnalysisReport.vue' |
| | | import { getAction } from '../../../../api/manage' |
| | | export default { |
| | | name: 'RepairOrderExcuteDrawer', |
| | | mixins: [JeecgListMixin], |
| | | components: { |
| | | Tooltip, |
| | | ActualMaterialEditTable, |
| | | ActualWorkHoursEditTable, |
| | | FaultAnalysisEditTable, |
| | | RepairOrderActualMaterialList, |
| | | RepairOrderActualWorkHoursList, |
| | | RepairOrderFaultAnalysisList |
| | | RepairOrderFaultAnalysisList, |
| | | dayjs |
| | | }, |
| | | props: { |
| | | repairOrder: { |
| | |
| | | dataSource: [], |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 6 }, |
| | | sm: { span: 12 }, |
| | | }, |
| | | wrapperCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 18 }, |
| | | sm: { span: 12 }, |
| | | }, |
| | | url: { |
| | | orderStart: "eam/repairOrder/start", |
| | | orderReport: "eam/repairOrder/report", |
| | | orderRevoke: "eam/repairOrder/revoke" |
| | | orderRevoke: "eam/repairOrder/revoke", |
| | | reload:"/eam/repairOrder/list", |
| | | handleSpare:"/eam/repairOrder/handleSpare", |
| | | handlePart:"/eam/repairOrder/handlePart", |
| | | handleSpareStop:"/eam/repairOrder/handleSpareStop", |
| | | handlePartStop:"/eam/repairOrder/handlePartStop", |
| | | getInfo:'/eam/repairOrderFaultAnalysis/list', |
| | | }, |
| | | elapsedTime: 0, // 记录已过去的时间(单位:毫秒) |
| | | formattedElapsedTime: '0秒', |
| | | time1:'0秒', |
| | | time2:'0秒', |
| | | time3:'0秒', |
| | | timer:null // 格式化后的已过去时间 |
| | | } |
| | | }, |
| | | |
| | | mounted() { |
| | | this.$bus.$on('closeDrawer', (data) => { |
| | | this.handleCancel() |
| | | }) |
| | | // this.$bus.$on('closeDrawer', (data) => { |
| | | // this.handleCancel() |
| | | // }) |
| | | this.timer = setInterval(() => { |
| | | this.updateElapsedTime(); |
| | | }, 1000); |
| | | }, |
| | | beforeDestroy() { |
| | | // 在组件销毁前清除计时器 |
| | | clearInterval(this.timer); |
| | | }, |
| | | |
| | | methods: { |
| | |
| | | this.visible = false; |
| | | //this.repairOrder.id = "-1" |
| | | }, |
| | | // handleStart(record) { |
| | | // putAction(this.url.orderStart, this.repairOrder).then(res => { |
| | | // if (res.result) { |
| | | // this.$message.success('开工成功'); |
| | | // this.repairOrder.status = '3' |
| | | // this.$emit('loadData'); |
| | | // } else { |
| | | // this.$message.error('开工出现异常') |
| | | // } |
| | | // }) |
| | | // }, |
| | | //开工 |
| | | handleStart() { |
| | | const that = this; |
| | |
| | | that.$message.success('开工成功'); |
| | | that.repairOrder.status = '3' |
| | | that.$emit('loadData'); |
| | | that.reload(); |
| | | } else { |
| | | that.$message.error('开工出现异常') |
| | | } |
| | |
| | | }, |
| | | }) |
| | | }, |
| | | |
| | | // handleReport() { |
| | | // putAction(this.url.orderReport, this.repairOrder).then(res => { |
| | | // if (res.result) { |
| | | // this.$message.success('报工成功'); |
| | | // this.repairOrder.status = '4' |
| | | // this.$emit('loadData'); |
| | | // } else { |
| | | // this.$message.error('报工出现异常') |
| | | // } |
| | | // }) |
| | | // }, |
| | | |
| | | //报工 |
| | | handleReportPro(){ |
| | | |
| | | let that = this; |
| | | getAction(that.url.getInfo,{repairOrderId:this.repairOrder.id}).then(res=>{ |
| | | if(res.success){ |
| | | if(res.result.records.length===0){ |
| | | that.$message.warning("故障分析尚未填写,请填写后再报工") |
| | | }else if(res.result.records[0].repairOrderFaultAnalysisUda1===null||res.result.records[0].repairOrderFaultAnalysisUda1===undefined||res.result.records[0].repairOrderFaultAnalysisUda1===''){ |
| | | that.$message.warning("故障现象尚未填写,请填写后再报工") |
| | | }else if(res.result.records[0].faultCause===null||res.result.records[0].faultCause===undefined||res.result.records[0].faultCause===''){ |
| | | that.$message.warning("故障检查尚未填写,请填写后再报工") |
| | | }else if(res.result.records[0].maintenanceMeasures===null||res.result.records[0].maintenanceMeasures===undefined||res.result.records[0].maintenanceMeasures===''){ |
| | | that.$message.warning("故障维修尚未填写,请填写后再报工") |
| | | }else if(res.result.records[0].suggestion===null||res.result.records[0].suggestion===undefined||res.result.records[0].suggestion===''){ |
| | | that.$message.warning("故障预防尚未填写,请填写后再报工") |
| | | }else{ |
| | | that.handleReport(); |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | handleReport() { |
| | | const that = this; |
| | | that.confirmLoading = true; |
| | |
| | | putAction(that.url.orderReport, that.repairOrder).then(res => { |
| | | if (res.result) { |
| | | that.$message.success('报工成功'); |
| | | that.repairOrder.status = '4' |
| | | that.reload(); |
| | | that.$emit('loadData'); |
| | | } else { |
| | | that.$message.error('报工出现异常') |
| | | that.$message.error(res.message) |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false; |
| | |
| | | }, |
| | | }) |
| | | }, |
| | | // handleRevoke() { |
| | | // putAction(this.url.orderRevoke, this.repairOrder).then(res => { |
| | | // if (res.result) { |
| | | // this.$message.success('撤销成功'); |
| | | // this.repairOrder.status = '3' |
| | | // this.$emit('loadData'); |
| | | // } else { |
| | | // this.$message.error('撤销出现异常') |
| | | // } |
| | | // }) |
| | | // }, |
| | | |
| | | //撤销 |
| | | handleRevoke() { |
| | | const that = this; |
| | |
| | | putAction(that.url.orderRevoke, that.repairOrder).then(res => { |
| | | if (res.result) { |
| | | that.$message.success('撤销成功'); |
| | | that.repairOrder.status = '3' |
| | | that.$emit('loadData'); |
| | | } else { |
| | | that.$message.error('撤销出现异常') |
| | |
| | | }, |
| | | }) |
| | | }, |
| | | handleSpare(){ |
| | | const that = this; |
| | | that.confirmLoading = true; |
| | | this.$confirm({ |
| | | title: '等采购件', |
| | | content: '提示:该操作不可撤销,确认开始等采购件?', |
| | | okText: '确认', |
| | | cancelText: '取消', |
| | | onOk() { |
| | | putAction(that.url.handleSpare, that.repairOrder).then(res => { |
| | | if (res.result) { |
| | | that.$message.success('操作成功'); |
| | | that.reload(); |
| | | that.$emit('loadData'); |
| | | } else { |
| | | that.$message.error('操作出现异常') |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false; |
| | | // that.close(); |
| | | }) |
| | | }, |
| | | }) |
| | | }, |
| | | handleSpareStop(){ |
| | | const that = this; |
| | | that.confirmLoading = true; |
| | | this.$confirm({ |
| | | title: '停止等采购件', |
| | | content: '提示:该操作不可撤销,确认停止等采购件?', |
| | | okText: '确认', |
| | | cancelText: '取消', |
| | | onOk() { |
| | | putAction(that.url.handleSpareStop, that.repairOrder).then(res => { |
| | | if (res.result) { |
| | | that.$message.success('操作成功'); |
| | | that.reload(); |
| | | that.$emit('loadData'); |
| | | } else { |
| | | that.$message.error('操作出现异常') |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false; |
| | | // that.close(); |
| | | }) |
| | | }, |
| | | }) |
| | | }, |
| | | handlePart(){ |
| | | const that = this; |
| | | that.confirmLoading = true; |
| | | this.$confirm({ |
| | | title: '等采购件', |
| | | content: '提示:该操作不可撤销,确认等采购件?', |
| | | okText: '确认', |
| | | cancelText: '取消', |
| | | onOk() { |
| | | putAction(that.url.handlePart, that.repairOrder).then(res => { |
| | | if (res.result) { |
| | | that.$message.success('操作成功'); |
| | | that.reload(); |
| | | that.$emit('loadData'); |
| | | } else { |
| | | that.$message.error('操作出现异常') |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false; |
| | | // that.close(); |
| | | }) |
| | | }, |
| | | }) |
| | | }, |
| | | handlePartStop(){ |
| | | const that = this; |
| | | that.confirmLoading = true; |
| | | this.$confirm({ |
| | | title: '停止等采购件', |
| | | content: '提示:该操作不可撤销,确认停止等采购件?', |
| | | okText: '确认', |
| | | cancelText: '取消', |
| | | onOk() { |
| | | putAction(that.url.handlePartStop, that.repairOrder).then(res => { |
| | | if (res.result) { |
| | | that.$message.success('操作成功'); |
| | | that.reload(); |
| | | that.$emit('loadData'); |
| | | } else { |
| | | that.$message.error('操作出现异常') |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false; |
| | | // that.close(); |
| | | }) |
| | | }, |
| | | }) |
| | | }, |
| | | reload(){ |
| | | getAction(this.url.reload,{id:this.repairOrder.id}).then(res=>{ |
| | | if( res.result.records.length!==0){ |
| | | this.repairOrder = res.result.records[0]; |
| | | } |
| | | }) |
| | | }, |
| | | updateElapsedTime() { |
| | | const stardand = new Date(); |
| | | if(this.repairOrder.actualEndTime!==null&&this.repairOrder.actualEndTime!==undefined&&this.repairOrder.actualEndTime!==''){ |
| | | this.formattedElapsedTime = this.repairOrder.actualHour+'时'; |
| | | }else if(this.repairOrder.actualStartTime!==null&&this.repairOrder.actualStartTime!==undefined&&this.repairOrder.actualStartTime!==''){ |
| | | const startDateTime = dayjs(this.repairOrder.actualStartTime, { format: 'YYYY-MM-DD HH:mm:ss' }); |
| | | this.elapsedTime = stardand-startDateTime; |
| | | this.formattedElapsedTime = this.formatTime(this.elapsedTime); |
| | | }else{ |
| | | this.formattedElapsedTime="开工后计算时长"; |
| | | } |
| | | if(this.repairOrder.repairOrderUda3!==null&&this.repairOrder.repairOrderUda3!==undefined&&this.repairOrder.repairOrderUda3!==''){ |
| | | this.time1 = this.repairOrder.spareTime+'时'; |
| | | }else if(this.repairOrder.repairOrderUda2!==null&&this.repairOrder.repairOrderUda2!==undefined&&this.repairOrder.repairOrderUda2!==''){ |
| | | const startDateTime1 = dayjs(this.repairOrder.repairOrderUda2, { format: 'YYYY-MM-DD HH:mm:ss' }); |
| | | this.time1 = this.formatTime(stardand-startDateTime1); |
| | | }else{ |
| | | this.time1 = "等采购件后计算时长" |
| | | } |
| | | if(this.repairOrder.repairOrderUda5!==null&&this.repairOrder.repairOrderUda5!==undefined&&this.repairOrder.repairOrderUda5!==''){ |
| | | this.time2 = this.repairOrder.partTime+'时'; |
| | | }else if(this.repairOrder.repairOrderUda4!==null&&this.repairOrder.repairOrderUda4!==undefined&&this.repairOrder.repairOrderUda4!==''){ |
| | | const startDateTime2 = dayjs(this.repairOrder.repairOrderUda4, { format: 'YYYY-MM-DD HH:mm:ss' }); |
| | | this.time2 = this.formatTime(stardand-startDateTime2); |
| | | }else{ |
| | | this.time2 = "等加工件后计算时长" |
| | | } |
| | | if(this.repairOrder.acceptTime!==null&&this.repairOrder.acceptTime!==undefined&&this.repairOrder.acceptTime!==''){ |
| | | this.time3 = this.repairOrder.faultHour+'时'; |
| | | }else if(this.repairOrder.faultTime!==null&&this.repairOrder.faultTime!==undefined&&this.repairOrder.faultTime!==''){ |
| | | const startDateTime3 = dayjs(this.repairOrder.faultTime, { format: 'YYYY-MM-DD HH:mm:ss' }); |
| | | this.time3 = this.formatTime(stardand-startDateTime3); |
| | | }else{ |
| | | this.time3 = "验收后计算时长" |
| | | } |
| | | }, |
| | | formatTime(timeInMilliseconds) { |
| | | // 将毫秒转换为更友好的格式(例如:x小时x分钟x秒) |
| | | // 这里只是一个简单的实现,你可能需要根据需求进行更改 |
| | | const seconds = Math.floor(timeInMilliseconds / 1000); |
| | | const minutes = Math.floor(seconds / 60); |
| | | const hours = Math.floor(minutes / 60); |
| | | |
| | | return `${hours}时 ${minutes % 60}分 ${seconds % 60}秒`; |
| | | }, |
| | | }, |
| | | |
| | | } |