From ba88144615a3964246e01bb93daa6aab6af9f7db Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期一, 17 二月 2025 13:41:42 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/OpenController.java | 4 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 16 ++-- src/main/java/com/zy/asrs/utils/NotifyUtils.java | 13 +- src/main/java/com/zy/asrs/mapper/HttpRequestLogMapper.java | 12 +++ src/main/java/com/zy/asrs/task/NotifyScheduler.java | 21 +++++ src/main/java/com/zy/asrs/task/WrkMastScheduler.java | 10 +- src/main/java/com/zy/asrs/service/impl/HttpRequestLogServiceImpl.java | 12 +++ src/main/java/com/zy/common/CodeBuilder.java | 19 ++-- src/main/java/com/zy/asrs/entity/HttpRequestLog.java | 63 +++++++++++++++ src/main/java/com/zy/asrs/service/HttpRequestLogService.java | 8 ++ src/main/resources/mapper/HttpRequestLogMapper.xml | 15 +++ src/main/java/com/zy/asrs/domain/NotifyDto.java | 3 src/main/resources/application.yml | 2 13 files changed, 167 insertions(+), 31 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index f79b1d1..b8b27d5 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -101,8 +101,8 @@ @GetMapping("/test") public R test() { - notifyUtils.notify("task", 1, "9999", NotifyMsgType.SHUTTLE_MOVING, "data"); - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), 2, "9999", NotifyMsgType.SHUTTLE_MOVE_COMPLETE); + notifyUtils.notify("task", 1, "9999", "W9999", NotifyMsgType.SHUTTLE_MOVING, "data"); + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), 2, "9999", "W9999", NotifyMsgType.SHUTTLE_MOVE_COMPLETE); return R.ok(); } diff --git a/src/main/java/com/zy/asrs/domain/NotifyDto.java b/src/main/java/com/zy/asrs/domain/NotifyDto.java index 5173b88..eb15f4b 100644 --- a/src/main/java/com/zy/asrs/domain/NotifyDto.java +++ b/src/main/java/com/zy/asrs/domain/NotifyDto.java @@ -16,6 +16,9 @@ //宸ヤ綔鍙� private String taskNo; + //涓婄骇绯荤粺宸ヤ綔鍙� + private String superTaskNo; + //娑堟伅绫诲瀷 private String msgType; diff --git a/src/main/java/com/zy/asrs/entity/HttpRequestLog.java b/src/main/java/com/zy/asrs/entity/HttpRequestLog.java new file mode 100644 index 0000000..a46ccff --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/HttpRequestLog.java @@ -0,0 +1,63 @@ +package com.zy.asrs.entity; + +import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId; +import com.baomidou.mybatisplus.enums.IdType; +import java.text.SimpleDateFormat; +import java.util.Date; +import com.baomidou.mybatisplus.annotations.TableField; +import org.springframework.format.annotation.DateTimeFormat; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import com.baomidou.mybatisplus.annotations.TableName; +import java.io.Serializable; + +@Data +@TableName("sys_http_request_log") +public class HttpRequestLog implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value= "") + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @ApiModelProperty(value= "") + private String name; + + @ApiModelProperty(value= "") + private String request; + + @ApiModelProperty(value= "") + private String response; + + @ApiModelProperty(value= "") + @TableField("create_time") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + public HttpRequestLog() {} + + public HttpRequestLog(String name,String request,String response,Date createTime) { + this.name = name; + this.request = request; + this.response = response; + this.createTime = createTime; + } + +// HttpRequestLog httpRequestLog = new HttpRequestLog( +// null, // +// null, // +// null, // +// null // +// ); + + public String getCreateTime$(){ + if (Cools.isEmpty(this.createTime)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); + } + + +} diff --git a/src/main/java/com/zy/asrs/mapper/HttpRequestLogMapper.java b/src/main/java/com/zy/asrs/mapper/HttpRequestLogMapper.java new file mode 100644 index 0000000..f5da580 --- /dev/null +++ b/src/main/java/com/zy/asrs/mapper/HttpRequestLogMapper.java @@ -0,0 +1,12 @@ +package com.zy.asrs.mapper; + +import com.zy.asrs.entity.HttpRequestLog; +import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Repository; + +@Mapper +@Repository +public interface HttpRequestLogMapper extends BaseMapper<HttpRequestLog> { + +} diff --git a/src/main/java/com/zy/asrs/service/HttpRequestLogService.java b/src/main/java/com/zy/asrs/service/HttpRequestLogService.java new file mode 100644 index 0000000..419d2ed --- /dev/null +++ b/src/main/java/com/zy/asrs/service/HttpRequestLogService.java @@ -0,0 +1,8 @@ +package com.zy.asrs.service; + +import com.zy.asrs.entity.HttpRequestLog; +import com.baomidou.mybatisplus.service.IService; + +public interface HttpRequestLogService extends IService<HttpRequestLog> { + +} diff --git a/src/main/java/com/zy/asrs/service/impl/HttpRequestLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/HttpRequestLogServiceImpl.java new file mode 100644 index 0000000..9f6b0b6 --- /dev/null +++ b/src/main/java/com/zy/asrs/service/impl/HttpRequestLogServiceImpl.java @@ -0,0 +1,12 @@ +package com.zy.asrs.service.impl; + +import com.zy.asrs.mapper.HttpRequestLogMapper; +import com.zy.asrs.entity.HttpRequestLog; +import com.zy.asrs.service.HttpRequestLogService; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service("httpRequestLogService") +public class HttpRequestLogServiceImpl extends ServiceImpl<HttpRequestLogMapper, HttpRequestLog> implements HttpRequestLogService { + +} diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index 88d0687..3a3d145 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -218,7 +218,7 @@ //涓嬪彂浠诲姟 shuttleAction.assignWork(shuttleProtocol.getShuttleNo(), assignCommand); //瑙﹀彂閫氱煡 - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_TRANSPORT); + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_TRANSPORT); return false; } return false; @@ -394,7 +394,7 @@ //涓嬪彂浠诲姟 shuttleAction.assignWork(shuttleProtocol.getShuttleNo(), assignCommand); //瑙﹀彂閫氱煡 - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_TRANSPORT); + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_TRANSPORT); return false; } return false; @@ -442,17 +442,17 @@ //310.灏忚溅绉诲姩涓� ==> 311.灏忚溅绉诲姩瀹屾垚 wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts); shuttleThread.setSyncTaskNo(0); - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_MOVE_COMPLETE);//瑙﹀彂閫氱煡 + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_MOVE_COMPLETE);//瑙﹀彂閫氱煡 } else if (wrkMast.getWrkSts() == WrkStsType.CHARGE_SHUTTLE_WORKING.sts) { //204.灏忚溅鍏呯數涓� ==> 205.灏忚溅鍏呯數瀹屾垚 wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_COMPLETE.sts); shuttleThread.setSyncTaskNo(0); - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_POWER_COMPLETE);//瑙﹀彂閫氱煡 + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_POWER_COMPLETE);//瑙﹀彂閫氱煡 } else if (wrkMast.getWrkSts() == WrkStsType.LOC_MOVE_SHUTTLE_RUN.sts) { //502.灏忚溅鎼繍涓� ==> 509.绉诲簱瀹屾垚 wrkMast.setWrkSts(WrkStsType.COMPLETE_LOC_MOVE.sts); shuttleThread.setSyncTaskNo(0); - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_DELIVERY);//瑙﹀彂閫氱煡 + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_DELIVERY);//瑙﹀彂閫氱煡 } else { continue; } @@ -573,7 +573,7 @@ //涓嬪彂浠诲姟 shuttleAction.assignWork(shuttleProtocol.getShuttleNo(), assignCommand); //瑙﹀彂閫氱煡 - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_MOVING); + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_MOVING); return false; } return false; @@ -1312,7 +1312,7 @@ //涓嬪彂浠诲姟 shuttleAction.assignWork(shuttleProtocol.getShuttleNo(), assignCommand); - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_POWER_START);//瑙﹀彂閫氱煡 + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_POWER_START);//瑙﹀彂閫氱煡 return false; } return true; @@ -1513,8 +1513,8 @@ if (wrkMastService.updateById(wrkMast)) { //涓嬪彂浠诲姟 shuttleAction.assignWork(shuttleProtocol.getShuttleNo(), assignCommand); + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_MOVING); //瑙﹀彂閫氱煡 - notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.SHUTTLE_MOVING); return false; } return false; diff --git a/src/main/java/com/zy/asrs/task/NotifyScheduler.java b/src/main/java/com/zy/asrs/task/NotifyScheduler.java index 0c786e3..43fe4f9 100644 --- a/src/main/java/com/zy/asrs/task/NotifyScheduler.java +++ b/src/main/java/com/zy/asrs/task/NotifyScheduler.java @@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.zy.asrs.domain.NotifyDto; +import com.zy.asrs.entity.HttpRequestLog; +import com.zy.asrs.service.HttpRequestLogService; import com.zy.asrs.utils.NotifyUtils; import com.zy.common.utils.HttpHandler; import com.zy.common.utils.RedisUtil; @@ -18,6 +20,7 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import java.util.Date; import java.util.List; @Component @@ -32,6 +35,8 @@ private SlaveProperties slaveProperties; @Autowired private ConfigService configService; + @Autowired + private HttpRequestLogService httpRequestLogService; @Scheduled(cron = "0/3 * * * * ? ") public synchronized void notifyShuttle(){ @@ -45,6 +50,11 @@ for (ForkLiftSlave slave : slaveProperties.getForkLift()) { notifyMsg(String.valueOf(SlaveType.ForkLift), slave.getId()); } + } + + @Scheduled(cron = "0/3 * * * * ? ") + public synchronized void notifyTask(){ + notifyMsg("task", 1); } private synchronized void notifyMsg(String notifyType, Integer device) { @@ -89,6 +99,11 @@ continue; } + HttpRequestLog httpRequestLog = new HttpRequestLog(); + httpRequestLog.setName(notifyUri + notifyUriPath); + httpRequestLog.setRequest(JSON.toJSONString(notifyDto)); + httpRequestLog.setCreateTime(new Date()); + try { //瑙﹀彂閫氱煡 String response = new HttpHandler.Builder() @@ -97,15 +112,21 @@ .setJson(JSON.toJSONString(notifyDto)) .build() .doPost(); + httpRequestLog.setResponse(response); + JSONObject jsonObject = JSON.parseObject(response); Integer code = jsonObject.getInteger("code"); if(code == 200){ //閫氱煡鎴愬姛 redisUtil.del(key); + continue; } }catch (Exception e){ e.printStackTrace(); + }finally { + //淇濆瓨璁板綍 + httpRequestLogService.insert(httpRequestLog); } //閫氱煡澶辫触 diff --git a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java index 7b5a025..a378019 100644 --- a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java +++ b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java @@ -79,7 +79,7 @@ } //涓婃姤 - notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); + notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); } } @@ -122,7 +122,7 @@ } //涓婃姤 - notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); + notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); } } @@ -185,7 +185,7 @@ } //涓婃姤 - notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); + notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_COMPLETE, JSON.toJSONString(wrkMast)); } } @@ -228,7 +228,7 @@ } //涓婃姤 - notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.TASK_CHARGE_COMPLETE, JSON.toJSONString(wrkMast)); + notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_CHARGE_COMPLETE, JSON.toJSONString(wrkMast)); } } @@ -277,7 +277,7 @@ } //涓婃姤 - notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), NotifyMsgType.TASK_CANCEL, JSON.toJSONString(wrkMast)); + notifyUtils.notify("task", 1, String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.TASK_CANCEL, JSON.toJSONString(wrkMast)); } } diff --git a/src/main/java/com/zy/asrs/utils/NotifyUtils.java b/src/main/java/com/zy/asrs/utils/NotifyUtils.java index 431bf18..ba4e618 100644 --- a/src/main/java/com/zy/asrs/utils/NotifyUtils.java +++ b/src/main/java/com/zy/asrs/utils/NotifyUtils.java @@ -27,12 +27,12 @@ @Autowired private ConfigService configService; - public synchronized boolean notify(String notifyType, Integer device, String taskNo, NotifyMsgType msgType) { - return append(notifyType, device, taskNo, msgType, null); + public synchronized boolean notify(String notifyType, Integer device, String taskNo, String superTaskNo, NotifyMsgType msgType) { + return append(notifyType, device, taskNo, superTaskNo, msgType, null); } - public synchronized boolean notify(String notifyType, Integer device, String taskNo, NotifyMsgType msgType, String data) { - return append(notifyType, device, taskNo, msgType, data); + public synchronized boolean notify(String notifyType, Integer device, String taskNo, String superTaskNo, NotifyMsgType msgType, String data) { + return append(notifyType, device, taskNo, superTaskNo, msgType, data); } public synchronized List<String> takeKeys(String notifyType, Integer device) { @@ -68,9 +68,9 @@ return key; } - private boolean append(String notifyType, Integer device, String taskNo, NotifyMsgType msgType, String data) { + private boolean append(String notifyType, Integer device, String taskNo, String superTaskNo, NotifyMsgType msgType, String data) { String key = getKey(notifyType, device); - if(key == null){ + if (key == null) { return false; } @@ -82,6 +82,7 @@ dto.setMsgDesc(msgType.desc); dto.setData(data); dto.setTaskNo(taskNo); + dto.setSuperTaskNo(superTaskNo); //閲嶈瘯娆℃暟 Config notifyFailTimesConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "notifyFailTimes")); diff --git a/src/main/java/com/zy/common/CodeBuilder.java b/src/main/java/com/zy/common/CodeBuilder.java index 1a41e99..e30392f 100644 --- a/src/main/java/com/zy/common/CodeBuilder.java +++ b/src/main/java/com/zy/common/CodeBuilder.java @@ -11,16 +11,17 @@ public static void main(String[] args) throws Exception { CoolGenerator generator = new CoolGenerator(); // mysql -// generator.url="localhost:3306/cool"; -// generator.username="root"; -// generator.password="xltys1995"; -// generator.table="sys_host"; + generator.sqlOsType = SqlOsType.MYSQL; + generator.url="localhost:3306/shuttle_rcs"; + generator.username="root"; + generator.password="root"; + generator.table="sys_http_request_log"; // sqlserver - generator.sqlOsType = SqlOsType.SQL_SERVER; - generator.url="192.168.4.15:1433;databasename=tzskasrs"; - generator.username="sa"; - generator.password="sa@123"; - generator.table="asr_bas_shuttle"; +// generator.sqlOsType = SqlOsType.SQL_SERVER; +// generator.url="127.0.0.1:1433;databasename=tzskasrs"; +// generator.username="sa"; +// generator.password="sa@123"; +// generator.table="asr_bas_shuttle"; generator.packagePath="com.zy.asrs"; generator.controller = false; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index c1a3b87..6b973ab 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -11,7 +11,7 @@ validation-timeout: 3000 connection-test-query: select 1 driver-class-name: com.mysql.jdbc.Driver - url: jdbc:mysql://127.0.0.1:3306/lfdwcs?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + url: jdbc:mysql://127.0.0.1:3306/shuttle_rcs?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: root mvc: diff --git a/src/main/resources/mapper/HttpRequestLogMapper.xml b/src/main/resources/mapper/HttpRequestLogMapper.xml new file mode 100644 index 0000000..ef5b6b7 --- /dev/null +++ b/src/main/resources/mapper/HttpRequestLogMapper.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.zy.asrs.mapper.HttpRequestLogMapper"> + + <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> + <resultMap id="BaseResultMap" type="com.zy.asrs.entity.HttpRequestLog"> + <id column="id" property="id" /> + <result column="name" property="name" /> + <result column="request" property="request" /> + <result column="response" property="response" /> + <result column="create_time" property="createTime" /> + + </resultMap> + +</mapper> -- Gitblit v1.9.1