huanghongfa
2021-08-19 c40be027ef8068b9a77bb24c94291dee25f563d8
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java
@@ -12,10 +12,9 @@
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.wallet.ComActWalletVO;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.dao.ComActEasyPhotoActivityMapper;
import com.panzhihua.service_community.dao.ComActEasyPhotoDAO;
import com.panzhihua.service_community.dao.ComActEasyPhotoRewardMapper;
import com.panzhihua.service_community.dao.ComActUserWalletMapper;
import com.panzhihua.common.utlis.WxUtil;
import com.panzhihua.common.utlis.WxXCXTempSend;
import com.panzhihua.service_community.dao.*;
import com.panzhihua.service_community.model.dos.*;
import com.panzhihua.service_community.service.ComActUserWalletChangeService;
import com.panzhihua.service_community.service.ComActUserWalletService;
@@ -27,6 +26,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Date;
import java.util.Map;
@@ -51,6 +51,8 @@
    private ComActUserWalletChangeService comActUserWalletChangeService;
    @Resource
    private ComActEasyPhotoRewardMapper comActEasyPhotoRewardMapper;
    @Resource
    private ComActActSignDAO comActActSignDAO;
    /**
     * 查询用户钱包信息
@@ -130,17 +132,27 @@
        }
        //查询随手拍活动
//        ComActEasyPhotoActivityDO photoActivityDO = comActEasyPhotoActivityMapper.selectById(easyPhotoDO.getActivityId());
//        if(photoActivityDO == null){
//            log.error("给用户添加收益失败,原因:未查到活动记录,活动id:" + easyPhotoDO.getActivityId());
//            return;
//        }
        ComActEasyPhotoActivityDO photoActivityDO = comActEasyPhotoActivityMapper.selectById(easyPhotoDO.getActivityId());
        if(photoActivityDO == null){
            log.error("给用户添加收益失败,原因:未查到活动记录,活动id:" + easyPhotoDO.getActivityId());
            return;
        }
//        if(photoActivityDO.getStatus() != ComActEasyPhotoActivityDO.status.jxz){
//            log.error("给用户添加收益失败,原因:活动未在进行中,活动id:" + easyPhotoDO.getActivityId());
//            return;
//        }
        //计算收益
        if(activityType.equals(ComActEasyPhotoDO.activityType.yz)){
            amount = photoActivityDO.getGoodReward();
        }else if(activityType.equals(ComActEasyPhotoDO.activityType.jl)){
            amount = photoActivityDO.getExcellentReward();
        }else if(activityType.equals(ComActEasyPhotoDO.activityType.pt)){
            amount = photoActivityDO.getOrdinaryReward();
        }else if(activityType.equals(ComActEasyPhotoDO.activityType.yb)){
            amount = photoActivityDO.getCommonlyReward();
        }
//        Date nowDate = new Date();
        //查询用户钱包
@@ -174,7 +186,7 @@
            //新增钱包资金交易记录
            Long tradeId = comActUserWalletTradeService.addWalletTrade(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId()
                    ,easyPhotoDO.getId(),amount, ComActUserWalletTradeDO.type.fb,"发布随手拍"
                    ,easyPhotoDO.getId(),amount, ComActUserWalletTradeDO.type.fb,easyPhotoDO.getDetail()
                    ,userId,userWalletDO.getId(),ComActUserWalletTradeDO.changeType.add);
            //新增钱包资金变动记录
@@ -205,6 +217,28 @@
        easyPhotoDO.setActivityType(activityType);
        easyPhotoDO.setActivityAmount(amount);
        comActEasyPhotoDAO.updateById(easyPhotoDO);
        String activityTypeName = "";
        if(easyPhotoDO.getActivityType().equals(ComActEasyPhotoDO.activityType.yz)){
            activityTypeName = "优质";
        }else if(easyPhotoDO.getActivityType().equals(ComActEasyPhotoDO.activityType.jl)){
            activityTypeName = "精良";
        }else if(easyPhotoDO.getActivityType().equals(ComActEasyPhotoDO.activityType.pt)){
            activityTypeName = "普通";
        }else if(easyPhotoDO.getActivityType().equals(ComActEasyPhotoDO.activityType.yb)){
            activityTypeName = "一般";
        }
        //发放奖励以后给用户推送消息
        Map<String,String> map = comActActSignDAO.getUserOpenId(easyPhotoDO.getSponsorId());
        if(map != null){
            String openid = map.get("openid");
            WxXCXTempSend util = new WxXCXTempSend();
            try {
                WxUtil.sendSubscribeJLDZ(openid,util.getAppAccessToken(),"随手拍有奖活动",amount.setScale(2, RoundingMode.HALF_UP),activityTypeName);
            }catch (Exception e){
                log.error("消息推送失败,失败原因:" + e.getMessage());
            }
        }
    }
    /**