zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/AutoRunScheduler.java
@@ -145,7 +145,6 @@ if (0 == availableAgvCount) { return; } List<String> staPreNos = getStaPrefixes(staGroupList); String staTaskMemo = "DEMO_STA_" + String.join("-", staPreNos); List<Task> list = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getDestSta, 33).in(Task::getTaskSts, TaskStsType.INIT.val(), TaskStsType.WAITING.val(), TaskStsType.ASSIGN.val(), TaskStsType.PROGRESS.val())); @@ -172,11 +171,7 @@ } // STOCK LambdaQueryWrapper<Sta> stockWrapper = new LambdaQueryWrapper<Sta>() .eq(Sta::getStaSts, StaStsType.STOCK.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getInEnable, "Y") .in(Sta::getStaNo, staGroupList); LambdaQueryWrapper<Sta> stockWrapper = new LambdaQueryWrapper<Sta>().eq(Sta::getStaSts, StaStsType.STOCK.val()).eq(Sta::getStatus, StatusType.ENABLE.val).eq(Sta::getInEnable, "Y").in(Sta::getStaNo, staGroupList); List<Sta> stockList = staService.list(stockWrapper); if (Cools.isEmpty(stockList)) { return; @@ -228,9 +223,7 @@ // STOCK LambdaQueryWrapper<Sta> stockWrapper = new LambdaQueryWrapper<Sta>() //.eq(Sta::getStaSts, StaStsType.STOCK.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getInEnable, "Y") .in(Sta::getStaNo, staGroupList); .eq(Sta::getStatus, StatusType.ENABLE.val).eq(Sta::getInEnable, "Y").in(Sta::getStaNo, staGroupList); List<Sta> stockList = staService.list(stockWrapper); if (Cools.isEmpty(stockList)) { return; @@ -282,11 +275,7 @@ int maxCapacity = agvModel.getBackpack(); // STA IDLE LambdaQueryWrapper<Sta> idleWrapper = new LambdaQueryWrapper<Sta>() .eq(Sta::getStaSts, StaStsType.IDLE.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getOutEnable, "Y") .in(Sta::getStaNo, staGroupList); LambdaQueryWrapper<Sta> idleWrapper = new LambdaQueryWrapper<Sta>().eq(Sta::getStaSts, StaStsType.IDLE.val()).eq(Sta::getStatus, StatusType.ENABLE.val).eq(Sta::getOutEnable, "Y").in(Sta::getStaNo, staGroupList); List<Sta> idleList = staService.list(idleWrapper); if (Cools.isEmpty(idleList)) { return; @@ -339,9 +328,7 @@ // STA IDLE LambdaQueryWrapper<Sta> idleWrapper = new LambdaQueryWrapper<Sta>() //.eq(Sta::getStaSts, StaStsType.IDLE.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getOutEnable, "Y") .in(Sta::getStaNo, staGroupList); .eq(Sta::getStatus, StatusType.ENABLE.val).eq(Sta::getOutEnable, "Y").in(Sta::getStaNo, staGroupList); List<Sta> idleList = staService.list(idleWrapper); if (Cools.isEmpty(idleList)) { return; @@ -391,10 +378,7 @@ int availableAgvCount = this.getAvailableAgvCount(agvGroupList); // 最多 ? 组bus运行 if (availableAgvCount <= busService.count(new LambdaQueryWrapper<Bus>() .in(Bus::getBusSts, BusStsType.RECEIVE.val(), BusStsType.PROGRESS.val()) .in(Bus::getMemo, memo, staTaskMemo) )) { if (availableAgvCount <= busService.count(new LambdaQueryWrapper<Bus>().in(Bus::getBusSts, BusStsType.RECEIVE.val(), BusStsType.PROGRESS.val()).in(Bus::getMemo, memo, staTaskMemo))) { return; } zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -1362,6 +1362,9 @@ .setQrCode(action.getCode()) .bodySync(body -> body.setHeight((short) Double.parseDouble(action.getParams()))) ); if (!Cools.isEmpty(action.getAskType()) && (action.getAskType() == 1 || action.getAskType() == 2)) { flag = askSta(action.getAskType(), action.getAskSta()); } break; case ReadyTakeFromAgvSite: agvAction.add(new AgvActionItem<>(ReadyTakeFromAgvSite.class) @@ -1383,6 +1386,9 @@ .setQrCode(action.getCode()) .bodySync(body -> body.setHeight((short) Double.parseDouble(action.getParams()))) ); if (!Cools.isEmpty(action.getAskType()) && (action.getAskType() == 1 || action.getAskType() == 2)) { flag = askSta(action.getAskType(), action.getAskSta()); } break; case ReadyReleaseToAgvSite: agvAction.add(new AgvActionItem<>(ReadyReleaseToAgvSite.class) @@ -1411,9 +1417,7 @@ default: break; } if (!Cools.isEmpty(action.getAskType()) && (action.getAskType() == 1 || action.getAskType() == 2)) { flag = askSta(action.getAskType(), action.getAskSta()); } } if (!flag) { log.error("任务组 [{}] 动作指令下发失败 ,向输送线询问报错!!!", actionGroupId); @@ -1626,6 +1630,8 @@ task.setUpdateTime(now); if (!taskService.updateById(task)) { log.error("Task [{}] 更新失败 !!!", task.getSeqNum()); } else { report(task, null, TaskReportStsType.END); } } } @@ -1676,6 +1682,7 @@ taskReport.setAgvId(task.getAgvId()); taskReport.setBusNo(task.getBusId$()); taskReport.setCreateTime(new Date()); taskReport.setCompleted(0); taskReport.setQrCode(qrCode); taskReport.setReportTimes(0); taskReport.setTaskSts(taskReportStsType.status); zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java
@@ -2,6 +2,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.acs.framework.common.Cools; import com.zy.acs.manager.core.utils.HttpHandler; import com.zy.acs.manager.manager.entity.TaskReport; @@ -17,6 +18,7 @@ import org.springframework.transaction.annotation.Transactional; import java.io.IOException; import java.util.Calendar; import java.util.Date; import java.util.List; @@ -41,21 +43,37 @@ if (report) { String wmsUrl = configService.getVal("WMS_URL", String.class); String wmsPath = configService.getVal("WMS_PATH", String.class); Integer times = configService.getVal("REPORT_TIMES", Integer.class, 3); String codes = configService.getVal("CODES", String.class, "1457;1612"); List<TaskReport> list = taskReportService.list(); List<TaskReport> list = taskReportService.list(new LambdaQueryWrapper<TaskReport>().eq(TaskReport::getCompleted, 0).le(TaskReport::getReportTimes, 3)); for (TaskReport taskReport : list) { if ((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) > times) { toLog(taskReport); continue; } if (report(taskReport, wmsUrl, wmsPath)) { toLog(taskReport); taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1); taskReport.setUpdateTime(new Date()); taskReport.setCompleted(1); } else { taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1); taskReport.setUpdateTime(new Date()); taskReportService.updateById(taskReport); } taskReportService.updateById(taskReport); } } } @Scheduled(fixedDelay = 3000) public void execute2() { Calendar instance = Calendar.getInstance(); instance.add(Calendar.DATE, 1); List<TaskReport> list = taskReportService.list(new LambdaQueryWrapper<TaskReport>().eq(TaskReport::getCompleted, 1).ge(TaskReport::getUpdateTime, instance.getTime())); Integer times = configService.getVal("REPORT_TIMES", Integer.class, 3); for (TaskReport taskReport : list) { if ((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) > times) { toLog(taskReport); } } list = taskReportService.list(new LambdaQueryWrapper<TaskReport>().eq(TaskReport::getReportTimes, 4).ge(TaskReport::getUpdateTime, instance.getTime())); for (TaskReport taskReport : list) { if ((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) > times) { toLog(taskReport); } } } zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/TaskReport.java
@@ -61,7 +61,11 @@ */ @ApiModelProperty(value = "库位或站点") private String locNo; /** * 是否完成 */ @ApiModelProperty(value = "是否完成") private Integer completed ; /** * 上报次数