lidongdong
2024-07-10 bd29af926dc2e0c63a6b55d6af90092ae25068b6
花城 完成需求问题清单以后添加积分记录
2个文件已添加
4个文件已修改
480 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/NeedProblemClaimDAO.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/entity/UserIntegral.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/entity/UserTrade.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/NeedProblemClaimServiceImpl.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/NeedProblemClaimMapper.xml 278 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/NeedProblemInventoryMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/NeedProblemClaimDAO.java
@@ -5,6 +5,8 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.partybuilding.NeedProblemClaimDTO;
import com.panzhihua.common.model.dtos.partybuilding.NeedProblemInventoryDTO;
import com.panzhihua.service_dangjian.entity.UserIntegral;
import com.panzhihua.service_dangjian.entity.UserTrade;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -44,6 +46,12 @@
                   @Param("userId") String userId);
    UserIntegral getUserIntegral(@Param("userId") String userId);
    int addUserIntegral(@Param("item") UserIntegral item);
    int editUserIntegral(@Param("item") UserIntegral item);
    int addUserIntegralTrade(@Param("item") UserTrade item);
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/entity/UserIntegral.java
New file
@@ -0,0 +1,75 @@
package com.panzhihua.service_dangjian.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel("用户积分表")
public class UserIntegral
{
    @ApiModelProperty(value = "主键")
    private String id;
    @ApiModelProperty(value = "用户id")
    private String userId;
    @ApiModelProperty(value = "总积分数量")
    private String integralSum;
    @ApiModelProperty(value = "可用总积分数量")
    private String integralAvailableSum;
    @ApiModelProperty(value = "冻结总积分数量")
    private String integralFrozenSum;
    @ApiModelProperty(value = "党员积分数量")
    private String integralParty;
    @ApiModelProperty(value = "可用党员积分数量")
    private String integralAvailableParty;
    @ApiModelProperty(value = "冻结党员积分数量")
    private String integralFrozenParty;
    @ApiModelProperty(value = "志愿者积分数量")
    private String integralVolunteer;
    @ApiModelProperty(value = "可用志愿者积分数量")
    private String integralAvailableVolunteer;
    @ApiModelProperty(value = "冻结志愿者积分数量")
    private String integralFrozenVolunteer;
    @ApiModelProperty(value = "居民积分数量")
    private String integralResident;
    @ApiModelProperty(value = "可用居民积分数量")
    private String integralAvailableResident;
    @ApiModelProperty(value = "冻结居民积分数量")
    private String integralFrozenResident;
    @ApiModelProperty(value = "创建时间")
    private String createAt;
    @ApiModelProperty(value = "'上次积分变动时间'")
    private String updateAt;
    @ApiModelProperty(value = "状态(1.启用 2.禁用)")
    private String status;
    @ApiModelProperty(value = "'时长'")
    private String integralPartyTime;
    @ApiModelProperty(value = "社区id")
    private String communityId;
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/entity/UserTrade.java
New file
@@ -0,0 +1,53 @@
package com.panzhihua.service_dangjian.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel("用户积分记录表")
public class UserTrade
{
    @ApiModelProperty(value = "主键")
    private String id;
    @ApiModelProperty(value = "用户id")
    private String userId;
    @ApiModelProperty(value = "积分账户id")
    private String integralId;
    @ApiModelProperty(value = "社区id")
    private String communityId;
    @ApiModelProperty(value = "交易业务id")
    private String serviceId;
    @ApiModelProperty(value = "交易业务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.参与志愿者活动 5.参与社区活动 6.参与党员活动 " +
            "7.参与调查问卷 8.活动签到 9商城积分兑换  10商家线下积分兑换  11花城登录  12 查看问题清单  13查看需求清单  14 查看报道服务活动" +
            "  15查看微心愿  16 查看随手拍   17 每日签到 18 上传“随手拍”或“微心愿) 19 完成需求任务   20完成问题任务")
    private String serviceType;
    @ApiModelProperty(value = "交易积分数量")
    private String amount;
    @ApiModelProperty(value = "变动类型(1.增加  2.减少)")
    private String changeType;
    @ApiModelProperty(value = "交易备注")
    private String remark;
    @ApiModelProperty(value = "交易身份类型(1.居民 2.党员 3.志愿者)")
    private String identityType;
    @ApiModelProperty(value = "操作人id")
    private String createBy;
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/NeedProblemClaimServiceImpl.java
@@ -4,10 +4,14 @@
import com.panzhihua.common.model.dtos.partybuilding.NeedProblemClaimDTO;
import com.panzhihua.common.model.dtos.partybuilding.NeedProblemInventoryDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.utlis.Snowflake;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_dangjian.dao.NeedProblemClaimDAO;
import com.panzhihua.service_dangjian.entity.UserIntegral;
import com.panzhihua.service_dangjian.entity.UserTrade;
import com.panzhihua.service_dangjian.service.NeedProblemClaimService;
import com.panzhihua.service_dangjian.service.NeedProblemInventoryService;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -140,15 +144,63 @@
            //开始打卡
            item.setPunchStartTime(new Date());
        }
        else
        {
            NeedProblemClaimDTO userDto=baseMapper.getUserIdDetails(taskId,userId);
        else {
            NeedProblemClaimDTO userDto = baseMapper.getUserIdDetails(taskId, userId);
            //结束打卡
            Date newDate=new Date();
            Date newDate = new Date();
            item.setPunchEndTime(newDate);
            long times=newDate.getTime()-userDto.getPunchStartTime().getTime();
            item.setServiceTime(times+"");
            long times = newDate.getTime() - userDto.getPunchStartTime().getTime();
            item.setServiceTime(times + "");
            NeedProblemInventoryDTO dto=inventoryService.getDetails(taskId,userId);
            UserTrade userTrade=new UserTrade();
            //增加积分
            UserIntegral integral = baseMapper.getUserIntegral(userId);
            if (integral == null) {
                UserIntegral addIn = new UserIntegral();
                addIn.setId(Snowflake.getId()+"");
                addIn.setUserId(userId);
                addIn.setCommunityId(dto.getCommunityId());
                addIn.setIntegralAvailableSum(dto.getAward());
                addIn.setIntegralSum(dto.getAward());
                userTrade.setIntegralId(addIn.getId());
                baseMapper.addUserIntegral(addIn);
            }
            else
            {
                int award=Integer.valueOf(dto.getAward());
                int integralAvailableSum=Integer.valueOf(integral.getIntegralAvailableSum())+award;
                int integralSum=Integer.valueOf(integral.getIntegralSum())+award;
                userTrade.setIntegralId(integral.getId());
                integral.setIntegralAvailableSum(integralAvailableSum+"");
                integral.setIntegralSum(integralSum+"");
                baseMapper.editUserIntegral(integral);
            }
            userTrade.setServiceId(dto.getId());
            userTrade.setId(Snowflake.getId()+"");
            userTrade.setAmount(dto.getAward());
            userTrade.setChangeType("1");
            userTrade.setUserId(userId);
            userTrade.setCommunityId(dto.getCommunityId());
            userTrade.setCreateBy(userId);
//            @ApiModelProperty("1问题清单  2需求清单")
//            private String kind;
            if(StringUtils.equals("2",dto.getKind()))
            {
                //19 完成需求任务
                userTrade.setServiceType("19");
                userTrade.setRemark("完成需求清单任务奖励");
            }
            else
            {
                //20完成问题任务
                userTrade.setServiceType("20");
                userTrade.setRemark("完成问题清单任务奖励");
            }
            baseMapper.addUserIntegralTrade(userTrade);
        }
        return baseMapper.editData(item);
    }
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/NeedProblemClaimMapper.xml
@@ -237,6 +237,284 @@
    <select id="getUserIntegral" resultType="com.panzhihua.service_dangjian.entity.UserIntegral">
        select
            id,
            user_id,
            update_at,
            status,
            integral_volunteer,
            integral_sum,
            integral_resident,
            integral_party_time,
            integral_party,
            integral_frozen_volunteer,
            integral_frozen_sum,
            integral_frozen_resident,
            integral_frozen_party,
            integral_available_volunteer,
            integral_available_sum,
            integral_available_resident,
            integral_available_party,
            create_at,
            community_id
        from com_act_integral_user
        where user_id =#{userId}
    </select>
    <insert id="addUserIntegral" useGeneratedKeys="true" keyProperty="id">
        insert into com_act_integral_user
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="item.id != null and item.id != '' ">
                id,
            </if>
            <if test="item.communityId !=null and item.communityId !='' ">
                community_id,
            </if>
            <if test="item.userId !=null and item.userId !='' ">
                user_id,
            </if>
            <if test="item.status !=null and item.status !='' ">
                status,
            </if>
            <if test="item.integralVolunteer !=null and item.integralVolunteer !='' ">
                integral_volunteer,
            </if>
            <if test="item.integralSum !=null and item.integralSum !='' ">
                integral_sum,
            </if>
            <if test="item.integralResident !=null and item.integralResident !='' ">
                integral_resident,
            </if>
            <if test="item.integralPartyTime !=null and item.integralPartyTime !='' ">
                integral_party_time,
            </if>
            <if test="item.integralParty !=null and item.integralParty !='' ">
                integral_party,
            </if>
            <if test="item.integralFrozenVolunteer !=null and item.integralFrozenVolunteer !='' ">
                integral_frozen_volunteer,
            </if>
            <if test="item.integralFrozenSum !=null and item.integralFrozenSum !='' ">
                integral_frozen_sum,
            </if>
            <if test="item.integralFrozenResident !=null and item.integralFrozenResident !='' ">
                integral_frozen_resident,
            </if>
            <if test="item.integralFrozenParty !=null and item.integralFrozenParty !='' ">
                integral_frozen_party,
            </if>
            <if test="item.integralAvailableVolunteer !=null and item.integralAvailableVolunteer !='' ">
                integral_available_volunteer,
            </if>
            <if test="item.integralAvailableSum !=null and item.integralAvailableSum !='' ">
                integral_available_sum,
            </if>
            <if test="item.integralAvailableResident !=null and item.integralAvailableResident !='' ">
                integral_available_resident,
            </if>
            <if test="item.integralAvailableParty !=null and item.integralAvailableParty !='' ">
                integral_available_party,
            </if>
            create_at
        </trim>
        values
        <trim prefix="("  suffix=")" suffixOverrides=",">
            <if test="item.id != null and item.id != '' ">
                #{item.id},
            </if>
            <if test="item.communityId !=null and item.communityId !='' ">
                #{item.communityId},
            </if>
            <if test="item.userId !=null and item.userId !='' ">
                #{item.},
            </if>
            <if test="item.status !=null and item.status !='' ">
                #{item.status},
            </if>
            <if test="item.integralVolunteer !=null and item.integralVolunteer !='' ">
                #{item.integralVolunteer},
            </if>
            <if test="item.integralSum !=null and item.integralSum !='' ">
                #{item.integralSum},
            </if>
            <if test="item.integralResident !=null and item.integralResident !='' ">
                #{item.integralResident},
            </if>
            <if test="item.integralPartyTime !=null and item.integralPartyTime !='' ">
                #{item.integralPartyTime},
            </if>
            <if test="item.integralParty !=null and item.integralParty !='' ">
                #{item.integralParty},
            </if>
            <if test="item.integralFrozenVolunteer !=null and item.integralFrozenVolunteer !='' ">
                #{item.integralFrozenVolunteer},
            </if>
            <if test="item.integralFrozenSum !=null and item.integralFrozenSum !='' ">
                #{item.integralFrozenSum},
            </if>
            <if test="item.integralFrozenResident !=null and item.integralFrozenResident !='' ">
                #{item.integralFrozenResident},
            </if>
            <if test="item.integralFrozenParty !=null and item.integralFrozenParty !='' ">
                #{item.integralFrozenParty},
            </if>
            <if test="item.integralAvailableVolunteer !=null and item.integralAvailableVolunteer !='' ">
                #{item.integralAvailableVolunteer},
            </if>
            <if test="item.integralAvailableSum !=null and item.integralAvailableSum !='' ">
                #{item.integralAvailableSum},
            </if>
            <if test="item.integralAvailableResident !=null and item.integralAvailableResident !='' ">
                #{item.integralAvailableResident},
            </if>
            <if test="item.integralAvailableParty !=null and item.integralAvailableParty !='' ">
                #{item.integralAvailableParty},
            </if>
            sysdate()
        </trim>
    </insert>
    <update id="editUserIntegral">
        update new_fight_shopping_order
        <set>
            <if test="item.id != null and item.id != '' ">
                id=#{item.id},
            </if>
            <if test="item.communityId !=null and item.communityId !='' ">
                community_Id=#{item.communityId},
            </if>
            <if test="item.userId !=null and item.userId !='' ">
                user_id=#{item.},
            </if>
            <if test="item.status !=null and item.status !='' ">
                status=#{item.status},
            </if>
            <if test="item.integralVolunteer !=null and item.integralVolunteer !='' ">
                integral_volunteer=#{item.integralVolunteer},
            </if>
            <if test="item.integralSum !=null and item.integralSum !='' ">
                integral_sum=#{item.integralSum},
            </if>
            <if test="item.integralResident !=null and item.integralResident !='' ">
                integral_resident=#{item.integralResident},
            </if>
            <if test="item.integralPartyTime !=null and item.integralPartyTime !='' ">
                integral_party_time=#{item.integralPartyTime},
            </if>
            <if test="item.integralParty !=null and item.integralParty !='' ">
                integral_party=#{item.integralParty},
            </if>
            <if test="item.integralFrozenVolunteer !=null and item.integralFrozenVolunteer !='' ">
                integral_frozen_volunteer=#{item.integralFrozenVolunteer},
            </if>
            <if test="item.integralFrozenSum !=null and item.integralFrozenSum !='' ">
                integral_frozen_sum=#{item.integralFrozenSum},
            </if>
            <if test="item.integralFrozenResident !=null and item.integralFrozenResident !='' ">
                integral_frozen_resident=#{item.integralFrozenResident},
            </if>
            <if test="item.integralFrozenParty !=null and item.integralFrozenParty !='' ">
                integral_frozen_party=#{item.integralFrozenParty},
            </if>
            <if test="item.integralAvailableVolunteer !=null and item.integralAvailableVolunteer !='' ">
                integral_available_volunteer=#{item.integralAvailableVolunteer},
            </if>
            <if test="item.integralAvailableSum !=null and item.integralAvailableSum !='' ">
                integral_available_sum=#{item.integralAvailableSum},
            </if>
            <if test="item.integralAvailableResident !=null and item.integralAvailableResident !='' ">
                integral_available_resident=#{item.integralAvailableResident},
            </if>
            <if test="item.integralAvailableParty !=null and item.integralAvailableParty !='' ">
                integral_available_party=#{item.integralAvailableParty},
            </if>
            update_at=sysdate()
        </set>
        where id = #{item.id}
    </update>
    <insert id="addUserIntegralTrade" useGeneratedKeys="true" keyProperty="id">
        insert into com_act_integral_user_trade
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="item.id != null and item.id != '' ">
                id,
            </if>
            <if test="item.userId != null and item.userId != '' ">
                user_id,
            </if>
            <if test="item.integralId != null and item.integralId != '' ">
                integral_id,
            </if>
            <if test="item.communityId != null and item.communityId != '' ">
                community_id,
            </if>
            <if test="item.serviceId != null and item.serviceId != '' ">
                service_id,
            </if>
            <if test="item.serviceType != null and item.serviceType != '' ">
                service_type,
            </if>
            <if test="item.amount != null and item.amount != '' ">
                amount,
            </if>
            <if test="item.changeType != null and item.changeType != '' ">
                change_type,
            </if>
            <if test="item.remark != null and item.remark != '' ">
                remark,
            </if>
            <if test="item.identityType != null and item.identityType != '' ">
                identity_type,
            </if>
            <if test="item.createBy != null and item.createBy != '' ">
                create_by,
            </if>
            create_at
        </trim>
        values
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="item.id != null and item.id != '' ">
                #{item.id},
            </if>
            <if test="item.userId != null and item.userId != '' ">
                #{item.userId},
            </if>
            <if test="item.integralId != null and item.integralId != '' ">
                #{item.integralId},
            </if>
            <if test="item.communityId != null and item.communityId != '' ">
                #{item.communityId},
            </if>
            <if test="item.serviceId != null and item.serviceId != '' ">
                #{item.serviceType},
            </if>
            <if test="item.serviceType != null and item.serviceType != '' ">
                #{item.serviceType},
            </if>
            <if test="item.amount != null and item.amount != '' ">
                #{item.amount},
            </if>
            <if test="item.changeType != null and item.changeType != '' ">
                #{item.changeType},
            </if>
            <if test="item.remark != null and item.remark != '' ">
                #{item.remark},
            </if>
            <if test="item.identityType != null and item.identityType != '' ">
                #{item.identityType},
            </if>
            <if test="item.createBy != null and item.createBy != '' ">
                #{item.createBy},
            </if>
            sysdate()
        </trim>
    </insert>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/NeedProblemInventoryMapper.xml
@@ -203,7 +203,7 @@
            if(nfnpc.user_id>0,1,0) as isJoin,
            (select count(task_id) from new_fight_need_problem_claim where task_id=nfpi.id) as joinNum,
            nfpi.status,
            ((UNIX_TIMESTAMP(nfnpc.punch_end_time) - UNIX_TIMESTAMP(nfnpc.punch_start_time)) * 1000 ) as serviceTime,
            nfnpc.service_time,
            nfpi.is_display,
            nfpi.user_id
        FROM new_fight_need_problem_inventory as nfpi