46951d871a
- TaxSeason / CurrentSeasonDto에 RelatedCategorySlug 추가 - TaxSeasonCalendar 각 시즌에 카테고리 슬러그 매핑 (income-tax→income-tax, vat-1st/2nd→vat, 종부세→real-estate-tax 등) - IBlogPostRepository.GetByCategorySlugAsync 추가 - BlogService.GetSeasonalPostsAsync: 시즌 관련 글 2개 우선 + 나머지 최신 글로 채움 - IndexModel: SeasonalPosts / RecentPosts 분리 로드 - Index.cshtml 블로그 섹션: 시즌 중 "이번 시즌 추천" 배지 + 시즌별 전체보기 버튼 - site.css: blog-card--seasonal, seasonal-blog-tag, btn-seasonal 스타일 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
104 lines
4.3 KiB
C#
104 lines
4.3 KiB
C#
namespace TaxBaik.Application.Seasonal;
|
|
|
|
/// <summary>
|
|
/// 한국 세무사 사무실 연간 시즌 캘린더.
|
|
/// 각 시즌이 활성화되면 홈페이지 Hero가 해당 세무 이벤트에 맞게 전환된다.
|
|
/// </summary>
|
|
public static class TaxSeasonCalendar
|
|
{
|
|
public static readonly IReadOnlyList<TaxSeason> Seasons =
|
|
[
|
|
new TaxSeason
|
|
{
|
|
Key = "vat-2nd",
|
|
Name = "부가가치세 2기 확정신고",
|
|
StartMonth = 1, StartDay = 1,
|
|
EndMonth = 1, EndDay = 25,
|
|
HeroHeadline = "부가가치세 2기\n1월 25일 마감",
|
|
HeroSubtext = "일반과세 사업자 확정신고 · 기한 내 신고로 가산세 방지",
|
|
UrgencyBadge = "D-{n}일 | 부가세 마감",
|
|
FocusService = "business-tax",
|
|
CtaText = "부가세 신고 상담",
|
|
RelatedCategorySlug = "vat"
|
|
},
|
|
new TaxSeason
|
|
{
|
|
Key = "year-end-settlement",
|
|
Name = "연말정산",
|
|
StartMonth = 1, StartDay = 15,
|
|
EndMonth = 2, EndDay = 28,
|
|
HeroHeadline = "연말정산\n지금 준비하세요",
|
|
HeroSubtext = "직원이 있는 사업자 원천징수 신고 · 환급 최대화",
|
|
UrgencyBadge = "연말정산 진행 중",
|
|
FocusService = "business-tax",
|
|
CtaText = "연말정산 상담",
|
|
RelatedCategorySlug = "business-tax"
|
|
},
|
|
new TaxSeason
|
|
{
|
|
Key = "corporate-tax",
|
|
Name = "법인세 신고",
|
|
StartMonth = 3, StartDay = 1,
|
|
EndMonth = 3, EndDay = 31,
|
|
HeroHeadline = "법인세\n3월 31일 마감",
|
|
HeroSubtext = "법인사업자 결산 · 세무조정 · 절세 전략 수립",
|
|
UrgencyBadge = "D-{n}일 | 법인세 마감",
|
|
FocusService = "business-tax",
|
|
CtaText = "법인세 신고 상담",
|
|
RelatedCategorySlug = "business-tax"
|
|
},
|
|
new TaxSeason
|
|
{
|
|
Key = "income-tax",
|
|
Name = "종합소득세 신고",
|
|
StartMonth = 5, StartDay = 1,
|
|
EndMonth = 5, EndDay = 31,
|
|
HeroHeadline = "종합소득세\n5월 31일 마감",
|
|
HeroSubtext = "개인사업자 · 임대소득 · 프리랜서 · 기타소득 모두 해당",
|
|
UrgencyBadge = "D-{n}일 | 종합소득세 마감",
|
|
FocusService = "business-tax",
|
|
CtaText = "종합소득세 상담",
|
|
RelatedCategorySlug = "income-tax"
|
|
},
|
|
new TaxSeason
|
|
{
|
|
Key = "vat-1st",
|
|
Name = "부가가치세 1기 확정신고",
|
|
StartMonth = 7, StartDay = 1,
|
|
EndMonth = 7, EndDay = 25,
|
|
HeroHeadline = "부가가치세 1기\n7월 25일 마감",
|
|
HeroSubtext = "일반과세 사업자 1기 확정신고 · 매입세액 공제 점검",
|
|
UrgencyBadge = "D-{n}일 | 부가세 마감",
|
|
FocusService = "business-tax",
|
|
CtaText = "부가세 신고 상담",
|
|
RelatedCategorySlug = "vat"
|
|
},
|
|
new TaxSeason
|
|
{
|
|
Key = "comprehensive-real-estate-tax",
|
|
Name = "종합부동산세",
|
|
StartMonth = 11, StartDay = 15,
|
|
EndMonth = 11, EndDay = 30,
|
|
HeroHeadline = "종합부동산세\n납부 시즌",
|
|
HeroSubtext = "다주택자 · 임대사업자 세부담 분석 · 분납·합산배제 검토",
|
|
UrgencyBadge = "D-{n}일 | 종부세 납부",
|
|
FocusService = "real-estate-tax",
|
|
CtaText = "종부세 절세 상담",
|
|
RelatedCategorySlug = "real-estate-tax"
|
|
},
|
|
new TaxSeason
|
|
{
|
|
Key = "year-end-gift",
|
|
Name = "연말 증여·절세 플래닝",
|
|
StartMonth = 12, StartDay = 1,
|
|
EndMonth = 12, EndDay = 31,
|
|
HeroHeadline = "연말 절세 플래닝\n마지막 기회",
|
|
HeroSubtext = "증여 공제 한도 · 자산 이전 · 법인전환 연간 마감",
|
|
UrgencyBadge = "D-{n}일 | 연간 증여 한도 마감",
|
|
FocusService = "family-asset",
|
|
CtaText = "연말 절세 상담",
|
|
RelatedCategorySlug = "family-asset"
|
|
}
|
|
];
|
|
}
|