|
|
@@ -15,59 +15,62 @@
|
|
|
<dv-border-box-8>返回</dv-border-box-8>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <dv-border-box-1>
|
|
|
+ <dv-border-box-1 style="height:88%;overflow: hidden;">
|
|
|
<!-- 顶部数据 -->
|
|
|
<div class="topCard">
|
|
|
<top-bar v-if="topBarData.length" :info="topBarData" />
|
|
|
</div>
|
|
|
- <div class="middleCard" >
|
|
|
- <div style="width:100%;height: 92%;">
|
|
|
- <div class="middleCardLeft" >
|
|
|
- <middleCard v-if="MiddleLeftPieViewList.data.length" :info="MiddleLeftPieViewList" ref="middleCardLeft"/>
|
|
|
- </div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:5px;height:350px;margin:0 15px;" />
|
|
|
- <div class="middleCardCenter">
|
|
|
+ <dv-decoration-10 style="height:2%;display:flex;" />
|
|
|
+
|
|
|
+ <div class="middleCard">
|
|
|
+ <div style="width:100%;height: 100%;box-sizing: border-box;overflow: hidden;">
|
|
|
+ <div class="middleCardLeft">
|
|
|
+ <middleCard v-if="MiddleLeftPieViewList.data.length" :info="MiddleLeftPieViewList" ref="middleCardLeft" />
|
|
|
+ </div>
|
|
|
+ <dv-decoration-2 :reverse="true" style="width:2%;height: 100%;" />
|
|
|
+ <div class="middleCardRight1">
|
|
|
+ <CarouselTabl v-if="MiddleLeftPieViewList.data.length" :info="shiyonglvConfig" title="设备使用记录列表" isup=isup />
|
|
|
+ </div>
|
|
|
+ <!-- <div class="middleCardCenter">
|
|
|
<middleCard v-if="eBgRateData.data.length" :info="eBgRateData" ref="middleCardCenter"/>
|
|
|
- </div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:5px;height:350px;margin:0 15px;" />
|
|
|
- <div class="middleCardRight">
|
|
|
- <CarouselTabl v-if="config.data.length" :info="config"/>
|
|
|
+ </div> -->
|
|
|
+ <dv-decoration-2 :reverse="true" style="width:2%;height:100%;" />
|
|
|
+ <div class="middleCardRight">
|
|
|
+ <CarouselTabl v-if="config.data.length" :info="config" title="设备报废列表" />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <dv-decoration-10 />
|
|
|
+ <dv-decoration-10 style="height:2%;display:flex;" />
|
|
|
<div class="bottomCard">
|
|
|
- <div style="width:31%;display:flex;">
|
|
|
+ <div style="width:32%;height: 100%;overflow: hidden;box-sizing: border-box;display:flex;">
|
|
|
<div class="bottomCardLeft0">
|
|
|
- <middleCard v-if="weiHuSheBeiData.data.length" :info="weiHuSheBeiData" ref="sheBeiWeiHuRef"/>
|
|
|
+ <middleCard v-if="weiHuSheBeiData.data.length" :info="weiHuSheBeiData" ref="sheBeiWeiHuRef" />
|
|
|
</div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:3%;height:330px;margin: 0 10px;" />
|
|
|
- <div style="width:37%">
|
|
|
+ <!-- <dv-decoration-2 :reverse="true" style="width:3%;height:100%;;margin: 0 10px;" /> -->
|
|
|
+ <!-- <div style="width:37%">
|
|
|
<zhuzhuangtu v-if="sheBeiweiHuData.data.length" :info="sheBeiweiHuData" ref="sheBeiWeiHuDataref"/>
|
|
|
+ </div> -->
|
|
|
+ </div>
|
|
|
+ <dv-decoration-2 :reverse="true" style="width:1%;height:100%;overflow: hidden;box-sizing: border-box;" />
|
|
|
+ <div style="width:34%;display:flex;">
|
|
|
+ <!-- <div style="width:40%">
|
|
|
+ <zhuzhuangtu v-if="zhuantaiEData.data.length" :info="zhuantaiEData" ref="zhuantaiEDataref" />
|
|
|
+ </div> -->
|
|
|
+ <!-- <dv-decoration-2 :reverse="true" style="width:3%;height:100%;" /> -->
|
|
|
+ <div class="bottomCardright">
|
|
|
+ <middleCard v-if="jianDingjiaoZhunSheBeiData.data.length" :info="jianDingjiaoZhunSheBeiData" ref="jiandingRef" />
|
|
|
</div>
|
|
|
</div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:5px;height:330px;margin: 0 10px;" />
|
|
|
- <div style="width:31%;display:flex;">
|
|
|
+ <dv-decoration-2 :reverse="true" style="width:1%;height:100%;overflow: hidden;box-sizing: border-box;" />
|
|
|
+ <div style="width:32%;overflow: hidden;box-sizing: border-box;display:flex;">
|
|
|
<div class="bottomCardLeft">
|
|
|
<middleCard v-if="sheBeiHeChaData.data.length" :info="sheBeiHeChaData" ref="sheBeiHeChaRef"/>
|
|
|
</div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:5px;height:330px;margin: 0 10px;" />
|
|
|
- <div style="width:37%">
|
|
|
- <zhuzhuangtu v-if="bottomData.data.length" :info="bottomData" ref="bottomCardLeft"/>
|
|
|
- </div>
|
|
|
+ <!-- <dv-decoration-2 :reverse="true" style="width:5px;height:330px;margin: 0 10px;" /> -->
|
|
|
+ <!-- <div style="width:100%">
|
|
|
+ <zhuzhuangtu v-if="bottomData.data.length" :info="bottomData" ref="bottomCardLeft" />
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:5px;height:330px;margin: 0 10px;" />
|
|
|
- <div style="width:31%;display:flex;">
|
|
|
- <div class="bottomCardright">
|
|
|
- <middleCard v-if="jianDingjiaoZhunSheBeiData.data.length" :info="jianDingjiaoZhunSheBeiData" ref="jiandingRef"/>
|
|
|
- </div>
|
|
|
- <dv-decoration-2 :reverse="true" style="width:3%;height:330px;margin: 0 10px;" />
|
|
|
- <div style="width:40%">
|
|
|
- <zhuzhuangtu v-if="zhuantaiEData.data.length" :info="zhuantaiEData" ref="zhuantaiEDataref"/>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
-
|
|
|
-
|
|
|
|
|
|
</div>
|
|
|
</dv-border-box-1>
|
|
|
@@ -77,17 +80,17 @@
|
|
|
<script>
|
|
|
import screenfull from "screenfull";
|
|
|
import curdPost from "@/business/platform/form/utils/custom/joinCURD.js";
|
|
|
-import { color } from 'echarts/lib/export';
|
|
|
+import { color } from "echarts/lib/export";
|
|
|
// import { config } from 'public/lib/UEditor/third-party/zeroclipboard/ZeroClipboard';
|
|
|
// import { acceptList } from "./data.js";
|
|
|
// import { number } from 'echarts/lib/export';
|
|
|
export default {
|
|
|
name: "checkBoard",
|
|
|
components: {
|
|
|
- topBar: () => import('./component/equipmentBoardTopcard'),
|
|
|
- middleCard: () => import('./component/getPieView'),
|
|
|
- zhuzhuangtu: () => import('./component/zhuzhuangtu'),
|
|
|
- CarouselTabl: () => import('./component/CarouselTabl')
|
|
|
+ topBar: () => import("./component/equipmentBoardTopcard"),
|
|
|
+ middleCard: () => import("./component/getPieView"),
|
|
|
+ zhuzhuangtu: () => import("./component/zhuzhuangtu"),
|
|
|
+ CarouselTabl: () => import("./component/CarouselTabl"),
|
|
|
},
|
|
|
data() {
|
|
|
const d = new Date();
|
|
|
@@ -98,16 +101,22 @@ export default {
|
|
|
today: d.toJSON().slice(0, 10),
|
|
|
topBarData: [],
|
|
|
timer: null,
|
|
|
- MiddleLeftPieViewList:{},
|
|
|
- eBgRateData:{},
|
|
|
- sheBeiHeChaData:{},
|
|
|
- jianDingjiaoZhunSheBeiData:{},
|
|
|
- weiHuSheBeiData:{},
|
|
|
- bottomData:{},
|
|
|
- zhuantaiEData:{},
|
|
|
- sheBeiweiHuData:{},
|
|
|
- config:{},
|
|
|
- zichan:0,
|
|
|
+ MiddleLeftPieViewList: {},
|
|
|
+ eBgRateData: {},
|
|
|
+ sheBeiHeChaData: {},
|
|
|
+ jianDingjiaoZhunSheBeiData: {},
|
|
|
+ weiHuSheBeiData: {},
|
|
|
+ shiyonglvConfig: {
|
|
|
+ header: ["设备名称","使用人", "使用时间","存放位置", "状态", "频率"],
|
|
|
+ data: [],
|
|
|
+ columnWidth: ["130", "90","110","120", "100", "70"],
|
|
|
+ rowNum: 6,
|
|
|
+ },
|
|
|
+ bottomData: {},
|
|
|
+ zhuantaiEData: {},
|
|
|
+ sheBeiweiHuData: {},
|
|
|
+ config: {},
|
|
|
+ zichan: 0,
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
@@ -122,7 +131,8 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
- allView() { // 默认显示全屏
|
|
|
+ allView() {
|
|
|
+ // 默认显示全屏
|
|
|
screenfull.request();
|
|
|
},
|
|
|
goBack() {
|
|
|
@@ -130,23 +140,33 @@ export default {
|
|
|
},
|
|
|
updateAll(e) {
|
|
|
// this.getSheBeiMony();
|
|
|
+ this.getCarouselShiYonglvTable();
|
|
|
this.getTopBarData();
|
|
|
this.getMiddleLeftPieView();
|
|
|
this.getCarouselTable();
|
|
|
// this.getbottomData();
|
|
|
},
|
|
|
- async getTopBarData(){
|
|
|
+ async getTopBarData() {
|
|
|
let this_ = this;
|
|
|
-
|
|
|
- this.MiddleLeftPieViewList={ data:[], config:{idSelector:"main"}, color:[]};
|
|
|
- this.eBgRateData = { data:[],config:{}};
|
|
|
- this.sheBeiHeChaData = { data:[], config:{}};
|
|
|
- this.jianDingjiaoZhunSheBeiData = { data:[], config:{}};
|
|
|
- this.weiHuSheBeiData = {data:[],config:{}};
|
|
|
- this.bottomData = {xData:[],data:[],config:{idSelector:""}};
|
|
|
- this.zhuantaiEData = {xData:[],data:[],config:{idSelector:""}};
|
|
|
- this.sheBeiweiHuData ={xData:[],data:[],config:{idSelector:""}};
|
|
|
- let sql =`select a.Equipments,a1.mony,b.addEquipments,c.testEquipments,c1.testNoEquipments,d.checkEquipments,
|
|
|
+
|
|
|
+ this.MiddleLeftPieViewList = {
|
|
|
+ data: [],
|
|
|
+ config: { idSelector: "main" },
|
|
|
+ rowNum: 6,
|
|
|
+ color: [],
|
|
|
+ };
|
|
|
+ this.eBgRateData = { data: [], config: {} };
|
|
|
+ this.sheBeiHeChaData = { data: [], config: {} };
|
|
|
+ this.jianDingjiaoZhunSheBeiData = { data: [], config: {} };
|
|
|
+ this.weiHuSheBeiData = { data: [], config: {} };
|
|
|
+ this.bottomData = { xData: [], data: [], config: { idSelector: "" } };
|
|
|
+ this.zhuantaiEData = { xData: [], data: [], config: { idSelector: "" } };
|
|
|
+ this.sheBeiweiHuData = {
|
|
|
+ xData: [],
|
|
|
+ data: [],
|
|
|
+ config: { idSelector: "" },
|
|
|
+ };
|
|
|
+ let sql = `select a.Equipments,a1.mony,b.addEquipments,c.testEquipments,c1.testNoEquipments,d.checkEquipments,
|
|
|
d1.checkNoEquipments,e.goodEquipments,f.scrapEquipments,g.limitedEquipments,h.weiHuNoEquipments,h1.weiHuEquipments
|
|
|
from
|
|
|
(select count(*) as Equipments from t_sbdj) as a,
|
|
|
@@ -161,228 +181,309 @@ export default {
|
|
|
(select count(*) as limitedEquipments from t_sbdj where she_bei_zhuang_ta ='限制使用' or she_bei_zhuang_ta ='备用') as g,
|
|
|
(select count(*) as weiHuNoEquipments from t_mjsbwhjhzb where create_time_ LIKE '${this_.month}') as h,
|
|
|
(select count(*) as weiHuEquipments from t_mjsbwhbyjlby where create_time_ LIKE '${this_.month}' and shi_fou_guo_shen_ ='1') as h1`;
|
|
|
- await curdPost("sql",sql).then(res=>{
|
|
|
- const data = res.variables.data
|
|
|
- let zichan = this_.getAllMonyInt(data);
|
|
|
- let eIntactnessRate = Number((((data[0].goodEquipments/data[0].Equipments).toFixed(4))*100+"").slice(0,5));
|
|
|
- let eBadRate =Number((( (100 - eIntactnessRate).toFixed(4))+"").slice(0,4));
|
|
|
- let obj ={};
|
|
|
- obj.value = Number(((data[0].goodEquipments/data[0].Equipments).toFixed(4)*100+"").slice(0,5));
|
|
|
- obj.name = "正常设备";
|
|
|
- this_.MiddleLeftPieViewList.data.push(obj);
|
|
|
- obj ={};
|
|
|
- obj.value =Number(((data[0].limitedEquipments/data[0].Equipments).toFixed(4)*100+"").slice(0,5));
|
|
|
- obj.name = "备用设备";
|
|
|
- this_.MiddleLeftPieViewList.data.push(obj);
|
|
|
- obj ={};
|
|
|
- obj.value = Number(((data[0].scrapEquipments/data[0].Equipments).toFixed(4)*100+"").slice(0,5));
|
|
|
- obj.name = "停用/报废";
|
|
|
- this_.MiddleLeftPieViewList.data.push(obj);
|
|
|
- this_.MiddleLeftPieViewList.color = ['#339933','#FFFF66','#FF0033'];
|
|
|
- this_.MiddleLeftPieViewList.config.title = "设备工作状态分布";
|
|
|
- this_.MiddleLeftPieViewList.config.idSelector = "main2";
|
|
|
- this_.$nextTick(()=>{
|
|
|
- setTimeout(() => {
|
|
|
- this_.$refs.middleCardLeft.getMiddleLeft()// hhhh xxxx
|
|
|
- }, 1000)
|
|
|
- })
|
|
|
- obj ={};
|
|
|
- let result =[
|
|
|
- {
|
|
|
- title: '',
|
|
|
- children: [
|
|
|
- {
|
|
|
- label: '设备总数',
|
|
|
- value: data[0].Equipments,
|
|
|
- danwei:'台'
|
|
|
- },
|
|
|
- {
|
|
|
- label: '新增设备',
|
|
|
- value: data[0].addEquipments,
|
|
|
- danwei:'台'
|
|
|
- },
|
|
|
- {
|
|
|
- label: '正常设备',
|
|
|
- value: data[0].goodEquipments,
|
|
|
- danwei:'台'
|
|
|
- },
|
|
|
- {
|
|
|
- label: '报废/停用设备',
|
|
|
- value: data[0].scrapEquipments,
|
|
|
- danwei:'台'
|
|
|
- },
|
|
|
- {
|
|
|
- label: '受限设备',
|
|
|
- value: data[0].limitedEquipments,
|
|
|
- danwei:'台'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- title: '',
|
|
|
- children: [
|
|
|
- {
|
|
|
- label: '计划维护设备',
|
|
|
- value: data[0].weiHuNoEquipments,
|
|
|
- danwei:'台'
|
|
|
- },
|
|
|
- {
|
|
|
- label: '已维护设备',
|
|
|
- value: data[0].weiHuEquipments,
|
|
|
- danwei:'台'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- title: '',
|
|
|
- children: [
|
|
|
+ await curdPost("sql", sql)
|
|
|
+ .then((res) => {
|
|
|
+ const data = res.variables.data;
|
|
|
+ let zichan = this_.getAllMonyInt(data);
|
|
|
+ zichan = zichan +''
|
|
|
+ zichan =zichan.substring(0,zichan.length-4)
|
|
|
+ let eIntactnessRate = Number(
|
|
|
+ (
|
|
|
+ (data[0].goodEquipments / data[0].Equipments).toFixed(2) * 100 +
|
|
|
+ ""
|
|
|
+ ).slice(0, 5)
|
|
|
+ );
|
|
|
+ let eBadRate = Number(
|
|
|
+ ((100 - eIntactnessRate).toFixed(4) + "").slice(0, 4)
|
|
|
+ );
|
|
|
+ let obj = {};
|
|
|
+ obj.value = Number(
|
|
|
+ (
|
|
|
+ (data[0].goodEquipments / data[0].Equipments).toFixed(4) * 100 +
|
|
|
+ ""
|
|
|
+ ).slice(0, 5)
|
|
|
+ );
|
|
|
+ obj.name = "正常设备数";
|
|
|
+ this_.MiddleLeftPieViewList.data.push(obj);
|
|
|
+ obj = {};
|
|
|
+ obj.value = Number(
|
|
|
+ (
|
|
|
+ (data[0].limitedEquipments / data[0].Equipments).toFixed(4) *
|
|
|
+ 100 +
|
|
|
+ ""
|
|
|
+ ).slice(0, 5)
|
|
|
+ );
|
|
|
+ obj.name = "受限设备数";
|
|
|
+ this_.MiddleLeftPieViewList.data.push(obj);
|
|
|
+ obj = {};
|
|
|
+ obj.value = Number(
|
|
|
+ (
|
|
|
+ (data[0].scrapEquipments / data[0].Equipments).toFixed(4) * 100 +
|
|
|
+ ""
|
|
|
+ ).slice(0, 5)
|
|
|
+ );
|
|
|
+ obj.name = "停用/报废";
|
|
|
+ this_.MiddleLeftPieViewList.data.push(obj);
|
|
|
+ this_.MiddleLeftPieViewList.color = ["#339933", "#FFFF66", "#FF0033"];
|
|
|
+ this_.MiddleLeftPieViewList.config.title = "设备工作状态情况";
|
|
|
+ this_.MiddleLeftPieViewList.config.idSelector = "main2";
|
|
|
+ this_.$nextTick(() => {
|
|
|
+ // setTimeout(() => {
|
|
|
+ // this_.$refs.middleCardLeft.getMiddleLeft(); // hhhh xxxx
|
|
|
+ // }, 1000)
|
|
|
+ });
|
|
|
+ obj = {};
|
|
|
+ let result = [
|
|
|
{
|
|
|
- label: '计划检定/校准设备',
|
|
|
- value: data[0].testNoEquipments,
|
|
|
- danwei:'台'
|
|
|
+ title: "",
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ label: "设备总数",
|
|
|
+ value: data[0].Equipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "新增数",
|
|
|
+ value: data[0].addEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "正常数",
|
|
|
+ value: data[0].goodEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ label: "受限数",
|
|
|
+ value: data[0].limitedEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "报废/停用数",
|
|
|
+ value: data[0].scrapEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ ],
|
|
|
},
|
|
|
{
|
|
|
- label: '已检定/校准设备',
|
|
|
- value: data[0].testEquipments,
|
|
|
- danwei:'台'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- title: '',
|
|
|
- children: [
|
|
|
- {
|
|
|
- label: '计划核查设备',
|
|
|
- value: data[0].checkNoEquipments,
|
|
|
- danwei:'台'
|
|
|
+ title: "",
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ label: "计划维护数",
|
|
|
+ value: data[0].weiHuNoEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "已维护数",
|
|
|
+ value: data[0].weiHuEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ ],
|
|
|
},
|
|
|
{
|
|
|
- label: '本月已核查设备',
|
|
|
- value: data[0].checkEquipments,
|
|
|
- danwei:'台'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- title: '',
|
|
|
- children: [
|
|
|
- {
|
|
|
- label: '设备完好率',
|
|
|
- value: eIntactnessRate,
|
|
|
- danwei:'%'
|
|
|
+ title: "",
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ label: "计划检定/校准数",
|
|
|
+ value: data[0].testNoEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "已检定/校准数",
|
|
|
+ value: data[0].testEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ ],
|
|
|
},
|
|
|
{
|
|
|
- label: '设备故障率',
|
|
|
- value: eBadRate,
|
|
|
- danwei:'%'
|
|
|
+ title: "",
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ label: "本月计划核查数",
|
|
|
+ value: data[0].checkNoEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "本月已核查数",
|
|
|
+ value: data[0].checkEquipments,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ ],
|
|
|
},
|
|
|
{
|
|
|
- label: '设备总值',
|
|
|
- value:zichan,
|
|
|
- danwei:'元'
|
|
|
+ title: "",
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ label: "完好率",
|
|
|
+ value: eIntactnessRate,
|
|
|
+ danwei: "%",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "故障率",
|
|
|
+ value: eBadRate,
|
|
|
+ danwei: "%",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "总值(万元)",
|
|
|
+ value: zichan,
|
|
|
+ danwei: "",
|
|
|
+ },
|
|
|
+ ],
|
|
|
},
|
|
|
- ]
|
|
|
- }
|
|
|
- ];
|
|
|
- //
|
|
|
- this_.bottomData.xData =["计划核查设备","已核查设备"];
|
|
|
- this_.bottomData.data.push(data[0].checkNoEquipments);
|
|
|
- this_.bottomData.data.push(data[0].checkEquipments);
|
|
|
- this_.bottomData.config.title ="核查设备柱状图";
|
|
|
- this_.bottomData.config.idSelector ="main4";
|
|
|
- // this_.$nextTick(()=>{
|
|
|
- // setTimeout(() => {
|
|
|
-
|
|
|
- // }, 1000)
|
|
|
- // })
|
|
|
- this_.zhuantaiEData.xData =["计划检定/校准设备","已完成检定/校准设备",];
|
|
|
- this_.zhuantaiEData.data.push(data[0].testNoEquipments);
|
|
|
- this_.zhuantaiEData.data.push(data[0].testEquipments);
|
|
|
- this_.zhuantaiEData.config.title ="设备检定/校准设备柱状图";
|
|
|
- this_.zhuantaiEData.config.idSelector ="main3";
|
|
|
- //维护设备柱状图
|
|
|
- this_.sheBeiweiHuData.xData =["计划维护设备","已完成设备",];
|
|
|
- this_.sheBeiweiHuData.data.push(data[0].weiHuNoEquipments);
|
|
|
- this_.sheBeiweiHuData.data.push(data[0].weiHuEquipments);
|
|
|
- this_.sheBeiweiHuData.config.title ="设备维护柱状图";
|
|
|
- this_.sheBeiweiHuData.config.idSelector ="mainWeiHuZ";
|
|
|
- this_.$nextTick(()=>{
|
|
|
- setTimeout(() => {
|
|
|
- this_.$refs.zhuantaiEDataref.getMiddleLeft()// hhhh xxxx
|
|
|
- this_.$refs.bottomCardLeft.getMiddleLeft()// hhhh xxxx
|
|
|
- this_.$refs.sheBeiWeiHuDataref.getMiddleLeft();
|
|
|
- }, 1000)
|
|
|
- })
|
|
|
-
|
|
|
- let objRate = {};
|
|
|
- objRate.name ="设备完好率";
|
|
|
- objRate.value = eIntactnessRate;
|
|
|
- this_.eBgRateData.data.push(objRate);
|
|
|
- objRate ={};
|
|
|
- objRate.value = eBadRate;
|
|
|
- objRate.name = "设备故障率";
|
|
|
- this_.eBgRateData.data.push(objRate);
|
|
|
- this_.eBgRateData.color = ['#339933','#FF0033'];
|
|
|
- this_.eBgRateData.config.title = "设备工作状态分布";
|
|
|
- this_.eBgRateData.config.idSelector = "main1";
|
|
|
- //设备维护
|
|
|
- let objweihu ={};
|
|
|
- objweihu.name ="计划维护设备";
|
|
|
- objweihu.value = data[0].weiHuNoEquipments;
|
|
|
- this_.weiHuSheBeiData.data.push(objweihu);
|
|
|
- objweihu ={};
|
|
|
- objweihu.value = data[0].weiHuEquipments;
|
|
|
- objweihu.name = "已维护设备";
|
|
|
- this_.weiHuSheBeiData.data.push(objweihu);
|
|
|
- this_.weiHuSheBeiData.color = ['#5470c6','#38a838'];
|
|
|
- this_.weiHuSheBeiData.config.title = "设备维护分布";
|
|
|
- this_.weiHuSheBeiData.config.idSelector = "mainWeiHu";
|
|
|
- //设备核查
|
|
|
- let objHeCha ={};
|
|
|
- objHeCha.name ="计划核查设备";
|
|
|
- objHeCha.value = data[0].checkNoEquipments;
|
|
|
- this_.sheBeiHeChaData.data.push(objHeCha);
|
|
|
- objHeCha ={};
|
|
|
- objHeCha.value = data[0].checkEquipments;
|
|
|
- objHeCha.name = "已核查设备";
|
|
|
- this_.sheBeiHeChaData.data.push(objHeCha);
|
|
|
- this_.sheBeiHeChaData.color = ['#5470c6','#38a838'];
|
|
|
- this_.sheBeiHeChaData.config.title = "设备核查分布";
|
|
|
- this_.sheBeiHeChaData.config.idSelector = "mainHeCha";
|
|
|
- //设备检定校准
|
|
|
- let objJianding ={};
|
|
|
- objJianding.name ="计划检定/校准设备";
|
|
|
- objJianding.value = data[0].testNoEquipments;
|
|
|
- this_.jianDingjiaoZhunSheBeiData.data.push(objJianding);
|
|
|
- objJianding ={};
|
|
|
- objJianding.value = data[0].testEquipments;
|
|
|
- objJianding.name = "已完成设备";
|
|
|
- this_.jianDingjiaoZhunSheBeiData.data.push(objJianding);
|
|
|
- this_.jianDingjiaoZhunSheBeiData.color = ['#5470c6','#38a838'];
|
|
|
- this_.jianDingjiaoZhunSheBeiData.config.title = "设备检定校准分布";
|
|
|
- this_.jianDingjiaoZhunSheBeiData.config.idSelector = "mainJianDing";
|
|
|
- this_.$nextTick(()=>{
|
|
|
- setTimeout(() => {
|
|
|
- this_.$refs.middleCardCenter.getMiddleLeft();// hhhh xxxx
|
|
|
- this_.$refs.sheBeiHeChaRef.getMiddleLeft();//
|
|
|
- this_.$refs.jiandingRef.getMiddleLeft();
|
|
|
- }, 1000)
|
|
|
- })
|
|
|
- objRate = {};
|
|
|
- this_.topBarData = result;
|
|
|
- }).catch(err=>{
|
|
|
- console.log(err)
|
|
|
- })
|
|
|
+ ];
|
|
|
+ //
|
|
|
+ this_.bottomData.xData = ["本月计划核查数", "本月已核查数"];
|
|
|
+ this_.bottomData.data.push(data[0].checkNoEquipments);
|
|
|
+ this_.bottomData.data.push(data[0].checkEquipments);
|
|
|
+ this_.bottomData.config.title = "核查设备完成图";
|
|
|
+ this_.bottomData.config.idSelector = "main4";
|
|
|
+ // this_.$nextTick(()=>{
|
|
|
+ // setTimeout(() => {
|
|
|
+
|
|
|
+ // }, 1000)
|
|
|
+ // })
|
|
|
+ this_.zhuantaiEData.xData = [
|
|
|
+ "计划检定/校准数",
|
|
|
+ "已完成检定/校准数",
|
|
|
+ ];
|
|
|
+ this_.zhuantaiEData.data.push(data[0].testNoEquipments);
|
|
|
+ this_.zhuantaiEData.data.push(data[0].testEquipments);
|
|
|
+ this_.zhuantaiEData.config.title = "检定/校准设备完成图";
|
|
|
+ this_.zhuantaiEData.config.idSelector = "main3";
|
|
|
+ //维护设备数柱状图
|
|
|
+ this_.sheBeiweiHuData.xData = ["计划维护数", "已完成数"];
|
|
|
+ this_.sheBeiweiHuData.data.push(data[0].weiHuNoEquipments);
|
|
|
+ this_.sheBeiweiHuData.data.push(data[0].weiHuEquipments);
|
|
|
+ this_.sheBeiweiHuData.config.title = "设备维护柱状图";
|
|
|
+ this_.sheBeiweiHuData.config.idSelector = "mainWeiHuZ";
|
|
|
+ this_.$nextTick(() => {
|
|
|
+ // setTimeout(() => {
|
|
|
+ // this_.$refs.zhuantaiEDataref.getMiddleLeft(); // hhhh xxxx
|
|
|
+ // this_.$refs.bottomCardLeft.getMiddleLeft(); // hhhh xxxx
|
|
|
+ // this_.$refs.sheBeiWeiHuDataref.getMiddleLeft();
|
|
|
+ // }, 1000)
|
|
|
+ });
|
|
|
+
|
|
|
+ let objRate = {};
|
|
|
+ objRate.name = "完好率";
|
|
|
+ objRate.value =eIntactnessRate;
|
|
|
+ this_.eBgRateData.data.push(objRate);
|
|
|
+ objRate = {};
|
|
|
+ objRate.value =eBadRate;
|
|
|
+ objRate.name = "故障率";
|
|
|
+ this_.eBgRateData.data.push(objRate);
|
|
|
+ this_.eBgRateData.color = ["#339933", "#FF0033"];
|
|
|
+ this_.eBgRateData.config.title = "设备工作状态完成率";
|
|
|
+ this_.eBgRateData.config.idSelector = "main1";
|
|
|
+ //设备数维护
|
|
|
+ let objweihu = {};
|
|
|
+ objweihu.name = "计划维护数";
|
|
|
+ objweihu.value = data[0].weiHuNoEquipments;
|
|
|
+ this_.weiHuSheBeiData.data.push(objweihu);
|
|
|
+ objweihu = {};
|
|
|
+ objweihu.value = data[0].weiHuEquipments;
|
|
|
+ objweihu.name = "已维护数";
|
|
|
+ this_.weiHuSheBeiData.data.push(objweihu);
|
|
|
+ this_.weiHuSheBeiData.color = ["#5470c6", "#38a838"];
|
|
|
+ this_.weiHuSheBeiData.config.title = "设备维护完成率";
|
|
|
+ this_.weiHuSheBeiData.config.idSelector = "mainWeiHu";
|
|
|
+ //设备数核查
|
|
|
+ let objHeCha = {};
|
|
|
+ objHeCha.name = "本月计划核查数";
|
|
|
+ objHeCha.value = data[0].checkNoEquipments;
|
|
|
+ this_.sheBeiHeChaData.data.push(objHeCha);
|
|
|
+ objHeCha = {};
|
|
|
+ objHeCha.value = data[0].checkEquipments;
|
|
|
+ objHeCha.name = "本月已核查数";
|
|
|
+ this_.sheBeiHeChaData.data.push(objHeCha);
|
|
|
+ this_.sheBeiHeChaData.color = ["#5470c6", "#38a838"];
|
|
|
+ this_.sheBeiHeChaData.config.title = "设备核查完成率";
|
|
|
+ this_.sheBeiHeChaData.config.idSelector = "mainHeCha";
|
|
|
+ //设备数检定校准
|
|
|
+ let objJianding = {};
|
|
|
+ objJianding.name = "计划检定/校准数";
|
|
|
+ objJianding.value = data[0].testNoEquipments;
|
|
|
+ this_.jianDingjiaoZhunSheBeiData.data.push(objJianding);
|
|
|
+ objJianding = {};
|
|
|
+ objJianding.value = data[0].testEquipments;
|
|
|
+ objJianding.name = "已完成数";
|
|
|
+ this_.jianDingjiaoZhunSheBeiData.data.push(objJianding);
|
|
|
+ this_.jianDingjiaoZhunSheBeiData.color = ["#5470c6", "#38a838"];
|
|
|
+ this_.jianDingjiaoZhunSheBeiData.config.title = "设备检定/校准完成率";
|
|
|
+ this_.jianDingjiaoZhunSheBeiData.config.idSelector = "mainJianDing";
|
|
|
+ this_.$nextTick(() => {
|
|
|
+ // setTimeout(() => {
|
|
|
+ // this_.$refs.middleCardCenter.getMiddleLeft();// hhhh xxxx
|
|
|
+ // this_.$refs.sheBeiHeChaRef.getMiddleLeft();//
|
|
|
+ // this_.$refs.jiandingRef.getMiddleLeft();
|
|
|
+ // }, 1000)
|
|
|
+ });
|
|
|
+ objRate = {};
|
|
|
+ this_.topBarData = result;
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ console.log(err);
|
|
|
+ });
|
|
|
},
|
|
|
- getMiddleLeftPieView(){
|
|
|
+ getMiddleLeftPieView() {
|
|
|
// [ { value: 1048, name: 'Search Engine' },]
|
|
|
- console.log()
|
|
|
+ console.log();
|
|
|
},
|
|
|
- async getCarouselTable() {
|
|
|
- this.config={ header:['设备名称','设备编号','规格型号','设备状态'],data:[]};
|
|
|
+ async getCarouselShiYonglvTable() {
|
|
|
+ let this_ = this;
|
|
|
+ // const sql = `select she_bei_ming_chen,she_bei_bian_hao_ ,create_time_,she_bei_zhuang_ku,COUNT(*) AS pinlv FROM t_mjsbsy GROUP BY she_bei_bian_hao_ HAVING create_time_ LIKE '${this.month}%' ORDER BY pinlv DESC`;
|
|
|
+ const sql = `select a.she_bei_ming_chen ,a.create_time_,a.shi_yong_qian_qin,b.name_,c.cun_fang_di_dian_,COUNT(*) AS pinlv FROM t_yqsbsydjb as a join ibps_party_employee as b on a.shi_yong_ren_ = b.ID_ join t_sbdj as c on a.yi_qi_bian_hao_ = c.id_ GROUP BY create_time_ HAVING create_time_ LIKE '${this.month}%' ORDER BY pinlv DESC`;
|
|
|
+ console.log(sql, "设备使用");
|
|
|
+ let data1 = [];
|
|
|
+ let res1 = [];
|
|
|
+ this_.shiyonglvConfig.data = [];
|
|
|
+ await curdPost("sql", sql)
|
|
|
+ .then((res) => {
|
|
|
+ const result = res.variables.data;
|
|
|
+ result.forEach((item) => {
|
|
|
+ data1 = [];
|
|
|
+ data1.push(item.she_bei_ming_chen);
|
|
|
+ data1.push(item.name_);
|
|
|
+ data1.push(this_.timestampToTime(item.create_time_ / 1000));
|
|
|
+ data1.push(item.cun_fang_di_dian_);
|
|
|
+ // data1.push(item.create_time_);
|
|
|
+ data1.push(item.shi_yong_qian_qin);
|
|
|
+ data1.push(item.pinlv);
|
|
|
+ this_.shiyonglvConfig.data.push(data1);
|
|
|
+ // this_.$forceUpdate()
|
|
|
+ });
|
|
|
|
|
|
+ // console.log(this_.shiyonglvConfig.data);
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ console.log(err);
|
|
|
+ });
|
|
|
+ this.isup = true;
|
|
|
+ },
|
|
|
+ timestampToTime(timestamp) {
|
|
|
+ var date = new Date(timestamp * 1000);
|
|
|
+ var Y = date.getFullYear() + "-";
|
|
|
+ var M =
|
|
|
+ (date.getMonth() + 1 < 10
|
|
|
+ ? "0" + (date.getMonth() + 1)
|
|
|
+ : date.getMonth() + 1) + "-";
|
|
|
+ var D =
|
|
|
+ (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " ";
|
|
|
+ var h = date.getHours() + ":";
|
|
|
+ var m = date.getMinutes() + ":";
|
|
|
+ var s = date.getSeconds();
|
|
|
+ return Y + M + D;
|
|
|
+ },
|
|
|
+ async getCarouselTable() {
|
|
|
+ this.config = {
|
|
|
+ header: ["设备名称", "编号", "状态"],
|
|
|
+ columnWidth: ["135","125", "50"],
|
|
|
+ rowNum: 6,
|
|
|
+ data: [],
|
|
|
+ };
|
|
|
let this_ = this;
|
|
|
- const sql = "select * from t_sbdj where she_bei_zhuang_ta ='停用' or she_bei_zhuang_ta ='报废' or she_bei_zhuang_ta ='报废/停用'";
|
|
|
+ const sql =
|
|
|
+ "select * from t_sbdj where she_bei_zhuang_ta ='停用' or she_bei_zhuang_ta ='报废' or she_bei_zhuang_ta ='报废/停用'";
|
|
|
let data1 = [];
|
|
|
await curdPost("sql", sql)
|
|
|
.then((res) => {
|
|
|
@@ -391,7 +492,7 @@ export default {
|
|
|
data1 = [];
|
|
|
data1.push(item.she_bei_ming_cheng_);
|
|
|
data1.push(item.she_bei_shi_bie_h);
|
|
|
- data1.push(item.gui_ge_xing_hao_);
|
|
|
+ // data1.push(item.gui_ge_xing_hao_);
|
|
|
data1.push(item.she_bei_zhuang_ta);
|
|
|
this_.config.data.push(data1);
|
|
|
});
|
|
|
@@ -400,16 +501,15 @@ export default {
|
|
|
console.log(err);
|
|
|
});
|
|
|
},
|
|
|
- getAllMonyInt (monyArr){
|
|
|
+ getAllMonyInt(monyArr) {
|
|
|
let mony = 0;
|
|
|
- let filterMony
|
|
|
- monyArr.forEach(item=>{
|
|
|
- if(item.mony.includes("元")){
|
|
|
- filterMony = item.mony.slice(0,item.mony.length-1)*1;
|
|
|
- mony +=filterMony
|
|
|
+ let filterMony;
|
|
|
+ monyArr.forEach((item) => {
|
|
|
+ if (item.mony.includes("元")) {
|
|
|
+ filterMony = item.mony.slice(0, item.mony.length - 1) * 1;
|
|
|
+ mony += filterMony;
|
|
|
}
|
|
|
-
|
|
|
- })
|
|
|
+ });
|
|
|
// console.log(mony.toFixed(2))
|
|
|
// return mony.toFixed(2);
|
|
|
return mony;
|
|
|
@@ -436,43 +536,43 @@ export default {
|
|
|
position: absolute;
|
|
|
color: #fff;
|
|
|
z-index: 999;
|
|
|
- #dv-full-screen-container {
|
|
|
- background-image: url("./img/bg.png");
|
|
|
- background-size: 100% 100%;
|
|
|
- box-shadow: 0 0 3px blue;
|
|
|
- display: flex;
|
|
|
- flex-direction: column;
|
|
|
- }
|
|
|
- .main-content {
|
|
|
- flex: 1;
|
|
|
- display: flex;
|
|
|
- flex-direction: column;
|
|
|
- }
|
|
|
+ #dv-full-screen-container {
|
|
|
+ background-image: url("./img/bg.png");
|
|
|
+ background-size: 100% 100%;
|
|
|
+ box-shadow: 0 0 3px blue;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ }
|
|
|
+ .main-content {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ }
|
|
|
+
|
|
|
+ .block-left-right-content {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ margin-top: 0.8%;
|
|
|
+ }
|
|
|
+ .block-top-bottom-content {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding-left: 0.8%;
|
|
|
+ }
|
|
|
+ .block-top-content {
|
|
|
+ height: 55%;
|
|
|
+ display: flex;
|
|
|
+ flex-grow: 0;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding-bottom: 0.8%;
|
|
|
+ }
|
|
|
|
|
|
- .block-left-right-content {
|
|
|
- flex: 1;
|
|
|
- display: flex;
|
|
|
- margin-top: 0.8%;
|
|
|
- }
|
|
|
- .block-top-bottom-content {
|
|
|
- flex: 1;
|
|
|
- display: flex;
|
|
|
- flex-direction: column;
|
|
|
- box-sizing: border-box;
|
|
|
- padding-left: 0.8%;
|
|
|
- }
|
|
|
- .block-top-content {
|
|
|
- height: 55%;
|
|
|
- display: flex;
|
|
|
- flex-grow: 0;
|
|
|
- box-sizing: border-box;
|
|
|
- padding-bottom: 0.8%;
|
|
|
- }
|
|
|
-
|
|
|
.header {
|
|
|
position: relative;
|
|
|
width: 100%;
|
|
|
- height: 9%;
|
|
|
+ height: 10%;
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
|
flex-shrink: 0;
|
|
|
@@ -517,73 +617,81 @@ export default {
|
|
|
.back {
|
|
|
left: 75%;
|
|
|
}
|
|
|
- }
|
|
|
- .topCard{
|
|
|
+ }
|
|
|
+ .topCard {
|
|
|
width: 100%;
|
|
|
- height: 20%;
|
|
|
+ height: 18%;
|
|
|
box-sizing: border-box;
|
|
|
overflow: hidden;
|
|
|
}
|
|
|
- .bottomCard{
|
|
|
- height: 37%;
|
|
|
- overflow: hidden;
|
|
|
- box-sizing: border-box;
|
|
|
+ .bottomCard {
|
|
|
+ height: 36%;
|
|
|
+ overflow: hidden;
|
|
|
+ box-sizing: border-box;
|
|
|
}
|
|
|
- .middleCard{
|
|
|
- height:40%;
|
|
|
+ .middleCard {
|
|
|
+ height: 38%;
|
|
|
overflow: hidden;
|
|
|
box-sizing: border-box;
|
|
|
}
|
|
|
- .middleCard,.bottomCard{
|
|
|
- width: 100%;
|
|
|
+ .middleCard,
|
|
|
+ .bottomCard {
|
|
|
+ width: 96%;
|
|
|
margin-left: 30px;
|
|
|
// margin-top: 30px;
|
|
|
- div{
|
|
|
- display: inline-block;
|
|
|
+ div {
|
|
|
+ display: inline-block;
|
|
|
}
|
|
|
- .middleCardLeft{
|
|
|
- width: 25%;
|
|
|
+ .middleCardLeft {
|
|
|
+ width: 26%;
|
|
|
height: 100%;
|
|
|
+ box-sizing: border-box;
|
|
|
+ overflow: hidden;
|
|
|
}
|
|
|
- .middleCardCenter{
|
|
|
- width: 25%;
|
|
|
+ // .middleCardCenter{
|
|
|
+ // width: 25%;
|
|
|
+ // height: 100%;
|
|
|
+ // box-sizing: border-box;
|
|
|
+ // overflow: hidden;
|
|
|
+ // }
|
|
|
+ .middleCardRight {
|
|
|
+ width: 26%;
|
|
|
height: 100%;
|
|
|
+ box-sizing: border-box;
|
|
|
+ overflow: hidden;
|
|
|
}
|
|
|
- .middleCardRight{
|
|
|
- width: 43%;
|
|
|
+ .middleCardRight1 {
|
|
|
+ width: 44%;
|
|
|
height: 100%;
|
|
|
+ box-sizing: border-box;
|
|
|
+ overflow: hidden;
|
|
|
}
|
|
|
- // .middleCardRight1{
|
|
|
- // width: 45%;
|
|
|
- // }
|
|
|
padding: 2px;
|
|
|
}
|
|
|
- .bottomCard{
|
|
|
+ .bottomCard {
|
|
|
display: flex;
|
|
|
- div{
|
|
|
+ div {
|
|
|
display: inline-block;
|
|
|
}
|
|
|
- .bottomCardLeft0,.bottomCardLeft,.bottomCardright{
|
|
|
- width: 70%;
|
|
|
+ .bottomCardLeft0,
|
|
|
+ .bottomCardLeft {
|
|
|
+ height: 100%;
|
|
|
+ overflow: hidden;
|
|
|
+ box-sizing: border-box;
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
+ .bottomCardLeft {
|
|
|
+ height: 100%;
|
|
|
+ overflow: hidden;
|
|
|
+ box-sizing: border-box;
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
+ .bottomCardright {
|
|
|
+ height: 100%;
|
|
|
+ overflow: hidden;
|
|
|
+ box-sizing: border-box;
|
|
|
+ width: 100%;
|
|
|
}
|
|
|
- // .bottomCardCenter0{
|
|
|
-
|
|
|
- // }
|
|
|
- // .bottomCardLeft{
|
|
|
-
|
|
|
- // margin-left: 30px;
|
|
|
- // }
|
|
|
- // .bottomCardCenter{
|
|
|
- // margin-left: 15px;
|
|
|
- // }
|
|
|
- // .bottomCardright{
|
|
|
-
|
|
|
- // margin-left: 15px;
|
|
|
- // }
|
|
|
- // .bottomCardright2{
|
|
|
-
|
|
|
- // margin-left: 15px;
|
|
|
- // }
|
|
|
}
|
|
|
}
|
|
|
.dv-decoration-10 {
|