diff --git a/src/main/java/com/wendao/entity/AutoPassPay.java b/src/main/java/com/wendao/entity/AutoPassPay.java deleted file mode 100644 index e83cc5c..0000000 --- a/src/main/java/com/wendao/entity/AutoPassPay.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.wendao.entity; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; - -/** - * @author lld - */ -@TableName("t_auto_pass_pay") -@Data -public class AutoPassPay implements Serializable{ - - /** - * 唯一标识 - */ - @TableId(value = "id", type = IdType.AUTO) - private Long id; - - /** 支付订单id*/ - private String orderId; - - private Long messageId; - - private Date messageCreateTime; - - private Date createTime; - - private String messageDesc; - -} diff --git a/src/main/java/com/wendao/entity/PayChatMessage.java b/src/main/java/com/wendao/entity/PayChatMessage.java deleted file mode 100644 index 7cac312..0000000 --- a/src/main/java/com/wendao/entity/PayChatMessage.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.wendao.entity; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; - -import java.util.Date; - -/** - * @author: - * @description: - * @create: 2026-01-28 16:00 - **/ -@Data -@TableName("t_pay_chat_message") -public class PayChatMessage { - /** - * 主键ID - */ - @TableId(value = "id", type = IdType.INPUT) - private Long id; - - /** - * 序列号 - */ - private Long seq; - - /** - * 消息时间 - */ - private Date time; - - /** - * 聊天对象 - */ - private String talker; - - /** - * 聊天对象名称 - */ - private String talkerName; - - /** - * 是否为聊天室 - * 0-否,1-是 - */ - private Integer isChatRoom; - - /** - * 发送者 - */ - private String sender; - - /** - * 发送者名称 - */ - private String senderName; - - /** - * 是否为自己发送 - * 0-否,1-是 - */ - private Integer isSelf; - - /** - * 消息类型 - */ - private Integer type; - - /** - * 消息子类型 - */ - private Integer subType; - - /** - * 消息内容 - */ - private String content; - - /** - * 附加内容 - */ - private String contents; - - /** - * 平台类型 - */ - private String platformType; - - /** - * 处理状态 - * 可根据业务定义具体状态值 0未处理 1已处理 2处理失败 - */ - private Integer processStatus; - - /** - * 创建时间 - */ - private Date createTime; - - /** - * 支付ID - */ - private String orderId; -} diff --git a/src/main/java/com/wendao/mapper/AutoPassPayMapper.java b/src/main/java/com/wendao/mapper/AutoPassPayMapper.java deleted file mode 100644 index 12a46f9..0000000 --- a/src/main/java/com/wendao/mapper/AutoPassPayMapper.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.wendao.mapper; - -import com.wendao.entity.AutoPassPay; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** - * @author lld - */ -public interface AutoPassPayMapper extends BaseMapper { - -} diff --git a/src/main/java/com/wendao/mapper/PayChatMessageMapper.java b/src/main/java/com/wendao/mapper/PayChatMessageMapper.java deleted file mode 100644 index 3322c01..0000000 --- a/src/main/java/com/wendao/mapper/PayChatMessageMapper.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.wendao.mapper; - -import com.wendao.entity.PayChatMessage; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** - * @author lld - */ -public interface PayChatMessageMapper extends BaseMapper { - -} diff --git a/src/main/java/com/wendao/service/OrderService.java b/src/main/java/com/wendao/service/OrderService.java index f899595..b229063 100644 --- a/src/main/java/com/wendao/service/OrderService.java +++ b/src/main/java/com/wendao/service/OrderService.java @@ -1,11 +1,9 @@ package com.wendao.service; import com.wendao.entity.Order; -import com.wendao.entity.PayChatMessage; import com.wendao.model.req.OpenApiOrderReq; import com.wendao.model.resp.CountResp; import com.wendao.model.ResponseVO; -import com.wendao.dto.WeChatMsgDTO; import com.wendao.model.req.GetOrderListReq; import com.wendao.model.req.OrderReq; import com.wendao.model.resp.AddOrderResp; @@ -14,7 +12,6 @@ import com.wendao.model.resp.OpenApiOrderResp; import javax.servlet.http.HttpServletRequest; import java.util.Date; -import java.util.List; /** * @author lld diff --git a/src/main/java/com/wendao/service/impl/OrderServiceImpl.java b/src/main/java/com/wendao/service/impl/OrderServiceImpl.java index 8799539..27fc37f 100644 --- a/src/main/java/com/wendao/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/wendao/service/impl/OrderServiceImpl.java @@ -1,16 +1,11 @@ package com.wendao.service.impl; +import cn.hutool.http.HttpUtil; import com.wendao.config.PayProConfig; -import com.wendao.entity.AutoPassPay; import com.wendao.entity.Order; -import com.wendao.entity.PayChatMessage; import com.wendao.exception.ApiException; -import com.wendao.mapper.AutoPassPayMapper; import com.wendao.mapper.OrderMapper; -import com.wendao.mapper.PayChatMessageMapper; import com.wendao.mapper.ProductMapper; -import com.wendao.dto.MsgContentsDTO; -import com.wendao.dto.WeChatMsgDTO; import com.wendao.enums.OrderStatesEnum; import com.wendao.model.req.GetOrderListReq; import com.wendao.model.req.OpenApiOrderReq; @@ -24,7 +19,6 @@ import com.wendao.entity.Product; import com.wendao.model.ResponseVO; import com.wendao.common.utils.*; import com.wendao.model.req.OrderReq; -import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -72,15 +66,9 @@ public class OrderServiceImpl implements OrderService { @Autowired ProductMapper productMapper; - @Autowired - AutoPassPayMapper autoPassPayMapper; - @Autowired Snowflake snowflake; - @Autowired - PayChatMessageMapper payChatMessageMapper; - @Autowired OpenApiSignUtil openApiSignUtil; @@ -232,7 +220,7 @@ public class OrderServiceImpl implements OrderService { public int pass(String id) { //Pay pay = thisService.changePayState(id, 1); Order pay = orderMapper.selectById(id); - if (pay.getProductId() != null) { + if (pay.getOrderSource().equals("PRODUCT") && pay.getProductId() != null) { Product product = productMapper.selectById(pay.getProductId()); if (product.getType().equals("CODE")) { emailUtils.sendTemplateMail(payProConfig.getEmail().getSender(), pay.getEmail(), "【Pay个人收款支付系统】支付成功通知(附下载链接)", @@ -240,6 +228,8 @@ public class OrderServiceImpl implements OrderService { pay.setState(OrderStatesEnum.SUCCESS_PAY.getState()); orderMapper.updateById(pay); } + } else if (pay.getOrderSource().equals("OPENAPI")) { + callbackFaka(pay.getNotifyUrl(),pay.getId(),pay.getMoney(),pay.getPayNum()); } return 1; } @@ -379,6 +369,11 @@ public class OrderServiceImpl implements OrderService { throw new ApiException(ApiException.ErrorCode.SYSTEM_ERROR, "创建订单失败"); } + String tokenAdmin = UUID.randomUUID().toString(); + redisTemplate.opsForValue().set(order.getId(), tokenAdmin, payProConfig.getToken().getExpire(), TimeUnit.DAYS); + order = getAdminUrl(order, order.getId(), tokenAdmin, payProConfig.getToken().getValue()); + emailUtils.sendTemplateMail(payProConfig.getEmail().getSender(), payProConfig.getEmail().getReceiver(), "【OPENAPI】待审核处理", "payment-review", order); + return OpenApiOrderResp.builder() .orderId(order.getId()) .orderNo(req.getOrderNo()) @@ -440,4 +435,16 @@ public class OrderServiceImpl implements OrderService { pay.setStatistic(statistic); return pay; } + + public void callbackFaka(String notifyUrl, String orderNo, BigDecimal amount, String payNum) { + Map params = new TreeMap<>(); + params.put("orderNo", orderNo); + params.put("amount", amount); + params.put("payNum", payNum); + + // 生成签名 + String sign = openApiSignUtil.generateSign(params); + params.put("sign", sign); + HttpUtil.post(notifyUrl, com.alibaba.fastjson2.JSONObject.toJSONString(params)); + } }