From 12ef895481038a7bec06a2c6cb47748a6353e848 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期四, 11 五月 2023 17:35:04 +0800
Subject: [PATCH] 1.生产进度报表提交
---
src/views/kb/zhkb.vue | 204 ++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 178 insertions(+), 26 deletions(-)
diff --git a/src/views/kb/zhkb.vue b/src/views/kb/zhkb.vue
index 2bdb36a..d329be0 100644
--- a/src/views/kb/zhkb.vue
+++ b/src/views/kb/zhkb.vue
@@ -24,11 +24,30 @@
<!-- <svg-icon icon-class="sccx" />-->
浜х嚎鍔犲伐涓换鍔�
<div style="margin-left: 30px">{{ number1 }} 鍗�</div>
+ <div style="display: flex;margin-left: 25px;">
+
+ <div class="circle" style="background-color: rgb(255 255 255)" />
+ <div style="margin-left: 10px">鏈紑濮�</div>
+
+ <!-- <div class="circle" style="margin-left: 10px;background-color: blue;" />-->
+ <!-- <div style="margin-left: 10px">寮�宸�</div>-->
+
+ <div class="circleYellow" style="margin-left: 10px" />
+ <div style="margin-left: 10px">鎵ц涓�</div>
+
+ <div class="circle" style="margin-left: 10px" />
+ <div style="margin-left: 10px">瀹屽伐</div>
+
+ </div>
</div>
<div class="kb_left_top kb_pd10">
<div class="kb_left_top02">
- <div v-for="item in lineContent3" :key="item.workcode" class="kb_left_top_block">
+ <div
+ v-for="item in lineContent3"
+ :key="item.workcode+JSON.stringify(item.children[0])"
+ class="kb_left_top_block"
+ >
<div class="kb_block02 kb_pd10">
<div>
<div>閿�鍞崟鍙�:{{ item.saleordercode }}</div>
@@ -76,13 +95,13 @@
class="kb_block03_02_content flex_c_c"
>
<div class="flex_c_c content01">
+ <!-- <div-->
+ <!-- v-if="it.status==='START'&&(parseFloat(it.ngqty)===0||it.ngqty==='')&&(parseFloat(it.goodqty)===0||it.goodqty==='')"-->
+ <!-- class="circle"-->
+ <!-- style="background-color: blue;"-->
+ <!-- />-->
<div
- v-if="it.status==='START'&&(parseFloat(it.ngqty)===0||it.ngqty==='')&&(parseFloat(it.goodqty)===0||it.goodqty==='')"
- class="circle"
- style="background-color: blue;"
- />
- <div
- v-else-if="it.status==='ALLO'&&(parseFloat(it.ngqty)===0||it.ngqty==='')&&(parseFloat(it.goodqty)===0||it.goodqty==='')"
+ v-if="it.status==='ALLO'&&(parseFloat(it.ngqty)===0||it.ngqty==='')&&(parseFloat(it.goodqty)===0||it.goodqty==='')"
class="circle"
style="background-color: rgb(255 255 255)"
/>
@@ -137,7 +156,8 @@
width="115"
>
<template slot-scope="{row}">
- <div>{{ row.lm_date.substring(0, 10) }}</div>
+ <div v-if="row.lm_date">{{ row.lm_date.substring(0, 10) }}</div>
+ <div v-else>/</div>
</template>
</el-table-column>
<el-table-column
@@ -163,7 +183,7 @@
<el-table-column
prop="partname"
label="浜у搧鍚嶇О"
- width="150"
+ width="295"
>
<template slot-scope="{row}">
<div v-if="row.partname" class="ellipsis">{{ row.partname }}</div>
@@ -195,27 +215,28 @@
label="瀹屽伐鏁伴噺"
width="85"
/>
- <el-table-column
- prop="ng_qty"
- label="涓嶈壇鏁伴噺"
- width="85"
- />
- <el-table-column
- prop="wcl"
- label="瀹屾垚鐜�"
- width="60"
- >
- <template slot-scope="{row}">
- <div>{{ parseFloat((row.good_qty * 100 / row.plan_qty).toFixed(2)) }}%</div>
- </template>
- </el-table-column>
+ <!-- <el-table-column-->
+ <!-- prop="ng_qty"-->
+ <!-- label="涓嶈壇鏁伴噺"-->
+ <!-- width="85"-->
+ <!-- />-->
+ <!-- <el-table-column-->
+ <!-- prop="wcl"-->
+ <!-- label="瀹屾垚鐜�"-->
+ <!-- width="60"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- <div>{{ parseFloat((row.good_qty * 100 / row.plan_qty).toFixed(2)) }}%</div>-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
<el-table-column
prop="planstartdate"
label="棰勮寮�濮�"
width="115"
>
<template slot-scope="{row}">
- <div>{{ row.planstartdate.substring(0, 10) }}</div>
+ <div v-if="row.planstartdate">{{ row.planstartdate.substring(0, 10) }}</div>
+ <div v-else>/</div>
</template>
</el-table-column>
<el-table-column
@@ -224,7 +245,8 @@
width="125"
>
<template slot-scope="{row}">
- <div>{{ row.planenddate.substring(0, 10) }}</div>
+ <div v-if="row.planenddate">{{ row.planenddate.substring(0, 10) }}</div>
+ <div v-else>/</div>
</template>
</el-table-column>
</el-table>
@@ -458,6 +480,125 @@
getShopSearchLine() {
let length, count
LineSearchTopLeftData({ shopcode: this.ShopArr.join(',') }).then(res => {
+ this.lineContent = res.data // 璋冪敤鎺ュ彛杩斿洖鐨勬暟鎹�
+ this.number1 = this.lineContent.length // 浜х嚎鍔犲伐涓换鍔� 鍗曟暟
+
+ const newData = []
+ if (this.lineContent.length > 0) {
+ this.lineContent.forEach(item => {
+ if (item.children.length > 5) {
+ newData.push({
+ workcode: item.workcode,
+ partname: item.partname,
+ partnumber: item.partnumber,
+ partspec: item.partspec,
+ qty: item.qty,
+ saleordercode: item.saleordercode,
+ uom: item.uom,
+ children: item.children.slice(0, 5)
+ })
+
+ newData.push({
+ workcode: item.workcode,
+ partname: item.partname,
+ partnumber: item.partnumber,
+ partspec: item.partspec,
+ qty: item.qty,
+ saleordercode: item.saleordercode,
+ uom: item.uom,
+ children: item.children.slice(5, 8)
+ })
+ } else {
+ newData.push({
+ workcode: item.workcode,
+ partname: item.partname,
+ partnumber: item.partnumber,
+ partspec: item.partspec,
+ qty: item.qty,
+ saleordercode: item.saleordercode,
+ uom: item.uom,
+ children: item.children
+ })
+ }
+ })
+
+ console.log(newData.length, 9777)
+ }
+
+ this.lineContent = newData
+ length = this.lineContent.length
+ count = Math.ceil(length / 3) // 闇�瑕佽疆鎾殑缁勬暟 3涓负涓�缁�
+ this.lineContent3 = this.lineContent.slice(0, 3)
+ })
+
+ let start = 0
+ this.ShopSearchLineTask = setInterval(() => {
+ if (Math.floor(start / 3) === count && count !== 0) {
+ start = 0
+ LineSearchTopLeftData({ shopcode: this.ShopArr.join(',') }).then(res => {
+ this.lineContent = res.data // 璋冪敤鎺ュ彛杩斿洖鐨勬暟鎹�
+ this.number1 = this.lineContent.length // 浜х嚎鍔犲伐涓换鍔� 鍗曟暟
+
+ const newData = []
+ if (this.lineContent.length > 0) {
+ this.lineContent.forEach(item => {
+ if (item.children.length > 5) {
+ newData.push({
+ workcode: item.workcode,
+ partname: item.partname,
+ partnumber: item.partnumber,
+ partspec: item.partspec,
+ qty: item.qty,
+ saleordercode: item.saleordercode,
+ uom: item.uom,
+ children: item.children.slice(0, 5)
+ }
+ )
+
+ newData.push({
+ workcode: item.workcode,
+ partname: item.partname,
+ partnumber: item.partnumber,
+ partspec: item.partspec,
+ qty: item.qty,
+ saleordercode: item.saleordercode,
+ uom: item.uom,
+ children: item.children.slice(5, 8)
+ })
+ } else {
+ newData.push({
+ workcode: item.workcode,
+ partname: item.partname,
+ partnumber: item.partnumber,
+ partspec: item.partspec,
+ qty: item.qty,
+ saleordercode: item.saleordercode,
+ uom: item.uom,
+ children: item.children
+ })
+ }
+ })
+ }
+
+ this.lineContent = newData
+ length = this.lineContent.length
+ count = Math.ceil(length / 3) // 闇�瑕佽疆鎾殑缁勬暟 3涓负涓�缁�
+ this.lineContent3 = this.lineContent.slice(0, 3)
+ })
+ } else if (count === 0) {
+ clearInterval(this.ShopSearchLineTask)
+ this.getShopSearchLine()
+ }
+
+ this.lineContent3 = this.lineContent.slice(start, start + 3)
+ start = start + 3
+ }, 1000 * 3)
+ },
+
+ // 浜х嚎鍔犲伐涓换鍔� 澶囦唤鏂规硶
+ getShopSearchLine2() {
+ let length, count
+ LineSearchTopLeftData({ shopcode: this.ShopArr.join(',') }).then(res => {
this.lineContent = res.data
length = this.lineContent.length
count = Math.ceil(length / 3) // 闇�瑕佽疆鎾殑缁勬暟 3涓负涓�缁�
@@ -512,7 +653,7 @@
}
})
}
- }, this.tableData.length <= 10 ? 1000 * 3 : 100)
+ }, this.tableData.length <= 10 ? 1000 * 15 : 100)
})
},
// 褰撴棩瀹屽伐浜у搧鏁伴噺鎺掕
@@ -840,4 +981,15 @@
background-color: rgb(255 255 0);
border-radius: 50%;
}
+
+::v-deep .el-table__body-wrapper{
+ overflow: hidden !important;
+}
+
+.circle {
+ width: 26px;
+ height: 26px;
+ background-color: #00ff8b;
+ border-radius: 50%;
+}
</style>
--
Gitblit v1.9.3