package com.zy.asrs.controller;
|
|
import com.core.common.R;
|
import com.zy.asrs.entity.AxisBean;
|
import com.zy.asrs.entity.ChartBean;
|
import com.zy.asrs.entity.LocChartPie;
|
import com.zy.asrs.entity.WorkCubeTotalAxis;
|
import com.zy.asrs.entity.WorkChartAxis;
|
import com.zy.asrs.mapper.ReportQueryMapper;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.text.SimpleDateFormat;
|
import java.util.*;
|
|
/**
|
* Created by vincent on 2020-05-23
|
*/
|
@RestController
|
@RequestMapping("/console")
|
public class ConsoleController {
|
|
@Autowired
|
private ReportQueryMapper reportQueryMapper;
|
|
@PostMapping("loc/pie/charts")
|
public R dsa(){
|
Map<String,Object> map=new HashMap<String, Object>();
|
List<ChartBean> list = new ArrayList<ChartBean>();
|
|
LocChartPie locUseRate = reportQueryMapper.getLocUseRate();
|
if(locUseRate!=null) {
|
ChartBean fqty = new ChartBean();
|
fqty.setName("在库库位");
|
fqty.setY(locUseRate.getFqty());
|
list.add(fqty);
|
|
ChartBean oqty = new ChartBean();
|
oqty.setName("空库位");
|
oqty.setY(locUseRate.getOqty());
|
list.add(oqty);
|
|
ChartBean uqty = new ChartBean();
|
uqty.setName("使用库位");
|
uqty.setY(locUseRate.getUqty());
|
list.add(uqty);
|
|
ChartBean xqty = new ChartBean();
|
xqty.setName("禁用库位");
|
xqty.setY(locUseRate.getXqty());
|
list.add(xqty);
|
}
|
map.put("rows",list);
|
return R.ok(map);
|
}
|
|
@PostMapping("locIo/line/charts")
|
public R locIoLineCharts(){
|
Map<String,Object> map=new HashMap<String, Object>();
|
List<AxisBean> list = new ArrayList<AxisBean>();
|
|
List<WorkChartAxis> listChart = reportQueryMapper.getChartAxis();
|
|
if(listChart!=null) {
|
ArrayList<Number> data1 = new ArrayList<Number>();
|
ArrayList<Number> data2 = new ArrayList<Number>();
|
|
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
|
Calendar calendar = Calendar.getInstance();
|
calendar.add(Calendar.DATE, -12);
|
for(int i=0;i<12;i++) {
|
boolean flag = true;
|
calendar.add(Calendar.DATE, 1);
|
String str = sf.format(calendar.getTime());
|
for(WorkChartAxis workChart : listChart) {
|
if(str.equals(workChart.getYmd())) {
|
data1.add(workChart.getInqty());
|
data2.add(workChart.getOutqty());
|
flag = false;
|
break;
|
}
|
}
|
if(flag) {
|
data1.add(0);
|
data2.add(0);
|
}
|
}
|
AxisBean inqty = new AxisBean();
|
inqty.setName("入库托盘数");
|
Number[] array1 = new Number[data1.size()];
|
inqty.setData(data1.toArray(array1));
|
list.add(inqty);
|
AxisBean outqty = new AxisBean();
|
outqty.setName("出库托盘数");
|
Number[] array2 = new Number[data2.size()];
|
outqty.setData(data2.toArray(array2));
|
list.add(outqty);
|
|
AxisBean cube5 = new AxisBean();
|
cube5.setName("5状态体积");
|
AxisBean cube15 = new AxisBean();
|
cube15.setName("15状态体积");
|
List<WorkCubeTotalAxis> workCubeTotalAxes = reportQueryMapper.getCubeTotal();
|
Map<String, WorkCubeTotalAxis> cubeMap = new HashMap<String, WorkCubeTotalAxis>();
|
if (workCubeTotalAxes != null) {
|
for (WorkCubeTotalAxis w : workCubeTotalAxes) {
|
if (w.getYmd() != null) {
|
cubeMap.put(w.getYmd(), w);
|
}
|
}
|
}
|
ArrayList<Number> data4 = new ArrayList<Number>();
|
ArrayList<Number> data5 = new ArrayList<Number>();
|
SimpleDateFormat sfCube = new SimpleDateFormat("yyyy-MM-dd");
|
Calendar calendarCube = Calendar.getInstance();
|
calendarCube.add(Calendar.DATE, -12);
|
for (int i = 0; i < 12; i++) {
|
calendarCube.add(Calendar.DATE, 1);
|
String str = sfCube.format(calendarCube.getTime());
|
WorkCubeTotalAxis cubeAxis = cubeMap.get(str);
|
data4.add(cubeAxis == null || cubeAxis.getCube5Total() == null ? 0 : cubeAxis.getCube5Total());
|
data5.add(cubeAxis == null || cubeAxis.getCube15Total() == null ? 0 : cubeAxis.getCube15Total());
|
}
|
Number[] array4 = new Number[data4.size()];
|
cube5.setData(data4.toArray(array4));
|
list.add(cube5);
|
Number[] array5 = new Number[data5.size()];
|
cube15.setData(data5.toArray(array5));
|
list.add(cube15);
|
}
|
map.put("rows",list);
|
return R.ok(map);
|
}
|
|
|
|
|
}
|