From c6232cfc36e373f83f45c95d400e09466cc2a7d3 Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期五, 14 十月 2022 17:41:45 +0800
Subject: [PATCH] #feat 修改运营平台统计登录人数和新增人员

---
 springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java |  533 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 356 insertions(+), 177 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java
index 3254ed7..6f96a31 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java
@@ -1,24 +1,36 @@
 package com.panzhihua.service_user.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.dtos.PageDTO;
+import com.panzhihua.common.model.dtos.community.ExportUserDTO;
+import com.panzhihua.common.model.dtos.grid.EventGridMemberEditStatusDTO;
+import com.panzhihua.common.model.dtos.grid.EventGridMemberPassResetDTO;
+import com.panzhihua.common.model.dtos.grid.PageEventGridMemberRelationDTO;
+import com.panzhihua.common.model.dtos.user.EexcelUserDTO;
 import com.panzhihua.common.model.dtos.user.PageUserAppletsBackstageDTO;
+import com.panzhihua.common.model.vos.AppletUserInfoVO;
 import com.panzhihua.common.model.vos.IndexDataKanbanVO;
+import com.panzhihua.common.model.vos.IndexDataVO;
 import com.panzhihua.common.model.vos.LoginUserInfoVO;
-import com.panzhihua.common.model.vos.user.AdministratorsUserVO;
-import com.panzhihua.common.model.vos.user.SysUserNoticeVO;
-import com.panzhihua.common.model.vos.user.SysUserVO;
+import com.panzhihua.common.model.vos.community.*;
+import com.panzhihua.common.model.vos.community.acid.ComActAcidCheckRecordVO;
+import com.panzhihua.common.model.vos.community.acid.ComActAcidMemberVO;
+import com.panzhihua.common.model.vos.community.acid.ComActAcidRecordVO;
+import com.panzhihua.common.model.vos.community.screen.event.EventGridMemberVO;
+import com.panzhihua.common.model.vos.grid.GridMemberVO;
+import com.panzhihua.common.model.vos.partybuilding.ComPbServiceTeamWishVO;
+import com.panzhihua.common.model.vos.user.*;
 import com.panzhihua.service_user.model.dos.SysUserDO;
 import com.panzhihua.service_user.model.dtos.DataKanbanDTO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Select;
-import org.apache.ibatis.annotations.Update;
+import org.springframework.web.bind.annotation.RequestParam;
 
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -28,187 +40,354 @@
  **/
 @Mapper
 public interface UserDao extends BaseMapper<SysUserDO> {
-    //    @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" +
-            "u.user_id,\n" +
-            "u.face_url,\n" +
-            "u.nick_name,\n" +
-            "u.`name`,\n" +
-            "u.phone,\n" +
-            "u.id_card,\n" +
-            "u.face_state,\n" +
-            "c.name,\n" +
-            "u.create_at \n" +
-            "FROM\n" +
-            "sys_user u\n" +
-            "JOIN com_act c ON u.community_id = c.community_id \n" +
-            "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != &quot;&quot;'>" +
-            "AND c.`name` = #{loginUserInfoVO.name} \n" +
-            " </if> " +
-            " <where>" +
-            "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != &quot;&quot;'>" +
-            "and u.`name` = #{loginUserInfoVO.communityName} \n" +
-            " </if> " +
-            "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != &quot;&quot;'>" +
-            "AND u.phone = #{loginUserInfoVO.phone}" +
-            " </if> " +
-            " </where>" +
-            " order by u.face_state asc,u.create_at asc " +
-            "</script>")
+
     IPage<LoginUserInfoVO> pageUserFace(Page page, @Param("loginUserInfoVO") LoginUserInfoVO loginUserInfoVO);
 
-    @Select("<script> " +
-            "SELECT\n" +
-            "u.user_id,\n" +
-            "u.`name`,\n" +
-            "u.nick_name,\n" +
-            "u.phone,\n" +
-            "u.id_card,\n" +
-            "u.job,\n" +
-            "c.name,\n" +
-            "u.tags,\n" +
-            "u.create_at \n" +
-            "FROM\n" +
-            "sys_user u\n" +
-            "LEFT JOIN com_act c ON u.community_id = c.community_id \n" +
-            "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != &quot;&quot;'>" +
-            "AND c.`name` = #{loginUserInfoVO.communityName} \n" +
-            " </if> " +
-            " <where>" +
-            "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != &quot;&quot;'>" +
-            " and u.`name` = #{loginUserInfoVO.name} \n" +
-            " </if> " +
-            "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != &quot;&quot;'>" +
-            "AND u.phone = #{loginUserInfoVO.phone}" +
-            " </if> " +
-            " </where>" +
-            "</script>")
-    IPage<LoginUserInfoVO> pageUser(Page page, @Param("loginUserInfoVO") LoginUserInfoVO loginUserInfoVO);
 
-    @Select("<script> " +
-            "SELECT\n" +
-            "u.user_id,\n" +
-            "u.account,\n" +
-            "u.`name`,\n" +
-            "u.phone,\n" +
-            "e.role_name,\n" +
-            "u.`status`,\n" +
-            "u.create_at,\n" +
-            "u.last_login_time \n" +
-            "FROM\n" +
-            "sys_user u\n" +
-            "JOIN sys_user_role r ON u.user_id = r.user_id\n" +
-            "JOIN sys_role e ON r.role_id = e.role_id \n" +
-            "<if test='administratorsUserVO.roleId != null and administratorsUserVO.roleId!=0'>" +
-            " and e.role_id=#{administratorsUserVO.roleId}" +
-            " </if> " +
-            " <where>" +
-            "<if test='administratorsUserVO.communityId != null '>" +
-            "AND u.community_id = #{administratorsUserVO.communityId} \n" +
-            " </if> " +
-            "<if test='administratorsUserVO.name != null and administratorsUserVO.name.trim() != &quot;&quot;'>" +
-            "AND u.name = #{administratorsUserVO.name} \n" +
-            " </if> " +
-            "<if test='administratorsUserVO.phone != null and administratorsUserVO.phone.trim() != &quot;&quot;'>" +
-            "AND u.phone = #{administratorsUserVO.phone}" +
-            " </if> " +
-            "<if test='administratorsUserVO.account != null and administratorsUserVO.account.trim() != &quot;&quot;'>" +
-            "AND u.account = #{administratorsUserVO.account}" +
-            " </if> " +
-            " </where>" +
-            "</script>")
-    IPage<AdministratorsUserVO> pageUserBackstage(Page page, @Param("administratorsUserVO") AdministratorsUserVO administratorsUserVO);
+    IPage<AppletUserInfoVO> pageUser(Page page, @Param("loginUserInfoVO") AppletUserInfoVO userInfoVO);
 
-    @Select("<script> " +
-            "select \n" +
-            "u.user_id,\n" +
-            "u.phone,\n" +
-            "u.nick_name,\n" +
-            "u.name,\n" +
-            "a.name communityName,\n" +
-            "u.status,\n" +
-            "u.create_at,\n" +
-            "u.last_login_time\n" +
-            "from sys_user u\n" +
-            "left join com_act a on u.community_id=a.community_id\n" +
-            " where\n" +
-            "u.type=1\n" +
-            "<if test='pageUserAppletsBackstageDTO.phone != null and pageUserAppletsBackstageDTO.phone.trim() != &quot;&quot;'>" +
-            "and u.phone=#{pageUserAppletsBackstageDTO.phone}\n" +
-            " </if> " +
-            "<if test='pageUserAppletsBackstageDTO.communityId != null and pageUserAppletsBackstageDTO.communityId != 0'>" +
-            "and u.community_id=#{pageUserAppletsBackstageDTO.communityId}\n" +
-            " </if> " +
-            "<if test='pageUserAppletsBackstageDTO.status != null and pageUserAppletsBackstageDTO.status != 0'>" +
-            "and u.status=#{pageUserAppletsBackstageDTO.status}\n" +
-            " </if> " +
-            "<if test='pageUserAppletsBackstageDTO.createAtBegin != null '>" +
-            "and u.create_at between #{pageUserAppletsBackstageDTO.createAtBegin} and #{pageUserAppletsBackstageDTO.createAtEnd}\n" +
-            " </if> " +
-            "<if test='pageUserAppletsBackstageDTO.lastLoginTimeBegin != null '>" +
-            "and u.last_login_time between #{pageUserAppletsBackstageDTO.lastLoginTimeBegin} and #{pageUserAppletsBackstageDTO.lastLoginTimeEnd}\n" +
-            " </if> " +
-            "order by u.create_at desc \n" +
-            "</script>")
-    IPage<SysUserVO> pageUserAppletsBackstage(Page page, @Param("pageUserAppletsBackstageDTO") PageUserAppletsBackstageDTO pageUserAppletsBackstageDTO);
 
-    @Update("update sys_user set nick_name=null ,community_id=null,area_id=null where user_id=#{userId}")
+    IPage<AdministratorsUserVO> pageUserBackstage(Page page,
+                                                  @Param("administratorsUserVO") AdministratorsUserVO administratorsUserVO);
+
+
+    IPage<SysUserVO> pageUserAppletsBackstage(Page page,
+                                              @Param("pageUserAppletsBackstageDTO") PageUserAppletsBackstageDTO pageUserAppletsBackstageDTO);
+
+
     int deleteUserTest(Long userId);
 
-    @Select("<script> " +
-            "select * from \n" +
-            "sys_user_notice \n" +
-            "where \n" +
-            "user_id=#{pageDTO.userId} \n" +
-            "<if test='pageDTO.type != null and pageDTO.type != 0'>" +
-            "and type=#{pageDTO.type}\n" +
-            " </if> " +
-            "order by create_at desc\n" +
-            "</script>")
+
     IPage<SysUserNoticeVO> pageNotice(Page page, @Param("pageDTO") PageDTO pageDTO);
 
-    @Select("SELECT \n" +
-            "COUNT(user_id)allUser,\n" +
-            "COUNT(case WHEN DATE_FORMAT(create_at,'%m-%d-%Y')=DATE_FORMAT(SYSDATE(),'%m-%d-%Y') then user_id else null end )addUser,\n" +
-            "COUNT(case WHEN DATE_FORMAT(last_login_time,'%m-%d-%Y')=DATE_FORMAT(SYSDATE(),'%m-%d-%Y') then user_id else null end )activeDayUser,\n" +
-            "COUNT(case WHEN DATE_FORMAT(last_login_time,'%m-%d-%Y')=DATE_FORMAT(SYSDATE(),'%m-%d-%Y') and continuous_landing_days>=7 then user_id else null end )activeWeekUser\n" +
-            "FROM\n" +
-            "sys_user\n" +
-            "where type=1")
-    IndexDataKanbanVO selectIndexDataKanban();
 
-    @Select("select t.`name`,t.num from (\n" +
-            "SELECT \n" +
-            "COUNT(u.user_id)num,\n" +
-            "c.`name`\n" +
-            "FROM\n" +
-            "sys_user u \n" +
-            "join com_act c on u.community_id=c.community_id\n" +
-            "WHERE\n" +
-            "u.type =1\n" +
-            "GROUP BY u.community_id)t ORDER BY t.num desc limit 10")
-    List<DataKanbanDTO>  selectCommunityUserOrder();
+    IndexDataKanbanVO selectIndexDataKanban(@Param("areaCode") String areaCode);
 
-    @Select("select t.`name`,t.num from (\n" +
-            "SELECT \n" +
-            "COUNT(u.user_id)num,\n" +
-            "c.`name`\n" +
-            "FROM\n" +
-            "sys_user u \n" +
-            "join com_act c on u.community_id=c.community_id\n" +
-            "WHERE\n" +
-            "u.type =1 and DATE_FORMAT(u.last_login_time,'%m-%d-%Y')=DATE_FORMAT(SYSDATE(),'%m-%d-%Y') and u.continuous_landing_days>=7\n" +
-            "GROUP BY u.community_id)t ORDER BY t.num desc limit 10")
-    List<DataKanbanDTO> selectCommunityActiveUserOrder();
+
+    IPage<DataKanbanDTO> selectCommunityUserOrder(Page page, @Param("areaCode") String areaCode);
+
+    IPage<DataKanbanDTO> selectCommunityUserOrderMonth(Page page, @Param("areaCode") String areaCode);
+
+
+    DataKanbanDTO selectCommunityActiveUserOrder(Date date1);
+
+    DataKanbanDTO selectCommunityAddUserOrder(@Param("areaCode") String areaCode, @Param("date1") Date date1);
+
+
+    IndexDataVO indexDataCommunityBackstage(Long communityId);
+
+
+    int timedTaskContinuousLandingDays();
+
+
+    ComMngVolunteerMngVO selectVolunteerMngByPhone(String phone);
+
+
+    int updateFaceState(Long userId);
+
+
+    ComActVO selectCommunity(Long communityId);
+
+
+    Integer selectCountArea(String areaName);
+
+
+    Integer selectCountHouse(String areaName);
+
+
+    List<EexcelUserDTO> selectExport(@Param("exportUserDTO") ExportUserDTO exportUserDTO);
+
+
+    Integer selectCountMemberRole(@Param("phone") String phone, @Param("userCommunityId") Long userCommunityId);
+
+
+    Integer selectCountTeam(@Param("phone") String phone, @Param("userCommunityId") Long userCommunityId);
+
+
+    void updateMemberRole(@Param("newphone") String newphone, @Param("oldphone") String oldphone);
+
+
+    void updateServiceTeam(@Param("newphone") String newphone, @Param("oldphone") String oldphone);
+
+
+    Integer selectCountSysUser(@Param("phone") String phone, @Param("userCommunityId") Long userCommunityId);
+
+
+    void updateStoreByPhone(@Param("phone") String phone, @Param("sysUserId") Long sysUserId);
+
+
+    void deleteStoreByPhoneAndStatus(@RequestParam("phone") String phone);
+
+
+    void updateUserArchives(@Param("userArchivesVO") UpdateUserArchivesVO userArchivesVO);
+
+
+    void updateComPbMemberUserId(@Param("idCard") String idCard, @Param("userId") Long userId);
+
+
+    Long getPartyBuildingByIdCard(@Param("idCard") String idCard);
+
+
+    IPage<GridMemberVO> getGridMemberList(Page page,
+                                          @Param("memberRelationDTO") PageEventGridMemberRelationDTO memberRelationDTO);
+
+
+    void gridMemberEditStatus(@Param("gridMemberEditDTO") EventGridMemberEditStatusDTO gridMemberEditDTO);
+
+
+    void passResetUser(@Param("gridMemberDTO") EventGridMemberPassResetDTO gridMemberDTO);
+
+
+    void addLcMember(@Param("lcMemberId") Long lcMemberId, @Param("userId") Long userId,
+                     @Param("userName") String userName);
+
+
+    void delLcMember(@Param("gridMemberId") Long gridMemberId);
+
+
+    Map<String, Long> getBuilding(@Param("buildingId") Long buildingId);
+
+
+    void delGridMemberRelation(@Param("gridMemberId") Long gridMemberId);
+
+
+    Map<String, String> getLcMemberId(@Param("gridMemberId") Long gridMemberId);
+
+
+    Integer getGridIsOk(@Param("userId") Long userId);
+
+    List<EventGridMemberVO> getGridsMemberList(@Param("communityId") Long communityId);
+
+
+    List<ComPbServiceTeamWishVO> getServiceTeamList(@Param("param") String param,
+                                                    @Param("communityId") Long communityId);
+
+
+    List<SysUserVO> getUserListByCommunityId(@Param("communityId") Long communityId);
+
+    int putUserTag(@Param("sysUserDO") SysUserDO sysUserDO);
+
+    /**
+     * 禁用/启用便民服务商家账号
+     *
+     * @param status
+     * @param userIds
+     * @return
+     */
+    int disableOrEnableMerchantUsers(@Param("status") Integer status, @Param("userIds") List<Long> userIds);
+
+    /**
+     * 根据手机号维护社区团队表是否注册
+     *
+     * @param phone 手机号
+     */
+    void judgeCommunityTeam(@Param("phone") String phone);
+
+    /**
+     * 根据手机号查询社区团队表中用户数量
+     *
+     * @param phone 手机号
+     * @return 用户数量
+     */
+    Integer getCommunityTeamCount(@Param("phone") String phone);
+
+    /**
+     * 查询西区所有街道列表以及统计人数
+     *
+     * @return 西区所有街道列表以及统计人数
+     */
+    List<IndexUserStreetVo> getUserStreetList(@Param("areaCode") String areaCode);
+
+    /**
+     * 查询街道下社区列表以及统计人数
+     *
+     * @param streetId 街道id
+     * @return 社区列表以及统计人数
+     */
+    List<IndexUserCommunityVo> getUserCommunityList(@Param("streetId") Long streetId);
+
+    /**
+     * 查询街道下社区注册人数统计数据导出
+     *
+     * @return 社区注册人数统计数据导出
+     */
+    List<IndexUserStreetExcelExportVo> getUserCommunityExcelExport(String areaCode);
+
+    /**
+     * 查看是否是社区物业人员
+     *
+     * @param userId
+     * @param userCommunityId
+     * @return
+     */
+    int countPropertyWorker(@Param("userId") Long userId, @Param("communityId") Long userCommunityId);
+
+    /**
+     * 查看是否社工
+     *
+     * @param phone
+     * @param communityId
+     * @return
+     */
+    int countSocialWorker(@Param("phone") String phone, @Param("communityId") Long communityId);
+
+    /**
+     * 查看是否社会组织
+     *
+     * @param userId
+     * @return
+     */
+    int countSocialOrg(Long userId);
+
+
+    /**
+     * 查看是否是微团队成员
+     *
+     * @param phone
+     * @param userCommunityId
+     * @return
+     */
+    int countFmsMember(@Param("phone") String phone, @Param("communityId") Long userCommunityId);
+
+    /**
+     * 查询街道信息
+     *
+     * @param streetId
+     * @return
+     */
+    ComStreetVO selectStreetById(@Param("streetId") Long streetId);
+
+    /**
+     * 查询是否是社会组织成员
+     *
+     * @param userId
+     * @return
+     */
+    int countSocialOrgMember(@Param("userId") Long userId);
+
+    /**
+     * 查询是否社会组织联系人
+     *
+     * @param phone
+     * @return
+     */
+    int countOrgNum(@Param("phone") String phone);
+
+    /**
+     * 查询是否人大代表
+     *
+     * @param phone
+     * @param userCommunityId
+     * @return
+     */
+    int selectCountDpc(@Param("phone") String phone, @Param("userCommunityId") Long userCommunityId);
+
+    /**
+     * 查看是否网格员
+     *
+     * @param phone
+     * @param userCommunityId
+     * @return
+     */
+    int countEasyPhotoMember(@Param("phone") String phone, @Param("communityId") Long userCommunityId);
+
+    /**
+     * 查询防疫工作人员信息
+     *
+     * @param phone
+     * @return
+     */
+    ComActAcidMemberVO selectAcidMemberByPhone(@Param("phone") String phone);
+
+    /**
+     * 查询单位管理员
+     *
+     * @param phone
+     * @return
+     */
+    Integer selectOrgAdmin(@Param("phone") String phone);
+
+    /**
+     * 查询报道单位id
+     *
+     * @param phone
+     * @return
+     */
+    Long selectCheckUnitId(@Param("phone") String phone);
+
+    /**
+     * 根据社区名称查询区县社区联动关系
+     *
+     * @param relationName
+     * @return
+     */
+    List<ComAreaTownCommunityVO> selectAreaTownCommunity(@Param("relationName") String relationName);
+
+    /**
+     * 根据街道id查询区域名称
+     *
+     * @param streetId
+     * @return
+     */
+    String selectAreaCodeByStreetId(Long streetId);
+
+    /**
+     * 看板用户统计:用户占比统计
+     */
+    List<UserProportion> userAnalysis(@Param("type") Integer type, @Param("range") String range, @Param("streetId") Long streetId, @Param("areaCode") Long areaCode, @Param("appId") String appId);
+
+    /**
+     * 统计区域实名用户数
+     */
+    List<RealUser> realUserCount(@Param("type") Integer type, @Param("range") String range, @Param("streetId") Long streetId, @Param("areaCode") Long areaCode, @Param("appId") String appId);
+
+    /**
+     * 统计该街道内的所有用户数
+     */
+    Integer streetUserCount(@Param("id") Long id, @Param("areaCode") Long areaCode);
+
+    /**
+     * 街道用户统计
+     */
+    IndexDataKanbanVO dataKanBanStreet(@Param("streetId") Long streetId, @Param("areaCode") Long areaCode, @Param("range") String range);
+
+    /**
+     * 获取当天的新增和日活
+     */
+    Map<String, Long> getDailyAddAndActive(@Param("date") Date date, @Param("id") Long streetId, @Param("areaCode") Long areaCode, @Param("appId") String appId);
+
+    Map<String, Long> getDailyAdd(@Param("createAt") String createAt, @Param("id") Long streetId, @Param("areaCode") Long areaCode, @Param("appId") String appId);
+
+    Map<String, Long> getActive(@Param("lastLoginTime") String lastLoginTime, @Param("id") Long streetId, @Param("areaCode") Long areaCode, @Param("appId") String appId);
+
+
+    List<StreetVOS> selectStreetByAreaCode(Integer code);
+
+    List<StreetVO> selectStreetsByAreaCode(Integer code);
+
+    ComActAcidCheckRecordVO selectComActAcidCheckRecordById(Long id);
+
+    ComActAcidRecordVO selectComActAcidRecord(Long id);
+
+    ComActAcidMemberVO selectComActAcidMember(Long id);
+
+    /**
+     * 获取本月的
+     */
+    Integer getMonthUsers(@Param("streetId") Long streetId, @Param("areaCode") Long areaCode, @Param("range") String range, @Param("appId") String appId);
+
+    /**
+     * 获取街道下属村/社区
+     */
+    List<CommunityVO> selectCommunityByStreetId(@Param("id") Long streetId, @Param("type") Integer type);
+
+    /**
+     * 获取账户id
+     */
+    List<Integer> selectIdsByAccount(@Param("array") String[] streetList);
+
+    List<CommunityVO> selectCommunityByStreetName(String name);
+
+    StreetVOS selectStreetByName(String name);
 }

--
Gitblit v1.7.1