xiaost пре 6 месеци
родитељ
комит
cb615b1013

+ 1 - 1
src/components/prodlinechart/up1Chart/up1DChart/index.vue

@@ -4,7 +4,7 @@
     <Echart
         :options="options"
         :id="id"
-        height="110px"
+        height="125px"
         width="140px"
     ></Echart>
   </div>

+ 93 - 26
src/views/prodline/up1.vue

@@ -9,16 +9,20 @@
       </div>
       <div class="body-box">
         <div class="percent mt-2">
-          <div class="item "   v-for="item in rate"
+          <div class="item mt-3"   v-for="item in rate"
                :key="item.id">
-            <span>{{ item.title }}</span>
+            <span class="mb-2">{{ item.title }}</span>
             <CenterChart
                 :id="item.id"
                 :tips="item.tips"
                 :colorObj="item.colorData"
             />
           </div>
-          <div class="d-flex jc-center body-box">
+          <div class ="item2">
+            <span class="fs-xl mx-2 d-flex jc-center">设备提醒信息</span>
+            <dv-scroll-board :config="config1" ref="scroll-board1" />
+          </div>
+          <div class="d-flex jc-center body-box2">
             <dv-scroll-board :config="config" ref="scroll-board" />
           </div>
         </div>
@@ -37,7 +41,7 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
         config: {
           header: ['设备编号','设备名称', '运行状态','维保状态'],
           data: [],
-          rowNum: 6, //表格行数
+          rowNum: 4, //表格行数
           headerHeight: 40,
           headerBGC: 'rgba(15,19,37,0.1)', //表头
           oddRowBGC: 'rgba(15,19,37,0.1)', //奇数行
@@ -45,6 +49,17 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
           columnWidth: [100,180, 110,110],
           align: ['center','center','center','center'],
         },
+        config1: {
+          header: ['设备编号','提醒事项'],
+          data: [],
+          rowNum: 4, //表格行数
+          headerHeight: 40,
+          headerBGC: 'rgba(15,19,37,0.1)', //表头
+          oddRowBGC: 'rgba(15,19,37,0.1)', //奇数行
+          evenRowBGC: 'rgba(23,28,51,0.1)', //偶数行
+          columnWidth: [100,180],
+          align: ['center','center'],
+        },
         timing:null,
         rate: [
           {
@@ -61,7 +76,7 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
               }
             }
           },
-          {
+         /* {
             id: 'centerRate2',
             tips: 60,
             colorData: {
@@ -88,7 +103,7 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
                 }
               }
             }
-          },
+          },*/
         ]
       }
     },
@@ -106,19 +121,23 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
         }, 10000);
       },
       async getdata() {
-        //饼图pie,设备保养执行
+        //今日保养完成
         await this.$http.get("kanban/datalist.action?caller=KB!LINEDEVICEMAINTAINRATE&_noc=1&page=1&pageSize=100",{
           params: {
             condition: "de_workshop='"+sessionStorage.getItem('li_code')+"'"
           }
-        })
-            .then((result)=>{
+        }).then((result)=>{
                   let dataList = JSON.parse(result.data.data);
-                  for (let index = 0; index < dataList.length; index++) {
+                  if (dataList.length > 0) {
+                    const element = dataList[0];
+                    this.rate[0].tips = element.rate;
+                    this.rate[0].title = element.title;
+                  }
+                 /* for (let index = 0; index < dataList.length; index++) {
                     const element = dataList[index];
                     this.rate[index].tips = element.rate;
                     this.rate[index].title = element.title;
-                  }
+                  }*/
                 },(result)=>{
                   console.error(result)
                 }
@@ -159,6 +178,32 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
               console.error(result)
             }
         );
+
+        //设备提醒信息
+        caller = 'KB!LINEDEVICEREMIND';
+        await this.$http.get("kanban/datalist.action?caller=" + caller + "&_noc=1&page=1&pageSize=100", {
+          params: {
+            condition: "de_workshop='"+sessionStorage.getItem('li_code')+"'"
+          }
+        }).then((result) => {
+              let dataList = JSON.parse(result.data.data);
+              let resultList = new Array();
+              for (let index = 0; index < dataList.length; index++) {
+                const element = dataList[index];
+                let item = new Array();
+                item.push("<span  class='colorGrass fs-xl'>" + element.de_code + "</span>");
+                item.push("<span  class='colorGrass fs-xl'>" + element.v_remind + "</span>");
+                resultList.push(item);
+              }
+              const scrollBoard1 = this.$refs['scroll-board1'];
+              //刷新数据
+              scrollBoard1.updateRows(resultList);
+              this.config1.data = resultList;
+              this.config1 = { ...this.config1 };
+            }, (result) => {
+              console.error(result)
+            }
+        );
       }
     }
   }
@@ -192,7 +237,7 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
         display: flex;
         flex-wrap: wrap;
         .item {
-          width: 33.3%;
+          width: 38%;
           height: 130px;
           span {
             //margin-top: 8px;
@@ -201,26 +246,48 @@ import CenterChart from "../../components/prodlinechart/up1Chart/up1DChart";
             justify-content: center;
           }
         }
-      }
-      ::v-deep .dv-scroll-board {
-
-        height: 230px;
-        padding-top: 0px; // 添加这行减少顶部间距
-        .header {
-          font-size: 20px !important;
-          color: #c3cbde !important;
+        .item2{
+          width: 62%;
+          ::v-deep .dv-scroll-board {
+            height: 170px;
+            padding-top: 0px; // 添加这行减少顶部间距
+            .header {
+              font-size: 20px !important;
+              color: #c3cbde !important;
+            }
+            .rows {
+              .row-item {
+                font-size: 10px !important;
+                color: #c3cbde !important;
+              }
+            }
+          }
+          ::v-deep .rows span {
+            font-size: 21px;
+          }
         }
+      }
 
-        .rows {
-          .row-item {
-            font-size: 10px !important;
+      .body-box2 {
+        ::v-deep .dv-scroll-board {
+          height: 190px;
+          padding-top: 0px; // 添加这行减少顶部间距
+          .header {
+            font-size: 20px !important;
             color: #c3cbde !important;
           }
+
+          .rows {
+            .row-item {
+              font-size: 10px !important;
+              color: #c3cbde !important;
+            }
+          }
         }
-      }
 
-      ::v-deep .rows span{
-        font-size: 21px;
+        ::v-deep .rows span {
+          font-size: 21px;
+        }
       }
     }
 

+ 11 - 4
src/views/warehouse/up2.vue

@@ -34,9 +34,13 @@
       <div class="down">
         <div class="body-box">
           <div class="d-flex jc-center fs-xxl fw-b rate flex-column">
-            <div>需备料物料数:{{finishQty}} </div>
-            <div class="mt-3">已完成备料数:{{unfinishQty}}</div>
-            <div class="mt-3">备料完成比例:{{finishrate}}</div>
+            <span class="fs-xxl text mx-2 fw-b mb-5">
+              备料状况
+            </span>
+            <div >待备料单数:{{unfinishQty}} </div>
+            <div class="mt-3">今日已备料单数:{{finishQty}}</div>
+            <div class="mt-3">今天备料完成比例:{{finishrate}}</div>
+            <div class="mt-3">昨日备料完成比例:{{yestfinishrate}}</div>
           </div>
         </div>
       </div>
@@ -55,6 +59,7 @@ export default {
       finishQty:0,
       unfinishQty:0,
       finishrate:'',
+      yestfinishrate :'',
       inQty:10000,
       outQty:10000,
     }
@@ -80,6 +85,7 @@ export default {
       this.inQty = 0;
       this.outQty = 0;
       this.finishrate="";
+      this.yestfinishrate=""
       //备料完成情况
       caller = 'KB!WHPREMADEData1';
       await this.$http.get("kanban/datalist.action?caller="+caller+"&_noc=1&page=1&pageSize=100",{
@@ -109,6 +115,7 @@ export default {
               this.finishQty = dataList[0].finishqty;
               this.unfinishQty = dataList[0].unfinishqty;
               this.finishrate = dataList[0].finishrate;
+              this.yestfinishrate = dataList[0].yestfinishrate;
             }
           }, (result) => {
             console.error(result)
@@ -144,7 +151,7 @@ $box-width: 100%;
 
   .down {
     width: 100%;
-    margin-top: 60px;
+    margin-top: 15px;
     .rate{
       justify-content: center; /* 水平居中 */
       align-items: center;

+ 98 - 20
src/views/warehouse/up3.vue

@@ -2,18 +2,47 @@
   <div id="up3">
     <div class="bg-color-black">
       <div class="d-flex pt-2 pl-2 jc-center pb-2 mb-2">
-        <span class="fs-xxxl text mx-2 fw-b">来料入库信息</span>
+        <span class="fs-xxxl text mx-2 fw-b">今日来料入库信息</span>
       </div>
-      <div class="d-flex jc-center body-box">
-        <dv-scroll-board :config="config" ref="scroll-board" />
+      <div class="up">
+        <div class=" body-box d-flex">
+          <div class="item d-flex jc-center flex-column">
+            <div class="location">
+              <div class="circle-hollow">
+                <div class="info">
+                  <h2 class="pb-2">{{needinQty}}</h2>
+                  <p class="fs-xxl pt-2">
+                    待入库单数
+                  </p>
+                </div>
+              </div>
+            </div>
+          </div>
+          <div class="item d-flex jc-center flex-column">
+            <div class="circle-hollow">
+              <div class="info">
+                <h2 class="pb-2">{{inQty}}</h2>
+                <p class="fs-xxl pt-2">
+                  已入库单数
+                </p>
+              </div>
+            </div>
+          </div>
+        </div>
       </div>
+
       <div class="down">
+        <div class="d-flex jc-center body-box">
+          <dv-scroll-board :config="config" ref="scroll-board" />
+        </div>
+      </div>
+<!--      <div class="down">
         <div class="body-box">
           <div class="d-flex jc-center fs-xxl fw-b rate flex-column">
             <div class="mt-3">入库完成比例:{{finishrate}}</div>
           </div>
         </div>
-      </div>
+      </div>-->
     </div>
   </div>
 </template>
@@ -27,7 +56,7 @@ export default {
       config: {
         header: ['物料编号','物料名称','送检数量','入库数量'],
         data: [],
-        rowNum: 10, //表格行数
+        rowNum: 5, //表格行数
         headerHeight: 40,
         headerBGC: 'rgba(15,19,37,0.1)', //表头
         oddRowBGC: 'rgba(15,19,37,0.1)', //奇数行
@@ -36,6 +65,8 @@ export default {
         align: ['center','center','center','center']
       },
       timing: null,
+      inQty:10000,
+      needinQty:10000,
     }
   },
   mounted() {
@@ -53,7 +84,23 @@ export default {
     },
 
     async getdata() {
-      var caller = 'KB!WHALERTDATA';
+      var  caller = 'KB!WHINDATA';
+      await this.$http.get("kanban/datalist.action?caller="+caller+"&_noc=1&page=1&pageSize=100",{
+        params: {
+          condition: "1=1"
+        }
+      }).then((result) => {
+            let dataList = JSON.parse(result.data.data);
+            if(dataList.length>0){
+              this.inQty = dataList[0].inqty;
+              this.needinQty = dataList[0].needinqty;  //待入库单数
+            }
+          }, (result) => {
+            console.error(result)
+          }
+      );
+
+      caller = 'KB!WHALERTDATA';
       await this.$http.get("kanban/datalist.action?caller=" + caller + "&_noc=1&page=1&pageSize=100", {
         params: {
           condition: "1=1" ,
@@ -77,7 +124,7 @@ export default {
               }
           );
 
-      caller = 'KB!WHPREMADERate';
+    /*  caller = 'KB!WHPREMADERate';
       await this.$http.get("kanban/datalist.action?caller="+caller+"&_noc=1&page=1&pageSize=100",{
         params: {
           condition: "1=1"
@@ -90,7 +137,7 @@ export default {
           }, (result) => {
             console.error(result)
           }
-      );
+      );*/
 
     }
   }
@@ -116,25 +163,56 @@ $box-width: 100%;
     //font-size: 15px;
   }
 
-  .down {
-    width: 100%;
-    .rate{
-      justify-content: center; /* 水平居中 */
+  .up{
+    .body-box {
+      margin-top: 30px;
+      flex-wrap: wrap;
+      justify-content: space-around;
+    }
+
+    .item {
+      width: 50%;
       align-items: center;
+      /*.location{
+         position: absolute;
+         left: 20%;
+      }*/
+      .circle-hollow {
+        width: 170px;
+        height: 170px;
+        border: 3px solid #4ecdc4; /* 边框样式 */
+        border-radius: 50%;
+        background-color: transparent; /* 透明背景 */
+        display: flex;
+        justify-content: center;
+        align-items: center;
+        letter-spacing:2px;
+        flex-direction: column; /* 文字垂直排列 */
+        box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* 阴影效果 */
+        .info{
+          text-align: center;
+          width: 140px;
+          p{
+            border-top: 1px solid #ddd;
+          }
+        }
+      }
     }
   }
 
-  .body-box {
-    width: $box-width;
-
-    .dv-scroll-board .header {
-      font-size: 20px;
-    }
+  .down {
+    width: 100%;
+    .body-box {
+      .dv-scroll-board .header {
+        font-size: 20px;
+      }
 
-    .dv-scroll-board {
-      height: $box-height - 140px;
+      .dv-scroll-board {
+        height: $box-height - 255px;
+      }
     }
   }
 
+
 }
 </style>