diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/IcResiUserDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/IcResiUserDao.java index 610d90c62d..3b3a66dd50 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/IcResiUserDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/IcResiUserDao.java @@ -115,9 +115,27 @@ public interface IcResiUserDao extends BaseDao { @Param("search")String search, @Param("resiCategory")String resiCategory); + Integer countVolunteersWithoutVolCategory(@Param("customerId")String customerId, + @Param("agencyId")String agencyId, + @Param("staffOrgIds")String staffOrgIds, + @Param("search")String search); + List listVolunteersByCategory(@Param("customerId")String customerId, @Param("agencyId")String agencyId, @Param("staffOrgIds")String staffOrgIds, @Param("search")String search, @Param("resiCategory")String resiCategory); + + /** + * 列出没有志愿者类别的志愿者 + * @param customerId + * @param agencyId + * @param staffOrgIds + * @param search + * @return + */ + List listVolunteersWithoutVolCategory(@Param("customerId")String customerId, + @Param("agencyId")String agencyId, + @Param("staffOrgIds")String staffOrgIds, + @Param("search")String search); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index b42e78b256..2e4d184353 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -857,11 +857,21 @@ public class EpmetUserServiceImpl implements EpmetUserService { @Override public Integer countVolunteers(String customerId, String agencyId, String staffOrgIds, String search, String resiCategory) { - return icResiUserDao.countVolunteersByCategory(customerId, agencyId, staffOrgIds, search, resiCategory); + if ("others".equals(resiCategory)) { + //others需要特殊处理,它是指那些勾选了是志愿者,但是没有选择具体志愿者类型的居民,实际上志愿者类型里面没有others这个类别的 + return icResiUserDao.countVolunteersWithoutVolCategory(customerId, agencyId, staffOrgIds, search); + } else { + return icResiUserDao.countVolunteersByCategory(customerId, agencyId, staffOrgIds, search, resiCategory); + } } @Override public List listVolunteers(String customerId, String agencyId, String staffOrgIds, String search, String resiCategory) { - return icResiUserDao.listVolunteersByCategory(customerId, agencyId, staffOrgIds, search, resiCategory); + if ("others".equals(resiCategory)) { + //others需要特殊处理,它是指那些勾选了是志愿者,但是没有选择具体志愿者类型的居民,实际上志愿者类型里面没有others这个类别的 + return icResiUserDao.listVolunteersWithoutVolCategory(customerId, agencyId, staffOrgIds, search); + } else { + return icResiUserDao.listVolunteersByCategory(customerId, agencyId, staffOrgIds, search, resiCategory); + } } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/IcResiUserDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/IcResiUserDao.xml index 9097a47098..84c5386481 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/IcResiUserDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/IcResiUserDao.xml @@ -188,6 +188,7 @@ from ic_resi_user resi inner join ic_volunteer vol on (resi.ID = vol.IC_RESI_USER and vol.DEL_FLAG = '0') where resi.DEL_FLAG = '0' + and resi.IS_VOLUNTEER = '1' and resi.CUSTOMER_ID = #{customerId} and resi.AGENCY_ID = #{agencyId} @@ -202,11 +203,32 @@ + + + + +