1
zhang
1 天以前 2ddf6fc24333df35bd1ac15848b917336d533d53
zy-acs-manager/src/main/java/com/zy/acs/manager/core/third/ReportThirdScheduler.java
@@ -8,6 +8,7 @@
import com.zy.acs.manager.core.utils.HttpHandler;
import com.zy.acs.manager.manager.entity.TaskReport;
import com.zy.acs.manager.manager.entity.TaskReportLog;
import com.zy.acs.manager.manager.enums.TaskReportStsType;
import com.zy.acs.manager.manager.service.TaskReportLogService;
import com.zy.acs.manager.manager.service.TaskReportService;
import com.zy.acs.manager.system.service.ConfigService;
@@ -44,32 +45,57 @@
        if (report) {
            String wmsUrl = configService.getVal("WMS_URL", String.class);
            String wmsPath = configService.getVal("WMS_PATH", String.class);
            String wcsUrl = configService.getVal("WCS_URL", String.class);
            String wcsPath = configService.getVal("WCS_TASK_REPORT", 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()), wmsUrl, wmsPath)) {
                    taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1);
                    taskReport.setUpdateTime(new Date());
                    taskReport.setCompleted(1);
                if (taskReport.getEventType().equalsIgnoreCase(TaskReportStsType.COMPLETED.name)) {
                    String response = null;
                    try {
                        response = new HttpHandler.Builder()
                                .setUri(wcsUrl)
                                .setPath(wcsPath)
                                .setJson(JSON.toJSONString(taskReport))
                                .build()
                                .doPost();
                        log.info("返回参数:{}", response);
                        taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1);
                        taskReport.setUpdateTime(new Date());
                        taskReport.setCompleted(1);
                    } catch (IOException e) {
                        taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1);
                        taskReport.setUpdateTime(new Date());
                        e.printStackTrace();
                    }
                    taskReportService.updateById(taskReport);
                } else {
                    taskReport.setReportTimes((Cools.isEmpty(taskReport.getReportTimes()) ? 0 : taskReport.getReportTimes()) + 1);
                    taskReport.setUpdateTime(new Date());
                    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);
                    } 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() {
        Boolean report = configService.getVal("REPORT", Boolean.class, false);
        if (report) {
            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()));
            instance.add(Calendar.DATE, 7);
            List<TaskReport> list = taskReportService.list(new LambdaQueryWrapper<TaskReport>().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) {
@@ -97,7 +123,7 @@
                    .doPost();
            log.info("返回参数:{}", response);
            JSONObject jsonObject = JSON.parseObject(response);
            if (jsonObject.getInteger("code").equals(200)) {
            if (jsonObject != null && jsonObject.get("code") != null && jsonObject.getInteger("code").equals(200)) {
                return true;
            }
        } catch (IOException e) {