add : SecurityConfig - actuator url

This commit is contained in:
yuhalog 2025-06-17 13:31:38 +09:00
parent f3fc5bc39e
commit e2d98e4dc9
3 changed files with 30 additions and 9 deletions

View File

@ -101,7 +101,8 @@ class MarketingTipService:
당신의 임무는 매장 정보를 바탕으로, 적은 비용으로 효과를 있는 현실적이고 실행 가능한 마케팅 팁을 제안하는 것입니다.
지역성, 지역의 현재 날씨 확인하고, 현재 트렌드까지 고려해주세요.
소상공인을 위한 실용적인 마케팅 팁을 생성해주세요.
소상공인을 위한 현실적이고 바로 실행할 있는 실용적인 마케팅 팁을 생성해주세요.
협업보다는 할인, 포스팅 당장 실현 가능한 현실적인 방법을 추천해주세요.
매장 정보:
- 매장명: {store_name}
@ -123,7 +124,7 @@ class MarketingTipService:
prompt += """
아래 조건을 모두 충족하는 마케팅 팁을 하나 생성해주세요:
1. **실행 가능성**: 소상공인이 실제로 적용할 있는 현실적인 방법
1. **실행 가능성**: 소상공인이 실제로 바로 적용할 있는 현실적인 방법
2. **비용 효율성**: 적은 비용으로 높은 효과를 기대할 있는 전략
3. **구체성**: 실행 단계가 명확하고 구체적일
4. **시의성**: 현재 계절, 유행, 트렌드를 반영
@ -131,9 +132,7 @@ class MarketingTipService:
응답 형식 (300 내외, 간결하게):
html 형식으로 출력
핵심 마케팅 팁은 제목없이 한번 상단에 보여주세요
부제목과 내용은 분리해서 출력
아래의 부제목 앞에는 이모지 포함
- 핵심 마케팅 (1)
- 실행 방법 (1)
- 예상 비용과 기대 효과
@ -141,6 +140,26 @@ html 형식으로 출력
- 참고했던 실제 성공한 마케팅
- 오늘의 응원의 문장 (간결하게 1)
아래 형식대로 그대로 출력해주세요!
<h3> 핵심 마케팅 </h3>
<p>[여기에 새로운 핵심 마케팅 작성]</p>
<h3>🚀 실행 방법</h3>
<p>[여기에 새로운 실행 방법 내용 작성]</p>
<h3>💰 예상 비용과 기대 효과</h3>
<p>[여기에 새로운 비용/효과 내용 작성]</p>
<h3> 주의사항</h3>
<p>[여기에 새로운 주의사항 내용 작성]</p>
<h3>📈 참고했던 실제 성공한 마케팅</h3>
<p>[여기에 새로운 참고 사례 내용 작성]</p>
<h3>🙌 오늘의 응원의 문장</h3>
<p>[여기에 응원의 문장 작성]</p>
심호흡하고, 단계별로 차근차근 생각해서 정확하고 실현 가능한 아이디어를 제시해주세요.
"""

View File

@ -103,9 +103,12 @@ public class MarketingTipService implements MarketingTipUseCase {
String aiGeneratedTip = aiTipGenerator.generateTip(storeWithMenuData);
log.debug("AI 팁 생성 완료: {}", aiGeneratedTip.substring(0, Math.min(50, aiGeneratedTip.length())));
String tipSummary = generateTipSummary(aiGeneratedTip);
// 도메인 객체 생성 저장
MarketingTip marketingTip = MarketingTip.builder()
.storeId(storeWithMenuData.getStoreData().getStoreId())
.tipSummary(tipSummary)
.tipContent(aiGeneratedTip)
.storeWithMenuData(storeWithMenuData)
.createdAt(LocalDateTime.now())
@ -122,11 +125,10 @@ public class MarketingTipService implements MarketingTipUseCase {
* 마케팅 팁을 응답 DTO로 변환 (전체 내용 포함)
*/
private MarketingTipResponse convertToResponse(MarketingTip marketingTip, StoreData storeData, boolean isRecentlyCreated) {
String tipSummary = generateTipSummary(marketingTip.getTipContent());
return MarketingTipResponse.builder()
.tipId(marketingTip.getId().getValue())
.tipSummary(tipSummary)
.tipSummary(marketingTip.getTipSummary())
.tipContent(marketingTip.getTipContent()) // 🆕 전체 내용 포함
.storeInfo(MarketingTipResponse.StoreInfo.builder()
.storeName(storeData.getStoreName())

View File

@ -45,7 +45,7 @@ public class SecurityConfig {
.authorizeHttpRequests(auth -> auth
.requestMatchers("/api/auth/**", "/api/member/register", "/api/member/check-duplicate/**",
"/api/member/validate-password", "/swagger-ui/**", "/v3/api-docs/**",
"/swagger-resources/**", "/webjars/**").permitAll()
"/swagger-resources/**", "/webjars/**", "/actuator/**", "/health/**", "/error").permitAll()
.anyRequest().authenticated()
)
.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);