puhanshu
2022-08-04 da034ad030249efdb50db2f42d3a658cd2e5f0bf
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
@@ -86,7 +86,8 @@
     * @param serviceId
     *            交易业务id
     * @param serviceType
     *            交易业务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.参与志愿者活动 5.参与社区活动 6.参与党员活动 7.参与调查问卷)
     *            交易业务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.社区活动-居民身份参与 " +
     *             "5.社区活动-党员身份参与 6.社区活动-志愿者身份参与 7.参与调查问卷 8.取消活动 9.参与单位党员活动)
     * @param amount
     *            交易积分数量
     * @param changeType
@@ -175,7 +176,8 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R addIntegralTradeAdmin(AddComActIntegralUserDTO integralUserDTO) {
        // 判断增加积分类型 积分任务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.参加居民活动 5.参加志愿者活动 6.参与党员活动 7.参与调查问卷 8.取消活动)
        // 判断增加积分类型 积分任务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.社区活动-居民身份参与 " +
        //            "5.社区活动-党员身份参与 6.社区活动-志愿者身份参与 7.参与调查问卷 8.取消活动 9.参与单位党员活动)
        Integer type = integralUserDTO.getIntegralType();
        // 业务id
        Long serviceId = integralUserDTO.getServiceId();
@@ -194,9 +196,7 @@
        Integer changeType = ComActIntegralUserTradeDO.changeType.add;
        Integer isVolunteer = integralUserDTO.getIsVolunteer();
        if (!type.equals(8)) {
        if (!type.equals(8) && !type.equals(4) && !type.equals(5) && !type.equals(6) && !type.equals(9)) {
            // 查询随手拍增加积分数量
            ComActIntegralRuleDO integralRuleDO =
                    comActIntegralRuleService.getOne(new QueryWrapper<ComActIntegralRuleDO>().lambda()
@@ -257,38 +257,6 @@
                    }
                }
                break;
            case 4:
                if (nonNull(isVolunteer) && isVolunteer.equals(1)) {
                    identityType = 3;
                } else {
                    identityType = 1;
                }
                remark.append("成功参加居民活动奖励积分");
                ComActActivityDO actActivityDO1 = comActActivityService.getById(serviceId);
                if(actActivityDO1 != null) {
                    amount = actActivityDO1.getRewardIntegral();
                }
                break;
            case 5:
                if (nonNull(isVolunteer) && isVolunteer.equals(0)) {
                    identityType = 1;
                } else {
                    identityType = 3;
                }
                remark.append("成功参加志愿者活动奖励积分");
                ComActActivityDO actActivityDO = comActActivityService.getById(serviceId);
                if(actActivityDO != null) {
                    amount = actActivityDO.getRewardIntegral();
                }
                break;
            case 6:
                identityType = 2;
                remark.append("成功参加党员活动奖励积分");
                ComActActivityDO actActivityDO3 = comActActivityService.getById(serviceId);
                if(actActivityDO3 != null) {
                    amount = actActivityDO3.getRewardIntegral();
                }
                break;
            case 7:
                // 查询调查问卷
                ComActQuestnaireDO questnaireDO = comActQuestnaireDAO.selectById(serviceId);
@@ -319,29 +287,17 @@
                break;
            case 8:
                changeType = ComActIntegralUserTradeDO.changeType.reduce;
                    ComActActivityDO actActivityDO2 = comActActivityService.getById(serviceId);
                    if (actActivityDO2 != null) {
                        amount = -actActivityDO2.getCancelDeduct();
                        if (actActivityDO2.getType()==1) {
                            identityType=3;
                            remark.append("取消志愿者活动扣除积分");
                        } else if(actActivityDO2.getType()==3){
                            identityType=2;
                            remark.append("取消党员活动扣除积分");
                        }
                        else {
                            identityType=1;
                            remark.append("取消居民活动扣除积分");
                        }
                }
//                else {
//                    ComPbActivityDO comPbActivityDO = comBpActivityDAO.selectById(serviceId);
//                    if(comPbActivityDO!=null){
//                        amount=comPbActivityDO.getRewardIntegral();
//                        identityType=2;
//                    }
//                }
                amount = -integralUserDTO.getIntegral();
                remark.append(integralUserDTO.getRemark());
                identityType = integralUserDTO.getSignIdentity();
                break;
            case 4:
            case 5:
            case 6:
            case 9:
                identityType = integralUserDTO.getSignIdentity();
                remark.append(integralUserDTO.getRemark());
                amount = integralUserDTO.getIntegral();
                break;
            default:
                break;
@@ -442,6 +398,16 @@
        return R.ok();
    }
    /**
     * 获取积分详情
     * @param id
     * @return
     */
    @Override
    public R getUserIntegralDetail(Long id) {
        return R.ok(this.baseMapper.getUserIntegralDetail(id));
    }
    private int addIntegral(int integral) {
        return integral > 0 ? integral : 0;
    }