diff --git a/src/main/java/com/qs/cost/common/dto/u8/U8CallbackVo.java b/src/main/java/com/qs/cost/common/dto/u8/U8CallbackVo.java new file mode 100644 index 0000000..41d559f --- /dev/null +++ b/src/main/java/com/qs/cost/common/dto/u8/U8CallbackVo.java @@ -0,0 +1,51 @@ +package com.qs.cost.common.dto.u8; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.io.Serializable; + +/** + * 请求记录历史 实体类 + * @author YenHex + * @since 2022-02-28 + */ +@Data +public class U8CallbackVo implements Serializable { + + private static final long serialVersionUID = 1L; + + /** id */ + @TableId(type = IdType.INPUT) + private String id; + + /** 账套、租户 */ + private String tenant; + + /** 客户端IP */ + private String clientHost; + + /** 接口名称 */ + private String apiCmd; + + /** 接口数据主键 */ + private String apiPk; + + /** 接口年份 */ + private String apiYear; + + /** 接口keyId */ + private String apiKeyId; + + /** 请求参数 */ + private String reqParams; + + + /** 数据返回结果 */ + private String respContext; + + + +} + diff --git a/src/main/java/com/qs/cost/common/dto/u8/U8RequestBo.java b/src/main/java/com/qs/cost/common/dto/u8/U8RequestBo.java new file mode 100644 index 0000000..ec56423 --- /dev/null +++ b/src/main/java/com/qs/cost/common/dto/u8/U8RequestBo.java @@ -0,0 +1,71 @@ +package com.qs.cost.common.dto.u8; + +import lombok.Data; + +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; + +/** + * @author YenHex + * @since 2022/2/25 + */ +@Data +public class U8RequestBo { + + /** + * 业务主键ID + *

用于记录,便于维护查询

+ *

实例:订单号,订单id

+ */ + private String pk; + + /** + * U8业务请求命令 + */ + @NotNull + private String cmd; + + /** + * 年度 + */ + @NotNull(message = "年度不能为空") + private String year; + + /** + * 账套 + */ + @NotNull(message = "账套不能为空") + private String book; + + /** + * 请求json字符串 + */ + @NotNull(message = "请求json字符串不能为空") + private String jsonBody; + + /** + * 暂无意义 + */ + private String keyId; + + /** + * 设置失败重连次数 + */ + @Max(value = 10,message = "重连次数不能超过10次") + @Min(value = 1,message = "重连次数不能少于1次") + private Integer settingRetryTimes; + + /** + * 是否回调(0-否;1-是) + */ + private Integer callbackState; + + /** + * 回调地址(callbackState=1时,不能为空) + */ + private String callbackHost; + + + +} diff --git a/src/main/java/com/qs/cost/module/service/JiaJinService.java b/src/main/java/com/qs/cost/module/service/JiaJinService.java index b190e18..6e86071 100644 --- a/src/main/java/com/qs/cost/module/service/JiaJinService.java +++ b/src/main/java/com/qs/cost/module/service/JiaJinService.java @@ -2,6 +2,7 @@ package com.qs.cost.module.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.cost.common.consts.ApiUrlConst; +import com.qs.cost.common.dto.u8.U8CallbackVo; import com.qs.cost.common.dto.HttpResult; import com.qs.cost.common.dto.R; import com.qs.cost.common.utils.*; @@ -10,6 +11,8 @@ import com.qs.cost.module.domain.LzOrder; import com.qs.cost.module.domain.LzResponseLog; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; @@ -124,11 +127,12 @@ public class JiaJinService { * U8中台回调接口 * @return */ - public R callback(){ - // + @PostMapping("/orderCallBack") + public R callback(@RequestBody U8CallbackVo requestVo){ + //TODO 解析VO //接收U8请求 - String orderNo = ""; + String orderNo = requestVo.getId(); LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(LzOrder::getOrderNo,orderNo); LzOrder lzOrder = lzOrderService.getOne(lqw,false);