|
|
|
@ -1,13 +1,19 @@
|
|
|
|
|
package com.palnet.biz.api.cns.faq.service; |
|
|
|
|
|
|
|
|
|
import java.time.Instant; |
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
|
import javax.transaction.Transactional; |
|
|
|
|
|
|
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
|
|
import com.palnet.biz.api.cns.faq.model.FaqListModel; |
|
|
|
|
import com.palnet.biz.api.cns.faq.model.FaqListRQModel; |
|
|
|
|
import com.palnet.biz.api.cns.faq.model.FaqListRSModel; |
|
|
|
|
import com.palnet.biz.jpa.entity.CnsFaqBas; |
|
|
|
|
import com.palnet.biz.jpa.repository.cns.CnsFaqBasRepository; |
|
|
|
|
import com.palnet.biz.jpa.repository.cns.CnsFaqQueryRepository; |
|
|
|
|
import com.palnet.comn.code.ErrorCode; |
|
|
|
|
import com.palnet.comn.exception.CustomException; |
|
|
|
|
|
|
|
|
|
import lombok.RequiredArgsConstructor; |
|
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
@ -21,22 +27,79 @@ public class CnsFaqService {
|
|
|
|
|
|
|
|
|
|
private final CnsFaqBasRepository cnsFaqBasRepository; |
|
|
|
|
|
|
|
|
|
public List<FaqListRSModel> getFaqList(FaqListRQModel model){ |
|
|
|
|
public List<FaqListModel> getFaqList(FaqListRQModel model){ |
|
|
|
|
|
|
|
|
|
List<FaqListModel> result = query.getFaqList(model.getCategory(), model.getWord()); |
|
|
|
|
|
|
|
|
|
List<FaqListRSModel> result = query.getFaqList(model.getCategory(), model.getWord()); |
|
|
|
|
if(result == null || result.size() < 1) throw new CustomException(ErrorCode.DATA_NO); |
|
|
|
|
|
|
|
|
|
return result; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public FaqListRSModel getFaqDetail(int sno){ |
|
|
|
|
public FaqListModel getFaqDetail(int sno){ |
|
|
|
|
|
|
|
|
|
cnsFaqBasRepository.updateViewCnt(sno); |
|
|
|
|
|
|
|
|
|
FaqListRSModel result = query.getFaqDetail(sno); |
|
|
|
|
FaqListModel result = query.getFaqDetail(sno); |
|
|
|
|
|
|
|
|
|
if(result == null) throw new CustomException(ErrorCode.DATA_NO); |
|
|
|
|
|
|
|
|
|
return result; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Transactional |
|
|
|
|
public void insertFaq(FaqListModel model){ |
|
|
|
|
|
|
|
|
|
CnsFaqBas bas = new CnsFaqBas(); |
|
|
|
|
|
|
|
|
|
bas.setCreateDt(Instant.now()); |
|
|
|
|
bas.setUpdateDt(Instant.now()); |
|
|
|
|
|
|
|
|
|
bas.setCategory(model.getCategory()); |
|
|
|
|
bas.setContent(model.getContent()); |
|
|
|
|
bas.setCreateUserId(model.getCreateUserId()); |
|
|
|
|
bas.setDelYn(model.getDelYn()); |
|
|
|
|
bas.setExpsrYn(model.getExpsrYn()); |
|
|
|
|
bas.setTitle(model.getTitle()); |
|
|
|
|
bas.setUpdateUserId(model.getUpdateUserId()); |
|
|
|
|
bas.setViewCnt(0); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
cnsFaqBasRepository.save(bas); |
|
|
|
|
} catch(Exception e) { |
|
|
|
|
throw new CustomException(ErrorCode.NON_VALID_PARAMETER); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Transactional |
|
|
|
|
public void updateFaq(FaqListModel model) { |
|
|
|
|
|
|
|
|
|
FaqListModel prevData = query.getFaqDetail(model.getFaqSno()); |
|
|
|
|
|
|
|
|
|
if(prevData == null) throw new CustomException(ErrorCode.DATA_NO); |
|
|
|
|
|
|
|
|
|
if(model.getCategory() != null) prevData.setCategory(model.getCategory()); |
|
|
|
|
if(model.getTitle() != null) prevData.setTitle(model.getTitle()); |
|
|
|
|
if(model.getContent() != null) prevData.setContent(model.getContent()); |
|
|
|
|
if(model.getExpsrYn() != null) prevData.setExpsrYn(model.getExpsrYn()); |
|
|
|
|
if(model.getUpdateUserId() != null) prevData.setUpdateUserId(model.getUpdateUserId()); |
|
|
|
|
|
|
|
|
|
prevData.setUpdateDt(Instant.now()); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
query.updateFaq(prevData); |
|
|
|
|
} catch(Exception e) { |
|
|
|
|
throw new CustomException(ErrorCode.NON_VALID_PARAMETER); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void deleteFaq(int sno) { |
|
|
|
|
|
|
|
|
|
int delCnt = cnsFaqBasRepository.deleteFaq(sno); |
|
|
|
|
|
|
|
|
|
if(delCnt == 0) throw new CustomException(ErrorCode.DATA_NO); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |