Commit 7768c160 by 丁伟

1、增加纳税人识别号验证功能

parent 92986381
...@@ -21,9 +21,9 @@ import java.util.Properties; ...@@ -21,9 +21,9 @@ import java.util.Properties;
* @version 1.0 * @version 1.0
*/ */
public class MailSender { public class MailSender {
private static String USERNAME; public static String USERNAME;
private static String PASSWORD; public static String PASSWORD;
private static String SMTP; public static String SMTP;
private static final Logger logger = Logger.getLogger(MailSender.class); private static final Logger logger = Logger.getLogger(MailSender.class);
static{ static{
......
...@@ -9,6 +9,8 @@ import org.ccpit.base.user.UserService; ...@@ -9,6 +9,8 @@ import org.ccpit.base.user.UserService;
import org.ccpit.base.utils.EmailBody; import org.ccpit.base.utils.EmailBody;
import org.ccpit.base.utils.MailSender; import org.ccpit.base.utils.MailSender;
import org.ccpit.base.utils.PasswordHash; import org.ccpit.base.utils.PasswordHash;
import org.ccpit.base.utils.mailUtil.Mail;
import org.ccpit.base.utils.mailUtil.MailUtil;
import org.ccpit.business.phase.Phase; import org.ccpit.business.phase.Phase;
import org.ccpit.business.phase.PhaseService; import org.ccpit.business.phase.PhaseService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -44,10 +46,10 @@ public class IndexController extends BaseController { ...@@ -44,10 +46,10 @@ public class IndexController extends BaseController {
@Autowired @Autowired
private SubjectInfoService subjectInfoService; private SubjectInfoService subjectInfoService;
private Map<String,Object> check(){ private Map<String, Object> check() {
if (getActivePhase()==null){ if (getActivePhase() == null) {
Map<String,Object> map = new HashMap<String, Object>(); Map<String, Object> map = new HashMap<String, Object>();
map.put("info","注册页面暂未开放"); map.put("info", "注册页面暂未开放");
return map; return map;
} }
return null; return null;
...@@ -55,18 +57,21 @@ public class IndexController extends BaseController { ...@@ -55,18 +57,21 @@ public class IndexController extends BaseController {
/** /**
* 获取活动的期数 * 获取活动的期数
*
* @return * @return
*/ */
private Phase getActivePhase(){ private Phase getActivePhase() {
return phaseService.getActivePhase(); return phaseService.getActivePhase();
} }
/** /**
* 跳转去登录页 * 跳转去登录页
*
* @return * @return
*/ */
@RequestMapping(value="/loginp",method=RequestMethod.GET) @RequestMapping(value = "/loginp", method = RequestMethod.GET)
public ModelAndView loginPage(){ public ModelAndView loginPage() {
if (check()!=null){ if (check() != null) {
ModelAndView mv = new ModelAndView("front/error"); ModelAndView mv = new ModelAndView("front/error");
return mv; return mv;
} }
...@@ -84,12 +89,14 @@ public class IndexController extends BaseController { ...@@ -84,12 +89,14 @@ public class IndexController extends BaseController {
// } // }
// return new ModelAndView("front/login2"); // return new ModelAndView("front/login2");
// } // }
/** /**
* 跳转去注册页 * 跳转去注册页
*
* @return * @return
*/ */
@RequestMapping(value="/regp",method=RequestMethod.GET) @RequestMapping(value = "/regp", method = RequestMethod.GET)
public ModelAndView regPage(){ public ModelAndView regPage() {
ModelAndView mv = new ModelAndView("front/reg"); ModelAndView mv = new ModelAndView("front/reg");
List<Metadata> cityType = metadataService.getMetadatasByType2("cityType"); List<Metadata> cityType = metadataService.getMetadatasByType2("cityType");
List<Metadata> encityType = metadataService.getMetadatasByType2("encityType"); List<Metadata> encityType = metadataService.getMetadatasByType2("encityType");
...@@ -98,13 +105,13 @@ public class IndexController extends BaseController { ...@@ -98,13 +105,13 @@ public class IndexController extends BaseController {
List<Metadata> subject = metadataService.getMetadatasByType2("subject"); List<Metadata> subject = metadataService.getMetadatasByType2("subject");
List<Metadata> gender = metadataService.getMetadatasByType2("gender"); List<Metadata> gender = metadataService.getMetadatasByType2("gender");
List<Metadata> engender = metadataService.getMetadatasByType2("engender"); List<Metadata> engender = metadataService.getMetadatasByType2("engender");
mv.addObject("cityType",cityType); mv.addObject("cityType", cityType);
mv.addObject("encityType",encityType); mv.addObject("encityType", encityType);
mv.addObject("status",status); mv.addObject("status", status);
mv.addObject("invoiceType",invoiceType); mv.addObject("invoiceType", invoiceType);
mv.addObject("subject",subject); mv.addObject("subject", subject);
mv.addObject("gender",gender); mv.addObject("gender", gender);
mv.addObject("engender",engender); mv.addObject("engender", engender);
return mv; return mv;
} }
/** /**
...@@ -128,24 +135,26 @@ public class IndexController extends BaseController { ...@@ -128,24 +135,26 @@ public class IndexController extends BaseController {
// mv.addObject("engender",engender); // mv.addObject("engender",engender);
// return mv; // return mv;
// } // }
/** /**
* 跳转去个人信息页 * 跳转去个人信息页
*
* @return * @return
*/ */
@RequestMapping("/infop") @RequestMapping("/infop")
public ModelAndView infoPage(HttpServletRequest request){ public ModelAndView infoPage(HttpServletRequest request) {
if (check()!=null){ if (check() != null) {
ModelAndView mv = new ModelAndView("front/error"); ModelAndView mv = new ModelAndView("front/error");
return mv; return mv;
} }
ModelAndView mv = new ModelAndView("front/info"); ModelAndView mv = new ModelAndView("front/info");
RegisterInfo registerInfo = (RegisterInfo) request.getSession().getAttribute("registerInfo"); RegisterInfo registerInfo = (RegisterInfo) request.getSession().getAttribute("registerInfo");
if (registerInfo==null){ if (registerInfo == null) {
return new ModelAndView("front/login"); return new ModelAndView("front/login");
}else{ } else {
RegisterInfo reg = registerService.queryRegisterById(registerInfo.getId()); RegisterInfo reg = registerService.queryRegisterById(registerInfo.getId());
mv.addObject("registerInfo",reg); mv.addObject("registerInfo", reg);
} }
List<SubjectInfo> subjectInfos = subjectInfoService.queryList("from SubjectInfo where registerInfo_id = " + registerInfo.getId()); List<SubjectInfo> subjectInfos = subjectInfoService.queryList("from SubjectInfo where registerInfo_id = " + registerInfo.getId());
SubjectInfo sub_info = new SubjectInfo(); SubjectInfo sub_info = new SubjectInfo();
...@@ -168,29 +177,30 @@ public class IndexController extends BaseController { ...@@ -168,29 +177,30 @@ public class IndexController extends BaseController {
List<Metadata> subject = metadataService.getMetadatasByType2("subject"); List<Metadata> subject = metadataService.getMetadatasByType2("subject");
List<Metadata> subject2 = metadataService.getMetadatasByType2("subject2"); List<Metadata> subject2 = metadataService.getMetadatasByType2("subject2");
List<Metadata> registerType = metadataService.getMetadatasByType2("registerType"); List<Metadata> registerType = metadataService.getMetadatasByType2("registerType");
mv.addObject("status",status); mv.addObject("status", status);
mv.addObject("status2",status2); mv.addObject("status2", status2);
mv.addObject("invoiceType",invoiceType); mv.addObject("invoiceType", invoiceType);
mv.addObject("subject",subject); mv.addObject("subject", subject);
mv.addObject("subject2",subject2); mv.addObject("subject2", subject2);
mv.addObject("registerType", registerType); mv.addObject("registerType", registerType);
mv.addObject("subjectInfos", subjectInfos); mv.addObject("subjectInfos", subjectInfos);
return mv; return mv;
} }
/** /**
* 保存证件照 * 保存证件照
*
* @return * @return
*/ */
@RequestMapping("/saveCertificateId") @RequestMapping("/saveCertificateId")
public Object saveCertificateId(HttpServletRequest request){ public Object saveCertificateId(HttpServletRequest request) {
String img1 = request.getParameter("img1"); String img1 = request.getParameter("img1");
// String img2 = request.getParameter("img2"); // String img2 = request.getParameter("img2");
// String img3 = request.getParameter("img3"); // String img3 = request.getParameter("img3");
String obj_id = request.getParameter("obj_id"); String obj_id = request.getParameter("obj_id");
RegisterInfo registerInfo = registerService.queryRegisterById(Long.valueOf(obj_id)); RegisterInfo registerInfo = registerService.queryRegisterById(Long.valueOf(obj_id));
Map<String,Object> map = new HashMap<String, Object>(); Map<String, Object> map = new HashMap<String, Object>();
if(null != registerInfo){ if (null != registerInfo) {
registerInfo.setImg1(img1); registerInfo.setImg1(img1);
// registerInfo.setImg2(img2); // registerInfo.setImg2(img2);
// registerInfo.setImg3(img3); // registerInfo.setImg3(img3);
...@@ -205,75 +215,76 @@ public class IndexController extends BaseController { ...@@ -205,75 +215,76 @@ public class IndexController extends BaseController {
// boolean result = subjectInfoService.updateSubjectInfo(subjectInfo); // boolean result = subjectInfoService.updateSubjectInfo(subjectInfo);
// map.put("result", result); // map.put("result", result);
// } // }
return map; return map;
} }
@RequestMapping("/getObj") @RequestMapping("/getObj")
public Object getObj(HttpServletRequest request){ public Object getObj(HttpServletRequest request) {
String obj_id = request.getParameter("obj_id"); String obj_id = request.getParameter("obj_id");
Map<String,Object> map = new HashMap<String, Object>(); Map<String, Object> map = new HashMap<String, Object>();
RegisterInfo registerInfo = registerService.queryRegisterById(Long.valueOf(obj_id)); RegisterInfo registerInfo = registerService.queryRegisterById(Long.valueOf(obj_id));
if(null != registerInfo){ if (null != registerInfo) {
map.put("obj", registerInfo); map.put("obj", registerInfo);
} }
return map; return map;
} }
@RequestMapping("/checkEmail") @RequestMapping("/checkEmail")
public Object checkEmail(String email,Boolean regType){ public Object checkEmail(String email, Boolean regType) {
Map<String,Object> map =new HashMap<String,Object>(); Map<String, Object> map = new HashMap<String, Object>();
Phase phase = getActivePhase(); Phase phase = getActivePhase();
if (phase == null){ if (phase == null) {
map.put("success", false); map.put("success", false);
return map; return map;
} }
RegisterInfo reg = registerService.queryByEmail(email, phase.getId(),regType); RegisterInfo reg = registerService.queryByEmail(email, phase.getId(), regType);
map.put("success", reg != null); map.put("success", reg != null);
return map; return map;
} }
@RequestMapping("/reg") @RequestMapping("/reg")
public Object reg(HttpServletRequest request,RegisterInfo registerInfo,String repassword){ public Object reg(HttpServletRequest request, RegisterInfo registerInfo, String repassword) {
Phase phase = getActivePhase(); Phase phase = getActivePhase();
//检查是否开放注册 //检查是否开放注册
if (phase==null) { if (phase == null) {
return null; return null;
} }
Map<String,Object> map =new HashMap<String,Object>(); Map<String, Object> map = new HashMap<String, Object>();
if (StringUtils.isEmpty(registerInfo.getEmail())){ if (StringUtils.isEmpty(registerInfo.getEmail())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写邮箱"); map.put("info", "请填写邮箱");
return map; return map;
} }
RegisterInfo reg = registerService.queryByEmail(registerInfo.getEmail(),phase.getId(),true); RegisterInfo reg = registerService.queryByEmail(registerInfo.getEmail(), phase.getId(), true);
if (reg!=null){ if (reg != null) {
map.put("success",false); map.put("success", false);
map.put("info","邮箱已经被占用"); map.put("info", "邮箱已经被占用");
return map; return map;
} }
if (StringUtils.isEmpty(registerInfo.getPassword())){ if (StringUtils.isEmpty(registerInfo.getPassword())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写密码"); map.put("info", "请填写密码");
return map; return map;
} }
if (!registerInfo.getPassword().equals(repassword)){ if (!registerInfo.getPassword().equals(repassword)) {
map.put("success",false); map.put("success", false);
map.put("info","两次密码填写不一致"); map.put("info", "两次密码填写不一致");
return map; return map;
} }
if (StringUtils.isEmpty(registerInfo.getName())){ if (StringUtils.isEmpty(registerInfo.getName())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写姓名"); map.put("info", "请填写姓名");
return map; return map;
} }
if (StringUtils.isEmpty(registerInfo.getCompany())){ if (StringUtils.isEmpty(registerInfo.getCompany())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写工作单位"); map.put("info", "请填写工作单位");
return map; return map;
} }
if (StringUtils.isEmpty(String.valueOf(registerInfo.getSubject()))){ if (StringUtils.isEmpty(String.valueOf(registerInfo.getSubject()))) {
map.put("success",false); map.put("success", false);
map.put("info","请填写报名科目"); map.put("info", "请填写报名科目");
return map; return map;
} }
registerInfo.setCountry("CHINA"); registerInfo.setCountry("CHINA");
...@@ -282,7 +293,7 @@ public class IndexController extends BaseController { ...@@ -282,7 +293,7 @@ public class IndexController extends BaseController {
registerInfo.setPhase(phase); registerInfo.setPhase(phase);
registerInfo.setInvoiceInfo("发票内容为相应考试的考试费"); registerInfo.setInvoiceInfo("发票内容为相应考试的考试费");
try { try {
String pwd= PasswordHash.createHash(registerInfo.getPassword()); String pwd = PasswordHash.createHash(registerInfo.getPassword());
registerInfo.setPassword(pwd); registerInfo.setPassword(pwd);
} catch (Exception e) { } catch (Exception e) {
...@@ -290,61 +301,61 @@ public class IndexController extends BaseController { ...@@ -290,61 +301,61 @@ public class IndexController extends BaseController {
} }
boolean success = registerService.addRegisterInfo(registerInfo); boolean success = registerService.addRegisterInfo(registerInfo);
if (success){ if (success) {
request.getSession().setAttribute("registerInfo",registerInfo); request.getSession().setAttribute("registerInfo", registerInfo);
} }
map.put("success",success); map.put("success", success);
return map; return map;
} }
@RequestMapping("/reg2") @RequestMapping("/reg2")
public Object reg2(HttpServletRequest request,RegisterInfo registerInfo,String repassword){ public Object reg2(HttpServletRequest request, RegisterInfo registerInfo, String repassword) {
Phase phase = getActivePhase(); Phase phase = getActivePhase();
if (phase==null){ if (phase == null) {
return null; return null;
} }
Map<String,Object> map =new HashMap<String,Object>(); Map<String, Object> map = new HashMap<String, Object>();
if (StringUtils.isEmpty(registerInfo.getEmail())){ if (StringUtils.isEmpty(registerInfo.getEmail())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写邮箱"); map.put("info", "请填写邮箱");
return map; return map;
} }
RegisterInfo reg = registerService.queryByEmail(registerInfo.getEmail(), phase.getId(),false); RegisterInfo reg = registerService.queryByEmail(registerInfo.getEmail(), phase.getId(), false);
if (reg!=null){ if (reg != null) {
map.put("success",false); map.put("success", false);
map.put("info","邮箱已经被占用"); map.put("info", "邮箱已经被占用");
return map; return map;
} }
if (StringUtils.isEmpty(registerInfo.getPassword())){ if (StringUtils.isEmpty(registerInfo.getPassword())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写密码"); map.put("info", "请填写密码");
return map; return map;
} }
if (!registerInfo.getPassword().equals(repassword)){ if (!registerInfo.getPassword().equals(repassword)) {
map.put("success",false); map.put("success", false);
map.put("info","两次密码填写不一致"); map.put("info", "两次密码填写不一致");
return map; return map;
} }
if (StringUtils.isEmpty(registerInfo.getName())){ if (StringUtils.isEmpty(registerInfo.getName())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写中文姓名"); map.put("info", "请填写中文姓名");
return map; return map;
} }
if (StringUtils.isEmpty(registerInfo.getName_en())){ if (StringUtils.isEmpty(registerInfo.getName_en())) {
map.put("success",false); map.put("success", false);
map.put("info","请填写NAME"); map.put("info", "请填写NAME");
return map; return map;
} }
if (registerInfo.getDateOfBirth()==null){ if (registerInfo.getDateOfBirth() == null) {
map.put("success",false); map.put("success", false);
map.put("info","请填写Date of Birth"); map.put("info", "请填写Date of Birth");
return map; return map;
} }
if (StringUtils.isEmpty(String.valueOf(registerInfo.getSubject2()))){ if (StringUtils.isEmpty(String.valueOf(registerInfo.getSubject2()))) {
map.put("success",false); map.put("success", false);
map.put("info","请填写报名科目"); map.put("info", "请填写报名科目");
return map; return map;
} }
registerInfo.setCountry("CHINA"); registerInfo.setCountry("CHINA");
...@@ -352,7 +363,7 @@ public class IndexController extends BaseController { ...@@ -352,7 +363,7 @@ public class IndexController extends BaseController {
registerInfo.setPhase(phase); registerInfo.setPhase(phase);
registerInfo.setRegisterStatus2(0); registerInfo.setRegisterStatus2(0);
try { try {
String pwd= PasswordHash.createHash(registerInfo.getPassword()); String pwd = PasswordHash.createHash(registerInfo.getPassword());
registerInfo.setPassword(pwd); registerInfo.setPassword(pwd);
} catch (Exception e) { } catch (Exception e) {
...@@ -360,24 +371,24 @@ public class IndexController extends BaseController { ...@@ -360,24 +371,24 @@ public class IndexController extends BaseController {
} }
boolean success = registerService.addRegisterInfo(registerInfo); boolean success = registerService.addRegisterInfo(registerInfo);
if (success){ if (success) {
request.getSession().setAttribute("registerInfo",registerInfo); request.getSession().setAttribute("registerInfo", registerInfo);
} }
map.put("success",success); map.put("success", success);
return map; return map;
} }
@RequestMapping("/reg3") @RequestMapping("/reg3")
public Object reg3(HttpServletRequest request,SubjectInfo subjectInfo,long registerInfo_id){ public Object reg3(HttpServletRequest request, SubjectInfo subjectInfo, long registerInfo_id) {
Phase phase = getActivePhase(); Phase phase = getActivePhase();
if (phase==null){ if (phase == null) {
return null; return null;
} }
Map<String,Object> map =new HashMap<String,Object>(); Map<String, Object> map = new HashMap<String, Object>();
if (StringUtils.isEmpty(String.valueOf(subjectInfo.getSubject()))){ if (StringUtils.isEmpty(String.valueOf(subjectInfo.getSubject()))) {
map.put("success",false); map.put("success", false);
map.put("info","请填写报名科目"); map.put("info", "请填写报名科目");
return map; return map;
} }
subjectInfo.setRegisterInfo_id(registerInfo_id); subjectInfo.setRegisterInfo_id(registerInfo_id);
...@@ -388,115 +399,116 @@ public class IndexController extends BaseController { ...@@ -388,115 +399,116 @@ public class IndexController extends BaseController {
RegisterInfo registerInfo = registerService.queryRegisterById(registerInfo_id); RegisterInfo registerInfo = registerService.queryRegisterById(registerInfo_id);
subjectInfo.setRegisterName(registerInfo.getName()); subjectInfo.setRegisterName(registerInfo.getName());
boolean success = subjectInfoService.addSubjectInfo(subjectInfo); boolean success = subjectInfoService.addSubjectInfo(subjectInfo);
if (success){ if (success) {
request.getSession().setAttribute("registerInfo",registerInfo); request.getSession().setAttribute("registerInfo", registerInfo);
request.getSession().setAttribute("subjectInfo",subjectInfo); request.getSession().setAttribute("subjectInfo", subjectInfo);
} }
map.put("success",success); map.put("success", success);
return map; return map;
} }
private void sendEmail(String email,String name,String subject){ private void sendEmail(String email, String name, String subject) {
EmailBody body = new EmailBody(); EmailBody body = new EmailBody();
MailSender.send(email,"",""); MailSender.send(email, "", "");
} }
@RequestMapping("/login") @RequestMapping("/login")
public Object login(String name,String password,String code,HttpServletRequest request){ public Object login(String name, String password, String code, HttpServletRequest request) {
Phase phase = getActivePhase(); Phase phase = getActivePhase();
if (phase == null){ if (phase == null) {
return null; return null;
} }
HashMap<String,Object> map = new HashMap<String, Object>(); HashMap<String, Object> map = new HashMap<String, Object>();
boolean isValid = ValidateCodeController.validate(request,code); boolean isValid = ValidateCodeController.validate(request, code);
if (!isValid){ if (!isValid) {
//验证码错误 //验证码错误
map.put("status",0); map.put("status", 0);
return map; return map;
} }
RegisterInfo registerInfo = registerService.queryByEmail(name,phase.getId(),true); RegisterInfo registerInfo = registerService.queryByEmail(name, phase.getId(), true);
if (registerInfo==null){ if (registerInfo == null) {
//用户不存在 //用户不存在
map.put("status", 1); map.put("status", 1);
return map; return map;
} }
try { try {
map.put("status",3); map.put("status", 3);
boolean ok = PasswordHash.validatePassword(password,registerInfo.getPassword()); boolean ok = PasswordHash.validatePassword(password, registerInfo.getPassword());
//3密码不正确 //3密码不正确
//4密码正确 登录成功 //4密码正确 登录成功
if (ok){ if (ok) {
map.put("status",4); map.put("status", 4);
request.getSession().setAttribute("registerInfo",registerInfo); request.getSession().setAttribute("registerInfo", registerInfo);
} }
}catch (Exception e){ } catch (Exception e) {
//啥也不干 //啥也不干
} }
return map; return map;
} }
@RequestMapping("/login2") @RequestMapping("/login2")
public Object login2(String name,String password,String code,HttpServletRequest request){ public Object login2(String name, String password, String code, HttpServletRequest request) {
Phase phase = getActivePhase(); Phase phase = getActivePhase();
if (phase==null){ if (phase == null) {
return null; return null;
} }
HashMap<String,Object> map = new HashMap<String, Object>(); HashMap<String, Object> map = new HashMap<String, Object>();
boolean isValid = ValidateCodeController.validate(request,code); boolean isValid = ValidateCodeController.validate(request, code);
if (!isValid){ if (!isValid) {
//验证码错误 //验证码错误
map.put("status",0); map.put("status", 0);
return map; return map;
} }
RegisterInfo registerInfo = registerService.queryByEmail(name,phase.getId(),false); RegisterInfo registerInfo = registerService.queryByEmail(name, phase.getId(), false);
if (registerInfo==null){ if (registerInfo == null) {
//用户不存在 //用户不存在
map.put("status",1); map.put("status", 1);
return map; return map;
} }
try { try {
map.put("status",3); map.put("status", 3);
boolean ok = PasswordHash.validatePassword(password,registerInfo.getPassword()); boolean ok = PasswordHash.validatePassword(password, registerInfo.getPassword());
//3密码不正确 //3密码不正确
//4密码正确 登录成功 //4密码正确 登录成功
if (ok){ if (ok) {
map.put("status",4); map.put("status", 4);
request.getSession().setAttribute("registerInfo",registerInfo); request.getSession().setAttribute("registerInfo", registerInfo);
request.getSession().setAttribute("user_in_session",registerInfo); request.getSession().setAttribute("user_in_session", registerInfo);
} }
}catch (Exception e){ } catch (Exception e) {
//啥也不干 //啥也不干
} }
return map; return map;
} }
@RequestMapping("/resetPassword") @RequestMapping("/resetPassword")
public Object resetPassword(){ public Object resetPassword() {
ModelAndView mv = new ModelAndView("front/reset"); ModelAndView mv = new ModelAndView("front/reset");
return mv; return mv;
} }
@RequestMapping("/resetPwd") @RequestMapping("/resetPwd")
@ResponseBody @ResponseBody
public Object resetPwd(HttpServletRequest request,String email,boolean regType,String validateCode){ public Object resetPwd(HttpServletRequest request, String email, boolean regType, String validateCode) {
boolean valid = ValidateCodeController.validate(request,validateCode); boolean valid = ValidateCodeController.validate(request, validateCode);
Map<String,Object> map = new HashMap<String, Object>(); Map<String, Object> map = new HashMap<String, Object>();
if (!valid){ if (!valid) {
map.put("success",false); map.put("success", false);
map.put("info","验证码错误"); map.put("info", "验证码错误");
return map; return map;
} }
Phase phase=getActivePhase(); Phase phase = getActivePhase();
RegisterInfo info = registerService.queryByEmail(email, phase.getId(), regType); RegisterInfo info = registerService.queryByEmail(email, phase.getId(), regType);
if (info == null){ if (info == null) {
map.put("success",false); map.put("success", false);
map.put("info","账号不存在"); map.put("info", "账号不存在");
return map; return map;
} }
String newPwd = ""; String newPwd = "";
try { try {
double rand = Math.random()*10000000+1000000; double rand = Math.random() * 10000000 + 1000000;
newPwd = String.valueOf((long)rand); newPwd = String.valueOf((long) rand);
info.setPassword(PasswordHash.createHash(newPwd)); info.setPassword(PasswordHash.createHash(newPwd));
registerService.updateRegisterInfo(info); registerService.updateRegisterInfo(info);
...@@ -504,27 +516,33 @@ public class IndexController extends BaseController { ...@@ -504,27 +516,33 @@ public class IndexController extends BaseController {
throw new RuntimeException("修改用户密码加密失败....", e); throw new RuntimeException("修改用户密码加密失败....", e);
} }
Mail new_mail = new Mail();
final String pwd = newPwd; new_mail.setHost(MailSender.SMTP);
final String mail = info.getEmail(); new_mail.setSender(MailSender.USERNAME);
final String name = info.getName(); new_mail.setEmailCount(MailSender.USERNAME);
new Thread(){ new_mail.setEmailPassword(MailSender.PASSWORD);
new_mail.setProtocol("smtp");
new_mail.setName(info.getName());
new_mail.setReceiver(info.getEmail());
new_mail.setMailTitle("密码重置成功");
String html = info.getName() + ",您好,<br><br>&emsp;&emsp;您已成功重置了密码,您的密码已修改为<span style='color:red;'>" + newPwd + "</span>,请用新密码登录本系统。<br>" +
"<br><br><div style='font-size:12px;'>本邮件为系统发送,请勿直接回复。</div>";
new_mail.setMailMessage(html);
new Thread() {
@Override @Override
public void run() { public void run() {
super.run(); super.run();
for (int i=0;i<5;i++){ for (int i = 0; i < 5; i++) {
boolean success = MailSender.send(mail, "密码重置成功", name+",您好,<br>您已成功重置了密码,您的密码已修改为<span style='color:red;'>"+pwd+"</span>,请用新密码登录本系统。<br>" + boolean success = MailUtil.sendMail(new_mail);
"<br><div style='font-size:12px;'>本邮件为系统发送,请勿直接回复。</div>"); if (success) {
if (success){
break; break;
} }
} }
} }
}.start(); }.start();
map.put("success",true); map.put("success", true);
map.put("info","发送成功"); map.put("info", "发送成功");
return map; return map;
} }
} }
...@@ -527,5 +527,6 @@ ...@@ -527,5 +527,6 @@
<%--<script src="/resource/front/js/jquery.min.js" type="text/javascript"></script>--%> <%--<script src="/resource/front/js/jquery.min.js" type="text/javascript"></script>--%>
<script src="/resource/front/js/jquery.form.min.js" type="text/javascript"></script> <script src="/resource/front/js/jquery.form.min.js" type="text/javascript"></script>
<script src="/resource/front/js/jquery-ui-datepicker.js" type="text/javascript"></script> <script src="/resource/front/js/jquery-ui-datepicker.js" type="text/javascript"></script>
<script src="/resource/front/js/checkSocialCreditCode.js" type="text/javascript"></script>
</body> </body>
</html> </html>
...@@ -301,6 +301,7 @@ ...@@ -301,6 +301,7 @@
<script src="/resource/front/js/jquery.form.min.js" type="text/javascript"></script> <script src="/resource/front/js/jquery.form.min.js" type="text/javascript"></script>
<script src="/resource/front/js/jquery-ui-datepicker.js" type="text/javascript"></script> <script src="/resource/front/js/jquery-ui-datepicker.js" type="text/javascript"></script>
<script src="/resource/front/js/reg.js" type="text/javascript"></script> <script src="/resource/front/js/reg.js" type="text/javascript"></script>
<script src="/resource/front/js/checkSocialCreditCode.js" type="text/javascript"></script>
</body> </body>
</html> </html>
//验证信用代码
function checkSocialCreditCode(Code) {
var patrn = /^[^_IOZSVa-z\W]{2}\d{6}[^_IOZSVa-z\W]{10}$/g;
//18位校验及大写校验
if ((Code.length != 18) || (patrn.test(Code) == false)) {
// return '不是有效的统一社会信用编码';
// /*console.info("不是有效的统一社会信用编码!");
return false;
}
else {
var Ancode;//统一社会信用代码的每一个值
var Ancodevalue;//统一社会信用代码每一个值的权重
var total = 0;
var weightedfactors = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];//加权因子
var str = '0123456789ABCDEFGHJKLMNPQRTUWXY';
//不用I、O、S、V、Z
for (var i = 0; i < Code.length - 1; i++) {
Ancode = Code.substring(i, i + 1);
Ancodevalue = str.indexOf(Ancode);
total = total + Ancodevalue * weightedfactors[i];
//权重与加权因子相乘之和
}
var logiccheckcode = 31 - total % 31;
if (logiccheckcode == 31) {
logiccheckcode = 0;
}
var Str = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,J,K,L,M,N,P,Q,R,T,U,W,X,Y";
var Array_Str = Str.split(',');
logiccheckcode = Array_Str[logiccheckcode];
var checkcode = Code.substring(17, 18);
if (logiccheckcode != checkcode) {
return false;
}else{
return true;
}
return true;
}
}
\ No newline at end of file
...@@ -202,6 +202,13 @@ function checkRequired() { ...@@ -202,6 +202,13 @@ function checkRequired() {
success = false; success = false;
} }
}); });
// $("[name=taxpayerNum]").on("blur",function (){
// var code = $(this).val();
// if(!checkSocialCreditCode(code)){
// showWarning($(this),"不是有效的纳税人识别号!");
// success = false;
// }
// });
return success; return success;
} }
......
...@@ -118,6 +118,12 @@ var REG = function(){ ...@@ -118,6 +118,12 @@ var REG = function(){
$("[name=password]").blur(); $("[name=password]").blur();
} }
}); });
$("[name=taxpayerNum]").on("blur",function (){
var code = $(this).val();
if(!checkSocialCreditCode(code)){
showWarning($(this),"不是有效的纳税人识别号!");
}
});
} }
return{ return{
init:function(){ init:function(){
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment