Browse Source

그룹명이 중복된 경우 생성 안되게 수정

feature/auth
박재우 2 years ago
parent
commit
2bf05bfb59
  1. 15
      src/main/java/com/palnet/biz/api/bas/group/controller/BasGroupController.java
  2. 7
      src/main/java/com/palnet/biz/api/bas/group/service/BasGroupService.java
  3. 9
      src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupBasRepository.java

15
src/main/java/com/palnet/biz/api/bas/group/controller/BasGroupController.java

@ -26,6 +26,7 @@ import com.palnet.biz.api.comn.response.BasicResponse;
import com.palnet.biz.api.comn.response.ErrorResponse;
import com.palnet.biz.api.comn.response.SuccessResponse;
import com.palnet.comn.code.RSErrorCode;
import com.palnet.comn.exception.CustomException;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
@ -168,9 +169,10 @@ public class BasGroupController {
/**
* 그룹 생성
* @return
* @throws Exception
*/
@PostMapping(value = "/create")
public ResponseEntity<? extends BasicResponse> create(@RequestBody BasGroupModel rq) {
public ResponseEntity<? extends BasicResponse> create(@RequestBody BasGroupModel rq) throws Exception {
Map<String , Object> resultMap = new HashMap<String,Object>();
try {
@ -178,11 +180,12 @@ public class BasGroupController {
resultMap.put("result", result);
} catch (Exception e) {
log.error("IGNORE : {}", e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(new ErrorResponse("Server Error", "-1"));
} catch (CustomException e) {
log.error("IGNORE : {}", e);
resultMap.put("result", false);
resultMap.put("errorCode", e.getErrorCode());
resultMap.put("errorMessage", e.getMessage());
return ResponseEntity.ok().body(new SuccessResponse<Map>(resultMap));
}
return ResponseEntity.ok().body(new SuccessResponse<Map>(resultMap));

7
src/main/java/com/palnet/biz/api/bas/group/service/BasGroupService.java

@ -130,7 +130,12 @@ public class BasGroupService {
public boolean create(BasGroupModel rq) throws Exception{
Optional<PtyGroupBas> optional = ptyGroupBasRepository.findById(rq.getGroupId());
List<PtyGroupBas> groupNm = ptyGroupBasRepository.findByGroupNm(rq.getGroupNm());
for(PtyGroupBas name : groupNm) {
if(rq.getGroupNm().equals(name.getGroupNm())) {
throw new CustomException(ErrorCode.DATA_DUPLICATE);
}
}
if (optional.isPresent()) {
throw new CustomException(ErrorCode.DATA_DUPLICATE);
}

9
src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupBasRepository.java

@ -1,13 +1,18 @@
package com.palnet.biz.jpa.repository.pty;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import com.palnet.biz.jpa.entity.CtrCntrlBas;
import com.palnet.biz.jpa.entity.PtyGroupBas;
import com.palnet.biz.jpa.entity.PtyTermsBas;
@Repository
public interface PtyGroupBasRepository extends JpaRepository<PtyGroupBas, String>{
@Query("select p from PtyGroupBas p " +
"where p.groupNm = :groupNm ")
List<PtyGroupBas> findByGroupNm(@Param("groupNm") String groupNm);
}

Loading…
Cancel
Save