Browse Source

회원탈퇴 기능 추가(베타 버전)

feature/auth
qkr7828(박재우) 2 years ago
parent
commit
bb42e2a2a5
  1. 21
      src/main/java/com/palnet/biz/api/acnt/cstmr/controller/AcntCstmrController.java
  2. 41
      src/main/java/com/palnet/biz/api/acnt/cstmr/service/AcntCstmrService.java
  3. 7
      src/main/java/com/palnet/biz/jpa/repository/pty/PtyCstmrBasRepository.java
  4. 11
      src/main/java/com/palnet/biz/jpa/repository/pty/PtyCstmrGroupRepository.java
  5. 4
      src/main/java/com/palnet/biz/jpa/repository/pty/PtyGroupBasRepository.java

21
src/main/java/com/palnet/biz/api/acnt/cstmr/controller/AcntCstmrController.java

@ -131,6 +131,27 @@ public class AcntCstmrController {
}
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap));
}
@PostMapping(value = "/profile/delete")
public ResponseEntity<? extends BasicResponse> userDelete(@RequestBody Integer cstmrSno){
Map<String, Object> resultMap = new HashMap<String, Object>();
try {
boolean result = service.userDelete(cstmrSno);
resultMap.put("result", result);
} catch (CustomException e) {
log.error("IGNOE : {}", 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<>(resultMap));
}
}

41
src/main/java/com/palnet/biz/api/acnt/cstmr/service/AcntCstmrService.java

@ -27,6 +27,7 @@ import com.palnet.biz.api.acnt.cstmr.model.AcntCstmrRqModel;
import com.palnet.biz.api.acnt.cstmr.model.AcntCstmrRsModel;
import com.palnet.biz.api.acnt.cstmr.model.AnctCstmerRlModel;
import com.palnet.biz.api.acnt.cstmr.model.AnctCstmrTermsModel;
import com.palnet.biz.api.acnt.jwt.model.JwtGroupModel;
import com.palnet.biz.api.acnt.jwt.model.JwtUserModel;
import com.palnet.biz.api.acnt.jwt.utils.JwtTokenUtil;
import com.palnet.biz.api.acnt.terms.model.AcntTermsRqModel;
@ -34,10 +35,14 @@ import com.palnet.biz.api.acnt.terms.model.AcntTermsRsModel;
import com.palnet.biz.jpa.entity.PtyCrtfyhpBas;
import com.palnet.biz.jpa.entity.PtyCstmrBas;
import com.palnet.biz.jpa.entity.PtyCstmrDtl;
import com.palnet.biz.jpa.entity.PtyCstmrGroup;
import com.palnet.biz.jpa.entity.PtyGroupBas;
import com.palnet.biz.jpa.entity.PtyTermsAgreeTxn;
import com.palnet.biz.jpa.repository.pty.PtyCstmrBasRepository;
import com.palnet.biz.jpa.repository.pty.PtyCstmrDtlRepository;
import com.palnet.biz.jpa.repository.pty.PtyCstmrGroupRepository;
import com.palnet.biz.jpa.repository.pty.PtyCstmrQueryRepository;
import com.palnet.biz.jpa.repository.pty.PtyGroupBasRepository;
import com.palnet.biz.jpa.repository.pty.PtyTermsAgreeTxnRepository;
import com.palnet.biz.jpa.repository.pty.PtyTermsQueryRepository;
import com.palnet.comn.code.ErrorCode;
@ -67,6 +72,12 @@ public class AcntCstmrService {
@Autowired
private PtyCstmrDtlRepository ptyCstmrDtlRepository;
@Autowired
private PtyCstmrGroupRepository ptyCstmrGroupRepository;
@Autowired
private PtyGroupBasRepository ptyGroupBasRepository;
@Autowired
private PtyTermsAgreeTxnRepository ptyTermsAgreeTxnRepository;
@ -262,5 +273,33 @@ public class AcntCstmrService {
return updateEmailEntity;
}
public boolean userDelete(int cstmrSno) {
PtyCstmrBas userEntity = ptyCstmrBasRepository.findByUserGroupId(cstmrSno);
userEntity.setCstmrStatusCd("W");
userEntity.setCstmrStatusCngDt(DateUtils.nowDate());
ptyCstmrBasRepository.save(userEntity);
List<JwtGroupModel> groupInfo = jwtTokenUtil.getGroupAuthByToken();
for(JwtGroupModel group : groupInfo) {
if(group.getGroupAuthCd().equals("CREATER")) {
PtyGroupBas groupEntity = ptyGroupBasRepository.findByGroupId(group.getGroupId());
groupEntity.setUseYn("N");
ptyGroupBasRepository.save(groupEntity);
}
PtyCstmrGroup cstmrEntity = ptyCstmrGroupRepository.findGroupId(group.getGroupId(), cstmrSno);
cstmrEntity.setJoinYn("N");
ptyCstmrGroupRepository.save(cstmrEntity);
}
List<PtyCstmrGroup> AprvlEntity = ptyCstmrGroupRepository.changeGroupAprvlYn(cstmrSno);
for(PtyCstmrGroup Aprvl : AprvlEntity) {
Aprvl.setAprvlYn("N");
Aprvl.setAprvlDt(null);
ptyCstmrGroupRepository.save(Aprvl);
}
log.info("123");
boolean result = true;
return result;
}
}
}

7
src/main/java/com/palnet/biz/jpa/repository/pty/PtyCstmrBasRepository.java

@ -1,8 +1,11 @@
package com.palnet.biz.jpa.repository.pty;
import java.util.List;
import java.util.Optional;
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.api.acnt.jwt.model.JwtUserModel;
@ -12,4 +15,8 @@ import com.palnet.biz.jpa.entity.PtyCstmrBas;
public interface PtyCstmrBasRepository extends JpaRepository<PtyCstmrBas, Integer>{
Optional<JwtUserModel> findByUserId(String userId);
@Query("select p from PtyCstmrBas p " +
"where p.cstmrSno = :cstmrSno " )
PtyCstmrBas findByUserGroupId(@Param("cstmrSno") int cstmrSno);
}

11
src/main/java/com/palnet/biz/jpa/repository/pty/PtyCstmrGroupRepository.java

@ -16,5 +16,14 @@ public interface PtyCstmrGroupRepository extends JpaRepository<PtyCstmrGroup, In
"where p.joinYn = 'Y' " +
"and p.groupId = :groupId " +
"and p.cstmrSno = :cstmrSno")
List<PtyCstmrGroup> findGroupId(@Param("groupId") String groupId, @Param("cstmrSno") int cstmrSno);
PtyCstmrGroup findGroupId(@Param("groupId") String groupId, @Param("cstmrSno") int cstmrSno);
@Query("select p from PtyCstmrGroup p " +
"where p.groupId = :groupId " )
List<PtyCstmrGroup> changeGroupJoinYn(@Param("groupId") String groupId);
@Query("select p from PtyCstmrGroup p " +
"where p.cstmrSno = :cstmrSno " )
List<PtyCstmrGroup> changeGroupAprvlYn(@Param("cstmrSno") int cstmrSno);
}

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

@ -15,4 +15,8 @@ public interface PtyGroupBasRepository extends JpaRepository<PtyGroupBas, String
@Query("select p from PtyGroupBas p " +
"where p.groupNm = :groupNm ")
List<PtyGroupBas> findByGroupNm(@Param("groupNm") String groupNm);
@Query("select p from PtyGroupBas p " +
"where p.groupId = :groupId ")
PtyGroupBas findByGroupId(@Param("groupId") String groupId);
}

Loading…
Cancel
Save