gaoshp
2024-04-23 7243d05010bde40a8c82b7cbbf904eeb35168cdd
src/views/mdc/status-record.vue
@@ -20,7 +20,6 @@
                        <el-button @click="btnListActive = item.id" :type="btnListActive == item.id ? 'primary' : ''" v-for="item in btnList" :key="item.id" size="small">{{item.title }}</el-button>
                    </el-button-group>
                    <div class="status">
                        <div class="feed-button" @click="table_edit">状态反馈</div>
                        <div class="status-wrap align-left">
                            <div class="collect-status">采集状态</div>
                            <div class="status-box" v-for="item in achievements"><div class="status-color" :style="{'background-color': item.color}"></div>{{ item.name }}</div>
@@ -32,7 +31,12 @@
                            </div>
                        </div>
                    </div>
                    <el-pagination layout="prev, pager, next" :total="total" :page-count="size" :default-page-size="size"/>
                    <div>
                        <div id="record" style="width: 100%;height:280px;"></div>
                    </div>
                    <div class="pagination">
                        <el-pagination layout="prev, pager, next" :total="total" :default-page-size="6"/>
                    </div>
                </el-tab-pane>
                <el-tab-pane label="按工位查看" name="time">
                    按工位查看
@@ -47,6 +51,7 @@
import MYTree from './MYTree.vue'
import Shift from './components/Shift.vue'
import Time from './components/Time.vue'
import * as echarts from 'echarts';
export default {
    components: {
       time: "",
@@ -75,6 +80,7 @@
    },
    data() {
        return {
            workstationInfoList: [],
            checked1: true,
            btnListActive: '',
            btnList: [],
@@ -115,7 +121,41 @@
         collectionstatus: [],
            current: "1",
            size: "6",
            total: 0
            total: 0,
            recordOptionLog:{
                    grid: {
                        top: '0%'
                    },
                    tooltip: {
                        //trigger: 'axis' // 触发类型,默认数据触发,可选为:'item'、'axis'
                    },
                    xAxis: {
                        boundaryGap: false,
                        type: 'category',
                        data: ['00:00:00', '04:00:00', '08:00:00', '12:00:00', '16:00:00', '20:00:00', '00:00:00'],
                    },
                    yAxis: {
                        type: 'category',
                        axisLabel: {
                            formatter: '{value}'
                        },
                        data: []
                    },
                    series: [
                        {
                            name: 'wcsLog',
                            type: 'bar',
                            data: [],
                            emphasis: {
                                itemStyle: {
                                    shadowBlur: 10,
                                    shadowOffsetX: 0,
                                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                                }
                            }
                        }
                    ]
                },
        }
    },
    created() {
@@ -148,21 +188,40 @@
                ...data
            }).then(res => {
                if (res.code === 200) {
                    this.btnList = res.data
                    var today =  moment().format('YYYY-MM-DD');
                    var yesterday = moment().subtract(1, 'days').format('YYYY-MM-DD');
                    res.data.forEach(item=> {
                        if(item.title == today) {
                            item.title = "今天";
                        }
                        if(item.title == yesterday) {
                            item.title = "昨天";
                        }
                    })
                    this.btnList = res.data.reverse();
                    this.btnListActive = res?.data?.[0]?.id
                }
            })
        },
        getCharts() {
            var obj = {
                date: this.time[0],
                //date: this.time[1],
                date: "2024-04-16",
                humanFeedback: true,
                machineFeedback: true,
                workstationInfoList: []
                workstationInfoList: this.workstationInfoList
            }
            this.$HTTP.post(`/api/blade-mdc/status-record/status-record-by-date?current=${this.current}&size=${this.size}`,obj).then(res => {
                if (res.code === 200) {
                    console.log(res.data.records)
                    console.log(res.data)
                    var myChart = echarts.init(document.getElementById('record'));
                    this.recordOptionLog.series[0].data = res.data.records.statusRecordList;
                    // var yAxis = [];
                    res.data.records.forEach(item=> {
                        item.value = item.workstationInfo.name;
                    })
                    this.recordOptionLog.yAxis.data = res.data.records;
                    myChart.setOption(this.recordOptionLog);
                    this.total = res.data.total;
                }
            })
@@ -177,13 +236,9 @@
        },
        query() {
            this.getTime({endDate: this.time[1],startDate: this.time[0],statisticalMethod: 'SHIFT'})
            // this.$refs[this.activeName].init({
            //     endDate: this.time[1],
            //     startDate: this.time[0],
            //     shiftIndexList: [1, 2],
            //     workStationIdList: [...this.treeChecked]
            // })
            this.getTime({endDate: this.time[1],startDate: this.time[0],statisticalMethod: 'SHIFT'});
            //this.getCharts();
            console.log(this.treeChecked,2)
        }
    }
}
@@ -194,6 +249,7 @@
   display: flex;
   min-height: 100%;
    height: 100%;
    overflow: hidden;
   margin: 8px;
}
.aposcope-left {
@@ -259,13 +315,6 @@
   font-size: 16px;
   cursor: pointer;
}
.feed-button {
   position: absolute;
    right: 10px;
    top: -2px;
    color: #3b8e8e;
    cursor: pointer;
}
.status-wrap.align-left, .status-wrap:first-child {
    padding-left: 24px;
}
@@ -299,4 +348,9 @@
.status-wrap /deep/ .el-checkbox.el-checkbox--large {
    color: #3b8e8e;
}
.pagination {
    text-align: right;
    display: flex;
    justify-content: end;
}
</style>