Browse Source

邮箱验证

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@324 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
suntg 11 years ago
parent
commit
94b13112ca

+ 19 - 5
src/main/java/com/uas/platform/b2b/controller/RegisterController.java

@@ -1,7 +1,5 @@
 package com.uas.platform.b2b.controller;
 
-import javax.servlet.http.HttpSession;
-
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpStatus;
@@ -54,12 +52,10 @@ public class RegisterController {
 	 */
 	@RequestMapping("/register.action")
 	public @ResponseBody
-	ResponseEntity<ModelMap> register(HttpSession session, String enterprise, FileUpload uploadItem) {
+	ResponseEntity<ModelMap> register(String enterprise, FileUpload uploadItem) {
 		HttpHeaders headers = new HttpHeaders();
 		headers.add("Content-Type", "application/json; charset=utf-8");
 		ModelMap map = new ModelMap();
-		System.out.println("enName--" + enterprise);
-		System.out.println("fileName--" + uploadItem.getFile().getOriginalFilename());
 		Enterprise newEnterprise = FlexJsonUtils.fromJson(enterprise, Enterprise.class);//需要把字符串转成Object
 		Attach attach = attachService.uploadAttach(uploadItem);//先保存上传到文件
 		if(attach == null){//文件过大
@@ -77,6 +73,24 @@ public class RegisterController {
 		}
 	}
 	
+	/**
+	 * 处理审核结果
+	 */
+	@RequestMapping(value = "/audit", method = RequestMethod.POST)
+	public @ResponseBody
+	ResponseEntity<ModelMap> aduit(Long uu, String result, String reason) {
+		HttpHeaders headers = new HttpHeaders();
+		headers.add("Content-Type", "application/json; charset=utf-8");
+		ModelMap map = new ModelMap();
+		String aduitReslt = enterpriseService.audit(uu, result, reason);
+		map.put("aduit", aduitReslt);
+		if(aduitReslt.equals("ALLOW") || aduitReslt.equals("NOTALLOW")) {
+			return new ResponseEntity<ModelMap>(map, headers, HttpStatus.OK);
+		} else {
+			return new ResponseEntity<ModelMap>(map, headers, HttpStatus.EXPECTATION_FAILED);
+		}
+	}
+	
 	/**
 	 * 手机号是否可用
 	 * @param tel

+ 2 - 0
src/main/java/com/uas/platform/b2b/dao/EnterpriseDao.java

@@ -11,4 +11,6 @@ public interface EnterpriseDao extends JpaRepository<Enterprise, Long> {
 	
 	public Enterprise findEnterpriseByEnBussinessCode(String enBussinessCode);
 	
+	public Enterprise findEnterpriseByUu(Long uu);
+	
 }

+ 5 - 5
src/main/java/com/uas/platform/b2b/model/Enterprise.java

@@ -127,7 +127,7 @@ public class Enterprise implements Serializable {
 	 * 注册时间
 	 */
 	@Column(name = "en_time")
-	private Date enTime;
+	private Date enDate;
 
 	/**
 	 * 管理员
@@ -269,12 +269,12 @@ public class Enterprise implements Serializable {
 		this.enUrl = enUrl;
 	}
 
-	public Date getEnTime() {
-		return enTime;
+	public Date getEnDate() {
+		return enDate;
 	}
 
-	public void setEnTime(Date enTime) {
-		this.enTime = enTime;
+	public void setEnDate(Date enDate) {
+		this.enDate = enDate;
 	}
 
 	public User getAdmin() {

+ 2 - 0
src/main/java/com/uas/platform/b2b/service/EnterpriseService.java

@@ -14,4 +14,6 @@ public interface EnterpriseService {
 	 * @return
 	 */
 	public HttpResponse sendToAduit(Enterprise enterprise);
+	
+	public String audit(Long uu, String result, String reason);
 }

+ 42 - 1
src/main/java/com/uas/platform/b2b/service/impl/EnterpriseServiceImpl.java

@@ -3,6 +3,7 @@ package com.uas.platform.b2b.service.impl;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
+import java.util.Map;
 
 import org.apache.http.HttpResponse;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -14,6 +15,8 @@ import com.uas.platform.b2b.model.Enterprise;
 import com.uas.platform.b2b.model.User;
 import com.uas.platform.b2b.service.EnterpriseService;
 import com.uas.platform.b2b.service.UserService;
+import com.uas.platform.b2b.support.SendMailService;
+import com.uas.platform.b2b.support.TokenService;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
@@ -27,6 +30,10 @@ public class EnterpriseServiceImpl implements EnterpriseService{
 	private UserService userService;
 	@Autowired
 	private UserDao userDao;
+	@Autowired
+	private TokenService tokenService;
+	@Autowired
+	private SendMailService sendMailService;
 	
 	@Override
 	public String bussinessCodeEnable(String code) {
@@ -45,7 +52,7 @@ public class EnterpriseServiceImpl implements EnterpriseService{
 		Enterprise en = enterpriseDao.findEnterpriseByEnBussinessCode(enterprise.getEnBussinessCode());
 		if(en == null && userService.isEmailUseable(enterprise.getEnAdminEmail()) && 
 				userService.isTelUseable(enterprise.getEnAdminTel())) {
-			enterprise.setEnTime(new Date());
+			enterprise.setEnDate(new Date());
 			enterprise.setEnable(Constant.NO);
 			Enterprise newEnterprise = enterpriseDao.save(enterprise);//保存enterprise
 			User user = new User();
@@ -76,4 +83,38 @@ public class EnterpriseServiceImpl implements EnterpriseService{
 		return response;
 	}
 
+	@Override
+	public String audit(Long uu, String result, String reason) {
+		Enterprise enterprise = enterpriseDao.findEnterpriseByUu(uu);
+		if(enterprise != null) {
+			if(result.equals("ALLOW")) {//审核通过
+				String encodeString = tokenService.getEncodeToken("enterprise", uu);
+				User admin = userDao.findUserByUserUU(enterprise.getEnAdminuu()).get(0);
+				Map<String, Object> model = new HashMap<String, Object>();
+				model.put("name", enterprise.getEnName());
+				model.put("email", admin.getUserEmail());
+				model.put("rootpath", "http://192.168.253.157:8081/platform-b2b/");
+				model.put("uu", enterprise.getUu());
+				model.put("checkcode", encodeString);
+				sendMailService.sendTemplateMail(admin.getUserEmail(),
+						"欢迎注册优软管理平台账号", model, "velocity/registerActive.vm");
+				return "ALLOW";
+			} else if(result.equals("NOTALLOW")) {//审核不通过
+				User admin = userDao.findUserByUserUU(enterprise.getEnAdminuu()).get(0);
+				enterpriseDao.delete(enterprise);//删除企业记录
+				userDao.delete(admin);//删除企业管理员记录
+				Map<String, Object> model = new HashMap<String, Object>();
+				model.put("name", enterprise.getEnName());
+				model.put("email", admin.getUserEmail());
+				model.put("reason", reason);
+				sendMailService.sendTemplateMail(enterprise.getEnAdminEmail(),
+						"很遗憾账号未能通过审核", model, "velocity/invalid.vm");
+				return "NOTALLOW";
+			} else {
+				return "审核结果参数出错";
+			}
+		}
+		return "找不到";
+	}
+
 }

+ 6 - 0
src/main/java/com/uas/platform/b2b/support/TokenService.java

@@ -23,6 +23,12 @@ public class TokenService {
 		return tokenDao.save(token);
 	}
 
+	/**
+	 * 获取并保存
+	 * @param userType
+	 * @param uu
+	 * @return
+	 */
 	public String getEncodeToken(String userType, Long uu) {
 		Token token = saveToken(new Token(userType, uu));
 		return Md5Utils.encode(uu, token.getId());