diff --git a/cloud/autho/src/main/resources/mapper/UserMapper.xml b/cloud/autho/src/main/resources/mapper/UserMapper.xml
index fbb748a..61e206a 100644
--- a/cloud/autho/src/main/resources/mapper/UserMapper.xml
+++ b/cloud/autho/src/main/resources/mapper/UserMapper.xml
@@ -8,7 +8,7 @@
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java b/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java
index 30ac230..9d4bbe8 100644
--- a/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/Swagger2.java
@@ -36,7 +36,7 @@ public class Swagger2 {
.enableUrlTemplating(true)
.select()
// 扫描所有有注解的api,用这种方式更灵活
- .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
+ .apis(RequestHandlerSelectors.basePackage("com.sincere.userSearch.control"))
.paths(PathSelectors.any())
.build().globalOperationParameters(pars);
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java b/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java
index d133d8c..019b7be 100644
--- a/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/controller/UserController.java
@@ -1,15 +1,24 @@
package com.sincere.userSearch.controller;
+import com.sincere.common.exception.ResultException;
+import com.sincere.common.util.TokenUtils;
+import com.sincere.userSearch.model.StudentInfo;
import com.sincere.userSearch.service.UserService;
import com.sincere.userSearch.vo.BaseVo;
import com.sincere.userSearch.vo.UserInfo;
+import com.sincere.userSearch.vo.rep.Info;
import com.sincere.userSearch.vo.rep.ZnxwRepVo;
+import com.sincere.userSearch.vo.req.UserInfoReqVo;
import com.sincere.userSearch.vo.req.ZnxwReqVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.List;
+
@RestController
@RequestMapping("/user")
@Api(value = "用户中心")
@@ -23,28 +32,47 @@ public class UserController {
*/
@ApiOperation("获取智能校卫agentid")
@RequestMapping(value = "getZNXWWebApp" , method = RequestMethod.POST)
- public BaseVo getZNXWWebApp(@RequestBody ZnxwReqVo znxwReqVo , UserInfo userInfo){
+ public BaseVo getZNXWWebApp(@RequestBody ZnxwReqVo znxwReqVo){
BaseVo result = new BaseVo<>() ;
ZnxwRepVo data = userService.selectAgentId(znxwReqVo) ;
result.setData(data);
return result ;
}
-
- public void getUserRole(){
-
- }
-
/**
* 用户类型 0-班主任; 1-任课老师; 2-学生; 3-家长; 10-学校管理员;
*/
@ApiOperation("根据userId 获取用户信息")
- @RequestMapping(value = "getUserInfo" , method = RequestMethod.GET)
- public String getUserInfo(UserInfo userInfo){
- return userInfo.getUserId() ;
+ @RequestMapping(value = "getUserInfo" , method = RequestMethod.POST)
+ public BaseVo getUserInfo(@RequestBody UserInfoReqVo userInfoReqVo , HttpServletRequest request){
+ String userId = getToken(request) ;
+ BaseVo result = new BaseVo<>() ;
+ Info info = new Info() ;
+ if(userInfoReqVo.getUserType() == 2){
+ //学生
+ List studentInfos = new ArrayList<>();
+ studentInfos.add(userService.selectStudentInfo(userId));
+ info.setStudentInfos(studentInfos);
+ }else if(userInfoReqVo.getUserType() == 3){
+ //家长
+ info.setParentInfos(userService.selectParentInfo(userId));
+ }else {
+ //教师
+ info.setTeacherInfos(userService.selectTeacherInfo(userId));
+ }
+ result.setData(info);
+ return result ;
}
- public void getUserId(){
+ private String getToken(HttpServletRequest request){
+ String token = request.getHeader("X-Authorization");
+ try{
+ String userId = TokenUtils.validToken(token) ;
+ return userId ;
+ }catch (ResultException e){
+ System.out.println(e.getMessage());
+ }
+ return null ;
}
}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java b/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java
index 5cf1255..4d709ff 100644
--- a/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/mapper/UserMapper.java
@@ -1,4 +1,17 @@
package com.sincere.userSearch.mapper;
+import com.sincere.userSearch.model.StudentInfo;
+import com.sincere.userSearch.model.TeacherInfo;
+
+import java.util.List;
+
public interface UserMapper {
+
+ List selectTeacherInfo(String userId) ;
+
+ StudentInfo selectStudentInfo(String userId) ;
+
+ StudentInfo selectParentInfo(int studentId) ;
+
+ List selectChildrenId(String userId) ;
}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/model/StudentInfo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/model/StudentInfo.java
new file mode 100644
index 0000000..db1321d
--- /dev/null
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/model/StudentInfo.java
@@ -0,0 +1,141 @@
+package com.sincere.userSearch.model;
+
+public class StudentInfo {
+
+ private String userId ;
+ private int studentId ;
+ private String studentName ;
+ private int schoolId ;
+ private String schoolName ;
+ private String face ;
+ private String pass ;
+ private String otherName ;
+ private String studentCode ;
+ private int classId ;
+ private String className ;
+
+ private String parentUserId ;
+ private String parentMobile ;
+ private String parentPass ;
+ private String parentName ;
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+
+ public int getStudentId() {
+ return studentId;
+ }
+
+ public void setStudentId(int studentId) {
+ this.studentId = studentId;
+ }
+
+ public String getStudentName() {
+ return studentName;
+ }
+
+ public void setStudentName(String studentName) {
+ this.studentName = studentName;
+ }
+
+ public int getSchoolId() {
+ return schoolId;
+ }
+
+ public void setSchoolId(int schoolId) {
+ this.schoolId = schoolId;
+ }
+
+ public String getSchoolName() {
+ return schoolName;
+ }
+
+ public void setSchoolName(String schoolName) {
+ this.schoolName = schoolName;
+ }
+
+ public String getFace() {
+ return face;
+ }
+
+ public void setFace(String face) {
+ this.face = face;
+ }
+
+ public String getPass() {
+ return pass;
+ }
+
+ public void setPass(String pass) {
+ this.pass = pass;
+ }
+
+ public String getOtherName() {
+ return otherName;
+ }
+
+ public void setOtherName(String otherName) {
+ this.otherName = otherName;
+ }
+
+ public String getStudentCode() {
+ return studentCode;
+ }
+
+ public void setStudentCode(String studentCode) {
+ this.studentCode = studentCode;
+ }
+
+ public int getClassId() {
+ return classId;
+ }
+
+ public void setClassId(int classId) {
+ this.classId = classId;
+ }
+
+ public String getClassName() {
+ return className;
+ }
+
+ public void setClassName(String className) {
+ this.className = className;
+ }
+
+ public String getParentUserId() {
+ return parentUserId;
+ }
+
+ public void setParentUserId(String parentUserId) {
+ this.parentUserId = parentUserId;
+ }
+
+ public String getParentMobile() {
+ return parentMobile;
+ }
+
+ public void setParentMobile(String parentMobile) {
+ this.parentMobile = parentMobile;
+ }
+
+ public String getParentPass() {
+ return parentPass;
+ }
+
+ public void setParentPass(String parentPass) {
+ this.parentPass = parentPass;
+ }
+
+ public String getParentName() {
+ return parentName;
+ }
+
+ public void setParentName(String parentName) {
+ this.parentName = parentName;
+ }
+}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/model/TeacherClassInfo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/model/TeacherClassInfo.java
new file mode 100644
index 0000000..df97bbe
--- /dev/null
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/model/TeacherClassInfo.java
@@ -0,0 +1,77 @@
+package com.sincere.userSearch.model;
+
+public class TeacherClassInfo {
+
+ private int classId ;
+ private String className ;
+ private String subjectId ;
+ private String subjectName ;
+ private int userType ;
+ private int teacherId ;
+ private String grade ;
+ private String gradeName ;
+
+ public int getClassId() {
+ return classId;
+ }
+
+ public void setClassId(int classId) {
+ this.classId = classId;
+ }
+
+ public String getClassName() {
+ return className;
+ }
+
+ public void setClassName(String className) {
+ this.className = className;
+ }
+
+ public String getSubjectId() {
+ return subjectId;
+ }
+
+ public void setSubjectId(String subjectId) {
+ this.subjectId = subjectId;
+ }
+
+ public String getSubjectName() {
+ return subjectName;
+ }
+
+ public void setSubjectName(String subjectName) {
+ this.subjectName = subjectName;
+ }
+
+ public int getUserType() {
+ return userType;
+ }
+
+ public void setUserType(int userType) {
+ this.userType = userType;
+ }
+
+ public int getTeacherId() {
+ return teacherId;
+ }
+
+ public void setTeacherId(int teacherId) {
+ this.teacherId = teacherId;
+ }
+
+ public String getGrade() {
+ return grade;
+ }
+
+ public void setGrade(String grade) {
+ this.grade = grade;
+ }
+
+ public String getGradeName() {
+ return gradeName;
+ }
+
+ public void setGradeName(String gradeName) {
+ this.gradeName = gradeName;
+ }
+}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/model/TeacherInfo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/model/TeacherInfo.java
new file mode 100644
index 0000000..eb21a8b
--- /dev/null
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/model/TeacherInfo.java
@@ -0,0 +1,79 @@
+package com.sincere.userSearch.model;
+
+import java.util.List;
+
+public class TeacherInfo {
+
+ private String userId ;
+ private String userName ;
+ private String mobile ;
+ private int schoolId ;
+ private String schoolName ;
+ private String face ;
+ private String pass ;
+ private List classInfos ;
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ public String getMobile() {
+ return mobile;
+ }
+
+ public void setMobile(String mobile) {
+ this.mobile = mobile;
+ }
+
+ public int getSchoolId() {
+ return schoolId;
+ }
+
+ public void setSchoolId(int schoolId) {
+ this.schoolId = schoolId;
+ }
+
+ public String getSchoolName() {
+ return schoolName;
+ }
+
+ public void setSchoolName(String schoolName) {
+ this.schoolName = schoolName;
+ }
+
+ public String getFace() {
+ return face;
+ }
+
+ public void setFace(String face) {
+ this.face = face;
+ }
+
+ public List getClassInfos() {
+ return classInfos;
+ }
+
+ public void setClassInfos(List classInfos) {
+ this.classInfos = classInfos;
+ }
+
+ public String getPass() {
+ return pass;
+ }
+
+ public void setPass(String pass) {
+ this.pass = pass;
+ }
+}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java b/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java
index c9fcea8..6ce9c18 100644
--- a/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/service/UserService.java
@@ -1,10 +1,20 @@
package com.sincere.userSearch.service;
+import com.sincere.userSearch.model.StudentInfo;
+import com.sincere.userSearch.model.TeacherInfo;
import com.sincere.userSearch.vo.rep.ZnxwRepVo;
import com.sincere.userSearch.vo.req.ZnxwReqVo;
+import java.util.List;
+
public interface UserService {
ZnxwRepVo selectAgentId(ZnxwReqVo znxwReqVo);
+ List selectTeacherInfo(String userId) ;
+
+ StudentInfo selectStudentInfo(String userId) ;
+
+ List selectParentInfo(String userId) ;
+
}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java b/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java
index 37634b8..00cb709 100644
--- a/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/service/impl/UserServiceImpl.java
@@ -1,20 +1,72 @@
package com.sincere.userSearch.service.impl;
import com.sincere.userSearch.mapper.QyhApplyMapper;
+import com.sincere.userSearch.mapper.UserMapper;
+import com.sincere.userSearch.model.StudentInfo;
+import com.sincere.userSearch.model.TeacherClassInfo;
+import com.sincere.userSearch.model.TeacherInfo;
import com.sincere.userSearch.service.UserService;
import com.sincere.userSearch.vo.rep.ZnxwRepVo;
import com.sincere.userSearch.vo.req.ZnxwReqVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.List;
+
@Service
public class UserServiceImpl implements UserService {
@Autowired
QyhApplyMapper qyhApplyMapper ;
+ @Autowired
+ UserMapper userMapper ;
+
@Override
public ZnxwRepVo selectAgentId(ZnxwReqVo znxwReqVo) {
return qyhApplyMapper.selectAgentId(znxwReqVo);
}
+
+ @Override
+ public List selectTeacherInfo(String userId) {
+ List teacherInfos = userMapper.selectTeacherInfo(userId);
+ for(TeacherInfo teacherInfo : teacherInfos ){
+ List teacherClassInfos = new ArrayList<>() ;
+ for(TeacherClassInfo classInfo : teacherInfo.getClassInfos()){
+ if(classInfo.getClassId() != 0){
+ teacherClassInfos.add(classInfo);
+ }
+ }
+ teacherInfo.setClassInfos(teacherClassInfos);
+ }
+ return teacherInfos ;
+ }
+
+ @Override
+ public StudentInfo selectStudentInfo(String userId) {
+ StudentInfo studentInfo = userMapper.selectStudentInfo(userId);
+ if(studentInfo != null){
+ StudentInfo parent = userMapper.selectParentInfo(studentInfo.getStudentId()) ;
+ studentInfo.setParentMobile(parent.getParentMobile());
+ studentInfo.setParentName(parent.getParentName());
+ studentInfo.setParentPass(parent.getParentPass());
+ studentInfo.setParentUserId(parent.getParentUserId());
+ return studentInfo ;
+ }
+ return null ;
+ }
+
+ @Override
+ public List selectParentInfo(String userId) {
+ List children = userMapper.selectChildrenId(userId) ;
+ List patentInfo = new ArrayList<>();
+ for(String child : children){
+ StudentInfo studentInfo = selectStudentInfo(child);
+ if(studentInfo != null){
+ patentInfo.add(studentInfo);
+ }
+ }
+ return patentInfo;
+ }
}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/Info.java b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/Info.java
new file mode 100644
index 0000000..e715d8c
--- /dev/null
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/rep/Info.java
@@ -0,0 +1,37 @@
+package com.sincere.userSearch.vo.rep;
+
+import com.sincere.userSearch.model.StudentInfo;
+import com.sincere.userSearch.model.TeacherInfo;
+
+import java.util.List;
+
+public class Info {
+
+ private List teacherInfos ;
+ private List parentInfos ;
+ private List studentInfos ;
+
+ public List getTeacherInfos() {
+ return teacherInfos;
+ }
+
+ public void setTeacherInfos(List teacherInfos) {
+ this.teacherInfos = teacherInfos;
+ }
+
+ public List getParentInfos() {
+ return parentInfos;
+ }
+
+ public void setParentInfos(List parentInfos) {
+ this.parentInfos = parentInfos;
+ }
+
+ public List getStudentInfos() {
+ return studentInfos;
+ }
+
+ public void setStudentInfos(List studentInfos) {
+ this.studentInfos = studentInfos;
+ }
+}
diff --git a/cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/UserInfoReqVo.java b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/UserInfoReqVo.java
new file mode 100644
index 0000000..364649a
--- /dev/null
+++ b/cloud/user_search/src/main/java/com/sincere/userSearch/vo/req/UserInfoReqVo.java
@@ -0,0 +1,13 @@
+package com.sincere.userSearch.vo.req;
+
+public class UserInfoReqVo {
+ private int userType ; // 2:学生;3:家长;其他都是老师
+
+ public int getUserType() {
+ return userType;
+ }
+
+ public void setUserType(int userType) {
+ this.userType = userType;
+ }
+}
diff --git a/cloud/user_search/src/main/resources/mapper/UserMapper.xml b/cloud/user_search/src/main/resources/mapper/UserMapper.xml
index 81a2ca6..2b7b1f2 100644
--- a/cloud/user_search/src/main/resources/mapper/UserMapper.xml
+++ b/cloud/user_search/src/main/resources/mapper/UserMapper.xml
@@ -2,13 +2,75 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
--
libgit2 0.21.0