From 02e3fbfc96e08c9285daaa5a6ec53716c747a671 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期五, 29 八月 2025 10:42:18 +0800
Subject: [PATCH] 1
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java | 5 +
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java | 37 +++++++-----
zy-acs-manager/src/main/java/com/zy/acs/manager/common/domain/PageParam.java | 112 +++++++++++++++++++++++++++++++++++-
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java | 19 ++---
4 files changed, 140 insertions(+), 33 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/common/domain/PageParam.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/common/domain/PageParam.java
index 973c24e..eabae2b 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/common/domain/PageParam.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/common/domain/PageParam.java
@@ -24,6 +24,11 @@
private static final long serialVersionUID = 1L;
public static final String ORDER_DESC_VALUE = "desc";
+ public static final Integer DEFAULT_PAGESIZE = 100;
+
+ public static final Integer DEFAULT_CURRENT = 1;
+
+
private final U where;
/**
@@ -45,6 +50,7 @@
this(where, true, cls);
}
+
public PageParam(U where, boolean isToUnderlineCase) {
this(where, isToUnderlineCase, null);
}
@@ -63,6 +69,11 @@
}
}
+ }
+
+
+ public QueryWrapper<T> buildWrapperExcludeNull(boolean like) {
+ return this.buildWrapperExcludeNull(like, null, "create_time");
}
public QueryWrapper<T> buildWrapper(boolean like) {
@@ -129,25 +140,116 @@
if (!Cools.isEmpty(where.getCondition()) && !Cools.isEmpty(cls)) {
List<String> columns = new ArrayList<>();
- for (Field field : Cools.getAllFields(cls)){
+ for (Field field : Cools.getAllFields(cls)) {
if (Modifier.isFinal(field.getModifiers())
|| Modifier.isStatic(field.getModifiers())
- || Modifier.isTransient(field.getModifiers())){
+ || Modifier.isTransient(field.getModifiers())) {
continue;
}
- if (field.isAnnotationPresent(TableField.class)){
+ if (field.isAnnotationPresent(TableField.class)) {
TableField annotation = field.getAnnotation(TableField.class);
if (!annotation.exist()) {
continue;
}
}
- String column = Utils.toSymbolCase(field.getName(), '_');
+ String column = Utils.toSymbolCase(field.getName(), '_');
columns.add(column);
}
if (!columns.isEmpty()) {
- for (int i=0;i<columns.size();i++){
+ for (int i = 0; i < columns.size(); i++) {
+ String column = columns.get(i);
+ String condition = where.getCondition();
+
+ if (i == 0) {
+ queryWrapper.and(wrapper -> wrapper.like(column, condition));
+ } else {
+ queryWrapper.or().like(column, condition);
+ }
+ }
+ }
+ }
+ return queryWrapper;
+ }
+
+ @SuppressWarnings("all")
+ public QueryWrapper<T> buildWrapperExcludeNull(boolean like, Consumer<QueryWrapper<T>> consumer, String timeField) {
+ QueryWrapper<T> queryWrapper = new QueryWrapper<>();
+ Map<String, Object> map = where.getMap();
+ for (String key : map.keySet()) {
+ Object val = map.get(key);
+ if (val == null) {
+ continue;
+ }
+ if (key.contains("Range")) {
+ ArrayList<String> list = null;
+ if (val instanceof ArrayList) {
+ list = (ArrayList<String>) val;
+ }
+ if (null != list) {
+ key = key.replaceAll("Range", "");
+ if (this.isToUnderlineCase) {
+ key = Utils.toSymbolCase(key, '_');
+ }
+ queryWrapper.ge(key, DateUtils.convert(list.get(0)));
+ queryWrapper.le(key, DateUtils.convert(list.get(1)));
+ }
+ } else {
+ if (this.isToUnderlineCase) {
+ key = Utils.toSymbolCase(key, '_');
+ }
+ if (like) {
+ queryWrapper.like(key, val);
+ } else {
+ queryWrapper.eq(key, val);
+ }
+ }
+ }
+
+ if (null != consumer) {
+ consumer.accept(queryWrapper);
+ }
+
+ if (!Cools.isEmpty(where.getTimeStart())) {
+ Date timeStart = DateUtils.convert(String.valueOf(where.getTimeStart()), DateUtils.yyyyMMdd_F);
+ queryWrapper.ge(timeField, timeStart);
+
+ }
+ if (!Cools.isEmpty(where.getTimeEnd())) {
+ Date timeStart = DateUtils.convert(String.valueOf(where.getTimeEnd()), DateUtils.yyyyMMdd_F);
+ queryWrapper.le(timeField, timeStart);
+ }
+
+ if (!Cools.isEmpty(where.getOrderBy())) {
+ if (sortIsSQL(where.getOrderBy())) {
+ setOrders(parseOrderSQL(where.getOrderBy()));
+ }
+ } else {
+// queryWrapper.orderByDesc("create_time");
+ }
+
+ if (!Cools.isEmpty(where.getCondition()) && !Cools.isEmpty(cls)) {
+ List<String> columns = new ArrayList<>();
+ for (Field field : Cools.getAllFields(cls)) {
+ if (Modifier.isFinal(field.getModifiers())
+ || Modifier.isStatic(field.getModifiers())
+ || Modifier.isTransient(field.getModifiers())) {
+ continue;
+ }
+
+ if (field.isAnnotationPresent(TableField.class)) {
+ TableField annotation = field.getAnnotation(TableField.class);
+ if (!annotation.exist()) {
+ continue;
+ }
+ }
+
+ String column = Utils.toSymbolCase(field.getName(), '_');
+ columns.add(column);
+ }
+ if (!columns.isEmpty()) {
+ for (int i = 0; i < columns.size(); i++) {
String column = columns.get(i);
String condition = where.getCondition();
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java
index 406d15a..400c064 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java
@@ -49,6 +49,7 @@
task.setSeqNum(taskDto.getSeqNum());
task.setPriority(taskDto.getPriority());
+
// ori --------------------------
if (!Cools.isEmpty(taskDto.getOriLoc())) {
Loc oriLoc = locService.selecatByLocNo(taskDto.getOriLoc());
@@ -98,20 +99,24 @@
if (null != task.getDestLoc() && null != task.getDestSta()) {
throw new BusinessException("seNum:" + task.getSeqNum() + " is wrong锛宔ither destLoc and destSta must be present");
}
- if (null != task.getOriSta()) {
- if (null != task.getDestLoc()) {
- task.setTaskType(TaskTypeType.STA_TO_LOC.val());
+ if (!Cools.isEmpty(taskDto.getTaskType())) {
+ task.setTaskType(TaskTypeType.valueOf(taskDto.getTaskType()).val());
+ } else {
+ if (null != task.getOriSta()) {
+ if (null != task.getDestLoc()) {
+ task.setTaskType(TaskTypeType.STA_TO_LOC.val());
+ }
+ if (null != task.getDestSta()) {
+ task.setTaskType(TaskTypeType.STA_TO_STA.val());
+ }
}
- if (null != task.getDestSta()) {
- task.setTaskType(TaskTypeType.STA_TO_STA.val());
- }
- }
- if (null != task.getOriLoc()) {
- if (null != task.getDestLoc()) {
- task.setTaskType(TaskTypeType.LOC_TO_LOC.val());
- }
- if (null != task.getDestSta()) {
- task.setTaskType(TaskTypeType.LOC_TO_STA.val());
+ if (null != task.getOriLoc()) {
+ if (null != task.getDestLoc()) {
+ task.setTaskType(TaskTypeType.LOC_TO_LOC.val());
+ }
+ if (null != task.getDestSta()) {
+ task.setTaskType(TaskTypeType.LOC_TO_STA.val());
+ }
}
}
}
@@ -120,8 +125,10 @@
for (Task task : taskList) {
Code startCode = null;
Code endCode = null;
- Loc oriLoc = null; Loc destLoc = null;
- Sta oriSta = null; Sta destSta = null;
+ Loc oriLoc = null;
+ Loc destLoc = null;
+ Sta oriSta = null;
+ Sta destSta = null;
List<String> pathList = null;
switch (Objects.requireNonNull(TaskTypeType.get(task.getTaskTypeEl()))) {
case LOC_TO_LOC:
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java
index bfa39c9..4a67792 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java
@@ -46,8 +46,9 @@
String wmsPath = configService.getVal("WMS_PATH", String.class);
List<TaskReport> list = taskReportService.list(new LambdaQueryWrapper<TaskReport>().eq(TaskReport::getCompleted, 0).le(TaskReport::getReportTimes, 3));
for (TaskReport taskReport : list) {
- log.info("寮�濮嬩笂鎶ワ細{}", taskReport);
- if (report(new TaskEvent(taskReport.getSeqNum(), taskReport.getEventType(), taskReport.getAgvId() + ""), wmsUrl, wmsPath)) {
+ TaskEvent taskEvent = new TaskEvent(taskReport.getSeqNum(), taskReport.getEventType(), taskReport.getAgvId() + "");
+ log.info("寮�濮嬩笂鎶ワ細{}", taskEvent);
+ if (report(taskEvent, wmsUrl, wmsPath)) {
taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1);
taskReport.setUpdateTime(new Date());
taskReport.setCompleted(1);
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java
index e744f97..fe48530 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java
@@ -58,10 +58,13 @@
@OperationLog("generate task from open api")
public R save(@RequestBody OpenBusSubmitParam param) {
if (!configService.getVal("TaskAssignMode", Boolean.class)) {
- if (configService.getVal("InAndOutMode", Boolean.class, false)) {
- mainService.generateBusAndTask(param, null);
- return R.ok("generate tasks success");
+ for (TaskDto taskDto : param.getTaskList()) {
+ if (Cools.isEmpty(taskDto.getSeqNum())) {
+ return R.error("缂哄け浠诲姟鍙�");
+ }
}
+ mainService.generateBusAndTask(param, null);
+ return R.ok("generate tasks success");
}
return R.error("generate tasks error");
}
@@ -101,16 +104,10 @@
@PostMapping("/loc/sync")
@OperationLog("sync loc")
- public R loc(@RequestBody(required = false) Map<String, Object> map) {
- if (map.get("current") == null) {
- map.put("current", 1);
- }
- if (map.get("pageSize") == null) {
- map.put("pageSize", 100);
- }
+ public R loc(@RequestBody Map<String, Object> map) {
BaseParam baseParam = buildParam(map, BaseParam.class);
PageParam<Loc, BaseParam> pageParam = new PageParam<>(baseParam, Loc.class);
- return R.ok().add(locService.page(pageParam, pageParam.buildWrapper(true)));
+ return R.ok().add(locService.page(pageParam, pageParam.buildWrapperExcludeNull(true)));
}
--
Gitblit v1.9.1