From 2e64c232ab6b51b2cecf1ee96e1e9b709234f326 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期六, 21 八月 2021 16:35:14 +0800 Subject: [PATCH] 随手拍改版接口开发 --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java | 361 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 298 insertions(+), 63 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..200896c 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 @@ -5,20 +5,34 @@ 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.community.ComActVO; +import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; +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.ComPbServiceTeamVO; +import com.panzhihua.common.model.vos.partybuilding.ComPbServiceTeamWishVO; 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.user.UpdateUserArchivesVO; 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.apache.ibatis.annotations.*; +import org.springframework.web.bind.annotation.RequestParam; +import java.util.Date; import java.util.List; +import java.util.Map; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -48,61 +62,72 @@ "u.phone,\n" + "u.id_card,\n" + "u.face_state,\n" + - "c.name,\n" + + "c.area_name communityName,\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() != ""'>" + - "AND c.`name` = #{loginUserInfoVO.name} \n" + - " </if> " + - " <where>" + + "JOIN com_mng_struct_area c ON u.area_id = c.id \n" + "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + - "and u.`name` = #{loginUserInfoVO.communityName} \n" + + "AND c.`area_name` like concat(#{loginUserInfoVO.communityName},'%') \n" + + " </if> " + + " where u.face_state is not null and u.type=1 and u.community_id=#{loginUserInfoVO.communityId} " + + "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != ""'>" + + "and u.`name` like concat(#{loginUserInfoVO.name},'%') \n" + " </if> " + "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != ""'>" + - "AND u.phone = #{loginUserInfoVO.phone}" + + "AND u.phone like concat(#{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() != ""'>" + - "AND c.`name` = #{loginUserInfoVO.communityName} \n" + - " </if> " + - " <where>" + - "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != ""'>" + - " and u.`name` = #{loginUserInfoVO.name} \n" + - " </if> " + - "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != ""'>" + - "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.`name`,\n" + +// "u.`sex`,\n" + +// "u.nick_name,\n" + +// "u.phone,\n" + +// "YEAR (now()) - YEAR (substring(u.id_card, 7, 8)) age,\n"+ +// "1 isRegister,\n"+ +// "v.political_face political_outlook,\n"+ +// "u.id_card,\n" + +// "u.job,\n" + +// "c.area_name communityName,\n" + +// "u.tags,\n" + +// "u.create_at \n" + +// "FROM\n" + +// "sys_user u\n" + +// "left join com_mng_volunteer_mng v on u.phone=v.phone \n"+ +// "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + +// " JOIN com_mng_struct_area c ON u.area_id = c.id \n" + +// " </if> " + +// "<if test='loginUserInfoVO.communityName == null or loginUserInfoVO.communityName.trim() == ""'>" + +// "LEFT JOIN com_mng_struct_area c ON u.area_id = c.id \n" + +// " </if> " + +// "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + +// "AND c.`area_name` like concat(#{loginUserInfoVO.communityName},'%') \n" + +// " </if> " + +// " where u.community_id=#{loginUserInfoVO.communityId} and u.type=1 " + +// "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != ""'>" + +// " and u.`name` like concat(#{loginUserInfoVO.name},'%') \n" + +// " </if> " + +// "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != ""'>" + +// "AND u.phone like concat(#{loginUserInfoVO.phone},'%') " + +// " </if> " + +// " order by u.user_id desc " + +// "</script>") + IPage<AppletUserInfoVO> pageUser(Page page, @Param("loginUserInfoVO") AppletUserInfoVO userInfoVO); @Select("<script> " + "SELECT\n" + "u.user_id,\n" + "u.account,\n" + "u.`name`,\n" + + "u.`password`,\n" + "u.phone,\n" + "e.role_name,\n" + + "e.role_id ,\n" + "u.`status`,\n" + "u.create_at,\n" + "u.last_login_time \n" + @@ -118,13 +143,13 @@ "AND u.community_id = #{administratorsUserVO.communityId} \n" + " </if> " + "<if test='administratorsUserVO.name != null and administratorsUserVO.name.trim() != ""'>" + - "AND u.name = #{administratorsUserVO.name} \n" + + "AND u.name like concat (#{administratorsUserVO.name},'%') \n" + " </if> " + "<if test='administratorsUserVO.phone != null and administratorsUserVO.phone.trim() != ""'>" + - "AND u.phone = #{administratorsUserVO.phone}" + + "AND u.phone like concat(#{administratorsUserVO.phone},'%') " + " </if> " + "<if test='administratorsUserVO.account != null and administratorsUserVO.account.trim() != ""'>" + - "AND u.account = #{administratorsUserVO.account}" + + "AND u.account like concat(#{administratorsUserVO.account},'%') " + " </if> " + " </where>" + "</script>") @@ -143,7 +168,7 @@ "from sys_user u\n" + "left join com_act a on u.community_id=a.community_id\n" + " where\n" + - "u.type=1\n" + + "u.type=1 and u.community_id is not null \n" + "<if test='pageUserAppletsBackstageDTO.phone != null and pageUserAppletsBackstageDTO.phone.trim() != ""'>" + "and u.phone=#{pageUserAppletsBackstageDTO.phone}\n" + " </if> " + @@ -182,33 +207,243 @@ "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" + + "(SELECT count(user_id) FROM sys_user WHERE type = 1 AND last_login_time > date_sub(SYSDATE(), INTERVAL 7 DAY))activeWeekUser\n" + "FROM\n" + "sys_user\n" + - "where type=1") + "where type=1 and community_id is not null") IndexDataKanbanVO selectIndexDataKanban(); - @Select("select t.`name`,t.num from (\n" + + @Select("select t.* from (\n" + "SELECT \n" + - "COUNT(u.user_id)num,\n" + - "c.`name`\n" + + "a.`name`,\n" + + "COUNT(u.user_id)num\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") + "com_act a\n" + + "LEFT JOIN sys_user u ON a.community_id = u.community_id and u.type=1\n" + + "GROUP BY a.community_id)t ORDER BY t.num desc ") List<DataKanbanDTO> selectCommunityUserOrder(); - @Select("select t.`name`,t.num from (\n" + - "SELECT \n" + - "COUNT(u.user_id)num,\n" + - "c.`name`\n" + + @Select("SELECT\n" + + "\tCOUNT( a.id ) num \n" + "FROM\n" + - "sys_user u \n" + - "join com_act c on u.community_id=c.community_id\n" + + "\tcom_act_activity a \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(); + "\tDATE_FORMAT( #{date1}, '%Y-%m-%d' )= DATE_FORMAT(\n" + + "\t\ta.create_at,\n" + + "\t'%Y-%m-%d')\n" + + "\t") + DataKanbanDTO selectCommunityActiveUserOrder(Date date1); + @Select("SELECT \n" + + "COUNT(DISTINCT u.user_id)allUser,\n" + + "(select COUNT(m.id) from com_mng_volunteer_mng m where m.community_id=#{communityId} and m.`state`=2)volunteerUser,\n" + + " (select count(id) from com_pb_member cpm where cpm.audit_result = 1 and cpm.community_id = #{communityId}) partymemberUser,\n" + + "COUNT(h.id)house\n" + + "FROM\n" + + "sys_user u\n" + + "JOIN com_act c ON u.community_id = c.community_id \n" + + "LEFT JOIN com_mng_struct_house_user h on u.user_id=h.user_id\n" + + "WHERE\n" + + "u.community_id =#{communityId} and u.type=1") + IndexDataVO indexDataCommunityBackstage(Long communityId); + @Update("UPDATE sys_user u \n" + + "SET u.continuous_landing_days =\n" + + "IF\n" + + "(\n" + + "DATE_FORMAT( u.last_login_time, '%m-%d-%Y' )= DATE_FORMAT( SYSDATE(), '%m-%d-%Y' ),\n" + + "u.continuous_landing_days + 1,\n" + + "0)") + int timedTaskContinuousLandingDays(); + @Select("select id,create_at,state,name,phone,photo_path,political_face,reject_reson,apply_reson,address,age,job,integral,community_id,submit_user_id " + + " from com_mng_volunteer_mng where phone=#{phone} order by create_at desc limit 1") + ComMngVolunteerMngVO selectVolunteerMngByPhone(String phone); + @Update("update sys_user set face_state=null where user_id=#{userId}") + int updateFaceState(Long userId); + @Select("select name from com_act where community_id=#{communityId}") + ComActVO selectCommunity(Long communityId); + @Select("select COUNT(a.id) from com_mng_struct_area a where a.area_name=#{areaName}") + Integer selectCountArea(String areaName); + @Select("SELECT\n" + + "\tCOUNT(h.id)\n" + + "FROM\n" + + "\tcom_mng_struct_area a \n" + + "\tLEFT JOIN com_mng_struct_house h on h.parent_code=a.area_code\n" + + "WHERE\n" + + "\ta.area_name = #{areaName}") + Integer selectCountHouse(String areaName); + + @Select("<script> " + + "SELECT\n" + + "u.user_id 'order',\n" + + "h.house_name doorNumber,\n" + + "if(h.state=2,'租住','自主')isRent,\n" + + "u.`name`,\n" + + "'汉' nation,\n" + + "if(u.is_partymember=1,'党员','群众')politicalOutlook,\n" + + "'未知' maritalStatus,\n" + + "u.phone,\n" + + "'未知' education,\n" + + "u.id_card,\n" + + "'未知' company,\n" + + "'未知' residence,\n" + + "'未知' isPanZhiHua,\n" + + "'未知' situation,\n" + + "'未知' isContact,\n" + + "'未知' major,\n" + + "'未知' soldier,\n" + + "'未知' disability,\n" + + "'未知' lowIncomeHouseholds,\n" + + "'未知' lowIncomePeople,\n" + + "'未知' oldPeople,\n" + + "'未知' specialServiceFamily,\n" + + "'未知' keyPersonnel\n" + + "FROM\n" + + "sys_user u\n" + + "left join com_mng_struct_house_user hu on hu.user_id=u.user_id\n"+ + "left join com_mng_struct_house h on hu.house_code=h.house_code\n"+ + "<if test='exportUserDTO.areaName != null and exportUserDTO.areaName.trim() != ""'>" + + " JOIN com_mng_struct_area c ON u.area_id = c.id \n" + + " </if> " + + "<if test='exportUserDTO.areaName == null or exportUserDTO.areaName.trim() == ""'>" + + "LEFT JOIN com_mng_struct_area c ON u.area_id = c.id \n" + + " </if> " + + "<if test='exportUserDTO.areaName != null and exportUserDTO.areaName.trim() != ""'>" + + "AND c.`area_name` like concat(#{exportUserDTO.areaName},'%') \n" + + " </if> " + + " where u.community_id=#{exportUserDTO.communityId} and u.type=1 " + + "<if test='exportUserDTO.name != null and exportUserDTO.name.trim() != ""'>" + + " and u.`name` like concat(#{exportUserDTO.name},'%') \n" + + " </if> " + + "<if test='exportUserDTO.phone != null and exportUserDTO.phone.trim() != ""'>" + + "AND u.phone like concat(#{exportUserDTO.phone},'%') " + + " </if> " + + " group by u.user_id "+ + "</script>") + List<EexcelUserDTO> selectExport(@Param("exportUserDTO") ExportUserDTO exportUserDTO); + + @Select("SELECT\n" + + "\t COUNT(a.id)\n" + + "FROM\n" + + "\t com_pb_member_role a \n" + + "WHERE\n" + + "\t a.phone = #{phone} and community_id=#{userCommunityId} ") + Integer selectCountMemberRole(@Param("phone")String phone, @Param("userCommunityId")Long userCommunityId); + + @Select("SELECT\n" + + "\t COUNT(a.id)\n" + + "FROM\n" + + "\t com_pb_service_team a \n" + + "WHERE\n" + + "\t a.phone = #{phone} and community_id=#{userCommunityId} ") + Integer selectCountTeam(@Param("phone")String phone, @Param("userCommunityId")Long userCommunityId); + + + @Update("update com_pb_member_role u set u.phone=#{newphone},is_reg=1 where u.phone=#{oldphone}") + void updateMemberRole(@Param("newphone")String newphone,@Param("oldphone")String oldphone); + @Update("update com_pb_service_team u set u.phone=#{newphone},is_reg=1 where u.phone=#{oldphone}") + void updateServiceTeam(@Param("newphone")String newphone,@Param("oldphone")String oldphone); + + @Select("SELECT\n" + + "\t COUNT(ur.role_id) \n" + + "FROM\n" + + "\t sys_user u LEFT JOIN sys_user_role ur ON u.user_id = ur.user_id \n" + + "\t LEFT JOIN sys_role r ON ur.role_id = r.role_id \n" + + "WHERE ur.role_id IS NOT NULL AND u.phone = #{phone} and r.community_id=#{userCommunityId} ") + Integer selectCountSysUser(@Param("phone")String phone, @Param("userCommunityId")Long userCommunityId); + + @Select("update com_shop_store set sys_user_id = #{sysUserId} where phone = #{phone}") + void updateStoreByPhone(@Param("phone")String phone, @Param("sysUserId")Long sysUserId); + + @Select("delete from com_shop_store where delete_status = 1 and phone = #{phone}") + void deleteStoreByPhoneAndStatus(@RequestParam("phone") String phone); + + @Select("update sys_user set" + + " card_photo_front = #{userArchivesVO.cardPhotoFront} \n" + + ", card_photo_back = #{userArchivesVO.cardPhotoBack} \n" + + ",family_book = #{userArchivesVO.familyBook} \n" + + ",job = #{userArchivesVO.job} \n" + + " where user_id = #{userArchivesVO.userId}") + void updateUserArchives(@Param("userArchivesVO") UpdateUserArchivesVO userArchivesVO); + + @Select("update com_pb_member set user_id = #{userId} where audit_result = 1 and id_card = #{idCard}") + void updateComPbMemberUserId(@Param("idCard")String idCard, @Param("userId")Long userId); + + @Select("select id from com_pb_member where audit_result = 1 and id_card = #{idCard}") + Long getPartyBuildingByIdCard(@Param("idCard")String idCard); + + @Select("<script>" + + "select su.user_id,su.image_url,su.nick_name,su.account,su.phone,su.work_status,su.`status`" + + ",ca.name as communityName,su.work_start_time,su.work_end_time from sys_user su" + + " left join com_act as ca on ca.community_id = su.community_id" + + " where su.type = 6 " + + "<if test='memberRelationDTO.status != null'>" + + "AND su.status = #{memberRelationDTO.status} " + + " </if> " + + "<if test='memberRelationDTO.gridCommunityId != null'>" + + "AND ca.community_id = #{memberRelationDTO.gridCommunityId} " + + " </if> " + + "<if test='memberRelationDTO.gridStreetId != null'>" + + "AND ca.street_id = #{memberRelationDTO.gridStreetId} " + + " </if> " + + "<if test='memberRelationDTO.workStatus != null'>" + + "AND su.work_status = #{memberRelationDTO.workStatus} " + + " </if> " + + "<if test='memberRelationDTO.keyWord != null and memberRelationDTO.keyWord != ""'>" + + "and (su.nick_name like concat(#{memberRelationDTO.keyWord},'%') OR su.user_id = #{memberRelationDTO.keyWord} OR su.account like concat(#{memberRelationDTO.keyWord},'%') OR su.phone like concat(#{memberRelationDTO.keyWord},'%'))" + + " </if> " + + " order by su.create_at desc" + + "</script>") + IPage<GridMemberVO> getGridMemberList(Page page, @Param("memberRelationDTO") PageEventGridMemberRelationDTO memberRelationDTO); + + @Select("<script>" + + "update sys_user" + + " set status = #{gridMemberEditDTO.status}" + + " where user_id in " + + "<foreach item=\"item\" collection=\"gridMemberEditDTO.ids\" separator=\",\" open=\"(\" close=\")\" index=\"\"> \n" + + "#{item}\n" + + "</foreach>\n" + + "</script>") + void gridMemberEditStatus(@Param("gridMemberEditDTO") EventGridMemberEditStatusDTO gridMemberEditDTO); + + @Select("<script>" + + "update sys_user" + + " set password = #{gridMemberDTO.password}" + + " where user_id in " + + "<foreach item=\"item\" collection=\"gridMemberDTO.ids\" separator=\",\" open=\"(\" close=\")\" index=\"\"> \n" + + "#{item}\n" + + "</foreach>\n" + + "</script>") + void passResetUser(@Param("gridMemberDTO") EventGridMemberPassResetDTO gridMemberDTO); + + @Update("update lc_compare_code_member set local_grid_member_id = #{userId},grid_member_name = #{userName} where id = #{lcMemberId}") + void addLcMember(@Param("lcMemberId") Long lcMemberId,@Param("userId") Long userId,@Param("userName") String userName); + + @Delete("delete from lc_compare_code_member where local_grid_member_id = #{gridMemberId}") + void delLcMember(@Param("gridMemberId") Long gridMemberId); + + @Select("select id,village_id,act_id from com_mng_building where id = #{buildingId}") + Map<String,Long> getBuilding(@Param("buildingId") Long buildingId); + + @Delete("delete from event_grid_member_building_relation where grid_member_id = #{gridMemberId}") + void delGridMemberRelation(@Param("gridMemberId") Long gridMemberId); + + @Select("select lc_grid_member_id,lc_grid_member_name,lc_bind_user_id from lc_compare_code_member where local_grid_member_id = #{gridMemberId}") + Map<String,String> getLcMemberId(@Param("gridMemberId") Long gridMemberId); + + @Select("select count(id) from event_grid_member_relation where grid_member_id = #{userId}") + Integer getGridIsOk(@Param("userId") Long userId); + + @Select("select user_id,nick_name,phone from sys_user where type = 6 and community_id = #{communityId} limit 3") + List<EventGridMemberVO> getGridsMemberList(@Param("communityId") Long communityId); + + @Select("<script>" + + "select id as managerId,`name` from com_pb_service_team where community_id = #{communityId}" + + "<if test='param != null and param != ""'>" + + "AND `name` like concat(#{param},'%') " + + " </if> " + + "</script>") + List<ComPbServiceTeamWishVO> getServiceTeamList(@Param("param") String param, @Param("communityId") Long communityId); + + @Select("select user_id,`name` from sys_user as su where type = 3 and community_id = #{communityId}") + List<SysUserVO> getUserListByCommunityId(@Param("communityId") Long communityId); + } -- Gitblit v1.7.1