소스 충돌 동기화
This commit is contained in:
parent
30fa96a1e9
commit
2e7a4f2b8f
@ -8,8 +8,10 @@ import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -70,6 +72,7 @@ import nlib.mail.service.EmailVO;
|
||||
import nlib.restful.service.DataApiReqVO;
|
||||
import nlib.user.service.MemberService;
|
||||
import nlib.user.service.NlibLoginVO;
|
||||
import nlib.user.service.MemberSiteVO;
|
||||
import nlib.user.service.UserInfoService;
|
||||
import nlib.util.StringUtil;
|
||||
|
||||
@ -194,6 +197,19 @@ public class MemberController {
|
||||
*/
|
||||
@RequestMapping(value="/member/selectMemberJoiningInfo.do")
|
||||
public String selectMemberJoiningInfo(HttpServletRequest req,ModelMap model,HttpSession session) throws Exception {
|
||||
String jsessionId = session.getId();
|
||||
OAuthUniversalUser oauthUser = SessionConfig.getNewMemberInfo(jsessionId);
|
||||
|
||||
int count=0;
|
||||
|
||||
//기 가입계정인지 확인
|
||||
count=memberService.selectSnsIdCount(oauthUser);
|
||||
if(count>0)
|
||||
{
|
||||
model.addAttribute("msg","이미 가입된 계정입니다. 로그인해주세요.");
|
||||
model.addAttribute("url","/nlib"+NlibProperty.getString("login.url"));
|
||||
return "nlib/cmm/alert";
|
||||
}
|
||||
return "/nlib/member/selectMemberJoiningInfo";
|
||||
}
|
||||
|
||||
@ -226,10 +242,12 @@ public class MemberController {
|
||||
*/
|
||||
@RequestMapping(value="/member/insertMemberInfoForm.do")
|
||||
public String insertMemberInfoForm(HttpServletRequest request,NlibLoginVO vo,HttpSession session,ModelMap model ) throws Exception{
|
||||
|
||||
MemberSiteVO msVO= new MemberSiteVO();
|
||||
int siteCnt;
|
||||
String jsessionId = session.getId();
|
||||
//String councilCd = (String)session.getAttribute("councilCd");
|
||||
String councilCd = (String)session.getAttribute("councilCd");
|
||||
//String councilReturnUrl = (String)session.getAttribute("councilReturnUrl");
|
||||
|
||||
OAuthUniversalUser oauthUser = SessionConfig.getNewMemberInfo(jsessionId);
|
||||
|
||||
String mId = null;
|
||||
@ -243,8 +261,20 @@ public class MemberController {
|
||||
{
|
||||
oauthUser.setMbInfoId(mId);
|
||||
memberService.insertMemberSns(oauthUser);
|
||||
|
||||
//가입문화원정보 설정
|
||||
msVO.setMbInfoId(mId);
|
||||
msVO.setJoinType(oauthUser.getSnsType());
|
||||
msVO.setJoinCouncilCd(councilCd);
|
||||
msVO.setMasterYn("N");
|
||||
siteCnt= memberService.selectMemberSiteCount(msVO);
|
||||
//문화원에 가입하지않았을 시 insert
|
||||
if(!(siteCnt>0))
|
||||
{
|
||||
memberService.insertMemberSite(msVO);
|
||||
}
|
||||
//통합처리 url
|
||||
return "redirect:/member/accountConsolidationForm.do";
|
||||
return "nlib/member/accountConsolidationForm";
|
||||
}
|
||||
model.addAttribute("loginVO",oauthUser);
|
||||
return "nlib/member/insertMemberInfoForm";
|
||||
@ -255,30 +285,79 @@ public class MemberController {
|
||||
* @exception Exception
|
||||
*/
|
||||
@RequestMapping(value="/member/insertMemberInfo.do")
|
||||
public String insertMemberInfo(NlibLoginVO vo,ModelMap model) throws Exception{
|
||||
public String insertMemberInfo(NlibLoginVO vo,ModelMap model,HttpSession session) throws Exception{
|
||||
MemberSiteVO msVO= new MemberSiteVO();
|
||||
List<NlibLoginVO> voList = new ArrayList<NlibLoginVO>();
|
||||
EmailVO email = new EmailVO();
|
||||
|
||||
//문화원코드
|
||||
String councilCd = (String)session.getAttribute("councilCd");
|
||||
|
||||
// 등록된 전화번호가 있는 지 확인 (리스트)
|
||||
voList = memberService.selectAlreadySignUpMobile(vo);
|
||||
|
||||
/* 등록된 ID가 있을때 통합처리 */
|
||||
if(voList.size() > 0)
|
||||
{
|
||||
/* oauthUser.setMbInfoId(mId);
|
||||
memberService.insertMemberSns(oauthUser);*/
|
||||
//통합처리 url
|
||||
System.out.println(voList.get(0).getEmail());
|
||||
System.out.println(voList.get(0).getMbInfoId());
|
||||
model.addAttribute("result",voList);
|
||||
return "nlib/member/accountConsolidationForm";
|
||||
}
|
||||
|
||||
//등록처리 요청 (data insert)
|
||||
memberService.insertMemberInfo(vo);
|
||||
String jsessionId = session.getId();
|
||||
OAuthUniversalUser oauthUser = SessionConfig.popNewMemberInfo(jsessionId);
|
||||
|
||||
if(oauthUser.getNlibVO()!=null)
|
||||
{
|
||||
//핸드폰인증시 sns제공 번호와 회원가입폼 번호 비교
|
||||
if(!(vo.getMobileNo().equals(oauthUser.getSnsMobileNo())))
|
||||
{
|
||||
if(!(vo.getMobileVrfctNo().equals(oauthUser.getNlibVO().getMobileVrfctNo()))
|
||||
||oauthUser.getNlibVO().getMobileVrfctDd() == null)
|
||||
{
|
||||
model.addAttribute("msg","핸드폰인증에 문제가 있습니다. 다시 회원가입을 진행해주세요.");
|
||||
model.addAttribute("url","${pageContext.request.contextPath}"+NlibProperty.getString("member.new.url"));
|
||||
return "nlib/cmm/alert";
|
||||
}
|
||||
}
|
||||
//이메일인증시 sns제공 이메일과 회원가입폼 이메일 비교
|
||||
if(!(vo.getEmail().equals(oauthUser.getSnsUserId())))
|
||||
{
|
||||
if(!(vo.getEmailVrfctDd().equals(oauthUser.getNlibVO().getEmailVrfctDd()))
|
||||
||oauthUser.getNlibVO().getEmailVrfctDd() == null)
|
||||
{
|
||||
model.addAttribute("msg","이메일인증에 문제가 있습니다. 다시 회원가입을 진행해주세요.");
|
||||
model.addAttribute("url","${pageContext.request.contextPath}"+NlibProperty.getString("member.new.url"));
|
||||
return "nlib/cmm/alert";
|
||||
}
|
||||
}
|
||||
}
|
||||
//회원정보 insert
|
||||
NlibLoginVO result =memberService.insertMemberInfo(vo);
|
||||
|
||||
//sns 테이블 insert
|
||||
oauthUser.setMbInfoId(result.getMbInfoId());
|
||||
|
||||
memberService.insertMemberSns(oauthUser);
|
||||
|
||||
|
||||
//가입문화원정보 테이블 insert
|
||||
msVO.setMbInfoId(result.getMbInfoId());
|
||||
msVO.setJoinType(oauthUser.getSnsType());
|
||||
msVO.setJoinCouncilCd(councilCd);
|
||||
msVO.setMasterYn("Y");
|
||||
|
||||
memberService.insertMemberSite(msVO);
|
||||
|
||||
|
||||
|
||||
// 결과가 정상이면, 안내 메일 발송
|
||||
// > 템플릿파일에서 내용 mailing.sender.membership.template
|
||||
// > 치환 (사용자명, 이메일주소)
|
||||
// > 발송처리 요청
|
||||
String reciver = vo.getLoginUserId(); //받을사람의 이메일입니다.-> naver nate 등등
|
||||
String subject = "온라인자료대출시스템 회원가입을 축하드립니다.";
|
||||
|
||||
Path path = Paths.get(template);
|
||||
Charset cs = StandardCharsets.UTF_8;
|
||||
List<String> list = new ArrayList<String>();
|
||||
@ -293,30 +372,129 @@ public class MemberController {
|
||||
contents+=readLine;
|
||||
}
|
||||
contents=contents.replace("${userName}",vo.getName());
|
||||
|
||||
email.setReciver(reciver);
|
||||
|
||||
email.setSubject(subject);
|
||||
email.setContent(contents);
|
||||
emailSender.SendEmail(email);
|
||||
|
||||
return "nlib/member/insertMemberInfoResult";
|
||||
}
|
||||
/**
|
||||
* 이메일 인증번호 발송
|
||||
* @exception Exception
|
||||
*/
|
||||
@RequestMapping(value="/member/emailCertNum.ajax" , method=RequestMethod.POST)
|
||||
public @ResponseBody void emailCertNum(HttpServletResponse response,HttpServletRequest request,HttpSession session) throws Exception{
|
||||
String email = request.getParameter("email");
|
||||
EmailVO emailVO = new EmailVO();
|
||||
//인증번호 생성
|
||||
String CertNumber=memberService.numberGen(6,1);
|
||||
System.out.println(CertNumber);
|
||||
//세션에 저장
|
||||
String jsessionId = session.getId();
|
||||
OAuthUniversalUser oauthUser = SessionConfig.getNewMemberInfo(jsessionId);
|
||||
|
||||
NlibLoginVO vo=oauthUser.getNlibVO();
|
||||
//이미 생성된 VO가 없을때
|
||||
if(vo==null)
|
||||
vo= new NlibLoginVO();
|
||||
vo.setEmail(email);
|
||||
vo.setEmailVrfctNo(CertNumber);
|
||||
oauthUser.setNlibVO(vo);
|
||||
SessionConfig.setNewMemberInfo(jsessionId,oauthUser);
|
||||
|
||||
//이메일 발송
|
||||
// 결과가 정상이면, 안내 메일 발송
|
||||
// > 템플릿파일에서 내용 mailing.sender.membership.template
|
||||
// > 치환 (사용자명, 이메일주소)
|
||||
// > 발송처리 요청
|
||||
String reciver = email; //받을사람의 이메일입니다.-> naver nate 등등
|
||||
String subject = "온라인자료대출시스템 이메일 인증번호";
|
||||
|
||||
Path path = Paths.get(template);
|
||||
Charset cs = StandardCharsets.UTF_8;
|
||||
List<String> list = new ArrayList<String>();
|
||||
String contents = "";
|
||||
try {
|
||||
list = Files.readAllLines(path,cs);
|
||||
}catch(IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
for(String readLine : list) {
|
||||
contents+=readLine;
|
||||
}
|
||||
contents=contents.replace("${userName}",vo.getName()+"님의 인증번호는"+CertNumber+"입니다.");
|
||||
|
||||
emailVO.setReciver(reciver);
|
||||
|
||||
emailVO.setSubject(subject);
|
||||
emailVO.setContent(contents);
|
||||
emailSender.SendEmail(emailVO);
|
||||
|
||||
//------------
|
||||
}
|
||||
|
||||
/**
|
||||
* 이메일 인증번호 확인
|
||||
* @exception Exception
|
||||
*/
|
||||
@RequestMapping(value="/member/emailCertNumChk.ajax" , method=RequestMethod.POST)
|
||||
public @ResponseBody String emailCertNumChk(HttpServletResponse response,HttpServletRequest request,HttpSession session) throws Exception{
|
||||
String email = request.getParameter("email");
|
||||
String emailVrfctNo = request.getParameter("emailVrfctNo");
|
||||
|
||||
SimpleDateFormat format = new SimpleDateFormat ( "yyyy년 MM월dd일 HH시mm분ss초");
|
||||
|
||||
//세션에 저장
|
||||
String jsessionId = session.getId();
|
||||
OAuthUniversalUser oauthUser = SessionConfig.getNewMemberInfo(jsessionId);
|
||||
|
||||
//핸드폰번호와 인증번호 확인
|
||||
if(oauthUser.getNlibVO().getEmail().equals(email) && oauthUser.getNlibVO().getEmailVrfctNo().equals(emailVrfctNo))
|
||||
{
|
||||
Date time = new Date();
|
||||
NlibLoginVO sessionNlibLoginVO = oauthUser.getNlibVO();
|
||||
sessionNlibLoginVO.setEmailVrfctDd(format.format(time));
|
||||
oauthUser.setNlibVO(sessionNlibLoginVO);
|
||||
SessionConfig.setNewMemberInfo(jsessionId,oauthUser);
|
||||
return "true";
|
||||
}else {
|
||||
return "false";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 핸드폰 인증번호 발송
|
||||
* @exception Exception
|
||||
*/
|
||||
@RequestMapping(value="/member/mobileCertNum.ajax" , method=RequestMethod.POST)
|
||||
public @ResponseBody void phoneCertNum(HttpServletResponse response,HttpServletRequest request) throws Exception{
|
||||
public @ResponseBody void phoneCertNum(HttpServletResponse response,HttpServletRequest request,HttpSession session) throws Exception{
|
||||
String mobileNo = request.getParameter("mobileNo");
|
||||
|
||||
HashMap<String, Object> commandMap = new HashMap<String,Object>();
|
||||
DataApiReqVO reqVO = new DataApiReqVO();
|
||||
|
||||
//인증번호 생성
|
||||
String CertNumber=memberService.numberGen(6,1);
|
||||
|
||||
commandMap.put("CertNumber",CertNumber);
|
||||
|
||||
reqVO.setInfo(commandMap);
|
||||
|
||||
System.out.println(mobileNo);
|
||||
System.out.println(CertNumber);
|
||||
//세션에 저장
|
||||
String jsessionId = session.getId();
|
||||
OAuthUniversalUser oauthUser = SessionConfig.getNewMemberInfo(jsessionId);
|
||||
|
||||
|
||||
NlibLoginVO vo=oauthUser.getNlibVO();
|
||||
//이미 생성된 VO가 없을때
|
||||
if(vo==null)
|
||||
vo= new NlibLoginVO();
|
||||
|
||||
vo.setMobileNo(mobileNo);
|
||||
vo.setMobileVrfctNo(CertNumber);
|
||||
oauthUser.setNlibVO(vo);
|
||||
SessionConfig.setNewMemberInfo(jsessionId,oauthUser);
|
||||
|
||||
//문자발송 솔루션
|
||||
|
||||
//------------
|
||||
}
|
||||
|
||||
/**
|
||||
@ -324,21 +502,28 @@ public class MemberController {
|
||||
* @exception Exception
|
||||
*/
|
||||
@RequestMapping(value="/member/mobileCertNumChk.ajax" , method=RequestMethod.POST)
|
||||
public @ResponseBody String mobileCertNumChk(HttpServletResponse response,HttpServletRequest request) throws Exception{
|
||||
public @ResponseBody String mobileCertNumChk(HttpServletResponse response,HttpServletRequest request,HttpSession session) throws Exception{
|
||||
String mobileNo = request.getParameter("mobileNo");
|
||||
String mobileCertNum = request.getParameter("mobileCertNum");
|
||||
String mobileVrfctNo = request.getParameter("mobileVrfctNo");
|
||||
|
||||
HashMap<String, Object> commandMap = new HashMap<String,Object>();
|
||||
commandMap.put("phone", mobileNo);
|
||||
commandMap.put("phoneCertNum", mobileCertNum);
|
||||
DataApiReqVO reqVO = new DataApiReqVO();
|
||||
SimpleDateFormat format = new SimpleDateFormat ( "yyyy년 MM월dd일 HH시mm분ss초");
|
||||
|
||||
reqVO.setInfo(commandMap);
|
||||
//세션에 저장
|
||||
String jsessionId = session.getId();
|
||||
OAuthUniversalUser oauthUser = SessionConfig.getNewMemberInfo(jsessionId);
|
||||
|
||||
System.out.println(mobileNo);
|
||||
System.out.println(mobileCertNum);
|
||||
|
||||
return "true";
|
||||
//핸드폰번호와 인증번호 확인
|
||||
if(oauthUser.getNlibVO().getMobileNo().equals(mobileNo) && oauthUser.getNlibVO().getMobileVrfctNo().equals(mobileVrfctNo))
|
||||
{
|
||||
Date time = new Date();
|
||||
NlibLoginVO sessionNlibLoginVO = oauthUser.getNlibVO();
|
||||
sessionNlibLoginVO.setMobileVrfctDd(format.format(time));
|
||||
oauthUser.setNlibVO(sessionNlibLoginVO);
|
||||
SessionConfig.setNewMemberInfo(jsessionId,oauthUser);
|
||||
return "true";
|
||||
}else {
|
||||
return "false";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -393,6 +578,15 @@ public class MemberController {
|
||||
for(String readLine : list) {
|
||||
contents+=readLine;
|
||||
}
|
||||
|
||||
encodedText = egovPasswordEncoder.encryptPassword(InitPwd);
|
||||
vo.setPassword(encodedText);
|
||||
|
||||
vo.setMbInfoId(gUserId);
|
||||
|
||||
//암호화된 비밀번호로 수정
|
||||
memberService.changePassword(vo);
|
||||
|
||||
contents=contents.replace("${userPwd}",InitPwd);
|
||||
|
||||
email.setReciver(reciver);
|
||||
@ -401,13 +595,7 @@ public class MemberController {
|
||||
email.setContent(contents);
|
||||
emailSender.SendEmail(email);
|
||||
|
||||
encodedText = egovPasswordEncoder.encryptPassword(InitPwd);
|
||||
vo.setPassword(encodedText);
|
||||
|
||||
vo.setMbInfoId(gUserId);
|
||||
|
||||
//암호화된 비밀번호로 수정
|
||||
memberService.changePassword(vo);
|
||||
|
||||
message="초기화된 비밀번호가 이메일로 발송됐습니다.";
|
||||
}else {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user