
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
package com.takensoft.cms.search.web;
import com.takensoft.cms.search.service.SearchService;
import com.takensoft.cms.search.vo.SearchResultVO;
import com.takensoft.cms.search.vo.SearchVO;
import com.takensoft.common.util.ResponseData;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.nio.charset.Charset;
/**
* @author : 하석형
* @since : 2024.06.12
*
* 통합 검색 관련 컨트롤러
*/
@RestController
@RequiredArgsConstructor
@Slf4j
@RequestMapping("/sys/search")
public class SearchController {
private final SearchService searchService;
/**
* @author 하석형
* @since 2024.06.11
* @param searchVO
* @return
* @throws Exception
*
* 통합 검색
*/
@PostMapping("/totalSearch.json")
public ResponseEntity<?> totalSearch(@RequestBody SearchVO searchVO) throws Exception {
SearchResultVO result = searchService.searchAll(searchVO);
// 응답 처리
HttpHeaders headers = new HttpHeaders();
headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8")));
ResponseData responseData = new ResponseData();
responseData.setStatus(HttpStatus.OK);
responseData.setMessage("정상적으로 조회가 처리되었습니다.");
responseData.setData(result);
return new ResponseEntity<>(responseData, headers, HttpStatus.OK);
}
}