liujie
2025-06-09 70d2a5d0f9c6951b2d4cac954041ed73582ff7eb
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngVolunteerMngDAO.java
@@ -1,14 +1,19 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.vos.community.ComMngStructOtherBuildVO;
import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO;
import com.panzhihua.service_community.model.dos.ComMngVolunteerMngDO;
import java.util.List;
import com.panzhihua.common.model.vos.community.StatisticsCommVO;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenVolunteerStatisticsInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO;
import com.panzhihua.common.model.vos.community.TodoEventsVO;
import com.panzhihua.service_community.model.dos.ComMngVolunteerMngDO;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -18,56 +23,75 @@
 **/
@Mapper
public interface ComMngVolunteerMngDAO extends BaseMapper<ComMngVolunteerMngDO> {
    //    @Select("<script> " +
//            " <where>" +
//            "<if test='nameCn != null and nameCn.trim() != &quot;&quot;'>" +
//            " </if> " +
//            "<if test='nameCn != null and nameCn.trim() != &quot;&quot;'>" +
//            " </if> " +
//            "<if test='nameCn != null and nameCn.trim() != &quot;&quot;'>" +
//            " </if> " +
//            " </where>" +
//            "</script>")
    @Select("<script> " +
            "SELECT\n" +
            "id,\n" +
            "`name`,\n" +
            "photo_path,\n" +
            "phone,\n" +
            "create_at \n" +
            "FROM\n" +
            "com_mng_volunteer_mng \n" +
            " where state=2 " +
            "<if test='comMngVolunteerMngVO.name != null and comMngVolunteerMngVO.name.trim() != &quot;&quot;'>" +
            " and name = #{comMngVolunteerMngVO.name} \n" +
            " </if> " +
            "<if test='comMngVolunteerMngVO.phone != null and comMngVolunteerMngVO.phone.trim() != &quot;&quot;'>" +
            "AND phone = #{comMngVolunteerMngVO.phone}" +
            " </if> " +
            "</script>")
    IPage<ComMngVolunteerMngVO> pageVolunteer(Page page, @Param("comMngVolunteerMngVO") ComMngVolunteerMngVO comMngVolunteerMngVO);
    @Select("<script> " +
            "SELECT\n" +
            "id,\n" +
            "`name`,\n" +
            "state,\n" +
            "phone,\n" +
            "create_at \n" +
            "FROM\n" +
            "com_mng_volunteer_mng \n" +
            "WHERE\n" +
            "state in (1,3)\n" +
            "<if test='comMngVolunteerMngVO.name != null and comMngVolunteerMngVO.name.trim() != &quot;&quot;'>" +
            "and name = #{comMngVolunteerMngVO.name} \n" +
            " </if> " +
            "<if test='comMngVolunteerMngVO.phone != null and comMngVolunteerMngVO.phone.trim() != &quot;&quot;'>" +
            "AND phone = #{comMngVolunteerMngVO.phone}\n" +
            " </if> " +
            "<if test='comMngVolunteerMngVO.state != null and comMngVolunteerMngVO.state != 0'>" +
            "and state=#{comMngVolunteerMngVO.state}\n" +
            " </if> " +
            "ORDER BY state asc " +
            "</script>")
    IPage<ComMngVolunteerMngVO> pageVolunteerExamine(Page page, @Param("comMngVolunteerMngVO") ComMngVolunteerMngVO comMngVolunteerMngVO);
    /**
     * 分页查询志愿者列表
     * @param page  分页参数
     * @param comMngVolunteerMngVO  请求参数
     * @return  志愿者列表
     */
    IPage<ComMngVolunteerMngVO> pageVolunteer(Page page,
        @Param("comMngVolunteerMngVO") ComMngVolunteerMngVO comMngVolunteerMngVO);
    IPage<ComMngVolunteerMngVO> pageVolunteerExamine(Page page,
        @Param("comMngVolunteerMngVO") ComMngVolunteerMngVO comMngVolunteerMngVO);
    @Select("SELECT\n" + "'4' type\n" + "FROM\n" + "com_mng_volunteer_mng v \n" + "WHERE\n" + "v.state = 1 \n"
        + "AND v.`community_id` = #{communityId} \n")
    List<TodoEventsVO> selectNeedToDo(Long communityId);
    @Select("select user_id from sys_user where type=1 and phone=#{phone}")
    Long selectUserIdByPhone(String phone);
    @Select("select id_card from sys_user where type=1 and phone=#{idCard}")
    Long selectUserIdByIdCard(String idCard);
    /**
     * 志愿者-组织直方图数据
     * @param communityId
     * @return
     */
    List<StatisticsCommVO> retrieveVolunteerOrgHistogram(@Param("communityId") Long communityId);
    /**
     * 获取杨家坪定制页面-志愿服务基础数据
     * @param communityId
     * @return
     */
    BigScreenVolunteerStatisticsInfo getVolunteerBaseData(@Param("communityId") Long communityId);
    /**
     * 获取志愿者数据
     * @param communityId
     * @return
     */
    List<ComMngVolunteerMngVO> retrieveVolunteerServiceTypeCircleData(@Param("communityId") Long communityId);
    /**
     * 志愿者年龄段占比圆形图数据
     * @param communityId
     * @return
     */
    List<StatisticsCommVO> retrieveVolunteerAgeCircleData(@Param("communityId") Long communityId);
    /**
     * 志愿者技能占比圆形图
     * @param communityId
     * @return
     */
    List<ComMngVolunteerMngVO> retrieveVolunteerSkillCircleData(@Param("communityId") Long communityId);
    /**
     * 根据社区id查询志愿者
     * @param communityId
     * @return
     */
    List<ComMngVolunteerMngVO> selectVolunteerByCommunityId(@Param("communityId") Long communityId);
    /**
     * 志愿者审核详情
     * @param id
     * @return
     */
    ComMngVolunteerMngVO detailVolunteerExamine(@Param("id") Long id);
}