|
|
@@ -1,178 +0,0 @@
|
|
|
-<template>
|
|
|
- <div>
|
|
|
- <Chart :cdata="cdata" />
|
|
|
- </div>
|
|
|
-</template>
|
|
|
-
|
|
|
-<script>
|
|
|
-import Chart from './chart.vue'
|
|
|
-export default {
|
|
|
- data () {
|
|
|
- return {
|
|
|
- drawTiming: null,
|
|
|
- cdata: {
|
|
|
- year: null,
|
|
|
- weekCategory: [],
|
|
|
- radarData: [],
|
|
|
- radarDataAvg: [],
|
|
|
- maxData: 100,
|
|
|
- minData: 100,
|
|
|
- weekMaxData: [],
|
|
|
- weekLineData: [],
|
|
|
- goalData :0, //目标值
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- components: {
|
|
|
- Chart,
|
|
|
- },
|
|
|
- mounted () {
|
|
|
- this.drawTimingFn();
|
|
|
- },
|
|
|
- beforeDestroy () {
|
|
|
- clearInterval(this.drawTiming);
|
|
|
- clearInterval(this.intervalId);
|
|
|
- this.chart.dispose()
|
|
|
- this.chart.clear()
|
|
|
- this.chart=null
|
|
|
- },
|
|
|
- methods: {
|
|
|
- drawTimingFn () {
|
|
|
- this.setData();
|
|
|
- if (this.intervalId !== null) {
|
|
|
- clearInterval(this.intervalId);
|
|
|
- }
|
|
|
- this.drawTiming = setInterval(() => {
|
|
|
- this.setData();
|
|
|
- }, 20000);
|
|
|
- },
|
|
|
- async setData () {
|
|
|
- // 清空轮询数据
|
|
|
- /*this.cdata.weekCategory = [];
|
|
|
- this.cdata.weekMaxData = [];
|
|
|
- this.cdata.weekLineData = [];
|
|
|
- this.cdata.radarData = [];
|
|
|
- this.cdata.radarDataAvg = [];*/
|
|
|
-
|
|
|
- let dateBase = new Date();
|
|
|
- this.cdata.year = dateBase.getFullYear();
|
|
|
- this.cdata.nowdate = (dateBase.getMonth() + 1 < 10 ? "0" + (dateBase.getMonth() + 1) : dateBase.getMonth() + 1)
|
|
|
- +"/"
|
|
|
- +(dateBase.getDate() < 10 ? "0" + (dateBase.getDate() ) : dateBase.getDate() );
|
|
|
- //良率直通图
|
|
|
- var caller1 = 'DAYTURNOUT!ZZ';
|
|
|
- if (sessionStorage.getItem('li_code') == '所有'){
|
|
|
- caller1 = 'ZZ!DAYTURNOUT!ALL';
|
|
|
- }
|
|
|
- await this.$http.get("kanban/datalist.action?caller="+caller1+"&_noc=1&page=1&pageSize=100",{
|
|
|
- params: {
|
|
|
- condition: "1=1",
|
|
|
- }
|
|
|
- }).then((result)=>{
|
|
|
- let dataList = JSON.parse(result.data.data);
|
|
|
- let weekCategory = new Array();
|
|
|
- let weekLineData = new Array();
|
|
|
- let minDa = dataList[0].v_okrate ;
|
|
|
- let goaldata ;
|
|
|
- for (let index = 0; index < dataList.length; index++) {
|
|
|
- const element = dataList[index];
|
|
|
- //this.cdata.weekMaxData.push(this.cdata.maxData);
|
|
|
- //x轴数据日期
|
|
|
- weekCategory.push(element.v_md);
|
|
|
- //y轴数据
|
|
|
- weekLineData.push(element.v_okrate);
|
|
|
- if(element.v_okrate<minDa){
|
|
|
- minDa = element.v_okrate;
|
|
|
- }
|
|
|
- if(index == 0){
|
|
|
- goaldata = element.v_ligoaldata;
|
|
|
- }
|
|
|
- }
|
|
|
- //获取最小值,取整十的数
|
|
|
- minDa = Math.floor(minDa/10)*10;
|
|
|
- this.cdata.minData = minDa;
|
|
|
- this.cdata.weekCategory = weekCategory;
|
|
|
- this.cdata.weekLineData = weekLineData;
|
|
|
- this.cdata.goalData = goaldata;
|
|
|
- },(result)=>{
|
|
|
- console.error(result)
|
|
|
- }
|
|
|
- );
|
|
|
- //雷达图:
|
|
|
- var caller2 = 'RadiusBadDuty!ZZ';
|
|
|
- if (sessionStorage.getItem('li_code') == '所有'){
|
|
|
- caller2 = 'RadiusBadDuty!ZZ!ALL';
|
|
|
- }
|
|
|
- await this.$http.get("kanban/datalist.action?caller="+caller2+"&_noc=1&page=1&pageSize=100"
|
|
|
- ,{
|
|
|
- params: {
|
|
|
- condition: "1=1",
|
|
|
- }
|
|
|
- })
|
|
|
- .then((result)=>{
|
|
|
- let dataList = JSON.parse(result.data.data);
|
|
|
- let radarData = new Array();
|
|
|
- let radarAvgData = new Array();
|
|
|
- const element = dataList[0];
|
|
|
- //来料不良
|
|
|
- radarData.push(element.v_llrate);
|
|
|
- //制程不良
|
|
|
- radarData.push(element.v_zcrate);
|
|
|
- //设计不良
|
|
|
- radarData.push(element.v_sjrate);
|
|
|
- //其它
|
|
|
- radarData.push(element.v_othrate);
|
|
|
- this.cdata.radarData=radarData;
|
|
|
- //来料不良
|
|
|
- radarAvgData.push(element.v_llavgrate);
|
|
|
- //制程不良
|
|
|
- radarAvgData.push(element.v_zcavgrate);
|
|
|
- //设计不良
|
|
|
- radarAvgData.push(element.v_sjavgrate);
|
|
|
- //其它
|
|
|
- radarAvgData.push(element.v_othavgrate);
|
|
|
- this.cdata.radarDataAvg=radarAvgData;
|
|
|
- },(result)=>{
|
|
|
- console.error(result)
|
|
|
- }
|
|
|
- );
|
|
|
- // 周数据
|
|
|
- /*for (let i = 0; i < 7; i++) {
|
|
|
- // 日期
|
|
|
- let date = new Date();
|
|
|
- this.cdata.weekCategory.unshift([date.getMonth() + 1, date.getDate()-i].join("/"));
|
|
|
-
|
|
|
- // 折线图数据
|
|
|
- this.cdata.weekMaxData.push(this.cdata.maxData);
|
|
|
- let distance = Math.round(Math.random() * 11000 + 500);
|
|
|
- this.cdata.weekLineData.push(distance);
|
|
|
-
|
|
|
- // 雷达图数据
|
|
|
- // 我的指标
|
|
|
- let averageSpeed = +(Math.random() * 5 + 3).toFixed(3);
|
|
|
- let maxSpeed = averageSpeed + +(Math.random() * 3).toFixed(2);
|
|
|
- let hour = +(distance / 1000 / averageSpeed).toFixed(1);
|
|
|
- let radarDayData = [distance, averageSpeed, maxSpeed, hour];
|
|
|
- this.cdata.radarData.unshift(radarDayData);
|
|
|
-
|
|
|
- // 平均指标
|
|
|
- let distanceAvg = Math.round(Math.random() * 8000 + 4000);
|
|
|
- let averageSpeedAvg = +(Math.random() * 4 + 4).toFixed(3);
|
|
|
- let maxSpeedAvg = averageSpeedAvg + +(Math.random() * 2).toFixed(2);
|
|
|
- let hourAvg = +(distance / 1000 / averageSpeed).toFixed(1);
|
|
|
- let radarDayDataAvg = [
|
|
|
- distanceAvg,
|
|
|
- averageSpeedAvg,
|
|
|
- maxSpeedAvg,
|
|
|
- hourAvg
|
|
|
- ];
|
|
|
- this.cdata.radarDataAvg.unshift(radarDayDataAvg);
|
|
|
- }*/
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
-};
|
|
|
-</script>
|
|
|
-
|
|
|
-<style lang="scss" scoped>
|
|
|
-</style>
|