Class ProjectPatentServiceImpl
java.lang.Object
inha.git.project.api.service.patent.ProjectPatentServiceImpl
- All Implemented Interfaces:
ProjectPatentService
@Service
@Transactional
public class ProjectPatentServiceImpl
extends Object
implements ProjectPatentService
ProjectPatentServiceImpl은 프로젝트 특허 관련 비즈니스 로직을 처리합니다.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreatePatent
(User user, CreatePatentRequest createPatentRequest, org.springframework.web.multipart.MultipartFile file) 특허 정보를 등록합니다.deletePatent
(User user, Integer patentIdx) 특허 삭제 메서드searchPatent
(User user, Integer projectIdx, PatentType type) org.springframework.data.domain.Page<PatentResponses>
searchPatentPage
(Integer pageIndex, Integer size) 특허 페이징 조회 메서드updatePatent
(User user, Integer patentIdx, UpdatePatentRequest updatePatentRequest, org.springframework.web.multipart.MultipartFile file) 특허 정보를 수정합니다.
-
Constructor Details
-
ProjectPatentServiceImpl
public ProjectPatentServiceImpl()
-
-
Method Details
-
searchPatent
@Transactional(readOnly=true) public SearchPatentResponse searchPatent(User user, Integer projectIdx, PatentType type) - Specified by:
searchPatent
in interfaceProjectPatentService
-
searchPatentPage
@Transactional(readOnly=true) public org.springframework.data.domain.Page<PatentResponses> searchPatentPage(Integer pageIndex, Integer size) 특허 페이징 조회 메서드- Specified by:
searchPatentPage
in interfaceProjectPatentService
- Parameters:
pageIndex
- 페이지 인덱스size
- 페이지 사이즈- Returns:
- 특허 페이징 조회 결과
-
createPatent
public PatentResponse createPatent(User user, CreatePatentRequest createPatentRequest, org.springframework.web.multipart.MultipartFile file) 특허 정보를 등록합니다.- Specified by:
createPatent
in interfaceProjectPatentService
- Parameters:
user
- 등록을 요청한 사용자 정보createPatentRequest
- 등록할 특허 정보file
- 증빙자료 파일- Returns:
- 등록된 특허 정보
- Throws:
BaseException
- PROJECT_NOT_FOUND: 프로젝트를 찾을 수 없는 경우 USER_NOT_PROJECT_OWNER: 등록 권한이 없는 경우 ALREADY_REGISTERED_PATENT: 이미 등록된 특허가 있는 경우
-
updatePatent
public PatentResponse updatePatent(User user, Integer patentIdx, UpdatePatentRequest updatePatentRequest, org.springframework.web.multipart.MultipartFile file) 특허 정보를 수정합니다.- Specified by:
updatePatent
in interfaceProjectPatentService
- Parameters:
user
- 수정을 요청한 사용자 정보patentIdx
- 수정할 특허 IDupdatePatentRequest
- 수정할 특허 정보file
- 새로운 증빙자료 파일 (선택적)- Returns:
- 수정된 특허 정보
- Throws:
BaseException
- NOT_EXIST_PATENT: 특허를 찾을 수 없는 경우 USER_NOT_PROJECT_OWNER: 수정 권한이 없는 경우
-
deletePatent
특허 삭제 메서드- Specified by:
deletePatent
in interfaceProjectPatentService
- Parameters:
user
- 로그인한 사용자 정보patentIdx
- 삭제할 특허 ID- Returns:
- PatentResponse 특허 정보
-