xw_admin/src/views/order/order-info.vue
2024-08-22 19:37:18 +08:00

69 lines
1.5 KiB
Vue

<template>
<el-container>
<el-main class="orderMain" v-loading="loading" element-loading-text="加载中...">
<el-scrollbar>
<detailView :data="info"></detailView>
</el-scrollbar>
</el-main>
</el-container>
</template>
<script>
import detailView from "@/views/order/orderList/detailView";
export default {
name: "order-info",
components:{
detailView
},
data(){
return{
loading:false,
params:{
order_id:Number(this.$route.query.id)
},
info:{}
}
},
mounted() {
this.getData();
},
methods:{
async getData() {
this.loading = true;
const res = await this.$API.orders.order.maintenance.info.post(this.params);
if(res.code == 200){
if(res.data.process_engine){
res.data.process_engine = this.processList(res.data.process_engine).processedList;
res.data.process_num = this.processList(res.data.process_engine).num;
}
this.info = res.data;
}
this.loading = false;
},
processList(list) {
let obj = {
num:0,
processedList:this.$TOOL.objCopy(list)
}
let foundNodeTrue = false;
for (let i = 0; i < obj.processedList.length; i++) {
if (obj.processedList[i].node === true) {
foundNodeTrue = true;
obj.processedList[i].status = 'finish';
obj.num = i;
} else if (!foundNodeTrue) {
obj.processedList[i].status = 'success';
}
if (foundNodeTrue && obj.processedList[i].node !== true) break;
}
return obj;
}
}
}
</script>
<style scoped lang="scss">
</style>