优化控制台消息推送
This commit is contained in:
parent
481dd4af44
commit
c174f3df6a
@ -2,6 +2,13 @@ export default {
|
|||||||
state: {
|
state: {
|
||||||
main_order_count:[],
|
main_order_count:[],
|
||||||
repair_count:[],
|
repair_count:[],
|
||||||
|
|
||||||
|
home_msg:{
|
||||||
|
briefing:[],
|
||||||
|
workOrder:[],
|
||||||
|
spareParts:[],
|
||||||
|
reachStandard:[]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
mutations: {
|
mutations: {
|
||||||
set_list_count_info(state, list){
|
set_list_count_info(state, list){
|
||||||
@ -10,6 +17,21 @@ export default {
|
|||||||
set_repair_count(state, list){
|
set_repair_count(state, list){
|
||||||
state.repair_count = list;
|
state.repair_count = list;
|
||||||
},
|
},
|
||||||
|
set_home_msg(state,key){
|
||||||
|
if(key.data && (key.data.type==21 || key.data.type==24 || key.data.type == 25 || key.data.type == 26))
|
||||||
|
if(key.data.type == 21){
|
||||||
|
state.home_msg.briefing = key;
|
||||||
|
|
||||||
|
}else if(key.data.type == 24){
|
||||||
|
state.home_msg.workOrder = key;
|
||||||
|
|
||||||
|
}else if(key.data.type == 25){
|
||||||
|
state.home_msg.spareParts = key;
|
||||||
|
|
||||||
|
}else if(key.data.type == 26){
|
||||||
|
state.home_msg.reachStandard = key;
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
actions: {
|
actions: {
|
||||||
|
|
||||||
|
|||||||
@ -87,6 +87,10 @@
|
|||||||
text-align: left;
|
text-align: left;
|
||||||
color: #333;
|
color: #333;
|
||||||
font-weight: initial;
|
font-weight: initial;
|
||||||
|
.text{
|
||||||
|
width: 100%;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.seq{flex-basis: 50px;overflow: hidden;}
|
.seq{flex-basis: 50px;overflow: hidden;}
|
||||||
}
|
}
|
||||||
@ -108,12 +112,25 @@
|
|||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
.el-row{
|
.el-row{
|
||||||
margin-bottom: 6px;
|
margin-bottom: 6px;
|
||||||
|
.el-col{
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
.name{
|
.name{
|
||||||
width: 65px;
|
flex-basis: 65px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
margin-right: 12px;
|
margin-right: 12px;
|
||||||
}
|
}
|
||||||
|
.text{
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.orderInfoRepair{
|
||||||
|
.el-row{
|
||||||
|
.name{
|
||||||
|
flex-basis: 90px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.componentBox{
|
.componentBox{
|
||||||
|
|||||||
@ -5,8 +5,8 @@ import systemConfig from '@/config';
|
|||||||
import router from "@/router";
|
import router from "@/router";
|
||||||
import {ElNotification} from 'element-plus';
|
import {ElNotification} from 'element-plus';
|
||||||
import {eventBus} from "./eventBus"
|
import {eventBus} from "./eventBus"
|
||||||
|
import store from "../store";
|
||||||
// import api from '../api';
|
// import api from '../api';
|
||||||
// import store from "../store";
|
|
||||||
|
|
||||||
let websocket = null;
|
let websocket = null;
|
||||||
let global_callback = function () {};
|
let global_callback = function () {};
|
||||||
@ -132,6 +132,7 @@ function webSocketOnMessage(msg) {
|
|||||||
} else {
|
} else {
|
||||||
if(msg.type === "") return
|
if(msg.type === "") return
|
||||||
result = JSON.parse(msg.data);
|
result = JSON.parse(msg.data);
|
||||||
|
store.commit('set_home_msg', result);
|
||||||
// if(result.type == 13){
|
// if(result.type == 13){
|
||||||
// store.commit("SET_WS_Msg_NUM", result.data.todo_msg_count);
|
// store.commit("SET_WS_Msg_NUM", result.data.todo_msg_count);
|
||||||
// }
|
// }
|
||||||
|
|||||||
@ -124,7 +124,7 @@ import barBox from "./components/bar";
|
|||||||
import ringBox from "./components/ring";
|
import ringBox from "./components/ring";
|
||||||
import pointBox from "./components/point";
|
import pointBox from "./components/point";
|
||||||
import shortcuts from "./components/shortcuts";
|
import shortcuts from "./components/shortcuts";
|
||||||
import {eventBus} from "@/utils/eventBus"
|
import {eventBus} from "@/utils/eventBus";
|
||||||
export default {
|
export default {
|
||||||
name: "index",
|
name: "index",
|
||||||
components:{
|
components:{
|
||||||
@ -170,11 +170,30 @@ export default {
|
|||||||
{date_type:'month',label:'按月'},
|
{date_type:'month',label:'按月'},
|
||||||
{date_type:'year',label:'按年'},
|
{date_type:'year',label:'按年'},
|
||||||
],
|
],
|
||||||
dataType:"month"
|
dataType:"month",
|
||||||
|
|
||||||
|
home_msg:this.$store.state.msg.home_msg
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed:{
|
||||||
|
|
||||||
|
},
|
||||||
|
watch:{
|
||||||
|
home_msg:{
|
||||||
|
handler(obj){
|
||||||
|
for(let i in obj){
|
||||||
|
if(obj[i] && obj[i].data){
|
||||||
|
this.getWsResult(obj[i])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
deep:true,
|
||||||
|
immediate:true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.$emit('on-mounted');
|
this.$emit('on-mounted');
|
||||||
|
|
||||||
// 获取新消息
|
// 获取新消息
|
||||||
eventBus.$on('sockBack', this.getWsResult);
|
eventBus.$on('sockBack', this.getWsResult);
|
||||||
},
|
},
|
||||||
|
|||||||
@ -4,9 +4,9 @@
|
|||||||
<div class="searchHeaderBack">
|
<div class="searchHeaderBack">
|
||||||
<el-input class="searchInput" v-focus type="text" size="large" v-model="keyword">
|
<el-input class="searchInput" v-focus type="text" size="large" v-model="keyword">
|
||||||
<template #prepend>
|
<template #prepend>
|
||||||
<el-dropdown class="searchDrop" trigger="click">
|
<el-dropdown class="searchDrop" trigger="click" @command="dropdownChange">
|
||||||
<span class="dropTitle el-dropdown-link">
|
<span class="dropTitle el-dropdown-link">
|
||||||
维保工单 <el-icon class="el-icon--right"><el-icon-arrow-down /></el-icon>
|
{{dropdownName}} <el-icon class="el-icon--right"><el-icon-arrow-down /></el-icon>
|
||||||
</span>
|
</span>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
@ -30,7 +30,12 @@
|
|||||||
<div class="collapseHeaderBack">
|
<div class="collapseHeaderBack">
|
||||||
<div class="collapseHeaderNav">
|
<div class="collapseHeaderNav">
|
||||||
<div class="item seq">序号</div>
|
<div class="item seq">序号</div>
|
||||||
|
<template v-if="dropdownType=='a'">
|
||||||
<div class="item" :style="{'width':item.width+'px'}" v-for="(item,index) in orderColumn" :key="index">{{item.label}}</div>
|
<div class="item" :style="{'width':item.width+'px'}" v-for="(item,index) in orderColumn" :key="index">{{item.label}}</div>
|
||||||
|
</template>
|
||||||
|
<template v-if="dropdownType=='b'">
|
||||||
|
<div class="item" :style="{'width':item.width+'px'}" v-for="(item,index) in planColumn" :key="index">{{item.label}}</div>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-collapse class="collapseMain" @change="collapseChange" :accordion="true">
|
<el-collapse class="collapseMain" @change="collapseChange" :accordion="true">
|
||||||
@ -39,19 +44,33 @@
|
|||||||
<template #title>
|
<template #title>
|
||||||
<div class="collapseHeader">
|
<div class="collapseHeader">
|
||||||
<div class="item seq">{{index+1}}</div>
|
<div class="item seq">{{index+1}}</div>
|
||||||
|
<template v-if="dropdownType=='a'">
|
||||||
<div class="item" :style="{'width':em.width+'px'}" v-for="(em,index) in orderColumn" :key="index">
|
<div class="item" :style="{'width':em.width+'px'}" v-for="(em,index) in orderColumn" :key="index">
|
||||||
<!-- <el-tooltip effect="dark" :content="item[em.prop]"></el-tooltip>-->
|
|
||||||
<span v-if="em.prop == 'business_status'">
|
<span v-if="em.prop == 'business_status'">
|
||||||
<span v-for="(li,ind) in statusList" :key="ind">
|
<span v-for="(li,ind) in statusList" :key="ind">
|
||||||
<span :style="{color:li.value==1?`var(--el-order-color-1)`:li.value==2?`var(--el-order-color-2)`:li.value==3?`var(--el-order-color-3)`:li.value==4?`var(--el-order-color-4)`:`var(--el-order-color-5)`}"
|
<span :style="{color:li.value==1?`var(--el-order-color-1)`:li.value==2?`var(--el-order-color-2)`:li.value==3?`var(--el-order-color-3)`:li.value==4?`var(--el-order-color-4)`:`var(--el-order-color-5)`}"
|
||||||
v-if="li.value == item[em.prop]">{{li.label}}</span>
|
v-if="li.value == item[em.prop]">{{li.label}}</span>
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
|
<!-- <el-tooltip effect="dark" :content="item[em.prop]"><span class="text">{{item[em.prop]}}</span></el-tooltip> -->
|
||||||
|
<span v-else>{{item[em.prop]}}</span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template v-if="dropdownType=='b'">
|
||||||
|
<div class="item" :style="{'width':em.width+'px'}" v-for="(em,index) in planColumn" :key="index">
|
||||||
|
<span v-if="em.prop == 'repair_status'">
|
||||||
|
<span v-for="(li,ind) in statusList" :key="ind">
|
||||||
|
<span :style="{color:li.value==1?`var(--el-order-color-1)`:li.value==2?`var(--el-order-color-2)`:li.value==3?`var(--el-order-color-3)`:li.value==4?`var(--el-order-color-4)`:`var(--el-order-color-5)`}"
|
||||||
|
v-if="li.value == item[em.prop]">{{li.label}}</span>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
<span v-else>{{item[em.prop]}}</span>
|
<span v-else>{{item[em.prop]}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<div class="collapseBody">
|
<!-- 维保工单 -->
|
||||||
|
<div class="collapseBody" v-if="dropdownType=='a'">
|
||||||
<div class="title">工单详情</div>
|
<div class="title">工单详情</div>
|
||||||
<div class="stepView">
|
<div class="stepView">
|
||||||
<el-steps class="orderSteps" :active="item.process_num" align-center>
|
<el-steps class="orderSteps" :active="item.process_num" align-center>
|
||||||
@ -109,6 +128,58 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 维修工单 -->
|
||||||
|
<div class="collapseBody" v-if="dropdownType=='b'">
|
||||||
|
<div class="title">工单详情</div>
|
||||||
|
<div class="orderInfo orderInfoRepair">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">维修单号:</span><span class="text">{{item.repair_order_no}}</span>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">PE确认时间:</span><span class="text">{{item.maintenance_order.pe_confirmation_time}}</span>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">故障描述:</span><span class="text">{{item.maintenance_order.fault_description}}</span>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">保修期结束:</span><span class="text">{{item.maintenance_order.warranty_end_date}}</span>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">维修动作:</span><span class="text"></span>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">不良原因:</span><span class="text"></span>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">不良现象:</span><span class="text"></span>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">现场步骤分析:</span><span class="text"></span>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8" :lg="6">
|
||||||
|
<span class="name">SLA不达标原因:</span><span class="text"></span>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
<div class="componentBox">
|
||||||
|
<el-table :data="item.maintenance_order.component_info" :size="size" stripe :header-cell-style="{'background': '#1367C1','color':'#fff'}">
|
||||||
|
<el-table-column type="index" label="序号" align="center"></el-table-column>
|
||||||
|
<el-table-column prop="component_serial_no" show-overflow-tooltip label="部件SN/Sp" width="160"></el-table-column>
|
||||||
|
<el-table-column prop="component_manufacturer" show-overflow-tooltip label="部件厂商" width="130"></el-table-column>
|
||||||
|
<el-table-column prop="component_model" show-overflow-tooltip label="部件型号" width="160"></el-table-column>
|
||||||
|
<el-table-column prop="component_pn" show-overflow-tooltip label="部件PN/Sp" width="150"></el-table-column>
|
||||||
|
<el-table-column prop="bd_backup_count" show-overflow-tooltip label="剩余BD数" width="120"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</el-collapse-item>
|
</el-collapse-item>
|
||||||
</template>
|
</template>
|
||||||
</el-collapse>
|
</el-collapse>
|
||||||
@ -124,15 +195,17 @@ export default {
|
|||||||
return{
|
return{
|
||||||
size:'small',
|
size:'small',
|
||||||
loading:false,
|
loading:false,
|
||||||
keyword:"Z240919004",
|
keyword:"",
|
||||||
|
dropdownName:"维保工单",
|
||||||
|
dropdownType:'a',
|
||||||
params:{
|
params:{
|
||||||
repair_order_no:{
|
repair_order_no:{
|
||||||
operator:"like",
|
operator:"like",
|
||||||
value:"%Z240919004%"
|
value:""
|
||||||
},
|
},
|
||||||
component_serial_no:{
|
component_serial_no:{
|
||||||
operator:"like",
|
operator:"like",
|
||||||
value:"%Z240919004%"
|
value:""
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
activeNames:[],
|
activeNames:[],
|
||||||
@ -151,12 +224,12 @@ export default {
|
|||||||
],
|
],
|
||||||
planColumn:[
|
planColumn:[
|
||||||
{label:"工单号",prop:"repair_order_no",width:160},
|
{label:"工单号",prop:"repair_order_no",width:160},
|
||||||
{label:"外发日期",prop:"repair_order_no",width:160},
|
{label:"外发日期",prop:"created_at",width:160},
|
||||||
{label:"维保商场",prop:"repair_order_no",width:160},
|
{label:"维保商场",prop:"repair_order_no",width:160},
|
||||||
{label:"计划时间",prop:"repair_order_no",width:160},
|
{label:"计划时间",prop:"created_at",width:160},
|
||||||
{label:"完成时间",prop:"repair_order_no",width:160},
|
{label:"完成时间",prop:"updated_at",width:160},
|
||||||
{label:"故障类型",prop:"repair_order_no",width:160},
|
{label:"故障类型",prop:"fault_type",width:160},
|
||||||
{label:"状态",prop:"repair_order_no",width:160},
|
{label:"状态",prop:"repair_status",width:160},
|
||||||
],
|
],
|
||||||
rows:[],
|
rows:[],
|
||||||
statusList:[],
|
statusList:[],
|
||||||
@ -170,7 +243,12 @@ export default {
|
|||||||
async searchClick() {
|
async searchClick() {
|
||||||
let params = this.setObj();
|
let params = this.setObj();
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
const res = await this.$API.orders.order.maintenance.search.post(params);
|
let res;
|
||||||
|
if(this.dropdownType === 'a'){
|
||||||
|
res = await this.$API.orders.order.maintenance.search.post(params);
|
||||||
|
}else if(this.dropdownType === 'b'){
|
||||||
|
res = await this.$API.orders.order.repair.search.post(params);
|
||||||
|
}
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
if(res.code == 200){
|
if(res.code == 200){
|
||||||
res.data.forEach(item=>{
|
res.data.forEach(item=>{
|
||||||
@ -179,6 +257,17 @@ export default {
|
|||||||
item.process_engine = obj.processedList;
|
item.process_engine = obj.processedList;
|
||||||
item.process_num = obj.num;
|
item.process_num = obj.num;
|
||||||
}
|
}
|
||||||
|
if(item.maintenance_order && item.maintenance_order.component_info && item.maintenance_order.component_info==0){
|
||||||
|
item.maintenance_order.component_info = [
|
||||||
|
{
|
||||||
|
component_serial_no:item.maintenance_order.component_serial_no,
|
||||||
|
component_manufacturer:item.maintenance_order.component_manufacturer,
|
||||||
|
component_model:item.maintenance_order.component_model,
|
||||||
|
component_pn:item.maintenance_order.component_pn,
|
||||||
|
bd_backup_count:item.maintenance_order.bd_backup_count
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
if(item.component_info && item.component_info.length===0){
|
if(item.component_info && item.component_info.length===0){
|
||||||
item.component_info = [
|
item.component_info = [
|
||||||
{
|
{
|
||||||
@ -191,7 +280,6 @@ export default {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log(res.data,788)
|
|
||||||
this.rows = res.data;
|
this.rows = res.data;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -227,6 +315,15 @@ export default {
|
|||||||
if (foundNodeTrue && obj.processedList[i].node !== true) break;
|
if (foundNodeTrue && obj.processedList[i].node !== true) break;
|
||||||
}
|
}
|
||||||
return obj;
|
return obj;
|
||||||
|
},
|
||||||
|
dropdownChange(e){
|
||||||
|
this.dropdownType = e;
|
||||||
|
this.rows = [];
|
||||||
|
if(e === "a"){
|
||||||
|
this.dropdownName = '维保工单';
|
||||||
|
}else if(e === 'b'){
|
||||||
|
this.dropdownName = '维修工单'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -32,6 +32,7 @@
|
|||||||
mode: "add",
|
mode: "add",
|
||||||
titleMap: {
|
titleMap: {
|
||||||
add: '新增部件信息',
|
add: '新增部件信息',
|
||||||
|
edit: '编辑部件信息',
|
||||||
},
|
},
|
||||||
visible: false,
|
visible: false,
|
||||||
isSave: false,
|
isSave: false,
|
||||||
@ -79,7 +80,7 @@
|
|||||||
this.form.num = data.num;
|
this.form.num = data.num;
|
||||||
}
|
}
|
||||||
this.form.component_serial_no = data.component_serial_no;
|
this.form.component_serial_no = data.component_serial_no;
|
||||||
this.form.component_manufacturer = data.component_serial_no;
|
this.form.component_manufacturer = data.component_manufacturer;
|
||||||
this.form.component_model = data.component_model;
|
this.form.component_model = data.component_model;
|
||||||
this.form.component_pn = data.component_pn;
|
this.form.component_pn = data.component_pn;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -286,8 +286,11 @@ export default {
|
|||||||
if(this.info.component_info.length>0){
|
if(this.info.component_info.length>0){
|
||||||
this.info.component_info.forEach((item,index)=>{
|
this.info.component_info.forEach((item,index)=>{
|
||||||
if(index == data.num || (data.id && item.id == data.id)){
|
if(index == data.num || (data.id && item.id == data.id)){
|
||||||
item = data;
|
|
||||||
item.num = index;
|
item.num = index;
|
||||||
|
item.component_manufacturer = data.component_manufacturer;
|
||||||
|
item.component_model = data.component_model;
|
||||||
|
item.component_pn = data.component_pn;
|
||||||
|
item.component_serial_no = data.component_serial_no;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}else{
|
}else{
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
<div class="status">
|
<div class="status">
|
||||||
<span class="name">当前状态:</span>
|
<span class="name">当前状态:</span>
|
||||||
<span class="text">
|
<span class="text">
|
||||||
<span v-for="(item,ind) in statusList" :key="ind">
|
<span v-for="(item,ind) in setMap.statusList" :key="ind">
|
||||||
<span :style="{color:item.value==1?`var(--el-order-color-1)`:item.value==2?`var(--el-order-color-2)`:item.value==3?`var(--el-order-color-3)`:item.value==4?`var(--el-order-color-4)`:`var(--el-order-color-5)`}"
|
<span :style="{color:item.value==1?`var(--el-order-color-1)`:item.value==2?`var(--el-order-color-2)`:item.value==3?`var(--el-order-color-3)`:item.value==4?`var(--el-order-color-4)`:`var(--el-order-color-5)`}"
|
||||||
v-if="item.value == info.business_status">{{item.label}}</span>
|
v-if="item.value == info.business_status">{{item.label}}</span>
|
||||||
</span>
|
</span>
|
||||||
@ -16,7 +16,11 @@
|
|||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="8" :lg="6">
|
<el-col :span="8" :lg="6">
|
||||||
<span class="label">报修客户:</span>
|
<span class="label">报修客户:</span>
|
||||||
<span class="text">{{info.customer_name}}</span>
|
<span class="text">
|
||||||
|
<span v-for="(item,index) in setMap.customerList" :key="index">
|
||||||
|
<span v-if="item.id == info.customer_id">{{item.customer_name}}</span>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8" :lg="6">
|
<el-col :span="8" :lg="6">
|
||||||
<span class="label">标准机型:</span>
|
<span class="label">标准机型:</span>
|
||||||
@ -155,17 +159,34 @@ export default {
|
|||||||
info:{
|
info:{
|
||||||
component_info:[]
|
component_info:[]
|
||||||
},
|
},
|
||||||
statusList:[]
|
setMap:{
|
||||||
|
statusList:[],
|
||||||
|
customerList:[]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getStatusList();
|
this.getStatusList();
|
||||||
|
this.getCustomerSelect();
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
async getStatusList() {
|
async getStatusList() {
|
||||||
const res = await this.$API.orders.order.maintenance.status.post();
|
const res = await this.$API.orders.order.maintenance.status.post();
|
||||||
if (res.code == 200) {
|
if (res.code == 200) {
|
||||||
this.statusList = res.data;
|
this.setMap['statusList'] = res.data;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async getCustomerSelect(){
|
||||||
|
let params = {
|
||||||
|
field:"customer_name",
|
||||||
|
id:{
|
||||||
|
operator:"in",
|
||||||
|
value:""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const res = await this.$API.setup.customer.select.post(params);
|
||||||
|
if(res.code == 200){
|
||||||
|
this.setMap['customerList'] = res.data;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@ -128,7 +128,7 @@ export default {
|
|||||||
const params = {
|
const params = {
|
||||||
order_ids: [this.params.order_id],
|
order_ids: [this.params.order_id],
|
||||||
is_verify_erp_inventory:this.info.is_verify_erp_inventory,
|
is_verify_erp_inventory:this.info.is_verify_erp_inventory,
|
||||||
component_info:this.info.component_info
|
component_info:this.info.component_info.filter(em=>!em.id)
|
||||||
};
|
};
|
||||||
this.saveLoading = true;
|
this.saveLoading = true;
|
||||||
const res = await this.$API.orders.order.maintenance.submit.post(params);
|
const res = await this.$API.orders.order.maintenance.submit.post(params);
|
||||||
@ -157,8 +157,11 @@ export default {
|
|||||||
if(this.info.component_info.length>0){
|
if(this.info.component_info.length>0){
|
||||||
this.info.component_info.forEach((item,index)=>{
|
this.info.component_info.forEach((item,index)=>{
|
||||||
if(index == data.num || (data.id && item.id == data.id)){
|
if(index == data.num || (data.id && item.id == data.id)){
|
||||||
item = data;
|
|
||||||
item.num = index;
|
item.num = index;
|
||||||
|
item.component_manufacturer = data.component_manufacturer;
|
||||||
|
item.component_model = data.component_model;
|
||||||
|
item.component_pn = data.component_pn;
|
||||||
|
item.component_serial_no = data.component_serial_no;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}else{
|
}else{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user