hejq 8 лет назад
Родитель
Сommit
4ab071fd14

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

@@ -1,5 +1,7 @@
 package com.uas.platform.b2b.v2.service.impl;
 
+import com.uas.platform.b2b.dao.RoleDao;
+import com.uas.platform.b2b.model.Role;
 import com.uas.sso.entity.UserSpaceView;
 import com.uas.sso.entity.UserSpaceDetail;
 import com.uas.platform.b2b.dao.EnterpriseDao;
@@ -16,7 +18,9 @@ import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import java.util.Date;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 import java.util.logging.Logger;
 
 @Service("v2.EnterpriseService")
@@ -26,6 +30,8 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 	private EnterpriseDao enterpriseDao;
 	@Autowired
 	private UserDao userDao;
+	@Autowired
+	private RoleDao roleDao;
 
 	private final static CommBufferedLogger logger = BufferedLoggerManager.getLogger(CommBufferedLogger.class);
 
@@ -54,20 +60,10 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 		} else {
 			enterprise.setEnDate(new Date());
 		}
-//		enterprise.setEnEmail(detail.getAdmin().getEmail());
-//		enterprise.setEnFax(detail.getFax());
-//		enterprise.setEnIndustry(detail.getIndustry());
 		enterprise.setEnName(detail.getSpaceName());
-//		enterprise.setEnShortname(detail.getShortName());
-//		enterprise.setEnTel(detail.getAdmin().getMobile());
-//		enterprise.setEnType(detail.getType());
-//		enterprise.setEnUrl(detail.get());
 		enterprise.setLogUrl(detail.getLogoImage());
 		enterprise.setProfession(detail.getProfession());
 		enterprise.setTags(detail.getTags());
-//		enterprise.setContactMan(detail.getAdmin().getName());
-//		enterprise.setContactTel(detail.getAdmin().getMobile());
-//		enterprise.setContactEmail(detail.getAdmin().getEmail());
 		enterprise = enterpriseDao.save(enterprise);
 
 		// 把管理员添加进企业
@@ -76,6 +72,15 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 			user = new User(detail.getAdmin());
 		}
 		user.addEnterprise(enterprise);
+		// 将用户设置为管理员,只对用户的当前企业的角色进行修改
+		Set<Role> existRoles = new HashSet<Role>(); // 新用户注册企业时为空
+		if (!CollectionUtils.isEmpty(user.getRoles())) { // 老用户注册新企业
+			existRoles = user.getRoles();
+		}
+		// 设置为本企业管理员
+		List<Role> adminList = roleDao.findByEnUUAndDesc(enterprise.getUu(), "管理员");
+		existRoles.add(adminList.get(0));
+		user.setRoles(existRoles);
 		userDao.save(user);
 
 		if (isNew) {