Antiloveg 8 years ago
parent
commit
713dbc09f3

+ 27 - 3
src/main/java/com/goafanti/common/mapper/OrganizationPropertiesMapper.xml

@@ -213,9 +213,33 @@
   
   
   <select id="selectOrgProByUserId" parameterType="java.lang.String" resultMap="BaseResultMap">
-  	select  n.* from  organization_properties n INNER JOIN 
-    (select i.* from user u INNER JOIN organization_info i on u.id = i.uid) m
-     on m.id =n.oid  where m.uid=#{uid,jdbcType=VARCHAR}
+    select 
+    	op.id, 
+    	op.oid, 
+    	op.qualification, 
+    	op.turnover, 
+    	op.college_attribute, 
+    	op.college_establish_time, 
+    	op.academician, 
+        op.doctoral_tutor, 
+        op.master_tutor, 
+        op.other_expert, 
+        op.national_lab, 
+        op.education_lab, 
+        op.enterprise_center, 
+        op.other_center, 
+        op.institution_establish_time
+	from user u
+	LEFT JOIN organization_info oi on oi.uid = u.id
+	LEFT JOIN organization_properties op on op.oid = oi.id
+	where u.id = #{uid,jdbcType=VARCHAR}
+  </select>
+  
+  <select id="selectByOid" parameterType="java.lang.String" resultMap="BaseResultMap">
+  	 select 
+    <include refid="Base_Column_List" />
+    from organization_properties
+    where oid = #{oid,jdbcType=VARCHAR}
   </select>
  
 </mapper>

+ 5 - 0
src/main/java/com/goafanti/common/model/Admin.java

@@ -170,4 +170,9 @@ public class Admin extends BaseModel implements AftUser {
 	public String getAid() {
 		return null;
 	}
+
+	@Override
+	public Integer getType() {
+		return null;
+	}
 }

+ 2 - 0
src/main/java/com/goafanti/common/model/AftUser.java

@@ -12,5 +12,7 @@ public interface AftUser {
 	String getAid();
 
 	String getMobile();
+	
+	Integer getType();
 
 }

+ 11 - 3
src/main/java/com/goafanti/core/shiro/token/TokenManager.java

@@ -132,9 +132,10 @@ public class TokenManager {
 	 * 
 	 * @return
 	 */
-	/*public static Integer getProvince() {
-		return getToken() == null ? null : getToken().getProvince();
-	}*/
+	/*
+	 * public static Integer getProvince() { return getToken() == null ? null :
+	 * getToken().getProvince(); }
+	 */
 
 	/**
 	 * 获取验证码,获取一次后删除
@@ -220,5 +221,12 @@ public class TokenManager {
 	public static void clearUserAuthByUserId(String... userIds) {
 		realm.clearCachedAuthorizationInfo(userIds);
 	}
+	
+	/**
+	 * 获取UserType
+	 */
+	public static Integer getUserType() {
+		return getToken().getType();
+	}
 
 }

+ 0 - 23
src/main/java/com/goafanti/user/bo/UidAndTypeBo.java

@@ -1,23 +0,0 @@
-package com.goafanti.user.bo;
-
-public class UidAndTypeBo {
-	private String	uid;
-	private Integer	type;
-
-	public String getUid() {
-		return uid;
-	}
-
-	public void setUid(String uid) {
-		this.uid = uid;
-	}
-
-	public Integer getType() {
-		return type;
-	}
-
-	public void setType(Integer type) {
-		this.type = type;
-	}
-
-}

+ 26 - 74
src/main/java/com/goafanti/user/controller/UserApiController.java

@@ -62,7 +62,6 @@ import com.goafanti.user.bo.InputUserEdu;
 import com.goafanti.user.bo.InputUserIdentity;
 import com.goafanti.user.bo.OrgIdentityBo;
 import com.goafanti.user.bo.OrgProBo;
-import com.goafanti.user.bo.UidAndTypeBo;
 import com.goafanti.user.bo.UserIdentityBo;
 import com.goafanti.user.bo.UserInfoBo;
 import com.goafanti.user.service.OrgHumanResourceService;
@@ -226,7 +225,7 @@ public class UserApiController extends BaseApiController {
 				ui.setUid(TokenManager.getUserId());
 				userIdentityService.insert(ui);
 			} else {
-				if (StringUtils.isBlank(ui.getId())){
+				if (StringUtils.isBlank(ui.getId())) {
 					res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "认证信息ID"));
 					return res;
 				}
@@ -288,28 +287,9 @@ public class UserApiController extends BaseApiController {
 					UserInfoBoFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (res.getError().isEmpty()) {
-			User u = userService.selectByPrimaryKey(TokenManager.getUserId());
-			u.setNickname(userInfoBo.getNickname());
-			u.setEmail(userInfoBo.getEmail());
-			userService.updateByPrimaryKeySelective(u);
-
-			UserInfo ui = new UserInfo();
-			BeanUtils.copyProperties(userInfoBo, ui);
-			UserInfo info = userInfoService.selectUserInfoByUserId(TokenManager.getUserId());
-			if (null == info && StringUtils.isBlank(ui.getId())) {
-				ui.setId(UUID.randomUUID().toString());
-				ui.setUid(TokenManager.getUserId());
-				userInfoService.insert(ui);
-			} else {
-				if (StringUtils.isBlank(ui.getId())){
-					res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "个人资料ID"));
-					return res;
-				}
-				userInfoService.updateByPrimaryKeySelective(ui);
-			}
-		}
-		res.setData(userInfoBo);
+		UserInfo ui = new UserInfo();
+		BeanUtils.copyProperties(userInfoBo, ui);
+		userInfoService.saveUserInfo(userInfoBo);
 		return res;
 	}
 
@@ -330,13 +310,13 @@ public class UserApiController extends BaseApiController {
 
 		UserEdu ue = new UserEdu();
 		BeanUtils.copyProperties(userEdu, ue);
-		UserEdu u= userEduService.selectUserEduByUserId(TokenManager.getUserId());
+		UserEdu u = userEduService.selectUserEduByUserId(TokenManager.getUserId());
 		if (null == u && StringUtils.isBlank(ue.getId())) {
 			ue.setId(UUID.randomUUID().toString());
 			ue.setUid(TokenManager.getUserId());
 			userEduService.insert(ue);
 		} else {
-			if (StringUtils.isBlank(ue.getId())){
+			if (StringUtils.isBlank(ue.getId())) {
 				res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "教育信息ID"));
 				return res;
 			}
@@ -369,7 +349,7 @@ public class UserApiController extends BaseApiController {
 			uc.setUid(TokenManager.getUserId());
 			userCareerService.insert(uc);
 		} else {
-			if (StringUtils.isBlank(uc.getId())){
+			if (StringUtils.isBlank(uc.getId())) {
 				res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "职业信息ID"));
 				return res;
 			}
@@ -402,7 +382,7 @@ public class UserApiController extends BaseApiController {
 			ua.setUid(TokenManager.getUserId());
 			userAbilityService.insert(ua);
 		} else {
-			if (StringUtils.isBlank(ua.getId())){
+			if (StringUtils.isBlank(ua.getId())) {
 				res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "能力标签ID"));
 				return res;
 			}
@@ -426,18 +406,7 @@ public class UserApiController extends BaseApiController {
 					OrganizationIdentityFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		OrganizationIdentity oi = new OrganizationIdentity();
-		BeanUtils.copyProperties(orgIdentityBo, oi);
-		User u = userService.selectByPrimaryKey(TokenManager.getUserId());
-		u.setEmail(orgIdentityBo.getEmail());
-		userService.updateByPrimaryKeySelective(u);
-		if (StringUtils.isBlank(oi.getId())) {
-			oi.setId(UUID.randomUUID().toString());
-			oi.setUid(TokenManager.getUserId());
-			organizationIdentityService.insert(oi);
-		} else {
-			organizationIdentityService.updateByPrimaryKeySelective(oi);
-		}
+		organizationIdentityService.save(orgIdentityBo);
 		res.setData(orgIdentityBo);
 		return res;
 	}
@@ -485,7 +454,8 @@ public class UserApiController extends BaseApiController {
 
 		OrganizationTech ot = new OrganizationTech();
 		BeanUtils.copyProperties(orgTech, ot);
-		if (StringUtils.isBlank(ot.getId())) {
+		OrganizationTech o = organizationTechService.selectOrgTechByUserId(TokenManager.getUserId());
+		if (null == o && StringUtils.isBlank(ot.getId())) {
 			ot.setId(UUID.randomUUID().toString());
 			ot.setUid(TokenManager.getUserId());
 			organizationTechService.insert(ot);
@@ -505,14 +475,14 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/base", method = RequestMethod.GET)
 	public Result basic() {
 		Result res = new Result();
-		UidAndTypeBo ub = basicInfo(userService);
-		if (UserType.PERSONAL.getCode().equals(ub.getType())) {
-			UserIdentityBo u = userIdentityService.selectUserIdentityBoByUserId(ub.getUid());
+		if (UserType.PERSONAL.getCode().equals(TokenManager.getUserType())) {
+			UserIdentityBo u = userIdentityService.selectUserIdentityBoByUserId(TokenManager.getUserId());
 			res.setData(u);
 		} else {
-			OrgIdentityBo o = organizationIdentityService.selectOrgIdentityBoByUserId(ub.getUid());
+			OrgIdentityBo o = organizationIdentityService.selectOrgIdentityBoByUserId(TokenManager.getUserId());
 			res.setData(o);
 		}
+
 		return res;
 	}
 
@@ -522,13 +492,12 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/member", method = RequestMethod.GET)
 	public Result member() {
 		Result res = new Result();
-		UidAndTypeBo ub = basicInfo(userService);
-		if (UserType.PERSONAL.getCode().equals(ub.getType())) {
-			UserInfoBo u = userInfoService.selectUserInfoBoByUserId(ub.getUid());
+		if (UserType.PERSONAL.getCode().equals(TokenManager.getUserType())) {
+			UserInfoBo u = userInfoService.selectUserInfoBoByUserId(TokenManager.getUserId());
 			res.setData(u);
 		} else {
-			OrganizationInfo o = organizationInfoService.selectOrgInfoByUserId(ub.getUid());
-			OrganizationProperties p = organizationPropertiesService.selectOrgProByUserId(ub.getUid());
+			OrganizationInfo o = organizationInfoService.selectOrgInfoByUserId(TokenManager.getUserId());
+			OrganizationProperties p = organizationPropertiesService.selectOrgProByUserId(TokenManager.getUserId());
 			res.setData(new OrgProBo(o, p));
 		}
 		return res;
@@ -542,11 +511,8 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/educate", method = RequestMethod.GET)
 	public Result educate() {
 		Result res = new Result();
-		UidAndTypeBo ub = basicInfo(userService);
-		if (null != ub) {
-			UserEdu u = userEduService.selectUserEduByUserId(ub.getUid());
-			res.setData(u);
-		}
+		UserEdu u = userEduService.selectUserEduByUserId(TokenManager.getUserId());
+		res.setData(u);
 		return res;
 	}
 
@@ -558,12 +524,11 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/job", method = RequestMethod.GET)
 	public Result job() {
 		Result res = new Result();
-		UidAndTypeBo ub = basicInfo(userService);
-		if (UserType.PERSONAL.getCode().equals(ub.getType())) {
-			UserCareer u = userCareerService.selectUserCareerByUserId(ub.getUid());
+		if (UserType.PERSONAL.getCode().equals(TokenManager.getUserType())) {
+			UserCareer u = userCareerService.selectUserCareerByUserId(TokenManager.getUserId());
 			res.setData(u);
 		} else {
-			OrganizationTech o = organizationTechService.selectOrgTechByUserId(ub.getUid());
+			OrganizationTech o = organizationTechService.selectOrgTechByUserId(TokenManager.getUserId());
 			res.setData(o);
 		}
 		return res;
@@ -577,11 +542,8 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/ability", method = RequestMethod.GET)
 	public Result ability() {
 		Result res = new Result();
-		UidAndTypeBo ub = basicInfo(userService);
-		if (null != ub) {
-			UserAbility u = userAbilityService.selectUserAbilityByUserId(ub.getUid());
-			res.setData(u);
-		}
+		UserAbility u = userAbilityService.selectUserAbilityByUserId(TokenManager.getUserId());
+		res.setData(u);
 		return res;
 	}
 
@@ -900,16 +862,6 @@ public class UserApiController extends BaseApiController {
 		return res;
 	}
 
-	private UidAndTypeBo basicInfo(UserService userService) {
-		User u = userService.selectByPrimaryKey(TokenManager.getUserId());
-		UidAndTypeBo ub = new UidAndTypeBo();
-		if (null != u) {
-			ub.setType(u.getType());
-			ub.setUid(u.getId());
-		}
-		return ub;
-	}
-
 	// 判断用户是否通过认证
 	private Result checkCertify(Result res) {
 		OrganizationIdentity o = organizationIdentityService.selectOrgIdentityByUserId(TokenManager.getUserId());

+ 2 - 0
src/main/java/com/goafanti/user/service/OrganizationIdentityService.java

@@ -50,4 +50,6 @@ public interface OrganizationIdentityService {
 
 	OrgIdentityDetailAdmin selectOrgIdentityDetailByUserIdAdmin(String uid);
 
+	void save(OrgIdentityBo orgIdentityBo);
+
 }

+ 2 - 0
src/main/java/com/goafanti/user/service/UserInfoService.java

@@ -13,5 +13,7 @@ public interface UserInfoService {
 
 	UserInfoBo selectUserInfoBoByUserId(String uid);
 
+	void saveUserInfo(UserInfoBo userInfoBo);
+
 
 }

+ 18 - 0
src/main/java/com/goafanti/user/service/impl/OrganizationIdentityServiceImpl.java

@@ -359,4 +359,22 @@ public class OrganizationIdentityServiceImpl extends BaseMybatisDao<Organization
 		}
 	}
 
+	@Override
+	public void save(OrgIdentityBo orgIdentityBo) {
+		OrganizationIdentity oi = new OrganizationIdentity();
+		BeanUtils.copyProperties(orgIdentityBo, oi);
+		User u = userMapper.selectByPrimaryKey(TokenManager.getUserId());
+		u.setEmail(orgIdentityBo.getEmail());
+		userMapper.updateByPrimaryKeySelective(u);
+		OrganizationIdentity o = organizationIdentityMapper.selectOrgIdentityByUserId(TokenManager.getUserId());
+		if (null == o && StringUtils.isBlank(oi.getId())) {
+			oi.setId(UUID.randomUUID().toString());
+			oi.setUid(TokenManager.getUserId());
+			organizationIdentityMapper.insert(oi);
+		} else if (null != o && StringUtils.isNotBlank(oi.getId())){
+			organizationIdentityMapper.updateByPrimaryKeySelective(oi);
+		}
+		
+	}
+
 }

+ 6 - 4
src/main/java/com/goafanti/user/service/impl/OrganizationInfoServiceImpl.java

@@ -38,19 +38,21 @@ public class OrganizationInfoServiceImpl implements OrganizationInfoService {
 
 	@Override
 	public int insertInfoAndPro(OrganizationInfo oi, OrganizationProperties op) {
-		if (StringUtils.isBlank(oi.getId())) {
+		OrganizationInfo o = organizationInfoMapper.selectOrgInfoByUserId(TokenManager.getUserId());
+		if (null == o && StringUtils.isBlank(oi.getId())) {
 			oi.setId(UUID.randomUUID().toString());
 			oi.setUid(TokenManager.getUserId());
 			organizationInfoMapper.insert(oi);
-		} else {
+		} else if (null != o && StringUtils.isNotBlank(oi.getId())) {
 			organizationInfoMapper.updateByPrimaryKeySelective(oi);
 		}
 
-		if (StringUtils.isBlank(op.getId())) {
+		OrganizationProperties oo = organizationPropertiesMapper.selectByOid(oi.getId());
+		if (null == oo && StringUtils.isBlank(op.getId())) {
 			op.setId(UUID.randomUUID().toString());
 			op.setOid(oi.getId());
 			organizationPropertiesMapper.insert(op);
-		} else {
+		} else if (null != oo && StringUtils.isNotBlank(op.getId())) {
 			organizationPropertiesMapper.updateByPrimaryKeySelective(op);
 		}
 		return 1;

+ 34 - 3
src/main/java/com/goafanti/user/service/impl/UserInfoServiceImpl.java

@@ -1,16 +1,28 @@
 package com.goafanti.user.service.impl;
 
+import java.util.UUID;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.goafanti.common.dao.UserInfoMapper;
+import com.goafanti.common.dao.UserMapper;
+import com.goafanti.common.model.User;
 import com.goafanti.common.model.UserInfo;
+import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.user.bo.UserInfoBo;
 import com.goafanti.user.service.UserInfoService;
+
 @Service
-public class UserInfoServiceImpl implements UserInfoService{
-    @Autowired
-    UserInfoMapper userInfoMapper;
+public class UserInfoServiceImpl implements UserInfoService {
+	@Autowired
+	UserInfoMapper	userInfoMapper;
+
+	@Autowired
+	UserMapper		userMapper;
+
 	@Override
 	public UserInfo insert(UserInfo userInfo) {
 		userInfoMapper.insert(userInfo);
@@ -32,5 +44,24 @@ public class UserInfoServiceImpl implements UserInfoService{
 		return userInfoMapper.selectUserInfoBoByUserId(uid);
 	}
 
+	@Override
+	public void saveUserInfo(UserInfoBo userInfoBo) {
+		User u = userMapper.selectByPrimaryKey(TokenManager.getUserId());
+		u.setNickname(userInfoBo.getNickname());
+		u.setEmail(userInfoBo.getEmail());
+		userMapper.updateByPrimaryKeySelective(u);
+
+		UserInfo ui = new UserInfo();
+		BeanUtils.copyProperties(userInfoBo, ui);
+
+		UserInfo info = userInfoMapper.selectUserInfoByUserId(TokenManager.getUserId());
+		if (null == info && StringUtils.isBlank(ui.getId())) {
+			ui.setId(UUID.randomUUID().toString());
+			ui.setUid(TokenManager.getUserId());
+			userInfoMapper.insert(ui);
+		} else if (null != info && StringUtils.isNotBlank(ui.getId()) && info.getId().equals(ui.getId())) {
+			userInfoMapper.updateByPrimaryKeySelective(ui);
+		}
+	}
 
 }