회원탈퇴시 연체나 대출중 자료있으면 탈퇴못하게 수정 , 비밀번호 초기화로직 수정
This commit is contained in:
parent
6dde7e13c2
commit
6c673ddcb7
@ -120,6 +120,7 @@ public class MemberServiceImpl implements MemberService
|
|||||||
* 초기화 비밀번호 랜덤생성
|
* 초기화 비밀번호 랜덤생성
|
||||||
*/
|
*/
|
||||||
public String createInitPwd() {
|
public String createInitPwd() {
|
||||||
|
SecureRandom rand = new SecureRandom();
|
||||||
// 비밀번호 자리수
|
// 비밀번호 자리수
|
||||||
int pwLength=8;
|
int pwLength=8;
|
||||||
|
|
||||||
@ -157,11 +158,11 @@ public class MemberServiceImpl implements MemberService
|
|||||||
boolean whileFlag = true;
|
boolean whileFlag = true;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
int loopNum=(int)(inner_random() * 4);
|
int loopNum=(int)(rand.nextDouble() * 4);
|
||||||
// 대문자생성
|
// 대문자생성
|
||||||
if((whileFlag && upperStr.equals("1")) || (!whileFlag && useU == 1 && loopNum == 0)){
|
if((whileFlag && upperStr.equals("1")) || (!whileFlag && useU == 1 && loopNum == 0)){
|
||||||
do {
|
do {
|
||||||
upperChar = (char)(inner_random() * 26 + 65);
|
upperChar = (char)(rand.nextDouble() * 26 + 65);
|
||||||
upperStr=String.valueOf(upperChar);
|
upperStr=String.valueOf(upperChar);
|
||||||
} while (exceptionKey.indexOf(upperStr)!=-1);
|
} while (exceptionKey.indexOf(upperStr)!=-1);
|
||||||
dummylist.add(upperStr);
|
dummylist.add(upperStr);
|
||||||
@ -171,7 +172,7 @@ public class MemberServiceImpl implements MemberService
|
|||||||
// 소문자생성
|
// 소문자생성
|
||||||
if((whileFlag && lowerStr.equals("1")) || (!whileFlag && useL == 1 && loopNum == 1)){
|
if((whileFlag && lowerStr.equals("1")) || (!whileFlag && useL == 1 && loopNum == 1)){
|
||||||
do {
|
do {
|
||||||
lowerChar = (char)(inner_random() * 26 + 97);
|
lowerChar = (char)(rand.nextDouble() * 26 + 97);
|
||||||
lowerStr=String.valueOf(lowerChar);
|
lowerStr=String.valueOf(lowerChar);
|
||||||
} while (exceptionKey.indexOf(lowerStr)!=-1);
|
} while (exceptionKey.indexOf(lowerStr)!=-1);
|
||||||
dummylist.add(lowerStr);
|
dummylist.add(lowerStr);
|
||||||
@ -180,7 +181,7 @@ public class MemberServiceImpl implements MemberService
|
|||||||
|
|
||||||
// 숫자생성(숫자 0,1 제외)
|
// 숫자생성(숫자 0,1 제외)
|
||||||
if((whileFlag && ranNumberStr.equals("1")) || (!whileFlag && useN == 1 && loopNum == 2)){
|
if((whileFlag && ranNumberStr.equals("1")) || (!whileFlag && useN == 1 && loopNum == 2)){
|
||||||
ranNumber=(int)(inner_random() * 8 + 2);
|
ranNumber=(int)(rand.nextDouble() * 8 + 2);
|
||||||
ranNumberStr=String.valueOf(ranNumber);
|
ranNumberStr=String.valueOf(ranNumber);
|
||||||
dummylist.add(ranNumberStr);
|
dummylist.add(ranNumberStr);
|
||||||
whileNum++;
|
whileNum++;
|
||||||
@ -188,7 +189,7 @@ public class MemberServiceImpl implements MemberService
|
|||||||
|
|
||||||
// 특수문자생성
|
// 특수문자생성
|
||||||
if((whileFlag && ranSkeyStr.equals("1")) || (!whileFlag && useS == 1 && loopNum == 3)){
|
if((whileFlag && ranSkeyStr.equals("1")) || (!whileFlag && useS == 1 && loopNum == 3)){
|
||||||
startSkey=(int)(inner_random() * (specialKey.length()-1))+1;
|
startSkey=(int)(Math.random() * (specialKey.length()-1))+1;
|
||||||
ranSkey=specialKey.charAt(startSkey);
|
ranSkey=specialKey.charAt(startSkey);
|
||||||
ranSkeyStr=String.valueOf(ranSkey);
|
ranSkeyStr=String.valueOf(ranSkey);
|
||||||
dummylist.add(ranSkeyStr);
|
dummylist.add(ranSkeyStr);
|
||||||
@ -204,12 +205,6 @@ public class MemberServiceImpl implements MemberService
|
|||||||
return dummyPW;
|
return dummyPW;
|
||||||
}
|
}
|
||||||
|
|
||||||
public double inner_random() {
|
|
||||||
long seed= new Date().getTime();
|
|
||||||
seed = (seed*9301 +49297) % 233280;
|
|
||||||
return seed/(233280.0);
|
|
||||||
}
|
|
||||||
|
|
||||||
public NlibLoginVO selectAlreadySignUpId(OAuthUniversalUser oauthUser) throws Exception {
|
public NlibLoginVO selectAlreadySignUpId(OAuthUniversalUser oauthUser) throws Exception {
|
||||||
//이메일 암호화
|
//이메일 암호화
|
||||||
oauthUser.setSnsEmail(ariaCrypto.encode(oauthUser.getSnsUserId()));
|
oauthUser.setSnsEmail(ariaCrypto.encode(oauthUser.getSnsUserId()));
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import javax.servlet.http.HttpSession;
|
|||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.security.access.annotation.Secured;
|
||||||
import org.springframework.security.core.Authentication;
|
import org.springframework.security.core.Authentication;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.Model;
|
import org.springframework.ui.Model;
|
||||||
@ -40,6 +41,7 @@ import nlib.cmm.NlibCommonController;
|
|||||||
import nlib.cmm.crypto.AriaCrypto;
|
import nlib.cmm.crypto.AriaCrypto;
|
||||||
import nlib.cmm.service.NlibProperty;
|
import nlib.cmm.service.NlibProperty;
|
||||||
import nlib.cmm.session.SessionConfig;
|
import nlib.cmm.session.SessionConfig;
|
||||||
|
import nlib.col.service.RentService;
|
||||||
import nlib.info.service.InformService;
|
import nlib.info.service.InformService;
|
||||||
import nlib.mail.EmailSender;
|
import nlib.mail.EmailSender;
|
||||||
import nlib.mail.service.EmailVO;
|
import nlib.mail.service.EmailVO;
|
||||||
@ -95,6 +97,9 @@ public class MemberController extends NlibCommonController{
|
|||||||
@Resource(name="userInfoService")
|
@Resource(name="userInfoService")
|
||||||
private UserInfoService userInfoService;
|
private UserInfoService userInfoService;
|
||||||
|
|
||||||
|
@Resource(name = "rentService")
|
||||||
|
private RentService rentService;
|
||||||
|
|
||||||
@Resource(name="memberService")
|
@Resource(name="memberService")
|
||||||
private MemberService memberService;
|
private MemberService memberService;
|
||||||
|
|
||||||
@ -736,6 +741,7 @@ public class MemberController extends NlibCommonController{
|
|||||||
* 회원탈퇴 폼
|
* 회원탈퇴 폼
|
||||||
* @exception Exception
|
* @exception Exception
|
||||||
*/
|
*/
|
||||||
|
@Secured("ROLE_USER")
|
||||||
@RequestMapping(value="/member/deleteMembershipForm.do")
|
@RequestMapping(value="/member/deleteMembershipForm.do")
|
||||||
public String deleteMembershipForm(HttpServletResponse response,Authentication authentication,HttpServletRequest request,ModelMap model) throws Exception{
|
public String deleteMembershipForm(HttpServletResponse response,Authentication authentication,HttpServletRequest request,ModelMap model) throws Exception{
|
||||||
//사용자 정보를 가져온다.
|
//사용자 정보를 가져온다.
|
||||||
@ -763,19 +769,27 @@ public class MemberController extends NlibCommonController{
|
|||||||
public @ResponseBody String deleteMembership(Authentication authentication,HttpServletResponse response,HttpServletRequest request,ModelMap model) throws Exception{
|
public @ResponseBody String deleteMembership(Authentication authentication,HttpServletResponse response,HttpServletRequest request,ModelMap model) throws Exception{
|
||||||
//사용자 정보를 가져온다.
|
//사용자 정보를 가져온다.
|
||||||
NlibLoginVO loginVO = getNlibLoginVO(authentication);
|
NlibLoginVO loginVO = getNlibLoginVO(authentication);
|
||||||
|
String message="";
|
||||||
|
|
||||||
if(loginVO == null) {
|
if(loginVO == null) {
|
||||||
model.addAttribute("msg","잘못된 접근입니다. \\n장시간 대기로 다시 로그인 하신 후, 이용해 주시기 바랍니다.");
|
model.addAttribute("msg","잘못된 접근입니다. \\n장시간 대기로 다시 로그인 하신 후, 이용해 주시기 바랍니다.");
|
||||||
model.addAttribute("url","${pageContext.request.contextPath}"+"/");
|
model.addAttribute("url","${pageContext.request.contextPath}"+"/");
|
||||||
return "nlib/cmm/alert";
|
return "nlib/cmm/alert";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 대출/방문열람 현황
|
||||||
|
Map<String, String> rentStats = rentService.getRentStats(loginVO.getMbInfoId());
|
||||||
|
model.addAttribute("rentStats", rentStats);
|
||||||
|
|
||||||
|
if(Integer.parseInt(rentStats.get("lentCnt")) > 0 || Integer.parseInt(rentStats.get("lentOverCnt")) > 0) {
|
||||||
|
return message = "nonReturn";
|
||||||
|
}
|
||||||
|
|
||||||
loginVO.setJoinCouncilCd(getCurCouncilCd(request));
|
loginVO.setJoinCouncilCd(getCurCouncilCd(request));
|
||||||
|
|
||||||
loginVO = loginService.selectLoginUserInfo(loginVO);
|
loginVO = loginService.selectLoginUserInfo(loginVO);
|
||||||
String password = egovPasswordEncoder.encryptPassword(loginVO.getLoginUserId()+request.getParameter("password").trim());
|
String password = egovPasswordEncoder.encryptPassword(loginVO.getLoginUserId()+request.getParameter("password").trim());
|
||||||
|
|
||||||
String message="";
|
|
||||||
|
|
||||||
if(loginVO != null && (loginVO.getPassword().equals(password)))
|
if(loginVO != null && (loginVO.getPassword().equals(password)))
|
||||||
{
|
{
|
||||||
//회원탈퇴
|
//회원탈퇴
|
||||||
|
|||||||
@ -43,7 +43,11 @@ function deleteMembership()
|
|||||||
async: false,
|
async: false,
|
||||||
data : {password:$("#password").val()},
|
data : {password:$("#password").val()},
|
||||||
success : function(result){
|
success : function(result){
|
||||||
if(result=="delete")
|
if(result=="nonReturn")
|
||||||
|
{
|
||||||
|
alert("대출중이거나 연체된 자료가 있어 회원탈퇴처리가 불가능합니다.");
|
||||||
|
}
|
||||||
|
else if(result=="delete")
|
||||||
{
|
{
|
||||||
alert("탈퇴처리 되었습니다.감사합니다.");
|
alert("탈퇴처리 되었습니다.감사합니다.");
|
||||||
location.href="${pageContext.request.contextPath}/logout";
|
location.href="${pageContext.request.contextPath}/logout";
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user