Jelajahi Sumber

中控数据

敲代码的猫 3 bulan lalu
induk
melakukan
fa1c349af1

+ 7 - 1
src/api/screen/service.js

@@ -465,7 +465,13 @@ export function waterStatistics() {
     method: 'get'
   })
 }
-
+/*------------------办公能耗-------------------*/
+export function airOverview() {
+  return request({
+    url: '/large/first/air',
+    method: 'get'
+  })
+}
 
 /*视频*/
 //统一视频(工程现场监控)

TEMPAT SAMPAH
src/assets/images/main/dialog-bg-high.png


+ 369 - 0
src/views/screen/building/alarmDevice.vue

@@ -0,0 +1,369 @@
+<template>
+    <div class="main-data data-weeks-foods">
+      <div class="title-area">楼宇中当前告警设备情况</div>
+
+      <div class="close-btn" @click="close"></div>
+      <div class="content-area">
+        <div class="content">
+          <div class="data-list">
+            <div class="table-cont">
+                <div class="table-top">
+                  <div class="flo">抽屉柜编号</div>
+                  <div class="pot">设备名称</div>
+                  <div class="spa">类别</div>
+                </div>
+                <div class="table-bot">
+                  <div class="table-list" v-for="(item,index) in floorDataList" :key="index">
+                    <div class="fir">{{item.number}}</div>
+                    <div class="snd">{{item.name}}</div>
+                    <div class="thr">{{item.type}}</div>
+                  </div>
+                </div>
+              </div>
+          </div>
+        </div>
+      </div>
+    </div>
+  </template>
+  
+  <script>
+  import { getFoodsList } from "@/api/screen/service";
+  import pinyin from "../data/pinyin.js";
+  
+  export default {
+    name: "WeekFoods",
+    props: {
+      week: {
+        type: String,
+        default: "",
+      },
+      appOrg: {
+        type: String,
+        default: "10001",
+      },
+    },
+    data() {
+      return {
+        floorDataList: [
+         { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+        { number: '1# 1-3', name: '消火栓泵' ,type:'消防'},
+     
+
+       ],
+        dataList: [],
+        weeks: ["周一", "周二", "周三", "周四", "周五"],
+        list: [],
+        foodsList: [],
+     
+        food: "早餐",
+        foods: ["早餐", "中餐", "晚餐"],
+        lists: [],
+        appOrgs:['10001','1D001','1K003','1J001','1E001','1J003','1K002','1J002','1K001','1A001']
+      };
+    },
+    created() {
+      this.getFoodsList();
+    },
+    destroyed() {},
+    beforeDestroy() {},
+    mounted() {},
+    methods: {
+      //获取数据概况
+      getFoodsList() {
+        let appOrg = this.$props.appOrg == '0000' ? '10001' : this.$props.appOrg;
+        if(this.appOrgs.indexOf(appOrg) == -1){
+          appOrg = "1J001";
+        }
+        getFoodsList(appOrg).then((res) => {
+          if (Number(res.code) === 200) {
+            let foodsList = JSON.parse(res.data.foodInfo);
+            this.foodsList = foodsList;
+            // 转换后的数据
+      const transformedData = {};
+  
+      // 映射关系
+      const dayMap = {"monday": "1","tuesday": "2","wednesday": "3","thursday": "4","friday": "5",};
+      const mealTypeMap = {"breakfast": "1", "lunch": "2", "dinner": "3"};
+  
+     // 遍历原始数据并转换
+     for (const day in foodsList) {
+    if (foodsList.hasOwnProperty(day)) {
+      const dayNumber = dayMap[day];
+      transformedData[dayNumber] = [];
+      for (const mealTypeKey in foodsList[day]) { 
+        if (foodsList[day].hasOwnProperty(mealTypeKey)) {
+          const mealTypeNumber = mealTypeMap[mealTypeKey];
+          foodsList[day][mealTypeKey].forEach(meal => {
+            const newDishes = [
+              {"name": meal.name, "type": mealTypeNumber},
+            ];
+            transformedData[dayNumber] = transformedData[dayNumber].concat(newDishes);
+          });
+        }
+      }
+    }
+  }
+        //console.log('888888888',JSON.parse(JSON.stringify(transformedData)));
+              this.foodsList=JSON.parse(JSON.stringify(transformedData))
+             let index = parseInt(this.weeks.indexOf(this.$props.week)) + 1;
+             let lists =JSON.parse(JSON.stringify(transformedData[index]));
+         
+            this.lists = lists;
+            // let list = foodsList[index];
+            // this.list = list;
+            //区分早中晚
+            let list = [];
+            let type = parseInt(this.foods.indexOf(this.food)) + 1;
+            let that = this;    
+       // 用于存储所有的"name"字段及其对应的餐次编号
+           lists.forEach((item) => {
+              if (item.type == type) {
+                //处理图片
+                // item.img = require('../../../assets/caidanImgs/'+ pinyin.chineseToPinYin(item.name) +'.jpg');
+                that.loadImage(item);
+                list.push(item);
+              }
+            });
+       this.list = list;
+          }
+        });
+      },
+   
+  
+      //默认显示暂无菜品
+      errorImg(item) {
+        item.img = require("@/assets/images/main/no-data.jpg");
+      },
+  
+      loadImage(item) {
+        try {
+          // 尝试加载图片
+          item.img = require("@/assets/caidanImgs/" +
+            pinyin.chineseToPinYin(item.name) +
+            ".jpg");
+        } catch (e) {
+          // 处理图片不存在的情况
+          item.img = require("@/assets/images/main/no-data.jpg"); // 使用默认图片
+        }
+      },
+  
+  
+ 
+  
+      close() {
+        this.$emit("closeFoods");
+      },
+    },
+  };
+  </script>
+  
+  <style lang="scss">
+
+  .data-weeks-foods {
+    position: relative;
+    width: 694px;
+    height: 620px;
+    background: url("../../../assets/images/main/dialog-bg-high.png") no-repeat;
+    background-size: cover;
+    .close-btn {
+      position: absolute;
+      right: 0;
+      top: 0;
+      width: 50px;
+      height: 50px;
+      cursor: pointer;
+    }
+    .choose-area {
+      position: absolute;
+      right: 100px;
+      top: 7px;
+      width: 80.05px;
+      height: 30px;
+      line-height: 30px;
+      padding-left: 15px;
+      font-size: 14px;
+      color: #00ffff;
+      background: url("../../../assets/images/main/choose_short.png") no-repeat;
+      cursor: pointer;
+    }
+    .choose-area.choose-week{
+      right: 200px;
+    }
+    .content-area {
+      display: flex;
+      flex-direction: column;
+      padding: 15px 20px 0 15px;
+    }
+  
+    .content-title {
+      width: 515px;
+      height: 26px;
+      background: url("../../../assets/images/main/title_pro_long.png") no-repeat;
+      background-size: 100% 100%;
+      font-family: "PingFangSC";
+      font-size: 16px;
+      font-weight: bold;
+      color: #00ffff;
+      padding-left: 17px;
+      .title {
+        display: block;
+      }
+    }
+  
+    .content {
+      width: 100%;
+      display: flex;
+      flex-direction: row;
+      align-items: center;
+      .data-list {
+        background: radial-gradient(
+          190% 71% at 50% 49%,
+          rgba(21, 105, 107, 0.54) 0%,
+          rgba(27, 95, 97, 0) 100%
+        );
+        width: 100%;
+        height: 600px;
+        padding: 10px;
+        // overflow: auto;
+        white-space: pre-wrap;
+        .table-cont{
+    width:100%;
+
+    .table-top{
+      width:100%;
+      height: 50px;
+      background-color: #092B2C;
+      padding:0 25px 0 10px;
+      display: flex;
+      justify-content: space-between;
+      align-items: center;
+      font-size:18px;
+      color:#00FFFF;
+    }
+    .table-bot{
+      width:100%;
+    //   height: 165px;
+      overflow: auto;
+
+      .table-list{
+        width:100%;
+        height:45px;
+        padding:15px 25px 15px 0px;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+        font-size:16px;
+        color:#FFFFFF;
+        font-weight: 500;
+        //border: 1px dotted #14302F;
+      }
+    }
+    .flo{
+      width:33%;
+      text-align: center;
+    }
+    .pot{
+      width:33%;
+      text-align: center;
+    } 
+    .spa{
+      width:33%;
+      text-align: center;
+    }
+
+
+    .fir{
+      width:33%;
+      text-align: center;
+      border-left: 1px solid #40E5F2;
+    }
+    .snd{
+      width:33%;
+      text-align: center;
+    }
+    .thr{
+        width:33%;
+        text-align: center;
+    }
+
+    // .color{
+    //   color:#FF8C00;
+    // }
+  }
+      }
+    }
+  
+    .title-format {
+      display: flex;
+      flex-direction: row;
+      align-items: center;
+      img {
+        width: 6px;
+        height: 24px;
+        margin-right: 6px;
+      }
+      .title-info {
+        display: flex;
+        flex-direction: column;
+        font-size: 12px;
+        color: #ffffff;
+        .title-en {
+          font-size: 8px;
+          color: #ffffff;
+          opacity: 0.4;
+        }
+      }
+    }
+  
+    .choose-area {
+      .el-select {
+        width: 90%;
+      }
+      .el-input {
+        input {
+          background: rgba(255, 255, 255, 0);
+          color: #00ffff;
+          border: none;
+          padding: 0;
+          width: 30px;
+        }
+      }
+    }
+  
+    .no-data{
+      text-align: center;
+      color: #62ffe5;
+      font-size: 25px;
+      margin-top: 150px;
+    }
+  
+    ::-webkit-scrollbar {
+      width: 3px;
+      height: 3px;
+    }
+  
+    ::-webkit-scrollbar-thumb {
+      //滑块部分
+      // border-radius: 5px;
+      background-color: #58cbbb;
+    }
+  
+    ::-webkit-scrollbar-track {
+      //轨道部分
+      // box-shadow: inset 0 0 5px #ddd;
+      background: #ddd;
+      // border-radius: 5px;
+    }
+  }
+  </style>
+  
+  

+ 13 - 3
src/views/screen/building/cameraDataDialog.vue

@@ -481,7 +481,7 @@
   import echarts from "echarts";
   import {
 
-    powerForYear, resourceInfo, 
+    powerForYear, resourceInfo, airOverview
   } from "@/api/screen/service";
   
   export default {
@@ -499,6 +499,7 @@
     },
     data() {
       return {
+        airOverviewList:[],
         curBodex:0,
         showBox: "indoor",
         Boxtabs: [
@@ -666,7 +667,8 @@
     created() {
 
         this.handleCurrentArea();
-
+       //空气概况
+       this.airOverview();
 
       //资源信息
       this.resourceInfo();
@@ -754,7 +756,15 @@
           boundaryGap: false,
         });
     },
-
+    
+           //资源信息
+           airOverview() {
+            airOverview(this.$props.appOrg).then((res) => {
+           if (Number(res.code) === 200) {
+               console.log(res.code,'999222');
+          }
+        });
+      },
 
       //资源信息
       resourceInfo() {

+ 11 - 6
src/views/screen/building/energyRateDialog.vue

@@ -31,7 +31,7 @@
         <div class="dialog-list">
           <div class="dialog-item wid100">
             <div class="content-title">
-              <span class="title">配电室重要抽屉负荷情况</span>
+              <span class="title">配电室重要回路负荷情况</span>
             </div>
             <div class="content">
               <bar-chart
@@ -238,7 +238,7 @@
         <div class="dialog-list">
           <div class="dialog-item wid100">
             <div class="content-title">
-              <span class="title">月用电量信息</span>
+              <span class="title">楼宇中当前告警的设备</span>
             </div>
             <!-- 水浸总数 -->
             <div class="total-cont">
@@ -265,7 +265,7 @@
 
                   </div>
                  </div>
-                 <div class="left-list2">
+                 <div class="left-list2"  @click="foodsClick(0)">
                     <div class="left-info">
                     <div class="name">
                       <!-- <div> <img src="@/assets/images/building_guarantee/waterImmersion.png"></div>    -->
@@ -301,7 +301,7 @@
 
                   </div>
                  </div>
-                 <div class="left-list2">
+                 <div class="left-list2" @click="foodsClick(0)">
                     <div class="left-info">
                     <div class="name">
                       <!-- <div> <img src="@/assets/images/building_guarantee/waterImmersion.png"></div>    -->
@@ -337,7 +337,7 @@
 
                   </div>
                  </div>
-                 <div class="left-list2">
+                 <div class="left-list2" @click="foodsClick(0)">
                     <div class="left-info">
                     <div class="name">
                       <!-- <div> <img src="@/assets/images/building_guarantee/waterImmersion.png"></div>    -->
@@ -373,7 +373,7 @@
 
                   </div>
                  </div>
-                 <div class="left-list2">
+                 <div class="left-list2" @click="foodsClick(0)">
                     <div class="left-info">
                     <div class="name">
                       <!-- <div> <img src="@/assets/images/building_guarantee/waterImmersion.png"></div>    -->
@@ -944,6 +944,11 @@ export default {
       });
     },
 
+      //点击列表
+      foodsClick(e){
+      this.$emit("foodsClick",e);
+    },
+
 
        //告警事件的历史统计
        handleAlarmData(){

+ 52 - 16
src/views/screen/building/main.vue

@@ -254,7 +254,7 @@
                   ></span>
                   <span>{{ data.label }}</span>
                 </div>
-     
+
               </template>
 
           </el-cascader>
@@ -305,14 +305,14 @@
 
     <!--弹出层-->
     <div :class="dialogType < 3 ? 'dialog':'dialog-r'" v-if="dialogShow" @click="closeDialog">
-      <energy-rate-dialog v-if="dialogType === 1" @closeDialog="closeDialog" :appOrg="appOrg"></energy-rate-dialog>
+      <energy-rate-dialog v-if="dialogType === 1"  @foodsClick="onFoodsClick" @closeDialog="closeDialog" :appOrg="appOrg"></energy-rate-dialog>
       <building-save-dialog v-if="dialogType === 2" @closeDialog="closeDialog"></building-save-dialog>
       <camera-data-dialog v-if="dialogType === 5" @closeDialog="closeDialog"></camera-data-dialog >
       <unit-monitor-dialog v-if="dialogType === 4" @closeDialog="closeDialog" @chooseMonitor="chooseMonitorBack" :monitorName="monitorName"></unit-monitor-dialog>
     </div>
 
     <!-- 监控区域 -->
-    <div v-if="showCenter" class="dialog-2">
+    <!-- <div v-if="showCenter" class="dialog-2">
       <div class="dialog-center">
         <monitor-live
           v-if="showType === 1"
@@ -328,7 +328,21 @@
           :monitorName="monitorName"
         ></monitor-live-list>
       </div>
+    </div> -->
+
+    <!-- 设备列表 -->
+    <div v-if="showCenter" class="dialog-2">
+      <!-- 告警设备列表 -->
+      <div class="dialog-center">
+        <alarm-Device
+          v-if="showType === 1"
+          @closeFoods="onCloseFoods"
+          :appOrg="appOrg"
+        ></alarm-Device>
+
+      </div>
     </div>
+
   </div>
 </template>
 
@@ -344,6 +358,7 @@ import BuildingSaveDialog from "./buildingSaveDialog.vue";
 import UnitMonitorDialog from "./unitMonitorDialog.vue";
 import MonitorLiveList from "@/views/screen/building/monitorLiveList.vue";
 import MonitorLive from "@/views/screen/building/monitorLive.vue";
+import AlarmDevice from "./alarmDevice.vue";
 
 // 引入json数据
 import company from "../data/company.json";
@@ -363,6 +378,7 @@ export default {
     EnergyRateDialog,
     BuildingSaveDialog,
     UnitMonitorDialog,
+    AlarmDevice
   },
   props: {},
   data() {
@@ -381,7 +397,7 @@ export default {
       curCompany: [],
       company: company,
       showCenter:false,
-      showType:0,//实时监控
+      showType:0,//设备列表
       monitorInfo: {},
       monitorName: '',
     };
@@ -492,23 +508,43 @@ export default {
       this.$refs.province.chooseUnit(e);
     },
 
-    //关闭监控视频
-    onCloseMonitor(){
+    //点击列表
+    onFoodsClick(e) {
+
+      this.showCenter = true;
+      if (e === 0) {
+        this.showType = 1;
+      } else {
+        this.showType = 2;
+      }
+
+    },
+    //关闭列表
+    onCloseFoods() {
       this.showCenter = false;
-      this.showType = 0;
     },
 
-    //显示列表
-    onChooseAllMonitor(){
-      this.showType = 2;
+    //关闭列表
+    onCloseFoods2() {
+      this.showCenter = false;
     },
+    //关闭监控视频
+    // onCloseMonitor(){
+    //   this.showCenter = false;
+    //   this.showType = 0;
+    // },
+
+    //显示列表
+    // onChooseAllMonitor(){
+    //   this.showType = 2;
+    // },
 
     //选择视频列表
-    chooseMonitorBack(data){
-      this.showCenter = true;
-      this.showType = 1;
-      this.monitorInfo = data;
-    },
+    // chooseMonitorBack(data){
+    //   this.showCenter = true;
+    //   this.showType = 1;
+    //   this.monitorInfo = data;
+    // },
   },
 };
 </script>
@@ -613,7 +649,7 @@ export default {
       // top: 50px;
       z-index: 10;
       .leftNav{
-             
+
              margin: 15px 0px 0px 15px;
        .model1 {
           width: 65px;

+ 0 - 3
src/views/screen/logistics/assets/codeBillDialog.vue

@@ -81,7 +81,6 @@
                </div>
                <div class="device-item1" v-if="showTab === 'main'">
                     <pie-chart
-                    position="left"
                   :chart-data="lyData"
                   :legend="lyLegend"
                   :center="['30%','60%']"
@@ -91,7 +90,6 @@
                 </div>
                 <div class="device-item1" v-else-if="showTab === 'service'">
                     <pie-chart
-                    position="left"
                   :chart-data="fwData"
                   :legend="fwLegend"
                   :center="['30%','60%']"
@@ -101,7 +99,6 @@
                 </div>
                 <div class="device-item1" v-else-if="showTab === 'logistics'">
                     <pie-chart
-                    position="left"
                   :chart-data="bgData"
                   :legend="bgLegend"
                   :center="['30%','60%']"

+ 8 - 7
src/views/screen/logistics/main.vue

@@ -122,7 +122,7 @@
       </div>
       <div class="right">
         <div class="right-cont">
-          <div class="right-top bg">
+          <!-- <div class="right-top bg">
             <div class="cont-title-area">
               <img
                 class="cont-title-bg"
@@ -134,8 +134,8 @@
             <div class="components-item">
               <project-item></project-item>
             </div>
-          </div>
-          <div class="right-bottom bg">
+          </div> -->
+          <div class="right-top bg">
             <div class="cont-title-area">
               <img
                 class="cont-title-bg"
@@ -144,7 +144,7 @@
               />
               <div class="cont-title">房产土地</div>
             </div>
-            <div class="components-item">
+            <div class="components-item bg3">
               <house-area :key="appOrg"></house-area>
             </div>
           </div>
@@ -986,8 +986,8 @@ export default {
     }
     .components-item {
       width: 550px;
-      height: 389px;
-      background: url("../../../assets/images/main/components_mid_bg.png")
+      height: 849px;
+      background: url("../../../assets/images/main/components_long_bg.png")
         no-repeat;
       background-size: cover;
       margin-bottom: 28px;
@@ -995,7 +995,8 @@ export default {
       overflow: hidden;
     }
     .components-item.bg3{
-      background: url("../../../assets/images/main/components_mid_bg2.png") no-repeat;
+      background: url("../../../assets/images/main/components_long_bg.png")
+      no-repeat;
     }
   }
 

+ 1 - 1
src/views/screen/service/basicOperationDialog.vue

@@ -457,7 +457,7 @@ export default {
         {
           name: "",
           type: "bar",
-          data: [50, 40,70, 60],
+          data: [0, 0,0, 0],
           barWidth: 15,
           itemStyle: {
             color: "#E29439",

+ 5 - 5
src/views/screen/service/canteen.vue

@@ -6,7 +6,7 @@
         <span class="title">食堂概览</span>
       </div>
       <div class="choose-area">
-                <el-select v-model="canteen" @visible-change="selectOP" @change="getCanteenScoreData" placeholder="请选择">
+                <el-select v-model="canteen" @visible-change="selectOP"  placeholder="请选择">
                   <el-option
                     v-for="item in canteens"
                     :key="item"
@@ -16,7 +16,7 @@
                   </el-option>
                 </el-select>
           </div>
-      <div class="data-list">   
+      <div class="data-list">
         <div v-for="(item, index) in dataList" :key="index" class="data-item">
           <div class="data-fir">
             <img src="@/assets/images/service_new/img_1.png" class="icon" />
@@ -74,8 +74,8 @@ export default {
   beforeDestroy() {},
   mounted() {},
   methods: {
-     
-    
+
+
     // 下拉触发时间
     selectOP(value){
       if(value){
@@ -97,7 +97,7 @@ export default {
           this.canteens = canteens;
           this.canteen = canteens[0];
 
-        
+
         }
       });
     },

+ 14 - 14
src/views/screen/service/canteenDialog.vue

@@ -13,7 +13,7 @@
             <div class="content-title">
               <span class="title">食堂概览</span>
             </div>
-            <div class="choose-area">
+            <!-- <div class="choose-area">
                 <el-select v-model="canteen" @visible-change="selectOP" @change="getCanteenScoreData" placeholder="请选择">
                   <el-option
                     v-for="item in canteens"
@@ -23,7 +23,7 @@
                   >
                   </el-option>
                 </el-select>
-              </div>
+              </div> -->
             <div class="data-list">
               <div v-for="(item, index) in dataList" :key="index" :class="'data-item ' + (index===0 || index===4 ? 'wid80' : 'wid130')">
                 <div class="data-fir">
@@ -105,7 +105,7 @@
           </div>
           <div class="dialog-item">
             <div class="content-title">
-              <span class="title">各单位统计排行
+              <span class="title">食堂服务人员情况
                 <el-tooltip class="item" effect="dark" content="人数相同按照食堂名称首字母排序" placement="top-start">
                   <img src="@/assets/images/main/tips.png" class="tips" />
                 </el-tooltip>
@@ -336,7 +336,7 @@
               <bar-chart
                 :chart-data="foodsRankBarData"
                 :x-axis="foodsRankBarAxis"
-                
+
                 position="left"
                 :yAxis="{
                   name: '受欢迎度(百分制)',
@@ -380,7 +380,7 @@
                   <div class="data-item">
                     <div class="data-fir">
                       <img src="@/assets/images/service_new/img_1.png" class="icon" />
-                      <div class="name">参评数量</div>
+                      <div class="name">参评绿智食堂</div>
                     </div>
                     <div class="data-snd">
                       <div class="num">{{participate.value}}</div>
@@ -390,7 +390,7 @@
                   <div class="data-item">
                     <div class="data-fir">
                       <img src="@/assets/images/service_new/img_1.png" class="icon" />
-                      <div class="name">完成数量</div>
+                      <div class="name">已完成单位</div>
                     </div>
                     <div class="data-snd">
                       <div class="num">{{completed.value}}</div>
@@ -414,7 +414,7 @@
           </div>
           <div class="dialog-item">
             <div class="content-title">
-              <span class="title">就餐情况</span>
+              <span class="title">就餐人数</span>
             </div>
             <div class="content">
               <pie-chart
@@ -432,7 +432,7 @@
         <div class="dialog-list">
           <div class="dialog-item">
             <div class="content-title">
-              <div class="title">绿智食堂</div>
+              <div class="title">智食堂订单数量</div>
             </div>
             <div class="content">
               <pie-chart
@@ -446,7 +446,7 @@
           </div>
           <div class="dialog-item">
             <div class="content-title">
-              <span class="title">员工服务</span>
+              <span class="title">员工服务订单数量</span>
             </div>
             <div class="content">
               <pie-chart
@@ -466,7 +466,7 @@
             <div class="content-title">
               <span class="title">电子餐券</span>
             </div>
-            <div class="choose-area">
+            <!-- <div class="choose-area">
                 <el-select v-model="canteen" @visible-change="selectOP" @change="getCanteenScoreData" placeholder="请选择">
                   <el-option
                     v-for="item in canteens"
@@ -476,7 +476,7 @@
                   >
                   </el-option>
                 </el-select>
-              </div>
+              </div> -->
             <div class="content">
 <!--              <div class="choose-area">-->
 <!--                <el-select v-model="canteen" @visible-change="selectOP" placeholder="请选择">-->
@@ -659,7 +659,7 @@ export default {
       //各单位统计排行
       canteenTotalRankBarData: [],
       canteenTotalRankBarAxis: {},
-      
+
 
       canteenTotalRankBarYaxis: {
         type: "value",
@@ -1240,7 +1240,7 @@ export default {
             {
               name: res.data.chefs.name,
               type: "bar",
-              
+
               itemStyle: {
                 color: res.data.chefs.color,
                 //barBorderRadius: [5, 5, 0, 0], // 统一设置四个角的圆角大小
@@ -1363,7 +1363,7 @@ export default {
               itemStyle: {
                 color: res.data.yData.color,
               },
-              barWidth: 15,
+              barWidth: 30,
               data: res.data.yData.yList,
             },
           ];

+ 1 - 1
src/views/screen/service/employeeProfileDialog.vue

@@ -461,7 +461,7 @@ export default {
                   color: "#FFD296",
                   //barBorderRadius: [10, 10, 0, 0], // 统一设置四个角的圆角大小
                 },
-                barWidth: 30,
+                barWidth: 80,
                 data: [{
                   value: res.data.yData.yList[0],
                   itemStyle: {

+ 57 - 16
src/views/screen/service/shareStation.vue

@@ -40,7 +40,7 @@
                       <div class="name">完成</div>
                       <div class="name">达标率</div>
                      </div>
-              </div>          
+              </div>
             </div>
           </div>
         </div>
@@ -50,21 +50,42 @@
           <div class="title">服务内容</div>
         </div>
         <div class="content">
-          <!-- <pie-chart
-            :chart-data="pieData"
-            :legend="pieLegend"
-            :title="pieTitle"
-            width="220px"
-            height="180px"
-          /> -->
           <div class="data-content">
-             <div class="imgPos">
-                <img src="@/assets/images/service_new/helath_self.png">
-             </div>
-             <div class="imgPos">
-              <img src="@/assets/images/service_new/remote_consultation.png">
-             </div>
-          </div>
+                <div class="data-left">
+                  <div class="data-item">
+                    <div class="data-fir">
+                      <img src="@/assets/images/service_new/img_1.png" class="icon" />
+                      <div class="name">健康自测</div>
+                    </div>
+                    <div class="data-snd">
+                      <div class="num">53</div>
+                      <div class="unit">个</div>
+                    </div>
+                  </div>
+                  <div class="data-item">
+                    <div class="data-fir">
+                      <img src="@/assets/images/service_new/img_1.png" class="icon" />
+                      <div class="name">远程问诊</div>
+                    </div>
+                    <div class="data-snd">
+                      <div class="num">27</div>
+                      <div class="unit">个</div>
+                    </div>
+                  </div>
+                </div>
+                <div class="data-right">
+                    <pie-chart
+                    position="left"
+                  :chart-data="fwData"
+                  :legend="fwLegend"
+                  :center="['40%','45%']"
+                  width="120px"
+                  height="160px"
+                />
+
+
+                </div>
+              </div>
         </div>
       </div>
     </div>
@@ -113,6 +134,26 @@ export default {
       participateProportionRate: {
         value:0
       },
+        //服务内容
+        fwData: [
+        { value: 44.15, name: "健康自测" },
+        { value: 24.15, name: "远程问诊" },
+
+        // { value: 24.15, name: "供热采暖" },
+        // { value: 24.15, name: "消防" },
+        // { value: 24.15, name: "给排水" },
+      ],
+      fwLegend: {
+        top: 115,
+        orient: "vertical",
+        left: 10,
+        itemWidth: 10, // 设置图例标记的宽度
+        itemHeight: 10, // 设置图例标记的高度
+        textStyle: {
+          color: "#FFF",
+        },
+
+      },
     };
   },
   created() {
@@ -254,7 +295,7 @@ export default {
           .revo{
           display: flex;
           flex-direction: column;
-          align-items: center;          
+          align-items: center;
         }
           .value{
             display: flex;

+ 60 - 19
src/views/screen/service/shareStationDialog.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="main-data share-station-dialog-area" @click.stop="preventDefault"  @mouseleave="leaveFun">
+  <div class="main-data share-station-dialog-area" @click.stop="preventDefault" @mouseleave="leaveFun">
     <div class="dialog-title">
       <img
         src="@/assets/images/main/cont_title_bg.png"
@@ -47,9 +47,9 @@
                       <div class="name">完成</div>
                       <div class="name">达标率</div>
                      </div>
-                    
+
                   </div>
-                 
+
                 </div>
               </div>
             </div>
@@ -60,21 +60,42 @@
               <span class="title">服务内容</span>
             </div>
             <div class="content">
-          <!-- <pie-chart
-            :chart-data="pieData"
-            :legend="pieLegend"
-            :title="pieTitle"
-            width="220px"
-            height="180px"
-          /> -->
-          <div class="data-content">
-             <div class="imgPos">
-                <img src="@/assets/images/service_new/helath_self.png">
-             </div>
-             <div class="imgPos">
-              <img src="@/assets/images/service_new/remote_consultation.png">
-             </div>
-          </div>
+              <div class="data-content">
+                <div class="data-left">
+                  <div class="data-item">
+                    <div class="data-fir">
+                      <img src="@/assets/images/service_new/img_1.png" class="icon" />
+                      <div class="name">健康自测</div>
+                    </div>
+                    <div class="data-snd">
+                      <div class="num">53</div>
+                      <div class="unit">个</div>
+                    </div>
+                  </div>
+                  <div class="data-item">
+                    <div class="data-fir">
+                      <img src="@/assets/images/service_new/img_1.png" class="icon" />
+                      <div class="name">远程问诊</div>
+                    </div>
+                    <div class="data-snd">
+                      <div class="num">27</div>
+                      <div class="unit">个</div>
+                    </div>
+                  </div>
+                </div>
+                <div class="data-right">
+                    <pie-chart
+                    position="left"
+                  :chart-data="fwData"
+                  :legend="fwLegend"
+                  :center="['40%','45%']"
+                  width="120px"
+                  height="160px"
+                />
+
+
+                </div>
+              </div>
         </div>
           </div>
         </div>
@@ -151,6 +172,26 @@ export default {
 
       //单位列表
       unitDataList: [],
+        //服务内容
+        fwData: [
+        { value: 44.15, name: "健康自测" },
+        { value: 24.15, name: "远程问诊" },
+
+        // { value: 24.15, name: "供热采暖" },
+        // { value: 24.15, name: "消防" },
+        // { value: 24.15, name: "给排水" },
+      ],
+      fwLegend: {
+        top: 115,
+        orient: "vertical",
+        left: 10,
+        itemWidth: 10, // 设置图例标记的宽度
+        itemHeight: 10, // 设置图例标记的高度
+        textStyle: {
+          color: "#FFF",
+        },
+
+      },
     };
   },
   created() {
@@ -383,7 +424,7 @@ export default {
         .revo{
           display: flex;
           flex-direction: column;
-          align-items: center;          
+          align-items: center;
         }
         .value{
           display: flex;