Merge branch 'master' of http://121.40.234.130:8899/root/hl_one
This commit is contained in:
@@ -0,0 +1,46 @@
|
|||||||
|
package org.nl.wms.ext.bigScreen.rest;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.annotation.Log;
|
||||||
|
import org.nl.wms.ext.bigScreen.service.AgvBigScreenService;
|
||||||
|
import org.nl.wms.ext.bigScreen.service.BigScreenService;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author liuxy
|
||||||
|
* @date 2022-07-27
|
||||||
|
**/
|
||||||
|
@RestController
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@Api(tags = "AGV监控中心")
|
||||||
|
@RequestMapping("/api/agvBigScreen")
|
||||||
|
@Slf4j
|
||||||
|
@CrossOrigin
|
||||||
|
public class AgvBigScreenController {
|
||||||
|
|
||||||
|
private final AgvBigScreenService agvBigScreenService;
|
||||||
|
|
||||||
|
@PostMapping("/getTask")
|
||||||
|
@Log("查询任务")
|
||||||
|
@ApiOperation("查询任务")
|
||||||
|
public ResponseEntity<Object> getData(@RequestBody JSONObject whereJson) {
|
||||||
|
return new ResponseEntity<>(agvBigScreenService.getTask(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/getAgvMsg")
|
||||||
|
@Log("查询车辆信息")
|
||||||
|
@ApiOperation("查询车辆信息")
|
||||||
|
public ResponseEntity<Object> getAgvMsg(@RequestBody JSONObject whereJson) {
|
||||||
|
return new ResponseEntity<>(agvBigScreenService.getAgvMsg(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
package org.nl.wms.ext.bigScreen.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
|
||||||
|
public interface AgvBigScreenService {
|
||||||
|
|
||||||
|
JSONObject getTask(JSONObject whereJson);
|
||||||
|
|
||||||
|
JSONObject getAgvMsg(JSONObject whereJson);
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,114 @@
|
|||||||
|
package org.nl.wms.ext.bigScreen.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.mongodb.MongoClient;
|
||||||
|
import com.mongodb.client.MongoDatabase;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.wms.ext.bigScreen.service.AgvBigScreenService;
|
||||||
|
import org.nl.wql.WQL;
|
||||||
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@Slf4j
|
||||||
|
public class AgvBigScreenServiceImpl implements AgvBigScreenService {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JSONObject getTask(JSONObject whereJson) {
|
||||||
|
JSONObject result = new JSONObject();
|
||||||
|
try {
|
||||||
|
JSONObject param = new JSONObject();
|
||||||
|
// 1.获取总任务数
|
||||||
|
String today = DateUtil.today();
|
||||||
|
HashMap<String, String> map = new HashMap<>();
|
||||||
|
map.put("flag", "1");
|
||||||
|
map.put("today", "%"+today+"%");
|
||||||
|
JSONObject jsonAll = WQL.getWO("AGVBIGSCREEN01").addParamMap(map).process().uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonAll)) {
|
||||||
|
param.put("all_task_number",jsonAll.getString("jsonAllTsk"));
|
||||||
|
} else {
|
||||||
|
param.put("all_task_number","0");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2.获取已执行任务数 状态 = 99
|
||||||
|
map.put("flag", "2");
|
||||||
|
JSONObject jsonFinish = WQL.getWO("AGVBIGSCREEN01").addParamMap(map).process().uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonFinish)) {
|
||||||
|
param.put("finish_task_number",jsonFinish.getString("finish_task_number"));
|
||||||
|
} else {
|
||||||
|
param.put("finish_task_number","0");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3.获取取消的任务数 是否删除 = 1
|
||||||
|
map.put("flag", "3");
|
||||||
|
JSONObject jsonCancel = WQL.getWO("AGVBIGSCREEN01").addParamMap(map).process().uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonCancel)) {
|
||||||
|
param.put("cancel_task_number",jsonCancel.getString("cancel_task_number"));
|
||||||
|
} else {
|
||||||
|
param.put("cancel_task_number","0");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 4.获取未执行任务数 状态 <> 99
|
||||||
|
map.put("flag", "4");
|
||||||
|
JSONObject jsonNotFinish = WQL.getWO("AGVBIGSCREEN01").addParamMap(map).process().uniqueResult(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(jsonNotFinish)) {
|
||||||
|
param.put("not_finish_task_number",jsonNotFinish.getString("not_finish_task_number"));
|
||||||
|
} else {
|
||||||
|
param.put("not_finish_task_number","0");
|
||||||
|
}
|
||||||
|
|
||||||
|
result.put("code", "1");
|
||||||
|
result.put("desc", "查询成功");
|
||||||
|
result.put("srb", param);
|
||||||
|
} catch (Exception e) {
|
||||||
|
result.put("code", "0");
|
||||||
|
result.put("desc", "查询失败:"+e.getMessage());
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JSONObject getAgvMsg(JSONObject whereJson) {
|
||||||
|
|
||||||
|
// 连接到 mongodb 服务并连接到数据库
|
||||||
|
MongoClient mongoClient = new MongoClient( "47.111.78.178" , 27017 );
|
||||||
|
MongoDatabase db = mongoClient.getDatabase("device_log");
|
||||||
|
|
||||||
|
JSONObject result = new JSONObject();
|
||||||
|
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
|
||||||
|
WQLObject agvTab = WQLObject.getWQLObject("DS_AGV_AgvStatus");
|
||||||
|
|
||||||
|
JSONArray agv_info = new JSONArray();
|
||||||
|
for (int i = 1; i <= 7; i++) {
|
||||||
|
JSONObject json = new JSONObject();
|
||||||
|
String agv_code = String.valueOf(i);
|
||||||
|
JSONObject jsonAgv = agvTab.query("agv_code = '" + agv_code + "'").uniqueResult(0);
|
||||||
|
// 1.车号
|
||||||
|
json.put("agv_code", agv_code);
|
||||||
|
// 2.任务: 0为无任务、1为有任务
|
||||||
|
json.put("agv_stateType", jsonAgv.getString("agv_stateType"));
|
||||||
|
// 3.电量
|
||||||
|
json.put("agv_power", jsonAgv.getString("agv_power"));
|
||||||
|
// 4.预警: 0为正常,1为报警
|
||||||
|
|
||||||
|
// 5.预警信息
|
||||||
|
|
||||||
|
agv_info.add(json);
|
||||||
|
}
|
||||||
|
|
||||||
|
result.put("agv_info_arr", agv_info);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,109 @@
|
|||||||
|
[交易说明]
|
||||||
|
交易名: AGV监控中心查询
|
||||||
|
所属模块:
|
||||||
|
功能简述:
|
||||||
|
版权所有:
|
||||||
|
表引用:
|
||||||
|
版本经历:
|
||||||
|
|
||||||
|
[数据库]
|
||||||
|
--指定数据库,为空采用默认值,默认为db.properties中列出的第一个库
|
||||||
|
|
||||||
|
[IO定义]
|
||||||
|
#################################################
|
||||||
|
## 表字段对应输入参数
|
||||||
|
#################################################
|
||||||
|
输入.flag TYPEAS s_string
|
||||||
|
输入.today TYPEAS s_string
|
||||||
|
|
||||||
|
[临时表]
|
||||||
|
--这边列出来的临时表就会在运行期动态创建
|
||||||
|
|
||||||
|
[临时变量]
|
||||||
|
--所有中间过程变量均可在此处定义
|
||||||
|
|
||||||
|
[业务过程]
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# 1、输入输出检查 #
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# 2、主过程前处理 #
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# 3、业务主过程 #
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
IF 输入.flag = "1"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
count(task.task_id) AS all_task_number
|
||||||
|
FROM
|
||||||
|
SCH_BASE_Task task
|
||||||
|
WHERE
|
||||||
|
1 = 1
|
||||||
|
|
||||||
|
OPTION 输入.today <> ""
|
||||||
|
task.create_time like 输入.today
|
||||||
|
ENDOPTION
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "2"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
count(task.task_id) AS finish_task_number
|
||||||
|
FROM
|
||||||
|
SCH_BASE_Task task
|
||||||
|
WHERE
|
||||||
|
task.task_status = '99'
|
||||||
|
|
||||||
|
OPTION 输入.today <> ""
|
||||||
|
task.create_time like 输入.today
|
||||||
|
ENDOPTION
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "3"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
count(task.task_id) AS cancel_task_number
|
||||||
|
FROM
|
||||||
|
SCH_BASE_Task task
|
||||||
|
WHERE
|
||||||
|
task.is_delete = '1'
|
||||||
|
|
||||||
|
OPTION 输入.today <> ""
|
||||||
|
task.create_time like 输入.today
|
||||||
|
ENDOPTION
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "4"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
count(task.task_id) AS cancel_task_number
|
||||||
|
FROM
|
||||||
|
SCH_BASE_Task task
|
||||||
|
WHERE
|
||||||
|
task.task_status <> '99'
|
||||||
|
|
||||||
|
OPTION 输入.today <> ""
|
||||||
|
task.create_time like 输入.today
|
||||||
|
ENDOPTION
|
||||||
|
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ spring:
|
|||||||
#数据库索引
|
#数据库索引
|
||||||
|
|
||||||
database: ${REDIS_DB:1}
|
database: ${REDIS_DB:1}
|
||||||
#host: ${REDIS_HOST:47.111.78.178}
|
host: ${REDIS_HOST:47.111.78.178}
|
||||||
host: ${REDIS_HOST:localhost}
|
# host: ${REDIS_HOST:localhost}
|
||||||
port: ${REDIS_PORT:6379}
|
port: ${REDIS_PORT:6379}
|
||||||
password: ${REDIS_PWD:}
|
password: ${REDIS_PWD:}
|
||||||
#连接超时时间
|
#连接超时时间
|
||||||
@@ -173,5 +173,5 @@ jetcache:
|
|||||||
maxIdle: 200
|
maxIdle: 200
|
||||||
maxTotal: 1000
|
maxTotal: 1000
|
||||||
uri:
|
uri:
|
||||||
- redis://localhost:6379
|
- redis://47.111.78.178:6379
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user