소스 검색

实验室管理看板

cyy 2 년 전
부모
커밋
815f6264f2
50개의 변경된 파일3012개의 추가작업 그리고 1920개의 파일을 삭제
  1. 311 263
      src/views/statistics/index.vue
  2. 1050 0
      src/views/statistics/index_kanban.vue
  3. 506 0
      src/views/statistics/indexold.vue
  4. 4 4
      src/views/statistics/item/s10waiBuNengLi.vue
  5. 3 3
      src/views/statistics/item/s10waiBuNengLiCol2.vue
  6. 3 3
      src/views/statistics/item/s11biaoZhunWu.vue
  7. 92 72
      src/views/statistics/item/s11biaoZhunWuCol.vue
  8. 87 92
      src/views/statistics/item/s11biaoZhunWuCol2.vue
  9. 3 3
      src/views/statistics/item/s12fengXian.vue
  10. 1 1
      src/views/statistics/item/s12fengXianCol.vue
  11. 2 2
      src/views/statistics/item/s13shengWu.vue
  12. 2 2
      src/views/statistics/item/s14bufuhexiang.vue
  13. 94 66
      src/views/statistics/item/s14bufuhexiangCol.vue
  14. 4 4
      src/views/statistics/item/s15tousu.vue
  15. 3 3
      src/views/statistics/item/s15tousuCol.vue
  16. 2 2
      src/views/statistics/item/s16bzJunZhu.vue
  17. 85 93
      src/views/statistics/item/s16bzJunZhuCol2.vue
  18. 2 2
      src/views/statistics/item/s17bzXiBao.vue
  19. 4 3
      src/views/statistics/item/s1jianCe.vue
  20. 9 5
      src/views/statistics/item/s1zhiLiangMuBiao.vue
  21. 31 270
      src/views/statistics/item/s1zhiLiangMuBiaoCol.vue
  22. 6 6
      src/views/statistics/item/s2manYiDu.vue
  23. 5 5
      src/views/statistics/item/s2manYiDuPro.vue
  24. 2 2
      src/views/statistics/item/s3tousu.vue
  25. 3 3
      src/views/statistics/item/s4renYuanPeiXun.vue
  26. 3 3
      src/views/statistics/item/s4renYuanPeiXunCol.vue
  27. 3 3
      src/views/statistics/item/s5renYuanJianDu.vue
  28. 118 118
      src/views/statistics/item/s5renYuanJianDuCol.vue
  29. 3 3
      src/views/statistics/item/s7sheBeiJiaoZhun.vue
  30. 2 2
      src/views/statistics/item/s7sheBeiJiaoZhunCol.vue
  31. 17 12
      src/views/statistics/item/s7sheBeiJiaoZhunCol2.vue
  32. 4 4
      src/views/statistics/item/s8sheBeiHeCha.vue
  33. 2 2
      src/views/statistics/item/s8sheBeiHeChaCol.vue
  34. 9 5
      src/views/statistics/item/s8sheBeiHeChaCol2.vue
  35. 4 4
      src/views/statistics/item/s9neiBuZhiLiang.vue
  36. 42 43
      src/views/statistics/item/s9neiBuZhiLiangCol.vue
  37. 225 354
      src/views/statistics/js/selectDB.js
  38. 3 3
      src/views/statistics/properties/s10waiBuNengLiPro.vue
  39. 4 1
      src/views/statistics/properties/s11biaoZhunWuPro.vue
  40. 4 4
      src/views/statistics/properties/s12fengXianPro.vue
  41. 3 3
      src/views/statistics/properties/s13shengWuPro.vue
  42. 4 4
      src/views/statistics/properties/s15tousuPro.vue
  43. 4 6
      src/views/statistics/properties/s1zhiLiangMuBiaoPro.vue
  44. 5 5
      src/views/statistics/properties/s2manYiDuPro.vue
  45. 12 6
      src/views/statistics/properties/s4renYuanPeiXunPro.vue
  46. 3 3
      src/views/statistics/properties/s5renYuanJianDuPro.vue
  47. 7 6
      src/views/statistics/properties/s7sheBeiJiaoZhunPro.vue
  48. 5 5
      src/views/statistics/properties/s8sheBeiHeChaPro.vue
  49. 4 4
      src/views/statistics/properties/s9neiBuZhiLiangPro.vue
  50. 208 408
      src/views/statistics/sendDatas.js

+ 311 - 263
src/views/statistics/index.vue

@@ -2,17 +2,17 @@
   <dv-full-screen-container>
     <el-scrollbar class="screen" ref="scrollDiv" >
     <!-- :style="{height:height}" -->
-      <div class="statistics">
+      <div class="statistics" v-on:mouseenter="rollstop" v-on:mouseleave="rollcontinue">
         <div class="editDate">
            <!-- 标题装饰组件 -->
-          <header-decoration />
+          <header-decoration /> 
           <!-- <div class="stitle">实验室管理看板</div> -->
-          <div class="block" style="display:none">
+          <!-- <div class="block" style="display:none">
             <span class="demonstration">开始:</span>
             <el-date-picker v-model="BeginDate" type="year" size="mini" value-format="yyyy" format="yyyy年"  style="width: 96px;"
               :clearable="false" @change="checkYear(BeginDate,'begin')" placeholder="选择日期">
             </el-date-picker>
-          </div>
+          </div> -->
 
           <!-- <div class="block"> -->
             <!-- <span class="demonstration">查询年度:</span> -->
@@ -27,21 +27,43 @@
                 </el-date-picker> -->
             <!-- </el-date-picker> -->
           <!-- </div> -->
-          <div
-            style="width: 12%;
+          <div 
+            style="width: 50%;
             height:2.825rem;
             line-height: 2.825rem;
             text-align:center;
             float: left;
-            margin: -3% 0 0 3%;
-            color: #000 !important;" >
+            margin: -3% 0 0 1%;
+            color: #fff !important;
+            align-items: center;
+            display:flex" >
+            <div>
+              部门:
+            </div>
+            <el-select v-model="bumen" clearable @change="selectAll()" placeholder="请选择部门">
+              <el-option
+                v-for="item in quality"
+                :key="item.id_"
+                :label="item.name_"
+                :value="item.id_">
+              </el-option>
+            </el-select>
+            <div>
+              月份:
+            </div>
             <el-date-picker
               v-model="endDate"
-              type="year"
-              value-format="yyyy"
+              type="monthrange"
+              align="right"
+              unlink-panels
+              format="yyyy 年 MM 月"
+              value-format="yyyy-MM"
               @change="checkYear(endDate,'end')"
-              placeholder="选择年">
+              range-separator="至"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期">
             </el-date-picker>
+            
             <!-- <el-button type="primary" size="mini" plain @click="selectAll">
               查询
             </el-button> -->
@@ -50,60 +72,60 @@
               v-model="NowTime1"
               type="month"
               @change="changeTime1"
-              format="yyyy-MM"
+              format="yyyy-MM" 
               value-format="yyyy-MM"
               placeholder="请选择时间">
             </el-date-picker> -->
           </div>
 
           <!-- <div class="block">
-
+            
           </div> -->
 
           <!-- <div class="goBackButton" @click.prevent="goBack()" >
             返回
           </div> -->
-          <div
-            @click.prevent="rollstop()"
+          <!-- <div 
+            @click.prevent="rollstop()" 
             style="width: 8%;
             height:2.825rem;
             line-height: 2.825rem;
             text-align:center;
             float: right;
-            margin: -3% 12% 0 0;"
+            margin: -3% 17.1% 0 0;" 
             v-if="rollup">
             <dv-border-box-8>暂停</dv-border-box-8>
           </div>
-          <div
-            @click.prevent="rollcontinue()"
+          <div 
+            @click.prevent="rollcontinue()" 
             style="width: 8%;
             height:2.825rem;
             line-height: 2.825rem;
             text-align:center;
             float: right;
-            margin: -3% 12% 0 0;"
+            margin: -3% 17.1% 0 0;" 
             v-else>
             <dv-border-box-8>继续</dv-border-box-8>
-          </div>
-          <div
-            @click.prevent="goBack()"
+          </div> -->
+          <div 
+            @click.prevent="goBack()" 
             style="width: 8%;
             height:2.825rem;
             line-height: 2.825rem;
             text-align:center;
             float: right;
-            margin: -3% 3% 0 0;" >
+            margin: -3% 17.1% 0 0;" >
             <dv-border-box-8>返回</dv-border-box-8>
           </div>
-
+          
         </div>
-        <dv-border-box-7  backgroundColor="rgba(6, 30, 93, 0.5)" ><div class="ttitle">质量方针:公正、科学、准确、高效</div></dv-border-box-7>
+        <!-- <dv-border-box-7  backgroundColor="rgba(6, 30, 93, 0.5)" ><div class="ttitle">质量方针:公正、科学、准确、高效</div></dv-border-box-7>
         <div class="congxiebox7" style="display: flex;justify-content: space-between;padding: 1.5% 0.2%;">
           <div style="width:16.4%">
             <div class="gongshiAll">
-              <div class="touwidth">检测任务完成率=</div>
+              <div class="touwidth">检测任务完成及时率=</div>
               <div style="margin: 0 0.2%;">
-                <div class="gongshiXian">完成检测项目数量</div>
+                <div class="gongshiXian">及时完成检测项目数量</div>
                 <div style="text-align:center;font-size:12px;padding-top: 6%;">有效检测任务总数</div>
               </div>
               <div>×100%</div>
@@ -141,7 +163,7 @@
               </div>
               <div>×100%</div>
             </div>
-            <div class="mubiaozhi">当前目标值:{{quality[3].val}}</div>
+            <div class="mubiaozhi">当前目标值:{{quality[3].val}}</div>relOf
           </div>
           <div style="width:27.4%">
             <div class="gongshiAll">
@@ -154,77 +176,114 @@
             </div>
             <div class="mubiaozhi">当前目标值:{{quality[4].val}}</div>
           </div>
-        </div>
-        <div class="congxiebox7" v-if="pageOT">
-          <div class="ttitle" style="text-align: center;">质量目标统计</div>
+        </div> -->
+        <div class="congxiebox7"  v-if="pageOT==1&&bumen!=''">
+          <div class="ttitle" style="text-align: center;">部门质量目标与质量指标</div>
           <div class="componentsData" v-if="relOf">
-              <s1zhiLiangMuBiao :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw" :mubiao = "quality[0].val"
-              v-if="showAll || showComponents[1]" :data = "getS1renwu()"/>
-              <s1jianCe :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw" :mubiao = "quality[1].val"
+              <!-- 
+              <s1jianCe :height="'290%'" :width="static=='row' ? '19.5%': '100%'" :colorw = "colorw" :mubiao = "quality[1].val"
               v-if="showAll || showComponents[5]" :data = "getS2jianCe()" />
-              <s2manYiDu :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw" :mubiao = "quality[2].val"
-              v-if="showAll || showComponents[7]"  :data = "getS2manYiDu()"/>
-              <s3tousu :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw" :mubiao = "quality[3].val"
+              <s3tousu :height="'290%'" :width="static=='row' ? '19.5%': '100%'" :colorw = "colorw" :mubiao = "quality[3].val"
               v-if="showAll || showComponents[6]" :data = "getS3tousu()"/>
-              <s13shengWu :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw" :mubiao = "quality[4].val"
-              v-if="showAll || showComponents[17]" :data = "getS3tousu()"/>
+              <s13shengWu :height="'290%'" :width="static=='row' ? '19.5%': '100%'" :colorw = "colorw" :mubiao = "quality[4].val"
+              v-if="showAll || showComponents[17]" :data = "getS3tousu()"/> -->
+              <s11biaoZhunWucol :height="'390%'" :width="static=='row' ? '100%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[15]" :data = "getfenzuZLZBObjNum()"/>
               <div class="clear"></div>
           </div>
         </div>
-        <div class="congxiebox7" style="display:inline-block;width:49%" v-if="pageOT">
-          <div class="ttitle" style="margin:2% 0;text-align: center;">人员培训与管理</div>
+        <div class="congxiebox7" style="overflow:hiddien" v-if="pageOT==1&&bumen!=''">
+          <div class="ttitle" style="margin:2% 0;text-align: center;">质量目标与质量指标公式</div>
           <div class="componentsData" v-if="relOf">
-              <s4renYuanPeiXun :height="'290%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
-              v-if="showAll || showComponents[8]" :data = "getS4renYuanPeiXun()"/>
-              <s5renYuanJianDu :height="'290%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
-              v-if="showAll || showComponents[9]" :data = "getS5renYuanJianDu()"/>
-              <!-- <div class="clear"></div> -->
+              <dv-scroll-board style="height:350px;white-space:pre-wrap"
+                v-if="showAll || showComponents[23]||tableData1.data.length>0"
+                :config="tableData1"
+              />
+              <div class="clear"></div>
 
           </div>
         </div>
-        <div class="congxiebox7" style="display:inline-block;width:49%;float:right;" v-if="pageOT">
-          <div class="ttitle" style="margin:2% 0;text-align: center;">设备维保</div>
+        <div class="congxiebox7" style="display:inline-block;width:79%;" v-if="pageOT==1&&bumen==''">
+          <div class="ttitle" style="margin:2% 0;text-align: center;">各部门质量目标与质量指标</div>
           <div class="componentsData" v-if="relOf">
-              <s7sheBeiJiaoZhun :height="'290%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
-              v-if="showAll || showComponents[12]" :data = "getJiaoYanObjNum()"/>
-              <s8sheBeiHeCha :height="'290%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
-              v-if="showAll || showComponents[11]" :data = "gethechaObjNum()"/>
-              <!-- <div class="clear"></div> -->
+              <s11biaoZhunWu :height="'840%'" :width="static=='row' ? '100%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[15]" :data = "getyangPinCaiJiObjNum()"/>
+              <div class="clear"></div>
 
           </div>
         </div>
-        <div class="congxiebox7" v-if="!pageOT">
+        <div class="congxiebox7" style="display:inline-block;width:19%;float:right;overflow:hiddien" v-if="pageOT==1&&bumen==''">
+          <div class="ttitle" style="margin:9% 0;text-align: center;">质量目标与质量指标总计</div>
+          <div class="componentsData" v-if="relOf">
+              <dv-scroll-board style="height:835px;"
+                v-if="showAll || showComponents[22]||tableData.data.length>0"
+                :config="tableData"
+              />
+              
+              <div class="clear"></div>
 
-          <div class="ttitle" style="text-align: center;">标准物质</div>
+          </div>
+        </div>
+        
+        <div class="congxiebox7" style="display:inline-block;width:49%;" v-if="pageOT==2">
+          <div class="ttitle" style="text-align: center;">人员培训与管理</div>
           <div class="componentsData" v-if="relOf">
-              <s11biaoZhunWu :height="'290%'" :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
-              v-if="showAll || showComponents[15]" :data = "getbiaozhunObjNum()"/>
-              <s16bzJunZhu :height="'290%'" :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
+            <s4renYuanPeiXun :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[8]" :data = "getS4renYuanPeiXun()"/>
+            <s5renYuanJianDu :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[9]" :data = "getS5renYuanJianDu()"/>
+              <!-- <s16bzJunZhu :height="'290%'" :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
               v-if="showAll || showComponents[20]" :data = "getbzJunZhujNum()"/>
               <s17bzXiBao :height="'290%'" :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
               v-if="showAll || showComponents[21]" :data = "getbzXiBaoObjNum()"/>
-              <div class="clear"></div>
+              <div class="clear"></div> -->
           </div>
         </div>
-        <div class="congxiebox7" v-if="!pageOT">
+        <div class="congxiebox7" style="display:inline-block;width:49%;float:right;" v-if="pageOT==2">
+          <div class="ttitle" style="text-align: center;">设备维保</div>
+          <div class="componentsData" v-if="relOf">
+            <s7sheBeiJiaoZhun :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[12]" :data = "getJiaoYanObjNum()"/>
+              <s8sheBeiHeCha :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[11]" :data = "gethechaObjNum()"/>
+              <!-- <div class="clear"></div> -->
+          </div>
+        </div>
+         <div class="congxiebox7" v-if="pageOT==2">
 
           <div class="ttitle" style="text-align: center;">质量管理</div>
           <div class="componentsData" v-if="relOf">
-              <s9neiBuZhiLiang :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+              <s9neiBuZhiLiang :height="'250%'" :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
               v-if="showAll || showComponents[13]" :data = "getS9neiBuZhiLiang()"/>
-              <s10waiBuNengLi :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+              <s10waiBuNengLi :height="'250%'" :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
               v-if="showAll || showComponents[14]" :data = "getnengtliObjNum()"/>
-              <s14bufuhexiang :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
-              v-if="showAll || showComponents[18]" :data = "getS14bufuhexiang()"/>
-              <s15tousu :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+              
+              <s15tousu :height="'250%'" :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
               v-if="showAll || showComponents[19]" :data = "getS3tousu()"/>
-              <s12fengXian :height="'290%'" :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+              <s12fengXian :height="'250%'" :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
               v-if="showAll || showComponents[16]" :data = "getS12fengXian()"/>
               <div class="clear"></div>
-
+          </div>
+        </div> 
+        <div class="congxiebox7" style="display:inline-block;width:49%;" v-if="pageOT==2">
+          <div class="ttitle" style="text-align: center;">内审计划</div>
+          <div class="componentsData" v-if="relOf">
+             <s2manYiDu :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw" 
+              v-if="showAll || showComponents[7]"  :data = "getS2manYiDu()"/>
+            <s14bufuhexiang :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[18]" :data = "getS14bufuhexiang()"/>
           </div>
         </div>
-
+        <div class="congxiebox7" style="display:inline-block;width:49%;float:right;" v-if="pageOT==2">
+          <div class="ttitle" style="text-align: center;">管审计划</div>
+          <div class="componentsData" v-if="relOf">
+            <s1zhiLiangMuBiao :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw" 
+              v-if="showAll || showComponents[1]" :data = "getS1renwu()"/>
+              <s16bzJunZhu :height="'250%'" :width="static=='row' ? '50%': '100%'" :colorw = "colorw"
+              v-if="showAll || showComponents[20]" :data = "getbzJunZhujNum()"/>
+          </div>
+        </div>
+       
 
 
 
@@ -243,7 +302,7 @@
   import s1zhiLiang1 from './item/s1zhiLiang1.vue'
   import s1zhiLiang2 from './item/s1zhiLiang2.vue'
   import s1zhiLiang3 from './item/s1zhiLiang3.vue'
-
+  
   import s1jianCe from './item/s1jianCe.vue'
   import s2manYiDu from './item/s2manYiDu.vue'
   import s3tousu from './item/s3tousu.vue'
@@ -254,20 +313,22 @@
   import s8sheBeiHeCha from './item/s8sheBeiHeCha.vue'
   import s9neiBuZhiLiang from './item/s9neiBuZhiLiang.vue'
   import s10waiBuNengLi from './item/s10waiBuNengLi.vue'
-  import s11biaoZhunWu from './item/s11biaoZhunWu.vue'
+  import s11biaoZhunWu from './item/s11biaoZhunWuCol2.vue'
+  import s11biaoZhunWucol from './item/s11biaoZhunWuCol.vue'
+  
   import s12fengXian from './item/s12fengXian.vue'
   import s13shengWu from './item/s13shengWu.vue'
-  import s14bufuhexiang from './item/s14bufuhexiang.vue'
+  import s14bufuhexiang from './item/s14bufuhexiangCol.vue'
   import s15tousu from './item/s15tousu.vue'
-  import s16bzJunZhu from './item/s16bzJunZhu.vue'
+  import s16bzJunZhu from './item/s16bzJunZhuCol2.vue'
   import s17bzXiBao from './item/s17bzXiBao.vue'
 
 
   import none from './item/none.vue'
 
-  import { DBData ,getConfig,getJiaoYanObj, gethechaObj, getnengliObj, getbiaozhunObj,getbiaozhunTObj,getbzJunZhuObj,getbzJunZhuTObj,getbzXiBaoObj,getbzXiBaoTObj} from './js/selectDB.js'
+  import { DBData ,getConfig,getJiaoYanObj, gethechaObj, getnengliObj,getkangningyangpinObj,getgaijinxiangObj,getbufuheObj,getguanshenObj,getneishenObj,getfengxianObj,getyingjiObj,getneibuObj,getwaibuObj,gethechaMGObj,getJiaoYanMGObj,getgangqianpeixunObj,getzaigangrenyuanObj,getfenzuZLZBObj,getzongZLMBObj,getzhiliangzhibiaotitleObj, getyangPinCaiJiObj,getbiaozhunTObj,getbzJunZhuObj,getbzJunZhuTObj,getbzXiBaoObj,getbzXiBaoTObj} from './js/selectDB.js'
   import sendDatas from './sendDatas.js'
-  import curdPost from '@/business/platform/form/utils/custom/joinCURD.js'
+  import repostCurd from '@/business/platform/form/utils/custom/joinCURD.js'
 import * as forEach from 'lodash/forEach'
   export default {
     components:{
@@ -293,7 +354,8 @@ import * as forEach from 'lodash/forEach'
       s14bufuhexiang,
       s15tousu,
       s16bzJunZhu,
-      s17bzXiBao
+      s17bzXiBao,
+      s11biaoZhunWucol
     },
     props:{
     shows:{ //传入的内容显示序号
@@ -306,6 +368,16 @@ import * as forEach from 'lodash/forEach'
       }
    },
     mixins: [sendDatas],
+    created() {
+      //时间
+      // this.currentTime()
+      this.getqualityData()
+      if(screenfull.isEnabled && !screenfull.isFullscreen){
+        this.allView()
+        
+      }
+    },
+    provide(){ return{ rollcontinue:this.rollcontinue,rollstop:this.rollstop } },
     mounted() {
       /*以shows是否有参数来判断, 是否需要仅显示部分子组件*/
       if(this.shows.length>0){
@@ -315,17 +387,24 @@ import * as forEach from 'lodash/forEach'
       /* 开始及结束时间的默认设置*/
       if (!this.BeginDate && !this.endDate) {
         this.BeginDate = this.getDate(1) + ''
-        this.endDate = this.getDate(0) + ''
+        this.endDate = this.getDate(0)
+        // console.log(this.endDate)
         this.dataScope.push(this.BeginDate)
         this.dataScope.push(this.endDate)
       }
-      this.getConfigData() //获取统计的配置
-      this.getqualityData()
-
-      this.timer1 = setInterval(()=>{
-        this.pageOT = !this.pageOT
-        console.log(this.pageOT)
-      },5000)
+       //获取统计的配置
+      
+      // if(this.buhegelvObj.length>0){
+        this.timer1 = setInterval(()=>{
+          if(this.pageOT>=2){
+            this.pageOT=1
+          }else{
+            this.pageOT = this.pageOT + 1
+          }
+          // console.log(this.pageOT)
+        },8000)
+      // }
+      
     },
     data() {
       return {
@@ -333,14 +412,28 @@ import * as forEach from 'lodash/forEach'
         BeginDate: '',
         endDate: '',
         jiaoyanObj:[],
+        jiaoyanMGObj:[],
         hechaObj:[],
+        hechaMGObj:[],
+        waibuObj:[],
+        neibuObj:[],
+        yingjiObj:[],
+        fengxianObj:[],
+        neishenObj:[],
+        guanshenObj:[],
+        bufuheObj:[],
+        gaijinxiangObj:[],
         nengliObj:[],
-        biaozhunObj:[],
+        buhegelvObj:[],
+        zhiliangzhibiaotitle:[],
         biaozhunTObj:[],
         bzJunZhuObj:[],
         bzJunZhuTObj:[],
         bzXiBaoObj:[],
         bzXiBaoTObj:[],
+        fenzuzlmb:[],
+        zaigangrenyuan:[],
+        gangqianpeixun:[],
         relData: {},
         relOf: false,
         selectEnd: '',
@@ -351,15 +444,30 @@ import * as forEach from 'lodash/forEach'
         showComponents:{},//显示全部统计子组件 , 若有新增,往后累计。 供动态表单进行查阅使用。
         dataScope: [],
         colorw: '#fff',
-        pageOT: true,
+        pageOT: 1,
         rollup:true,
-        quality:[
-          {name: '任务及时完成率' ,val: ''},
-          {name: '检测报告差错率' ,val: ''},
-          {name: '客户满意度' ,val: ''},
-          {name: '投诉率' ,val: ''},
-          {name: '投诉处理及时率' ,val: ''}
-        ]
+        idsStr:'',
+        quality:[],
+        bumen:'',
+        tableNum:[],
+        tableData:{
+          header: ['<span style="font-size:16px;height:53px">质量指标</span>', '<span style="font-size:16px;height:53px">百分比/数量</span>'],
+          rowNum: 10,
+          columnWidth: [600, 400],
+          align: ['left','right'],
+          data: [
+            ['行1列1', '行1列2', '行1列3'],
+          ]
+        },
+        tableData1:{
+          header: ['<span style="font-size:16px;height:53px">质量指标</span>','<span style="font-size:16px;height:53px">计算公式</span>', '<span style="font-size:16px;height:53px">指标限值</span>'],
+          rowNum: 5,
+          columnWidth: [500,700, 200],
+          align: ['left','left','right'],
+          data: [
+            ['行1列1', '行1列2', '行1列3'],
+          ]
+        }
       }
     },
      beforeDestroy() {
@@ -377,184 +485,129 @@ import * as forEach from 'lodash/forEach'
           }
       },
       getqualityData() {
-        let sql='select xiang_mu_ming_,mu_biao_zhi_ from t_zlmbz'
-        curdPost('sql', sql).then(response => {
+        let pos = this.$store.getters.level.second?this.$store.getters.level.second:this.$store.getters.level.first
+        let sql="select id_,name_ from ibps_party_entity where name_ like '%组' and PATH_ like '%"+pos+"%'"
+        repostCurd('sql', sql).then(response => {
+          // console.log(sql)
           let a = response.variables.data //结果一定存在第0个,因为只有一条数据
-           this.quality.forEach((t,i)=>{
-            a.forEach(e => {
-              if (t.name === e.xiang_mu_ming_) {
-                t.val = e.mu_biao_zhi_
-              }
-            });
-          })
-          console.log(this.quality,'546546654gsdf')
+          this.quality = a
+          // for (let i = 0; i < this.quality.length; i++) {
+          //   let a = {}
+          //   a.value = this.quality[i].id_
+          //   a.label = this.quality[i].name_
+          //   this.bumen.push(a)
+          // }
+          this.idsStr = this.quality.map(function(obj,index){
+              return obj.id_;
+          }).join(",");
+          if(this.bumen != ''){
+            this.getConfigData(this.endDate,this.bumen)
+          }else{
+            this.getConfigData(this.endDate,this.idsStr)
+          }
         })
       },
       /* 查询统计配置中的完成率*/
-      getConfigData() {
-        curdPost('sql', getConfig()).then(response => {
-          this.config = response.variables.data //结果一定存在第0个,因为只有一条数据
-          this.getJiaoYanObjData(this.endDate)
-
-        })
-      },
-      getJiaoYanObjData(end) {
-        curdPost('sql', getJiaoYanObj(end)).then(response => {
-          this.jiaoyanObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          // console.log(end,this.jiaoyanObj,"nmnakak")
-          this.gethechaObjData(this.endDate)
-        })
-      },
-      gethechaObjData(end) {
-        curdPost('sql', gethechaObj(end)).then(response => {
-          this.hechaObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          this.getnengliObjData(this.endDate)
-        })
-      },
-      getnengliObjData(end) {
-        curdPost('sql', getnengliObj(end)).then(response => {
-          this.nengliObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          this.getbiaozhunObjData(this.endDate)
-        })
-      },
-      getbiaozhunObjData(end) {
-        curdPost('sql', getbiaozhunObj(end)).then(response => {
-          this.biaozhunObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          // console.log(this.biaozhunObj,'8888')
-          curdPost('sql', getbiaozhunTObj(end)).then(response => {
-            this.biaozhunTObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-            // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-            // console.log(this.biaozhunTObj,'8888')
-            this.getbzJunZhuObjData(this.endDate)
+      getConfigData(end,info) {
+        let that = this
+        repostCurd('sql', getConfig()).then(response => {
+          that.config = response.variables.data //结果一定存在第0个,因为只有一条数据
+          repostCurd('sql', getyangPinCaiJiObj(end,info)).then(response1 => {
+            that.buhegelvObj = response1.variables.data 
+            repostCurd('sql', getzhiliangzhibiaotitleObj(end,info)).then(response2 => {
+              that.zhiliangzhibiaotitle = response2.variables.data
+              repostCurd('sql', getzongZLMBObj(end,info)).then(response3 => {
+                that.tableNum = response3.variables.data 
+                repostCurd('sql', getfenzuZLZBObj(end,info)).then(response4 => {
+                  that.fenzuzlmb = response4.variables.data 
+                  repostCurd('sql', getzaigangrenyuanObj(end,info)).then(response5 => {
+                    that.zaigangrenyuan = response5.variables.data 
+                    repostCurd('sql', getgangqianpeixunObj(end,info)).then(response6 => {
+                      that.gangqianpeixun = response6.variables.data 
+                      repostCurd('sql', getJiaoYanObj(end,info)).then(response7 => {
+                        that.jiaoyanObj = response7.variables.data
+                        repostCurd('sql', getJiaoYanMGObj(end,info)).then(response8 => {
+                          that.jiaoyanMGObj = response8.variables.data
+                          repostCurd('sql', gethechaObj(end,info)).then(response9 => {
+                            that.hechaObj = response9.variables.data
+                            repostCurd('sql', gethechaMGObj(end,info)).then(response10 => {
+                              that.hechaMGObj = response10.variables.data
+                              repostCurd('sql', getwaibuObj(end,info)).then(response11 => {
+                                that.waibuObj = response11.variables.data
+                                repostCurd('sql', getneibuObj(end,info)).then(response12 => {
+                                  that.neibuObj = response12.variables.data
+                                  repostCurd('sql', getyingjiObj(end,info)).then(response13 => {
+                                    that.yingjiObj = response13.variables.data
+                                    repostCurd('sql', getfengxianObj(end,info)).then(response14 => {
+                                      that.fengxianObj = response14.variables.data
+                                      repostCurd('sql', getneishenObj(end,info)).then(response15 => {
+                                        that.neishenObj = response15.variables.data
+                                        repostCurd('sql', getguanshenObj(end,info)).then(response16 => {
+                                          that.guanshenObj = response16.variables.data
+                                          repostCurd('sql', getbufuheObj(end,info)).then(response17 => {
+                                            that.bufuheObj = response17.variables.data
+                                            repostCurd('sql', getgaijinxiangObj(end,info)).then(response18 => {
+                                              that.gaijinxiangObj = response18.variables.data
+                                              
+                                              that.relOf = true
+                                            })
+                                          })
+                                        })
+                                      })
+                                    })
+                                  })
+                                })
+                              })
+                            })
+                          })
+                        })
+                      })
+                    })
+                  })
+                })
+              })
+            })
           })
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
         })
+        
+        
+        
+        
+        // that.relOf = true
       },
-      getbzJunZhuObjData(end) {
-        curdPost('sql', getbzJunZhuObj(end)).then(response => {
-          this.bzJunZhuObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          // console.log(this.biaozhunObj,'8888')
-          curdPost('sql', getbzJunZhuTObj(end)).then(response => {
-            this.bzJunZhuTObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-            // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-            // console.log(this.biaozhunTObj,'8888')
-            this.getbzXiBaoObjData(this.endDate)
-          })
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-        })
-      },
-      getbzXiBaoObjData(end) {
-        curdPost('sql', getbzXiBaoObj(end)).then(response => {
-          this.bzXiBaoObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          // console.log(this.biaozhunObj,'8888')
-          curdPost('sql', getbzXiBaoTObj(end)).then(response => {
-            this.bzXiBaoTObj = response.variables.data //结果一定存在第0个,因为只有一条数据
-            // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-            // console.log(this.biaozhunTObj,'8888')
-            this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-          })
-          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
-        })
-      },
-      /* 通过拼接的sql进行查询全部数据*/
-      getData(beg, end, of, scope) {
-        // console.log(2222,DBData(beg, end, scope))
-        curdPost('sql', DBData(beg, end, scope)).then(response => {
-          if(typeof response.variables.data[0] === "undefined"){
-            this.relData = [0] //结果一定存在第0个,因为只有一条数据
-
-          }else{
-            this.relData = response.variables.data[0] //结果一定存在第0个,因为只有一条数据
-
-          }
-          this.relOf = of
-          // console.log(beg, end, of, response,this.relData,'getdata')
-        })
+      
+      async costPlannedAmountChange(record,value) {
+        // console.log(record,value,'34322222222222222222222222222222222222222222224')
       },
       /* 查询全部*/
       selectAll() {
         /* 上次查询时间不等于当次查询时间,    开始时间不能等于结束时间, 则开始查询。*/
-        if (this.selectEnd != this.endDate) {
-        // if ((this.selectEnd != this.endDate || this.selectBeg != this.BeginDate) && this.endDate != this.BeginDate && this.endDate > this.BeginDate) {
-          // this.getData(this.BeginDate, this.endDate, false, this.dataScope)
-          this.getConfigData()
+        // if (this.selectEnd != this.endDate) {
+          // this.getConfigData(this.endDate,this.idsStr)
           this.getqualityData()
 
-          // this.$forceUpdate();
-
-          // this.selectEnd = this.endDate
-          // this.selectBeg = this.BeginDate
-          /* 延迟刷新*/
-          // console.log('111111fffff')
           this.relOf = true;
           this.timer = setTimeout(() => {
             this.relOf = false
             clearTimeout(this.timer)
           }, 0)
-
-          // this.timer = setInterval(() => {
-          //   if (!this.relOf) {
-          //     this.relOf = true
-          //     clearInterval(this.timer)
-          //   }
-          // }, 100);
-        }
-        // else if (this.endDate == this.BeginDate) {
-        //   this.$message({
-        //     showClose: true,
-        //     message: '年份相等无法进行查询对比',
-        //     type: 'warning'
-        //   });
-        // } else if(this.endDate < this.BeginDate){
-        //   this.$message({
-        //     showClose: true,
-        //     message: '结束时间不得小于开始时间',
-        //     type: 'warning'
-        //   });
-        // }
+          
+        // } 
       },
-      /* 年份不得大于当前年份*/
       checkYear(year, data) {
-        // let that = this
-        // that.dataScope.length = 0
-        // if(that.BeginDate != '' && that.endDate != ''){
-        //   let poor = Number(that.endDate) - Number(that.BeginDate)
-        //   for (let i = 0; i <= poor; i++) {
-        //     let element = Number(that.BeginDate) + i;
-        //     that.dataScope.push(element+'')
-        //   }
-        // }
-        if (Number(year) > Number(this.getDate(0))) {
-          // console.log(data,'3y87sdvfsdf')
-          data == 'end' ?
-            this.endDate = this.getDate(0) + '' :
-            this.BeginDate = this.getDate(0) + ''
-
-          this.$message({
-            showClose: true,
-            message: '年份不得大于当前年份',
-            type: 'warning'
-          });
-
-        }
         this.selectAll()
-        // else(
-        //   this.endDate = Number(year)
-        // )
-        //   this.$forceUpdate();
-
       },
       /* 获取当前年份*/
       getDate(year) {
         year = year || 0
         let nowDate = new Date();
-        return nowDate.getFullYear() - year;
+        let date = new Date(new Date().setDate(1)+ 30 * 24 * 60 * 60 * 1000);
+        let month = date.getMonth()+1;
+        let m1 = nowDate.getMonth()+1
+        let month1 = m1 < 10 ? "0" +m1:nowDate.getMonth()+1;
+        month = month<10 ? "0"+month : ""+month;
+        // console.log([nowDate.getFullYear() - year + "-" + month1,date.getFullYear() + "-" + month])
+        return [nowDate.getFullYear() - year + "-" + month1,date.getFullYear() + "-" + month];
       },
       allView(){
         screenfull.request() //默认显示全屏
@@ -565,23 +618,19 @@ import * as forEach from 'lodash/forEach'
       },
       rollcontinue(){
         this.timer1 = setInterval(()=>{
-          this.pageOT = !this.pageOT
-          console.log(this.pageOT)
-        },5000)
+          if(this.pageOT>=2){
+            this.pageOT=1
+          }else{
+            this.pageOT = this.pageOT + 1
+          }
+        },8000)
         this.rollup=true
       },
       rollstop(){
         clearInterval(this.timer1);
+        console.log('dfhjsdifjsojfjiofjoijdiffffjidffffff')
         this.rollup=false
-      }
-    },
-    created() {
-      //时间
-      // this.currentTime()
-      if(screenfull.isEnabled && !screenfull.isFullscreen){
-      this.allView()
-
-      }
+      },
     }
   }
 </script>
@@ -601,7 +650,7 @@ import * as forEach from 'lodash/forEach'
      }
   }
   #dv-full-screen-container {
-    background-image: url('~@/assets/images/screen/bg.png');
+    background-image: url('./img/stars.png');
     background-size: 100% 100%;
     box-shadow: 0 0 3px blue;
     display: flex;
@@ -610,12 +659,11 @@ import * as forEach from 'lodash/forEach'
     display: flex;
     flex-direction:column;
     align-items: stretch;
-
+    
   //  .headerContent{
   //   flex: 1;
-
-  //   // background-color: rgb(99, 12, 41);
-
+    
+    
 
   //  }
   }
@@ -644,7 +692,7 @@ import * as forEach from 'lodash/forEach'
   }
   .screen{
     height: 100%;
-
+    
     margin: 0 0.5%;
   }
   .clear{ clear: both; }
@@ -681,5 +729,5 @@ import * as forEach from 'lodash/forEach'
   color: #606266 !important;
   font-weight: 100 !important;
 }
-
+ 
 </style>

+ 1050 - 0
src/views/statistics/index_kanban.vue

@@ -0,0 +1,1050 @@
+<template>
+  <div id="container">
+  			<div class="page_top">
+  				<div class="top_left">
+  					<div class="logo">
+  						<img src="../../assets/logo.jpg"/>
+  					</div>
+  					<h2 class="wms_name"><span>保税区A仓</span><em>单仓</em></h2>
+  					<div class="depot">
+  						<input type="text" placeholder="选择仓库..." readonly="readonly"/>
+  						<div class="depo_down">
+  							<ul>
+  								<li>A仓库</li>
+  								<li>B仓库</li>
+  								<li>C仓库</li>
+  							</ul>
+  						</div>
+  					</div>
+  				</div>
+  				<div class="top_time">
+  					<input type="text" class="time_star" id="time_star" value="2018-11-11 00:00:00" readonly="readonly"/><span>至</span><input type="text" class="time_end" id="time_end" value="2018-12-11 00:00:00" readonly="readonly"/>
+  				</div>
+  			</div>
+  			<!--顶部-->
+  			<div class="order_list">
+  				<div class="order">
+  					<div class="order_name">总单量</div>
+  					<h2 class="order_num">204398</h2>
+  				</div>
+  				<div class="order">
+  					<div class="order_name">总出库量</div>
+  					<h2 class="order_num">197672</h2>
+  				</div>
+  				<div class="order">
+  					<div class="order_name">未出库单量</div>
+  					<h2 class="order_num">1350</h2>
+  				</div>
+  				<div class="order">
+  					<div class="order_name">今天出库量</div>
+  					<h2 class="order_num">5414</h2>
+  				</div>
+  				<div class="order">
+  					<div class="order_name">未开始单量</div>
+  					<h2 class="order_num">734</h2>
+  				</div>
+  			</div>
+  			<!--订单量-->
+  			<div class="maina">
+  				<div class="main_left">
+  					<div class="home_today" >
+  						<div class="home_tit">
+  							今天作业趋势图
+  						</div>
+  						<div class="home_list">
+  							<div class="home_order">
+  								<div class="home_name">
+  									新增单量
+  								</div>
+  								<div class="home_num new_num">
+  									86
+  								</div>
+  							</div>
+  							<div class="home_order">
+  								<div class="home_name">
+  									拣选单量
+  								</div>
+  								<div class="home_num jian_num">
+  									0
+  								</div>
+  							</div>
+  							<div class="home_order">
+  								<div class="home_name">
+  									质检单量
+  								</div>
+  								<div class="home_num zhi_num">
+  									2
+  								</div>
+  							</div>
+  							<div class="home_order">
+  								<div class="home_name">
+  									出库单量
+  								</div>
+  								<div class="home_num chu_num">
+  									5
+  								</div>
+  							</div>
+  						</div>
+  						<div id="home_today"></div>
+  						<!--今日作业趋势图-->
+  					</div>
+  					<div class="ship_order" id="ship_order"></div>
+  					<!--货主订单执行情况-->
+  				</div>
+  				<div class="main_midd">
+  					<div class="imple" id="imple"></div>
+  					<!--订单执行情况-->
+  					<div class="order_wait" >
+  						<div class="commis">
+  							<div class="comm_tit">
+  								订单代办事项
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">收货等待</span><span class="com_num">228</span>
+  								</div>
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">上架等待</span><span class="com_num">9</span>
+  								</div>
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">分配等待</span><span class="com_num">0</span>
+  								</div>
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">拣货等待</span><span class="com_num">0</span>
+  								</div>
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">复核等待</span><span class="com_num">6</span>
+  								</div>
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">发货等待</span><span class="com_num">0</span>
+  								</div>
+  							</div>
+  							<div class="comm_list">
+  								<div class="comm_cont">
+  									<span class="com_name">异常等待</span><span class="com_num">0</span>
+  								</div>
+  							</div>
+  						</div>
+  						<!--订单代办事项-->
+  						<div class="abort">
+  							<div class="abot_tit">
+  								截止时间出库率
+  							</div>
+  							<div class="abort_box">
+  								<div class="abort_list">
+  								  <div class="abort_use">
+  								  	<div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主1
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主2
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主3
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主4
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主5
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主6
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主4
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主5
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主6
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主4
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主5
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主6
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+  									  <div class="abort_cont">
+  									  	<div class="abort_name">
+  									  		货主7
+  									  	</div>
+  									  	<div class="abort_num">
+  									  		90%
+  									  	</div>
+  									  </div>
+
+  								  </div>
+
+  								</div>
+  							</div>
+  						</div>
+  						<!--截止时间出库率-->
+  					</div>
+
+  				</div>
+  				<div class="main_rig">
+  					 <div class="situ_tit">
+  					 	上一小时作业情况
+  					 </div>
+  					 <div class="situ_use">
+  					    <div class="situ_list">
+
+  					 	    <ul>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主1</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		138
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		99
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主2</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		57
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		23
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主3</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		80
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		40
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主4</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		400
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		300
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主5</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		57
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		45
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主6</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		57
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		30
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主7</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		57
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		40
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 			<li>
+  					 			 <div class="situ_top">
+  					 			 	<span class="situ_name">货主8</span><span class="situ_time">(8点)</span>
+  					 			 </div>
+  					 			 <div class="lssl">
+  					 			 	<div class="lsl_name">
+  					 			 		出库量
+  					 			 	</div>
+  					 			 	<div class="lal_num">
+  					 			 		57
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="lal_all"></div>
+  					 			 <div class="quan">
+  					 			 	<div class="quan_name">
+  					 			 		接单量
+  					 			 	</div>
+  					 			 	<div class="quan_num">
+  					 			 		50
+  					 			 	</div>
+  					 			 </div>
+  					 			 <div class="quan_all"><div class="tity"></div></div>
+  					 			</li>
+  					 		</ul>
+  					 	</div>
+  					 </div>
+  				</div>
+  			</div>
+  		</div>
+</template>
+<script  scoped>
+  import echarts from 'echarts'
+  import $ from 'jquery'
+
+
+
+  export default {
+      components:{
+
+      },
+      props:{
+
+     },
+      mounted() {
+
+ $(".order_num").each(function(){
+		var that=$(this);
+		var text1=that.text();
+		var text1_1=parseInt(text1);
+        var te=formatNum(text1_1+"");
+        that.text(te)
+	})
+	 function formatNum(str) {
+	    var newStr = "";
+	    var count = 0;
+	   if (str.indexOf(".") == -1) {
+	        for (var i = str.length - 1; i >= 0; i--) {
+	            if (count % 3 == 0 && count != 0) {
+	                newStr = str.charAt(i) + "," + newStr;
+	            } else {
+	                newStr = str.charAt(i) + newStr;
+	            }
+	            count++;
+	        }
+	        str = newStr;
+	        return str;
+	    }
+
+	}
+$(function(){
+	$("body").click(function(){
+		$(".depo_down").slideUp();
+	})
+	$(".depot").click(function(e){
+		e.stopPropagation();
+		if($(this).hasClass("active")){
+			$(this).removeClass("active");
+			$(".depo_down").slideUp();
+		}else{
+			$(this).addClass("active");
+			$(".depo_down").slideDown();
+		}
+	})
+	$(".depo_down li").click(function(){
+		var tex=$(this).text();
+		$(".depot input").val(tex);
+	})
+  })
+let myChart1 =echarts.init(document.getElementById('home_today'));
+	 let option1 = {
+	 	backgroundColor: '#1b1e25',
+	    title: {
+	       text: ''
+	    },
+
+	    tooltip: {
+	      enterable:true,
+          trigger: 'axis'
+
+		},
+	    grid: {
+	        left: '3%',
+	        right: '3%',
+	        top: '10%',
+	        bottom:"2%",
+	        containLabel: true
+	    },
+	    xAxis : [
+	        {
+        	   axisLine:{
+                  lineStyle:{
+                    color:'#3e4148',
+                    width:1,//这里是为了突出显示加上的
+                  }
+               },
+	            type : 'category',
+	            boundaryGap : false,
+	            data : ['0','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23']
+	        }
+	    ],
+	    yAxis : [
+	        {
+	        	splitLine:{
+		            lineStyle:{
+		                color: '#21242b',
+		            }
+		        },
+	            type : 'value',
+	            axisLine:{
+                    lineStyle:{
+                        color:'#43484e',
+                        width:0,//这里是为了突出显示加上的
+                    }
+                }
+	        }
+	    ],
+	    series : [
+	        {
+	            name:'新增单量',
+	            type:'line',
+	            symbol:'none',
+	            data:[50, 132,40, 1500, 2000, 800, 210,100],
+	            smooth: true,
+	            itemStyle : {
+                    normal : {
+                        lineStyle:{
+                            color:'#533d86'
+                        }
+                    }
+                },
+                areaStyle: {normal: { color: ['rgba(255,255,255,0.1)']}},
+
+	        },
+	        {
+	            name:'拣选单量',
+	            type:'line',
+	            symbol:'none',
+	            data:[2, 8, 500, 2000,200,100, 50,50],
+	            smooth: true,
+	            itemStyle : {
+                    normal : {
+                        lineStyle:{
+                            color:'#60ba9e'
+                        }
+                    }
+                },
+                areaStyle: {normal: { color: ['rgba(255,255,255,0.1)']}},
+
+	        },
+	        {
+	            name:'质检单量',
+	            type:'line',
+	             symbol:'none',
+	            data:[150, 500, 530, 1500, 1000, 330, 410,60],
+	            smooth: true,
+	            itemStyle : {
+                    normal : {
+                        lineStyle:{
+                            color:'#476d9e'
+                        }
+                    }
+                },
+                areaStyle: {normal: { color: ['rgba(255,255,255,0.1)']}},
+
+	        },
+	        {
+	            name:'出库单量',
+	            type:'line',
+	             symbol:'none',
+	            data:[800, 400, 1500, 1200, 800, 700, 600,200],
+	            smooth: true,
+	            itemStyle : {
+                    normal : {
+                        lineStyle:{
+                            color:'#b1526a'
+                        }
+                    }
+                },
+	            areaStyle: {normal: { color: ['rgba(255,255,255,0.1)']}},
+	        }
+	    ]
+	};
+
+	let myChart2 =echarts.init(document.getElementById('ship_order'));
+	let option2 = {
+		backgroundColor: '#1b1e25',
+		title: {
+	       text: '货主订单执行情况',
+	       textStyle:{ //设置主标题风格
+			 color:'#ffffff',//设置主标题字体颜色
+			 fontSize:'14px',
+
+			},
+			subtext: '货主1   货主2     货主3     货主4     货主5     货主6      货主7',
+			subtextStyle: {
+		        color: '#ffffff'  // 副标题文字颜色
+		    }
+	    },
+	    color: ['#ed4b97', '#26a0c9', '#44cb90', '#d2bd7a'],
+	      tooltip: {},
+	    legend: {
+	        data: ['未开始', '作业中', '出库', '拦截'],
+	        textStyle: {
+		        color: '#ffffff'
+		    },
+		    right: 10,
+		    itemWidth: 10,
+            itemHeight: 10
+	    },
+
+	    calculable: true,
+	     grid: {
+	        left: '3%',
+	        right: '3%',
+	        bottom:"20",
+	        containLabel: true
+	    },
+	    xAxis: [
+	        {
+	            type: 'category',
+	            axisTick: {show: false},
+	            data: ['货主1', '货主2', '货主3', '货主4', '货主5','货主6','货主7'],
+	            "axisLabel":{
+		    		interval: 0
+		    	},
+		    	axisLine:{
+                  lineStyle:{
+                    color:'#ffffff',
+                    width:1,//这里是为了突出显示加上的
+                  }
+               },
+
+	        }
+	    ],
+	    dataZoom: [{
+                     type: 'slider',
+                     show: true, //flase直接隐藏图形
+                     xAxisIndex: [0],
+                     left: '9%', //滚动条靠左侧的百分比
+                     bottom: -5,
+                     height: 15,
+                     start: 0,//滚动条的起始位置
+                     end: 50
+         }] ,
+	    yAxis: [
+	        {
+	        	splitLine:{
+		            lineStyle:{
+		                color: '#21242b',
+		            }
+		        },
+	            type: 'value',
+	            axisLine:{
+                    lineStyle:{
+                        color:'#43484e',
+                        width:0,//这里是为了突出显示加上的
+                    }
+                }
+	        }
+	    ],
+	    series: [
+	        {
+	            name: '未开始',
+	            type: 'bar',
+	            barGap: 0.2,
+	            data: [320, 332,310,200,222,40,300]
+	        },
+	        {
+	            name: '作业中',
+	            type: 'bar',
+	            data: [130, 182,30,50,122,20,30]
+	        },
+	        {
+	            name: '出库',
+	            type: 'bar',
+	            data: [320, 82,220,250,322,50,10]
+	        },
+	        {
+	            name: '拦截',
+	            type: 'bar',
+	            data: [100, 182,120,100,22,100,30]
+	        }
+	    ]
+	};
+	let myChart3 =echarts.init(document.getElementById('imple'));
+	let option3 = {
+		grid: {
+	        left: '3%',
+	        right: '3%',
+	        top: '10%',
+	        bottom:"2%",
+	        containLabel: true
+	    },
+		title: {
+	       text: '订单执行情况',
+	       textStyle:{ //设置主标题风格
+			 color:'#90939a',//设置主标题字体颜色
+			 fontSize:'14px',
+
+			},
+	    },
+		backgroundColor: '#1b1e25',
+	    tooltip: {
+	        trigger: 'item',
+	        formatter: " {b}:{d}%"
+	    },
+	    legend: {
+	        orient: 'vertical',
+	        right: 10,
+            y:'center',
+            textStyle: {
+		        color: '#7c8081'
+		    },
+            itemWidth: 10,
+            itemHeight: 10,
+	        data:['未开始','波次','拣选','质检','拦截','出库'],
+	        formatter: function (params) {
+			   for (var i = 0; i < option3.series[0].data.length; i++) {
+			       if (option3.series[0].data[i].name == params) {
+			           return params +":"+ option3.series[0].data[i].value;
+			       }
+			   }
+			}
+
+	    },
+	    series: [
+	        {
+	            name:'订单执行情况',
+	            type:'pie',
+	            radius: ['50%', '70%'],
+	            avoidLabelOverlap: false,
+	            label: {
+	                normal: {
+	                    show: false,
+	                    position: 'center'
+	                },
+	                emphasis: {
+	                    show: true,
+	                    textStyle: {
+	                        fontSize: '20',
+	                        fontWeight: 'bold'
+	                    }
+	                }
+	            },
+
+	            labelLine: {
+	                normal: {
+	                    show: false
+	                }
+	            },
+	            data:[
+	                {value:734, name:'未开始'},
+	                {value:260, name:'波次'},
+	                {value:62, name:'拣选'},
+	                {value:294, name:'质检'},
+	                {value:5376, name:'拦截'},
+	                {value:17672, name:'出库'}
+	            ],
+			    itemStyle: {
+                    emphasis: {
+                        shadowBlur: 10,
+                        shadowOffsetX: 0,
+                        shadowColor: 'rgba(0, 0, 0, 0.5)'
+                     },
+                    normal:{
+                        color:function(params) {
+                        //自定义颜色
+                        var colorList = [
+                                '#74529e', '#da8f3c', '#447cb7', '#be4868', '#4dc892', '#efbb43',
+                            ];
+                            return colorList[params.dataIndex]
+                         }
+                    }
+              }
+	        }
+	    ]
+	};
+  myChart1.setOption(option1);//今日作业趋势
+  myChart2.setOption(option2);//货主订单执行情况
+  myChart3.setOption(option3);//订单执行情况
+      },
+      data() {
+        return {
+
+        }
+      },
+      methods: {
+
+      }
+    }
+</script>
+<style scoped lang="scss">/*大屏*/
+#container{height: 99%;background: #15181d;overflow: hidden;position: relative;padding: 0 2%;color: #ffffff;}
+.page_top{height: 13%;display: flex; flex-wrap: nowrap;justify-content: space-between;align-items:center;}
+.top_left{display: flex;justify-content:flex-start;align-items: center;}
+.top_time{float: right;display: flex;}
+.logo{display: flex;}
+.wms_name{display: flex;position: relative;font-size: 36px;color: #777985;margin-left: 5px;margin-right: 45px;}
+.wms_name em{position: absolute;display: block;background: #3c7cc6; right:-30px;top:10px;width: 27px;height: 15px;line-height: 15px;font-size: 12px;color: #FFFFFF;text-align: center;}
+.depot{display: flex;width:76px;height: 22px;background: #7a7a78;position: relative;justify-content:center;}
+.depot input{display: block;text-align: center; width: 100%;height: 22px;background: transparent;cursor: pointer;color: #5a9d67;font-weight: 900;box-sizing: border-box;line-height: 22px;}
+.depot input::-webkit-input-placeholder {color:#5a9d67;}
+.depot input:-moz-placeholder {color:#5a9d67;}
+.depot input::-moz-placeholder {color:#5a9d67;}
+.depot input:-ms-input-placeholder {color:#5a9d67;}
+.depo_down{position: absolute;width: 100%;left: 0;top: 22px;color: #FFFFFF;text-align: center;display: none;}
+.depo_down li{cursor: pointer;background: #7a7a78;transition: all .3s ease-in;}
+.depo_down li:hover{background: #6b6a6d;}
+.depo_down li+li{border-top: 1px dashed #b0b0b0;line-height: 26px;}
+.top_time{display: flex;justify-content:flex-end;height: 100%;align-items: center;}
+.top_time input{width: 140px;height: 22px;line-height: 22px;text-align: center;background: #2d313c;color: #FFFFFF;font-size: 14px;cursor: pointer;}
+.top_time span{margin: 0 5px;font-size: 12px;}
+.top_time .layui-laydate .layui-this{background-color:#7a7a78 !important;}
+/*top*/
+.order_list{height: 12.5%;display: flex;justify-content: space-between;align-items:center;}
+.order{height: 100%;background: #1b1e25;display: flex; flex-direction:column;padding-top: 5px; justify-content: center;align-items: flex-start;width:19.2%;padding-left: 1.2%;box-sizing: border-box;}
+.order_name{font-size: 14px;color: #989399;line-height: 26px;}
+.order_num{font-family: "黑体"; height: 100%;display: flex;justify-content:flex-start;align-items:center ;font-size: 32px;font-weight: 900;}
+.maina{height: 568px;background: #0c111d;margin-top: 1%;display: flex;justify-content:space-between;align-items:center;}
+.main_left{display: flex; width:48%;height: 100%;flex-direction: column;justify-content:center;align-items:center;}
+.main_midd{display: flex; width:35%;height: 100%;flex-direction: column;justify-content:space-between;align-items:flex-start;}
+.home_today{width: 100%;height: 49%;display: flex;background: #1b1e25;flex-direction: column;justify-content:flex-start;align-items:flex-start; margin-bottom: 2%;padding-top: 2%;box-sizing: border-box;}
+.home_tit{flex-grow:0;flex-shrink:0;display: flex;font-size: 14px;color: #797c85;padding-left: 3%;box-sizing: border-box;}
+.home_list{flex-grow:0;flex-shrink:0;padding-left: 2%;box-sizing: border-box;margin-top: 10px; display: flex;flex-direction: row ;width: 100%; justify-content: space-between;align-items:flex-start;}
+.home_order{width: 25%; display: flex;flex-direction: column;justify-content:flex-start;align-items:flex-start;}
+.home_name{font-size: 12px;color: #aca9b0;}
+.home_num{font-size: 18px;}
+.new_num{color: #533d86;}
+.jian_num{color: #60ba9e;}
+.zhi_num{color: #476d9e;}
+.chu_num{color: #b1526a;}
+.ship_order{width: 100%;height: 49%;display: flex;background: #1b1e25;}
+#home_today{width: 100%;display: flex;height: 100%;flex-direction: column;justify-content:flex-start;align-items:flex-start;}
+#ship_order{padding-top:10px;box-sizing: border-box;}
+.imple{width: 100%;height: 49%;padding-right: 20px;box-sizing: border-box; display: flex;background: #1b1e25;flex-direction: column;justify-content:flex-start;align-items:flex-start; margin-bottom: 2%;padding-top: 2%;box-sizing: border-box;}
+.order_wait{width: 100%;height: 49%;display: flex;justify-content:space-between;align-items:flex-start; box-sizing: border-box;}
+.commis{display: flex; width:49%;height: 100%;flex-direction: column;justify-content:center;align-items:flex-start;background: #1b1e25;padding:0 10px;box-sizing: border-box;}
+.comm_tit{font-size: 14px;color: #979b9e; padding-left: 17px;box-sizing: border-box;padding-top: 5px; line-height: 28px;}
+.comm_list{display: flex;height: 100%;width: 100%; flex-direction: column;justify-content: center;align-items: center;}
+.comm_cont{border-bottom: 2px solid #1e2225; display: flex;width: 100%;justify-content: space-between;align-items: center;}
+.com_name{display: flex;background: #d4d6d5;color: #2e2e2c;padding: 0 5px;}
+.com_num{display: flex;}
+.abort{display: flex; width:49%;height: 100%;flex-direction: column;padding-bottom: 10px;box-sizing: border-box; justify-content:flex-start;align-items:flex-start;background: #1b1e25;}
+.abot_tit{font-size: 14px;color: #e0e1e3;padding-left: 17px;box-sizing: border-box;padding-top: 5px;line-height: 28px;}
+.abort_box{display: flex;width: 100%;height: 100%;overflow: hidden;flex-direction: column;justify-content:flex-start;align-items:flex-start;}
+.abort_list{font-size: 14px;color: #e0e1e3;padding:0 10px;box-sizing: border-box; display: flex;width: 100%;height: 100%;overflow-y: scroll;flex-direction: column;justify-content:flex-start;align-items:flex-start;}
+.abort_cont{line-height:30px; display: flex;width: 100%;justify-content: space-between;align-items: center;}
+.abort_name{display: flex;width: 50%;justify-content:flex-start;align-items: center;}
+.abort_num{display: flex;width: 50%;justify-content:flex-start;align-items: center;}
+.abort_use{width: 100%;height: auto;}
+/*截止时间出库率*/
+.main_rig{display: flex;background: #1b1e25; width:15%;height: 100%;flex-direction: column;justify-content:flex-start;align-items:flex-start;padding: 10px;box-sizing: border-box;}
+.situ_tit{display: flex; font-size: 14px;color: #979b9e;line-height: 20px;padding-top: 5px;}
+.situ_use {display: flex;width: 100%;height: 100%;overflow: hidden;flex-direction: column;justify-content: flex-start;align-items: flex-start;}
+.situ_list{font-size: 14px;color: #e0e1e3;padding:0 10px;box-sizing: border-box; display: flex;width: 100%;height: 100%;overflow-y: scroll;flex-direction: column;justify-content:flex-start;align-items:flex-start;}
+.situ_use{width: 100%;height: 100%;}
+.situ_top span{vertical-align: middle;}
+.situ_name{display: inline-block;height: 20px;line-height: 20px;background: #d1d2d4;padding: 0 10px;color: #454b4b;}
+.situ_use ul{height: auto;width: 100%;}
+.situ_time{margin-left: 2px;}
+.situ_use li{margin-top: 10px;}
+.lssl{display: flex;justify-content: space-between;align-items: center;width: 100%;margin-top: 5px;}
+.lsl_name{display: flex;color: #898e94;}
+.lsl_num{display: flex;color: #dfe0e5;}
+.lal_all{width: 100%;height: 5px;background: #704fba;}
+.quan{display: flex;justify-content: space-between;align-items: center;width: 100%;margin-top: 5px;}
+.quan_name{display: flex;color: #898e94;}
+.quan_num{display: flex;color: #dfe0e5;}
+.quan_all{width: 100%;height: 5px;background: #1f2326;margin-top: 2px;position: relative;}
+.tity{width: 20%;height: 5px;position: absolute;left: 0;top: 0;background: #4983d4;}
+/*大屏*/
+
+ h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td, img{border:medium none;margin: 0;padding: 0;font-size: 100%;}
+button, input, select, textarea{font-size: 14px;line-height: 1.5;font-family: Arial, 'Microsoft Yahei';}
+h1, h2, h3, h4, h5, h6{font-weight: normal;}
+em{font-style:normal;}
+ul, ol{list-style: none;}
+input[type="text"],
+input[type="password"],
+button{background: none;border: none;outline: none;-webkit-appearance: none;}
+textarea{resize: none;}
+a{text-decoration: none;color:#333;}
+a:hover{text-decoration: none;
+		color:#008ccb;
+		-moz-transition: all 0.3s ease-in;
+		-webkit-transition: all 0.3s ease-in;
+		-o-transition: all 0.3s ease-in;
+		transition: all 0.3s ease-in;
+}
+img{border:0px;  outline-width:0px;  vertical-align:top;}
+.clearfix { *zoom: 1; }
+.clearfix:before, .clearfix:after {  display: table; line-height: 0; content: ""; }
+.clearfix:after { clear: both; }
+.fl { float:left;}
+.fr { float:right;}
+.hide { display:none !important;}
+.show { display:block !important;}
+
+
+/* Loader container */
+.shcl {
+    position: relative;
+    width: 100px;
+    height: 100px;
+    margin: 0 auto;
+}
+
+
+/* Progress status */
+.shcl > span {
+    font-family: Verdana, Tahoma, Arial, sans-serif;
+    font-size: 14px;
+    color: black;
+}
+
+/* Loader dots */
+.shcl > div {
+    position: absolute;
+    visibility: hidden;
+    width: 10px;
+    height: 10px;
+    background: transparent;
+    box-shadow: 0 0 10px black;
+
+    -webkit-border-radius: 5px;
+    -webkit-animation-name: shcl_bounce;
+    -webkit-animation-duration: 1s;
+    -webkit-animation-iteration-count: infinite;
+    -webkit-animation-direction: linear;
+
+    -moz-border-radius: 5px;
+    -moz-animation-name: shcl_bounce;
+    -moz-animation-duration: 1s;
+    -moz-animation-iteration-count: infinite;
+    -moz-animation-direction: linear;
+
+    -o-border-radius: 5px;
+    -o-animation-name: shcl_bounce;
+    -o-animation-duration: 1s;
+    -o-animation-iteration-count: infinite;
+    -o-animation-direction: linear;
+
+    -ms-border-radius: 5px;
+    -ms-animation-name: shcl_bounce;
+    -ms-animation-duration: 1s;
+    -ms-animation-iteration-count: infinite;
+    -ms-animation-direction: linear;
+
+    border-radius: 5px;
+    animation-name: shcl_bounce;
+    animation-duration: 1s;
+    animation-iteration-count: infinite;
+    animation-direction: linear;
+}
+
+/* Animation keyframes */
+
+@-webkit-keyframes shcl_bounce {
+    0% {-webkit-transform: scale(1);}
+    80% {-webkit-transform: scale(.3);}
+    100% {-webkit-transform: scale(1);}
+}
+
+@-moz-keyframes shcl_bounce {
+    0% {-moz-transform: scale(1);}
+    80% {-moz-transform: scale(.3);}
+    100% {-moz-transform: scale(1);}
+}
+
+@-o-keyframes shcl_bounce {
+    0% {-o-transform: scale(1);}
+    80% {-o-transform: scale(.3);}
+    100% {-o-transform: scale(1);}
+}
+
+@-ms-keyframes shcl_bounce {
+    0% {-ms-transform: scale(1);}
+    80% {-ms-transform: scale(.3);}
+    100% {-ms-transform: scale(1);}
+}
+
+@keyframes shcl_bounce {
+    0% {transform: scale(1);}
+    80% {transform: scale(.3);}
+    100% {transform: scale(1);}
+}
+
+#loader{
+	width: 80px;
+	height: 80px;
+	position: absolute;
+	top: 50%;
+	left: 50%;
+	margin: -40px 0 0 -40px;
+	z-index: 1000;
+}
+
+
+
+
+
+</style>

+ 506 - 0
src/views/statistics/indexold.vue

@@ -0,0 +1,506 @@
+<template>
+  <!-- <dv-full-screen-container> -->
+    <el-scrollbar class="screen" ref="scrollDiv" >
+    <!-- :style="{height:height}" -->
+      <div class="statistics">
+        <div class="editDate">
+          <!-- <div class="stitle">实验室管理看板</div>
+          <div class="block" style="display:none">
+            <span class="demonstration">开始:</span>
+            <el-date-picker v-model="BeginDate" type="year" size="mini" value-format="yyyy" format="yyyy年"  style="width: 96px;"
+              :clearable="false" @change="checkYear(BeginDate,'begin')" placeholder="选择日期">
+            </el-date-picker>
+          </div>
+
+          <div class="block">
+            <span class="demonstration">查询年度:</span>
+            <!-- <el-date-picker v-model="endDate" type="year" size="mini" value-format="yyyy" format="yyyy年"  :clearable="false" style="width: 96px;"
+              @change="checkYear(endDate,'end')" placeholder="选择日期"> -->
+                <!-- <el-date-picker
+                  v-model="endDate"
+                  type="year"
+                  value-format="yyyy"
+                  @change="checkYear(endDate,'end')"
+                  placeholder="选择年">
+                </el-date-picker> -->
+            <!-- </el-date-picker> -->
+          <!-- </div>
+
+          <div class="block">
+            <el-button type="primary" size="mini" plain @click="selectAll">
+              查询
+            </el-button>
+          </div>
+
+          <div class="goBackButton" @click.prevent="goBack()" >
+            返回 -->
+          <!-- </div> -->
+
+        </div>
+        <!-- <div class="ttitle">质量目标统计</div> -->
+        <div class="componentsData" v-if="relOf">
+            <s1zhiLiangMuBiao :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[1]" :data = "getS1renwu()"/>
+            <s1jianCe :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[5]" :data = "getS2jianCe()" />
+            <s2manYiDu :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[7]"  :data = "getS2manYiDu()"/>
+            <s3tousu :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[6]" :data = "getS3tousu()"/>
+            <s13shengWu :width="static=='row' ? '20%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[17]" :data = "getS3tousu()"/>
+            <!-- <s1zhiLiang1 :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[2]"    />
+            <s1zhiLiang2 :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[3]"   />
+            <s1zhiLiang3 :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[4]"  /> -->
+
+            
+            <!-- <s4renYuanPeiXun :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[8]" :data = "getS4renYuanPeiXun()"/> -->
+
+            <!-- <none :width="static=='row' ? '20%': '100%'"
+            /> -->
+            <!-- <s6sheBeiWeiHu :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[10]" :data = "getS6sheBeiWeiHu()"/> -->
+            <!-- <s7sheBeiJiaoZhun :width="'50%'"
+            v-if="showAll || showComponents[12]" :data = "getJiaoYanObjNum()"/>
+            <s8sheBeiHeCha :width="'50%'"
+            v-if="showAll || showComponents[11]" :data = "gethechaObjNum()"/> -->
+            <!-- <s10waiBuNengLi :width="'50%'"
+            v-if="showAll || showComponents[14]" :data = "getnengtliObjNum()"/> -->
+            <!-- <s11biaoZhunWu :width="'50%'"
+            v-if="showAll || showComponents[15]" :data = "getbiaozhunObjNum()"/> -->
+            <!-- <s5renYuanJianDu :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[9]" :data = "getS5renYuanJianDu()"/> -->
+            <!-- <s9neiBuZhiLiang :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[13]" :data = "getS9neiBuZhiLiang()"/> -->
+            <!-- <s12fengXian :width="static=='row' ? '20%': '100%'"
+            v-if="showAll || showComponents[13]" :data = "getS12fengXian()"/> -->
+            <!-- <div class="clear"></div>
+        </div>
+        <div class="ttitle">人员培训与管理</div>
+        <div class="componentsData" v-if="relOf"> -->
+            <s4renYuanPeiXun :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[8]" :data = "getS4renYuanPeiXun()"/>
+            <s5renYuanJianDu :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[9]" :data = "getS5renYuanJianDu()"/>
+            <!-- <div class="clear"></div>
+
+        </div>
+        <div class="ttitle">设备维保</div>
+        <div class="componentsData" v-if="relOf"> -->
+            <s7sheBeiJiaoZhun :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[12]" :data = "getJiaoYanObjNum()"/>
+            <s8sheBeiHeCha :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[11]" :data = "gethechaObjNum()"/>
+            <s11biaoZhunWu :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[15]" :data = "getbiaozhunObjNum()"/>
+            <s16bzJunZhu :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[20]" :data = "getbzJunZhujNum()"/>
+            <s17bzXiBao :width="static=='row' ? '33%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[21]" :data = "getbzXiBaoObjNum()"/>
+            <!-- <div class="clear"></div>
+
+        </div>
+        <div class="ttitle">质量控制</div>
+        <div class="componentsData" v-if="relOf"> -->
+            <s9neiBuZhiLiang :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[13]" :data = "getS9neiBuZhiLiang()"/>
+            <s10waiBuNengLi :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[14]" :data = "getnengtliObjNum()"/>
+            <s14bufuhexiang :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[18]" :data = "getS14bufuhexiang()"/>
+            <!-- <div class="clear"></div>
+
+        </div>
+        <div class="ttitle">风险控制</div>
+        <div class="componentsData" v-if="relOf"> -->
+            <s12fengXian :width="static=='row' ? '25%': '100%'" :colorw = "colorw"
+            v-if="showAll || showComponents[16]" :data = "getS12fengXian()"/>
+            <div class="clear"></div>
+
+        </div>
+       
+
+
+
+      </div>
+    </el-scrollbar>
+  <!-- </dv-full-screen-container> -->
+</template>
+
+<script>
+  //全屏展示
+  import screenfull from 'screenfull'
+  //大屏标题组件
+  // import headerDecoration from './headerDecoration'
+
+  import s1zhiLiangMuBiao from './item/s1zhiLiangMuBiao.vue'
+  import s1zhiLiang1 from './item/s1zhiLiang1.vue'
+  import s1zhiLiang2 from './item/s1zhiLiang2.vue'
+  import s1zhiLiang3 from './item/s1zhiLiang3.vue'
+  
+  import s1jianCe from './item/s1jianCe.vue'
+  import s2manYiDu from './item/s2manYiDu.vue'
+  import s3tousu from './item/s3tousu.vue'
+  import s4renYuanPeiXun from './item/s4renYuanPeiXun.vue'
+  import s5renYuanJianDu from './item/s5renYuanJianDu.vue'
+  import s6sheBeiWeiHu from './item/s6sheBeiWeiHu.vue'
+  import s7sheBeiJiaoZhun from './item/s7sheBeiJiaoZhun.vue'
+  import s8sheBeiHeCha from './item/s8sheBeiHeCha.vue'
+  import s9neiBuZhiLiang from './item/s9neiBuZhiLiang.vue'
+  import s10waiBuNengLi from './item/s10waiBuNengLi.vue'
+  import s11biaoZhunWu from './item/s11biaoZhunWu.vue'
+  import s12fengXian from './item/s12fengXian.vue'
+  import s13shengWu from './item/s13shengWu.vue'
+  import s14bufuhexiang from './item/s14bufuhexiang.vue'
+  import s15tousu from './item/s15tousu.vue'
+  import s16bzJunZhu from './item/s16bzJunZhu.vue'
+  import s17bzXiBao from './item/s17bzXiBao.vue'
+
+
+  import none from './item/none.vue'
+
+  import { DBData ,getConfig,getJiaoYanObj, gethechaObj, getnengliObj, getbiaozhunObj,getbiaozhunTObj,getbzJunZhuObj,getbzJunZhuTObj,getbzXiBaoObj,getbzXiBaoTObj} from './js/selectDB.js'
+  import sendDatas from './sendDatas.js'
+  import repostCurd from '@/business/platform/form/utils/custom/joinCURD.js'
+  export default {
+    components:{
+      // headerDecoration,
+      none,
+      s1zhiLiang1,
+      s1zhiLiang2,
+      s1zhiLiang3,
+      s1zhiLiangMuBiao,
+      s1jianCe,
+      s2manYiDu,
+      s3tousu,
+      s4renYuanPeiXun,
+      s5renYuanJianDu,
+      s6sheBeiWeiHu,
+      s7sheBeiJiaoZhun,
+      s8sheBeiHeCha,
+      s9neiBuZhiLiang,
+      s10waiBuNengLi,
+      s11biaoZhunWu,
+      s12fengXian,
+      s13shengWu,
+      s14bufuhexiang,
+      s15tousu,
+      s16bzJunZhu,
+      s17bzXiBao
+    },
+    props:{
+    shows:{ //传入的内容显示序号
+        type: Array,
+        default:() => []
+      },
+    static:{ //显示类型,默认为横向   ,作为表单统计图的外部引用为 line
+        type: String,
+        default:'row'
+      }
+   },
+    mixins: [sendDatas],
+    mounted() {
+      /*以shows是否有参数来判断, 是否需要仅显示部分子组件*/
+      if(this.shows.length>0){
+        this.showAll=false
+        this.isShowComponents()
+      }
+      /* 开始及结束时间的默认设置*/
+      if (!this.BeginDate && !this.endDate) {
+        this.BeginDate = this.getDate(1) + ''
+        this.endDate = this.getDate(0) + ''
+        this.dataScope.push(this.BeginDate)
+        this.dataScope.push(this.endDate)
+      }
+      this.getConfigData() //获取统计的配置
+    },
+    data() {
+      return {
+        height:(window.screen.height-200)+"px",
+        BeginDate: '',
+        endDate: '',
+        jiaoyanObj:[],
+        hechaObj:[],
+        nengliObj:[],
+        biaozhunObj:[],
+        biaozhunTObj:[],
+        bzJunZhuObj:[],
+        bzJunZhuTObj:[],
+        bzXiBaoObj:[],
+        bzXiBaoTObj:[],
+        relData: {},
+        relOf: false,
+        selectEnd: '',
+        selectBeg: '',
+        showAll:true,
+        timer: '',
+        showComponents:{},//显示全部统计子组件 , 若有新增,往后累计。 供动态表单进行查阅使用。
+        dataScope: [],
+        colorw: '#000'
+
+      }
+    },
+     beforeDestroy() {
+          clearInterval(this.timer);
+        },
+    methods: {
+      /* 判断是否统计子组件中传递过来的,是否需要隐藏。若需要则进行隐藏的遍历  */
+      isShowComponents(){
+        /* 将参数进行显示 */
+          for(let i=0;i<this.shows.length;i++){
+            this.showComponents[this.shows[i]] = true
+          }
+      },
+      /* 查询统计配置中的完成率*/
+      getConfigData() {
+        repostCurd('sql', getConfig()).then(response => {
+          this.config = response.variables.data //结果一定存在第0个,因为只有一条数据
+          this.getJiaoYanObjData(this.endDate)
+
+        })
+      },
+      getJiaoYanObjData(end) {
+        repostCurd('sql', getJiaoYanObj(end)).then(response => {
+          this.jiaoyanObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          // console.log(end,this.jiaoyanObj,"nmnakak")
+          this.gethechaObjData(this.endDate)
+        })
+      },
+      gethechaObjData(end) {
+        repostCurd('sql', gethechaObj(end)).then(response => {
+          this.hechaObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          this.getnengliObjData(this.endDate)
+        })
+      },
+      getnengliObjData(end) {
+        repostCurd('sql', getnengliObj(end)).then(response => {
+          this.nengliObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          this.getbiaozhunObjData(this.endDate)
+        })
+      },
+      getbiaozhunObjData(end) {
+        repostCurd('sql', getbiaozhunObj(end)).then(response => {
+          this.biaozhunObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          // console.log(this.biaozhunObj,'8888')
+          repostCurd('sql', getbiaozhunTObj(end)).then(response => {
+            this.biaozhunTObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+            // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+            // console.log(this.biaozhunTObj,'8888')
+            this.getbzJunZhuObjData(this.endDate)
+          })
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+        })
+      },
+      getbzJunZhuObjData(end) {
+        repostCurd('sql', getbzJunZhuObj(end)).then(response => {
+          this.bzJunZhuObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          // console.log(this.biaozhunObj,'8888')
+          repostCurd('sql', getbzJunZhuTObj(end)).then(response => {
+            this.bzJunZhuTObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+            // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+            // console.log(this.biaozhunTObj,'8888')
+            this.getbzXiBaoObjData(this.endDate)
+          })
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+        })
+      },
+      getbzXiBaoObjData(end) {
+        repostCurd('sql', getbzXiBaoObj(end)).then(response => {
+          this.bzXiBaoObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          // console.log(this.biaozhunObj,'8888')
+          repostCurd('sql', getbzXiBaoTObj(end)).then(response => {
+            this.bzXiBaoTObj = response.variables.data //结果一定存在第0个,因为只有一条数据
+            // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+            // console.log(this.biaozhunTObj,'8888')
+            this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+          })
+          // this.getData(this.BeginDate, this.endDate, true, this.dataScope)
+        })
+      },
+      /* 通过拼接的sql进行查询全部数据*/
+      getData(beg, end, of, scope) {
+        // console.log(2222,DBData(beg, end, scope))
+        repostCurd('sql', DBData(beg, end, scope)).then(response => {
+          if(typeof response.variables.data[0] === "undefined"){
+            this.relData = [0] //结果一定存在第0个,因为只有一条数据
+
+          }else{
+            this.relData = response.variables.data[0] //结果一定存在第0个,因为只有一条数据
+
+          }
+          this.relOf = of
+          // console.log(beg, end, of, response,this.relData,'getdata')
+        })
+      },
+      /* 查询全部*/
+      selectAll() {
+        /* 上次查询时间不等于当次查询时间,    开始时间不能等于结束时间, 则开始查询。*/
+        if (this.selectEnd != this.endDate) {
+        // if ((this.selectEnd != this.endDate || this.selectBeg != this.BeginDate) && this.endDate != this.BeginDate && this.endDate > this.BeginDate) {
+          // this.getData(this.BeginDate, this.endDate, false, this.dataScope)
+          this.getConfigData()
+          // this.$forceUpdate();
+
+          // this.selectEnd = this.endDate
+          // this.selectBeg = this.BeginDate
+          /* 延迟刷新*/
+
+          this.relOf = true;
+          this.timer = setTimeout(() => {
+            this.relOf = false
+            clearTimeout(this.timer)
+          }, 0)
+          
+          // this.timer = setInterval(() => {
+          //   if (!this.relOf) {
+          //     this.relOf = true
+          //     clearInterval(this.timer)
+          //   }
+          // }, 100);
+        } 
+        // else if (this.endDate == this.BeginDate) {
+        //   this.$message({
+        //     showClose: true,
+        //     message: '年份相等无法进行查询对比',
+        //     type: 'warning'
+        //   });
+        // } else if(this.endDate < this.BeginDate){
+        //   this.$message({
+        //     showClose: true,
+        //     message: '结束时间不得小于开始时间',
+        //     type: 'warning'
+        //   });
+        // }
+      },
+      /* 年份不得大于当前年份*/
+      checkYear(year, data) {
+        // let that = this
+        // that.dataScope.length = 0
+        // if(that.BeginDate != '' && that.endDate != ''){
+        //   let poor = Number(that.endDate) - Number(that.BeginDate)
+        //   for (let i = 0; i <= poor; i++) {
+        //     let element = Number(that.BeginDate) + i;
+        //     that.dataScope.push(element+'')
+        //   }
+        // }
+        if (Number(year) > Number(this.getDate(0))) {
+          // console.log(data,'3y87sdvfsdf')
+          data == 'end' ?
+            this.endDate = this.getDate(0) + '' :
+            this.BeginDate = this.getDate(0) + ''
+
+          this.$message({
+            showClose: true,
+            message: '年份不得大于当前年份',
+            type: 'warning'
+          });
+          this.selectAll()
+        }
+        // else(
+        //   this.endDate = Number(year)
+        // )
+        //   this.$forceUpdate();
+
+      },
+      /* 获取当前年份*/
+      getDate(year) {
+        year = year || 0
+        let nowDate = new Date();
+        return nowDate.getFullYear() - year;
+      },
+      // allView(){
+      //   screenfull.request() //默认显示全屏
+      // },
+      goBack(){
+        this.$router.back(-1)
+      }
+    },
+    created() {
+      //时间
+      // this.currentTime()
+      if(screenfull.isEnabled && !screenfull.isFullscreen){
+      this.allView()
+        
+      }
+    },
+    beforeDestroy() {
+      if(screenfull.isFullscreen){
+        screenfull.toggle()
+        }
+    }
+  }
+</script>
+<style lang="scss">
+  .statistics {
+    .editDate{
+      overflow: hidden;
+      background-color:rgb(249, 255, 255);
+      position: relative;
+
+    }
+    .block{
+      float: left;
+      font-size: 14px;
+     }
+  }
+  #dv-full-screen-container {
+    // background-image: url('./img/stars.png');
+    // background-size: 100% 100%;
+    // box-shadow: 0 0 3px blue;bete
+    // display: flex;
+    // flex-direction: column;
+    background-color: #f9ffff;
+    display: flex;
+    flex-direction:column;
+    align-items: stretch;
+    
+  //  .headerContent{
+  //   flex: 1;
+    
+  //   // background-color: rgb(99, 12, 41);
+    
+
+  //  }
+  }
+  .goBackButton{
+    width: 2%;
+    position: absolute;
+    right: 0;
+  }
+  #dv-border-box-8{
+    border: none;
+  }
+  .stitle{
+    text-align: center;
+    font-size: 150%;
+    // font-family: PingFangSC-Semibold, sans-serif;
+    font-weight: 600;
+    margin: 0;
+  }
+  .ttitle{
+    font-size: 120%;
+    font-weight: 600;
+    margin: 1% 0;
+  }
+  .screen{
+    height: 100%;
+  }
+  .clear{ clear: both; }
+</style>
+<style lang="scss">
+.el-year-table .today .cell {
+  color: #606266 !important;
+  font-weight: 100 !important;
+}
+ 
+</style>

+ 4 - 4
src/views/statistics/item/s10waiBuNengLi.vue

@@ -48,7 +48,7 @@
     },
     data () {
       return {
-        title:'能力验证完成情况',
+        title:'外部质量评价完成情况',
         dialogOff:false,
       }
     },
@@ -86,7 +86,7 @@
         //  let max2=GetMax(data2)+1;
         //  let maxVal=max1>max2?max1:max2;
         //  console.log("max1:",max1,"max2:",max2);
-        let e = 100 -this.data.Num.valna
+        let e = 100 -this.data.Num.val
         console.log(e,'eeeeeeeeeeeeeeeeeeeeeeeeeeeeee')
 
        let option = {
@@ -109,8 +109,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.Num.valna, name: '能力验证完成率' },
-                { value: e, name: '能力验证未完成率' }
+                { value: this.data.Num.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 3 - 3
src/views/statistics/item/s10waiBuNengLiCol2.vue

@@ -86,7 +86,7 @@
         //  let max2=GetMax(data2)+1;
         //  let maxVal=max1>max2?max1:max2;
         //  console.log("max1:",max1,"max2:",max2);
-        let e=[this.data.Num.valAll,this.data.Num.valnum]
+        let e=[this.data.Num.numberAll,this.data.Num.number]
 
        let option = {
            //v3
@@ -105,7 +105,7 @@
             // },
             xAxis: { 
               type: 'category',
-              data:['能力验证计划数量', '能力验证完成数量']
+              data:['外部质量评价计划数量', '外部质量评价完成数量']
 
             },
             yAxis: [
@@ -113,7 +113,7 @@
                 type: 'value',
                 scale: true,
                 name: '数量',
-                max: this.data.Num.valnum>this.data.Num.valAll?this.data.Num.valnum+1:this.data.Num.valAll+1,
+                // max: this.data.Num.valnum>this.data.Num.valAll?this.data.Num.valnum+1:this.data.Num.valAll+1,
                 min: 0,
               },
             ],

+ 3 - 3
src/views/statistics/item/s11biaoZhunWu.vue

@@ -48,7 +48,7 @@
     },
     data () {
       return {
-        title:'标准物质期间核查完成情况',
+        title:'不合格样品项目值',
         dialogOff:false,
       }
     },
@@ -107,8 +107,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.Num.valna, name: '标准物质期间核查完成率' },
-                { value: e, name: '标准物质期间核查未完成率' }
+                { value: this.data.Num.valna, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 92 - 72
src/views/statistics/item/s11biaoZhunWuCol.vue

@@ -1,5 +1,6 @@
 <template>
-  <div @click="toDetailed()" class="statisticsPage" :style="{width:width}">
+  <!-- <div @click="toDetailed()" class="statisticsPage" :style="{width:width}"> -->
+  <div class="statisticsPage" :style="{width:width}">
     <div :id="id" :style="{height:height}"/>
     <!-- 打开详情弹窗-->
     <div v-if="dialogOff">
@@ -67,85 +68,104 @@
       },
       drawLine(){
         let s11biaoZhunWu = echarts.init(document.getElementById(this.id))
-         
-
+        let barColor = ['#66FFCC','#FFCCCC','#33FF00','#FF66CC','#EC5800','#AAFF00','#F8DE7E','#B87333','#FF4433','	#9F2B68','#C9A9A6','#C3B1E1','#880808','#097969','#89CFF0','#5D3FD3','	#FBCEB1','#E49B0F','#ECFFDC','#A52A2A','#D27D2D','#FFBF00','#A0522D','#FF00FF','#FFB6C1','#F89880','#D8BFD8','#5D3FD3','#770737','#DA70D6']
+        let barNum = []
+        for (let i = 0; i < this.data.Num.title.length-1; i++) {
+          barNum.push({
+            type: 'bar',
+            itemStyle: {color: barColor[i]},
+            label:{
+              normal:{
+                show:true,
+                position:'top',
+                        
+                textStyle:{
+                  fontSize:16,
+                  color:'#B0CEFC'
+                }
+              }
+            }
+          })
           
-        // let beginInof = GetPercent(Number(this.data.t_sbhcjlbBegin.number),Number(this.data.t_sbhcjhBegin.number))
-        // let endInof = GetPercent(Number(this.data.t_sbhcjlbEnd.number),Number(this.data.t_sbhcjhEnd.number))
-         
-        //  let data1 = [];
-        //  data1.push(this.data.t_sbhcjhBegin.number);
-        //  data1.push(this.data.t_sbhcjhEnd.number);
-        //  let data2 = [];
-        //  data2.push(this.data.t_sbhcjlbBegin.number);
-        //  data2.push(this.data.t_sbhcjlbEnd.number);
-        //  let data3 = [];
-        //  data3.push(this.data.t_sbhcjlbBegin.date);
-        //  data3.push(this.data.t_sbhcjlbEnd.date);
-        //  let max1=GetMax(data1)+1;
-        //  let max2=GetMax(data2)+1;
-        //  let maxVal=max1>max2?max1:max2;
-        //  console.log("max1:",max1,"max2:",max2);
-        let e=[this.data.Num.valnum,this.data.Num.valAll]
+        }  
 
-       let option = {
+        let option = {
            //v3
-         legend: {},
-            tooltip: {
-              trigger: 'axis',
-              axisPointer: {
-                type: 'shadow'
-              },
-              // formatter: function (params) {
-              //   return params[0].data[0] + '<br/>满意份数:' + params[0].data[1] + '<br/>调查总份数: ' + params[0].data[2];
-              // }
-            },
-            // dataset: {
-            //   source: barData
-            // },
-            xAxis: { 
-              type: 'category',
-              data:['标准物质期间核查总数', '标准物质期间核查已完成数量']
+          title: {
+            // text: this.title,
+            textStyle:{ fontSize:14,color: this.colorw }
+          },
+          // tooltip: {
+          //               trigger: 'axis',
+          //               axisPointer: {
+          //                 type: 'shadow'
+          //               },
+          //               formatter: function (datas) {
+          //                 // console.log(datas)
+          //                   var res=datas[0].name+"<BR>"+'期间核查次数:'+datas[0].data+"<BR>期间核查完成次数"+datas[1].data
+          //                   // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
+          //                   return res
+          //               }
+          // },
+          legend: {
+            textStyle: {
+                color: '#B0CEFC'  // 图例文字颜色
+            }
 
-            },
-            yAxis: [
-              {
-                type: 'value',
-                scale: true,
-                name: '数量',
-                max: this.data.Num.valnum>this.data.Num.valAll?this.data.Num.valnum+1:this.data.Num.valAll+1,
-                min: 0,
-              },
-            ],
-            series: [
-              {
-                data: e,
-                type: 'bar',
-                barWidth: '20%',
-                itemStyle: {
-                  color: '#0099ff'
-                },
-                label: {
-                  show: true,
-                  position: 'top'
-                },
+          },
+          grid: {
+                top: '10%',
+                left: '3%',
+                right: '4%',
+                bottom: '5%',
+                containLabel: true
+          },
+          xAxis: { 
+            splitLine:{show: false},
+            type: 'category',
+            axisLabel: {
+              show: true,
+              textStyle: {
+                color: '#fff'   //这里用参数代替了
               }
-            ],
-            grid: {
-              top: '20%',
-              left: '3%',
-              right: '4%',
-              bottom: '10%',
-              containLabel: true
             },
-            title: {
-              text: this.title,
-              textStyle:{ fontSize:14,color: this.colorw }
-
-              // subtext: "        "+beingDate+"-"+endDate
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
+          },
+          yAxis: {
+            splitLine:{show: false},
+            axisLabel: {
+              show: true,
+              textStyle: {
+                color: '#fff'    //这里用参数代替了
+              }
             },
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
+          },
+          dataset: {
+            dimensions: this.data.Num.title,
+            source: this.data.Num.number
+          },
+          series: barNum,
+          dataZoom: [
+            {
+                id: 'dataZoomY',
+                type: 'inside',
+                yAxisIndex: [0],
+                filterMode: 'empty'
+            }
+          ],
+       
        };
-
        option && s11biaoZhunWu.setOption(option);
       }
     }

+ 87 - 92
src/views/statistics/item/s11biaoZhunWuCol2.vue

@@ -1,5 +1,6 @@
 <template>
-  <div @click="toDetailed()" class="statisticsPage" :style="{width:width}">
+  <!-- <div @click="toDetailed()" class="statisticsPage" :style="{width:width}"> -->
+  <div class="statisticsPage" :style="{width:width}">
     <div :id="id" :style="{height:height}"/>
     <!-- 打开详情弹窗-->
     <div v-if="dialogOff">
@@ -48,7 +49,7 @@
     },
     data () {
       return {
-        title:'各个标准物质期间核查数量',
+        // title:'各个标准物质期间核查数量',
         dialogOff:false,
       }
     },
@@ -67,117 +68,111 @@
       },
       drawLine(){
         let s11biaoZhunWu = echarts.init(document.getElementById(this.id))
-         
-
+        let barColor = ['#66FFCC','#FFCCCC','#33FF00','#FF66CC','#EC5800','#AAFF00','#F8DE7E','#B87333','#FF4433','	#9F2B68','#C9A9A6','#C3B1E1','#880808','#097969','#89CFF0','#5D3FD3','	#FBCEB1','#E49B0F','#ECFFDC','#A52A2A','#D27D2D','#FFBF00','#A0522D','#FF00FF','#FFB6C1','#F89880','#D8BFD8','#5D3FD3','#770737','#DA70D6']
+        let barNum = []
+        for (let i = 0; i < this.data.Num.title.length-1; i++) {
+          barNum.push({
+            type: 'bar',
+            itemStyle: {color: barColor[i]},
+            label:{
+              normal:{
+                show:true,
+                position:'top',
+                        
+                textStyle:{
+                  fontSize:16,
+                  color:'#B0CEFC'
+                }
+              }
+            }
+          })
           
-        // let beginInof = GetPercent(Number(this.data.t_sbhcjlbBegin.number),Number(this.data.t_sbhcjhBegin.number))
-        // let endInof = GetPercent(Number(this.data.t_sbhcjlbEnd.number),Number(this.data.t_sbhcjhEnd.number))
-         
-        //  let data1 = [];
-        //  data1.push(this.data.t_sbhcjhBegin.number);
-        //  data1.push(this.data.t_sbhcjhEnd.number);
-        //  let data2 = [];
-        //  data2.push(this.data.t_sbhcjlbBegin.number);
-        //  data2.push(this.data.t_sbhcjlbEnd.number);
-        //  let data3 = [];
-        //  data3.push(this.data.t_sbhcjlbBegin.date);
-        //  data3.push(this.data.t_sbhcjlbEnd.date);
-        //  let max1=GetMax(data1)+1;
-        //  let max2=GetMax(data2)+1;
-        //  let maxVal=max1>max2?max1:max2;
-        //  console.log("max1:",max1,"max2:",max2);
-       let option = {
+        }  
+        console.log(this.data.Num.title,this.data.Num.number,'bnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn')
+        let that = this
+        let option = {
            //v3
           title: {
-            text: this.title,
+            // text: this.title,
             textStyle:{ fontSize:14,color: this.colorw }
-
-            // subtext: this.data.Num.date+"年"
           },
-          tooltip: {
-                        trigger: 'axis',
-                        axisPointer: {
-                          type: 'shadow'
-                        },
-                        formatter: function (datas) {
-                          // console.log(datas)
-                            var res=datas[0].name+"<BR>"+'期间核查次数:'+datas[0].data+"<BR>期间核查完成次数"+datas[1].data
-                            // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
-                            return res
-                        }
+          // tooltip: {
+          //               trigger: 'axis',
+          //               axisPointer: {
+          //                 type: 'shadow'
+          //               },
+          //               formatter: function (datas) {
+          //                 // console.log(datas)
+          //                   var res=datas[0].name+"<BR>"+'期间核查次数:'+datas[0].data+"<BR>期间核查完成次数"+datas[1].data
+          //                   // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
+          //                   return res
+          //               }
+          // },
+          legend: {
+            textStyle: {
+                color: '#B0CEFC'  // 图例文字颜色
+            }
+
           },
-          legend: {},
           grid: {
                 top: '10%',
                 left: '3%',
                 right: '4%',
                 bottom: '5%',
                 containLabel: true
-                    },
-          xAxis: {
-            type: 'value',
-            boundaryGap: [0, 0.01]
           },
-          yAxis: {
+          xAxis: { 
+            splitLine:{show: false},
             type: 'category',
-            data: this.data.Num.name,
             axisLabel: {
-                show: true, // 是否显示X轴的内容,不包含两端的文字
-                interval: 0,
-                // rotate: '50', // 旋转50°
-                lineHeight: 18,
-                // formatter: function(params) {
-                //   //  console.log('formatter', params, params.length)
-                //   var newParamsName = ''// 最终拼接成的字符串
-                //   var paramsNameNumber = params.length// 实际标签的个数
-                //   var provideNumber = 3// 每行能显示的字的个数
-                //   // 判断标签的个数是否大于规定的个数, 如果大于,则进行换行处理 如果不大于,即等于或小于,就返回原标签
-                //   if (paramsNameNumber > provideNumber) {
-                //   // ********重点在这里********
-                //     newParamsName = params.substring(0, 3) + '..'// 最终拼成的字符串
-                //   } else { // 将旧标签的值赋给新标签
-                //     newParamsName = params
-                //   }
-                //   // 将最终的字符串返回
-                //   return newParamsName
-                // }
-              },
+              show: true,
+              textStyle: {
+                color: '#fff'   //这里用参数代替了
+              }
+            },
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
           },
-          series: [
-            {
-              type: 'bar',
-              data: this.data.Num.number,
-              itemStyle: {color: '#006699'},
-              label: {
-                show: true,
-                position: 'right'
-              },
+          yAxis: {
+            splitLine:{show: false},
+            axisLabel: {
+              show: true,
+              textStyle: {
+                color: '#fff'    //这里用参数代替了
+              }
             },
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
+          },
+          dataset: {
+            dimensions: this.data.Num.title,
+            source: this.data.Num.number
+          },
+          series: barNum,
+          dataZoom: [
             {
-              type: 'bar',
-              data: this.data.Num.numberAll,
-              itemStyle: {color: '#006633'},
-              label: {
-                show: true,
-                position: 'right'
-              },
-            },
-            // {
-            //   type: 'bar',
-            //   data: this.data.Num.numberAll
-            // },
+                id: 'dataZoomY',
+                type: 'inside',
+                yAxisIndex: [0],
+                filterMode: 'empty'
+            }
           ],
-                dataZoom: [
-        {
-            id: 'dataZoomY',
-            type: 'inside',
-            yAxisIndex: [0],
-            filterMode: 'empty'
-        }
-      ],
        
        };
-
+        
+        // s11biaoZhunWu.on('click', function (params) {
+        //   console.log(params,'433333333333333333333333333333333333333333335')
+        //   that.$emit('change', params.data.id_)
+        //   // that.userInfo[1] = params.data.NAME_
+        // })
        option && s11biaoZhunWu.setOption(option);
       }
     }

+ 3 - 3
src/views/statistics/item/s12fengXian.vue

@@ -77,7 +77,7 @@
 
         //v3
         // let e=[this.data.t_mjsyshdfxsbykzjhxbNum.number[0],this.data.t_mjsyshdfxsbykzjhxbNum.numberAll[0],this.data.t_mjsyshdfxsbykzjhxbNum.res[0]]
-        let e = 100 -this.data.t_mjsyshdfxsbykzjhxbNum.res[0]
+        let e = 100 -this.data.t_mjsyshdfxsbykzjhxbNum.val
 
 
         option = {
@@ -99,8 +99,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_mjsyshdfxsbykzjhxbNum.res[0], name: '风险控制已完成率' },
-                { value: e, name: '风险控制未完成率' }
+                { value: this.data.t_mjsyshdfxsbykzjhxbNum.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 1 - 1
src/views/statistics/item/s12fengXianCol.vue

@@ -76,7 +76,7 @@
         var option;
 
         //v3
-        let e=[this.data.t_mjsyshdfxsbykzjhxbNum.numberAll[0],this.data.t_mjsyshdfxsbykzjhxbNum.number[0]]
+        let e=[this.data.t_mjsyshdfxsbykzjhxbNum.numberAll,this.data.t_mjsyshdfxsbykzjhxbNum.numbe]
         // let e=[this.data.t_mjsyshdfxsbykzjhxbNum.number[0],this.data.t_mjsyshdfxsbykzjhxbNum.numberAll[0],this.data.t_mjsyshdfxsbykzjhxbNum.res[0]]
 
         option = {

+ 2 - 2
src/views/statistics/item/s13shengWu.vue

@@ -104,8 +104,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_complaintNum.res1[0], name: '投诉回复及时率' },
-                { value: e, name: '投诉回复不及时率' }
+                { value: this.data.t_complaintNum.res1[0], name: '及时率' },
+                { value: e, name: '不及时率' }
               ],
               emphasis: {
                 itemStyle: {

+ 2 - 2
src/views/statistics/item/s14bufuhexiang.vue

@@ -99,8 +99,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_bfhxbgyjzcsjlbxNum.res[0], name: '不符合项完成率' },
-                { value: e, name: '不符合项未完成率' }
+                { value: this.data.t_bfhxbgyjzcsjlbxNum.res[0], name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 94 - 66
src/views/statistics/item/s14bufuhexiangCol.vue

@@ -1,5 +1,6 @@
 <template>
-  <div @click="toDetailed()" class="statisticsPage" :style="{width:width}">
+  <!-- <div @click="toDetailed()" class="statisticsPage" :style="{width:width}"> -->
+  <div class="statisticsPage" :style="{width:width}">
     <div :id="id" :style="{height:height}"/>
     <!-- 打开详情弹窗-->
     <div v-if="dialogOff">
@@ -48,7 +49,7 @@
     },
     data () {
       return {
-        title:'不符合项数量',
+        title:'不符合项类型数量统计',
         dialogOff:false,
         measured:[]
       }
@@ -74,78 +75,105 @@
         // let beingDate=this.data.t_complaintBegin.date
         // let endDate=this.data.t_complaintEnd.date
         var option;
-
+        let barColor = ['#66FFCC','#FFCCCC','#33FF00','#FF66CC','#EC5800','#AAFF00','#F8DE7E','#B87333','#FF4433','	#9F2B68','#C9A9A6','#C3B1E1','#880808','#097969','#89CFF0','#5D3FD3','	#FBCEB1','#E49B0F','#ECFFDC','#A52A2A','#D27D2D','#FFBF00','#A0522D','#FF00FF','#FFB6C1','#F89880','#D8BFD8','#5D3FD3','#770737','#DA70D6']
+        let barNum = []
+        for (let i = 0; i < this.data.t_bfhxbgyjzcsjlbxNum.title.length-1; i++) {
+          barNum.push({
+            type: 'bar',
+            itemStyle: {color: barColor[i]},
+            label:{
+              normal:{
+                show:true,
+                position:'top',
+                        
+                textStyle:{
+                  fontSize:16,
+                  color:'#B0CEFC'
+                }
+              }
+            }
+          })
+          
+        }  
         //v3
-        let e=[this.data.t_bfhxbgyjzcsjlbxNum.numberAll[0],this.data.t_bfhxbgyjzcsjlbxNum.number[0]]
+        // let e=[this.data.t_bfhxbgyjzcsjlbxNum.numberAll[0],this.data.t_bfhxbgyjzcsjlbxNum.number[0]]
         // let e=[this.data.t_mjsyshdfxsbykzjhxbNum.number[0],this.data.t_mjsyshdfxsbykzjhxbNum.numberAll[0],this.data.t_mjsyshdfxsbykzjhxbNum.res[0]]
 
         option = {
-            legend: {},
-            tooltip: {
-              trigger: 'axis',
-              axisPointer: {
-                type: 'shadow'
-              },
-              // formatter: function (params) {
-              //   return params[0].data[0] + '<br/>满意份数:' + params[0].data[1] + '<br/>调查总份数: ' + params[0].data[2];
-              // }
-            },
-            // dataset: {
-            //   source: barData
-            // },
-            xAxis: { 
-              type: 'category',
-              data:[ '不符合项开立总数','不符合项整改完成数量']
-              // data:['已完成', '总数量', '完成率']
-            },
-            yAxis: [
-              {
-                type: 'value',
-                scale: true,
-                name: '数量',
-                max: this.data.t_bfhxbgyjzcsjlbxNum.number[0]>this.data.t_bfhxbgyjzcsjlbxNum.numberAll[0]?this.data.t_bfhxbgyjzcsjlbxNum.number[0]+1:this.data.t_bfhxbgyjzcsjlbxNum.numberAll[0]+1,
-                min: 0,
-                // boundaryGap: [0.2, 0.2]
-              },
-              // {
-              //   type: 'value',
-              //   scale: true,
-              //   name: '完成率',
-              //   max: this.data.t_mjsyshdfxsbykzjhxbNum.res[0],
-              //   min: 0,
-              //   axisLabel: {
-              //     formatter: '{value} %'
-              //   }
-              // }
-            ],
-            series: [
-              {
-                data: e,
-                type: 'bar',
-                barWidth: '20%',
+            title: {
+            text: this.title,
+            textStyle:{ fontSize:14,color: this.colorw }
+          },
+          // tooltip: {
+          //               trigger: 'axis',
+          //               axisPointer: {
+          //                 type: 'shadow'
+          //               },
+          //               formatter: function (datas) {
+          //                 // console.log(datas)
+          //                   var res=datas[0].name+"<BR>"+'期间核查次数:'+datas[0].data+"<BR>期间核查完成次数"+datas[1].data
+          //                   // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
+          //                   return res
+          //               }
+          // },
+          // legend: {
+          //   textStyle: {
+          //       color: '#B0CEFC'  // 图例文字颜色
+          //   }
 
-                itemStyle: {
-                  color: '#c35566'
-                },
-                label: {
-                show: true,
-                position: 'top'
-              },
+          // },
+          grid: {
+                top: '10%',
+                left: '3%',
+                right: '4%',
+                bottom: '5%',
+                containLabel: true
+          },
+          xAxis: { 
+            splitLine:{show: false},
+            type: 'category',
+            axisLabel: {
+              show: true,
+              textStyle: {
+                color: '#fff'   //这里用参数代替了
               }
-            ],
-            grid: {
-              top: '20%',
-              left: '3%',
-              right: '4%',
-              bottom: '10%',
-              containLabel: true
             },
-            title: {
-              text: this.title,
-              textStyle:{ fontSize:14,color: this.colorw }
-
-              // subtext: "        "+beingDate+"-"+endDate
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
+          },
+          yAxis: {
+            splitLine:{show: false},
+            axisLabel: {
+              show: true,
+              textStyle: {
+                color: '#fff'    //这里用参数代替了
+              }
+            },
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
+          },
+          dataset: {
+            dimensions: this.data.t_bfhxbgyjzcsjlbxNum.title,
+            source: this.data.t_bfhxbgyjzcsjlbxNum.number
+          },
+          series: barNum,
+          dataZoom: [
+            {
+                id: 'dataZoomY',
+                type: 'inside',
+                yAxisIndex: [0],
+                filterMode: 'empty'
             }
+          ],
+       
         };
 
         option && s14bufuhexiang.setOption(option);

+ 4 - 4
src/views/statistics/item/s15tousu.vue

@@ -48,7 +48,7 @@
     },
     data () {
       return {
-        title:'客户投诉已通知率',
+        title:'应急预案演练计划完成率',
         dialogOff:false,
         measured:[]
       }
@@ -88,7 +88,7 @@
         // }
         //v3
         //  let e=[this.data.t_complaintNum.number[0],this.data.t_complaintNum.numberAll[0],this.data.t_complaintNum.res[0]]
-        let e = 100-this.data.t_complaintNum.res2[0]
+        let e = 100-this.data.t_complaintNum.val
         option = {
           title: {
             text: this.title,
@@ -108,8 +108,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_complaintNum.res2[0], name: '投诉已完成率' },
-                { value: e, name: '投诉未完成率' }
+                { value: this.data.t_complaintNum.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 3 - 3
src/views/statistics/item/s15tousuCol.vue

@@ -88,7 +88,7 @@
         // }
         //v3
         //  let e=[this.data.t_complaintNum.number[0],this.data.t_complaintNum.numberAll[0],this.data.t_complaintNum.res[0]]
-         let e=[this.data.t_complaintNum.number[0],this.data.t_complaintNum.numtong[0]]
+         let e=[this.data.t_complaintNum.numberAll,this.data.t_complaintNum.number]
         
 
         option = {
@@ -109,14 +109,14 @@
             xAxis: { 
               type: 'category',
               // data:['投诉总数', '委托总数', '客户投诉率']
-              data:['有效投诉总数','已通知总数']
+              data:['应急预案演练计划总数','应急预案演练计划已完成数']
             },
             yAxis: [
               {
                 type: 'value',
                 scale: true,
                 name: '次数',
-                max: this.data.t_complaintNum.number[0]>this.data.t_complaintNum.numtong[0]?this.data.t_complaintNum.number[0]+1:this.data.t_complaintNum.numtong[0]+1,
+                // max: this.data.t_complaintNum.number[0]>this.data.t_complaintNum.numtong[0]?this.data.t_complaintNum.number[0]+1:this.data.t_complaintNum.numtong[0]+1,
                 min: 0,
                 // boundaryGap: [0.2, 0.2]
               },

+ 2 - 2
src/views/statistics/item/s16bzJunZhu.vue

@@ -107,8 +107,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.Num.valna, name: '标准菌株期间核查完成率' },
-                { value: e, name: '标准菌株期间核查未完成率' }
+                { value: this.data.Num.valna, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 85 - 93
src/views/statistics/item/s16bzJunZhuCol2.vue

@@ -48,7 +48,7 @@
     },
     data () {
       return {
-        title:'各个标准菌株期间核查数量',
+        title:'改进项类型数量统计',
         dialogOff:false,
       }
     },
@@ -67,116 +67,108 @@
       },
       drawLine(){
         let s16bzJunZhu = echarts.init(document.getElementById(this.id))
-         
-
+        var option;
+        let barColor = ['#66FFCC','#FFCCCC','#33FF00','#FF66CC','#EC5800','#AAFF00','#F8DE7E','#B87333','#FF4433','	#9F2B68','#C9A9A6','#C3B1E1','#880808','#097969','#89CFF0','#5D3FD3','	#FBCEB1','#E49B0F','#ECFFDC','#A52A2A','#D27D2D','#FFBF00','#A0522D','#FF00FF','#FFB6C1','#F89880','#D8BFD8','#5D3FD3','#770737','#DA70D6']
+        let barNum = []
+        for (let i = 0; i < this.data.Num.title.length-1; i++) {
+          barNum.push({
+            type: 'bar',
+            itemStyle: {color: barColor[i]},
+            label:{
+              normal:{
+                show:true,
+                position:'top',
+                        
+                textStyle:{
+                  fontSize:16,
+                  color:'#B0CEFC'
+                }
+              }
+            }
+          })
           
-        // let beginInof = GetPercent(Number(this.data.t_sbhcjlbBegin.number),Number(this.data.t_sbhcjhBegin.number))
-        // let endInof = GetPercent(Number(this.data.t_sbhcjlbEnd.number),Number(this.data.t_sbhcjhEnd.number))
-         
-        //  let data1 = [];
-        //  data1.push(this.data.t_sbhcjhBegin.number);
-        //  data1.push(this.data.t_sbhcjhEnd.number);
-        //  let data2 = [];
-        //  data2.push(this.data.t_sbhcjlbBegin.number);
-        //  data2.push(this.data.t_sbhcjlbEnd.number);
-        //  let data3 = [];
-        //  data3.push(this.data.t_sbhcjlbBegin.date);
-        //  data3.push(this.data.t_sbhcjlbEnd.date);
-        //  let max1=GetMax(data1)+1;
-        //  let max2=GetMax(data2)+1;
-        //  let maxVal=max1>max2?max1:max2;
-        //  console.log("max1:",max1,"max2:",max2);
-       let option = {
-           //v3
-          title: {
+        }  
+        //v3
+        // let e=[this.data.t_bfhxbgyjzcsjlbxNum.numberAll[0],this.data.t_bfhxbgyjzcsjlbxNum.number[0]]
+        // let e=[this.data.t_mjsyshdfxsbykzjhxbNum.number[0],this.data.t_mjsyshdfxsbykzjhxbNum.numberAll[0],this.data.t_mjsyshdfxsbykzjhxbNum.res[0]]
+
+        option = {
+            title: {
             text: this.title,
             textStyle:{ fontSize:14,color: this.colorw }
-
-            // subtext: this.data.Num.date+"年"
-          },
-          tooltip: {
-                        trigger: 'axis',
-                        axisPointer: {
-                          type: 'shadow'
-                        },
-                        formatter: function (datas) {
-                          // console.log(datas)
-                            var res=datas[0].name+"<BR>"+'期间核查次数:'+datas[0].data+"<BR>期间核查完成次数"+datas[1].data
-                            // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
-                            return res
-                        }
           },
-          legend: {},
+          // tooltip: {
+          //               trigger: 'axis',
+          //               axisPointer: {
+          //                 type: 'shadow'
+          //               },
+          //               formatter: function (datas) {
+          //                 // console.log(datas)
+          //                   var res=datas[0].name+"<BR>"+'期间核查次数:'+datas[0].data+"<BR>期间核查完成次数"+datas[1].data
+          //                   // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
+          //                   return res
+          //               }
+          // },
+          // legend: {
+          //   textStyle: {
+          //       color: '#B0CEFC'  // 图例文字颜色
+          //   }
+
+          // },
           grid: {
                 top: '10%',
                 left: '3%',
                 right: '4%',
                 bottom: '5%',
                 containLabel: true
-                    },
-          xAxis: {
-            type: 'value',
-            boundaryGap: [0, 0.01]
           },
-          yAxis: {
+          xAxis: { 
+            splitLine:{show: false},
             type: 'category',
-            data: this.data.Num.name,
             axisLabel: {
-                show: true, // 是否显示X轴的内容,不包含两端的文字
-                interval: 0,
-                // rotate: '50', // 旋转50°
-                lineHeight: 18,
-                // formatter: function(params) {
-                //   //  console.log('formatter', params, params.length)
-                //   var newParamsName = ''// 最终拼接成的字符串
-                //   var paramsNameNumber = params.length// 实际标签的个数
-                //   var provideNumber = 3// 每行能显示的字的个数
-                //   // 判断标签的个数是否大于规定的个数, 如果大于,则进行换行处理 如果不大于,即等于或小于,就返回原标签
-                //   if (paramsNameNumber > provideNumber) {
-                //   // ********重点在这里********
-                //     newParamsName = params.substring(0, 3) + '..'// 最终拼成的字符串
-                //   } else { // 将旧标签的值赋给新标签
-                //     newParamsName = params
-                //   }
-                //   // 将最终的字符串返回
-                //   return newParamsName
-                // }
-              },
+              show: true,
+              textStyle: {
+                color: '#fff'   //这里用参数代替了
+              }
+            },
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
           },
-          series: [
-            {
-              type: 'bar',
-              data: this.data.Num.number,
-              itemStyle: {color: '#006699'},
-              label: {
-                show: true,
-                position: 'right'
-              },
+          yAxis: {
+            splitLine:{show: false},
+            axisLabel: {
+              show: true,
+              textStyle: {
+                color: '#fff'    //这里用参数代替了
+              }
             },
+            axisLine:{
+              lineStyle:{
+                color:'#fff',
+                width:1, //x轴线的宽度
+              }
+            }
+          },
+          dataset: {
+            dimensions: this.data.Num.title,
+            source: this.data.Num.number
+          },
+          series: barNum,
+          dataZoom: [
             {
-              type: 'bar',
-              data: this.data.Num.numberAll,
-              itemStyle: {color: '#006633'},
-              label: {
-                show: true,
-                position: 'right'
-              },
-            },
-            // {
-            //   type: 'bar',
-            //   data: this.data.Num.numberAll
-            // },
+                id: 'dataZoomY',
+                type: 'inside',
+                yAxisIndex: [0],
+                filterMode: 'empty'
+            }
           ],
-                dataZoom: [
-        {
-            id: 'dataZoomY',
-            type: 'inside',
-            yAxisIndex: [0],
-            filterMode: 'empty'
-        }
-      ],
        
-       };
+        };
+
 
        option && s16bzJunZhu.setOption(option);
       }

+ 2 - 2
src/views/statistics/item/s17bzXiBao.vue

@@ -107,8 +107,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.Num.valna, name: '标准细胞期间核查完成率' },
-                { value: e, name: '标准细胞质期间核查未完成率' }
+                { value: this.data.Num.valna, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 4 - 3
src/views/statistics/item/s1jianCe.vue

@@ -1,5 +1,6 @@
 <template>
-  <div @click="toDetailed()" class="statisticsPage" :style="{width:width}">
+  <div class="statisticsPage" :style="{width:width}">
+  <!-- <div @click="toDetailed()" class="statisticsPage" :style="{width:width}"> -->
     <div :id="id" :style="{height:height}"/>
     <!-- 打开详情弹窗-->
     <div v-if="dialogOff">
@@ -112,8 +113,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_mjjcbgNum.res[0], name: '检测报告差错率' },
-                { value: e, name: '检测报告正确率' }
+                { value: this.data.t_mjjcbgNum.res[0], name: '差错率' },
+                { value: e, name: '正确率' }
               ],
               emphasis: {
                 itemStyle: {

+ 9 - 5
src/views/statistics/item/s1zhiLiangMuBiao.vue

@@ -55,7 +55,7 @@
     },
     data () {
       return {
-        title:'检测任务完成率',
+        title:'管理评审计划完成情况',
         dialogOff:false,
       }
     },
@@ -86,7 +86,9 @@
           // }
           // barData.push(e)
         // }
-        let e = 100 -this.data.t_jchzbNum.res[0]
+        let e = 100 -this.data.t_jchzbNum.val
+        // let n = 100 -this.data.t_jchzbNum.res[1]
+        // let d = 100 -this.data.t_jchzbNum.res[2]
         let option = {
           title: {
             text: this.title,
@@ -97,7 +99,7 @@
           tooltip: {
             trigger: 'item'
           },
-          color:['#ffcc00','#66cc66'],
+          color:['#ffcc00','#66cc66','#999999'],
           series: [
             {
               type: 'pie',
@@ -106,8 +108,10 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_jchzbNum.res[0], name: '检测任完成率' },
-                { value: e, name: '检测任务未完成率' }
+                { value: this.data.t_jchzbNum.val, name: '完成率' },
+                { value: e, name: '未完成率' },
+                // { value: this.data.t_jchzbNum.res[2], name: '未完成率' },
+                // { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 31 - 270
src/views/statistics/item/s1zhiLiangMuBiaoCol.vue

@@ -50,7 +50,7 @@
     },
     data () {
       return {
-        title:'检测任务完成数量',
+        title:'管理评审计划完成数量统计',
         dialogOff:false,
       }
     },
@@ -69,131 +69,9 @@
       },
       drawLine(){
         let s5zhiLiangMuBiao = echarts.init(document.getElementById(this.id))
-
-        // let data1 = [];
-        // data1.push(0);
-        // data1.push(0);
-        // let data2 = [];
-        // data2.push(83);
-        // data2.push(90);
-        // let data3 = [];
-        // data3.push(70);
-        // data3.push(60);
-        // let data4 = [];
-        // data4.push(2021);
-        // data4.push(2022);
-        // const posList = [
-        //   'left',
-        //   'right',
-        //   'top',
-        //   'bottom',
-        //   'inside',
-        //   'insideTop',
-        //   'insideLeft',
-        //   'insideRight',
-        //   'insideBottom',
-        //   'insideTopLeft',
-        //   'insideTopRight',
-        //   'insideBottomLeft',
-        //   'insideBottomRight'
-        // ];
-        // app.configParameters = {
-        //   rotate: {
-        //     min: -90,
-        //     max: 90
-        //   },
-        //   align: {
-        //     options: {
-        //       left: 'left',
-        //       center: 'center',
-        //       right: 'right'
-        //     }
-        //   },
-        //   verticalAlign: {
-        //     options: {
-        //       top: 'top',
-        //       middle: 'middle',
-        //       bottom: 'bottom'
-        //     }
-        //   },
-        //   position: {
-        //     options: posList.reduce(function (map, pos) {
-        //       map[pos] = pos;
-        //       return map;
-        //     }, {})
-        //   },
-        //   distance: {
-        //     min: 0,
-        //     max: 100
-        //   }
-        // };
-        // app.config = {
-        //   rotate: 90,
-        //   align: 'left',
-        //   verticalAlign: 'center',
-        //   position: 'bottom',
-        //   distance: 0,
-        //   onChange: function () {
-        //     const labelOption = {
-        //       rotate: app.config.rotate,
-        //       align: app.config.align,
-        //       verticalAlign: app.config.verticalAlign,
-        //       position: app.config.position,
-        //       distance: app.config.distance,
-        //       color:'#FE8463'
-        //     };
-        //     myChart.setOption({
-        //       series: [
-        //         {
-        //           label: labelOption
-        //         },
-        //         {
-        //           label: labelOption
-        //         },
-        //         {
-        //           label: labelOption
-        //         },
-        //         {
-        //           label: labelOption
-        //         }
-        //       ]
-        //     });
-        //   }
-        // };
-        // const labelOption = {
-        //   show: true,
-        //   position: app.config.position,
-        //   distance: app.config.distance,
-        //   align: app.config.align,
-        //   verticalAlign: app.config.verticalAlign,
-        //   rotate: app.config.rotate,
-        //   formatter: '{c}  {name|{a}}',
-        //   fontSize: 14,
-        //   rich: {
-        //       name: {
-        //           textBorderColor: '#fff'
-        //       }
-        //   },
-        //   color:'#FE8463'
-        // };
-        // let barData = []
-        // for (let i = 0; i < this.data.t_jchzbNum.date.length; i++) {
-        //   let e=[this.data.t_jchzbNum.date[i],this.data.t_jchzbNum.number[i],this.data.t_jchzbNum.numberAll[i]]
-        //   barData.push(e)
-        // }
-        // }
-
-        // let barData = []
-        // for (let i = 0; i < this.data.t_jchzbNum.date.length; i++) {
-          let e=[]
-          e=[this.data.t_jchzbNum.numberAll[0],this.data.t_jchzbNum.number[0]]
-          // if (this.data.t_jchzbNum.numberAll[i]===0) {
-          //   e =[this.data.t_jchzbNum.date[i], 0]
-          // } else {
-          //   e =[this.data.t_jchzbNum.date[i], Math.floor(this.data.t_jchzbNum.number[i]/this.data.t_jchzbNum.numberAll[i] * 10000) / 100]
-          // }
-          // barData.push(e)
-        // }
+        let e=[]
+        e=[this.data.t_jchzbNum.numberAll,this.data.t_jchzbNum.number]
+      
         let option = {
           //v3
           legend: {},
@@ -202,17 +80,35 @@
               axisPointer: {
                 type: 'shadow'
               },
-              // formatter: function (params) {
-              //   return params[0].data[0] + '<br/>满意份数:' + params[0].data[1] + '<br/>调查总份数: ' + params[0].data[2];
-              // }
             },
-            // dataset: {
-            //   source: barData
-            // },
             xAxis: { 
               type: 'category',
-              // data:['按时完成数', '有效任务数', '及时完成率']
-              data:['有效检测任务总数', '按时完成的检测项目数量数量']
+              data:['计划完成数', '计划未完成数量'],
+              // data:['有效检测任务总数', '及时完成的检测项目数量','未及时完成的检测项目数量','未完成的检测项目数量'],
+              axisLabel: {  
+                interval: 0,  
+                formatter:function(value){  
+                    var ret = "";//拼接加\n返回的类目项  
+                    var maxLength = 5;//每项显示文字个数  
+                    var valLength = value.length;//X轴类目项的文字个数  
+                    var rowN = Math.ceil(valLength / maxLength); //类目项需要换行的行数  
+                    if (rowN > 1)//如果类目项的文字大于5,  
+                    {  
+                        for (var i = 0; i < rowN; i++) {  
+                            var temp = "";//每次截取的字符串  
+                            var start = i * maxLength;//开始截取的位置  
+                            var end = start + maxLength;//结束截取的位置  
+                      //这里也可以加一个是否是最后一行的判断,但是不加也没有影响,那就不加吧  
+                            temp = value.substring(start, end) + "\n";  
+                            ret += temp; //凭借最终的字符串  
+                        }  
+                        return ret;  
+                    }  
+                    else {  
+                        return value;  
+                    }  
+                }  
+            } 
 
             },
             yAxis: [
@@ -220,24 +116,9 @@
                 type: 'value',
                 scale: true,
                 name: '数量',
-                max: this.data.t_jchzbNum.number[0]>this.data.t_jchzbNum.numberAll[0]?this.data.t_jchzbNum.number[0]+1:this.data.t_jchzbNum.numberAll[0]+1,
                 min: 0,
-                // boundaryGap: [0.2, 0.2]
               },
-              // {
-              //   type: 'value',
-              //   scale: true,
-              //   name: '任务及时完成率',
-              //   max: this.data.t_jchzbNum.res[0],
-              //   min: 0,
-              //   axisLabel: {
-              //     formatter: '{value} %'
-              //   }
-              // }
             ],
-            // Declare several bar series, each will be mapped
-            // to a column of dataset.source by default.
-            // series: [{ type: 'bar' }],
             series: [
               {
                 data: e,
@@ -262,128 +143,8 @@
             title: {
               text: this.title,
               textStyle:{ fontSize:14,color: this.colorw }
-
-              // subtext: "        "+beingDate+"-"+endDate
             },
-          //v2
-          //  legend: {},
-          //   tooltip: {
-          //     trigger: 'axis',
-          //     axisPointer: {
-          //       type: 'shadow'
-          //     },
-          //     formatter: function (params) {
-          //       return params[0].data[0] + '<br/>任务完成率:' + params[0].data[1];
-          //     }
-          //   },
-          //   dataset: {
-          //     source: barData
-          //   },
-          //   xAxis: { type: 'category' },
-          //   yAxis: {
-          //     type: 'value',
-          //     axisLabel: {
-          //       show: true,
-          //       textStyle:{color:'#000'},
-          //       interval: 'auto',
-          //       formatter: '{value} %'
-          //     },
-            
-          //   },
-          //   // Declare several bar series, each will be mapped
-          //   // to a column of dataset.source by default.
-          //   series: [{ type: 'bar',barWidth:50}],
-          //   grid: {
-          //     top: '20%',
-          //     left: '3%',
-          //     right: '4%',
-          //     bottom: '10%',
-          //     containLabel: true
-          //   },
-          //   title: {
-          //     text: this.title,
-          //     subtext: "        "+this.data.t_jchzbNum.date[0]+"-"+this.data.t_jchzbNum.date[this.data.t_jchzbNum.date.length-1]
-          //   },
-
-          //v1
-          // grid: {
-          //   top: '20%',
-          //   left: '3%',
-          //   right: '4%',
-          //   bottom: '10%',
-          //   containLabel: true
-          // },
-          // title: {
-          //   text: this.title,
-          //   subtext: "2021-2022年质量检测目标"
-          // },
-          // color : [
-          //   '#FE8463','#9BCA63','#FCCE10','#E87C25','#27727B',
-          //   '#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD',
-          //   '#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0'
-          // ],
-          // tooltip: {
-          //   trigger: 'axis',
-          //   axisPointer: {
-          //     type: 'shadow'
-          //   },
-          //   formatter: function (datas) {
-          //     var res='投诉处理率:'+datas[0].value+"%<BR>"
-          //     res+='满意度:'+datas[1].value+"%<BR>"
-          //     res+='培训完成率:'+datas[2].value+"%"
-          //     return res
-          //   }
-          // },
-          // legend: {show:false},
-          // xAxis: [
-          //   {
-          //     type: 'category',
-          //     axisTick: { show: false },
-          //     data: data4,
-          //     textStyle:{color:'#FE8463'},
-          //   }
-          // ],
-          // yAxis: [
-          //   {
-          //     type: 'value',
-          //     axisLabel: {
-          //       show: true,
-          //       textStyle:{color:'#000'},
-          //       interval: 'auto',
-          //       formatter: '{value} %'
-          //     },
-          //   }
-          // ],
-          // series: [
-          //   {
-          //     name: '投诉处理率',
-          //     type: 'bar',
-          //     barGap: 0,
-          //     label: labelOption,
-          //     emphasis: {
-          //       focus: 'series'
-          //     },
-          //     data: data1
-          //   },
-          //   {
-          //     name: '满意度',
-          //     type: 'bar',
-          //     label: labelOption,
-          //     emphasis: {
-          //       focus: 'series'
-          //     },
-          //     data:data2
-          //   },
-          //   {
-          //     name: '培训完成率',
-          //     type: 'bar',
-          //     label: labelOption,
-          //     emphasis: {
-          //       focus: 'series'
-          //     },
-          //     data:data3
-          //   }
-          // ]
+          
         };
         option && s5zhiLiangMuBiao.setOption(option);
       }

+ 6 - 6
src/views/statistics/item/s2manYiDu.vue

@@ -55,7 +55,7 @@
     },
     data () {
       return {
-        title:'客户满意度',
+        title:'年度内审计划完成率',
         dialogOff:false,
       }
     },
@@ -97,10 +97,10 @@
         //   barData.push(e)
         // }
         // let e=[this.data.t_khmydtjbNum.number[0],this.data.t_khmydtjbNum.numberAll[0],this.data.t_khmydtjbNum.res[0]]
-        let e=100-this.data.t_khmydtjbNum.res[0]
+        let e=100-this.data.t_khmydtjbNum.val
 
-        let beingDate=this.data.t_myddc2Begin.date
-        let endDate=this.data.t_myddc2End.date
+        // let beingDate=this.data.t_myddc2Begin.date
+        // let endDate=this.data.t_myddc2End.date
         let option = {
             title: {
             text: this.title,
@@ -120,8 +120,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_khmydtjbNum.res[0], name: '客户满意率' },
-                { value: e, name: '客户不满意率' }
+                { value: this.data.t_khmydtjbNum.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 5 - 5
src/views/statistics/item/s2manYiDuPro.vue

@@ -91,11 +91,11 @@
         //   }
         //   barData.push(e)
         // }
-        let e=[this.data.t_khmydtjbNum.num,this.data.t_khmydtjbNum.number[0]]
+        let e=[this.data.t_khmydtjbNum.numberAll,this.data.t_khmydtjbNum.number]
         // let e=100-this.data.t_khmydtjbNum.res[0]
 
-        let beingDate=this.data.t_myddc2Begin.date
-        let endDate=this.data.t_myddc2End.date
+        // let beingDate=this.data.t_myddc2Begin.date
+        // let endDate=this.data.t_myddc2End.date
         let option = {
           //   title: {
           //   text: this.title,
@@ -146,14 +146,14 @@
             xAxis: { 
               type: 'category',
               // data:['满意份数', '调查份数', '满意度']
-              data:['有效问卷总分','评分得分']
+              data:['年度计划总数','已完成计划总数']
             },
             yAxis: [
               {
                 type: 'value',
                 scale: true,
                 name: '份数',
-                max: this.data.t_khmydtjbNum.number[0]>this.data.t_khmydtjbNum.numberAll[0]?this.data.t_khmydtjbNum.number[0]+1:this.data.t_khmydtjbNum.numberAll[0]+1,
+                // max: this.data.t_khmydtjbNum.number[0]>this.data.t_khmydtjbNum.numberAll[0]?this.data.t_khmydtjbNum.number[0]+1:this.data.t_khmydtjbNum.numberAll[0]+1,
                 min: 0,
                 // boundaryGap: [0.2, 0.2]
               },

+ 2 - 2
src/views/statistics/item/s3tousu.vue

@@ -113,8 +113,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_complaintNum.res[0], name: '客户投诉率' },
-                { value: e, name: '客户未投诉率' }
+                { value: this.data.t_complaintNum.res[0], name: '投诉率' },
+                { value: e, name: '未投诉率' }
               ],
               emphasis: {
                 itemStyle: {

+ 3 - 3
src/views/statistics/item/s4renYuanPeiXun.vue

@@ -49,7 +49,7 @@
     },
     data () {
       return {
-        title:'人员培训完成率',
+        title:'在岗人员培训计划完成率',
         dialogOff:false,
       }
     },
@@ -93,8 +93,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_ryywpxjlNum.res[0], name: '培训完成率' },
-                { value: e, name: '培训未完成率' }
+                { value: this.data.t_ryywpxjlNum.res[0], name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 3 - 3
src/views/statistics/item/s4renYuanPeiXunCol.vue

@@ -89,8 +89,8 @@
         //   barData.push(e)
         // }
         //  let e=[this.data.t_ryywpxjlNum.number[0],this.data.t_ryywpxjlNum.numberAll[0],this.data.t_ryywpxjlNum.res[0]]
-         let e=[this.data.t_ryywpxjlNum.numberAll[0],this.data.t_ryywpxjlNum.number[0]]
-
+         let e=[this.data.t_ryywpxjlNum.numberAll,this.data.t_ryywpxjlNum.number]
+        //  console.log(this.data.t_ryywpxjlNum.numberAll,this.data.t_ryywpxjlNum.number,'577777777777777777777777777777777')
 
         var option;
         option = {
@@ -119,7 +119,7 @@
                 type: 'value',
                 scale: true,
                 name: '次数',
-                max: this.data.t_ryywpxjlNum.number[0]>this.data.t_ryywpxjlNum.numberAll[0]?this.data.t_ryywpxjlNum.number[0]+1:this.data.t_ryywpxjlNum.numberAll[0]+1,
+                // max: this.data.t_ryywpxjlNum.number[0]>this.data.t_ryywpxjlNum.numberAll[0]?this.data.t_ryywpxjlNum.number[0]+1:this.data.t_ryywpxjlNum.numberAll[0]+1,
                 min: 0,
                 // boundaryGap: [0.2, 0.2]
               },

+ 3 - 3
src/views/statistics/item/s5renYuanJianDu.vue

@@ -49,7 +49,7 @@
     },
     data () {
       return {
-        title:'人员监督',
+        title:'岗前培训计划完成率',
         dialogOff:false,
       }
     },
@@ -92,8 +92,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_zljdNum.res[0], name: '监督完成率' },
-                { value: e, name: '监督未完成率' }
+                { value: this.data.t_zljdNum.res[0], name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 118 - 118
src/views/statistics/item/s5renYuanJianDuCol.vue

@@ -68,110 +68,110 @@
       },
       drawLine(){
         let s5renYuanJianDu = echarts.init(document.getElementById(this.id))
-        let beginInof = GetPercent(Number(this.data.t_zljdssBegin.number),Number(this.data.t_zljdBegin.number))
-        let endInof = GetPercent(Number(this.data.t_zljdssEnd.number),Number(this.data.t_zljdEnd.number))
+        // let beginInof = GetPercent(Number(this.data.t_zljdssBegin.number),Number(this.data.t_zljdBegin.number))
+        // let endInof = GetPercent(Number(this.data.t_zljdssEnd.number),Number(this.data.t_zljdEnd.number))
 
-         let data1 = [];
-         data1.push(this.data.t_zljdBegin.number);
-         data1.push(this.data.t_zljdEnd.number);
-         let data2 = [];
-         data2.push(this.data.t_zljdssBegin.number);
-         data2.push(this.data.t_zljdssEnd.number);
-         let data3 = [];
-         data3.push(this.data.t_zljdssBegin.date);
-         data3.push(this.data.t_zljdssEnd.date);
-         const posList = [
-          'left',
-          'right',
-          'top',
-          'bottom',
-          'inside',
-          'insideTop',
-          'insideLeft',
-          'insideRight',
-          'insideBottom',
-          'insideTopLeft',
-          'insideTopRight',
-          'insideBottomLeft',
-          'insideBottomRight'
-        ];
-        app.configParameters = {
-          rotate: {
-            min: -90,
-            max: 90
-          },
-          align: {
-            options: {
-              left: 'left',
-              center: 'center',
-              right: 'right'
-            }
-          },
-          verticalAlign: {
-            options: {
-              top: 'top',
-              middle: 'middle',
-              bottom: 'bottom'
-            }
-          },
-          position: {
-            options: posList.reduce(function (map, pos) {
-              map[pos] = pos;
-              return map;
-            }, {})
-          },
-          distance: {
-            min: 0,
-            max: 100
-          }
-        };
-        app.config = {
-          rotate: 90,
-          align: 'left',
-          verticalAlign: 'middle',
-          position: 'bottom',
-          distance: 0,
-          onChange: function () {
-            const labelOption = {
-              rotate: app.config.rotate,
-              align: app.config.align,
-              verticalAlign: app.config.verticalAlign,
-              position: app.config.position,
-              distance: app.config.distance
-            };
-            myChart.setOption({
-              series: [
-                {
-                  label: labelOption
-                },
-                {
-                  label: labelOption
-                },
-                {
-                  label: labelOption
-                },
-                {
-                  label: labelOption
-                }
-              ]
-            });
-          }
-        };
-        const labelOption = {
-          show: true,
-          position: app.config.position,
-          distance: app.config.distance,
-          align: app.config.align,
-          verticalAlign: app.config.verticalAlign,
-          rotate: app.config.rotate,
-          formatter: '{c}  {name|{a}}',
-          fontSize: 16,
-          rich: {
-              name: {
-                  textBorderColor: '#fff'
-              }
-          }
-        };
+        //  let data1 = [];
+        //  data1.push(this.data.t_zljdBegin.number);
+        //  data1.push(this.data.t_zljdEnd.number);
+        //  let data2 = [];
+        //  data2.push(this.data.t_zljdssBegin.number);
+        //  data2.push(this.data.t_zljdssEnd.number);
+        //  let data3 = [];
+        //  data3.push(this.data.t_zljdssBegin.date);
+        //  data3.push(this.data.t_zljdssEnd.date);
+        //  const posList = [
+        //   'left',
+        //   'right',
+        //   'top',
+        //   'bottom',
+        //   'inside',
+        //   'insideTop',
+        //   'insideLeft',
+        //   'insideRight',
+        //   'insideBottom',
+        //   'insideTopLeft',
+        //   'insideTopRight',
+        //   'insideBottomLeft',
+        //   'insideBottomRight'
+        // ];
+        // app.configParameters = {
+        //   rotate: {
+        //     min: -90,
+        //     max: 90
+        //   },
+        //   align: {
+        //     options: {
+        //       left: 'left',
+        //       center: 'center',
+        //       right: 'right'
+        //     }
+        //   },
+        //   verticalAlign: {
+        //     options: {
+        //       top: 'top',
+        //       middle: 'middle',
+        //       bottom: 'bottom'
+        //     }
+        //   },
+        //   position: {
+        //     options: posList.reduce(function (map, pos) {
+        //       map[pos] = pos;
+        //       return map;
+        //     }, {})
+        //   },
+        //   distance: {
+        //     min: 0,
+        //     max: 100
+        //   }
+        // };
+        // app.config = {
+        //   rotate: 90,
+        //   align: 'left',
+        //   verticalAlign: 'middle',
+        //   position: 'bottom',
+        //   distance: 0,
+        //   onChange: function () {
+        //     const labelOption = {
+        //       rotate: app.config.rotate,
+        //       align: app.config.align,
+        //       verticalAlign: app.config.verticalAlign,
+        //       position: app.config.position,
+        //       distance: app.config.distance
+        //     };
+        //     myChart.setOption({
+        //       series: [
+        //         {
+        //           label: labelOption
+        //         },
+        //         {
+        //           label: labelOption
+        //         },
+        //         {
+        //           label: labelOption
+        //         },
+        //         {
+        //           label: labelOption
+        //         }
+        //       ]
+        //     });
+        //   }
+        // };
+        // const labelOption = {
+        //   show: true,
+        //   position: app.config.position,
+        //   distance: app.config.distance,
+        //   align: app.config.align,
+        //   verticalAlign: app.config.verticalAlign,
+        //   rotate: app.config.rotate,
+        //   formatter: '{c}  {name|{a}}',
+        //   fontSize: 16,
+        //   rich: {
+        //       name: {
+        //           textBorderColor: '#fff'
+        //       }
+        //   }
+        // };
 
         //v2
         // let barData = []
@@ -180,7 +180,7 @@
         //   barData.push(e)
         // }
         //v3
-         let e=[this.data.t_zljdNum.number[0],this.data.t_zljdNum.numberAll[0],this.data.t_zljdNum.res[0]]
+         let e=[this.data.t_zljdNum.number,this.data.t_zljdNum.numberAll]
 
         let option = {
           //v3
@@ -197,27 +197,27 @@
             // dataset: {
             //   source: barData
             // },
-            xAxis: { type: 'category',data:['已完成数量', '所有数量', '监督完成率']},
-            yAxis: [
+            xAxis: { type: 'category',data:['已完成数量', '所有数量']},
+            yAxis: 
               {
                 type: 'value',
                 scale: true,
                 name: '数量',
-                max: this.data.t_zljdNum.number[0]>this.data.t_zljdNum.numberAll[0]?this.data.t_zljdNum.number[0]+1:this.data.t_zljdNum.numberAll[0]+1,
+                // max: this.data.t_zljdNum.number[0]>this.data.t_zljdNum.numberAll[0]?this.data.t_zljdNum.number[0]+1:this.data.t_zljdNum.numberAll[0]+1,
                 min: 0,
                 // boundaryGap: [0.2, 0.2]
               },
-              {
-                type: 'value',
-                scale: true,
-                name: '监督完成率',
-                max: this.data.t_zljdNum.res[0],
-                min: 0,
-                axisLabel: {
-                  formatter: '{value} %'
-                }
-              }
-            ],
+              // {
+              //   type: 'value',
+              //   scale: true,
+              //   name: '监督完成率',
+              //   max: this.data.t_zljdNum.res[0],
+              //   min: 0,
+              //   axisLabel: {
+              //     formatter: '{value} %'
+              //   }
+              // }
+            
             // Declare several bar series, each will be mapped
             // to a column of dataset.source by default.
             // series: [{ type: 'bar' }],

+ 3 - 3
src/views/statistics/item/s7sheBeiJiaoZhun.vue

@@ -89,7 +89,7 @@
         //   barData.push(e)
         // }
         //  let e=[this.data.t_ryywpxjlNum.number[0],this.data.t_ryywpxjlNum.numberAll[0],this.data.t_ryywpxjlNum.res[0]]
-        let e=100-this.data.t_mjsbjdxzjhzbNum.valna
+        let e=100-this.data.t_mjsbjdxzjhzbNum.val
 
 
 
@@ -114,8 +114,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_mjsbjdxzjhzbNum.valna, name: '检定完成率' },
-                { value: e, name: '检定未完成率' }
+                { value: this.data.t_mjsbjdxzjhzbNum.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 2 - 2
src/views/statistics/item/s7sheBeiJiaoZhunCol.vue

@@ -90,7 +90,7 @@
         // }
         //  let e=[this.data.t_ryywpxjlNum.number[0],this.data.t_ryywpxjlNum.numberAll[0],this.data.t_ryywpxjlNum.res[0]]
 
-        let e=[this.data.t_mjsbjdxzjhzbNum.valAll,this.data.t_mjsbjdxzjhzbNum.valnum]
+        let e=[this.data.t_mjsbjdxzjhzbNum.numberAll,this.data.t_mjsbjdxzjhzbNum.number]
         var option;
         option = {
           //v3
@@ -117,7 +117,7 @@
                 type: 'value',
                 scale: true,
                 name: '数量',
-                max: this.data.t_mjsbjdxzjhzbNum.valnum>this.data.t_mjsbjdxzjhzbNum.valAll?this.data.t_mjsbjdxzjhzbNum.valnum+1:this.data.t_mjsbjdxzjhzbNum.valAll+1,
+                // max: this.data.t_mjsbjdxzjhzbNum.valnum>this.data.t_mjsbjdxzjhzbNum.valAll?this.data.t_mjsbjdxzjhzbNum.valnum+1:this.data.t_mjsbjdxzjhzbNum.valAll+1,
                 min: 0,
               },
             ],

+ 17 - 12
src/views/statistics/item/s7sheBeiJiaoZhunCol2.vue

@@ -106,27 +106,32 @@
                           type: 'shadow'
                         },
                         formatter: function (datas) {
-                            var res=datas[0].name+"<BR>"+'完成:'+datas[0].value+"<BR>"
-                            res+='计划:'+datas[1].value+"<BR>"
-                            res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
+                          console.log(datas,'eeeeeeeeeeeeeeeeeeeeeeeeeeee')
+                            var res=datas[0].data.mz+"<BR>"+'完成:'+datas[0].data.wnum+"<BR>"
+                            res+='计划:'+datas[0].data.num+"<BR>"
+                            res+='百分比:'+(datas[0].data.num==null||datas[0].data.num==0?"0.00":(datas[0].data.wnum/datas[0].data.num*100).toFixed(2))+"%"
                             return res
                         }
           },
           legend: {},
           grid: {
-                        top: '10%',
-                        left: '3%',
-                        right: '4%',
-                        bottom: '5%',
-                        containLabel: true
-                    },
+              top: '10%',
+              left: '3%',
+              right: '4%',
+              bottom: '5%',
+              containLabel: true
+          },
+          dataset: {
+            dimensions: ['mz','num','wnum'],
+            source: this.data.t_mjsbjdxzjhzbNum.nummg
+          },
           xAxis: {
             type: 'value',
             boundaryGap: [0, 0.01]
           },
           yAxis: {
             type: 'category',
-            data: this.data.t_mjsbjdxzjhzbNum.name,
+            // data: this.data.t_mjsbjdxzjhzbNum.name,
             axisLabel: {
                 show: true, // 是否显示X轴的内容,不包含两端的文字
                 interval: 0,
@@ -152,7 +157,7 @@
           series: [
             {
               type: 'bar',
-              data: this.data.t_mjsbjdxzjhzbNum.number,
+              // data: this.data.t_mjsbjdxzjhzbNum.number,
               label: {
                 show: true,
                 position: 'right'
@@ -163,7 +168,7 @@
             },
             {
               type: 'bar',
-              data: this.data.t_mjsbjdxzjhzbNum.numberAll,
+              // data: this.data.t_mjsbjdxzjhzbNum.numberAll,
               label: {
                 show: true,
                 position: 'right'

+ 4 - 4
src/views/statistics/item/s8sheBeiHeCha.vue

@@ -48,7 +48,7 @@
     },
     data () {
       return {
-        title:'设备期间核查完成情况',
+        title:'设备维护计划完成情况',
         dialogOff:false,
       }
     },
@@ -86,7 +86,7 @@
         //  let max2=GetMax(data2)+1;
         //  let maxVal=max1>max2?max1:max2;
         //  console.log("max1:",max1,"max2:",max2);
-       let e = 100 -this.data.t_sbhcjlbNum.valna
+       let e = 100 -this.data.t_sbhcjlbNum.val
 
        let option = {
            title: {
@@ -107,8 +107,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_sbhcjlbNum.valna, name: '设备期间核查完成率' },
-                { value: e, name: '设备期间核查未完成率' }
+                { value: this.data.t_sbhcjlbNum.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 2 - 2
src/views/statistics/item/s8sheBeiHeChaCol.vue

@@ -86,7 +86,7 @@
         //  let max2=GetMax(data2)+1;
         //  let maxVal=max1>max2?max1:max2;
         //  console.log("max1:",max1,"max2:",max2);
-        let e=[this.data.t_sbhcjlbNum.valAll,this.data.t_sbhcjlbNum.valnum]
+        let e=[this.data.t_sbhcjlbNum.numberAll,this.data.t_sbhcjlbNum.number]
         let option = {
            //v3
           legend: {},
@@ -112,7 +112,7 @@
                 type: 'value',
                 scale: true,
                 name: '数量',
-                max: this.data.t_sbhcjlbNum.valnum>this.data.t_sbhcjlbNum.valAll?this.data.t_sbhcjlbNum.valnum+1:this.data.t_sbhcjlbNum.valAll+1,
+                // max: this.data.t_sbhcjlbNum.valnum>this.data.t_sbhcjlbNum.valAll?this.data.t_sbhcjlbNum.valnum+1:this.data.t_sbhcjlbNum.valAll+1,
                 min: 0,
               },
             ],

+ 9 - 5
src/views/statistics/item/s8sheBeiHeChaCol2.vue

@@ -102,8 +102,8 @@
                         },
                         formatter: function (datas) {
                           console.log(datas)
-                            var res=datas[0].name+"<BR>"+'计划外核查:'+datas[0].data+"<BR>"
-                            res+='年度核查'+datas[1].data+"<BR>"
+                            var res=datas[0].data.mz+"<BR>"+'完成:'+datas[0].data.wnum+"<BR>"
+                            res+='计划:'+datas[0].data.num+"<BR>"
                             // res+='百分比:'+(datas[1].value==null||datas[1].value==0?"0.00":(datas[0].value/datas[1].value*100).toFixed(2))+"%"
                             return res
                         }
@@ -116,13 +116,17 @@
                 bottom: '5%',
                 containLabel: true
                     },
+          dataset: {
+            dimensions: ['mz','num','wnum'],
+            source: this.data.t_sbhcjlbNum.nummg
+          },
           xAxis: {
             type: 'value',
             boundaryGap: [0, 0.01]
           },
           yAxis: {
             type: 'category',
-            data: this.data.t_sbhcjlbNum.name,
+            // data: this.data.t_sbhcjlbNum.name,
             axisLabel: {
                 show: true, // 是否显示X轴的内容,不包含两端的文字
                 interval: 0,
@@ -148,7 +152,7 @@
           series: [
             {
               type: 'bar',
-              data: this.data.t_sbhcjlbNum.number,
+              // data: this.data.t_sbhcjlbNum.number,
               label: {
                 show: true,
                 position: 'right'
@@ -159,7 +163,7 @@
             },
             {
               type: 'bar',
-              data: this.data.t_sbhcjlbNum.numberAll,
+              // data: this.data.t_sbhcjlbNum.numberAll,
               label: {
                 show: true,
                 position: 'right'

+ 4 - 4
src/views/statistics/item/s9neiBuZhiLiang.vue

@@ -48,7 +48,7 @@
     },
     data () {
       return {
-        title:'质量控制完成率',
+        title:'内部比对实验计划完成率',
         dialogOff:false,
         measured:[]
       }
@@ -77,7 +77,7 @@
 
         //v3
         // let e=[this.data.t_complaintNum.number[0],this.data.t_complaintNum.numberAll[0],this.data.t_complaintNum.res[0]]
-        let e = 100 -this.data.t_mjzlkzxbNum.valna
+        let e = 100 -this.data.t_mjzlkzxbNum.val
 
         option = {
           title: {
@@ -98,8 +98,8 @@
                 formatter: '{b}: {d}%'
               },
               data: [
-                { value: this.data.t_mjzlkzxbNum.valna, name: '质量控制计划完成率' },
-                { value: e, name: '质量控制计划未完成率' }
+                { value: this.data.t_mjzlkzxbNum.val, name: '完成率' },
+                { value: e, name: '未完成率' }
               ],
               emphasis: {
                 itemStyle: {

+ 42 - 43
src/views/statistics/item/s9neiBuZhiLiangCol.vue

@@ -74,12 +74,52 @@
         // let beingDate=this.data.t_complaintBegin.date
         // let endDate=this.data.t_complaintEnd.date
         var option;
-        let e = []
-        e.push(this.data.t_mjzlkzxbNum.val[0])
+        let e=[this.data.t_mjzlkzxbNum.numberAll,this.data.t_mjzlkzxbNum.number]
         //v3
         // let e=[this.data.t_complaintNum.number[0],this.data.t_complaintNum.numberAll[0],this.data.t_complaintNum.res[0]]
 
         option = {
+            legend: {},
+            tooltip: {
+              trigger: 'axis',
+              axisPointer: {
+                type: 'shadow'
+              },
+              // formatter: function (params) {
+              //   return params[0].data[0] + '<br/>满意份数:' + params[0].data[1] + '<br/>调查总份数: ' + params[0].data[2];
+              // }
+            },
+            // dataset: {
+            //   source: barData
+            // },
+            xAxis: { 
+              type: 'category',
+              data:['内部比对实验计划总数', '内部比对实验计划已完成数量']
+
+            },
+            yAxis: [
+              {
+                type: 'value',
+                scale: true,
+                name: '数量',
+                // max: this.data.t_sbhcjlbNum.valnum>this.data.t_sbhcjlbNum.valAll?this.data.t_sbhcjlbNum.valnum+1:this.data.t_sbhcjlbNum.valAll+1,
+                min: 0,
+              },
+            ],
+            series: [
+              {
+                data: e,
+                type: 'bar',
+                barWidth: '20%',
+                itemStyle: {
+                  color: '#0099ff'
+                },
+                label: {
+                  show: true,
+                  position: 'top'
+                },
+              }
+            ],
             grid: {
               top: '20%',
               left: '3%',
@@ -93,47 +133,6 @@
 
               // subtext: "        "+beingDate+"-"+endDate
             },
-            legend: {},
-            tooltip: {
-                trigger: 'axis',
-                axisPointer: {
-                  type: 'shadow'
-                },
-                formatter: function (datas) {
-                    console.log(datas,'sdsdds')
-                    var res=datas[0].data[0]+"<BR>"+'已完成:'+datas[0].data[2]+"<BR>"
-                    res+='总计划:'+datas[0].data[1]+"<BR>"
-                    res+='百分比:'+(datas[0].data[1]==null||datas[0].data[1]==0?"0.00":(datas[0].data[2]/datas[0].data[1]*100).toFixed(2))+"%"
-                    return res
-                }
-            },
-            dataset: {
-                source: e
-            },
-            xAxis: { type: 'category' },
-            yAxis: {},
-            // Declare several bar series, each will be mapped
-            // to a column of dataset.source by default.
-            series: [{ 
-              type: 'bar',
-              itemStyle: {color: '#cccc33'},
-              barWidth: '20%',
-              label: {
-                show: true,
-                position: 'top'
-              },
-            },
-            { 
-              type: 'bar',
-              itemStyle: {color: '#66CCCC'},
-              barWidth: '20%',
-
-              label: {
-                show: true,
-                position: 'top'
-              },
-            }
-            ]
         };
 
         option && s9neibu.setOption(option);

+ 225 - 354
src/views/statistics/js/selectDB.js

@@ -2,384 +2,255 @@ import en from "@/locales/bpmn-js/en"
 
 /* 统计的合格率配置信息,  如公正性,  一年需要完成4次, 当前完成2次的话,则为50%完成率。 */
 export const getConfig = (begin,end)=>{
-  return "select * FROM t_tjpzb"
+  return "select * FROM t_glps"
 
 }
-export const getJiaoYanObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select a.t_mjsbjdxzjhzbZhName, a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,ifnull(b.t_mjsbjdxzjhzbS,0) as t_mjsbjdxzjhzbS FROM (select t_sbdj.she_bei_shi_bie_h as t_mjsbjdxzjhzbZhName, t_mjsbjdxzjhzb.she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(t_mjsbjdxzjhzb.she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb LEFT JOIN t_sbdj on t_mjsbjdxzjhzb.she_bei_bian_hao_ = t_sbdj.id_ where YEAR(t_mjsbjdxzjhzb.create_time_)="+end+" GROUP BY t_mjsbjdxzjhzb.she_bei_ming_chen HAVING COUNT(t_mjsbjdxzjhzb.she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= "+end+" AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
+export const getJiaoYanObj = (end,info)=>{
+  return "select COUNT(t_mjsbjdxzjhzb.id_) as num from t_mjsbjdxzjhzb JOIN t_mjsbjdxzjh on t_mjsbjdxzjhzb.parent_id_ = t_mjsbjdxzjh.id_ where FIND_IN_SET(t_mjsbjdxzjh.bian_zhi_bu_men_,'"+info+"') and t_mjsbjdxzjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' union all select COUNT(t_mjsbjdxzjhzb.id_) as num from t_mjsbjdxzjhzb JOIN t_mjsbjdxzjh on t_mjsbjdxzjhzb.parent_id_ = t_mjsbjdxzjh.id_ where FIND_IN_SET(t_mjsbjdxzjh.bian_zhi_bu_men_,'"+info+"') and t_mjsbjdxzjh.shi_fou_guo_shen_ = '已完成' and t_mjsbjdxzjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' "
 }
-export const gethechaObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select	a.t_sbhcjlbZhname,	a.t_sbhcjlbName,	a.t_sbhcjlb,	ifnull( b.t_sbhcjlbS, 0 ) AS t_sbhcjlbS FROM	(	SELECT	t_sbdj.she_bei_ming_cheng_ AS t_sbhcjlbZhname,	t_sbdj.she_bei_shi_bie_h AS t_sbhcjlbName,	COUNT( t_yqsbhcjh.yi_qi_she_bei_min ) AS t_sbhcjlb 	FROM	t_yqsbhcjh	LEFT JOIN t_sbdj ON t_yqsbhcjh.yi_qi_she_bei_min = t_sbdj.id_ 	WHERE	YEAR ( t_yqsbhcjh.he_cha_pin_lv_ )= "+end+"	GROUP BY	t_yqsbhcjh.yi_qi_she_bei_min 	HAVING	COUNT( t_yqsbhcjh.yi_qi_she_bei_min )>= 1 	) AS a	LEFT JOIN ( SELECT shi_bie_hao_, COUNT( shi_bie_hao_ ) AS t_sbhcjlbS FROM t_sbhcjlb WHERE YEAR ( he_cha_ri_qi_ )= "+end+" GROUP BY shi_bie_hao_ HAVING COUNT( shi_bie_hao_ )>= 1 ) AS b ON a.t_sbhcjlbName = b.shi_bie_hao_ UNION SELECT	t_sbdj.she_bei_ming_cheng_ AS t_sbhcjlbZhname,	t_sbhcjlb.shi_bie_hao_ AS t_sbhcjlbName,IF	( t_sbhcjlb.id_, 0, 1 ) AS t_sbhcjlb,IF	(	YEAR ( t_sbhcjlb.he_cha_ri_qi_ )= YEAR ( t_sbhcjlb.xia_ci_he_cha_ri_ ),	COUNT( t_sbhcjlb.shi_bie_hao_ )+ 1,	COUNT( t_sbhcjlb.shi_bie_hao_ )) AS t_sbhcjlbS FROM	t_sbhcjlb	LEFT JOIN t_sbdj ON t_sbhcjlb.shi_bie_hao_ = t_sbdj.she_bei_shi_bie_h WHERE	YEAR ( t_sbhcjlb.he_cha_ri_qi_ )= "+end+" GROUP BY	t_sbhcjlb.shi_bie_hao_ HAVING	COUNT( t_sbhcjlb.shi_bie_hao_ )>=1"
+export const getJiaoYanMGObj = (end,info)=>{
+  return "select a.mz,IFNULL(a.num,0) as num ,IFNULL(b.num,0) as wnum from (select t_mjsbjdxzjhzb.bian_hao_zhong_we,concat(t_mjsbjdxzjhzb.bian_hao_zhong_we,t_mjsbjdxzjhzb.she_bei_ming_chen) as mz,COUNT(t_mjsbjdxzjhzb.id_) as num from t_mjsbjdxzjhzb JOIN t_mjsbjdxzjh on t_mjsbjdxzjhzb.parent_id_ = t_mjsbjdxzjh.id_ where FIND_IN_SET(t_mjsbjdxzjh.bian_zhi_bu_men_,'"+info+"') and t_mjsbjdxzjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_mjsbjdxzjhzb.bian_hao_zhong_we) as a LEFT JOIN (select t_mjsbjdxzjhzb.bian_hao_zhong_we, COUNT(t_mjsbjdxzjhzb.id_) as num from t_mjsbjdxzjhzb JOIN t_mjsbjdxzjh on t_mjsbjdxzjhzb.parent_id_ = t_mjsbjdxzjh.id_ where FIND_IN_SET(t_mjsbjdxzjh.bian_zhi_bu_men_,'"+info+"') and t_mjsbjdxzjh.shi_fou_guo_shen_ = '已完成' and t_mjsbjdxzjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_mjsbjdxzjhzb.bian_hao_zhong_we) as b on a.bian_hao_zhong_we=b.bian_hao_zhong_we"
+}
+export const gethechaObj = (end,info)=>{
+  return "select COUNT(t_mjsbwhjhzb.id_) as num from t_mjsbwhjhzb JOIN t_mjsbwhjhb on t_mjsbwhjhzb.parent_id_ = t_mjsbwhjhb.id_ where FIND_IN_SET(t_mjsbwhjhb.bian_zhi_bu_men_,'"+info+"') and t_mjsbwhjhb.shi_fou_guo_shen_ = '已完成' and t_mjsbwhjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION All select COUNT(t_mjsbwhbyjlby.id_) as num from t_mjsbwhbyjlby JOIN t_mjsbwhjhb on t_mjsbwhbyjlby.ji_hua_zong_wai_j = t_mjsbwhjhb.id_ where FIND_IN_SET(t_mjsbwhjhb.bian_zhi_bu_men_,'"+info+"') and t_mjsbwhbyjlby.shi_fou_guo_shen_ = '已完成' and t_mjsbwhjhb.shi_fou_guo_shen_ = '已完成' and t_mjsbwhjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
+}
+export const gethechaMGObj = (end,info)=>{
+  return "select a.mz,IFNULL(a.num,0) as num,IFNULL(b.wnum,0) as wnum from (select t_mjsbwhjhzb.bian_hao_zhong_we,concat(t_mjsbwhjhzb.bian_hao_zhong_we,t_mjsbwhjhzb.she_bei_ming_chen) as mz,COUNT(t_mjsbwhjhzb.id_) as num from t_mjsbwhjhzb JOIN t_mjsbwhjhb on t_mjsbwhjhzb.parent_id_ = t_mjsbwhjhb.id_ where FIND_IN_SET(t_mjsbwhjhb.bian_zhi_bu_men_,'"+info+"') and t_mjsbwhjhb.shi_fou_guo_shen_ = '已完成' and t_mjsbwhjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_mjsbwhjhzb.bian_hao_zhong_we) as a LEFT JOIN (select t_mjsbwhbyjlby.ri_qi_,COUNT(t_mjsbwhbyjlby.id_) as wnum from t_mjsbwhbyjlby JOIN t_mjsbwhjhb on t_mjsbwhbyjlby.ji_hua_zong_wai_j = t_mjsbwhjhb.id_ where FIND_IN_SET(t_mjsbwhjhb.bian_zhi_bu_men_,'"+info+"') and t_mjsbwhbyjlby.shi_fou_guo_shen_ = '已完成' and t_mjsbwhjhb.shi_fou_guo_shen_ = '已完成' and t_mjsbwhjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'GROUP BY t_mjsbwhbyjlby.ri_qi_) as b on a.bian_hao_zhong_we= b.ri_qi_"
 }
 // export const getnengliObj = (end)=>{
-//   // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-//   return "select a.enname,ifnull(a.num,0) as num,  ifnull(b.num,0) as numS from(select xiang_mu_ as enname, COUNT(jian_ce_biao_zhun) as num from t_ndnlyzsysjbdjhzb where YEAR(yu_ji_shi_jian_)="+end+" GROUP BY jian_ce_biao_zhun HAVING COUNT(jian_ce_biao_zhun)>=1) as a LEFT JOIN (select jian_ce_biao_zhun as enname, COUNT(jian_ce_biao_zhun) as num from t_ndnlyzsysjbdjhzb as c LEFT JOIN t_ndnlyzsysjbdjhb as d on c.parent_id_ = d.id_ where YEAR(c.create_time_)="+end+" and d.shi_fou_guo_shen_='1' GROUP BY jian_ce_biao_zhun HAVING COUNT(jian_ce_biao_zhun)>=1) as b on a.enname = b.enname"
+//   return "select COUNT(t_ndnlyzsysjbdjhzb.id_) as num from t_ndnlyzsysjbdjhzb LEFT JOIN t_nlyzsysjbdhdsyxhcb on t_ndnlyzsysjbdjhzb.id_=t_nlyzsysjbdhdsyxhcb.xiang_mu_ming_che WHERE t_nlyzsysjbdhdsyxhcb.shi_fou_guo_shen_ = '1' and  YEAR(t_ndnlyzsysjbdjhzb.create_time_)= "+end+" UNION all select COUNT(id_) as snum from t_ndnlyzsysjbdjhzb where  YEAR(create_time_)="+end
 // }
-export const getnengliObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select COUNT(id_) as num from t_ndnlyzsysjbdjhb WHERE shi_fou_guo_shen_ = '1' and  YEAR(create_time_)= "+end+"  UNION all select COUNT(id_) as snum from t_ndnlyzsysjbdjhb where  YEAR(create_time_)= "+end
+export const getyangPinCaiJiObj = (end,info)=>{
+  return "select t_zlzbpjzb.*,IF(FIND_IN_SET('项', t_zlzbpjzb.zhi_biao_xian_zhi) > 0 AND FIND_IN_SET('次', t_zlzbpjzb.zhi_biao_xian_zhi) > 0,  SUM(t_zlzbpjzb.shi_ji_shu_zhi_),AVG(t_zlzbpjzb.shi_ji_shu_zhi_)) AS location,t_zlzbpjb.bian_zhi_bu_men_ as bzbm,DATE_FORMAT(t_zlzbpjb.bian_zhi_shi_jian, '%Y-%m')as bzsj from t_zlzbpjzb LEFT JOIN t_zlzbpjb on t_zlzbpjzb.parent_id_ = t_zlzbpjb.id_ where FIND_IN_SET(t_zlzbpjb.bian_zhi_bu_men_,'"+info+"') and t_zlzbpjb.shi_fou_guo_shen_ = '已完成' and t_zlzbpjb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_zlzbpjb.bian_zhi_bu_men_,t_zlzbpjzb.zhi_liang_mu_biao ORDER BY t_zlzbpjzb.zhi_liang_zhi_bia"
 }
-export const getbiaozhunObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select a.name as name, a.num ,IFNULL(b.numS,0) as numS from(select zhuan_huan_ as name, COUNT(zhuan_huan_) as num from t_bzwzqjhcjhzb where YEAR(create_time_)="+end+" GROUP BY zhuan_huan_ HAVING COUNT(zhuan_huan_)>=1) as a LEFT JOIN (select zhuan_huan_ as name, COUNT(zhuan_huan_) as numS from t_bzwzqjhcjhzb as c LEFT JOIN t_bzwzqjhcjhb as d on c.parent_id_ = d.id_ where YEAR(c.create_time_)="+end+" and d.shi_fou_guo_shen_='1' GROUP BY zhuan_huan_ HAVING COUNT(zhuan_huan_)>=1) as b on a.name = b.name"
+export const getzongZLMBObj = (end,info)=>{
+  return "select t_zlzbpjzb.*,IF(FIND_IN_SET('项', t_zlzbpjzb.zhi_biao_xian_zhi) > 0 AND FIND_IN_SET('次', t_zlzbpjzb.zhi_biao_xian_zhi) > 0,  SUM(t_zlzbpjzb.shi_ji_shu_zhi_),AVG(t_zlzbpjzb.shi_ji_shu_zhi_)) AS location,t_zlzbpjb.bian_zhi_bu_men_ as bzbm,DATE_FORMAT(t_zlzbpjb.bian_zhi_shi_jian, '%Y-%m')as bzsj from t_zlzbpjzb LEFT JOIN t_zlzbpjb on t_zlzbpjzb.parent_id_ = t_zlzbpjb.id_ where FIND_IN_SET(t_zlzbpjb.bian_zhi_bu_men_,'"+info+"') and t_zlzbpjb.shi_fou_guo_shen_ = '已完成' and t_zlzbpjb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_zlzbpjzb.zhi_liang_mu_biao"
 }
-export const getbiaozhunTObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select MONTH(shi_shi_shi_jian_) as time from t_bzwzqjhcjhzb where YEAR(shi_shi_shi_jian_) ="+end+" ORDER BY shi_shi_shi_jian_ ASC LIMIT 1"
+export const getzhiliangzhibiaotitleObj = (end,info)=>{
+  return "select distinct t_zlzbpjzb.zhi_liang_zhi_bia from t_zlzbpjzb LEFT JOIN t_zlzbpjb on t_zlzbpjzb.parent_id_ = t_zlzbpjb.id_ where FIND_IN_SET(t_zlzbpjb.bian_zhi_bu_men_,'"+info+"') and t_zlzbpjb.shi_fou_guo_shen_ = '已完成' and t_zlzbpjb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_zlzbpjb.bian_zhi_bu_men_,t_zlzbpjzb.zhi_liang_mu_biao ORDER BY t_zlzbpjzb.zhi_liang_zhi_bia"
 }
-export const getbzJunZhuObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select a.name as name, a.num ,IFNULL(b.numS,0) as numS from(select zhuan_huan_ as name, COUNT(zhuan_huan_) as num from t_bzjzhcjhzb where YEAR(create_time_)="+end+" GROUP BY zhuan_huan_ HAVING COUNT(zhuan_huan_)>=1) as a LEFT JOIN (select zhuan_huan_ as name, COUNT(zhuan_huan_) as numS from t_bzjzhcjhzb as c LEFT JOIN t_bzjzhcjhb as d on c.parent_id_ = d.id_ where YEAR(c.create_time_)="+end+" and d.shi_fou_guo_shen_='1' GROUP BY zhuan_huan_ HAVING COUNT(zhuan_huan_)>=1) as b on a.name = b.name"
+export const getfenzuZLZBObj = (end,info)=>{
+  return "select t_zlzbpjzb.*,IF(FIND_IN_SET('项', t_zlzbpjzb.zhi_biao_xian_zhi) > 0 AND FIND_IN_SET('次', t_zlzbpjzb.zhi_biao_xian_zhi) > 0,  SUM(t_zlzbpjzb.shi_ji_shu_zhi_),AVG(t_zlzbpjzb.shi_ji_shu_zhi_)) AS location,t_zlzbpjb.bian_zhi_bu_men_ as bzbm,DATE_FORMAT(t_zlzbpjb.bian_zhi_shi_jian, '%Y-%m')as bzsj from t_zlzbpjzb LEFT JOIN t_zlzbpjb on t_zlzbpjzb.parent_id_ = t_zlzbpjb.id_ where FIND_IN_SET(t_zlzbpjb.bian_zhi_bu_men_,'"+info+"') and t_zlzbpjb.shi_fou_guo_shen_ = '已完成' and t_zlzbpjb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_zlzbpjzb.zhi_liang_mu_biao,bzsj ORDER BY bzsj"
 }
-export const getbzJunZhuTObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select MONTH(shi_shi_shi_jian_) as time from t_bzjzhcjhzb where YEAR(shi_shi_shi_jian_) ="+end+" ORDER BY shi_shi_shi_jian_ ASC LIMIT 1"
-}
-export const getbzXiBaoObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select a.name as name, a.num ,IFNULL(b.numS,0) as numS from(select zhuan_huan_ as name, COUNT(zhuan_huan_) as num from t_bzxbqjhcjhzbn where YEAR(create_time_)="+end+" GROUP BY zhuan_huan_ HAVING COUNT(zhuan_huan_)>=1) as a LEFT JOIN (select c.zhuan_huan_ as name, COUNT(c.zhuan_huan_) as numS from t_bzxbqjhcjhzbn as c LEFT JOIN t_bzxbqjhcjh as d on c.parent_id_ = d.id_ where YEAR(c.create_time_)="+end+" and d.shi_fou_guo_shen_='1' GROUP BY c.zhuan_huan_ HAVING COUNT(c.zhuan_huan_)>=1) as b on a.name = b.name"
+
+
+export const getzaigangrenyuanObj = (end,info)=>{
+  return "select COUNT(t_ndrypxjhzb.id_) as num from t_ndrypxjhzb JOIN t_lhndrypxjh on t_ndrypxjhzb.parent_id_ = t_lhndrypxjh.id_ where FIND_IN_SET(t_lhndrypxjh.bian_zhi_bu_men_,'"+info+"') and t_lhndrypxjh.shi_fou_guo_shen_ = '已完成' and t_lhndrypxjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION ALL select COUNT(t_lhrypxjlb.id_) as num from t_lhrypxjlb JOIN t_lhndrypxjh on t_lhrypxjlb.ji_hua_zong_wai_j = t_lhndrypxjh.id_ where FIND_IN_SET(t_lhndrypxjh.bian_zhi_bu_men_,'"+info+"') and t_lhrypxjlb.shi_fou_guo_shen_ = '已完成' and t_lhndrypxjh.shi_fou_guo_shen_ = '已完成' and t_lhndrypxjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-export const getbzXiBaoTObj = (end)=>{
-  // return "select a.t_mjsbjdxzjhzbName,a.t_mjsbjdxzjhzb,b.t_mjsbjdxzjhzbS FROM (select she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb from t_mjsbjdxzjhzb where YEAR(create_time_)='2022' GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1) as a left join  (select she_bei_ming_chen, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS from t_mjsbjdxzjhzb where YEAR(create_time_)= '2022' AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 )as b on a.t_mjsbjdxzjhzbName=b.she_bei_ming_chen"
-  return "select MONTH(shi_shi_shi_jian_) as time from t_bzxbqjhcjhzbn where YEAR(shi_shi_shi_jian_) ="+end+" ORDER BY shi_shi_shi_jian_ ASC LIMIT 1"
+export const getgangqianpeixunObj = (end,info)=>{
+  return "select COUNT(t_lhgqpxjhzb.id_) as num from t_lhgqpxjhzb JOIN t_lhgqpxjh on t_lhgqpxjhzb.parent_id_ = t_lhgqpxjh.id_ where FIND_IN_SET(t_lhgqpxjh.bian_zhi_bu_men_,'"+info+"') and t_lhgqpxjh.shi_fou_guo_shen_ = '已完成' and t_lhgqpxjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION ALL select COUNT(t_lhrypxjlb.id_) as num from t_lhrypxjlb JOIN t_lhgqpxjh on t_lhrypxjlb.ji_hua_zong_wai_j = t_lhgqpxjh.id_ where FIND_IN_SET(t_lhgqpxjh.bian_zhi_bu_men_,'"+info+"') and t_lhrypxjlb.shi_fou_guo_shen_ = '已完成' and t_lhgqpxjh.shi_fou_guo_shen_ = '已完成' and t_lhgqpxjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-export const DBData = (begin,end,scope)=>{
-  // return "select tt.*,cast(1-(t_gdyrqcwt4"+begin+"/t_gdyrqcwt"+begin+")  AS decimal(32,2)) as t_gdyrqcwt6"+begin+
-  // return "select tt.* "+
 
-  // // ",cast(1-(t_gdyrqcwt4"+end+"/t_gdyrqcwt"+end+") AS decimal(32,2)) as t_gdyrqcwt6"+end+
-  // // ",cast(1-(t_gdyrqcwt50"+begin+"/t_gdyrqcwt"+begin+") AS decimal(32,2)) as t_gdyrqcwt5"+begin+",cast(1-(t_gdyrqcwt50"+end+"/t_gdyrqcwt"+end+") AS decimal(32,2)) as t_gdyrqcwt5"+end+
-  // // ",cast(ifnull(1-(t_gdyrqcwt2"+begin+"/t_gdyrqcwt"+begin+"),0)+0.01 AS decimal(32,2)) as t_myddc5"+begin+",cast(ifnull(1-(t_gdyrqcwt2"+end+"/t_gdyrqcwt"+end+"),0)+0.01 AS decimal(32,2)) as t_myddc5"+end+
-  // // ",cast(ifnull(1-(t_gdyrqcwt3"+begin+"/t_gdyrqcwt"+begin+"),0)+0.01 AS decimal(32,2)) as t_myddc6"+begin+",cast(ifnull(1-(t_gdyrqcwt3"+end+"/t_gdyrqcwt"+end+"),0)+0.01 AS decimal(32,2)) as t_myddc6"+end+
-  // // ",cast(ifnull((t_gdyrqcwt50"+begin+"/t_gdyrqcwt"+begin+"),0)+0.01 AS decimal(32,2)) as t_myddc4"+begin+",cast(ifnull((t_gdyrqcwt50"+end+"/t_gdyrqcwt"+end+"),0)+0.01 AS decimal(32,2)) as t_myddc4"+end+
-  // " FROM("+s1jianCe(begin,end)+
-  // " join "+s1renwu(begin,end,scope)+
-  // " join "+s2jianCe(begin,end)+
-  // " join "+s2manYiDu(begin,end,scope)+
-  // " join "+s3tousu(begin,end,scope)+
-  // " join "+s4renYuanPeiXun(begin,end,scope)+
-  // " join "+s5renYuanJianDu(begin,end,scope)+
-  // " join "+s6sheBeiWeiHu(begin,end)+
-  // " join "+s7sheBeiJiaoZhun(begin,end)+
-  // " join "+s8sheBeiHeCha(begin,end)+
-  // ") tt"
-  return "select tt.* "+
-  " FROM("+s1jianCe(begin,end)+
-  " join "+s1renwu(begin,end,scope)+
-  " join "+s2jianCe(begin,end)+
-  " join "+s2manYiDu(begin,end,scope)+
-  " join "+s3tousu(begin,end,scope)+
-  " join "+s4renYuanPeiXun(begin,end,scope)+
-  " join "+s5renYuanJianDu(begin,end,scope)+
-  " join "+s9neiBu(begin,end,scope)+
-  " join "+s12fengXian(begin,end,scope)+
-  " join "+s14bufuhexiang(begin,end,scope)+
-  // " join "+s6sheBeiWeiHu(begin,end)+
-  // " join "+s7sheBeiJiaoZhun(begin,end)+
-  // " join "+s8sheBeiHeCha(begin,end)+
-  ") tt"
-}
-/* 拼接通用条件,选用 */
-function PAT(val){
-  return "shi_fou_guo_shen_ = '1' AND YEAR ( create_time_ ) = '" + val+"'"
+export const getwaibuObj = (end,info)=>{
+  return "select COUNT(t_cjwbzlpjhdjhxqb.id_) as num from t_cjwbzlpjhdjhxqb JOIN t_cjwbzlpjhdjhb on t_cjwbzlpjhdjhxqb.parent_id_ = t_cjwbzlpjhdjhb.id_ where FIND_IN_SET(t_cjwbzlpjhdjhb.bu_men_,'"+info+"') and t_cjwbzlpjhdjhb.shi_fou_guo_shen_ = '已完成' and t_cjwbzlpjhdjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION All select COUNT(t_sjzpjgpjb.id_) as num from t_sjzpjgpjb JOIN t_cjwbzlpjhdjhb on t_sjzpjgpjb.shi_jian_zhi_ping = t_cjwbzlpjhdjhb.id_ where FIND_IN_SET(t_cjwbzlpjhdjhb.bu_men_,'"+info+"') and t_sjzpjgpjb.shi_fou_guo_shen_ = '已完成' and t_cjwbzlpjhdjhb.shi_fou_guo_shen_ = '已完成' and t_cjwbzlpjhdjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-function PAT_SATISFACTION(val){
-  return "man_yi_du_ = '满意' AND YEAR ( create_time_ ) = '" + val+"'"
+export const getneibuObj = (end,info)=>{
+  return "select COUNT(t_nbbdsyjhzb.id_) as num from t_nbbdsyjhzb JOIN t_nbbdsyjh on t_nbbdsyjhzb.parent_id_ = t_nbbdsyjh.id_ where FIND_IN_SET(t_nbbdsyjh.bian_zhi_bu_men_,'"+info+"') and t_nbbdsyjh.shi_fou_guo_shen_ = '已完成' and t_nbbdsyjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION All select COUNT(t_nbbdsy.id_) as num from t_nbbdsy JOIN t_nbbdsyjh on t_nbbdsy.ji_hua_id_ = t_nbbdsyjh.id_ where FIND_IN_SET(t_nbbdsyjh.bian_zhi_bu_men_,'"+info+"') and t_nbbdsy.shi_fou_guo_shen_ = '已完成' and t_nbbdsyjh.shi_fou_guo_shen_ = '已完成' and t_nbbdsyjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-function PAT_YEAR(val){
-  return " YEAR ( create_time_ ) = '" + val+"'"
+export const getyingjiObj = (end,info)=>{
+  return "select COUNT(t_lisxttjyjyayljhzb.id_) as num from t_lisxttjyjyayljhzb JOIN t_lisxttjyjyayljh on t_lisxttjyjyayljhzb.parent_id_ = t_lisxttjyjyayljh.id_ where FIND_IN_SET(t_lisxttjyjyayljh.bian_zhi_bu_men_,'"+info+"') and t_lisxttjyjyayljh.shi_fou_guo_shen_ = '已完成' and t_lisxttjyjyayljh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION ALL	select COUNT(t_lisxtgzyjylssjlb.id_) as num from t_lisxtgzyjylssjlb JOIN t_lisxttjyjyayljh on t_lisxtgzyjylssjlb.xuan_ze_ji_hua_= t_lisxttjyjyayljh.id_ where FIND_IN_SET(t_lisxttjyjyayljh.bian_zhi_bu_men_,'"+info+"') and t_lisxtgzyjylssjlb.shi_fou_guo_shen_ = '已完成' and t_lisxttjyjyayljh.shi_fou_guo_shen_ = '已完成' and t_lisxttjyjyayljh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-function PAT_TASK(val,choose){
-  
-  return choose?"shi_fou_guo_shen_ = '1' AND YEAR( create_time_ ) = '"+val+"' AND DATE(update_time_) BETWEEN DATE( create_time_ ) and DATE( qi_wang_wan_cheng ) ":"shi_fou_guo_shen_ = '1' AND YEAR( create_time_ ) = '"+val+"'"
+export const getfengxianObj = (end,info)=>{
+  return "select COUNT(t_mjsyshdfxsbykzjhxb.id_) as num from t_mjsyshdfxsbykzjhxb JOIN t_mjsyshdfxsbykzjhb on t_mjsyshdfxsbykzjhxb.parent_id_ = t_mjsyshdfxsbykzjhb.id_ where FIND_IN_SET(t_mjsyshdfxsbykzjhb.bian_zhi_bu_men_,'"+info+"') and t_mjsyshdfxsbykzjhb.shi_fou_guo_shen_ = '已完成' and t_mjsyshdfxsbykzjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION ALL select COUNT(t_mjsyshdfxkzypjjlb.id_) as num from t_mjsyshdfxkzypjjlb JOIN t_mjsyshdfxsbykzjhb on t_mjsyshdfxkzypjjlb.ji_hua_zong_wai_j = t_mjsyshdfxsbykzjhb.id_ where FIND_IN_SET(t_mjsyshdfxsbykzjhb.bian_zhi_bu_men_,'"+info+"') and t_mjsyshdfxkzypjjlb.shi_fou_guo_shen_ = '已完成' and t_mjsyshdfxsbykzjhb.shi_fou_guo_shen_ = '已完成' and t_mjsyshdfxsbykzjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-function PAT_CHOOSE(val,choose){
-  return choose + " AND YEAR( create_time_ ) = '"+val+"'"
-  // return "zhuang_tai_ = '已完成' AND YEAR ( create_time_ ) = '" + val+"'"
-
+export const getneishenObj = (end,info)=>{
+  return "select COUNT(t_nsjh.id_) as num from t_nsjh where FIND_IN_SET(t_nsjh.bian_zhi_bu_men_,'"+info+"') and t_nsjh.shi_fou_guo_shen_ = '已完成' and t_nsjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION ALL select COUNT(t_nbshbgb.id_) as num from t_nbshbgb JOIN (select t_nbss.id_,t_nbss.shi_fou_guo_shen_ from t_nsjh join t_nbss on t_nbss.ji_hua_zong_wai_j = t_nsjh.id_ where FIND_IN_SET(t_nsjh.bian_zhi_bu_men_,'"+info+"') and t_nsjh.shi_fou_guo_shen_ = '已完成' and t_nsjh.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' ) as a on t_nbshbgb.ji_hua_zong_wai_j = a.id_ where t_nbshbgb.shi_fou_guo_shen_ = '已完成' and a.shi_fou_guo_shen_ = '已完成' "
 }
-/* 工具函数参数
-1、时间条件
-2、表名
-3、where条件
-4、连接与连接条件
-  (0) on 1=1 JOIN  非结束的sql语句
-  (1) on 1=1  仅被连接, 如当前方法最后一个sql语句
-   */
-function tool(val,tableName,where,join){
-  let alias = tableName+val //别名
- return "( SELECT COUNT( id_ ) AS "
- +alias
- +" FROM "
- +tableName
- +" WHERE "
- +where
- +" ) "
- +alias
- + (join==0?" on 1=1 JOIN ":" on 1=1 ")
+export const getguanshenObj = (end,info)=>{
+  return "select COUNT(t_gglpsjhx.id_) as num from t_gglpsjhx where FIND_IN_SET(t_gglpsjhx.bian_zhi_bu_men_,'"+info+"') and t_gglpsjhx.shi_fou_guo_shen_ = '已完成' and t_gglpsjhx.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' UNION ALL select COUNT(t_gsbgb.id_) as num from t_gsbgb JOIN t_gglpsjhx on t_gsbgb.zong_wai_jian_ = t_gglpsjhx.id_ where t_gsbgb.shi_fou_guo_shen_ = '已完成' and t_gglpsjhx.shi_fou_guo_shen_ = '已完成' and FIND_IN_SET(t_gglpsjhx.bian_zhi_bu_men_,'"+info+"')  and t_gglpsjhx.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"'"
 }
-function toolTask(val,tableName,where,join){
-  let alias = tableName+val //别名
- return "( SELECT COUNT( id_ ) AS "
- +alias
- +" FROM "
- +tableName
- +" WHERE "
- +where
- +" ) "
- +alias
- + (join==0?" on 1=1 JOIN ":" on 1=1 ")
+export const getbufuheObj = (end,info)=>{
+  return "select a.bao_gao_lei_xing_,IFNULL(a.num,0) as num,IFNULL(b.numA,0) as numA from (select t_bfhhjzcsjlb.bao_gao_lei_xing_,COUNT(t_bfhhjzcsjlb.id_) as num from t_bfhhjzcsjlb where FIND_IN_SET(t_bfhhjzcsjlb.bian_zhi_bu_men_,'"+info+"') and t_bfhhjzcsjlb.shi_fou_guo_shen_ = '已完成' and t_bfhhjzcsjlb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_bfhhjzcsjlb.bao_gao_lei_xing_) as a LEFT JOIN (select t_bfhhjzcsjlb.bao_gao_lei_xing_,COUNT(t_bfhhjzcsjlb.id_) as numA from t_bfhhjzcsjlb where FIND_IN_SET(t_bfhhjzcsjlb.bian_zhi_bu_men_,'"+info+"') and t_bfhhjzcsjlb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_bfhhjzcsjlb.bao_gao_lei_xing_) as b on a.bao_gao_lei_xing_=b.bao_gao_lei_xing_"
 }
-function toolSame(val,tableName,where,join){
-  let alias = tableName+'S'+val //别名
- return "( SELECT COUNT( id_ ) AS "
- +alias
- +" FROM "
- +tableName
- +" WHERE "
- +where
- +" ) "
- +alias
- + (join==0?" on 1=1 JOIN ":" on 1=1 ")
+export const getgaijinxiangObj = (end,info)=>{
+  return "select a.ping_shen_lei_xin,IFNULL(a.num,0) as num,IFNULL(b.numA,0) as numA from (select t_glpsjhb.ping_shen_lei_xin,COUNT(t_glpsjhb.id_) as num from t_glpsjhb where FIND_IN_SET(t_glpsjhb.bian_zhi_bu_men_,'"+info+"') and t_glpsjhb.shi_fou_guo_shen_ = '已完成' and t_glpsjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_glpsjhb.ping_shen_lei_xin) as a LEFT JOIN (select t_glpsjhb.ping_shen_lei_xin,COUNT(t_glpsjhb.id_) as numA from t_glpsjhb where FIND_IN_SET(t_glpsjhb.bian_zhi_bu_men_,'"+info+"') and t_glpsjhb.bian_zhi_shi_jian BETWEEN '"+end[0]+"' and '"+end[1]+"' GROUP BY t_glpsjhb.ping_shen_lei_xin) as b on a.ping_shen_lei_xin = b.ping_shen_lei_xin"
 }
-/* 任务完成 */
-function s1renwu(begin,end,scope){
-  return "( SELECT COUNT( id_ ) AS t_lhjczb"+end+" FROM t_lhjczb "+ "WHERE zhuang_tai_ = '已完成' AND YEAR( create_time_ ) = "+end+") s1renwu1  JOIN"+
-  "( SELECT COUNT( id_ ) AS t_lhjczbS"+end+" FROM t_lhjczb WHERE YEAR ( create_time_ ) = "+end+" ) s1renwu2  "
+// export const getbiaozhunTObj = (end)=>{
+//   return "select MONTH(shi_shi_shi_jian_) as time from t_bzwzqjhcjhzb where YEAR(shi_shi_shi_jian_) ="+end+" ORDER BY shi_shi_shi_jian_ ASC LIMIT 1"
+// }
+// export const getbzJunZhuObj = (end)=>{
+//   return "select a.name as name, a.num ,IFNULL(b.numS,0) as numS from(select wu_liao_bian_ma_, zhuan_huan_ as name, COUNT(wu_liao_bian_ma_) as num from t_bzjzhcjhzb where YEAR(create_time_)="+end+" GROUP BY wu_liao_bian_ma_ HAVING COUNT(wu_liao_bian_ma_)>=1) as a LEFT JOIN (select wu_liao_bian_ma_, zhuan_huan_ as name, COUNT(wu_liao_bian_ma_) as numS from t_bzjzqjhcjl as d where YEAR(create_time_)="+end+" and d.shi_fou_guo_shen_='1' GROUP BY wu_liao_bian_ma_ HAVING COUNT(wu_liao_bian_ma_)>=1) as b on a.wu_liao_bian_ma_ = b.wu_liao_bian_ma_"
+// }
+// export const getbzJunZhuTObj = (end)=>{
+//  return "select MONTH(shi_shi_shi_jian_) as time from t_bzjzhcjhzb where YEAR(shi_shi_shi_jian_) ="+end+" ORDER BY shi_shi_shi_jian_ ASC LIMIT 1"
+// }
+// export const getbzXiBaoObj = (end)=>{
+//   return "select a.name as name, a.num ,IFNULL(b.numS,0) as numS from(select zhuan_huan_ as name, COUNT(zhuan_huan_) as num from t_bzxbqjhcjhzbn where YEAR(create_time_)="+end+" GROUP BY zhuan_huan_ HAVING COUNT(zhuan_huan_)>=1) as a LEFT JOIN (select c.zhuan_huan_ as name, COUNT(c.zhuan_huan_) as numS from t_bzxbqjhcjhzbn as c LEFT JOIN t_bzxbqjhcjh as d on c.parent_id_ = d.id_ where YEAR(c.create_time_)="+end+" and d.shi_fou_guo_shen_='1' GROUP BY c.zhuan_huan_ HAVING COUNT(c.zhuan_huan_)>=1) as b on a.name = b.name"
+// }
+// export const getbzXiBaoTObj = (end)=>{
+//  return "select MONTH(shi_shi_shi_jian_) as time from t_bzxbqjhcjhzbn where YEAR(shi_shi_shi_jian_) ="+end+" ORDER BY shi_shi_shi_jian_ ASC LIMIT 1"
+// }
+// export const DBData = (begin,end,scope)=>{
  
-  }
-/* 检测 */
-function s1jianCe(begin,end){
-  // //v3
-  // return "( SELECT COUNT( id_ ) AS t_mjjcbg"+end+" FROM t_mjjcbg "+ "WHERE shi_fou_guo_shen_ = '已退回' AND YEAR( create_time_ ) = "+end+" ) s1jianCe1 JOIN"+
-  // "( SELECT COUNT( id_ ) AS t_mjjcbgS"+end+" FROM t_mjjcbg WHERE  YEAR ( create_time_ ) = "+end+" ) s1jianCe2 "
-  // 委托检测数
-  return "SELECT *  FROM (select COUNT( id_ ) AS t_gdyrqcwt"+end+" from t_gdyrgpjc WHERE YEAR( create_time_ ) = "+end+" union all select id_ from t_gdyrqcjc WHERE YEAR( create_time_ ) = "+end+") s1jianCe1  JOIN "+
-  // "(SELECT COUNT( id_ ) AS t_gdyrqcwt"+end+" FROM (select id_ from t_gdyrgpjc WHERE YEAR( create_time_ ) = '"+end+"' union all select id_ from t_gdyrqcjc WHERE YEAR( create_time_ ) = '"+end+"') a0) s1jianCe2 on 1=1 join "+
-  // //按期完成检测件数
-  // "(select count(id_) as t_gdyrqcwt2"+begin+" from(select id_   from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+") union all select id_ from t_gdyrqcjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")) a) s1jianCe3 on 1=1 JOIN "+
-  // "(select count(id_) as t_gdyrqcwt2"+end+" from(select id_  from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+") union all select id_ from t_gdyrqcjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+")) a) s1jianCe4 on 1=1 join "+
-  // //出具报告数
-  // "(select count(id_) as t_gdyrqcwt3"+begin+" from(select id_   from t_gdyrgpjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+") union all select id_ from t_gdyrqcjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")) a) s1jianCe5 on 1=1 JOIN "+
-  // "(select count(id_) as t_gdyrqcwt3"+end+" from(select id_  from t_gdyrgpjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+") union all select id_ from t_gdyrqcjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+")) a) s1jianCe6 on 1=1 join "+
-  // //逾期未完成数
-  // "(select count(id_) as t_gdyrqcwt4"+begin+" from(select id_   from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+") union all select id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")) a) s1jianCe7 on 1=1 JOIN "+
-  // "(select count(id_) as t_gdyrqcwt4"+end+" from(select id_  from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+") union all select id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+")) a) s1jianCe8 on 1=1 JOIN " +
-  // //检测结果准确率
-  // "(select count(wei_tuo_id_) as t_gdyrqcwt50"+begin+" from(select wei_tuo_id_   from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+" ) group by wei_tuo_id_ having count(1)=1 union all select wei_tuo_id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")  group by wei_tuo_id_ having count(1)=1 ) a) s1jianCe9 on 1=1 JOIN "+
-  // "(select count(wei_tuo_id_) as t_gdyrqcwt50"+end+" from(select wei_tuo_id_  from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+" ) group by wei_tuo_id_ having count(1)=1 union all select wei_tuo_id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+"  ) group by wei_tuo_id_ having count(1)=1 ) a) s1jianCe10 on 1=1 "
-  // // 按时完成率
-  // "( select select count(id_) AS t_gdyrqcwt6"+begin+" from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+"))) s1jianCe11 on 1=1 JOIN "+
-  "( select count(id_) AS t_gdyrqcwt6"+end+" from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = '"+end+"')  ) s1jianCe12 on 1=1"
-  }
-  /* 检测 */
-function s2jianCe(begin,end){
-  //v3
-  return "( SELECT COUNT( id_ ) AS t_mjjcbg"+end+" FROM t_lhjcbgb "+ "WHERE trim(tui_hui_ci_shu_) != '' AND YEAR( create_time_ ) = "+end+" ) s2jianCe1 JOIN"+
-  "( SELECT COUNT( id_ ) AS t_mjjcbgS"+end+" FROM t_lhjcbgb WHERE  YEAR ( create_time_ ) = "+end+" ) s2jianCe2 "
-  //委托检测数
-  // return "SELECT *  FROM (select COUNT( id_ ) AS t_gdyrqcwt"+begin+" from t_gdyrgpjc WHERE YEAR( create_time_ ) = "+begin+" union all select id_ from t_gdyrqcjc WHERE YEAR( create_time_ ) = "+begin+") s1jianCe1  JOIN "+
-  // "(SELECT COUNT( id_ ) AS t_gdyrqcwt"+end+" FROM (select id_ from t_gdyrgpjc WHERE YEAR( create_time_ ) = '"+end+"' union all select id_ from t_gdyrqcjc WHERE YEAR( create_time_ ) = '"+end+"') a0) s1jianCe2 on 1=1 join "+
-  // //按期完成检测件数
-  // "(select count(id_) as t_gdyrqcwt2"+begin+" from(select id_   from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+") union all select id_ from t_gdyrqcjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")) a) s1jianCe3 on 1=1 JOIN "+
-  // "(select count(id_) as t_gdyrqcwt2"+end+" from(select id_  from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+") union all select id_ from t_gdyrqcjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+")) a) s1jianCe4 on 1=1 join "+
-  // //出具报告数
-  // "(select count(id_) as t_gdyrqcwt3"+begin+" from(select id_   from t_gdyrgpjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+") union all select id_ from t_gdyrqcjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")) a) s1jianCe5 on 1=1 JOIN "+
-  // "(select count(id_) as t_gdyrqcwt3"+end+" from(select id_  from t_gdyrgpjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+") union all select id_ from t_gdyrqcjc where fa_fang_biao_zhi_ is not null and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+")) a) s1jianCe6 on 1=1 join "+
-  // //逾期未完成数
-  // "(select count(id_) as t_gdyrqcwt4"+begin+" from(select id_   from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+") union all select id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")) a) s1jianCe7 on 1=1 JOIN "+
-  // "(select count(id_) as t_gdyrqcwt4"+end+" from(select id_  from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+") union all select id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+")) a) s1jianCe8 on 1=1 JOIN " +
-  // //检测结果准确率
-  // "(select count(wei_tuo_id_) as t_gdyrqcwt50"+begin+" from(select wei_tuo_id_   from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+" ) group by wei_tuo_id_ having count(1)=1 union all select wei_tuo_id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+")  group by wei_tuo_id_ having count(1)=1 ) a) s1jianCe9 on 1=1 JOIN "+
-  // "(select count(wei_tuo_id_) as t_gdyrqcwt50"+end+" from(select wei_tuo_id_  from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+" ) group by wei_tuo_id_ having count(1)=1 union all select wei_tuo_id_ from t_gdyrqcjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+end+"  ) group by wei_tuo_id_ having count(1)=1 ) a) s1jianCe10 on 1=1 "
-  //按时完成率
-  //"( select select count(id_) AS t_gdyrqcwt6"+begin+" from t_gdyrgpjc where (qi_wang_wan_cheng<fa_fang_biao_zhi_ or fa_fang_biao_zhi_ is null) and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = "+begin+"))) s1jianCe11 on 1=1 JOIN "+
-  //"( select count(id_) AS t_gdyrqcwt6"+end+" from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = '"+end+"')  ) s1jianCe12 on 1=1"
-  }
- /* 满意度 */
- function s2manYiDu(begin,end,scope){
-  // let sql = "( SELECT COUNT( id_ ) AS t_khmydtjb"+begin+" FROM t_khmydtjb "+ "WHERE man_yi_du_ = '满意' AND YEAR( create_time_ ) = "+begin+" ) s2manYiDu1  JOIN"
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql = sql + tool(scope[i],"t_khmydtjb",PAT_SATISFACTION(scope[i]),1)
-  //   }else{
-  //     sql = sql + tool(scope[i],"t_khmydtjb",PAT_SATISFACTION(scope[i]),0)
-  //   }
-  // }
-  // let sql1 = " JOIN ( SELECT COUNT( id_ ) AS t_khmydtjbS"+begin+" FROM t_khmydtjb WHERE  YEAR ( create_time_ ) = "+begin+" ) s2manYiDu2  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql1 = sql1 + toolSame(scope[i],"t_khmydtjb",PAT_YEAR(scope[i]),1)
-  //   }else{
-  //     sql1 = sql1 + toolSame(scope[i],"t_khmydtjb",PAT_YEAR(scope[i]),0)
-  //   }
-  // }
-  // let sqlAll = sql + sql1
-  // return sqlAll
-  return "( SELECT COUNT(id_) as t_khmydtjbnum"+end+",sum(ping_fen_1_)+sum(ping_fen_2_)+sum(ping_fen_3_)+sum(ping_fen_4_)+sum(ping_fen_5_)  AS t_khmydtjb"+end+" FROM t_khmyddcb WHERE YEAR( create_time_ ) = "+end+" ) s2manYiDu1  JOIN"+
-  "( SELECT COUNT( id_ ) AS t_khmydtjbS"+end+" FROM t_khmydtjb WHERE  YEAR ( create_time_ ) = "+end+" ) s2manYiDu2 "
-   //调查表总数
-  // return "( SELECT COUNT( id_ ) AS t_myddc"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = "+begin+" ) s2manYiDu1  JOIN "+
-  //   "( SELECT COUNT( id_ ) AS t_myddc"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu2 on 1=1 JOIN "+
-  //   //技术水平
-  //   "( SELECT sum(case when dang_nin_dui_jian='满意' then 1 else 0 end)/sum(1)+0.01 AS t_myddc1"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+begin+"' ) s2manYiDu3 on 1=1 JOIN "+
-  //   "( SELECT sum(case when dang_nin_dui_jian='满意' then 1 else 0 end)/sum(1)+0.01 AS t_myddc1"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu4 on 1=1 JOIN "+
-  //   //检测效率满意度
-  //   "( SELECT sum(case when nin_dui_jian_yan_='满意' then 1 else 0 end)/sum(1)+0.01 AS t_myddc2"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+begin+"' ) s2manYiDu5 on 1=1 JOIN "+
-  //   "( SELECT sum(case when nin_dui_jian_yan_='满意' then 1 else 0 end)/sum(1)+0.01 AS t_myddc2"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu6 on 1=1 JOIN "+
-  //   //工作态度
-  //   "( SELECT sum(case when nin_dui_jian_ce_r='满意' then 1 else 0 end)/sum(1)+0.01 AS t_myddc3"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+begin+"' ) s2manYiDu7 on 1=1 JOIN "+
-  //   "( SELECT sum(case when nin_dui_jian_ce_r='满意' then 1 else 0 end)/sum(1)+0.01 AS t_myddc3"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu8 on 1=1 "
-    //检测准确性,参照s1的准确率
-    // "( SELECT sum(case when nin_dui_jian_ce_r='满意' then 1 else 0 end) AS t_myddc4"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+begin+"' ) s2manYiDu9 on 1=1 JOIN "+
-    // "( SELECT sum(case when nin_dui_jian_ce_r='满意' then 1 else 0 end) AS t_myddc4"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu10 on 1=1 "
-    //报告完成率,外层汇总,此处不计算
-    // "( SELECT sum(case when nin_dui_jian_ce_r='满意' then 1 else 0 end) AS t_myddc5"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+begin+"' ) s2manYiDu11 on 1=1 JOIN "+
-    // "( SELECT sum(case when nin_dui_jian_ce_r='满意' then 1 else 0 end) AS t_myddc5"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu12 on 1=1 JOIN"
-    //检测效率,外层汇总,此处不计算
-    // "( SELECT sum(case when nin_dui_jian_yan_='满意' then 1 else 0 end) AS t_myddc6"+begin+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+begin+"' ) s2manYiDu13 on 1=1 JOIN "+
-    // "( SELECT sum(case when nin_dui_jian_yan_='满意' then 1 else 0 end) AS t_myddc6"+end+" FROM t_myddc "+ "WHERE YEAR( create_time_ ) = '"+end+"' ) s2manYiDu14 on 1=1 "
+//   return "select tt.* "+
+//   " FROM("+s1jianCe(begin,end)+
+//   " join "+s1renwu(begin,end,scope)+
+//   " join "+s2jianCe(begin,end)+
+//   " join "+s2manYiDu(begin,end,scope)+
+//   " join "+s3tousu(begin,end,scope)+
+//   " join "+s4renYuanPeiXun(begin,end,scope)+
+//   " join "+s5renYuanJianDu(begin,end,scope)+
+//   " join "+s9neiBu(begin,end,scope)+
+//   " join "+s12fengXian(begin,end,scope)+
+//   " join "+s14bufuhexiang(begin,end,scope)+
+//   // " join "+s6sheBeiWeiHu(begin,end)+
+//   // " join "+s7sheBeiJiaoZhun(begin,end)+
+//   // " join "+s8sheBeiHeCha(begin,end)+
+//   ") tt"
+// }
+// /* 拼接通用条件,选用 */
+// function PAT(val){
+//   return "shi_fou_guo_shen_ = '1' AND YEAR ( create_time_ ) = '" + val+"'"
+// }
+// function PAT_SATISFACTION(val){
+//   return "man_yi_du_ = '满意' AND YEAR ( create_time_ ) = '" + val+"'"
+// }
+// function PAT_YEAR(val){
+//   return " YEAR ( create_time_ ) = '" + val+"'"
+// }
+// function PAT_TASK(val,choose){
+  
+//   return choose?"shi_fou_guo_shen_ = '1' AND YEAR( create_time_ ) = '"+val+"' AND DATE(update_time_) BETWEEN DATE( create_time_ ) and DATE( qi_wang_wan_cheng ) ":"shi_fou_guo_shen_ = '1' AND YEAR( create_time_ ) = '"+val+"'"
+// }
+// function PAT_CHOOSE(val,choose){
+//   return choose + " AND YEAR( create_time_ ) = '"+val+"'"
 
-}
-/* 投诉 */
-function s3tousu(begin,end,scope){
-  return "( SELECT COUNT( id_ ) AS t_complaint"+end+" FROM t_complaint WHERE you_wu_you_xiao_ = '有效投诉' and YEAR ( create_time_ ) = "+end+" ) s3tousu1  JOIN "+
-  "( SELECT COUNT( id_ ) AS t_complaintS"+end+" FROM t_complaint WHERE you_wu_you_xiao_ = '有效投诉' and chu_li_shi_jian_='<48h' and shi_fou_tong_yi_='同意' and YEAR ( create_time_ ) = "+end+" ) s3tousu2  JOIN "+
-  "( SELECT COUNT( id_ ) AS t_complainS"+end+" FROM t_complaint WHERE you_wu_you_xiao_ = '有效投诉' and chu_li_jie_guo_sh='已通知' and YEAR ( create_time_ ) = "+end+" ) s3tousu3  JOIN "+
-  "( SELECT COUNT( id_ ) AS t_mjwtsqb"+end+" FROM t_lhjczb WHERE  YEAR ( create_time_ ) = "+end+" ) s3weituo1"
-  // let sql = "( SELECT COUNT( id_ ) AS t_complaint"+begin+" FROM t_complaint WHERE YEAR ( create_time_ ) = "+begin+" ) s3tousu1  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql = sql + tool(scope[i],"t_complaint",PAT_YEAR(scope[i]),1)
-  //   }else{
-  //     sql = sql + tool(scope[i],"t_complaint",PAT_YEAR(scope[i]),0)
-  //   }
-  // }
-  // let sql1 = " JOIN ( SELECT COUNT( id_ ) AS t_mjwtsqb"+begin+" FROM t_mjwtsqb WHERE  YEAR ( create_time_ ) = "+begin+" ) s3weituo1  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql1 = sql1 + tool(scope[i],"t_mjwtsqb",PAT_YEAR(scope[i]),1)
-  //   }else{
-  //     sql1 = sql1 + tool(scope[i],"t_mjwtsqb",PAT_YEAR(scope[i]),0)
-  //   }
-  // }
-  // let sqlAll = sql + sql1
-  // return sqlAll
-  // return "( SELECT COUNT( id_ ) AS t_complaint"+begin+" FROM t_complaint WHERE YEAR ( create_time_ ) = "+begin+" ) s3tousu1  JOIN "+
-  //  tool(end,"t_complaint",PAT_YEAR(end),1)+" JOIN "+
-  //  "( SELECT COUNT( id_ ) AS t_mjwtsqb"+begin+" FROM t_mjwtsqb WHERE  YEAR ( create_time_ ) = "+begin+" ) s3weituo1  JOIN "+
-  //  tool(end,"t_mjwtsqb",PAT(end),1)
-  // return "( SELECT COUNT( id_ ) AS t_complaint"+begin+" FROM t_complaint WHERE  YEAR ( create_time_ ) BETWEEN "+begin+" and "+end+") s3tousu1 on 1=1" 
- }
- /* 人员培训 */
-function s4renYuanPeiXun(begin,end,scope){
-  return "( SELECT COUNT( id_ ) AS t_ryywpxjl"+end+" FROM t_lhrypxjlb WHERE shi_fou_guo_shen_ = '1' AND YEAR ( create_time_ ) = "+end+" ) s4renYuanPeiXun1  JOIN "+
-  "( SELECT COUNT( id_ ) AS t_ryywpxjlS"+end+" FROM t_lhrypxjlb WHERE  YEAR ( create_time_ ) = "+end+" ) s4renYuanPeiXun2"
-  // let sql = "( SELECT COUNT( id_ ) AS t_ryywpxjl"+begin+" FROM t_ryywpxjl WHERE zhuang_tai_ = '已完成' AND YEAR ( create_time_ ) = "+begin+" ) s4renYuanPeiXun1  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql = sql + tool(scope[i],"t_ryywpxjl",PAT_CHOOSE(scope[i],"zhuang_tai_ = '已完成'"),1)
-  //   }else{
-  //     sql = sql + tool(scope[i],"t_ryywpxjl",PAT_CHOOSE(scope[i],"zhuang_tai_ = '已完成'"),0)
-  //   }
-  // }
-  // let sql1 = " JOIN ( SELECT COUNT( id_ ) AS t_ryywpxjlS"+begin+" FROM t_ryywpxjl WHERE  YEAR ( create_time_ ) = "+begin+" ) s4renYuanPeiXun2  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql1 = sql1 + toolSame(scope[i],"t_ryywpxjl",PAT_YEAR(scope[i]),1)
-  //   }else{
-  //     sql1 = sql1 + toolSame(scope[i],"t_ryywpxjl",PAT_YEAR(scope[i]),0)
-  //   }
-  // }
-  // let sqlAll = sql + sql1
-  // return sqlAll
-  // return "( SELECT COUNT( id_ ) AS t_ryndpxjh"+begin+" FROM t_ryndpxjh WHERE shi_fou_guo_shen_ = '1' and YEAR( create_time_ ) = "+begin+" ) s4renYuanPeiXun1  JOIN "+
-  //  tool(end,"t_ryndpxjh",PAT(end),1)+" JOIN "+
-  //  "( SELECT COUNT( id_ ) AS t_rypxjlnk"+begin+" FROM t_rypxjlnk WHERE shi_fou_guo_shen_ = '1' and  YEAR ( create_time_ ) = "+begin+" ) s4renYuanPeiXun2  JOIN "+
-  //  tool(end,"t_rypxjlnk",PAT(end),1)
- }
- /* 人员监督 */
-function s5renYuanJianDu(begin,end, scope){
-  return "( SELECT COUNT( id_ ) AS t_zljd"+end+" FROM t_lhryjdjlb WHERE shi_fou_guo_shen_= '1' AND YEAR ( create_time_ ) = "+end+" ) s5renYuanJianDu1  JOIN "+
-  "( SELECT COUNT( id_ ) AS t_zljdS"+end+" FROM t_lhryjdjlb WHERE  YEAR ( create_time_ ) = "+end+" ) s5renYuanJianDu2"
-  // let sql = "( SELECT COUNT( id_ ) AS t_zljd"+begin+" FROM t_zljd WHERE shi_fou_guo_shen_= '1' AND YEAR ( create_time_ ) = "+begin+" ) s5renYuanJianDu1  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql = sql + tool(scope[i],"t_zljd",PAT_CHOOSE(scope[i],"shi_fou_guo_shen_= '1'"),1)
-  //   }else{
-  //     sql = sql + tool(scope[i],"t_zljd",PAT_CHOOSE(scope[i],"shi_fou_guo_shen_= '1'"),0)
-  //   }
-  // }
-  // let sql1 = " JOIN ( SELECT COUNT( id_ ) AS t_zljdS"+begin+" FROM t_zljd WHERE  YEAR ( create_time_ ) = "+begin+" ) s5renYuanJianDu2  JOIN "
-  // for (let i = 1; i < scope.length; i++) {
-  //   if(i === scope.length - 1){
-  //     sql1 = sql1 + toolSame(scope[i],"t_zljd",PAT_YEAR(scope[i]),1)
-  //   }else{
-  //     sql1 = sql1 + toolSame(scope[i],"t_zljd",PAT_YEAR(scope[i]),0)
-  //   }
-  // }
-  // let sqlAll = sql + sql1
-  // return sqlAll
-  // return "( SELECT COUNT( id_ ) AS t_zljd"+begin+" FROM t_zljd WHERE shi_fou_guo_shen_ = '1' and YEAR( create_time_ ) = "+begin+" ) s5renYuanJianDu1  JOIN "+
-  //  tool(end,"t_zljd",PAT(end),1)+" JOIN "+
-  //  "( SELECT COUNT( id_ ) AS t_zljdss"+begin+" FROM t_zljdss WHERE shi_fou_guo_shen_ = '1' and  YEAR ( create_time_ ) = "+begin+" ) s5renYuanJianDu2  JOIN "+
-  //  tool(end,"t_zljdss",PAT(end),1)
- }
-/* 设备维护 */
-function s6sheBeiWeiHu(begin,end){
- return "( SELECT COUNT( id_ ) AS t_yqsbwhjhxmt"+begin+" FROM t_yqsbwhjhxmt WHERE YEAR( create_time_ ) = "+begin+" ) s6sheBeiWeiHu1  JOIN "+
-  tool(end,"t_yqsbwhjhxmt",PAT_YEAR(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_whbyxx"+begin+" FROM t_whbyxx WHERE YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu2  JOIN "+
-  tool(end,"t_whbyxx",PAT_YEAR(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_yqsbwhjhxmz"+begin+" FROM t_yqsbwhjhxmz WHERE YEAR( create_time_ ) = "+begin+" ) s6sheBeiWeiHu3  JOIN "+
-  tool(end,"t_yqsbwhjhxmz",PAT_YEAR(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_whbyxmxxmz"+begin+" FROM t_whbyxmxxmz WHERE YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu4  JOIN "+
-  tool(end,"t_whbyxmxxmz",PAT_YEAR(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_yqsbwhjhxmy"+begin+" FROM t_yqsbwhjhxmy WHERE YEAR( create_time_ ) = "+begin+" ) s6sheBeiWeiHu5  JOIN "+
-  tool(end,"t_yqsbwhjhxmy",PAT_YEAR(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_whbyxxmy"+begin+" FROM t_whbyxxmy WHERE YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu6  JOIN "+
-  tool(end,"t_whbyxxmy",PAT_YEAR(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_yqsbwhjhfb"+begin+" FROM t_yqsbwhjhfb WHERE (shi_fou_guo_shen_ like '%同意%' or shi_fou_guo_shen_='1') and  YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu7  JOIN "+
-  tool(end,"t_yqsbwhjhfb",PAT(end),1)+" JOIN "+
-  "( SELECT COUNT( id_ ) AS t_yqsbwhjlfb"+begin+" FROM t_yqsbwhjlfb WHERE (shi_fou_guo_shen_ like '%同意%' or shi_fou_guo_shen_='1') and  YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu8  JOIN "+
-  tool(end,"t_yqsbwhjlfb",PAT(end),1)
-}
-/* 设备校准 */
-function s7sheBeiJiaoZhun(begin,end){
-  //v3
-  return "(SELECT she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb"+end+" FROM t_mjsbjdxzjhzb WHERE YEAR( create_time_ ) = "+end+" GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 ORDER BY she_bei_ming_chen) s7sheBeiJiaoZhun1  JOIN " +
-  "(SELECT she_bei_ming_chen as t_mjsbjdxzjhzbSName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS"+end+" FROM t_mjsbjdxzjhzb WHERE YEAR( create_time_ ) = "+end+" AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 ORDER BY she_bei_ming_chen) s7sheBeiJiaoZhun12 "
-  //v1
-  // return "( SELECT COUNT( id_ ) AS t_ndsbxzjdjh"+begin+" FROM t_ndsbxzjdjh WHERE shi_fou_guo_shen_ = '1' and YEAR( create_time_ ) = "+begin+" ) s7sheBeiJiaoZhun1  JOIN "+
-  //  tool(end,"t_ndsbxzjdjh",PAT(end),1)+" JOIN "+
-  //  "( SELECT COUNT( id_ ) AS t_yqsbxzjg"+begin+" FROM t_yqsbxzjg WHERE shi_fou_guo_shen_ = '1' and  YEAR ( create_time_ ) = "+begin+" ) s7sheBeiJiaoZhun2  JOIN "+
-  //  tool(end,"t_yqsbxzjg",PAT(end),1)
- }
- /* 设备核查 */
-function s8sheBeiHeCha(begin,end){
-  return "( SELECT COUNT( id_ ) AS t_sbhcjh"+begin+" FROM t_sbhcjh WHERE shi_fou_guo_shen_ = '1' and YEAR( create_time_ ) = "+begin+" ) s8sheBeiHeCha1  JOIN "+
-   tool(end,"t_sbhcjh",PAT(end),1)+" JOIN "+
-   "( SELECT COUNT( id_ ) AS t_sbhcjlb"+begin+" FROM t_sbhcjlb WHERE shi_fou_guo_shen_ = '1' and  YEAR ( create_time_ ) = "+begin+" ) s8sheBeiHeCha2  JOIN "+
-   tool(end,"t_sbhcjlb",PAT(end),1)
- }
- /* 内部质量控制 */
-function s9neiBu(begin,end,scope){
-  return "( SELECT COUNT( id_ ) AS t_mjzlkzxb"+end+" FROM t_mjzlkzxb WHERE YEAR ( create_time_ ) = "+end+" ) s9neibu1  JOIN "+
-  "( SELECT COUNT( t_mjzlkzxb.id_ ) AS t_mjzlkzxbS"+end+" FROM t_mjzlkzxb left join t_mjzlkzjhb on t_mjzlkzxb.parent_id_ = t_mjzlkzjhb.id_ WHERE t_mjzlkzjhb.shi_fou_guo_shen_='1' AND YEAR ( t_mjzlkzxb.create_time_ ) = "+end+"   ) s9neibu2 join"+
-  "( SELECT COUNT( id_ ) AS t_mjzlkzjlb"+end+" FROM t_mjzlkzjlb WHERE length(shi_fou_guo_shen_) >0 AND YEAR ( create_time_ ) = "+end+" ) s9neibu3 join" +
-  "( SELECT COUNT( id_ ) AS t_mjzlkzjlbS"+end+" FROM t_mjzlkzjlb WHERE shi_fou_guo_shen_=1 AND YEAR ( create_time_ ) = "+end+" ) s9neibu4"
+// }
+// /* 工具函数参数
+// 1、时间条件
+// 2、表名
+// 3、where条件
+// 4、连接与连接条件
+//   (0) on 1=1 JOIN  非结束的sql语句
+//   (1) on 1=1  仅被连接, 如当前方法最后一个sql语句
+//    */
+// function tool(val,tableName,where,join){
+//   let alias = tableName+val //别名
+//  return "( SELECT COUNT( id_ ) AS "
+//  +alias
+//  +" FROM "
+//  +tableName
+//  +" WHERE "
+//  +where
+//  +" ) "
+//  +alias
+//  + (join==0?" on 1=1 JOIN ":" on 1=1 ")
+// }
+// function toolTask(val,tableName,where,join){
+//   let alias = tableName+val //别名
+//  return "( SELECT COUNT( id_ ) AS "
+//  +alias
+//  +" FROM "
+//  +tableName
+//  +" WHERE "
+//  +where
+//  +" ) "
+//  +alias
+//  + (join==0?" on 1=1 JOIN ":" on 1=1 ")
+// }
+// function toolSame(val,tableName,where,join){
+//   let alias = tableName+'S'+val //别名
+//  return "( SELECT COUNT( id_ ) AS "
+//  +alias
+//  +" FROM "
+//  +tableName
+//  +" WHERE "
+//  +where
+//  +" ) "
+//  +alias
+//  + (join==0?" on 1=1 JOIN ":" on 1=1 ")
+// }
+// /* 任务完成 */
+// function s1renwu(begin,end,scope){
+//   return "( SELECT COUNT( id_ ) AS t_lhjczb"+end+" FROM t_lhjczb "+ "WHERE zhuang_tai_ = '已完成' and shi_fou_ji_shi_ = '是' AND YEAR( create_time_ ) = "+end+") s1renwu1  JOIN"+
+//   "( SELECT COUNT( id_ ) AS t_lhjcz"+end+" FROM t_lhjczb "+ "WHERE zhuang_tai_ = '已完成' and shi_fou_ji_shi_ = '否' AND YEAR( create_time_ ) = "+end+") s1renwu2  JOIN"+
+//   "( SELECT COUNT( id_ ) AS t_lhjc"+end+" FROM t_lhjczb "+ "WHERE (zhuang_tai_ != '已完成' or shi_fou_ji_shi_ ='' or shi_fou_ji_shi_ is null)  AND YEAR( create_time_ ) = "+end+") s1renwu3  JOIN"+
+//   "( SELECT COUNT( id_ ) AS t_lhjczbS"+end+" FROM t_lhjczb WHERE YEAR ( create_time_ ) = "+end+" ) s1renwu4  "
+ 
+//   }
+// /* 检测 */
+// function s1jianCe(begin,end){
+//   // 委托检测数
+//   return "SELECT *  FROM (select COUNT( id_ ) AS t_gdyrqcwt"+end+" from t_gdyrgpjc WHERE YEAR( create_time_ ) = "+end+" union all select id_ from t_gdyrqcjc WHERE YEAR( create_time_ ) = "+end+") s1jianCe1  JOIN "+
+//   "( select count(id_) AS t_gdyrqcwt6"+end+" from t_gdyrgpjc where qi_wang_wan_cheng>fa_fang_biao_zhi_ and wei_tuo_id_ in (select id_ from t_gdyrqcwt where YEAR( create_time_ ) = '"+end+"')  ) s1jianCe12 on 1=1"
+//   }
+//   /* 检测 */
+// function s2jianCe(begin,end){
+//   //v3
+//   return "( SELECT COUNT( id_ ) AS t_mjjcbg"+end+" FROM t_bgffdjb "+ "WHERE bao_gao_xiu_gai_j = '有' AND YEAR( create_time_ ) = "+end+" ) s2jianCe1 JOIN"+
+//   "( SELECT COUNT( id_ ) AS t_mjjcbgS"+end+" FROM t_bgffdjb WHERE  YEAR ( create_time_ ) = "+end+" ) s2jianCe2 "
+
+//   }
+//  /* 满意度 */
+//  function s2manYiDu(begin,end,scope){
+//   return "( SELECT COUNT(id_) as t_khmydtjbnum"+end+",sum(ping_fen_1_)+sum(ping_fen_2_)+sum(ping_fen_3_)+sum(ping_fen_4_)+sum(ping_fen_5_)  AS t_khmydtjb"+end+" FROM t_khmyddcb WHERE YEAR( create_time_ ) = "+end+" ) s2manYiDu1  JOIN"+
+//   "( SELECT COUNT( id_ ) AS t_khmydtjbS"+end+" FROM t_khmydtjb WHERE  YEAR ( create_time_ ) = "+end+" ) s2manYiDu2 "
+// }
+// /* 投诉 */
+// function s3tousu(begin,end,scope){
+//   return "( SELECT COUNT( id_ ) AS t_complaint"+end+" FROM t_complaint WHERE you_wu_you_xiao_ = '有效投诉' and YEAR ( create_time_ ) = "+end+" ) s3tousu1  JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_complaintS"+end+" FROM t_complaint WHERE you_wu_you_xiao_ = '有效投诉' and chu_li_shi_jian_='<48h' and shi_fou_tong_yi_='同意' and YEAR ( create_time_ ) = "+end+" ) s3tousu2  JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_complainS"+end+" FROM t_complaint WHERE you_wu_you_xiao_ = '有效投诉' and chu_li_jie_guo_sh='已通知' and YEAR ( create_time_ ) = "+end+" ) s3tousu3  JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_mjwtsqb"+end+" FROM t_lhjczb WHERE  YEAR ( create_time_ ) = "+end+" ) s3weituo1"
+//  }
+//  /* 人员培训 */
+// function s4renYuanPeiXun(begin,end,scope){
+//   return "( SELECT COUNT( id_ ) AS t_ryywpxjl"+end+" FROM t_lhrypxjlb WHERE pei_xun_lei_xing_!='' and shi_fou_guo_shen_ = '1' AND YEAR ( bian_zhi_shi_jian ) = "+end+" ) s4renYuanPeiXun1  JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_ryywpxjlS"+end+" FROM t_lhrypxjlb WHERE pei_xun_lei_xing_!='' and YEAR ( bian_zhi_shi_jian ) = "+end+" ) s4renYuanPeiXun2"
+//  }
+//  /* 人员监督 */
+// function s5renYuanJianDu(begin,end, scope){
+//   return "( SELECT COUNT( id_ ) AS t_zljd"+end+" FROM t_lhryjdjlb WHERE shi_fou_guo_shen_= '1' AND YEAR ( bian_zhi_shi_jian ) = "+end+" ) s5renYuanJianDu1  JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_zljdS"+end+" FROM t_lhryjdjlb WHERE  YEAR ( bian_zhi_shi_jian ) = "+end+" ) s5renYuanJianDu2"
+//  }
+// /* 设备维护 */
+// function s6sheBeiWeiHu(begin,end){
+//  return "( SELECT COUNT( id_ ) AS t_yqsbwhjhxmt"+begin+" FROM t_yqsbwhjhxmt WHERE YEAR( create_time_ ) = "+begin+" ) s6sheBeiWeiHu1  JOIN "+
+//   tool(end,"t_yqsbwhjhxmt",PAT_YEAR(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_whbyxx"+begin+" FROM t_whbyxx WHERE YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu2  JOIN "+
+//   tool(end,"t_whbyxx",PAT_YEAR(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_yqsbwhjhxmz"+begin+" FROM t_yqsbwhjhxmz WHERE YEAR( create_time_ ) = "+begin+" ) s6sheBeiWeiHu3  JOIN "+
+//   tool(end,"t_yqsbwhjhxmz",PAT_YEAR(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_whbyxmxxmz"+begin+" FROM t_whbyxmxxmz WHERE YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu4  JOIN "+
+//   tool(end,"t_whbyxmxxmz",PAT_YEAR(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_yqsbwhjhxmy"+begin+" FROM t_yqsbwhjhxmy WHERE YEAR( create_time_ ) = "+begin+" ) s6sheBeiWeiHu5  JOIN "+
+//   tool(end,"t_yqsbwhjhxmy",PAT_YEAR(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_whbyxxmy"+begin+" FROM t_whbyxxmy WHERE YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu6  JOIN "+
+//   tool(end,"t_whbyxxmy",PAT_YEAR(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_yqsbwhjhfb"+begin+" FROM t_yqsbwhjhfb WHERE (shi_fou_guo_shen_ like '%同意%' or shi_fou_guo_shen_='1') and  YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu7  JOIN "+
+//   tool(end,"t_yqsbwhjhfb",PAT(end),1)+" JOIN "+
+//   "( SELECT COUNT( id_ ) AS t_yqsbwhjlfb"+begin+" FROM t_yqsbwhjlfb WHERE (shi_fou_guo_shen_ like '%同意%' or shi_fou_guo_shen_='1') and  YEAR ( create_time_ ) = "+begin+" ) s6sheBeiWeiHu8  JOIN "+
+//   tool(end,"t_yqsbwhjlfb",PAT(end),1)
+// }
+// /* 设备校准 */
+// function s7sheBeiJiaoZhun(begin,end){
+//   //v3
+//   return "(SELECT she_bei_ming_chen as t_mjsbjdxzjhzbName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzb"+end+" FROM t_mjsbjdxzjhzb WHERE YEAR( create_time_ ) = "+end+" GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 ORDER BY she_bei_ming_chen) s7sheBeiJiaoZhun1  JOIN " +
+//   "(SELECT she_bei_ming_chen as t_mjsbjdxzjhzbSName, COUNT(she_bei_ming_chen) as t_mjsbjdxzjhzbS"+end+" FROM t_mjsbjdxzjhzb WHERE YEAR( create_time_ ) = "+end+" AND DATE(yi_jian_xiao_ri_q) >= DATE(ji_hua_ri_qi_) GROUP BY she_bei_ming_chen HAVING COUNT(she_bei_ming_chen)>=1 ORDER BY she_bei_ming_chen) s7sheBeiJiaoZhun12 "
+//  }
+//  /* 设备核查 */
+// function s8sheBeiHeCha(begin,end){
+//   return "( SELECT COUNT( id_ ) AS t_sbhcjh"+begin+" FROM t_sbhcjh WHERE shi_fou_guo_shen_ = '1' and YEAR( create_time_ ) = "+begin+" ) s8sheBeiHeCha1  JOIN "+
+//    tool(end,"t_sbhcjh",PAT(end),1)+" JOIN "+
+//    "( SELECT COUNT( id_ ) AS t_sbhcjlb"+begin+" FROM t_sbhcjlb WHERE shi_fou_guo_shen_ = '1' and  YEAR ( create_time_ ) = "+begin+" ) s8sheBeiHeCha2  JOIN "+
+//    tool(end,"t_sbhcjlb",PAT(end),1)
+//  }
+//  /* 内部质量控制 */
+// function s9neiBu(begin,end,scope){
+//   return "( SELECT COUNT( id_ ) AS t_mjzlkzxb"+end+" FROM t_mjzlkzxb WHERE YEAR ( create_time_ ) = "+end+" ) s9neibu1  JOIN "+
+//   "(SELECT COUNT( t_mjzlkzxb.id_ ) AS t_mjzlkzxbS"+end+" FROM t_mjzlkzxb , t_zlkzjlb WHERE t_mjzlkzxb.xiang_mu_=t_zlkzjlb.zhi_kong_xiang_mu AND t_mjzlkzxb.shi_shi_shi_jian_ = t_zlkzjlb.ji_hua_ri_qi_  and t_zlkzjlb.shi_fou_guo_shen_='1' AND YEAR ( t_mjzlkzxb.create_time_ ) = "+end+" ) s9neibu2 join"+
+//   "( SELECT COUNT( id_ ) AS t_mjzlkzjlb"+end+" FROM t_mjzlkzjlb WHERE length(shi_fou_guo_shen_) >0 AND YEAR ( create_time_ ) = "+end+" ) s9neibu3 join" +
+//   "( SELECT COUNT( id_ ) AS t_mjzlkzjlbS"+end+" FROM t_mjzlkzjlb WHERE shi_fou_guo_shen_=1 AND YEAR ( create_time_ ) = "+end+" ) s9neibu4"
 
- }
- function s12fengXian(begin,end,scope){
-  return "(select COUNT(t_mjsyshdfxsbykzjhxb.id_) as t_mjsyshdfxsbykzjhxb"+end+" from t_mjsyshdfxsbykzjhxb INNER JOIN t_mjsyshdfxsbykzjhb on t_mjsyshdfxsbykzjhxb.parent_id_ = t_mjsyshdfxsbykzjhb.id_  where YEAR(t_mjsyshdfxsbykzjhxb.shi_shi_ri_qi_)="+end+") s12fengxian1  JOIN " +
-  "(select COUNT(t_mjsyshdfxsbykzjhxb.id_) as t_mjsyshdfxsbykzjhxbS"+end+" from t_mjsyshdfxsbykzjhxb INNER JOIN t_mjsyshdfxsbykzjhb on t_mjsyshdfxsbykzjhxb.parent_id_ = t_mjsyshdfxsbykzjhb.id_  where YEAR(t_mjsyshdfxsbykzjhxb.shi_shi_ri_qi_)="+end+" and t_mjsyshdfxsbykzjhb.shi_fou_guo_shen_ = '1') s12fengxian2 "
+//  }
+//  function s12fengXian(begin,end,scope){
+//   return "(select COUNT(t_mjsyshdfxsbykzjhxb.id_) as t_mjsyshdfxsbykzjhxb"+end+" from t_mjsyshdfxsbykzjhxb INNER JOIN t_mjsyshdfxsbykzjhb on t_mjsyshdfxsbykzjhxb.parent_id_ = t_mjsyshdfxsbykzjhb.id_  where YEAR(t_mjsyshdfxsbykzjhxb.shi_shi_ri_qi_)="+end+") s12fengxian1  JOIN " +
+//   "(select COUNT(id_) as t_mjsyshdfxsbykzjhxbS"+end+" from t_mjsyshdfxkzypjjlb where shi_fou_guo_shen_ = '1' and YEAR ( create_time_ ) = "+end+") s12fengxian2 "
 
- }
- function s14bufuhexiang(begin,end,scope){
-  return "(select COUNT(t_bfhxbgyjzcsjlbx.id_) as t_bfhxbgyjzcsjlbx"+end+" from t_bfhxbgyjzcsjlbx where YEAR(t_bfhxbgyjzcsjlbx.create_time_)="+end+") s14bufuhexiang1  JOIN " +
-  "(select COUNT(t_bfhxbgyjzcsjlbx.id_) as t_bfhxbgyjzcsjlbxS"+end+" from t_bfhxbgyjzcsjlbx where t_bfhxbgyjzcsjlbx.zhuang_tai_ = '已完成' and YEAR(t_bfhxbgyjzcsjlbx.create_time_)="+end+") s14buhexiang2 "
+//  }
+//  function s14bufuhexiang(begin,end,scope){
+//   return "(select COUNT(t_bfhxbgyjzcsjlbx.id_) as t_bfhxbgyjzcsjlbx"+end+" from t_bfhxbgyjzcsjlbx where YEAR(t_bfhxbgyjzcsjlbx.create_time_)="+end+") s14bufuhexiang1  JOIN " +
+//   "(select COUNT(t_bfhxbgyjzcsjlbx.id_) as t_bfhxbgyjzcsjlbxS"+end+" from t_bfhxbgyjzcsjlbx where t_bfhxbgyjzcsjlbx.shi_fou_guo_shen_ = '1' and YEAR(t_bfhxbgyjzcsjlbx.create_time_)="+end+") s14buhexiang2 "
 
- }
+//  }
 

+ 3 - 3
src/views/statistics/properties/s10waiBuNengLiPro.vue

@@ -38,12 +38,12 @@
               <br>
            <div class="dataCont" style="font-size: 14px;">
 
-          <el-divider content-position="left">{{data.Num.date}} 年度</el-divider>
+          <el-divider content-position="left">{{data.Num.date[0]}} ~ {{data.Num.date[1]}}</el-divider>
           <!-- <div v-for="(item,i) in data.Num.name" :key="i"> -->
               <!-- <el-divider content-position="left">{{data.Num.name[i]}}</el-divider> -->
-              能力验证计划完成次数 :<el-tag>{{data.Num.valnum}} 次</el-tag>
+              外部质量评价计划完成次数 :<el-tag>{{data.Num.number}} 次</el-tag>
               <br>
-              能力验证计划次数 :<el-tag>{{data.Num.valAll}} 次</el-tag>
+              外部质量评价计划次数 :<el-tag>{{data.Num.numberAll}} 次</el-tag>
               <br>
               <!-- 年度核查 :<el-tag>{{data.Num.numberAll[i]}} 次</el-tag>
               <br> -->

+ 4 - 1
src/views/statistics/properties/s11biaoZhunWuPro.vue

@@ -95,7 +95,10 @@
            this.$options.components.s11biaoZhunWuItem = () => import('../item/s11biaoZhunWu.vue')
            this.$options.components.s11biaoZhunWuCItem = () => import('../item/s11biaoZhunWuCol.vue')
            this.$options.components.s11biaoZhunWuC2Item = () => import('../item/s11biaoZhunWuCol2.vue')
-          },
+      },
+      mounted(){
+        console.log(this.data.Num)
+      },
 
     watch:{
      dialogOff: {

+ 4 - 4
src/views/statistics/properties/s12fengXianPro.vue

@@ -35,12 +35,12 @@
       </el-aside>
         <!-- 参数页面列 -->
         <el-aside style="border:0px;width: 30%;">
-          <el-divider content-position="left">{{data.t_mjsyshdfxsbykzjhxbNum.date}} 年度</el-divider>
-            实验室活动风险识别与控制计划已完成数量 :<el-tag>{{data.t_mjsyshdfxsbykzjhxbNum.number[0]}} 次</el-tag>
+          <el-divider content-position="left">{{data.t_mjsyshdfxsbykzjhxbNum.date[0]}} ~ {{data.t_mjsyshdfxsbykzjhxbNum.date[1]}} </el-divider>
+            实验室活动风险识别与控制计划已完成数量 :<el-tag>{{data.t_mjsyshdfxsbykzjhxbNum.number}} 次</el-tag>
             <br>
-            实验室活动风险识别与控制计划总数 :<el-tag>{{data.t_mjsyshdfxsbykzjhxbNum.numberAll[0]}} 次</el-tag>
+            实验室活动风险识别与控制计划总数 :<el-tag>{{data.t_mjsyshdfxsbykzjhxbNum.numberAll}} 次</el-tag>
             <br>
-            实验室活动风险识别与控制计划完成率 :<el-tag>{{data.t_mjsyshdfxsbykzjhxbNum.res[0]}} %</el-tag>
+            实验室活动风险识别与控制计划完成率 :<el-tag>{{data.t_mjsyshdfxsbykzjhxbNum.val}} %</el-tag>
             <br>
           <!-- <div v-for="(item,i) in data.t_zljdNum.date" :key="i">
             <el-divider content-position="left">{{data.t_zljdNum.date[i]}} 年度</el-divider>

+ 3 - 3
src/views/statistics/properties/s13shengWuPro.vue

@@ -37,11 +37,11 @@
         <el-aside style="border:0px;width: 30%;">
            <div class="dataCont" style="font-size: 14px;">
             <el-divider content-position="left">{{data.t_complaintNum.date}} 年度</el-divider>
-              投诉回复已完成数 :<el-tag>{{data.t_complaintNum.number[0]}} 次</el-tag>
+              投诉回复已完成数 :<el-tag>{{data.t_complaintNum.num48[0]}} 次</el-tag>
               <br>
-              有效投诉总次数 :<el-tag>{{data.t_complaintNum.numberAll[0]}} 次</el-tag>
+              有效投诉总次数 :<el-tag>{{data.t_complaintNum.number[0]}} 次</el-tag>
               <br>
-              投诉回复及时率 :<el-tag>{{data.t_complaintNum.res[0]}} %</el-tag>
+              投诉回复及时率 :<el-tag>{{data.t_complaintNum.res1[0]}} %</el-tag>
               <br>
               当前目标值 :<el-tag>{{mubiao}}</el-tag>
               <br>

+ 4 - 4
src/views/statistics/properties/s15tousuPro.vue

@@ -36,12 +36,12 @@
         <!-- 参数页面列 -->
         <el-aside style="border:0px;width: 30%;">
            <div class="dataCont" style="font-size: 14px;">
-            <el-divider content-position="left">{{data.t_complaintNum.date}} 年度</el-divider>
-              投诉总数次数 :<el-tag>{{data.t_complaintNum.number[0]}} 次</el-tag>
+            <el-divider content-position="left">{{data.t_complaintNum.date[0]}} ~ {{data.t_complaintNum.date[1]}}</el-divider>
+              应急预案演练计划总数 :<el-tag>{{data.t_complaintNum.numberAll}} 次</el-tag>
               <br>
-              投诉已通知次数 :<el-tag>{{data.t_complaintNum.numtong[0]}} 次</el-tag>
+              应急预案演练计划已完成数 :<el-tag>{{data.t_complaintNum.number}} 次</el-tag>
               <br>
-              客户投诉已通知率 :<el-tag>{{data.t_complaintNum.res2[0]}} %</el-tag>
+              应急预案演练计划完成率 :<el-tag>{{data.t_complaintNum.val}} %</el-tag>
             <br>
               <!-- <div v-for="(item,i) in data.t_complaintNum.number" :key="i">
                   <el-divider content-position="left">{{data.t_complaintNum.date[i]}} 年度</el-divider>

+ 4 - 6
src/views/statistics/properties/s1zhiLiangMuBiaoPro.vue

@@ -35,14 +35,12 @@
             <!-- 参数页面列 -->
             <el-aside style="border:0px;width: 30%;">
               <div class="dataCont" style="font-size: 14px;">
-                <el-divider content-position="left">{{data.t_jchzbNum.date}} 年度</el-divider>
-                按时完成的检测项目数量 :<el-tag>{{data.t_jchzbNum.number[0]}} 次</el-tag>
+                <el-divider content-position="left">{{data.t_jchzbNum.date[0]}} ~ {{data.t_jchzbNum.date[1]}}</el-divider>
+                计划完成数量 :<el-tag>{{data.t_jchzbNum.number}} 次</el-tag>
                 <br>
-                有效检测任务总数 :<el-tag>{{data.t_jchzbNum.numberAll[0]}} 次</el-tag>
+             
+                计划总数 :<el-tag>{{data.t_jchzbNum.numberAll}} 次</el-tag>
                 <br>
-                任务完成率 :<el-tag>{{data.t_jchzbNum.res[0]}} %</el-tag>
-                <br>
-                当前目标值 :<el-tag>{{mubiao}}</el-tag>
                 <br>
               </div>
               <!-- <div class="dataCont" style="font-size: 14px;">

+ 5 - 5
src/views/statistics/properties/s2manYiDuPro.vue

@@ -37,14 +37,14 @@
         <!-- 参数页面列 -->
         <el-aside style="border:0px;width: 30%;">
            <div  class="dataCont" style="font-size: 14px;">
-              <el-divider content-position="left">{{data.t_khmydtjbNum.date}} 年度</el-divider>
-              评分得分 :<el-tag>{{data.t_khmydtjbNum.number[0]}} </el-tag>
+              <el-divider content-position="left">{{data.t_khmydtjbNum.date[0]}} ~ {{data.t_khmydtjbNum.date[1]}}</el-divider>
+              年度内审计划完成数 :<el-tag>{{data.t_khmydtjbNum.number}} </el-tag>
               <br>
-              有效问卷总分 :<el-tag>{{data.t_khmydtjbNum.num}} </el-tag>
+              年度内审计划总数 :<el-tag>{{data.t_khmydtjbNum.numberAll}} </el-tag>
               <br>
-              客户满意度 :<el-tag>{{data.t_khmydtjbNum.res[0]}} %</el-tag>
+              年度内审计划完成率 :<el-tag>{{data.t_khmydtjbNum.val}} %</el-tag>
               <br>
-              当前目标值 :<el-tag>{{mubiao}}</el-tag>
+              <!-- 当前目标值 :<el-tag>{{mubiao}}</el-tag> -->
               <br>
            </div>
            <!-- <div v-for="(item,i) in data.t_khmydtjbNum.date" :key="i">

+ 12 - 6
src/views/statistics/properties/s4renYuanPeiXunPro.vue

@@ -1,5 +1,6 @@
 <template>
-    <el-dialog
+<div v-on:mouseenter="rollstopz()">
+    <el-dialog 
       :visible.sync="visible"
       ref="dialog"
       :title="title+''"
@@ -12,8 +13,8 @@
       v-if="visible"
       @close="handleClose">
 
-      <div>
-
+      
+<div>
     <el-container>
       <!-- <el-aside style="border:0px;width: 13%;"></el-aside> -->
       <!-- 放统计内容-->
@@ -37,10 +38,10 @@
         <el-aside style="border:0px;width: 30%;">
           <div class="dataCont" style="font-size: 14px;">
 
-            <el-divider content-position="left">{{data.t_ryywpxjlNum.date}} 年度</el-divider>
-              已完成培训数量 :<el-tag>{{data.t_ryywpxjlNum.number[0]}} 次</el-tag>
+            <el-divider content-position="left">{{data.t_ryywpxjlNum.date[0]}} ~ {{data.t_ryywpxjlNum.date[1]}}</el-divider>
+              已完成培训数量 :<el-tag>{{data.t_ryywpxjlNum.number}} 次</el-tag>
               <br>
-              所有培训数量 :<el-tag>{{data.t_ryywpxjlNum.numberAll[0]}} 次</el-tag>
+              所有培训数量 :<el-tag>{{data.t_ryywpxjlNum.numberAll}} 次</el-tag>
               <br>
               培训完成率 :<el-tag>{{data.t_ryywpxjlNum.res[0]}} %</el-tag>
               <br>
@@ -74,6 +75,7 @@
 
       </div>
     </el-dialog>
+  </div>
 </template>
 
 <script>
@@ -92,6 +94,7 @@
           default:window.screen.height * 0.5 +'px'
         }
       },
+      inject:['rollstop'],
       beforeCreate: function () {
           // 官方文档给出的是require
            this.$options.components.s4renYuanPeiXunItem = () => import('../item/s4renYuanPeiXun.vue')
@@ -118,6 +121,9 @@
        // 关闭窗口
       handleClose(){
        this.$emit('close', false)
+      },
+      rollstopz(){
+        this.rollstop()
       }
     }
   }

+ 3 - 3
src/views/statistics/properties/s5renYuanJianDuPro.vue

@@ -37,10 +37,10 @@
         <el-aside style="border:0px;width: 30%;">
           <div class="dataCont" style="font-size: 14px;">
 
-            <el-divider content-position="left">{{data.t_zljdNum.date}} 年度</el-divider>
-              已完成监督数量 :<el-tag>{{data.t_zljdNum.number[0]}} 次</el-tag>
+            <el-divider content-position="left">{{data.t_zljdNum.date[0]}} ~ {{data.t_zljdNum.date[1]}}</el-divider>
+              已完成培训数量 :<el-tag>{{data.t_zljdNum.numberAll}} 次</el-tag>
               <br>
-              所有监督数量 :<el-tag>{{data.t_zljdNum.numberAll[0]}} 次</el-tag>
+              所有培训数量 :<el-tag>{{data.t_zljdNum.number}} 次</el-tag>
               <br>
               监督完成率 :<el-tag>{{data.t_zljdNum.res[0]}} %</el-tag>
               <br>

+ 7 - 6
src/views/statistics/properties/s7sheBeiJiaoZhunPro.vue

@@ -44,15 +44,16 @@
         <el-aside style="border:0px;width: 30%; height: 700px;overflow: auto;">
               <br>
 
-          <div>{{data.t_mjsbjdxzjhzbNum.date}} 年度</div>
+          <div>{{data.t_mjsbjdxzjhzbNum.date[0]}} ~ {{data.t_mjsbjdxzjhzbNum.date[1]}} </div>
 
-          <div v-for="(item,i) in data.t_mjsbjdxzjhzbNum.name" :key="i">
-              <el-divider content-position="left">{{data.t_mjsbjdxzjhzbNum.name[i]}}</el-divider>
-              仪器已完成校准次数 :<el-tag>{{data.t_mjsbjdxzjhzbNum.number[i]}} 次</el-tag>
+          <div v-for="(item,i) in data.t_mjsbjdxzjhzbNum.nummg" :key="i">
+              <el-divider content-position="left">{{data.t_mjsbjdxzjhzbNum.nummg[i].mz}}</el-divider>
+              仪器已完成校准次数 :<el-tag>{{data.t_mjsbjdxzjhzbNum.nummg[i].wnum}} 次</el-tag>
               <br>
-              仪器计划校准次数 :<el-tag>{{data.t_mjsbjdxzjhzbNum.numberAll[i]}} 次</el-tag>
+              仪器计划校准次数 :<el-tag>{{data.t_mjsbjdxzjhzbNum.nummg[i].num}} 次</el-tag>
               <br>
-              校准完成率 :<el-tag>{{data.t_mjsbjdxzjhzbNum.val[i]}} %</el-tag>
+              
+              校准完成率 :<el-tag>{{data.t_mjsbjdxzjhzbNum.nummg[i].num==null||data.t_mjsbjdxzjhzbNum.nummg[i].num==0?"0.00":(data.t_mjsbjdxzjhzbNum.nummg[i].wnum/data.t_mjsbjdxzjhzbNum.nummg[i].num*100).toFixed(2)}} %</el-tag>
               <br>
             </div>
            <!-- <div class="dataCont" style="font-size: 14px;">

+ 5 - 5
src/views/statistics/properties/s8sheBeiHeChaPro.vue

@@ -44,13 +44,13 @@
         <el-aside style="border:0px;width: 30%; height: 700px;overflow: auto;">
               <br>
 
-          <div>{{data.t_sbhcjlbNum.date}} 年度</div>
+          <div>{{data.t_sbhcjlbNum.date[0]}} ~ {{data.t_sbhcjlbNum.date[1]}}</div>
 
-          <div v-for="(item,i) in data.t_sbhcjlbNum.name" :key="i">
-              <el-divider content-position="left">{{data.t_sbhcjlbNum.name[i]}}</el-divider>
-              计划外核查 :<el-tag>{{data.t_sbhcjlbNum.number[i]}} 次</el-tag>
+          <div v-for="(item,i) in data.t_sbhcjlbNum.nummg" :key="i">
+              <el-divider content-position="left">{{data.t_sbhcjlbNum.nummg[i].mz}}</el-divider>
+              已维护 :<el-tag>{{data.t_sbhcjlbNum.nummg[i].wnum}} 次</el-tag>
               <br>
-              年度核查 :<el-tag>{{data.t_sbhcjlbNum.numberAll[i]}} 次</el-tag>
+              计划维护 :<el-tag>{{data.t_sbhcjlbNum.nummg[i].num}} 次</el-tag>
               <br>
             </div>
            <!-- <div class="dataCont" style="font-size: 14px;">

+ 4 - 4
src/views/statistics/properties/s9neiBuZhiLiangPro.vue

@@ -36,12 +36,12 @@
         <!-- 参数页面列 -->
         <el-aside style="border:0px;width: 30%;">
            <div class="dataCont" style="font-size: 14px;">
-            <el-divider content-position="left">{{data.t_mjzlkzxbNum.date}} 年度</el-divider>
-              计划内质量控制完成数量 :<el-tag>{{data.t_mjzlkzxbNum.number[1]}} 次</el-tag>
+            <el-divider content-position="left">{{data.t_mjzlkzxbNum.date[0]}} ~ {{data.t_mjzlkzxbNum.date[1]}}</el-divider>
+              计划内质量控制完成数量 :<el-tag>{{data.t_mjzlkzxbNum.number}} 次</el-tag>
               <br>
-              计划内质量控制总数 :<el-tag>{{data.t_mjzlkzxbNum.number[2]}} 次</el-tag>
+              计划内质量控制总数 :<el-tag>{{data.t_mjzlkzxbNum.numberAll}} 次</el-tag>
               <br>
-              计划内质量控制完成率 :<el-tag>{{data.t_mjzlkzxbNum.number[1]==null||data.t_mjzlkzxbNum.number[1]==0?"0.00":(data.t_mjzlkzxbNum.number[2]/data.t_mjzlkzxbNum.number[1]*100).toFixed(2)}} %</el-tag>
+              计划内质量控制完成率 :<el-tag>{{data.t_mjzlkzxbNum.val}} %</el-tag>
               <br>
               <!-- <br>
               计划外质量控制计划完成数量 :<el-tag>{{data.t_mjzlkzxbNum.numberAll[1]}} 次</el-tag>

+ 208 - 408
src/views/statistics/sendDatas.js

@@ -39,281 +39,155 @@ export default {
                         return matchArr
                 },
                 getJiaoYanObjNum(){
-                        let name = []
-                        let val =[]
-                        let valAll = []
-                        let e = []
-                        let that = this
-                        let a=0
-                        let b=0
-                        let c=0
-                        // console.log('3423sdfsd',that.jiaoyanObj)
-                        if(that.jiaoyanObj.length === 0){
-                                val = [0]
-                                valAll = [0]
-                                e = [0]
-                                name = [0]
-                        }else{
-                                for (let i = 0; i < that.jiaoyanObj.length; i++) {
-                                        let num=0
-                                        let nameMid =''
-                                        if (that.jiaoyanObj[i].t_mjsbjdxzjhzb===0) {
-                                                num =0
-                                        } else {
-                                                num =Math.floor(that.jiaoyanObj[i].t_mjsbjdxzjhzbS/that.jiaoyanObj[i].t_mjsbjdxzjhzb * 10000) / 100
-                                        }
-                                        if (!that.jiaoyanObj[i].t_mjsbjdxzjhzbName) {
-                                                name.push(that.jiaoyanObj[i].t_mjsbjdxzjhzbZhName)
-                                        } else {
-                                                nameMid=that.jiaoyanObj[i].t_mjsbjdxzjhzbZhName.split("—")
-                                                if(nameMid.length===2){
-                                                        name.push(nameMid[1]+that.jiaoyanObj[i].t_mjsbjdxzjhzbName)
-                                                }else{
-                                                        name.push(nameMid[0]+that.jiaoyanObj[i].t_mjsbjdxzjhzbName)
-                                                }
-                                        }
-                                        valAll.push(that.jiaoyanObj[i].t_mjsbjdxzjhzb)
-                                        val.push(that.jiaoyanObj[i].t_mjsbjdxzjhzbS)
-                                        e.push(num)
-        
-                                        // name.push(that.jiaoyanObj[i].t_mjsbjdxzjhzbName)
-                                        
-        
-                                }
-                        }
-                        
-                        val.forEach( function(item){
-                                a += item ;
-                        });
-                        valAll.forEach( function(item){
-                                b += item ;
-                        });
-                        if(b===0){
-                                c=0
-                        }else{
-                                c= Math.floor(a/b * 10000) / 100
+                        let ryywpxjNum = this.jiaoyanObj
+                        let barData = []
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
                         }
-                        // console.log(val,valAll,e,name,a,b,c,"jsoi39")
+                        barData.push(e)
                         return {
-                                "t_mjsbjdxzjhzbNum" :{"date": this.endDate,"number": val, "numberAll": valAll, "val": e, "name": name, "valnum":a,"valAll":b,"valna":c},
+                                "t_mjsbjdxzjhzbNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "val": e,"nummg":this.jiaoyanMGObj},
                                 "config":this.getMyConfig("检测") //返回需要的对应参数
                         }
                 },
                 gethechaObjNum(){
-                        let name = []
-                        let val =[]
-                        let valAll = []
-                        let e = []
-                        let that = this
-                        let a=0
-                        let b=0
-                        let c=0
-                        if(that.hechaObj.length === 0){
-                                val = [0]
-                                valAll = [0]
-                                e = [0]
-                                name = [0]
-                        }else{
-                                for (let i = 0; i < that.hechaObj.length; i++) {
-                                        let nameMid = ''
-                                        // let num=0
-                                        if (!that.hechaObj[i].t_sbhcjlbZhname) {
-                                                name.push(that.hechaObj[i].t_sbhcjlbName)
-                                        } else {
-                                                nameMid=that.hechaObj[i].t_sbhcjlbName.split("—")
-                                                if(nameMid.length===2){
-                                                        name.push(nameMid[1]+that.hechaObj[i].t_sbhcjlbZhname)
-                                                }else{
-                                                        name.push(nameMid[0]+that.hechaObj[i].t_sbhcjlbZhname)
-                                                }
-                                        }
-                                        valAll.push(that.hechaObj[i].t_sbhcjlb)
-                                        val.push(that.hechaObj[i].t_sbhcjlbS)
-                                        // e.push(num)
-
-                                        
-
-                                }
-                        }
-                        val.forEach( function(item){
-                                if(item>0){
-                                        a += 1 ;
-                                }
-                        });
-                        valAll.forEach( function(item){
-                                if(item>0){
-                                        b += 1 ;
-                                }
-                        });
-                        if(b===0){
-                                c=0
-                        }else{
-                                c= Math.floor(a/b * 10000) / 100
+                        let ryywpxjNum = this.hechaObj
+                        let barData = []
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
                         }
+                        barData.push(e)
                         return {
-                                "t_sbhcjlbNum" :{"date": this.endDate,"number": val, "numberAll": valAll, "name": name,"valnum":a,"valAll":b,"valna":c},
+                                "t_sbhcjlbNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "val": e,"nummg":this.hechaMGObj},
                                 "config":this.getMyConfig("检测") //返回需要的对应参数
                         }
                 },
                 getnengtliObjNum(){
-                        let name = []
-                        let val =[]
-                        let valAll = []
-                        let e = []
-                        let that = this
-                        
-                        let a=that.nengliObj[0].num
-                        let b=that.nengliObj[1].num
-                        let c=0
-
-                        console.log(that.nengliObj,'904380439034904343')
-                        // if(that.nengliObj.length === 0){
-                        //         val = [0]
-                        //         valAll = [0]
-                        //         e = [0]
-                        //         name = [0]
-                        // }else{
-                        //         for (let i = 0; i < that.nengliObj.length; i++) {
-                        //                 // let num=0
-                        //                 // if (that.hechaObj[i].t_sbhcjlb===0) {
-                        //                 //         num =0
-                        //                 // } else {
-                        //                 //         num =Math.floor(that.hechaObj[i].t_sbhcjlbS/that.hechaObj[i].t_sbhcjlb * 10000) / 100
-                        //                 // }
-                        //                 // valAll.push(that.hechaObj[i].t_sbhcjlb)
-                        //                 val.push(that.nengliObj[i].num)
-                        //                 valAll.push(that.nengliObj[i].numS)
-                        //                 // e.push(num)
-                        //                 let nameMid = that.nengliObj[i].enname.split("—")
-                        //                 if(nameMid.length===2){
-                        //                         name.push(nameMid[1])
-                        //                 }else{
-                        //                         name.push(nameMid[0])
-                        //                 }
-
-                        // }
-                        // }
-                        // val.forEach( function(item){
-                        //         a += item ;
-                        // });
-                        // valAll.forEach( function(item){
-                        //         b += item ;
-                        // });
-                        if(b===0){
-                                c=0
-                        }else{
-                                c= Math.floor(b/a * 10000) / 100
+                        let ryywpxjNum = this.waibuObj
+                        let barData = []
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
                         }
+                        barData.push(e)
                         return {
-                                "Num" :{"date": this.endDate,"number": val, "name": name,"numberAll":valAll,"valnum":a,"valAll":b,"valna":c},
+                                "Num" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData,"val": e},
                                 "config":this.getMyConfig("检测") //返回需要的对应参数
                         }
                 },
-                getbiaozhunObjNum(){
-                        let name = []
-                        let val =[]
-                        let valAll = []
-                        let e = []
-                        let a=0
-                        let b=0
-                        let c=0
-                        let numm = 0
-                        let that = this
-                        if(that.biaozhunObj.length === 0){
-                                val = [0]
-                                valAll = [0]
-                                e = [0]
-                                name = [0]
-                        }else{
-                                for (let i = 0; i < that.biaozhunObj.length; i++) {
-                                        // let num=0
-                                        // if (that.hechaObj[i].t_sbhcjlb===0) {
-                                        //         num =0
-                                        // } else {
-                                        //         num =Math.floor(that.hechaObj[i].t_sbhcjlbS/that.hechaObj[i].t_sbhcjlb * 10000) / 100
-                                        // }
-                                        // valAll.push(that.hechaObj[i].t_sbhcjlb)
-                                        val.push(that.biaozhunObj[i].num)
-                                        valAll.push(that.biaozhunObj[i].numS)
-                                        // e.push(num)
-                                        name.push(that.biaozhunObj[i].name)
+                getyangPinCaiJiObjNum(){
+
+                        let zlzbfz = []
+                        zlzbfz = this.quality
+                        let fenshuzu = []
+                        fenshuzu = this.buhegelvObj
+                        
+                        let title = ['name_']
 
+                        for (let i = 0; i < zlzbfz.length; i++) {
+                                for (let j = 0; j < fenshuzu.length; j++) {
+                                        // console.log(zlzbfz[i].id_ == fenshuzu[j].bzbm,zlzbfz[i].id_, fenshuzu[j].bzbm,'354345433333333333333333333333333333333333')
+                                        if(zlzbfz[i].id_ == fenshuzu[j].bzbm){
+                                                let prop = fenshuzu[j].zhi_liang_zhi_bia;
+                                                zlzbfz[i][prop] = fenshuzu[j].location
+                                        }
                                 }
                         }
-                        val.forEach( function(item){
-                                a += item ;
-                        });
-                        valAll.forEach( function(item){
-                                b += item ;
-                        });
-                        if (that.biaozhunTObj.length===0) {
-                                numm = 1
-                        } else {
-                                numm = Math.floor((12-that.biaozhunTObj[0].time)/3) + 1
-                        }
-                        a=a*numm
-                        // console.log(numm,'numm')
-                        if(b===0){
-                                c=0
-                        }else{
-                                c= Math.floor(b/a * 10000) / 100
+                        for (let t = 0; t < this.zhiliangzhibiaotitle.length; t++) {
+                                title.push(this.zhiliangzhibiaotitle[t].zhi_liang_zhi_bia)
+                                
                         }
+                        
+                        let arr  = this.tableNum
+                        let aa =[]
+                        for (let j = 0; j < arr.length; j++) {
+                                let changeArr = ['<span style="font-size:14px;height:45px;line-height:45px;display:inline-block">' + arr[j].zhi_liang_zhi_bia + '</span>','<span style="font-size:14px;height:45px;line-height:45px;display:inline-block">' + arr[j].location.toFixed(2) + '</span>']
+                                aa.push(changeArr)
+                        }
+                        this.$set(this.tableData, 'data', aa)
+                        console.log(arr,this.tableData.data,'djlkddddddddddddddddddddddddddddddddd')
+
                         return {
-                                "Num" :{"date": this.endDate,"number": val, "name": name, "numberAll": valAll,"valnum":a,"valAll":b,"valna":c},
+                                "Num" :{"date": this.endDate,"number": zlzbfz,"title":title},
                                 "config":this.getMyConfig("检测") //返回需要的对应参数
                         }
                 },
-                getbzJunZhujNum(){
-                        let name = []
-                        let val =[]
-                        let valAll = []
-                        let e = []
-                        let a=0
-                        let b=0
-                        let c=0
-                        let numm = 0
-                        let that = this
-                        if(that.bzJunZhuObj.length === 0){
-                                val = [0]
-                                valAll = [0]
-                                e = [0]
-                                name = [0]
-                        }else{
-                                for (let i = 0; i < that.bzJunZhuObj.length; i++) {
-                                        // let num=0
-                                        // if (that.hechaObj[i].t_sbhcjlb===0) {
-                                        //         num =0
-                                        // } else {
-                                        //         num =Math.floor(that.hechaObj[i].t_sbhcjlbS/that.hechaObj[i].t_sbhcjlb * 10000) / 100
-                                        // }
-                                        // valAll.push(that.hechaObj[i].t_sbhcjlb)
-                                        val.push(that.bzJunZhuObj[i].num)
-                                        valAll.push(that.bzJunZhuObj[i].numS)
-                                        // e.push(num)
-                                        name.push(that.bzJunZhuObj[i].name)
-
+                getfenzuZLZBObjNum(){
+                        //生成月份
+                        let d1 = this.endDate[0];
+                        let d2 = this.endDate[1];
+                        let dateArry = new Array();
+                        let s1 = d1.split("-");
+                        let s2 = d2.split("-");
+                        let mCount = 0;
+                        if (parseInt(s1[0]) < parseInt(s2[0])) {
+                            mCount = (parseInt(s2[0]) - parseInt(s1[0])) * 12 + parseInt(s2[1]) - parseInt(s1[1])+1;
+                        } else {
+                            mCount = parseInt(s2[1]) - parseInt(s1[1])+1;
+                        }
+                        if (mCount > 0) {
+                            var startM = parseInt(s1[1]);
+                            var startY = parseInt(s1[0]);
+                            for (var i = 0; i < mCount; i++) {
+                                if (startM < 12) {
+                                    dateArry[i] = startY + "-" + (startM>9 ? startM : "0" + startM);
+                                    startM += 1;
+                                } else {
+                                    dateArry[i] = startY + "-" + (startM > 9 ? startM : "0" + startM);
+                                    startM = 1;
+                                    startY += 1;
                                 }
+                            }
+                        }
+                        //处理数据
+                        let zlzbfz = []
+                        let fenshuzu = []
+                        fenshuzu = this.fenzuzlmb
+                        for (let j = 0; j < dateArry.length; j++) {
+                                let rq = {}
+                                rq.name_ = dateArry[j]
+                                zlzbfz.push(rq)
+                                console.log(zlzbfz,dateArry[j],'erw232222222222222222222222222224586')
                         }
-                        val.forEach( function(item){
-                                a += item ;
-                        });
-                        valAll.forEach( function(item){
-                                b += item ;
-                        });
-                        if (that.bzJunZhuTObj.length===0) {
-                                numm = 1
-                        } else {
-                                numm = Math.floor((12-that.bzJunZhuTObj[0].time)/3) + 1
+                        
+                        let title = ['name_']
+                        for (let i = 0; i < zlzbfz.length; i++) {
+                                for (let j = 0; j < fenshuzu.length; j++) {
+                                        if(zlzbfz[i].name_ == fenshuzu[j].bzsj){
+                                                let prop = fenshuzu[j].zhi_liang_zhi_bia;
+                                                zlzbfz[i][prop] = fenshuzu[j].location
+                                        }
+                                }
                         }
-                        a=a*numm
-                        // console.log(numm,'numm')
-                        if(b===0){
-                                c=0
-                        }else{
-                                c= Math.floor(b/a * 10000) / 100
+                        for (let t = 0; t < this.zhiliangzhibiaotitle.length; t++) {
+                                title.push(this.zhiliangzhibiaotitle[t].zhi_liang_zhi_bia)
+                                
+                        }
+                        let arr  = this.tableNum
+                        let aa =[]
+                        for (let j = 0; j < arr.length; j++) {
+                                let changeArr = ['<span style="font-size:14px;height:45px;display:inline-block;">' + arr[j].zhi_liang_zhi_bia + '</span>','<span style="font-size:14px;height:45px;display:inline-block;">' + arr[j].ji_suan_gong_shi_ + '</span>','<span style="font-size:14px;height:45px;display:inline-block;">' + arr[j].zhi_biao_xian_zhi + '</span>']
+                                aa.push(changeArr)
                         }
+                        this.$set(this.tableData1, 'data', aa)
+                        
                         return {
-                                "Num" :{"date": this.endDate,"number": val, "name": name, "numberAll": valAll,"valnum":a,"valAll":b,"valna":c},
+                                "Num" :{"date": this.endDate,"number": zlzbfz,"title":title},
+                                "config":this.getMyConfig("检测") //返回需要的对应参数
+                        }
+                },
+                getbzJunZhujNum(){
+                        let title = ['ping_shen_lei_xin','num','numA']
+                        return {
+                                "Num" :{"date": this.endDate,"number": this.gaijinxiangObj,"title":title},
                                 "config":this.getMyConfig("检测") //返回需要的对应参数
                         }
                 },
@@ -359,7 +233,7 @@ export default {
                         } else {
                                 numm = Math.floor((12-that.bzXiBaoTObj[0].time)/3) + 1
                         }
-                        a=a*numm
+                        // a=a*numm
                         // console.log(numm,'numm')
                         if(b===0){
                                 c=0
@@ -372,7 +246,8 @@ export default {
                         }
                 },
                 getMyConfig(name){
-                        if(this.config.length == 0)  return
+                        // console.log(this.config,'werwrwr3567885656766666666666666666666666')
+                        if(!this.config || this.config.length == 0)  return
                         for(let i in this.config){
                                 if (this.config[i]['pei_zhi_biao_ming'] == name){
                                         return this.config[i]['pei_zhi_can_shu_'] //返回需要的对应参数
@@ -380,21 +255,17 @@ export default {
                         }
                 },
                 getS1renwu(){
-                        let jchzbNum = this.getMatchingData('t_lhjczb')
-                        let jchzbSNum = this.getMatchingDataSame('t_lhjczb')
+                        let ryywpxjNum = this.guanshenObj
                         let barData = []
-                        // for (let i = 0; i < this.dataScope.length; i++) {
-                                let e=0
-                                if (jchzbSNum[0]===0) {
-                                        e =0
-                                } else {
-                                        e =Math.floor(jchzbNum[0]/jchzbSNum[0] * 10000) / 100
-                                }
-                                barData.push(e)
-                        // }
-                        // console.log(jchzbNum,jchzbSNum,'hsuihsahiu')
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
+                        }
+                        barData.push(e)
                         return {
-                                "t_jchzbNum" :{"date": this.endDate,"number": jchzbNum, "numberAll": jchzbSNum, "res": barData},
+                                "t_jchzbNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData,"val":e},
                                 "config":this.getMyConfig("检测") //返回需要的对应参数
                         }
                 },
@@ -437,116 +308,91 @@ export default {
                         }
                 },
                 getS2manYiDu(){
-                        let khmydtjbNum = this.getMatchingData('t_khmydtjb')
-                        let khmydtjbNumN = this.getMatchingData('t_khmydtjbnum') * 50
-                        let khmydtjbSNum = this.getMatchingDataSame('t_khmydtjb')
+                        let ryywpxjNum = this.neishenObj
                         let barData = []
-                        // for (let i = 0; i < this.dataScope.length; i++) {
-                                let e=0
-                                if (khmydtjbNumN===0) {
-                                        e =0
-                                } else {
-                                        e =Math.floor(khmydtjbNum[0]/khmydtjbNumN * 10000) / 100
-                                }
-                                // console.log(e,'eeeeee')
-                                barData.push(e)
-                        // }
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
+                        }
+                        barData.push(e)
                         return {
-                                "t_myddcBegin" :{"date": this.BeginDate,"number": this.relData['t_myddc'+this.BeginDate]},
-                                "t_myddcEnd" :{"date": this.endDate,"number": this.relData['t_myddc'+this.endDate]},
-                                "t_myddc1Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc1'+this.BeginDate]},
-                                "t_myddc1End" :{"date": this.endDate,"number": this.relData['t_myddc1'+this.endDate]},
-                                "t_myddc2Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc2'+this.BeginDate]},
-                                "t_myddc2End" :{"date": this.endDate,"number": this.relData['t_myddc2'+this.endDate]},
-                                "t_myddc3Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc3'+this.BeginDate]},
-                                "t_myddc3End" :{"date": this.endDate,"number": this.relData['t_myddc3'+this.endDate]},
-                                "t_myddc4Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc4'+this.BeginDate]},
-                                "t_myddc4End" :{"date": this.endDate,"number": this.relData['t_myddc4'+this.endDate]},
-                                "t_myddc5Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc5'+this.BeginDate]},
-                                "t_myddc5End" :{"date": this.endDate,"number": this.relData['t_myddc5'+this.endDate]},
-                                "t_myddc6Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc6'+this.BeginDate]},
-                                "t_myddc6End" :{"date": this.endDate,"number": this.relData['t_myddc6'+this.endDate]},
-                                "t_khmydtjbNum" :{"date": this.endDate,"number": khmydtjbNum, "numberAll": khmydtjbSNum, "res": barData,'num':khmydtjbNumN},
+                                // "t_myddcBegin" :{"date": this.BeginDate,"number": this.relData['t_myddc'+this.BeginDate]},
+                                // "t_myddcEnd" :{"date": this.endDate,"number": this.relData['t_myddc'+this.endDate]},
+                                // "t_myddc1Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc1'+this.BeginDate]},
+                                // "t_myddc1End" :{"date": this.endDate,"number": this.relData['t_myddc1'+this.endDate]},
+                                // "t_myddc2Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc2'+this.BeginDate]},
+                                // "t_myddc2End" :{"date": this.endDate,"number": this.relData['t_myddc2'+this.endDate]},
+                                // "t_myddc3Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc3'+this.BeginDate]},
+                                // "t_myddc3End" :{"date": this.endDate,"number": this.relData['t_myddc3'+this.endDate]},
+                                // "t_myddc4Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc4'+this.BeginDate]},
+                                // "t_myddc4End" :{"date": this.endDate,"number": this.relData['t_myddc4'+this.endDate]},
+                                // "t_myddc5Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc5'+this.BeginDate]},
+                                // "t_myddc5End" :{"date": this.endDate,"number": this.relData['t_myddc5'+this.endDate]},
+                                // "t_myddc6Begin" :{"date": this.BeginDate,"number": this.relData['t_myddc6'+this.BeginDate]},
+                                // "t_myddc6End" :{"date": this.endDate,"number": this.relData['t_myddc6'+this.endDate]},
+                                "t_khmydtjbNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData,"val":e},
                                 "config":this.getMyConfig("客户满意度") //返回需要的对应参数
                         }
                 },
                 getS3tousu(){
-                        let complaintNum = this.getMatchingData('t_complaint')
-                        let complainNum = this.getMatchingDataSame('t_complain')
-                        let complaintNumS = this.getMatchingDataSame('t_complaint')
-                        let mjwtsqbNum = this.getMatchingData('t_mjwtsqb')
+                        let ryywpxjNum = this.yingjiObj
+                        let barData = []
                         let e=0
-                        let barData =[]
-                        let e1=0
-                        let barData1 =[]
-                        let e2=0
-                        let barData2 =[]
-                        if (mjwtsqbNum[0]===0) {
+                        if (ryywpxjNum[0].num===0) {
                                 e =0
-                        } else {
-                                e =Math.floor(complaintNum[0]/mjwtsqbNum[0] * 10000) / 100
-                        }
-                        if (complaintNum[0]===0) {
-                                e1 =0
-                        } else {
-                                e1 =Math.floor(complaintNumS[0]/complaintNum[0] * 10000) / 100
-                        }
-                        if (complaintNum[0]===0) {
-                                e2 =0
-                        } else {
-                                e2 =Math.floor(complainNum[0]/complaintNum[0] * 10000) / 100
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
                         }
                         barData.push(e)
-                        barData1.push(e1)
-                        barData2.push(e2)
                         
                         return {
-                                "t_complaintNum" :{"date": this.endDate,"number": complaintNum,"numberAll":mjwtsqbNum,"res":barData,"num48":complaintNumS,"res1":barData1,"numtong":complainNum,"res2":barData2},
-                                "t_mjwtsqbNum" :{"date": this.dataScope,"number": mjwtsqbNum},
+                                "t_complaintNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData,"val":e},
+                                // "t_mjwtsqbNum" :{"date": this.dataScope,"number": mjwtsqbNum},
                                 "config":this.getMyConfig("客户投诉率") //返回需要的对应参数
                         }
                 },
                 getS4renYuanPeiXun(){
-                        let ryywpxjNum = this.getMatchingData('t_ryywpxjl')
-                        let ryywpxjSNum = this.getMatchingDataSame('t_ryywpxjl')
+                        let ryywpxjNum = this.zaigangrenyuan
                         let barData = []
-                        // for (let i = 0; i < this.dataScope.length; i++) {
-                                let e=0
-                                if (ryywpxjSNum[0]===0) {
-                                        e =0
-                                } else {
-                                        e =Math.floor(ryywpxjNum[0]/ryywpxjSNum[0] * 10000) / 100
-                                }
-                                barData.push(e)
-                        // }
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
+                        }
+                        barData.push(e)
+                        
                         return {
-                                "t_ryywpxjlNum" :{"date": this.endDate,"number": ryywpxjNum, "numberAll": ryywpxjSNum, "res": barData},
-                                "t_ryndpxjhBegin" :{"date": this.BeginDate,"number": this.relData['t_ryndpxjh'+this.BeginDate]},
-                                "t_ryndpxjhEnd" :{"date": this.endDate,"number": this.relData['t_ryndpxjh'+this.endDate]},
-                                "t_rypxjlnkBegin" :{"date": this.BeginDate,"number": this.relData['t_rypxjlnk'+this.BeginDate]},
-                                "t_rypxjlnkEnd" :{"date": this.endDate,"number": this.relData['t_rypxjlnk'+this.endDate]},
+                                "t_ryywpxjlNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData},
+                                // "t_ryndpxjhBegin" :{"date": this.BeginDate,"number": this.relData['t_ryndpxjh'+this.BeginDate]},
+                                // "t_ryndpxjhEnd" :{"date": this.endDate,"number": this.relData['t_ryndpxjh'+this.endDate]},
+                                // "t_rypxjlnkBegin" :{"date": this.BeginDate,"number": this.relData['t_rypxjlnk'+this.BeginDate]},
+                                // "t_rypxjlnkEnd" :{"date": this.endDate,"number": this.relData['t_rypxjlnk'+this.endDate]},
                                 "config":this.getMyConfig("人员培训") //返回需要的对应参数
                         }
                 },
                 getS5renYuanJianDu(){
-                        let zljdNum = this.getMatchingData('t_zljd')
+                        let zljdNum = this.gangqianpeixun
                         let zljdSNum = this.getMatchingDataSame('t_zljd')
                         let barData = []
                         // for (let i = 0; i < this.dataScope.length; i++) {
                                 let e=0
-                                if (zljdSNum[0]===0) {
+                                if (zljdNum[0].num===0) {
                                         e =0
                                 } else {
-                                        e =Math.floor(zljdNum[0]/zljdSNum[0] * 10000) / 100
+                                        e =Math.floor(zljdNum[1].num/zljdNum[0].num * 10000) / 100
                                 }
                                 barData.push(e)
                         // }
+                        console.log(zljdNum,barData,'88888888888888888888888888888888888888888888')
                         return {
-                                "t_zljdNum" :{"date": this.endDate,"number": zljdNum, "numberAll": zljdSNum, "res": barData},
-                                "t_zljdBegin" :{"date": this.BeginDate,"number": this.relData['t_zljd'+this.BeginDate]},
-                                "t_zljdEnd" :{"date": this.endDate,"number": this.relData['t_zljd'+this.endDate]},
-                                "t_zljdssBegin" :{"date": this.BeginDate,"number": this.relData['t_zljdss'+this.BeginDate]},
-                                "t_zljdssEnd" :{"date": this.endDate,"number": this.relData['t_zljdss'+this.endDate]},
+                                "t_zljdNum" :{"date": this.endDate,"number": zljdNum[1].num, "numberAll": zljdNum[0].num, "res": barData},
+                                // "t_zljdBegin" :{"date": this.BeginDate,"number": this.relData['t_zljd'+this.BeginDate]},
+                                // "t_zljdEnd" :{"date": this.endDate,"number": this.relData['t_zljd'+this.endDate]},
+                                // "t_zljdssBegin" :{"date": this.BeginDate,"number": this.relData['t_zljdss'+this.BeginDate]},
+                                // "t_zljdssEnd" :{"date": this.endDate,"number": this.relData['t_zljdss'+this.endDate]},
                                 "config":this.getMyConfig("人员监督") //返回需要的对应参数
                         }
                 },
@@ -593,95 +439,49 @@ export default {
                         }
                 },
                 getS9neiBuZhiLiang(){
-                        //年度总
-                        let mjzlkzxbNum = this.getMatchingData('t_mjzlkzxb')
-                        //年度条件
-                        let mjzlkzxbSNum = this.getMatchingDataSame('t_mjzlkzxb')
-                        //部门总
-                        let mjzlkzjlbNum = this.getMatchingData('t_mjzlkzjlb')
-                        //部门条件
-                        let mjzlkzjlbSNum = this.getMatchingDataSame('t_mjzlkzjlb')
-                        let numData = []
-                        let numAData = []
+                        let ryywpxjNum = this.neibuObj
                         let barData = []
-                        let a=0
-                        let b=0
-                        let c=0
-                        // for (let i = 0; i < this.dataScope.length; i++) {
-                        // let e=0
-                        // if (mjzlkzxbSNum[0]===0) {
-                        //         e =0
-                        // } else {
-                        //         e =Math.floor(mjzlkzxbNum[0]/mjzlkzxbSNum[0] * 10000) / 100
-                        // }
-                        numData.push('计划内')
-                        numData.push(mjzlkzxbNum[0])
-                        numData.push(mjzlkzxbSNum[0])
-                        numAData.push('计划外')
-                        numAData.push(mjzlkzjlbNum[0])
-                        numAData.push(mjzlkzjlbSNum[0])
-                        barData.push(numData)
-                        barData.push(numAData)
-                        a=mjzlkzxbSNum[0]+mjzlkzjlbSNum[0]
-                        b=mjzlkzxbNum[0]+mjzlkzjlbNum[0]
-                        if(b===0){
-                                c=0
-                        }else{
-                                c= Math.floor(a/b * 10000) / 100
+                        let e=0
+                        if (ryywpxjNum[0].num===0) {
+                                e =0
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
                         }
-                        // }
+                        barData.push(e)
                         return {
-                                "t_mjzlkzxbNum" :{"date": this.endDate,"number": numData, "numberAll": numAData,'val':barData,"valnum":a,"valAll":b,"valna":c},
+                                "t_mjzlkzxbNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData,"val": e},
                                 "config":this.getMyConfig("内部质量") //返回需要的对应参数
                         }
                 },
                 getS12fengXian(){
-                        //年度总
-                        let mjsyshdfxsbykzjhxbNum = this.getMatchingData('t_mjsyshdfxsbykzjhxb')
-                        //年度条件
-                        let mjsyshdfxsbykzjhxbSNum = this.getMatchingDataSame('t_mjsyshdfxsbykzjhxb')
-
-                        let numData = []
-                        let numAData = []
+                        let ryywpxjNum = this.fengxianObj
                         let barData = []
-                        // for (let i = 0; i < this.dataScope.length; i++) {
                         let e=0
-                        if (mjsyshdfxsbykzjhxbNum[0]===0) {
+                        if (ryywpxjNum[0].num===0) {
                                 e =0
-                        } else {
-                                e =Math.floor(mjsyshdfxsbykzjhxbSNum[0]/mjsyshdfxsbykzjhxbNum[0] * 10000) / 100
+                         } else {
+                                e =Math.floor(ryywpxjNum[1].num/ryywpxjNum[0].num * 10000) / 100
                         }
-                        numData.push(mjsyshdfxsbykzjhxbSNum[0])
-                        numData.push(mjsyshdfxsbykzjhxbNum[0])
-                        barData.push(e)
-                        // }
                         return {
-                                "t_mjsyshdfxsbykzjhxbNum" :{"date": this.endDate,"number": mjsyshdfxsbykzjhxbSNum, "numberAll":mjsyshdfxsbykzjhxbNum, "res":barData},
+                                "t_mjsyshdfxsbykzjhxbNum" :{"date": this.endDate,"number": ryywpxjNum[1].num, "numberAll": ryywpxjNum[0].num, "res": barData,"val": e},
                                 "config":this.getMyConfig("内部质量") //返回需要的对应参数
                         }
                 },
                 getS14bufuhexiang(){
-                        //年度总
-                        let bfhxbgyjzcsjlbxNum = this.getMatchingData('t_bfhxbgyjzcsjlbx')
-                        //年度条件
-                        let bfhxbgyjzcsjlbxSNum = this.getMatchingDataSame('t_bfhxbgyjzcsjlbx')
+                        // let zlzbfz = []
+                        // zlzbfz = this.quality
+                        // let fenshuzu = []
+                        // fenshuzu = this.buhegelvObj
+                        
+                        let title = ['bao_gao_lei_xing_','num','numA']
 
-                        let numData = []
-                        let numAData = []
-                        let barData = []
-                        // for (let i = 0; i < this.dataScope.length; i++) {
-                        let e=0
-                        if (bfhxbgyjzcsjlbxNum[0]===0) {
-                                e =0
-                        } else {
-                                e =Math.floor(bfhxbgyjzcsjlbxSNum[0]/bfhxbgyjzcsjlbxNum[0] * 10000) / 100
-                        }
-                        numData.push(bfhxbgyjzcsjlbxSNum[0])
-                        numData.push(bfhxbgyjzcsjlbxNum[0])
-                        barData.push(e)
+                        // for (let t = 0; t < this.bufuheObj.length; t++) {
+                        //         title.push(this.bufuheObj[t].bao_gao_lei_xing_)
+                                
+                        // }
                         // }
                         return {
-                                "t_bfhxbgyjzcsjlbxNum" :{"date": this.endDate,"number": bfhxbgyjzcsjlbxSNum, "numberAll":bfhxbgyjzcsjlbxNum, "res":barData},
+                                "t_bfhxbgyjzcsjlbxNum" :{"date": this.endDate,"number": this.bufuheObj,"title":title},
                                 "config":this.getMyConfig("内部质量") //返回需要的对应参数
                         }
                 },