|
@@ -9,7 +9,7 @@
|
|
|
<el-button @click="imp" style="margin-left: 10px;">导出</el-button>
|
|
|
</div>
|
|
|
<div class="bpb_orderlist">
|
|
|
- <div ref="bpb_orderlist_title" class="bpb_order_num fontcolor">
|
|
|
+ <div ref="bpb_orderlist_title" class="bpb_order_num fontcolor" @click="showAllOrderList">
|
|
|
<template v-if="orderQueryState==2">订单数:<b>{{ orderlist.length }}</b></template>
|
|
|
</div>
|
|
|
<div class="itemlist" ref="orderItemList">
|
|
@@ -98,7 +98,7 @@
|
|
|
</div>
|
|
|
<div class="bpb_order_resultlist" ref="bpb_order_resultlist" style="left:inherit;right: 50px;top:calc(0.7*710px)">
|
|
|
<div ref="bpb_order_resultlist_title" class="bpb_order_num fontcolor">
|
|
|
- <div v-if="plcPredictState==2">预测结果</div>
|
|
|
+ <div v-if="plcPredictState==2">预测结果 <b>{{ order_result_data.length }}</b></div>
|
|
|
</div>
|
|
|
<div class="itemlist" v-show="plcPredictState==2">
|
|
|
<div :class="item.isalarm?'bpb_order_item alarm': 'bpb_order_item'" v-for="item in order_result_data" :key="item.id" :style="{zIndex:item.zindex,top:item.top,left:item.left,transition:transition}">
|
|
@@ -115,6 +115,19 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="abs order_all" ref="order_list_all" v-if="allOrderListShow">
|
|
|
+ <div class="triangle2"></div>
|
|
|
+ <div class="triangle"></div>
|
|
|
+ <el-table :data="orderlist" style="height: 360px;" @selection-change="selectValues">
|
|
|
+ <el-table-column type="selection" width="55" />
|
|
|
+ <el-table-column label="订单编号" align="center" prop="orderCode" />
|
|
|
+ <el-table-column label="订单时间" align="center" prop="orderDate" />
|
|
|
+ </el-table>
|
|
|
+ <div style="line-height: 40px;text-align: center;">
|
|
|
+ <el-button @click="okOrderWin">确定</el-button>
|
|
|
+ <el-button @click="closeOrderWin">关闭</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<style>
|
|
|
@import '../../styles/bpb.css';
|
|
@@ -148,10 +161,13 @@ export default {
|
|
|
const selectedDate1 = ref("");
|
|
|
const selectedDate2 = ref("");
|
|
|
const days = ref(10);
|
|
|
+ const allOrderListShow = ref(false);
|
|
|
+ const allOrderResultShow = ref(false);
|
|
|
let selectPredictOrders = ref([]);
|
|
|
let orderlist=ref([]);
|
|
|
let orderlistTop5 = ref([]);
|
|
|
let bpb_mt_item_data = ref([]);
|
|
|
+ const order_list_all = ref(null);
|
|
|
const bpb_orderlist_title = ref(null);
|
|
|
const bpb_order_resultlist_title =ref(null);
|
|
|
const orderItemList = ref(null);
|
|
@@ -182,7 +198,6 @@ export default {
|
|
|
"days":days.value,
|
|
|
};
|
|
|
api.GetOrderList(v).then((res) => {
|
|
|
- console.log(res);
|
|
|
if(res==null){
|
|
|
return;
|
|
|
}
|
|
@@ -208,6 +223,7 @@ export default {
|
|
|
getOrderDateList();
|
|
|
}
|
|
|
function start(){
|
|
|
+ allOrderListShow.value=false;
|
|
|
orderQueryState.value = 0;
|
|
|
storageQueryState.value = 0;
|
|
|
plcPredictState.value = 0;
|
|
@@ -272,7 +288,7 @@ export default {
|
|
|
});
|
|
|
}
|
|
|
function date1Changed(v){
|
|
|
- console.log(v)
|
|
|
+ allOrderListShow.value=false;
|
|
|
var ind = false;
|
|
|
var datelist2 = [];
|
|
|
selectedDate2.value = "";
|
|
@@ -376,14 +392,14 @@ export default {
|
|
|
const element = selectPredictOrders.value[index];
|
|
|
var isalarm=false;
|
|
|
var neednum = 0;
|
|
|
- for (let index2 = 0; index2 < element.bomlist.length; index2++) {
|
|
|
- const element2 = element.bomlist[index2];
|
|
|
+ for (let index2 = 0; index2 < (element.bomlist||element.bomList).length; index2++) {
|
|
|
+ const element2 = (element.bomlist||element.bomList)[index2];
|
|
|
if(boms[element2.bomCode]!=null){
|
|
|
neednum = boms[element2.bomCode].cz;
|
|
|
if(neednum>0) isalarm = true;
|
|
|
}
|
|
|
}
|
|
|
- temp2.push({id:element.id,isalarm:isalarm,neednum:neednum})
|
|
|
+ temp2.push({id:element.id||element.orderCode,isalarm:isalarm,neednum:neednum})
|
|
|
}
|
|
|
order_result_data.value = temp2;
|
|
|
setTimeout(() => {
|
|
@@ -406,7 +422,64 @@ export default {
|
|
|
}, 1000);
|
|
|
}
|
|
|
|
|
|
+ function showAllOrderList(){
|
|
|
+ //if(orderlist.value.length<= orderlistTop5.value.length) return;
|
|
|
+ allOrderListShow.value = true;
|
|
|
+ setTimeout(() => {
|
|
|
+ order_list_all.value.style.top = bpb_orderlist_title.value.offsetTop+'px';
|
|
|
+ order_list_all.value.style.left = bpb_orderlist_title.value.parentElement.offsetLeft+parseInt( window.getComputedStyle(bpb_orderlist_title.value.parentElement).width)+'px';
|
|
|
+ }, 20);
|
|
|
+ }
|
|
|
+ function selectValues(vs){
|
|
|
+ //console.log(vs)
|
|
|
+ selectPredictOrders.value = vs;
|
|
|
+ let tmpLst = orderlistTop5.value;
|
|
|
+ tmpLst.forEach((item,ind)=>{
|
|
|
+ var d = vs.filter((ele)=> ele.orderCode==item.orderCode);
|
|
|
+ if(d.length>0){
|
|
|
+ item.checked = true;
|
|
|
+ }else{
|
|
|
+ item.checked=false;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ function okOrderWin(){
|
|
|
+ storageQueryState.value = 0;
|
|
|
+ plcPredictState.value = 0;
|
|
|
+ bpb_mt_item_data.value = [];
|
|
|
+ order_result_data.value = [];
|
|
|
+ for(var key in selectPredictOrders.value){
|
|
|
+ var ele = selectPredictOrders.value[key];
|
|
|
+ for (let index = 0; index < ele.bomList.length; index++) {
|
|
|
+ const element = ele.bomList[index];
|
|
|
+ const xql = element.xql;
|
|
|
+ if(boms[element.bomCode]==null) boms[element.bomCode] = element;
|
|
|
+ else boms[element.bomCode].xql = boms[element.bomCode].xql + xql;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //物料清单信息
|
|
|
+ var temp1 = [];
|
|
|
+ for(let key in boms){
|
|
|
+ temp1.push({id:boms[key].bomCode,name:boms[key].bomName,bomSpec:boms[key].bomSpec,need:boms[key].xql,'storage':null,plc:null,isalarm:false});
|
|
|
+ }
|
|
|
+ let tempLst=[];
|
|
|
+ temp1.forEach((item,ind) => {
|
|
|
+ let top=11+(ind*30)+'px';
|
|
|
+ let zindex = 100-ind;
|
|
|
+ let left = 272+(ind*-53)+'px';
|
|
|
+ let obj = {"id":item.id,name:item.name,bomSpec:item.bomSpec,"top":top,"zindex":zindex,"left":left,"isalarm":item.isalarm,need:item.need,storage:item.storage,plc:item.plc};
|
|
|
+ tempLst.push(obj);
|
|
|
+ });
|
|
|
+ bpb_mt_item_data.value = tempLst;
|
|
|
+ queryStorage();
|
|
|
+ allOrderListShow.value=false;
|
|
|
+ }
|
|
|
+ function closeOrderWin(){
|
|
|
+ allOrderListShow.value=false;
|
|
|
+ }
|
|
|
+
|
|
|
function imp(){
|
|
|
+ allOrderListShow.value=false;
|
|
|
let uri = process.env.VUE_APP_API + "/api/export/order?start=" + selectedDate1.value + "&end=" + selectedDate2.value + "&days=" + days.value;
|
|
|
//proxy.download(uri, {}, `白坯布靶向智能生产预测${selectedDate1.value}至${selectedDate2.value}.zip`)
|
|
|
window.open(uri);
|
|
@@ -433,6 +506,7 @@ export default {
|
|
|
order_result_data,
|
|
|
selectedOrder,
|
|
|
queryStorage,
|
|
|
+ order_list_all,
|
|
|
bpb_orderlist_title,
|
|
|
bpb_order_resultlist_title,
|
|
|
orderItemList,
|
|
@@ -451,6 +525,12 @@ export default {
|
|
|
bpb_order_resultlist,
|
|
|
getOrderDateList,
|
|
|
date1Changed,
|
|
|
+ showAllOrderList,
|
|
|
+ allOrderListShow,
|
|
|
+ allOrderResultShow,
|
|
|
+ okOrderWin,
|
|
|
+ closeOrderWin,
|
|
|
+ selectValues,
|
|
|
}
|
|
|
}
|
|
|
}
|