From 88fdb6dedb761a6eac55dcb74eda4763fbb25119 Mon Sep 17 00:00:00 2001 From: hokli <2629910752@qq.com> Date: Tue, 12 Aug 2025 10:41:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=91=A8=E6=9C=9F=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../guildpolicy2/GuildPolicy2Service.java | 22 +++++++++++++++++++ .../guildpolicy/GuildPolicy2Controller.java | 8 +++++++ 2 files changed, 30 insertions(+) diff --git a/accompany-business/accompany-business-service/src/main/java/com/accompany/business/service/guildpolicy2/GuildPolicy2Service.java b/accompany-business/accompany-business-service/src/main/java/com/accompany/business/service/guildpolicy2/GuildPolicy2Service.java index 5141c2cf8..52472518c 100644 --- a/accompany-business/accompany-business-service/src/main/java/com/accompany/business/service/guildpolicy2/GuildPolicy2Service.java +++ b/accompany-business/accompany-business-service/src/main/java/com/accompany/business/service/guildpolicy2/GuildPolicy2Service.java @@ -5,15 +5,21 @@ import com.accompany.business.model.guild.GuildMember; import com.accompany.business.service.guild.GuildAuthService; import com.accompany.business.service.guild.GuildMemberService; import com.accompany.business.service.guild.GuildService; +import com.accompany.business.util.FullMonthCycleTimeUtil; +import com.accompany.business.vo.guild.CycleDateVo; import com.accompany.business.vo.guildpolicy.GuildPolicy2Vo; import com.accompany.common.result.BusiResult; import com.accompany.common.status.BusiStatus; +import com.accompany.common.utils.DateTimeUtil; import com.accompany.core.enumeration.PartitionEnum; import com.accompany.core.exception.ServiceException; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.time.ZoneId; +import java.util.List; + @Slf4j @Service public class GuildPolicy2Service { @@ -54,4 +60,20 @@ public class GuildPolicy2Service { return BusiResult.success(guildPolicy2Vo); } + public BusiResult> getCycleDates(Long uid) { + GuildMember guildMember = guildMemberService.getVaildGuildMemberByUid(uid); + if (null == guildMember){ + throw new ServiceException(BusiStatus.FAMILY_NOT_EXIST); + } + + PartitionEnum partitionEnum = PartitionEnum.getByPartitionId(guildMember.getPartitionId()); + if (!guildAuthService.hasAuthByRoleType(partitionEnum.getClanMode(), guildMember.getRoleType(), GuildConstant.AuthCode.GUILD_POLICY2)) { + throw new ServiceException(BusiStatus.FAMILY_PERMISSION_DENIED); + } + + List cycleDateVos = FullMonthCycleTimeUtil.listCycleDateVo(guildMember.getCreateTime(), + ZoneId.of(partitionEnum.getZoneId()), DateTimeUtil.DEFAULT_DATE_PATTERN); + return BusiResult.success(cycleDateVos); + + } } diff --git a/accompany-business/accompany-business-web/src/main/java/com/accompany/business/controller/guildpolicy/GuildPolicy2Controller.java b/accompany-business/accompany-business-web/src/main/java/com/accompany/business/controller/guildpolicy/GuildPolicy2Controller.java index 94332b450..9b07185ee 100644 --- a/accompany-business/accompany-business-web/src/main/java/com/accompany/business/controller/guildpolicy/GuildPolicy2Controller.java +++ b/accompany-business/accompany-business-web/src/main/java/com/accompany/business/controller/guildpolicy/GuildPolicy2Controller.java @@ -1,6 +1,7 @@ package com.accompany.business.controller.guildpolicy; import com.accompany.business.service.guildpolicy2.GuildPolicy2Service; +import com.accompany.business.vo.guild.CycleDateVo; import com.accompany.business.vo.guildpolicy.GuildPolicy2Vo; import com.accompany.common.annotation.Authorization; import com.accompany.common.result.BusiResult; @@ -14,6 +15,8 @@ import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + import static com.accompany.common.constant.ApplicationConstant.PublicParameters.PUB_UID; @Api(tags = "guild公会政策2", value = "公会政策2") @@ -34,4 +37,9 @@ public class GuildPolicy2Controller { public BusiResult getGuildPolicy2(@RequestHeader(PUB_UID) Long uid, String cycleBeginDate) { return guildPolicy2Service.getGuildPolicy2(uid, cycleBeginDate); } + + @GetMapping("/cycleDates") + public BusiResult> getCycleDates(@RequestHeader(PUB_UID) Long uid) { + return guildPolicy2Service.getCycleDates(uid); + } }