lidongdong
2024-07-11 c25083a3810b779f4bed7242de6a9c7ff9d04b4d
花城 【小程序】统计排行
4个文件已修改
161 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActNeighborCircleDOMapper.xml 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/NeedProblemClaimServiceImpl.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java
@@ -6,6 +6,7 @@
import com.panzhihua.common.model.dtos.PageBaseDTO;
import com.panzhihua.common.model.vos.community.StatisticsCommVO;
import com.panzhihua.common.model.vos.neighbor.*;
import com.panzhihua.service_community.entity.NewFightNeedProblemClaim;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@@ -212,4 +213,14 @@
     * @return
     */
    List<ServiceDetailStaticsVO> selectServiceDetailListForPersonal(@Param("checkUnitId") Long checkUnitId, @Param("phone") String phone, @Param("date") String date, @Param("serviceType") Integer serviceType);
    /**
     * 根据手机好查询用户完成清单任务
     * @param phone
     * @return
     */
    List<NewFightNeedProblemClaim> getNewServiceNum(@Param("phone") String phone,@Param("unitId") String unitId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java
@@ -1134,12 +1134,51 @@
    @Override
    public R serviceStatic(ServiceStaticDTO serviceStaticDTO) {
        ServiceStaticsVO serviceStaticsVO = new ServiceStaticsVO();
        if (serviceStaticDTO.getCheckUnitId() != null) {
        if (serviceStaticDTO.getCheckUnitId() != null)
        {
            //单位服务统计
            serviceStaticsVO =
                this.baseMapper.selectStatsCheckUnit(serviceStaticDTO.getCheckUnitId(), serviceStaticDTO.getYear());
            serviceStaticsVO.setServiceDetailStaticsList(this.baseMapper.selectServiceDetailList(serviceStaticDTO.getCheckUnitId(),
                    serviceStaticDTO.getYear(), serviceStaticDTO.getServiceType()));
        } else {
            List<ServiceDetailStaticsVO> serviceDetailStaticsVOList=this.baseMapper.selectServiceDetailList(serviceStaticDTO.getCheckUnitId(),
                    serviceStaticDTO.getYear(), serviceStaticDTO.getServiceType());
            List<NewFightNeedProblemClaim> list=baseMapper.getNewServiceNum("",serviceStaticDTO.getCheckUnitId()+"");
            if(list.size()>0)
            {
                //设置次数
                int timeNum=serviceStaticsVO.getTimes()+list.size();
                serviceStaticsVO.setTimes(timeNum);
                //设置服务时间
                int hours=serviceStaticsVO.getHours();
                for (NewFightNeedProblemClaim item:list)
                {
                    ServiceDetailStaticsVO newItem=new ServiceDetailStaticsVO();
                    String Ltime=item.getServiceTime();
                    if(!StringUtils.isEmpty(Ltime))
                    {
                        int time=(int)(Long.valueOf(Ltime)/3600000);
                        newItem.setServiceTime(time);
                        hours=hours+(time);
                        item.setServiceTime(time+"");
                    }
                    newItem.setServiceId(Long.valueOf(item.getTaskId()));
                    newItem.setServiceType(1);
                    newItem.setServiceAt(item.getCreationTime());
                    serviceDetailStaticsVOList.add(newItem);
                }
                serviceStaticsVO.setHours(hours);
            }
            serviceStaticsVO.setServiceDetailStaticsList(serviceDetailStaticsVOList);
        }
        else
        {
            //个人服务统计
            serviceStaticsVO = this.baseMapper.selectStatsUser(serviceStaticDTO.getPhone(), serviceStaticDTO.getYear());
            ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
                    .eq(ComPbMemberDO::getPhone, serviceStaticDTO.getPhone()).last("limit 1"));
@@ -1147,8 +1186,40 @@
            if (comPbMemberDO != null) {
                checkUnitId = comPbMemberDO.getCheckUnitId();
            }
            serviceStaticsVO.setServiceDetailStaticsList(this.baseMapper.selectServiceDetailListForPersonal(checkUnitId, serviceStaticDTO.getPhone(),
                    serviceStaticDTO.getYear(), serviceStaticDTO.getServiceType()));
            List<ServiceDetailStaticsVO> serviceDetailStaticsVOList=this.baseMapper.selectServiceDetailListForPersonal(checkUnitId, serviceStaticDTO.getPhone(),
                    serviceStaticDTO.getYear(), serviceStaticDTO.getServiceType());
            //获取新需求服务列表
            List<NewFightNeedProblemClaim> list=baseMapper.getNewServiceNum(serviceStaticDTO.getPhone(),"");
            if(list.size()>0)
            {
                //设置次数
                int timeNum=serviceStaticsVO.getTimes()+list.size();
                //设置服务时间
                int hours=serviceStaticsVO.getHours();
                serviceStaticsVO.setTimes(timeNum);
                for (NewFightNeedProblemClaim item:list)
                {
                    ServiceDetailStaticsVO newItem=new ServiceDetailStaticsVO();
                    String Ltime=item.getServiceTime();
                    if(!StringUtils.isEmpty(Ltime))
                    {
                        int time=(int)(Long.valueOf(Ltime)/3600000);
                        newItem.setServiceTime(time);
                        hours=hours+(time);
                        item.setServiceTime(time+"");
                    }
                    newItem.setServiceId(Long.valueOf(item.getTaskId()));
                    newItem.setServiceType(1);
                    newItem.setServiceAt(item.getCreationTime());
                    serviceDetailStaticsVOList.add(newItem);
                }
            }
            serviceStaticsVO.setServiceDetailStaticsList(serviceDetailStaticsVOList);
        }
        return R.ok(serviceStaticsVO);
    }
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActNeighborCircleDOMapper.xml
@@ -552,13 +552,45 @@
        </if>
    </select>
    <select id="getNewServiceNum" resultType="com.panzhihua.service_community.entity.NewFightNeedProblemClaim">
        SELECT
            id,
            user_id,
            update_time,
            unit_id,
            task_id,
            service_time,
            punch_start_time,
            punch_end_time,
            creation_time
        FROM new_fight_need_problem_claim
        <where>
            service_time is not null
            <if test=" phone != null and phone != '' ">
                and user_id =(SELECT user_id FROM sys_user WHERE phone=#{phone}
                and app_id="wx118de8a734d269f0" and type=1)
            </if>
            <if test=" unitId != null and unitId != '' ">
                and unit_id =#{unitId}
            </if>
        </where>
    </select>
    <select id="selectStatsUser" resultType="com.panzhihua.common.model.vos.neighbor.ServiceStaticsVO">
        select count(t1.checkId) as times,sum(t1.hours) as hours from  ((select real_service_time as hours,solve_id  as checkId
        from com_act_neighbor_circle canc left join sys_user su on canc.solve_id = su.user_id  where order_type = 2 AND canc.is_del = 2 and solve_status = 4
        and su.phone = #{phone} and canc.order_time between concat(#{date},'-01-01 00:00:00') and concat(#{date},'-12-31 23:59:59')) union all
        (select duration as hours,caas.user_id as checkId from com_act_activity caa LEFT JOIN com_act_act_regist caas on caa.id = caas.activity_id
            left join sys_user su on caas.user_id = su.user_id where caas.sign_identity = 2 and caas.end_time is not null and su.phone =#{phone}
            and publish_at between concat(#{date},'-01-01 00:00:00') and concat(#{date},'-12-31 23:59:59') group by caa.id)) t1
        select
               count(t1.checkId) as times,
               sum(t1.hours) as hours
        from  ((select real_service_time as hours,solve_id  as checkId from com_act_neighbor_circle canc
            left join sys_user su on canc.solve_id = su.user_id  where order_type = 2 AND canc.is_del = 2 and solve_status = 4
                and su.phone = #{phone} and canc.order_time between concat(#{date},'-01-01 00:00:00') and concat(#{date},'-12-31 23:59:59'))
            union all
                (select duration as hours,caas.user_id as checkId from com_act_activity caa LEFT JOIN com_act_act_regist caas on caa.id = caas.activity_id
                left join sys_user su on caas.user_id = su.user_id where caas.sign_identity = 2 and caas.end_time is not null and su.phone =#{phone}
                and publish_at between concat(#{date},'-01-01 00:00:00') and concat(#{date},'-12-31 23:59:59') group by caa.id)) t1
    </select>
    <select id="selectListByPhone" resultType="com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAppVO">
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/NeedProblemClaimServiceImpl.java
@@ -11,7 +11,6 @@
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;
@@ -169,9 +168,25 @@
            }
            else
            {
                int award=Integer.valueOf(dto.getAward());
                int integralAvailableSum=Integer.valueOf(integral.getIntegralAvailableSum())+award;
                int integralSum=Integer.valueOf(integral.getIntegralSum())+award;
                int award=0;
                int integralAvailableSum=0;
                int integralSum=0;
                if(!StringUtils.isEmpty(dto.getAward()))
                {
                    award=Integer.valueOf(dto.getAward());
                }
                if(!StringUtils.isEmpty(integral.getIntegralAvailableSum()))
                {
                    integralAvailableSum=Integer.valueOf(integral.getIntegralAvailableSum())+award;
                }
                if(!StringUtils.isEmpty(integral.getIntegralSum()))
                {
                    integralSum=Integer.valueOf(integral.getIntegralSum())+award;
                }
                userTrade.setIntegralId(integral.getId());
                integral.setIntegralAvailableSum(integralAvailableSum+"");
                integral.setIntegralSum(integralSum+"");