公会长移除主播限制
This commit is contained in:
@@ -47,6 +47,9 @@ public class GuildMemberAdminVo {
|
|||||||
@ExcelProperty("加入时间")
|
@ExcelProperty("加入时间")
|
||||||
@ApiModelProperty("加入时间")
|
@ApiModelProperty("加入时间")
|
||||||
private Date createTime;
|
private Date createTime;
|
||||||
|
@ExcelProperty("操作/退出时间")
|
||||||
|
@ApiModelProperty("操作/退出时间")
|
||||||
|
private Date updateTime;
|
||||||
@ExcelProperty("是否有效状态")
|
@ExcelProperty("是否有效状态")
|
||||||
@ApiModelProperty("是否有效状态")
|
@ApiModelProperty("是否有效状态")
|
||||||
private Boolean enable;
|
private Boolean enable;
|
||||||
|
@@ -522,6 +522,7 @@ public class GuildManageAdminService {
|
|||||||
vo.setPartitionName(partitionNameMap.get(u.getPartitionId()));
|
vo.setPartitionName(partitionNameMap.get(u.getPartitionId()));
|
||||||
vo.setRoleType(guildMember.getRoleType());
|
vo.setRoleType(guildMember.getRoleType());
|
||||||
vo.setCreateTime(guildMember.getCreateTime());
|
vo.setCreateTime(guildMember.getCreateTime());
|
||||||
|
vo.setUpdateTime(guildMember.getUpdateTime());
|
||||||
vo.setEnable(guildMember.getEnable());
|
vo.setEnable(guildMember.getEnable());
|
||||||
if (guildMember.getAdminId() != null) {
|
if (guildMember.getAdminId() != null) {
|
||||||
vo.setAdminName(adminUserMap.get(guildMember.getAdminId()));
|
vo.setAdminName(adminUserMap.get(guildMember.getAdminId()));
|
||||||
|
@@ -989,6 +989,7 @@ public enum BusiStatus {
|
|||||||
RECHARGE_REGION_SALARY_LIMIT(500,"该代理暂不代理该区域业务"),
|
RECHARGE_REGION_SALARY_LIMIT(500,"该代理暂不代理该区域业务"),
|
||||||
ROOM_DAY_DIAMOND_REWARD_DATE_CHECK(500, "TODAY NOT ALLOW RECEIVE"),
|
ROOM_DAY_DIAMOND_REWARD_DATE_CHECK(500, "TODAY NOT ALLOW RECEIVE"),
|
||||||
GUILD_USD_OPT_LIMIT(500, "该交易类型已达到本周交易次数上限"),
|
GUILD_USD_OPT_LIMIT(500, "该交易类型已达到本周交易次数上限"),
|
||||||
|
GUILD_MEMBER_REMOVE_LIMIT(500, "仅在每个月1号、2号、3号才可以移除主播"),
|
||||||
;
|
;
|
||||||
|
|
||||||
private final int value;
|
private final int value;
|
||||||
|
@@ -1397,7 +1397,9 @@ public class Constant {
|
|||||||
|
|
||||||
public static final String CP_MIC_SVGA_URL = "cp_mic_svga_url";
|
public static final String CP_MIC_SVGA_URL = "cp_mic_svga_url";
|
||||||
|
|
||||||
public static String charge_user_x_gold = "charge_user_x_gold";
|
public static final String CHARGE_USER_X_GOLD = "charge_user_x_gold";
|
||||||
|
|
||||||
|
public static final String GUILD_OPERATE_CONFIG = "guild_operate_config";
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class WithDrawStatus {
|
public static class WithDrawStatus {
|
||||||
|
@@ -0,0 +1,17 @@
|
|||||||
|
package com.accompany.business.dto.guild;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GuildRemoveConfigDto {
|
||||||
|
private List<Integer> acceptDays;
|
||||||
|
|
||||||
|
private Map<Integer, GuildRemoveConfigDto> partitionMap;
|
||||||
|
|
||||||
|
public GuildRemoveConfigDto getByPartitionId(int partitionId) {
|
||||||
|
return partitionMap.getOrDefault(partitionId, this);
|
||||||
|
}
|
||||||
|
}
|
@@ -80,7 +80,7 @@ public class ChargeUserXService {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
String value = sysConfService.getDefaultSysConfValueById(Constant.SysConfId.charge_user_x_gold, "200000");
|
String value = sysConfService.getDefaultSysConfValueById(Constant.SysConfId.CHARGE_USER_X_GOLD, "200000");
|
||||||
Map<Long, GameDayStatData> gameDayStatDataMap = gameDayStatDataService.statByChannelUid4XRecord(GameConstant.GameChannel.LEADERCC.name(), Long.valueOf(value));
|
Map<Long, GameDayStatData> gameDayStatDataMap = gameDayStatDataService.statByChannelUid4XRecord(GameConstant.GameChannel.LEADERCC.name(), Long.valueOf(value));
|
||||||
|
|
||||||
List<Long> zeroChargeUidList = new ArrayList<>();
|
List<Long> zeroChargeUidList = new ArrayList<>();
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
package com.accompany.business.service.guild;
|
package com.accompany.business.service.guild;
|
||||||
|
|
||||||
import com.accompany.business.constant.guild.GuildConstant;
|
import com.accompany.business.constant.guild.GuildConstant;
|
||||||
|
import com.accompany.business.dto.guild.GuildRemoveConfigDto;
|
||||||
import com.accompany.business.event.GuildMemberStatusChangeEvent;
|
import com.accompany.business.event.GuildMemberStatusChangeEvent;
|
||||||
import com.accompany.business.model.give.GiveUser;
|
import com.accompany.business.model.give.GiveUser;
|
||||||
import com.accompany.business.model.guild.Guild;
|
import com.accompany.business.model.guild.Guild;
|
||||||
@@ -19,8 +20,10 @@ import com.accompany.core.base.SpringContextHolder;
|
|||||||
import com.accompany.core.enumeration.PartitionEnum;
|
import com.accompany.core.enumeration.PartitionEnum;
|
||||||
import com.accompany.core.exception.ServiceException;
|
import com.accompany.core.exception.ServiceException;
|
||||||
import com.accompany.core.model.Users;
|
import com.accompany.core.model.Users;
|
||||||
|
import com.accompany.core.service.SysConfService;
|
||||||
import com.accompany.core.util.PartitionUtil;
|
import com.accompany.core.util.PartitionUtil;
|
||||||
import com.accompany.payment.service.RechargeUserService;
|
import com.accompany.payment.service.RechargeUserService;
|
||||||
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
@@ -32,7 +35,9 @@ import org.springframework.scheduling.annotation.Async;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Isolation;
|
import org.springframework.transaction.annotation.Isolation;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
|
import java.time.ZonedDateTime;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
@@ -63,6 +68,8 @@ public class GuildRelationService {
|
|||||||
private GiveUserService giveUserService;
|
private GiveUserService giveUserService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ApplicationContext applicationContext;
|
private ApplicationContext applicationContext;
|
||||||
|
@Autowired
|
||||||
|
private SysConfService sysConfService;
|
||||||
|
|
||||||
public GuildSkipVo getGuildSkipVo(Long uid) {
|
public GuildSkipVo getGuildSkipVo(Long uid) {
|
||||||
GuildSkipVo vo = new GuildSkipVo();
|
GuildSkipVo vo = new GuildSkipVo();
|
||||||
@@ -526,6 +533,17 @@ public class GuildRelationService {
|
|||||||
} else if (myGuildMember.getRoleType().compareTo(guildMember.getRoleType()) >= 0){
|
} else if (myGuildMember.getRoleType().compareTo(guildMember.getRoleType()) >= 0){
|
||||||
throw new ServiceException(BusiStatus.FAMILY_PERMISSION_DENIED);
|
throw new ServiceException(BusiStatus.FAMILY_PERMISSION_DENIED);
|
||||||
}
|
}
|
||||||
|
Date now = new Date();
|
||||||
|
|
||||||
|
Integer partitionId = guildMember.getPartitionId();
|
||||||
|
if (PartitionEnum.TURKEY.getId() == partitionId) {
|
||||||
|
ZonedDateTime nowZonedDateTime = DateTimeUtil.convertWithZoneId(now, PartitionEnum.getByPartitionId(guildMember.getPartitionId()).getZoneId());
|
||||||
|
int dayOfMonth = nowZonedDateTime.getDayOfMonth();
|
||||||
|
GuildRemoveConfigDto config = this.getConfig(partitionId);
|
||||||
|
if (config != null && CollectionUtils.isNotEmpty(config.getAcceptDays()) &&!config.getAcceptDays().contains(dayOfMonth)) {
|
||||||
|
throw new ServiceException(BusiStatus.GUILD_MEMBER_REMOVE_LIMIT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Guild guild = guildService.getVaildGuildById(myGuildMember.getGuildId());
|
Guild guild = guildService.getVaildGuildById(myGuildMember.getGuildId());
|
||||||
if (null == guild){
|
if (null == guild){
|
||||||
@@ -542,8 +560,6 @@ public class GuildRelationService {
|
|||||||
throw new ServiceException(BusiStatus.USERNOTEXISTS);
|
throw new ServiceException(BusiStatus.USERNOTEXISTS);
|
||||||
}
|
}
|
||||||
|
|
||||||
Date now = new Date();
|
|
||||||
|
|
||||||
guildMember.setEnable(Boolean.FALSE);
|
guildMember.setEnable(Boolean.FALSE);
|
||||||
guildMember.setUpdateTime(now);
|
guildMember.setUpdateTime(now);
|
||||||
guildMember.setAdminId(null);
|
guildMember.setAdminId(null);
|
||||||
@@ -715,4 +731,14 @@ public class GuildRelationService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public GuildRemoveConfigDto getConfig(Integer partitionId) {
|
||||||
|
String configStr = sysConfService.getSysConfValueById(Constant.SysConfId.GUILD_OPERATE_CONFIG);
|
||||||
|
if (!StringUtils.hasText(configStr)){
|
||||||
|
throw new ServiceException(BusiStatus.SERVERERROR);
|
||||||
|
}
|
||||||
|
GuildRemoveConfigDto removeConfigDto = JSONObject.parseObject(configStr, GuildRemoveConfigDto.class);
|
||||||
|
return removeConfigDto.getByPartitionId(partitionId);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user