Quellcode durchsuchen

修改手机号判定

koul vor 7 Jahren
Ursprung
Commit
c5ad08805f

+ 44 - 34
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/wxschool/basic/service/impl/WxUserServiceImpl.java

@@ -220,21 +220,26 @@ public class WxUserServiceImpl implements WxUserService {
 		if (ObjectUtils.isNotEmpty(teacherClazzDOS)){
 			for (TeacherClazzDO tc:teacherClazzDOS) {
 				ClazzDO clazzDO = clazzMapper.get(tc.getClazzId());
-				Map<String, Object> clazzMap = JavaBeanUtil.object2Map(clazzDO);
-				clazzMap.put("gradeName",gradeMapper.get(clazzDO.getGradeId()).getGradeName());
-				Map<String, Object> map = new HashMap<>();
-				map.put("clazzId",clazzDO.getClazzId());
-				List<StudentDO> studentDOS = studentMapper.list(map);
-				List<TeacherClazzDO> list = teacherClazzMapper.list(map);
-				List<TeacherDO> teacherDOS = new ArrayList<>();
-				for (TeacherClazzDO teacherClazzDO:list) {
-					TeacherDO teacherDO = teacherMapper.get(teacherClazzDO.getTeacherId());
-					teacherDO.setUserPhone(userMapper.get(teacherDO.getUserId()).getUserPhone());
-					teacherDOS.add(teacherDO);
+				if (ObjectUtils.isNotEmpty(clazzDO)){
+					Map<String, Object> clazzMap = JavaBeanUtil.object2Map(clazzDO);
+					clazzMap.put("gradeName",gradeMapper.get(clazzDO.getGradeId()).getGradeName());
+					Map<String, Object> map = new HashMap<>();
+					map.put("clazzId",clazzDO.getClazzId());
+					List<StudentDO> studentDOS = studentMapper.list(map);
+					List<TeacherClazzDO> list = teacherClazzMapper.list(map);
+					if (ObjectUtils.isNotEmpty(studentDOS)){
+						List<TeacherDO> teacherDOS = new ArrayList<>();
+						for (TeacherClazzDO teacherClazzDO:list) {
+							TeacherDO teacherDO = teacherMapper.get(teacherClazzDO.getTeacherId());
+							teacherDO.setUserPhone(userMapper.get(teacherDO.getUserId()).getUserPhone());
+							teacherDOS.add(teacherDO);
+						}
+						clazzMap.put("studentDOS",removeDuplicate(studentDOS));
+						clazzMap.put("teacherDOS",removeDuplicate(teacherDOS));
+						maps.add(clazzMap);
+					}
 				}
-				clazzMap.put("studentDOS",removeDuplicate(studentDOS));
-				clazzMap.put("teacherDOS",removeDuplicate(teacherDOS));
-				maps.add(clazzMap);
+
 			}
 			return maps;
 		}else {
@@ -410,25 +415,14 @@ public class WxUserServiceImpl implements WxUserService {
 	 * @throws Exception
 	 */
 	public int updatePhone(String userPhone, String openid, String code) throws Exception {
-		Map<String, Object> map = new HashMap<>();
-		map.put("openid",openid);
-		List<ParentsDO> parentsDOS = parentsMapper.list(map);
-		List<TeacherDO> teacherDOS = teacherMapper.list(map);
-		if (ObjectUtils.isNotEmpty(parentsDOS)){
-			UserDO userDO = userMapper.get(parentsDOS.get(0).getUserId());
-			if (ObjectUtils.isNotEmpty(userDO)) {
-				if (code.equals(userDO.getUserCode())) {
-					userDO.setUserPhone(userPhone);
-					return userMapper.update(userDO);
-				}else {
-					throw new Exception("验证码错误,请核实");
-				}
-			}else {
-				throw new Exception("用户不存在,请联系管理员");
-			}
-		}else {
-			if (ObjectUtils.isNotEmpty(teacherDOS)){
-				UserDO userDO = userMapper.get(teacherDOS.get(0).getUserId());
+		UserDO user = userMapper.selectUserByPhone(userPhone);
+		if (ObjectUtils.isEmpty(user)){
+			Map<String, Object> map = new HashMap<>();
+			map.put("openid",openid);
+			List<ParentsDO> parentsDOS = parentsMapper.list(map);
+			List<TeacherDO> teacherDOS = teacherMapper.list(map);
+			if (ObjectUtils.isNotEmpty(parentsDOS)){
+				UserDO userDO = userMapper.get(parentsDOS.get(0).getUserId());
 				if (ObjectUtils.isNotEmpty(userDO)) {
 					if (code.equals(userDO.getUserCode())) {
 						userDO.setUserPhone(userPhone);
@@ -440,8 +434,24 @@ public class WxUserServiceImpl implements WxUserService {
 					throw new Exception("用户不存在,请联系管理员");
 				}
 			}else {
-				throw new Exception("用户不存在,请联系管理员");
+				if (ObjectUtils.isNotEmpty(teacherDOS)){
+					UserDO userDO = userMapper.get(teacherDOS.get(0).getUserId());
+					if (ObjectUtils.isNotEmpty(userDO)) {
+						if (code.equals(userDO.getUserCode())) {
+							userDO.setUserPhone(userPhone);
+							return userMapper.update(userDO);
+						}else {
+							throw new Exception("验证码错误,请核实");
+						}
+					}else {
+						throw new Exception("用户不存在,请联系管理员");
+					}
+				}else {
+					throw new Exception("用户不存在,请联系管理员");
+				}
 			}
+		}else {
+			throw new Exception("该手机号已绑定用户,请联系管理员");
 		}
 	}