Browse Source

对接拼团数据

master
wangfukang 3 weeks ago
parent
commit
74421b0b93
  1. 21
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/MallOrderServiceImpl.java
  2. 13
      hiver-modules/hiver-social/src/main/java/cc/hiver/social/controller/WechatPayController.java

21
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/MallOrderServiceImpl.java

@ -314,9 +314,9 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder
if (group == null) { if (group == null) {
throw new RuntimeException("拼团不存在"); throw new RuntimeException("拼团不存在");
} }
if (group.getStatus() != GROUP_STATUS_FORMING && group.getStatus() != GROUP_STATUS_FACE2FACE) { /*if (group.getStatus() != GROUP_STATUS_FORMING && group.getStatus() != GROUP_STATUS_FACE2FACE) {
throw new RuntimeException("当前拼团状态不可参团"); throw new RuntimeException("当前拼团状态不可参团");
} }*/
//超出拼团人数 也可以参与 //超出拼团人数 也可以参与
/*if (group.getCurrentMembers() >= group.getTargetMembers()) { /*if (group.getCurrentMembers() >= group.getTargetMembers()) {
throw new RuntimeException("拼团已满员"); throw new RuntimeException("拼团已满员");
@ -567,21 +567,14 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder
// 拼团信息(拼团订单才查) // 拼团信息(拼团订单才查)
if (ORDER_TYPE_GROUP == order.getOrderType()) { if (ORDER_TYPE_GROUP == order.getOrderType()) {
// 通过 headOrderId 或 groupUserIds 中包含此 userId 查找拼团 // 通过 headOrderId 或 groupUserIds 中包含此 userId 查找拼团
LambdaQueryWrapper<MallOrderGroup> gq = new LambdaQueryWrapper<>();
// 团长订单匹配 headOrderId
gq.eq(MallOrderGroup::getHeadOrderId, orderId);
MallOrderGroup group = mallOrderGroupMapper.selectOne(gq);
if (group == null) {
// 参团人:通过 userId + shopId 匹配 // 参团人:通过 userId + shopId 匹配
LambdaQueryWrapper<MallOrderGroup> gq2 = new LambdaQueryWrapper<>(); LambdaQueryWrapper<MallOrderGroup> gq2 = new LambdaQueryWrapper<>();
gq2.eq(MallOrderGroup::getShopId, order.getShopId()) gq2.eq(MallOrderGroup::getShopId, order.getShopId())
.like(MallOrderGroup::getGroupOrderIds, order.getId()) .like(MallOrderGroup::getGroupOrderIds, order.getId())
.last("LIMIT 1"); .last("LIMIT 1");
group = mallOrderGroupMapper.selectOne(gq2); MallOrderGroup group = mallOrderGroupMapper.selectOne(gq2);
}
vo.setGroupInfo(group); vo.setGroupInfo(group);
} }
return vo; return vo;
} }

13
hiver-modules/hiver-social/src/main/java/cc/hiver/social/controller/WechatPayController.java

@ -81,14 +81,23 @@ public class WechatPayController {
payParams.put("message","调起微信支付失败"); payParams.put("message","调起微信支付失败");
return ResponseEntity.ok(payParams); return ResponseEntity.ok(payParams);
}else{ }else{
//订单支付成功逻辑
mallOrderService.paySuccess(request.get("outTradeNo"));
// 2. 生成前端支付参数 // 2. 生成前端支付参数
Map<String, String> payParams = buildPaySign(prepayId); Map<String, String> payParams = buildPaySign(prepayId);
payParams.put("code","200"); payParams.put("code","200");
return ResponseEntity.ok(payParams); return ResponseEntity.ok(payParams);
} }
} }
@PostMapping("/paySuccess")
public ResponseEntity<Map<String, String>> paySuccess(@RequestBody Map<String, String> request) throws Exception {
//订单支付成功逻辑
mallOrderService.paySuccess(request.get("outTradeNo"));
Map<String, String> payParams = new HashMap<>();
payParams.put("code","200");
payParams.put("message","支付成功订单更新");
return ResponseEntity.ok(payParams);
}
public Map<String, String> buildPaySign(String prepayId) throws Exception { public Map<String, String> buildPaySign(String prepayId) throws Exception {
// 1. 生成参数 // 1. 生成参数
String timeStamp = String.valueOf(System.currentTimeMillis() / 1000); // 秒 String timeStamp = String.valueOf(System.currentTimeMillis() / 1000); // 秒

Loading…
Cancel
Save