| | |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cc.mrbird.febs.common.enumerates.*; |
| | | import cc.mrbird.febs.common.properties.XcxProperties; |
| | | import cc.mrbird.febs.common.utils.MallUtils; |
| | | import cc.mrbird.febs.common.utils.RedisUtils; |
| | | import cc.mrbird.febs.common.utils.ShareCodeUtil; |
| | | import cc.mrbird.febs.common.utils.SpringContextHolder; |
| | | import cc.mrbird.febs.mall.dto.RechargeWalletMessageSendDto; |
| | | import cc.mrbird.febs.mall.entity.*; |
| | |
| | | import cc.mrbird.febs.pay.util.Util; |
| | | import cc.mrbird.febs.pay.util.WechatConfigure; |
| | | import cc.mrbird.febs.rabbit.producter.AgentProducer; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.wechat.pay.contrib.apache.httpclient.notification.NotificationRequest; |
| | | import lombok.RequiredArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | import java.text.ParseException; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | @Slf4j |
| | |
| | | public class XcxPayController { |
| | | |
| | | private final HappyActivityOrderMapper happyActivityOrderMapper; |
| | | private final HappyActivityOrderItemMapper happyActivityOrderItemMapper; |
| | | private final MallOrderInfoMapper mallOrderInfoMapper; |
| | | private final MallMoneyFlowMapper mallMoneyFlowMapper; |
| | | private final MallMemberWalletMapper mallMemberWalletMapper; |
| | |
| | | order.setPayOrderNo(transaction_id); |
| | | mallOrderInfoMapper.updateById(order); |
| | | |
| | | |
| | | //先支付积分部分 |
| | | if(order.getScoreAmount().compareTo(BigDecimal.ZERO) > 0){ |
| | | memberWalletService.reduce(order.getScoreAmount(), order.getMemberId(), "prizeScore"); |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | order.getMemberId(), |
| | | order.getScoreAmount().negate(), |
| | | ScoreFlowTypeEnum.PAY.getValue(), |
| | | order.getOrderNo(), |
| | | FlowTypeEnum.PRIZE_SCORE.getValue(), |
| | | StrUtil.format(ScoreFlowTypeEnum.PAY.getDesc(),order.getScoreAmount()), |
| | | 2 |
| | | ); |
| | | } |
| | | |
| | | agentProducer.sendOrderCoupon(order.getId()); |
| | | // agentProducer.sendGetScoreMsg(order.getId()); |
| | | |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | order.getMemberId(), |
| | | order.getAmount().negate(), |
| | | MoneyFlowTypeEnum.WECHAT_PAY.getValue(), |
| | | ScoreFlowTypeEnum.WECHAT_PAY.getValue(), |
| | | order.getOrderNo(), |
| | | FlowTypeEnum.WECHAT.getValue(), |
| | | "微信支付", |
| | | 2); |
| | | FlowTypeEnum.BALANCE.getValue(), |
| | | StrUtil.format(ScoreFlowTypeEnum.WECHAT_PAY.getDesc(),order.getAmount()), |
| | | 2 |
| | | ); |
| | | // mallMoneyFlowService.addMoneyFlow( |
| | | // order.getMemberId(), |
| | | // order.getAmount().negate(), |
| | | // MoneyFlowTypeEnum.WECHAT_PAY.getValue(), |
| | | // order.getOrderNo(), |
| | | // FlowTypeEnum.WECHAT.getValue(), |
| | | // "微信支付", |
| | | // 2); |
| | | threadResult.success().message("支付成功"); |
| | | } else { |
| | | log.info("订单状态不为待付款,order status=", order.getStatus()); |
| | |
| | | happyActivityOrder.setWxOrderNo(transaction_id); |
| | | happyActivityOrderMapper.updateById(happyActivityOrder); |
| | | |
| | | List<HappyActivityOrderItem> items = happyActivityOrderItemMapper.selectList( |
| | | new LambdaQueryWrapper<HappyActivityOrderItem>() |
| | | .eq(HappyActivityOrderItem::getOrderId, orderId) |
| | | ); |
| | | if (CollUtil.isNotEmpty(items)) { |
| | | for (HappyActivityOrderItem item : items) { |
| | | String code = ShareCodeUtil.toSerialCode(item.getOrderId()) + MallUtils.getRandomNum(10); |
| | | item.setCode(code); |
| | | happyActivityOrderItemMapper.updateById(item); |
| | | } |
| | | } |
| | | |
| | | mallMoneyFlowService.addMoneyFlow( |
| | | happyActivityOrder.getMemberId(), |
| | | happyActivityOrder.getAmount().negate(), |