超管公会金币流水

This commit is contained in:
2025-05-27 11:10:24 +08:00
parent 1d85f51c40
commit 345dcd89ba
7 changed files with 68 additions and 9 deletions

View File

@@ -47,7 +47,7 @@ public class FamilyIncomeAdminService {
private RegionInfoService regionInfoService;
public Page<FamilyIncomeAdminVo> pageFamily(Long erbanNo, Integer regionId, String familyName, String startDate, String endDate,
long pageNum, long pageSize, Integer partitionId) {
long pageNum, long pageSize, Integer partitionId, List<Integer> familyIds) {
Page<FamilyIncomeAdminVo> voPage = new Page<>(pageNum, pageSize);
Long uid = null;
@@ -61,7 +61,7 @@ public class FamilyIncomeAdminService {
Date startTime = DateTimeUtil.getBeginTimeOfDay(DateTimeUtil.convertStrToDate(startDate, DateTimeUtil.DEFAULT_DATE_PATTERN));
Date endTime = DateTimeUtil.getEndTimeOfDay(DateTimeUtil.convertStrToDate(endDate, DateTimeUtil.DEFAULT_DATE_PATTERN));
voPage = familyGiftRecordService.pageFamilyData(voPage, uid, regionId, familyName, startTime, endTime, partitionId);
voPage = familyGiftRecordService.pageFamilyData(voPage, uid, regionId, familyName, startTime, endTime, partitionId, familyIds);
List<FamilyIncomeAdminVo> records = voPage.getRecords();
if (CollectionUtils.isEmpty(records)){

View File

@@ -1,6 +1,7 @@
package com.accompany.admin.service.superadminrole;
import com.accompany.admin.dto.NameplateDto;
import com.accompany.admin.service.family.FamilyIncomeAdminService;
import com.accompany.admin.service.family.FamilyManageAdminService;
import com.accompany.admin.service.headwear.HeadwearAdminService;
import com.accompany.admin.service.nameplate.NameplateAdminService;
@@ -12,9 +13,12 @@ import com.accompany.admin.vo.vip.VipSendRecordVo;
import com.accompany.business.model.family.Family;
import com.accompany.business.service.headwear.HeadwearService;
import com.accompany.business.service.user.UsersService;
import com.accompany.business.vo.family.FamilyIncomeAdminVo;
import com.accompany.common.status.BusiStatus;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.core.enumeration.PartitionEnum;
import com.accompany.core.exception.AdminServiceException;
import com.accompany.core.model.PartitionInfo;
import com.accompany.core.model.Users;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -24,9 +28,11 @@ import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static java.util.Collections.EMPTY_LIST;
@@ -54,6 +60,8 @@ public class SuperAdminService {
private HeadwearService headwearService;
@Autowired
private NameplateAdminService nameplateAdminService;
@Autowired
private FamilyIncomeAdminService familyIncomeAdminService;
public void createFamily(Long erbanNo, Long inviteErbanNo, Integer adminId) {
AdminUserVo adminUserVo = adminUserService.getByAdminId(adminId);
@@ -212,4 +220,22 @@ public class SuperAdminService {
}
return retMap;
}
public Page<FamilyIncomeAdminVo> pageFamilyIncome(Long erbanNo, Integer regionId, String familyName, String startDate, String endDate,
long pageNum, long pageSize, Integer partitionId, Integer adminId) {
if (null != erbanNo){
Users u = usersService.getUserByErbanNo(erbanNo);
if (null == u){
throw new AdminServiceException("公会长id不存在");
}
}
List<Integer> guildIdsByAdminId = adminGuildRefService.getGuildIdsByAdminId(adminId, partitionId);
if (CollectionUtils.isEmpty(guildIdsByAdminId)) {
return new Page<>(pageNum, pageSize);
}
return familyIncomeAdminService.pageFamily(erbanNo, regionId, familyName, startDate, endDate, pageNum, pageSize, partitionId, guildIdsByAdminId);
}
}

View File

@@ -54,7 +54,8 @@ public class FamilyIncomeAdminController extends BaseController {
if (!StringUtils.hasText(startDate) || !StringUtils.hasText(endDate)){
throw new AdminServiceException(BusiStatus.PARAMERROR);
}
Page<FamilyIncomeAdminVo> page = service.pageFamily(erbanNo, regionId, familyName, startDate, endDate, pageNum, pageSize, PartitionEnum.ENGLISH.getId());
Page<FamilyIncomeAdminVo> page = service.pageFamily(erbanNo, regionId, familyName, startDate, endDate,
pageNum, pageSize, PartitionEnum.ENGLISH.getId(), null);
return BusiResult.success(new PageResult<>(page));
}
@@ -74,7 +75,8 @@ public class FamilyIncomeAdminController extends BaseController {
if (!StringUtils.hasText(startDate) || !StringUtils.hasText(endDate)){
throw new AdminServiceException(BusiStatus.PARAMERROR);
}
Page<FamilyIncomeAdminVo> pageInfo = service.pageFamily(erbanNo, regionId, familyName, startDate, endDate, 0, -1, PartitionEnum.ENGLISH.getId());
Page<FamilyIncomeAdminVo> pageInfo = service.pageFamily(erbanNo, regionId, familyName,
startDate, endDate, 0, -1, PartitionEnum.ENGLISH.getId(), null);
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
// 这里URLEncoder.encode可以防止中文乱码

View File

@@ -2,13 +2,16 @@ package com.accompany.admin.controller.superadminrole;
import com.accompany.admin.controller.BaseController;
import com.accompany.admin.dto.NameplateDto;
import com.accompany.admin.service.family.FamilyIncomeAdminService;
import com.accompany.admin.service.superadminrole.SuperAdminService;
import com.accompany.admin.service.system.AdminLogService;
import com.accompany.admin.vo.family.FamilyAdminVo;
import com.accompany.admin.vo.vip.VipSendRecordVo;
import com.accompany.business.vo.family.FamilyIncomeAdminVo;
import com.accompany.common.result.BusiResult;
import com.accompany.common.result.PageResult;
import com.accompany.common.status.BusiStatus;
import com.accompany.core.enumeration.PartitionEnum;
import com.accompany.core.exception.AdminServiceException;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -17,6 +20,7 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
@@ -129,4 +133,26 @@ public class SuperAdminController extends BaseController {
Map<String, Object> objectMap = superAdminService.sendNameplate(nameplateId, erbanNo, sendDesc, days, getAdminId());
writeJson(JSON.toJSONString(objectMap));
}
@ApiOperation("查询家族流水")
@ApiImplicitParams({
@ApiImplicitParam(name = "erbanNo", value = "家族长erbanNo"),
@ApiImplicitParam(name = "regionId", value = "国家id"),
@ApiImplicitParam(name = "familyName", value = "家族名"),
@ApiImplicitParam(name = "startDate", value = "收入开始时间", required = true),
@ApiImplicitParam(name = "endDate", value = "收入结束时间", required = true),
@ApiImplicitParam(name = "pageNum", value = "页码", required = true),
@ApiImplicitParam(name = "pageSize", value = "页长", required = true)
})
@GetMapping("/pageFamilyIncomes")
public BusiResult<PageResult<FamilyIncomeAdminVo>> pageFamily(Long erbanNo, Integer regionId, String familyName,
String startDate, String endDate,
long pageNum, long pageSize){
if (!StringUtils.hasText(startDate) || !StringUtils.hasText(endDate)){
throw new AdminServiceException(BusiStatus.PARAMERROR);
}
Page<FamilyIncomeAdminVo> page = superAdminService.pageFamilyIncome(erbanNo, regionId,
familyName, startDate, endDate, pageNum, pageSize, PartitionEnum.ENGLISH.getId(), getAdminId());
return BusiResult.success(new PageResult<>(page));
}
}

View File

@@ -30,9 +30,9 @@ public interface FamilyGiftRecordMapper extends BaseMapper<FamilyGiftRecord> {
@Param("familyIdList") List<Integer> familyIdList);
Page<FamilyIncomeAdminVo> pageFamilyData(Page<FamilyIncomeAdminVo> page,
@Param("uid") Long uid,
@Param("regionId") Integer regionId,
@Param("familyName") String familyName, @Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("partitionId") Integer partitionId);
@Param("uid") Long uid, @Param("regionId") Integer regionId,
@Param("familyName") String familyName, @Param("startTime") Date startTime,
@Param("endTime") Date endTime, @Param("partitionId") Integer partitionId, @Param("familyIds") List<Integer> familyIds);
Page<FamilyMemberIncomeAdminVo> pageFamilyMemberData(Page<FamilyMemberIncomeAdminVo> page,
@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("familyId") Integer familyId);

View File

@@ -86,8 +86,8 @@ public class FamilyGiftRecordService extends ServiceImpl<FamilyGiftRecordMapper,
}
public Page<FamilyIncomeAdminVo> pageFamilyData(Page<FamilyIncomeAdminVo> page, Long uid, Integer regionId,
String familyName, Date startTime, Date endTime, Integer partitionId) {
return baseMapper.pageFamilyData(page, uid, regionId, familyName, startTime, endTime, partitionId);
String familyName, Date startTime, Date endTime, Integer partitionId, List<Integer> familyIds) {
return baseMapper.pageFamilyData(page, uid, regionId, familyName, startTime, endTime, partitionId, familyIds);
}
public Page<FamilyMemberIncomeAdminVo> pageFamilyMemberData(Page<FamilyMemberIncomeAdminVo> page, Date startTime, Date endTime, Integer familyId) {

View File

@@ -89,6 +89,11 @@
and fg.create_time &lt;= #{endTime}
</if>
<where>
<if test="familyIds != null and familyIds.size() > 0">
<foreach collection="familyIds" item="fi" open="and g.id in(" separator="," close=")">
#{fi}
</foreach>
</if>
<if test="uid != null">
and g.owner_uid = #{uid}
</if>