package com.tcm.training.admin.member.controller; import com.tcm.training.admin.common.ApiResponse; import com.tcm.training.admin.member.dto.MemberIntroSettingsSaveRequest; import com.tcm.training.admin.member.dto.MemberPriceSettingsSaveRequest; import com.tcm.training.admin.member.service.MemberSettingsAppService; import com.tcm.training.admin.member.vo.MemberIntroSettingsVO; import com.tcm.training.admin.member.vo.MemberPriceSettingsVO; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; @Validated @RestController @RequestMapping({"/api/v1", "/api"}) public class MemberSettingsController { private final MemberSettingsAppService memberSettingsAppService; public MemberSettingsController(MemberSettingsAppService memberSettingsAppService) { this.memberSettingsAppService = memberSettingsAppService; } @GetMapping("/member-price-settings/current") public ApiResponse currentPrice() { return ApiResponse.ok(memberSettingsAppService.currentPrice()); } @PutMapping("/member-price-settings/current") public ApiResponse saveCurrentPrice(@Valid @RequestBody MemberPriceSettingsSaveRequest request) { return ApiResponse.ok(memberSettingsAppService.saveCurrentPrice(request)); } @GetMapping("/member-intro-settings/current") public ApiResponse currentIntro() { return ApiResponse.ok(memberSettingsAppService.currentIntro()); } @PutMapping("/member-intro-settings/current") public ApiResponse saveCurrentIntro(@Valid @RequestBody MemberIntroSettingsSaveRequest request) { return ApiResponse.ok(memberSettingsAppService.saveCurrentIntro(request)); } }