From 3a0ee38375a0fdf95ef734fa420030203ee31abd Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 28 Jul 2023 17:08:30 +0800 Subject: [PATCH] 赠送积分更新状态 --- src/main/java/cc/mrbird/febs/pay/service/impl/XcxPayServiceImpl.java | 68 ++++++++++++++++++++++++++-------- 1 files changed, 52 insertions(+), 16 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/pay/service/impl/XcxPayServiceImpl.java b/src/main/java/cc/mrbird/febs/pay/service/impl/XcxPayServiceImpl.java index 7f848cc..d09c7f1 100644 --- a/src/main/java/cc/mrbird/febs/pay/service/impl/XcxPayServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/pay/service/impl/XcxPayServiceImpl.java @@ -8,6 +8,8 @@ import cc.mrbird.febs.common.utils.*; import cc.mrbird.febs.mall.dto.ApiRechargeWalletDto; import cc.mrbird.febs.mall.dto.RechargeWalletMessageSendDto; +import cc.mrbird.febs.mall.dto.WxPowerDto; +import cc.mrbird.febs.mall.dto.WxUpCodeDto; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.IMallMoneyFlowService; @@ -15,6 +17,7 @@ import cc.mrbird.febs.pay.model.*; import cc.mrbird.febs.pay.service.IXcxPayService; import cc.mrbird.febs.pay.util.WechatConfigure; +import cc.mrbird.febs.pay.util.WechatEventUtil; import cc.mrbird.febs.pay.util.WeixinServiceUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.text.StrFormatter; @@ -65,7 +68,13 @@ private MallMemberWithdrawMapper mallMemberWithdrawMapper; private final IMallMoneyFlowService mallMoneyFlowService; @Autowired + WechatEventUtil wechatEventUtil; + @Autowired RedisUtils redisUtils; + @Autowired + private MallGoodsMapper mallGoodsMapper; + @Autowired + private MallTeamLeaderMapper mallTeamLeaderMapper; private final SpringContextHolder springContextHolder; @@ -78,9 +87,13 @@ BrandWCPayRequestData payData; String productNames = "小程序充值"; MallMember mallMember = mallMemberMapper.selectById(apiRechargeWalletDto.getMemberId()); - String rechargeNo = "CZ_"+MallUtils.getOrderNum(); + String rechargeNo = apiRechargeWalletDto.getRechargeNo(); + Long agentApplyId = apiRechargeWalletDto.getAgentApplyId() == null ? 0L : apiRechargeWalletDto.getAgentApplyId(); Boolean debug = xcxProperties.getDebug(); - String attrStr = "{'rechargeNo':"+rechargeNo+",'memberId':"+mallMember.getId()+",'type':"+apiRechargeWalletDto.getType()+"}"; + String attrStr = "{'rechargeNo':"+rechargeNo + +",'memberId':"+mallMember.getId() + +",'agentApplyId':"+agentApplyId + +",'type':"+apiRechargeWalletDto.getType()+"}"; if (debug) { payData = weixinServiceUtil.createRechargeWallet("[测试]" + productNames, rechargeNo, 1, mallMember.getOpenId(), attrStr); @@ -88,13 +101,6 @@ payData = weixinServiceUtil.createRechargeWallet(productNames, rechargeNo, unit.multiply(money).intValue(),mallMember.getOpenId(), attrStr); } - mallMoneyFlowService.addMoneyFlow( - mallMember.getId(), - money, - MoneyFlowTypeEnum.RECHARGE.getValue(), - rechargeNo, - FlowTypeEnum.BALANCE.getValue(), - "余额充值",1); return payData; } @@ -186,6 +192,41 @@ // return new FebsResponse().fail().data("获取二维码失败"); // } return new FebsResponse().success(); + } + @Override + public FebsResponse getUpCode(WxUpCodeDto wxUpCodeDto) { + String qRcode = null; + if(ObjectUtil.isEmpty(wxUpCodeDto.getInviteId())){ + return new FebsResponse().fail().message("邀请码不存在"); + } + String inviteId = wxUpCodeDto.getInviteId(); + MallMember mallMember = mallMemberMapper.selectInfoByInviteId(inviteId); + if(ObjectUtil.isEmpty(mallMember)){ + return new FebsResponse().fail().message("邀请码不存在"); + } + String sessionKey = mallMember.getSessionKey(); + if(ObjectUtil.isEmpty(sessionKey)){ + String ticket = wechatEventUtil.getTicket(inviteId); + if(StrUtil.isEmpty(ticket)){ + return new FebsResponse().fail().message("临时带参二维码ticket失败"); + } + qRcode = wechatEventUtil.getQRcode(ticket); + mallMember.setSessionKey(qRcode); + mallMemberMapper.updateById(mallMember); + }else{ + qRcode = sessionKey; + } + + return new FebsResponse().success().data(qRcode); + } + + @Override + public FebsResponse getPower(WxPowerDto wxPowerDto) { + if(ObjectUtil.isEmpty(wxPowerDto.getUrl())){ + return new FebsResponse().fail().message("获取权限失败"); + } + Map<String, Object> ticket = wechatEventUtil.ticket(wxPowerDto.getUrl()); + return new FebsResponse().success().data(ticket); } @Override @@ -293,11 +334,6 @@ return wxTemplates; } - @Autowired - private MallGoodsMapper mallGoodsMapper; - @Autowired - private MallTeamLeaderMapper mallTeamLeaderMapper; - @Override public FebsResponse generateQrCode(WxGenerateQrCodeDto wxGenerateQrCodeDto) { Integer type = wxGenerateQrCodeDto.getType(); @@ -395,9 +431,9 @@ * @return */ //图片上传路径 - public static final String IMG_UPLOAD_PATH="/mnt/sdc/webresource/groupbuy/wxcode"; + public static final String IMG_UPLOAD_PATH="/mnt/sdc/webresource/qianayi/wxcode"; public String generateAcode(String scene,String path,String imgName,String width, Integer type){ - String urlPrefix="https://hwfile.csxuncong.com/groupbuy/wxcode"; + String urlPrefix="https://hwfile.csxuncong.com/qianayi/wxcode"; String imgPath=IMG_UPLOAD_PATH+imgName; if(!FileUtil.exist(imgPath)){ -- Gitblit v1.9.1