package com.vincent.rsf.openApi.controller;
|
|
import com.fasterxml.jackson.databind.JsonNode;
|
import com.vincent.rsf.openApi.entity.dto.CommonResponse;
|
import com.vincent.rsf.openApi.feign.wms.WmsServerFeignClient;
|
import com.vincent.rsf.openApi.service.MonitorService;
|
import com.vincent.rsf.openApi.service.WcsStationStatusService;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import javax.annotation.Resource;
|
import java.util.LinkedHashMap;
|
import java.util.Map;
|
|
|
/**
|
* 大屏
|
*/
|
@RestController
|
@RequestMapping("/monitor")
|
public class MonitorController {
|
|
@Autowired
|
private MonitorService monitorService;
|
|
@Autowired
|
private WmsServerFeignClient wmsServerFeignClient;
|
|
@Resource
|
private WcsStationStatusService wcsStationStatusService;
|
|
/**
|
* 与 zy-monitor sys_config.wcsStationUrl 对应:POST stationIds 拉取;POST data 为 WCS 上报写入 Redis
|
*/
|
@PostMapping("/stationStatus")
|
@ApiOperation("WCS站点状态(电视机:与 wcsStationUrl 约定一致)")
|
public Map<String, Object> stationStatus(@RequestBody(required = false) JsonNode body) {
|
return wcsStationStatusService.handle(body);
|
}
|
|
/** 占位:zy-monitor {@code wcsDeviceStatusUrl} POST crnNos;data 为 null 时同步逻辑将全部堆垛机置为离线 */
|
@PostMapping("/deviceStatus")
|
@ApiOperation("WCS堆垛机状态占位(data 为 null)")
|
public Map<String, Object> deviceStatus() {
|
Map<String, Object> m = new LinkedHashMap<>();
|
m.put("code", 200);
|
m.put("msg", "ok");
|
m.put("data", null);
|
return m;
|
}
|
|
@GetMapping("/queryLoc")
|
@ApiOperation("大屏:库位库存统计")
|
public Map<String, Object> queryLoc() {
|
return wmsServerFeignClient.openAsrsQueryLoc();
|
}
|
|
@GetMapping("/line/charts")
|
@ApiOperation("大屏:入出库折线图数据")
|
public Map<String, Object> lineCharts() {
|
return wmsServerFeignClient.openAsrsLineCharts();
|
}
|
|
@GetMapping("/locDetl/statistics")
|
@ApiOperation("大屏:库存明细分页统计")
|
public Map<String, Object> locDetlStatistics() {
|
return wmsServerFeignClient.openAsrsLocDetlStatistics();
|
}
|
|
@PostMapping("/queryTask")
|
@ApiOperation("大屏:任务查询")
|
public Map<String, Object> queryTask(@RequestBody Map<String, Object> body) {
|
return wmsServerFeignClient.openAsrsQueryTask(body);
|
}
|
|
/**
|
* 获取出入库流水记录
|
* @return
|
*/
|
@PostMapping("/inOut/page")
|
@ApiOperation("获取入出库流水记录")
|
public CommonResponse getInOutHis(@RequestBody Map<String, Object> param) {
|
return monitorService.getInOutHistories(param);
|
}
|
|
}
|