Parcourir la source

商务平台注册,允许管理员账户已存在

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@2261 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
yingp il y a 10 ans
Parent
commit
e0fac9fc77

+ 20 - 15
src/main/java/com/uas/platform/b2b/service/impl/EnterpriseServiceImpl.java

@@ -65,7 +65,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 	private CommonDao commonDao;
 
 	static final String TEL_REGEXP = "^[0]{1}[0-9]{2,3}-[0-9]{7,8}|((\\(\\d{3}\\))|(\\d{3}\\-))?(13|15|18)\\d{9}$";
-	
+
 	static final String ENUU_REGEXP = "^\\d{6,}$";
 
 	/**
@@ -89,7 +89,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 	@Override
 	public Enterprise registerEnterprise(Enterprise enterprise, Boolean isSaas) {
 		Enterprise en = enterpriseDao.findEnterpriseByEnBussinessCode(enterprise.getEnBussinessCode());
-		if (en == null && userService.isEmailUseable(enterprise.getEnAdminEmail()) && userService.isTelUseable(enterprise.getEnAdminTel())) {
+		if (en == null) {
 			enterprise.setEnDate(new Date());
 			enterprise.setEnable(Constant.NO);
 			if (isSaas != null && isSaas) {// 申请SAAS
@@ -101,16 +101,22 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 				enterprise.setEnSendStatus((short) Status.NOT_UPLOAD.value());// 上传状态设为未上传
 			}
 			Enterprise newEnterprise = enterpriseDao.save(enterprise);// 保存enterprise
-			User user = new User();
-			user.setUserName(enterprise.getEnAdminName());// 管理员姓名
-			if (StringUtils.isEmpty(enterprise.getEnAdminName())) {
-				user.setUserName("管理员");// 默认“管理员”
+			// 允许管理员账户已存在,添加对照关系
+			User user = userService.findUserByUserTel(enterprise.getEnAdminTel());
+			if (user == null) {
+				user = userService.findUserByUserEmail(enterprise.getEnAdminEmail());
+			}
+			if (user == null) {
+				user = new User();
+				user.setUserName(enterprise.getEnAdminName());// 管理员姓名
+				if (StringUtils.isEmpty(enterprise.getEnAdminName())) {
+					user.setUserName("管理员");// 默认“管理员”
+				}
+				user.setUserEmail(enterprise.getEnAdminEmail());
+				user.setUserTel(enterprise.getEnAdminTel());
+				user.setEnable(Constant.NO);
 			}
-			user.setUserEmail(enterprise.getEnAdminEmail());
-			user.setUserTel(enterprise.getEnAdminTel());
-			user.setEnterprises(new HashSet<Enterprise>());
 			user.addEnterprise(newEnterprise);// 添加userenterpris对应关系
-			user.setEnable(Constant.NO);
 			User newUser = userDao.save(user);// 保存user
 			newEnterprise.setEnAdminuu(newUser.getUserUU());// 设置管理员UU号
 			newEnterprise = enterpriseDao.save(newEnterprise);// 再次保存enterprise
@@ -426,8 +432,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 		model.put("saasUrl", enterprise.getEnSaasUrl());
 		try {
 			if (enterprise.getEnSaasStatus() != null && enterprise.getEnSaasStatus() == Status.UNACT.value()) {
-				sendMailService.sendTemplateMail(admin.getUserEmail(), "欢迎注册优软商务平台账号和SAAS服务", model,
-						"velocity/registerActivateSaas.vm");
+				sendMailService.sendTemplateMail(admin.getUserEmail(), "欢迎注册优软商务平台账号和SAAS服务", model, "velocity/registerActivateSaas.vm");
 			} else {
 				sendMailService.sendTemplateMail(admin.getUserEmail(), "欢迎注册优软商务平台账号", model, "velocity/registerActivate.vm");
 			}
@@ -550,9 +555,9 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 	}
 
 	@Override
-	public Page<Enterprise> getAllPageEnterprise(final PageInfo pageInfo ,String keyword) {
-		if(StringUtils.hasText(keyword)) {
-			if(keyword.matches(ENUU_REGEXP)) {// 输入企业UU号,按UU号查询
+	public Page<Enterprise> getAllPageEnterprise(final PageInfo pageInfo, String keyword) {
+		if (StringUtils.hasText(keyword)) {
+			if (keyword.matches(ENUU_REGEXP)) {// 输入企业UU号,按UU号查询
 				pageInfo.filter("uu", Long.parseLong(keyword));
 			} else {// 输入关键词不是UU号,按名称关键词查询
 				pageInfo.expression(PredicateUtils.like("enName", keyword, false));