diff --git a/src/views/statistics/total_statistics.vue b/src/views/statistics/total_statistics.vue index a934534f..55c5dab3 100644 --- a/src/views/statistics/total_statistics.vue +++ b/src/views/statistics/total_statistics.vue @@ -65,13 +65,13 @@ - + + - + + + @@ -110,6 +110,7 @@ + @@ -119,12 +120,13 @@ + + - + + + @@ -149,6 +151,8 @@ export default { date: "", }, currentDate: "", + models_b:[], + models_g:[], }; }, mounted() { @@ -170,45 +174,60 @@ export default { }, created() {}, methods: { - getCountOk() { + getCountOk(type,models) { let that = this; let params = { query: { start_date: that.query.date, end_date: that.query.date, - - // start_date: "2024-01-16", - // end_date: "2024-01-16", }, }; - that.$API.bi.dataset.exec - .req("count_ok_day", params) - .then((res) => { - let datas = res.data2.ds0; - if(datas.length>0){ + that.$API.bi.dataset.exec.req("count_ok_day", params).then((res) => { + let datas = res.data2.ds0; + if(datas.length>0){ + if(type=="b"){ datas.forEach((item) => { - let bang_model = "", - guan_model = ""; - if (item.型号.indexOf("+") > -1) { - bang_model = item.型号.split("+")[0]; - guan_model = item.型号.split("+")[1]; - } else { - bang_model = guan_model = item.型号; - } - that.tableData11.forEach((item1) => { - if (item1.版型 == bang_model) { - item1.检验合格数 += item.合格数; + let b_model = ""; + if (item.型号.indexOf("+") > -1) { + b_model = item.型号.split("+")[0]; + } else { + b_model = guan_model = item.型号; + } + let index = models.indexOf(b_model); + if(index>-1){ + if(item.检验类型=='prod'){ + that.tableData11[index].中检合格数 += item.合格数; + }else if(item.检验类型=='process'){ + that.tableData11[index].检验合格数 += item.合格数; + } } }); - that.tableData22.forEach((item2) => { - if (item2.版型 == guan_model) { - item2.检验合格数 += item.合格数; + }else if(type=="g"){ + datas.forEach((item) => { + let g_model = "",g_spec = ""; + if (item.型号.indexOf("+") > -1) { + g_model = item.型号.split("+")[1]; + } else { + g_model = item.型号; + } + if (item.规格.indexOf("+") > -1) { + g_spec = item.规格.split("+")[1]; + } else { + g_spec = item.规格; + } + let msitem = g_model+g_spec; + let index = models.indexOf(msitem); + if(index>-1){ + if(item.检验类型=='prod'){ + that.tableData22[index].中检合格数 += item.合格数; + }else if(item.检验类型=='process'){ + that.tableData22[index].检验合格数 += item.合格数; + } } }); - }); } - - }); + } + }); }, //获取表格原始数据 getSourceData() { @@ -219,7 +238,6 @@ export default { obj.timex__day = that.day; obj.page = 0; that.$API.bi.dataset.record.req(obj).then((res) => { - // let res = that.mockData; let datas = res[0].result.data2; let data_b = [...datas.ds0, ...datas.ds2]; let data_g = [...datas.ds1, ...datas.ds3]; @@ -227,14 +245,12 @@ export default { that.data_g = data_g; that.getDataB(data_b); that.getDataG(data_g); - that.getCountOk(); }); }, //棒数据 getDataB(data) { let that = this; - let models = [], - dataArr = []; + let models = [],dataArr = []; //按版型(型号)分组 data.forEach((item) => { let index = 0; @@ -268,20 +284,17 @@ export default { 抛光: 0, 开槽: 0, 配管: 0, + 成品库:0, 合计: 0, + 中检合格数: 0, 检验合格数: 0, }; itemArr.forEach((item1) => { obj.版型 = item1.型号; let key = ""; - if (item1.车间 == "7车间" && item1.工序 == "棒料成型") { + if (item1.车间 == "7车间") { key = "合格数"; - } else if (!item1.车间) { - key = "仓库库存"; - } else if ( - item1.车间 == "6车间" && - item1.工序 == "棒料成型" - ) { + } else if (item1.车间 == "6车间" &&item1.工序 == "棒料成型") { key = "库存"; } else if (item1.车间 == "6车间" && item1.工序 == "平头") { key = "平头"; @@ -293,9 +306,18 @@ export default { key = "抛光"; } else if (item1.车间 == "6车间" && item1.工序 == "开槽") { key = "开槽"; - } else if (item1.工序 == "配管") { - key = "配管"; } + if (item1.车间==null||item1.车间==undefined) { + console.log( '仓库库存',item1); + console.log( item1.工序 !== "配管"&&item1.类型==10); + if (item1.工序 == "配管") { + key = "配管"; + }else if(item1.工序 !== "配管"&&item1.类型==10){ + key = "成品库"; + }else if(item1.工序 !== "配管"&&item1.类型==20){ + key = "仓库库存"; + } + } obj[key] += item1.数量; }); obj.合计 = @@ -307,9 +329,12 @@ export default { obj.粗中细 + obj.抛光 + obj.开槽 + - obj.配管; + obj.配管+ + obj.成品库; that.tableData11[index] = obj; }); + that.models_b = models; + that.getCountOk('b',models); }, //管数据 getDataG(data) { @@ -363,6 +388,7 @@ export default { }); //specArr已将同型号的数组中按规格分组 specArr.forEach((item3, index3) => { + let modelsspec = []; item3.forEach((item4) => { let obj = { 版型: "", @@ -374,52 +400,44 @@ export default { 开槽: 0, 倒角: 0, 配棒: 0, + 成品库:0, 合计: 0, + 中检合格数: 0, 检验合格数: 0, }; item4.forEach((item5) => { let key = ""; obj.版型 = item5.型号; - obj.规格 = item5.规格; - - if ( - item5.车间 == "10车间" && - item5.工序 == "管料成型" - ) { - key = "合格数"; - } else if (!item5.车间 && item5.工序 == "管料成型") { - key = "仓库库存"; - } else if ( - item5.车间 == "8车间" && - item5.工序 == "管料成型" - ) { - key = "仓库库存"; - } else if ( - item5.车间 == "8车间" && - item5.工序 == "管料退火" - ) { - key = "退火"; - } else if ( - item5.车间 == "6车间" && - item5.工序 == "管料退火" - ) { - key = "库存"; - } else if ( - item5.车间 == "6车间" && - item5.工序 == "开槽" - ) { - key = "开槽"; - } else if ( - item5.车间 == "6车间" && - item5.工序 == "倒角" - ) { - key = "倒角"; - } else if ( - item5.车间 == "6车间" && - item5.工序 == "配棒" - ) { - key = "配棒"; + if (item5.规格.indexOf("+") > -1) { + let spec = item5.规格.split("+")[1]; + obj.规格 = spec; + }else{ + obj.规格 = item5.规格; } + if (item5.车间 == "10车间") { + key = "合格数"; + }else if (item5.车间 == "8车间" &&item5.工序 == "管料成型") { + key = "仓库库存"; + } else if (item5.车间 == "8车间" &&item5.工序 == "管料退火") { + key = "退火"; + } else if (item5.车间 == "6车间" &&item5.工序 == "管料退火") { + key = "库存"; + } else if (item5.车间 == "6车间" &&item5.工序 == "开槽") { + key = "开槽"; + } else if (item5.车间 == "6车间" &&item5.工序 == "倒角") { + key = "倒角"; + } + if (item5.车间==null||item5.车间==undefined) { + console.log( '仓库库存',item5); + console.log( item5.工序 !== "配管"&&item5.类型==10); + if (item5.工序 == "配管") { + key = "配棒"; + }else if(item5.工序 !== "配管"&&item5.类型==10){ + key = "成品库"; + }else if(item5.工序 !== "配管"&&item5.类型==20){ + key = "仓库库存"; + } + } obj[key] = obj[key] + item5.数量; }); obj.合计 = @@ -429,10 +447,15 @@ export default { obj.库存 + obj.开槽 + obj.倒角 + - obj.配棒; + obj.配棒+ + obj.成品库; that.tableData22.push(obj); + let modelsspecitem = obj.版型+obj.规格; + modelsspec.push(modelsspecitem); }); }); + that.models_g = models; + that.getCountOk('g',models); }, handleQuery() { let that = this;