diff --git a/accompany-admin/accompany-admin-service/src/main/java/com/accompany/admin/service/guild/GuildManageAdminService.java b/accompany-admin/accompany-admin-service/src/main/java/com/accompany/admin/service/guild/GuildManageAdminService.java index 277f29ab2..7b1d08ead 100644 --- a/accompany-admin/accompany-admin-service/src/main/java/com/accompany/admin/service/guild/GuildManageAdminService.java +++ b/accompany-admin/accompany-admin-service/src/main/java/com/accompany/admin/service/guild/GuildManageAdminService.java @@ -10,6 +10,7 @@ import com.accompany.business.event.GuildMemberStatusChangeEvent; import com.accompany.business.event.NewGuildEvent; import com.accompany.business.message.NewGuildMessage; import com.accompany.business.model.guild.*; +import com.accompany.business.mybatismapper.guild.GuildMapper; import com.accompany.business.service.UploadAvatarService; import com.accompany.business.service.guild.*; import com.accompany.business.service.user.UsersService; @@ -51,6 +52,8 @@ public class GuildManageAdminService { @Autowired private PartitionInfoService partitionInfoService; @Autowired + private GuildMapper guildMapper; + @Autowired private GuildService guildService; @Autowired private GuildMemberService guildMemberService; @@ -284,7 +287,7 @@ public class GuildManageAdminService { Set regionGuildIdSet = new HashSet<>(); if (null != regionId){ - List guildOwnerList =guildMemberService.listGuildOwnerByPartitionIdRegionId(partitionId, regionId); + List guildOwnerList = guildMemberService.listGuildOwnerByPartitionIdRegionId(partitionId, regionId); if (CollectionUtils.isEmpty(guildOwnerList)){ return voPage; } @@ -303,34 +306,36 @@ public class GuildManageAdminService { .eq(Guild::getPartitionId, partitionId) .orderByDesc(Guild::getEnable, Guild::getId); + Long ownerUid = null; if (null != erbanNo){ Users u = usersService.getUserByErbanNo(erbanNo); if (null == u || u.getPartitionId() != partitionId){ return voPage; } - queryWrapper.eq(Guild::getOwnerUid, u.getUid()); + ownerUid = u.getUid(); } + Date sTime = null; if (StringUtils.isNotBlank(startTime)){ - Date sTime = DateTimeUtil.convertStrToDate(startTime, DateTimeUtil.DEFAULT_DATETIME_PATTERN); - queryWrapper.ge(Guild::getCreateTime, sTime); + sTime = DateTimeUtil.convertStrToDate(startTime, DateTimeUtil.DEFAULT_DATETIME_PATTERN); } + Date eTime = null; if (StringUtils.isNotBlank(endTime)){ - Date eTime = DateTimeUtil.convertStrToDate(endTime, DateTimeUtil.DEFAULT_DATETIME_PATTERN); - queryWrapper.le(Guild::getCreateTime, eTime); + eTime = DateTimeUtil.convertStrToDate(endTime, DateTimeUtil.DEFAULT_DATETIME_PATTERN); } + Long inviteUid = null; if (null != inviteErbanNo){ Users inviteUser = usersService.getUserByErbanNo(inviteErbanNo); if (null == inviteUser || inviteUser.getPartitionId() != partitionId){ return voPage; } - queryWrapper.eq(Guild::getInviteUid, inviteUser.getUid()); + inviteUid = inviteUser.getUid(); } Page page = new Page<>(pageNum, pageSize); - guildService.page(page, queryWrapper); + guildMapper.pageGuild(page, regionGuildIdSet.stream().toList(), partitionId, ownerUid, sTime, eTime, inviteUid); if (page.getRecords().isEmpty()){ return voPage; } diff --git a/accompany-business/accompany-business-service/src/main/java/com/accompany/business/mybatismapper/guild/GuildMapper.java b/accompany-business/accompany-business-service/src/main/java/com/accompany/business/mybatismapper/guild/GuildMapper.java index 2a5055b79..b95f80097 100644 --- a/accompany-business/accompany-business-service/src/main/java/com/accompany/business/mybatismapper/guild/GuildMapper.java +++ b/accompany-business/accompany-business-service/src/main/java/com/accompany/business/mybatismapper/guild/GuildMapper.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.List; import java.util.Set; @@ -13,13 +14,21 @@ public interface GuildMapper extends BaseMapper { List listVaildGuildByPartitionId(@Param("partitionId") Integer partitionId); - Page pageGuildByPartitionId(Page page, - @Param("uid") Long uid, + Page pageGuild(Page page, + @Param("guildIdList") List guildIdList, @Param("partitionId") Integer partitionId, - @Param("guildName") String familyName); + @Param("ownerUid") Long ownerUid, + @Param("startTime") Date startTime, + @Param("endTime") Date endTime, + @Param("inviteUid") Long inviteUid); List getAgencyOwnerByGuildIds(@Param("guildIds") Set guildIds); List getGuildMemberNumMapByGuildIds(@Param("guildIds") Set guildIds); + Page pageGuildByPartitionId(Page page, + @Param("uid") Long uid, + @Param("partitionId") Integer partitionId, + @Param("guildName") String familyName); + } \ No newline at end of file diff --git a/accompany-business/accompany-business-service/src/main/resources/accompany/sqlmappers/GuildMapper.xml b/accompany-business/accompany-business-service/src/main/resources/accompany/sqlmappers/GuildMapper.xml index 936ee4825..1f60fa9a4 100644 --- a/accompany-business/accompany-business-service/src/main/resources/accompany/sqlmappers/GuildMapper.xml +++ b/accompany-business/accompany-business-service/src/main/resources/accompany/sqlmappers/GuildMapper.xml @@ -61,4 +61,34 @@ GROUP BY guild_id + + \ No newline at end of file