公会长移除主播限制
This commit is contained in:
@@ -47,6 +47,9 @@ public class GuildMemberAdminVo {
|
||||
@ExcelProperty("加入时间")
|
||||
@ApiModelProperty("加入时间")
|
||||
private Date createTime;
|
||||
@ExcelProperty("操作/退出时间")
|
||||
@ApiModelProperty("操作/退出时间")
|
||||
private Date updateTime;
|
||||
@ExcelProperty("是否有效状态")
|
||||
@ApiModelProperty("是否有效状态")
|
||||
private Boolean enable;
|
||||
|
@@ -522,6 +522,7 @@ public class GuildManageAdminService {
|
||||
vo.setPartitionName(partitionNameMap.get(u.getPartitionId()));
|
||||
vo.setRoleType(guildMember.getRoleType());
|
||||
vo.setCreateTime(guildMember.getCreateTime());
|
||||
vo.setUpdateTime(guildMember.getUpdateTime());
|
||||
vo.setEnable(guildMember.getEnable());
|
||||
if (guildMember.getAdminId() != null) {
|
||||
vo.setAdminName(adminUserMap.get(guildMember.getAdminId()));
|
||||
|
@@ -989,6 +989,7 @@ public enum BusiStatus {
|
||||
RECHARGE_REGION_SALARY_LIMIT(500,"该代理暂不代理该区域业务"),
|
||||
ROOM_DAY_DIAMOND_REWARD_DATE_CHECK(500, "TODAY NOT ALLOW RECEIVE"),
|
||||
GUILD_USD_OPT_LIMIT(500, "该交易类型已达到本周交易次数上限"),
|
||||
GUILD_MEMBER_REMOVE_LIMIT(500, "仅在每个月1号、2号、3号才可以移除主播"),
|
||||
;
|
||||
|
||||
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 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 {
|
||||
|
@@ -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;
|
||||
}
|
||||
|
||||
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));
|
||||
|
||||
List<Long> zeroChargeUidList = new ArrayList<>();
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package com.accompany.business.service.guild;
|
||||
|
||||
import com.accompany.business.constant.guild.GuildConstant;
|
||||
import com.accompany.business.dto.guild.GuildRemoveConfigDto;
|
||||
import com.accompany.business.event.GuildMemberStatusChangeEvent;
|
||||
import com.accompany.business.model.give.GiveUser;
|
||||
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.exception.ServiceException;
|
||||
import com.accompany.core.model.Users;
|
||||
import com.accompany.core.service.SysConfService;
|
||||
import com.accompany.core.util.PartitionUtil;
|
||||
import com.accompany.payment.service.RechargeUserService;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
@@ -32,7 +35,9 @@ import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Isolation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.time.ZonedDateTime;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
@@ -63,6 +68,8 @@ public class GuildRelationService {
|
||||
private GiveUserService giveUserService;
|
||||
@Autowired
|
||||
private ApplicationContext applicationContext;
|
||||
@Autowired
|
||||
private SysConfService sysConfService;
|
||||
|
||||
public GuildSkipVo getGuildSkipVo(Long uid) {
|
||||
GuildSkipVo vo = new GuildSkipVo();
|
||||
@@ -526,6 +533,17 @@ public class GuildRelationService {
|
||||
} else if (myGuildMember.getRoleType().compareTo(guildMember.getRoleType()) >= 0){
|
||||
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());
|
||||
if (null == guild){
|
||||
@@ -542,8 +560,6 @@ public class GuildRelationService {
|
||||
throw new ServiceException(BusiStatus.USERNOTEXISTS);
|
||||
}
|
||||
|
||||
Date now = new Date();
|
||||
|
||||
guildMember.setEnable(Boolean.FALSE);
|
||||
guildMember.setUpdateTime(now);
|
||||
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