Browse Source

프로필 - 기존 비밀번호 확인 추가

드론 관제 - || -> && 로 변경
Test
이학준 2 years ago
parent
commit
4390248c65
  1. 23
      src/main/java/com/palnet/biz/api/acnt/cstmr/controller/AcntCstmrController.java
  2. 43
      src/main/java/com/palnet/biz/api/acnt/cstmr/service/AcntCstmrService.java
  3. 2
      src/main/java/com/palnet/biz/api/ctr/cntrl/service/CtrCntrlService.java

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

@ -121,6 +121,29 @@ public class AcntCstmrController {
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap));
}
@PostMapping(value = "/profile/pwcheck/{userPswd}")
@ApiOperation(value = "회원 기존 패스워드 확인")
@Tag(name = "회원관리", description = "회원 관련 API")
public ResponseEntity<? extends BasicResponse> extendpsw(@PathVariable String userPswd){
Map<String, Object> resultMap = new HashMap<String, Object>();
try {
PtyCstmrBas result = service.extendpsw(userPswd);
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));
} catch (Exception e) {
log.error("IGONE : {}", e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(new ErrorResponse("Server Error", "-1"));
}
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap));
}
@PutMapping(value = "/profile/update")
@ApiOperation(value = "회원 정보 변경 (이메일,핸드폰)")

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

@ -13,6 +13,7 @@ import com.palnet.biz.api.acnt.cstmr.model.AcntCstmrEmModel;
import com.palnet.biz.api.acnt.cstmr.model.AcntCstmrGroupModel;
import com.palnet.biz.api.acnt.cstmr.model.AcntCstmrPwModel;
import com.palnet.comn.code.RSErrorCode;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -221,22 +222,10 @@ public class AcntCstmrService {
public PtyCstmrBas updatepas(AcntCstmrPwModel rq) {
// 1. 토큰 유저 정보 불러오기
Integer userId = jwtTokenUtil.getCstmrSnoByToken();
// 2. DB의 유저정보 조회
// AcntCstmrRqModel result = query.findpassword(userId);
PtyCstmrBas userEntity = ptyCstmrBasRepository.findById(userId).orElse(null);
// 3. RQ의 유저 패스워드를 암호화 처리
rq.setUserPswd(EncryptUtils.sha256Encrypt(rq.getUserPswd()));
// 4. RQ의 암호화한 패스워드와 DB에서 조회한 유저의 패스워드랑 비교
if(!rq.getUserPswd().equals(userEntity.getUserPswd())) {
log.info("RQ 비밀번호 : {}, DB 비밀번호 : {}", rq.getUserPswd(), userEntity.getUserPswd());
// 4.e 일치하지 않으면 예외처리 (패스워드 불일치)
throw new CustomException(ErrorCode.FAIL); // 임시,, 수정해야함
}
// 5. 새로운 비밀번호 검증
if(!rq.getNewPswd().equals(rq.getNewPswdConfirm())) {
// 5.e 새로운 비밀번호 일치하지 않으면 예외처리
@ -246,8 +235,8 @@ public class AcntCstmrService {
// 6. 새로운 패스워드 암호화
String encryptNewPwd = EncryptUtils.sha256Encrypt(rq.getNewPswd());
// 7. 유저 정보 저장
userEntity.setUserPswd(encryptNewPwd);
// 7. 유저 정보 저장
userEntity.setUserPswd(encryptNewPwd);
userEntity.setPswdUpdtDt(DateUtils.nowDate());
PtyCstmrBas updateUserEntity = ptyCstmrBasRepository.save(userEntity);
@ -255,6 +244,30 @@ public class AcntCstmrService {
return updateUserEntity;
}
public PtyCstmrBas extendpsw(String userPswd){
// 1. 토큰 유저 정보 불러오기
Integer userId = jwtTokenUtil.getCstmrSnoByToken();
// 2. DB의 유저정보 조회
// AcntCstmrRqModel result = query.findpassword(userId);
PtyCstmrBas userEntity = ptyCstmrBasRepository.findById(userId).orElse(null);
// 3. RQ의 유저 패스워드를 암호화 처리
userPswd = EncryptUtils.sha256Encrypt(userPswd);
// 4. RQ의 암호화한 패스워드와 DB에서 조회한 유저의 패스워드랑 비교
if(!userPswd.equals(userEntity.getUserPswd())) {
log.info("USERPSWD 비밀번호 : {}, DB 비밀번호 : {}", userPswd, userEntity.getUserPswd());
// 4.e 일치하지 않으면 예외처리 (패스워드 불일치)
throw new CustomException(ErrorCode.FAIL); // 임시,, 수정해야함
}
userEntity.setUserPswd(userPswd);
PtyCstmrBas extendpswEntity = ptyCstmrBasRepository.save(userEntity);
return extendpswEntity;
}
public PtyCstmrDtl updateEmail(AcntCstmrEmModel rq) {
Integer cstmrSno = jwtTokenUtil.getCstmrSnoByToken();
String userId = jwtTokenUtil.getUserIdByToken();

2
src/main/java/com/palnet/biz/api/ctr/cntrl/service/CtrCntrlService.java

@ -134,7 +134,7 @@ public class CtrCntrlService {
List<CtrCntrlHstryArea> areaList = query.detailArea(controlId);
String stAreaNm = "";
if (!result.getHpno().isEmpty() || result.getHpno() != null) {
if (!result.getHpno().isEmpty() && result.getHpno() != null) {
result.setHpno(EncryptUtils.decrypt(result.getHpno()));
}

Loading…
Cancel
Save