BDadmin
This commit is contained in:
@@ -13,6 +13,7 @@ import com.accompany.business.service.family.FamilyGiftRecordService;
|
||||
import com.accompany.business.service.guild.BdGuildService;
|
||||
import com.accompany.business.service.guild.BdInfoService;
|
||||
import com.accompany.business.service.guild.GuildDiamondStatisticsDayService;
|
||||
import com.accompany.business.service.guildsoviet.GuildExtraDiamondDayService;
|
||||
import com.accompany.business.service.invite.UserInviteFissionRecordService;
|
||||
import com.accompany.business.service.user.UsersService;
|
||||
import com.accompany.business.vo.guild.GuildInfoVo;
|
||||
@@ -56,6 +57,8 @@ public class BdInfoAdminService {
|
||||
private GuildDiamondStatisticsDayService guildDiamondStatisticsDayService;
|
||||
@Autowired
|
||||
private FamilyGiftRecordService familyGiftRecordService;
|
||||
@Autowired
|
||||
private GuildExtraDiamondDayService guildExtraDiamondDayService;
|
||||
|
||||
public final int BOUND_EXPIRE_LIMIT_DAY = 7;
|
||||
|
||||
@@ -134,6 +137,8 @@ public class BdInfoAdminService {
|
||||
Map<Integer, Double> guildDiamondOrGoldMap;
|
||||
if (PartitionEnum.ENGLISH.getId() == partitionId) {
|
||||
guildDiamondOrGoldMap = familyGiftRecordService.mapByFamilyId(DateUtil.formatDateTime(beginTime), DateUtil.formatDateTime(endTime), guildIdList);
|
||||
} else if (PartitionEnum.SOVIET.getId() == partitionId) {
|
||||
guildDiamondOrGoldMap = guildExtraDiamondDayService.mapByStatDate(DateUtil.formatDate(beginTime), DateUtil.formatDate(endTime), partitionId, guildIdList);
|
||||
} else {
|
||||
guildDiamondOrGoldMap = guildDiamondStatisticsDayService.mapByStatDate(DateUtil.formatDate(beginTime), DateUtil.formatDate(endTime), partitionId, guildIdList);
|
||||
}
|
||||
@@ -355,6 +360,16 @@ public class BdInfoAdminService {
|
||||
record.setGoldNum(BigDecimal.valueOf(guildDiamondMap.getOrDefault(record.getGuildId(), 0D)));
|
||||
}
|
||||
}
|
||||
} else if (PartitionEnum.SOVIET.getId() == users.getPartitionId()) {
|
||||
guilds = bdGuildService.guildsByBdId(bdId, pageNo, pageSize);
|
||||
List<GuildInfoVo> records = guilds.getRecords();
|
||||
if (records != null) {
|
||||
List<Integer> guildIds = records.stream().map(x -> x.getGuildId().intValue()).collect(Collectors.toList());
|
||||
Map<Integer, Double> guildDiamondMap = guildExtraDiamondDayService.mapByStatDate(DateUtil.formatDate(beginTime), DateUtil.formatDate(endTime), partitionId, guildIds);
|
||||
for (GuildInfoVo record : records) {
|
||||
record.setDiamondNum(BigDecimal.valueOf(guildDiamondMap.getOrDefault(record.getGuildId(), 0D)));
|
||||
}
|
||||
}
|
||||
} else {
|
||||
guilds = bdGuildService.guildsByBdId(bdId, pageNo, pageSize);
|
||||
List<GuildInfoVo> records = guilds.getRecords();
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package com.accompany.business.mybatismapper.guildsoviet;
|
||||
|
||||
import com.accompany.business.model.guildsoviet.GuildExtraDiamondDay;
|
||||
import com.accompany.business.vo.guild.GuildDiamondStatisticsDayVo;
|
||||
import com.accompany.business.vo.guild.GuildInfoVo;
|
||||
import com.accompany.business.vo.guildsoviet.GuildMemberSovietAdminVo;
|
||||
import com.accompany.business.vo.guildsoviet.GuildSovietAdminVo;
|
||||
@@ -55,4 +56,7 @@ public interface GuildExtraDiamondDayMapper extends BaseMapper<GuildExtraDiamond
|
||||
|
||||
IPage<GuildInfoVo> listBdGuildDiamondNum(@Param("ipage") IPage<GuildInfoVo> ipage, @Param("startDate")String startDate, @Param("endDate")String endDate,
|
||||
@Param("bdId")Long bdId);
|
||||
|
||||
List<GuildDiamondStatisticsDayVo> listByStatDateGuildIds(@Param("startDate")String startDate, @Param("endDate")String endDate,
|
||||
@Param("guildIds") List<Integer> guildIds, @Param("partitionId") Integer partitionId);
|
||||
}
|
||||
|
@@ -2,6 +2,7 @@ package com.accompany.business.service.guildsoviet;
|
||||
|
||||
import com.accompany.business.model.guildsoviet.GuildExtraDiamondDay;
|
||||
import com.accompany.business.mybatismapper.guildsoviet.GuildExtraDiamondDayMapper;
|
||||
import com.accompany.business.vo.guild.GuildDiamondStatisticsDayVo;
|
||||
import com.accompany.business.vo.guild.GuildInfoVo;
|
||||
import com.accompany.business.vo.guildsoviet.GuildMemberSovietAdminVo;
|
||||
import com.accompany.business.vo.guildsoviet.GuildSovietAdminVo;
|
||||
@@ -11,12 +12,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 公会钻石流水额外收入记录 服务实现类
|
||||
@@ -93,4 +94,12 @@ public class GuildExtraDiamondDayService extends ServiceImpl<GuildExtraDiamondDa
|
||||
public Long totalBdGuildCount(String statDate, String endDate, Long bdId) {
|
||||
return baseMapper.totalBdGuildCount(statDate, endDate, bdId);
|
||||
}
|
||||
|
||||
public Map<Integer, Double> mapByStatDate(String statDate, String endDate, int partitionId, List<Integer> guildIds) {
|
||||
List<GuildDiamondStatisticsDayVo> guildDiamondStatisticsDayVos = baseMapper.listByStatDateGuildIds(statDate, endDate, guildIds, partitionId);
|
||||
if (CollectionUtils.isEmpty(guildDiamondStatisticsDayVos)) {
|
||||
return new HashMap<>();
|
||||
}
|
||||
return guildDiamondStatisticsDayVos.stream().collect(Collectors.toMap(GuildDiamondStatisticsDayVo::getGuildId, x -> x.getDiamondNum()));
|
||||
}
|
||||
}
|
||||
|
@@ -209,4 +209,21 @@
|
||||
where gm.`enable` = 1 and b.partition_id != 1 and b.bd_id = #{bdId} and b.`status` = 1
|
||||
group by b.guild_id
|
||||
</select>
|
||||
|
||||
<select id="listByStatDateGuildIds" resultType="com.accompany.business.vo.guild.GuildDiamondStatisticsDayVo">
|
||||
select gd.guild_id guildId,
|
||||
sum(gd.diamond_num + gd.lucky_diamond_num) diamondNum
|
||||
from guild_extra_diamond_day gd
|
||||
LEFT JOIN guild g ON gd.guild_id = g.id
|
||||
left join guild_member gm on gm.id = gd.guild_member_id
|
||||
where gd.stat_date >= #{startDate}
|
||||
and gd.stat_date <= #{endDate}
|
||||
and gd.partition_id = ${partitionId}
|
||||
and gm.`enable` = 1
|
||||
and g.`enable` = 1
|
||||
<foreach collection="guildIds" item="guildId" open="and gd.guild_id in (" separator="," close=")">
|
||||
#{guildId}
|
||||
</foreach>
|
||||
group by gd.guild_id
|
||||
</select>
|
||||
</mapper>
|
||||
|
Reference in New Issue
Block a user