车间中间大屏显示

This commit is contained in:
ICEC 2020-07-17 13:29:49 +08:00
parent 614ac98b65
commit c85976385c
5 changed files with 225 additions and 18 deletions

View File

@ -27,6 +27,20 @@ export function getcurrent() {
}) })
} }
export function DoGetLastGroupReporterData() {
return request({
url: '/fx_dashboard/DoGetLastGroupReporterData',
method: 'get'
})
}
export function currentBoxAndGroupMonitor() {
return request({
url: '/fx_dashboard/currentBoxAndGroupMonitor',
method: 'get'
})
}
export function getDateRange(fDateStart,fDateEnd) { export function getDateRange(fDateStart,fDateEnd) {

View File

@ -2,7 +2,6 @@
<div class="dashboard-editor-container"> <div class="dashboard-editor-container">
<el-row :gutter="32"> <el-row :gutter="32">
<el-col :xs="24" :sm="12" :lg="6"> <el-col :xs="24" :sm="12" :lg="6">
<div class="ibox"> <div class="ibox">
@ -30,6 +29,78 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row style="background:#fff;padding:16px 16px 0;margin-bottom:32px;">
<el-col :xs="24" :sm="11" :lg="11">
<div class="ibox ">
<div class="ibox-title">
<b>当班信息</b>
</div>
<div class="ibox-content">
<el-table
:data="tableDataCurrentGroup"
stripe
border
style="width: 100%">
<el-table-column
prop="班长"
label="班长">
</el-table-column>
<el-table-column
prop="已完成箱数"
label="已完成箱数">
</el-table-column>
</el-table>
</div>
</div>
</el-col>
<el-col :xs="24" :sm="1" :lg="1">
<h1></h1>
</el-col>
<el-col :xs="24" :sm="11" :lg="11">
<div class="ibox ">
<div class="ibox-title">
<b>上个班组汇总 </b>
</div>
<div class="ibox-content">
<el-table
:data="tableDataLastGroup"
stripe
border
style="width: 100%">
<el-table-column
prop="班长"
label="班长">
</el-table-column>
<el-table-column
prop="已完成箱数"
label="完成箱数">
</el-table-column>
<el-table-column
prop="正品率"
label="正品率">
</el-table-column>
<el-table-column
prop="产能达标率"
label="产能达标率">
</el-table-column>
<el-table-column
prop="平均密度"
label="平均密度">
</el-table-column>
</el-table>
</div>
</div>
</el-col>
</el-row>
<el-row style="background:#fff;padding:16px 16px 0;margin-bottom:32px;"> <el-row style="background:#fff;padding:16px 16px 0;margin-bottom:32px;">
<div class="ibox "> <div class="ibox ">
<div class="ibox-title"> <div class="ibox-title">
@ -48,10 +119,10 @@
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="ChangeMould" prop="ChangeMould"
label="是否换模中"> label="状态">
<template scope="scope"> <template scope="scope">
<span v-if="scope.row.ChangeMould" style="color:red">换模中</span> <span v-if="scope.row.ChangeMould" style="color:red">换模中</span>
<span v-else style="color: #37B328"></span> <span v-else style="color: #37B328">量产</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
@ -112,7 +183,9 @@
require('echarts/theme/macarons') // echarts theme require('echarts/theme/macarons') // echarts theme
import resize from '../dashboard/mixins/resize' import resize from '../dashboard/mixins/resize'
import {getcurrent} from '@/api/dashboard/fxdashboard' import {getcurrent,DoGetLastGroupReporterData,currentBoxAndGroupMonitor} from '@/api/dashboard/fxdashboard'
import {getDensityGroup} from '@/api/dashboard/density'
let lineChartData = { let lineChartData = {
xAxisData: [], xAxisData: [],
@ -124,7 +197,9 @@
name: 'density30day', name: 'density30day',
data() { data() {
return { return {
tableData: [] tableData: [],
tableDataCurrentGroup: [],
tableDataLastGroup: []
} }
}, },
@ -134,15 +209,19 @@
}, },
mounted() { mounted() {
this.Refresh()
}, },
methods: { methods: {
Refresh(){
setTimeout(function(){
window.location.reload(true);
},60000*10); //
},
getData() { getData() {
getcurrent().then(response => { getcurrent().then(response => {
console.log(response); var j, k;
var j,k;
var avg_zhengpin_avg = 0; var avg_zhengpin_avg = 0;
var avg_density = 0; var avg_density = 0;
var avg_energy_avg = 0; var avg_energy_avg = 0;
@ -160,7 +239,6 @@
lineChartData.xAxisData.push((response.data[i].time + '').replace(' 00:00:00.0', '')) lineChartData.xAxisData.push((response.data[i].time + '').replace(' 00:00:00.0', ''))
lineChartData.actualData.push(parseFloat(response.data[i].density).toFixed(4)) lineChartData.actualData.push(parseFloat(response.data[i].density).toFixed(4))
this.tableData.push({ this.tableData.push({
ChangeMould: response.data[i].ChangeMould, ChangeMould: response.data[i].ChangeMould,
Line: response.data[i].Line, Line: response.data[i].Line,
@ -190,9 +268,9 @@
k = k + 1; k = k + 1;
} }
avg_density = parseFloat(avg_density) + parseFloat(data_ajax[i].AvgDensity); // avg_density = parseFloat(avg_density) + parseFloat(data_ajax[i].AvgDensity);
avg_energy_avg = avg_energy_avg + (data_ajax[i].CapacityStandardObtainedRate ); avg_energy_avg = avg_energy_avg + (data_ajax[i].CapacityStandardObtainedRate);
sum_quantity = 2000; sum_quantity = 2000;
@ -203,16 +281,13 @@
const chart_energy_avg = echarts.init(document.getElementById("chart_energy_avg")); const chart_energy_avg = echarts.init(document.getElementById("chart_energy_avg"));
const chart_zhengpin_avg = echarts.init(document.getElementById("chart_zhengpin_avg")); const chart_zhengpin_avg = echarts.init(document.getElementById("chart_zhengpin_avg"));
const chart_density = echarts.init(document.getElementById("chart_density")); // const chart_density = echarts.init(document.getElementById("chart_density"));
const chart_change_moulding_time = echarts.init(document.getElementById("chart_change_moulding_time")); const chart_change_moulding_time = echarts.init(document.getElementById("chart_change_moulding_time"));
option_zhengpin_avg.series[0].data[0].value = (avg_zhengpin_avg / k * 100).toFixed(0); option_zhengpin_avg.series[0].data[0].value = (avg_zhengpin_avg / k * 100).toFixed(0);
chart_zhengpin_avg.setOption(option_zhengpin_avg, true); chart_zhengpin_avg.setOption(option_zhengpin_avg, true);
option_density.series[0].data[0].value = (avg_density / data_ajax.length).toFixed(3);
chart_density.setOption(option_density, true);
option_change_moulding_time.series[0].data[0].value = (avg_chang_moulding_time / j).toFixed(0); option_change_moulding_time.series[0].data[0].value = (avg_chang_moulding_time / j).toFixed(0);
chart_change_moulding_time.setOption(option_change_moulding_time, true); chart_change_moulding_time.setOption(option_change_moulding_time, true);
@ -220,6 +295,44 @@
chart_energy_avg.setOption(option_energy_avg, true); chart_energy_avg.setOption(option_energy_avg, true);
}) })
getDensityGroup().then(response => {
let avg_density = 0;
const chart_density = echarts.init(document.getElementById("chart_density"));
for (let i = 0; i < response.data.length; i++) {
avg_density = avg_density + (response.data[i].density) * 1;
}
option_change_moulding_time.series[0].data[0].value = (avg_density / response.data.length).toFixed(3);
chart_density.setOption(option_change_moulding_time, true);
})
DoGetLastGroupReporterData().then(response => {
console.log(response)
for (var i = 0; i < response.data.length; i++) {
console.log(response)
this.tableDataLastGroup.push({
产能达标率: ((response.data[i].capacity)*1).toFixed(2)*100 + '%',
正品率: ((response.data[i].yield)*1).toFixed(2)*100 + '%',
平均密度: ((response.data[i].avg_density)*1).toFixed(2),
已完成箱数: response.data[i].SUMBOX,
班长: response.data[i].NAME,
})
}
})
currentBoxAndGroupMonitor().then(response => {
for (var i = 0; i < response.data.length; i++) {
this.tableDataCurrentGroup.push({
已完成箱数: response.data[i].SUMBOX,
班长: response.data[i].NAME,
})
}
})
} }
} }

View File

@ -97,7 +97,7 @@
label="是否换模中"> label="是否换模中">
<template scope="scope"> <template scope="scope">
<span v-if="scope.row.ChangeMould" style="color:red">换模中</span> <span v-if="scope.row.ChangeMould" style="color:red">换模中</span>
<span v-else style="color: #37B328"></span> <span v-else style="color: #37B328">量产</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column

View File

@ -204,6 +204,8 @@ public class DB_Ajax_DashBoard_48102 {
return jsonpath.toString(); return jsonpath.toString();
} }
public static List<HashMap<String,String>> DoGetLastDay() { public static List<HashMap<String,String>> DoGetLastDay() {
List<HashMap<String,String>> hashMapList = new ArrayList<>(); List<HashMap<String,String>> hashMapList = new ArrayList<>();
try { try {
@ -243,6 +245,75 @@ public class DB_Ajax_DashBoard_48102 {
return hashMapList; return hashMapList;
} }
public static List<HashMap<String,String>> DoGetCurrentBoxAndGroupMonitor() {
List<HashMap<String,String>> hashMapList = new ArrayList<>();
try {
Connection conn = getSQLConnection();
String sql = "SELECT\n" +
"\t( SELECT SUM ( Quantity ) FROM MouldingDisplayBoardOperation WHERE deleted = 0 and OperateTime >= dbo.GetWorkShiftStartDate ( GETDATE( ) ) ) AS SUMBOX,\n" +
"\t( SELECT MAX ( OperatePersonName ) FROM MouldingDisplayBoardOperationPerson WHERE line = '班长#' AND OperateTime >= dbo.GetWorkShiftStartDate ( GETDATE( ) ) ) AS NAME";
Statement stmt = conn.createStatement();//
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
HashMap<String,String> map = new HashMap<>();
map.put("SUMBOX",rs.getString("SUMBOX"));
map.put("NAME",rs.getString("NAME"));
hashMapList.add(map);
}
rs.close();
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
return hashMapList;
}
public static List<HashMap<String,String>> DoGetLastGroupReporterData() {
List<HashMap<String,String>> hashMapList = new ArrayList<>();
try {
Connection conn = getSQLConnection();
String sql = "SELECT\n" +
"\t( SELECT SUM ( avg_density ) / SUM ( CASE WHEN avg_density IS NOT NULL THEN 校验字段 ELSE 0 END ) FROM [V_chen_Dashboard_上个班组] ) AS avg_density,\n" +
"\t( SELECT AVG ( sum_box_meter / sum_device_meter * avg_currentcapacity / avg_normalcapacity ) FROM [V_chen_Dashboard_上个班组] ) AS capacity,\n" +
"\t( SELECT AVG ( sum_box_meter / sum_device_meter ) FROM [V_chen_Dashboard_上个班组] ) AS yield,\n" +
"\t( SELECT SUM ( Quantity ) FROM MouldingDisplayBoardOperation WHERE deleted = 0 AND OperateTime > dbo.GetWorkShiftStartDate ( GETDATE( ) - 0.5 ) AND OperateTime < dbo.GetWorkShiftendDate ( GETDATE( ) - 0.5 ) ) AS SUMBOX,\n" +
"\t( SELECT MAX ( OperatePersonName ) FROM MouldingDisplayBoardOperationPerson WHERE line = '班长#' AND OperateTime > dbo.GetWorkShiftStartDate ( GETDATE( ) - 0.5 ) AND OperateTime < dbo.GetWorkShiftendDate ( GETDATE( ) - 0.5 ) ) AS NAME";
Statement stmt = conn.createStatement();//
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
HashMap<String,String> map = new HashMap<>();
map.put("SUMBOX",rs.getString("SUMBOX"));
map.put("NAME",rs.getString("NAME"));
map.put("avg_density",rs.getString("avg_density"));
map.put("yield",rs.getString("yield"));
map.put("capacity",rs.getString("capacity"));
hashMapList.add(map);
}
rs.close();
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
return hashMapList;
}
public static List<HashMap<String,String>> DoGet30Day() { public static List<HashMap<String,String>> DoGet30Day() {
List<HashMap<String,String>> hashMapList = new ArrayList<>(); List<HashMap<String,String>> hashMapList = new ArrayList<>();
try { try {
@ -255,8 +326,6 @@ public class DB_Ajax_DashBoard_48102 {
ResultSet rs = stmt.executeQuery(sql); ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) { while (rs.next()) {
// 截面积(mm2)
HashMap<String,String> map = new HashMap<>(); HashMap<String,String> map = new HashMap<>();

View File

@ -44,6 +44,17 @@ public class DashBoardController extends BaseController
return AjaxResult.success(DB_Ajax_DashBoard_48102.DoGetCurrent()); return AjaxResult.success(DB_Ajax_DashBoard_48102.DoGetCurrent());
} }
@GetMapping("/currentBoxAndGroupMonitor")
public AjaxResult DoGetBoxAndGroupMonitor() throws Exception
{
return AjaxResult.success(DB_Ajax_DashBoard_48102.DoGetCurrentBoxAndGroupMonitor());
}
@GetMapping("/DoGetLastGroupReporterData")
public AjaxResult DoGetLastGroupReporterData() throws Exception
{
return AjaxResult.success(DB_Ajax_DashBoard_48102.DoGetLastGroupReporterData());
}
@GetMapping("/daterange/{fDateStart}/{fDateEnd}") @GetMapping("/daterange/{fDateStart}/{fDateEnd}")
public AjaxResult getDateRange(@PathVariable String fDateStart, @PathVariable String fDateEnd) throws Exception public AjaxResult getDateRange(@PathVariable String fDateStart, @PathVariable String fDateEnd) throws Exception