deason 5 ani în urmă
părinte
comite
2e62825be0
100 a modificat fișierele cu 4411 adăugiri și 2 ștergeri
  1. 12 0
      .gitignore
  2. 0 2
      README.md
  3. 25 0
      examcloud-core-basic-api-client/pom.xml
  4. 27 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/AbstractCloudClientSupport.java
  5. 18 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/AuthCloudServiceClient.java
  6. 42 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/CourseCloudServiceClient.java
  7. 25 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/DemoCloudServiceClient.java
  8. 39 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/FaceCloudServiceClient.java
  9. 48 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/OrgCloudServiceClient.java
  10. 35 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/RolePrivilegeCloudServiceClient.java
  11. 56 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/StudentCloudServiceClient.java
  12. 28 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/SystemPropertyCloudServiceClient.java
  13. 47 0
      examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/UserCloudServiceClient.java
  14. 19 0
      examcloud-core-basic-api/pom.xml
  15. 25 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/AuthCloudService.java
  16. 46 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/CourseCloudService.java
  17. 17 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/DemoCloudService.java
  18. 47 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/FaceCloudService.java
  19. 31 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/OrgCloudService.java
  20. 25 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/RolePrivilegeCloudService.java
  21. 80 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/StudentCloudService.java
  22. 22 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/SystemPropertyCloudService.java
  23. 59 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/UserCloudService.java
  24. 69 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/CourseBean.java
  25. 76 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/FacesetBean.java
  26. 74 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/OrgBean.java
  27. 79 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/RoleBean.java
  28. 167 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/StudentBean.java
  29. 75 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/StudentFaceBean.java
  30. 135 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/UserBean.java
  31. 68 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/AddUserReq.java
  32. 19 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/CountStudentReq.java
  33. 59 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/DeleteRoleReq.java
  34. 19 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetAllOrgPropertiesReq.java
  35. 49 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetAllUsersByRoleReq.java
  36. 50 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetCourseReq.java
  37. 21 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetCoursesByIdListReq.java
  38. 29 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgListByNameLikeReq.java
  39. 39 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgPropertyReq.java
  40. 39 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgReq.java
  41. 21 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgsByIdListReq.java
  42. 49 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgsReq.java
  43. 29 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetPrivilegeListReq.java
  44. 26 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetStudentFaceReq.java
  45. 74 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetStudentReq.java
  46. 19 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetSystemPropertyReq.java
  47. 19 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetUsableFacesetListReq.java
  48. 31 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetUserListByIdsReq.java
  49. 39 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetUserReq.java
  50. 33 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetXxxReq.java
  51. 36 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/LoginReq.java
  52. 84 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveCourseReq.java
  53. 116 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveOrgReq.java
  54. 46 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveRoleReq.java
  55. 96 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveStudentFaceReq.java
  56. 154 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveStudentReq.java
  57. 29 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SetSystemPropertyReq.java
  58. 39 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/UnbindStudentCodeReq.java
  59. 49 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/UpdatePasswordReq.java
  60. 48 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/UpdateStudentStatusReq.java
  61. 26 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/AddUserResp.java
  62. 19 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/CountStudentResp.java
  63. 23 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/DeleteRoleResp.java
  64. 21 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetAllOrgPropertiesResp.java
  65. 32 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetAllUsersByRoleResp.java
  66. 27 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetCourseResp.java
  67. 22 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetCoursesByIdListResp.java
  68. 22 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgListByNameLikeResp.java
  69. 19 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgPropertyResp.java
  70. 20 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgResp.java
  71. 22 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgsByIdListResp.java
  72. 32 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgsResp.java
  73. 21 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetPrivilegeListResp.java
  74. 34 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetStudentFaceResp.java
  75. 20 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetStudentResp.java
  76. 29 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetSystemPropertyResp.java
  77. 22 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetUsableFacesetListResp.java
  78. 22 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetUserListByIdsResp.java
  79. 30 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetUserResp.java
  80. 23 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetXxxResp.java
  81. 20 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/LoginResp.java
  82. 20 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveCourseResp.java
  83. 25 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveOrgResp.java
  84. 20 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveRoleResp.java
  85. 29 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveStudentFaceResp.java
  86. 59 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveStudentResp.java
  87. 29 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SetSystemPropertyResp.java
  88. 21 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/UnbindStudentCodeResp.java
  89. 9 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/UpdatePasswordResp.java
  90. 9 0
      examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/UpdateStudentStatusResp.java
  91. 25 0
      examcloud-core-examwork-api-client/pom.xml
  92. 30 0
      examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/AbstractCloudClientSupport.java
  93. 141 0
      examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/ExamCloudServiceClient.java
  94. 56 0
      examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/ExamStudentCloudServiceClient.java
  95. 38 0
      examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/NoticeCloudServiceClient.java
  96. 18 0
      examcloud-core-examwork-api/pom.xml
  97. 198 0
      examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/ExamCloudService.java
  98. 78 0
      examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/ExamStudentCloudService.java
  99. 23 0
      examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/NoticeCloudService.java
  100. 200 0
      examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/bean/ExamBean.java

+ 12 - 0
.gitignore

@@ -0,0 +1,12 @@
+.project
+.classpath
+.settings
+target/
+.idea/
+*.iml
+*test/
+# Package Files #
+*.jar
+logs/
+
+

+ 0 - 2
README.md

@@ -1,2 +0,0 @@
-# examcloud-rpc
-

+ 25 - 0
examcloud-core-basic-api-client/pom.xml

@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>cn.com.qmth.examcloud.rpc</groupId>
+		<artifactId>examcloud-rpc</artifactId>
+		<version>2019-SNAPSHOT</version>
+	</parent>
+	<artifactId>examcloud-core-basic-api-client</artifactId>
+	<packaging>jar</packaging>
+
+	<dependencies>
+		<dependency>
+			<groupId>cn.com.qmth.examcloud.rpc</groupId>
+			<artifactId>examcloud-core-basic-api</artifactId>
+			<version>${examcloud.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>cn.com.qmth.examcloud</groupId>
+			<artifactId>examcloud-web</artifactId>
+			<version>${examcloud.version}</version>
+		</dependency>
+	</dependencies>
+
+</project>

+ 27 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/AbstractCloudClientSupport.java

@@ -0,0 +1,27 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+import cn.com.qmth.examcloud.web.cloud.CloudClientSupport;
+
+/**
+ * @author WANGWEI
+ *
+ */
+public abstract class AbstractCloudClientSupport extends CloudClientSupport {
+
+	private static final String APP_NAME = "EC-CORE-BASIC";
+
+	@Override
+	protected String getRequestMappingPrefix() {
+		return "api/core/basic";
+	}
+
+	protected void post(String requestMappingSuffix, BaseRequest body) {
+		super.post(APP_NAME, requestMappingSuffix, body);
+	}
+
+	protected <T> T post(String requestMappingSuffix, BaseRequest body, Class<T> responseType) {
+		return super.post(APP_NAME, requestMappingSuffix, body, responseType);
+	}
+
+}

+ 18 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/AuthCloudServiceClient.java

@@ -0,0 +1,18 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.AuthCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.LoginReq;
+import cn.com.qmth.examcloud.core.basic.api.response.LoginResp;
+
+@Service
+public class AuthCloudServiceClient extends AbstractCloudClientSupport implements AuthCloudService {
+
+	private static final long serialVersionUID = -4571389823902680911L;
+
+	@Override
+	public LoginResp login(LoginReq req) {
+		return post("auth/login", req, LoginResp.class);
+	}
+}

+ 42 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/CourseCloudServiceClient.java

@@ -0,0 +1,42 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.CourseCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetCoursesByIdListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetCourseResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetCoursesByIdListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveCourseResp;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年8月14日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+@Service
+public class CourseCloudServiceClient extends AbstractCloudClientSupport
+		implements
+			CourseCloudService {
+
+	private static final long serialVersionUID = -5246359107103119265L;
+
+	@Override
+	public SaveCourseResp saveCourse(SaveCourseReq req) {
+		return post("course/saveCourse", req, SaveCourseResp.class);
+	}
+
+	@Override
+	public GetCourseResp getCourse(GetCourseReq req) {
+		return post("course/getCourse", req, GetCourseResp.class);
+	}
+
+	@Override
+	public GetCoursesByIdListResp getCoursesByIdList(GetCoursesByIdListReq req) {
+		return post("course/getCoursesByIdList", req, GetCoursesByIdListResp.class);
+	}
+
+}

+ 25 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/DemoCloudServiceClient.java

@@ -0,0 +1,25 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.DemoCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetXxxReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetXxxResp;
+
+/**
+ * demo 云服务客户端
+ * 
+ * @author WANGWEI
+ *
+ */
+@Service
+public class DemoCloudServiceClient extends AbstractCloudClientSupport implements DemoCloudService {
+
+	private static final long serialVersionUID = -7456923008162697199L;
+
+	@Override
+	public GetXxxResp getXxx(GetXxxReq req) {
+		return post("demo/getXxx", req, GetXxxResp.class);
+	}
+
+}

+ 39 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/FaceCloudServiceClient.java

@@ -0,0 +1,39 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.FaceCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetStudentFaceReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetUsableFacesetListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveStudentFaceReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetStudentFaceResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetUsableFacesetListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveStudentFaceResp;
+
+/**
+ * demo 云服务客户端
+ * 
+ * @author WANGWEI
+ *
+ */
+@Service
+public class FaceCloudServiceClient extends AbstractCloudClientSupport implements FaceCloudService {
+
+	private static final long serialVersionUID = -7456923008162697199L;
+
+	@Override
+	public SaveStudentFaceResp saveStudentFace(SaveStudentFaceReq req) {
+		return post("studentFace/saveStudentFace", req, SaveStudentFaceResp.class);
+	}
+
+	@Override
+	public GetUsableFacesetListResp getUsableFacesetList(GetUsableFacesetListReq req) {
+		return post("studentFace/getUsableFacesetList", req, GetUsableFacesetListResp.class);
+	}
+
+	@Override
+	public GetStudentFaceResp getStudentFace(GetStudentFaceReq req) {
+		return post("studentFace/getStudentFace", req, GetStudentFaceResp.class);
+	}
+
+}

+ 48 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/OrgCloudServiceClient.java

@@ -0,0 +1,48 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.OrgCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgsByIdListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgsReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveOrgReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgsByIdListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgsResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveOrgResp;
+
+/**
+ * 机构服务客户端
+ * 
+ * @author chenken
+ * @date 2018年5月4日 下午3:28:53
+ * @company QMTH
+ * @description OrgCloudServiceClient.java
+ */
+@Service
+public class OrgCloudServiceClient extends AbstractCloudClientSupport implements OrgCloudService {
+
+	private static final long serialVersionUID = -1608540743867447624L;
+
+	@Override
+	public SaveOrgResp saveOrg(SaveOrgReq orgReq) {
+		return post("org/saveOrg", orgReq, SaveOrgResp.class);
+	}
+
+	@Override
+	public GetOrgResp getOrg(GetOrgReq req) {
+		return post("org/getOrg", req, GetOrgResp.class);
+	}
+
+	@Override
+	public GetOrgsResp getOrgs(GetOrgsReq req) {
+		return post("org/getOrgs", req, GetOrgsResp.class);
+	}
+
+	@Override
+	public GetOrgsByIdListResp getOrgsByIdList(GetOrgsByIdListReq req) {
+		return post("org/getOrgsByIdList", req, GetOrgsByIdListResp.class);
+	}
+
+}

+ 35 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/RolePrivilegeCloudServiceClient.java

@@ -0,0 +1,35 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.RolePrivilegeCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.DeleteRoleReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetPrivilegeListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveRoleReq;
+import cn.com.qmth.examcloud.core.basic.api.response.DeleteRoleResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetPrivilegeListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveRoleResp;
+
+@Service
+public class RolePrivilegeCloudServiceClient extends AbstractCloudClientSupport
+		implements
+			RolePrivilegeCloudService {
+
+	private static final long serialVersionUID = 1627126406719389279L;
+
+	@Override
+	public SaveRoleResp saveRole(SaveRoleReq req) {
+		return post("rolePrivilege/saveRole", req, SaveRoleResp.class);
+	}
+
+	@Override
+	public DeleteRoleResp deleteRole(DeleteRoleReq req) {
+		return post("rolePrivilege/deleteRole", req, DeleteRoleResp.class);
+	}
+
+	@Override
+	public GetPrivilegeListResp getPrivilegeList(GetPrivilegeListReq req) {
+		return post("rolePrivilege/getPrivilegeList", req, GetPrivilegeListResp.class);
+	}
+
+}

+ 56 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/StudentCloudServiceClient.java

@@ -0,0 +1,56 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.StudentCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.CountStudentReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetStudentReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveStudentReq;
+import cn.com.qmth.examcloud.core.basic.api.request.UnbindStudentCodeReq;
+import cn.com.qmth.examcloud.core.basic.api.request.UpdatePasswordReq;
+import cn.com.qmth.examcloud.core.basic.api.request.UpdateStudentStatusReq;
+import cn.com.qmth.examcloud.core.basic.api.response.CountStudentResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetStudentResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveStudentResp;
+import cn.com.qmth.examcloud.core.basic.api.response.UnbindStudentCodeResp;
+import cn.com.qmth.examcloud.core.basic.api.response.UpdatePasswordResp;
+import cn.com.qmth.examcloud.core.basic.api.response.UpdateStudentStatusResp;
+
+@Service
+public class StudentCloudServiceClient extends AbstractCloudClientSupport
+		implements
+			StudentCloudService {
+
+	private static final long serialVersionUID = 7669672850482842766L;
+
+	@Override
+	public SaveStudentResp saveStudent(SaveStudentReq req) {
+		return post("student/saveStudent", req, SaveStudentResp.class);
+	}
+
+	@Override
+	public GetStudentResp getStudent(GetStudentReq req) {
+		return post("student/getStudent", req, GetStudentResp.class);
+	}
+
+	@Override
+	public UnbindStudentCodeResp unbindStudentCode(UnbindStudentCodeReq req) {
+		return post("student/unbindStudentCode", req, UnbindStudentCodeResp.class);
+	}
+
+	@Override
+	public UpdatePasswordResp updatePassword(UpdatePasswordReq req) {
+		return post("student/updatePassword", req, UpdatePasswordResp.class);
+	}
+
+	@Override
+	public UpdateStudentStatusResp updateStudentStatus(UpdateStudentStatusReq req) {
+		return post("student/updateStudentStatus", req, UpdateStudentStatusResp.class);
+	}
+
+	@Override
+	public CountStudentResp countStudent(CountStudentReq req) {
+		return post("student/countStudent", req, CountStudentResp.class);
+	}
+
+}

+ 28 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/SystemPropertyCloudServiceClient.java

@@ -0,0 +1,28 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.SystemPropertyCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetSystemPropertyReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SetSystemPropertyReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetSystemPropertyResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SetSystemPropertyResp;
+
+@Service
+public class SystemPropertyCloudServiceClient extends AbstractCloudClientSupport
+		implements
+			SystemPropertyCloudService {
+
+	private static final long serialVersionUID = -1572107451517177867L;
+
+	@Override
+	public SetSystemPropertyResp setSystemProperty(SetSystemPropertyReq req) {
+		return post("systemProperty/setSystemProperty", req, SetSystemPropertyResp.class);
+	}
+
+	@Override
+	public GetSystemPropertyResp getSystemProperty(GetSystemPropertyReq req) {
+		return post("systemProperty/getSystemProperty", req, GetSystemPropertyResp.class);
+	}
+
+}

+ 47 - 0
examcloud-core-basic-api-client/src/main/java/cn/com/qmth/examcloud/core/basic/api/client/UserCloudServiceClient.java

@@ -0,0 +1,47 @@
+package cn.com.qmth.examcloud.core.basic.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.core.basic.api.UserCloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.AddUserReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetAllUsersByRoleReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetUserListByIdsReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetUserReq;
+import cn.com.qmth.examcloud.core.basic.api.response.AddUserResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetAllUsersByRoleResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetUserListByIdsResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetUserResp;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年8月14日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+@Service
+public class UserCloudServiceClient extends AbstractCloudClientSupport implements UserCloudService {
+
+	private static final long serialVersionUID = 5562847036151453132L;
+
+	@Override
+	public AddUserResp addUser(AddUserReq req) {
+		return post("user/addUser", req, AddUserResp.class);
+	}
+
+	@Override
+	public GetUserResp getUser(GetUserReq req) {
+		return post("user/getUser", req, GetUserResp.class);
+	}
+
+	@Override
+	public GetAllUsersByRoleResp getAllUsersByRole(GetAllUsersByRoleReq req) {
+		return post("user/getAllUsersByRole", req, GetAllUsersByRoleResp.class);
+	}
+
+	@Override
+	public GetUserListByIdsResp getUserListByIds(GetUserListByIdsReq req) {
+		return post("user/getUserListByIds", req, GetUserListByIdsResp.class);
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/pom.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>cn.com.qmth.examcloud.rpc</groupId>
+		<artifactId>examcloud-rpc</artifactId>
+		<version>2019-SNAPSHOT</version>
+	</parent>
+	<artifactId>examcloud-core-basic-api</artifactId>
+
+	<dependencies>
+		<dependency>
+			<groupId>cn.com.qmth.examcloud</groupId>
+			<artifactId>examcloud-api-commons</artifactId>
+			<version>${examcloud.version}</version>
+		</dependency>
+	</dependencies>
+
+</project>

+ 25 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/AuthCloudService.java

@@ -0,0 +1,25 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.LoginReq;
+import cn.com.qmth.examcloud.core.basic.api.response.LoginResp;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年9月13日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public interface AuthCloudService extends CloudService {
+
+	/**
+	 * 登录
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	LoginResp login(LoginReq req);
+
+}

+ 46 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/CourseCloudService.java

@@ -0,0 +1,46 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetCoursesByIdListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveCourseReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetCourseResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetCoursesByIdListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveCourseResp;
+
+/**
+ * 课程服务
+ * 
+ * @author chenken
+ * @date 2018年5月4日 下午4:01:09
+ * @company QMTH
+ * @description CourseCloudService.java
+ */
+public interface CourseCloudService extends CloudService {
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetCourseResp getCourse(GetCourseReq req);
+
+	/**
+	 * 保存课程
+	 * 
+	 * @param courseReq
+	 */
+	SaveCourseResp saveCourse(SaveCourseReq req);
+
+	/**
+	 * 按ID查询课程
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetCoursesByIdListResp getCoursesByIdList(GetCoursesByIdListReq req);
+
+}

+ 17 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/DemoCloudService.java

@@ -0,0 +1,17 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetXxxReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetXxxResp;
+
+/**
+ * demo 云服务接口
+ * 
+ * @author WANG
+ *
+ */
+public interface DemoCloudService extends CloudService {
+
+	GetXxxResp getXxx(GetXxxReq req);
+
+}

+ 47 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/FaceCloudService.java

@@ -0,0 +1,47 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetStudentFaceReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetUsableFacesetListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveStudentFaceReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetStudentFaceResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetUsableFacesetListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveStudentFaceResp;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月18日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public interface FaceCloudService extends CloudService {
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	SaveStudentFaceResp saveStudentFace(SaveStudentFaceReq req);
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetUsableFacesetListResp getUsableFacesetList(GetUsableFacesetListReq req);
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetStudentFaceResp getStudentFace(GetStudentFaceReq req);
+
+}

+ 31 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/OrgCloudService.java

@@ -0,0 +1,31 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgsByIdListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetOrgsReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveOrgReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgsByIdListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetOrgsResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveOrgResp;
+
+/**
+ * 机构服务
+ * 
+ * @author chenken
+ * @date 2018年5月4日 下午3:27:55
+ * @company QMTH
+ * @description OrgCloudService.java
+ */
+public interface OrgCloudService extends CloudService {
+
+	GetOrgResp getOrg(GetOrgReq req);
+
+	SaveOrgResp saveOrg(SaveOrgReq orgReq);
+
+	GetOrgsByIdListResp getOrgsByIdList(GetOrgsByIdListReq req);
+
+	GetOrgsResp getOrgs(GetOrgsReq req);
+
+}

+ 25 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/RolePrivilegeCloudService.java

@@ -0,0 +1,25 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.DeleteRoleReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetPrivilegeListReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveRoleReq;
+import cn.com.qmth.examcloud.core.basic.api.response.DeleteRoleResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetPrivilegeListResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveRoleResp;
+
+/**
+ * 角色权限云服务
+ * 
+ * @author WANGWEI
+ *
+ */
+public interface RolePrivilegeCloudService extends CloudService {
+
+	SaveRoleResp saveRole(SaveRoleReq req);
+
+	DeleteRoleResp deleteRole(DeleteRoleReq req);
+
+	GetPrivilegeListResp getPrivilegeList(GetPrivilegeListReq req);
+
+}

+ 80 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/StudentCloudService.java

@@ -0,0 +1,80 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.CountStudentReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetStudentReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SaveStudentReq;
+import cn.com.qmth.examcloud.core.basic.api.request.UnbindStudentCodeReq;
+import cn.com.qmth.examcloud.core.basic.api.request.UpdatePasswordReq;
+import cn.com.qmth.examcloud.core.basic.api.request.UpdateStudentStatusReq;
+import cn.com.qmth.examcloud.core.basic.api.response.CountStudentResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetStudentResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SaveStudentResp;
+import cn.com.qmth.examcloud.core.basic.api.response.UnbindStudentCodeResp;
+import cn.com.qmth.examcloud.core.basic.api.response.UpdatePasswordResp;
+import cn.com.qmth.examcloud.core.basic.api.response.UpdateStudentStatusResp;
+
+/**
+ * 学生接口服务
+ * 
+ * @author chenken
+ * @date 2018年5月4日 下午5:10:40
+ * @company QMTH
+ * @description StudentCloudService.java
+ */
+public interface StudentCloudService extends CloudService {
+
+	/**
+	 * 插入或更新学生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 */
+	SaveStudentResp saveStudent(SaveStudentReq req);
+
+	/**
+	 * 查询学生信息
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetStudentResp getStudent(GetStudentReq req);
+
+	/**
+	 * 解绑学号
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	UnbindStudentCodeResp unbindStudentCode(UnbindStudentCodeReq req);
+
+	/**
+	 * 修改密码
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	UpdatePasswordResp updatePassword(UpdatePasswordReq req);
+
+	/**
+	 * 更新学生状态
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	UpdateStudentStatusResp updateStudentStatus(UpdateStudentStatusReq req);
+
+	/**
+	 * 统计学生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	CountStudentResp countStudent(CountStudentReq req);
+
+}

+ 22 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/SystemPropertyCloudService.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.GetSystemPropertyReq;
+import cn.com.qmth.examcloud.core.basic.api.request.SetSystemPropertyReq;
+import cn.com.qmth.examcloud.core.basic.api.response.GetSystemPropertyResp;
+import cn.com.qmth.examcloud.core.basic.api.response.SetSystemPropertyResp;
+
+/**
+ * 系统配置
+ *
+ * @author WANGWEI
+ * @date 2018年12月3日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public interface SystemPropertyCloudService extends CloudService {
+
+	SetSystemPropertyResp setSystemProperty(SetSystemPropertyReq req);
+
+	GetSystemPropertyResp getSystemProperty(GetSystemPropertyReq req);
+
+}

+ 59 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/UserCloudService.java

@@ -0,0 +1,59 @@
+package cn.com.qmth.examcloud.core.basic.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.core.basic.api.request.AddUserReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetUserListByIdsReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetAllUsersByRoleReq;
+import cn.com.qmth.examcloud.core.basic.api.request.GetUserReq;
+import cn.com.qmth.examcloud.core.basic.api.response.AddUserResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetUserListByIdsResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetAllUsersByRoleResp;
+import cn.com.qmth.examcloud.core.basic.api.response.GetUserResp;
+
+/**
+ * 学生接口服务
+ * 
+ * @author chenken
+ * @date 2018年5月4日 下午5:10:40
+ * @company QMTH
+ * @description StudentCloudService.java
+ */
+public interface UserCloudService extends CloudService {
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	AddUserResp addUser(AddUserReq req);
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetUserResp getUser(GetUserReq req);
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetAllUsersByRoleResp getAllUsersByRole(GetAllUsersByRoleReq req);
+
+	/**
+	 * 方法注释
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetUserListByIdsResp getUserListByIds(GetUserListByIdsReq req);
+
+}

+ 69 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/CourseBean.java

@@ -0,0 +1,69 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+public class CourseBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -6261302618070108336L;
+
+	private Long rootOrgId;
+
+	private Long id;
+
+	private String code;
+
+	private String name;
+
+	private String level;
+
+	private Boolean enable;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getLevel() {
+		return level;
+	}
+
+	public void setLevel(String level) {
+		this.level = level;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+}

+ 76 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/FacesetBean.java

@@ -0,0 +1,76 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+/**
+ * face++ faceset
+ *
+ * @author WANGWEI
+ * @date 2018年9月3日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class FacesetBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -1831392800541099736L;
+
+	private Long id;
+
+	private String facesetToken;
+
+	private Long faceCount;
+
+	private String outerId;
+
+	private String displayName;
+
+	private String tags;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getFacesetToken() {
+		return facesetToken;
+	}
+
+	public void setFacesetToken(String facesetToken) {
+		this.facesetToken = facesetToken;
+	}
+
+	public Long getFaceCount() {
+		return faceCount;
+	}
+
+	public void setFaceCount(Long faceCount) {
+		this.faceCount = faceCount;
+	}
+
+	public String getOuterId() {
+		return outerId;
+	}
+
+	public void setOuterId(String outerId) {
+		this.outerId = outerId;
+	}
+
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	public void setDisplayName(String displayName) {
+		this.displayName = displayName;
+	}
+
+	public String getTags() {
+		return tags;
+	}
+
+	public void setTags(String tags) {
+		this.tags = tags;
+	}
+
+}

+ 74 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/OrgBean.java

@@ -0,0 +1,74 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import java.io.Serializable;
+
+/**
+ * 
+ * @author WANG
+ *
+ */
+public class OrgBean implements Serializable {
+
+	private static final long serialVersionUID = -4045967342902486442L;
+
+	private Long id;
+
+	private Long rootId;
+
+	private Long parentId;
+
+	private String name;
+
+	private Boolean enable;
+
+	private String code;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public Long getRootId() {
+		return rootId;
+	}
+
+	public void setRootId(Long rootId) {
+		this.rootId = rootId;
+	}
+
+	public Long getParentId() {
+		return parentId;
+	}
+
+	public void setParentId(Long parentId) {
+		this.parentId = parentId;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+}

+ 79 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/RoleBean.java

@@ -0,0 +1,79 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年5月25日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class RoleBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -916123953402843015L;
+
+	private Long roleId;
+
+	private String roleCode;
+
+	private String roleName;
+
+	private Long rootOrgId;
+
+	/**
+	 * 构造函数
+	 *
+	 */
+	public RoleBean() {
+	}
+
+	/**
+	 * 构造函数
+	 *
+	 * @param rootOrgId
+	 * @param roleId
+	 * @param roleCode
+	 * @param roleName
+	 */
+	public RoleBean(Long rootOrgId, Long roleId, String roleCode, String roleName) {
+		super();
+		this.rootOrgId = rootOrgId;
+		this.roleId = roleId;
+		this.roleCode = roleCode;
+		this.roleName = roleName;
+	}
+
+	public Long getRoleId() {
+		return roleId;
+	}
+
+	public void setRoleId(Long roleId) {
+		this.roleId = roleId;
+	}
+
+	public String getRoleCode() {
+		return roleCode;
+	}
+
+	public void setRoleCode(String roleCode) {
+		this.roleCode = roleCode;
+	}
+
+	public String getRoleName() {
+		return roleName;
+	}
+
+	public void setRoleName(String roleName) {
+		this.roleName = roleName;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+}

+ 167 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/StudentBean.java

@@ -0,0 +1,167 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+public class StudentBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -5365301843181593678L;
+
+	/**
+	 * 学生ID
+	 */
+	private Long id;
+
+	/**
+	 * 学生姓名
+	 */
+	private String name;
+
+	/**
+	 * 顶级机构ID
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 机构ID
+	 */
+	private Long orgId;
+
+	/**
+	 * 学习中心编码
+	 */
+	private String orgCode;
+
+	/**
+	 * 学习中心名称
+	 */
+	private String orgName;
+
+	/**
+	 * 学生code集合
+	 */
+	private List<String> studentCodeList;
+
+	/**
+	 * 身份证号码
+	 */
+	private String identityNumber;
+
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+	/**
+	 * 图片地址
+	 */
+	private String photoPath;
+
+	/**
+	 * 手机号码
+	 */
+	private String phoneNumber;
+
+	/**
+	 * 安全手机号码(用于登录)
+	 */
+	private String securityPhone;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgCode() {
+		return orgCode;
+	}
+
+	public void setOrgCode(String orgCode) {
+		this.orgCode = orgCode;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+	public List<String> getStudentCodeList() {
+		return studentCodeList;
+	}
+
+	public void setStudentCodeList(List<String> studentCodeList) {
+		this.studentCodeList = studentCodeList;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public String getPhotoPath() {
+		return photoPath;
+	}
+
+	public void setPhotoPath(String photoPath) {
+		this.photoPath = photoPath;
+	}
+
+	public String getPhoneNumber() {
+		return phoneNumber;
+	}
+
+	public void setPhoneNumber(String phoneNumber) {
+		this.phoneNumber = phoneNumber;
+	}
+
+	public String getSecurityPhone() {
+		return securityPhone;
+	}
+
+	public void setSecurityPhone(String securityPhone) {
+		this.securityPhone = securityPhone;
+	}
+
+}

+ 75 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/StudentFaceBean.java

@@ -0,0 +1,75 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+/**
+ * 学生人脸识别信息
+ *
+ * @author WANGWEI
+ * @date 2018年8月22日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class StudentFaceBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -3722400898212427026L;
+
+	private Long studentId;
+
+	private Long facesetId;
+
+	/**
+	 * face++参数
+	 */
+	private String faceToken;
+
+	/**
+	 * 创建人
+	 */
+	private String creator;
+
+	/**
+	 * 更新人
+	 */
+	private String modifiedBy;
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public Long getFacesetId() {
+		return facesetId;
+	}
+
+	public void setFacesetId(Long facesetId) {
+		this.facesetId = facesetId;
+	}
+
+	public String getFaceToken() {
+		return faceToken;
+	}
+
+	public void setFaceToken(String faceToken) {
+		this.faceToken = faceToken;
+	}
+
+	public String getCreator() {
+		return creator;
+	}
+
+	public void setCreator(String creator) {
+		this.creator = creator;
+	}
+
+	public String getModifiedBy() {
+		return modifiedBy;
+	}
+
+	public void setModifiedBy(String modifiedBy) {
+		this.modifiedBy = modifiedBy;
+	}
+
+}

+ 135 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/bean/UserBean.java

@@ -0,0 +1,135 @@
+package cn.com.qmth.examcloud.core.basic.api.bean;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年5月25日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class UserBean implements JsonSerializable {
+
+	private static final long serialVersionUID = -4157068941699776174L;
+
+	/**
+	 * 用户ID
+	 */
+	private Long userId;
+
+	/**
+	 * 登陆名
+	 */
+	private String loginName;
+
+	/**
+	 * 用户名
+	 */
+	private String name;
+
+	/**
+	 * 显示名
+	 */
+	private String displayName;
+
+	/**
+	 * 顶级机构(学校)ID
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 顶级机构(学校)名称
+	 */
+	private String rootOrgName;
+
+	/**
+	 * 学习中心 ID
+	 */
+	private Long orgId;
+
+	/**
+	 * 学习中心名称
+	 */
+	private String orgName;
+
+	/**
+	 * 角色集合
+	 */
+	private List<RoleBean> roleList;
+
+	public Long getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Long userId) {
+		this.userId = userId;
+	}
+
+	public String getLoginName() {
+		return loginName;
+	}
+
+	public void setLoginName(String loginName) {
+		this.loginName = loginName;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getDisplayName() {
+		return displayName;
+	}
+
+	public void setDisplayName(String displayName) {
+		this.displayName = displayName;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public String getRootOrgName() {
+		return rootOrgName;
+	}
+
+	public void setRootOrgName(String rootOrgName) {
+		this.rootOrgName = rootOrgName;
+	}
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+	public List<RoleBean> getRoleList() {
+		return roleList;
+	}
+
+	public void setRoleList(List<RoleBean> roleList) {
+		this.roleList = roleList;
+	}
+
+}

+ 68 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/AddUserReq.java

@@ -0,0 +1,68 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月20日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class AddUserReq extends BaseRequest {
+
+	private static final long serialVersionUID = -3083507251640320616L;
+
+	private Long rootOrgId;
+
+	private String loginName;
+
+	private String password;
+
+	private String name;
+
+	private List<String> roleCodeList;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public String getLoginName() {
+		return loginName;
+	}
+
+	public void setLoginName(String loginName) {
+		this.loginName = loginName;
+	}
+
+	public String getPassword() {
+		return password;
+	}
+
+	public void setPassword(String password) {
+		this.password = password;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public List<String> getRoleCodeList() {
+		return roleCodeList;
+	}
+
+	public void setRoleCodeList(List<String> roleCodeList) {
+		this.roleCodeList = roleCodeList;
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/CountStudentReq.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class CountStudentReq extends BaseRequest {
+
+	private static final long serialVersionUID = -2339490932614972680L;
+
+	private Long rootOrgId;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+}

+ 59 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/DeleteRoleReq.java

@@ -0,0 +1,59 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class DeleteRoleReq extends BaseRequest {
+
+	private static final long serialVersionUID = 1378679217589137402L;
+
+	private Long id;
+
+	private String code;
+
+	private String name;
+
+	private Long rootOrgId;
+
+	private boolean cascade;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public boolean isCascade() {
+		return cascade;
+	}
+
+	public void setCascade(boolean cascade) {
+		this.cascade = cascade;
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetAllOrgPropertiesReq.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetAllOrgPropertiesReq extends BaseRequest {
+
+	private static final long serialVersionUID = -2480857346739167675L;
+
+	private Long orgId;
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+}

+ 49 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetAllUsersByRoleReq.java

@@ -0,0 +1,49 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetAllUsersByRoleReq extends BaseRequest {
+
+	private static final long serialVersionUID = -5423361956786896423L;
+
+	private Long rootOrgId;
+
+	private Long start;
+
+	private Long roleId;
+
+	private String roleCode;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getStart() {
+		return start;
+	}
+
+	public void setStart(Long start) {
+		this.start = start;
+	}
+
+	public Long getRoleId() {
+		return roleId;
+	}
+
+	public void setRoleId(Long roleId) {
+		this.roleId = roleId;
+	}
+
+	public String getRoleCode() {
+		return roleCode;
+	}
+
+	public void setRoleCode(String roleCode) {
+		this.roleCode = roleCode;
+	}
+
+}

+ 50 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetCourseReq.java

@@ -0,0 +1,50 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月18日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class GetCourseReq extends BaseRequest {
+
+	private static final long serialVersionUID = 1519674389621637131L;
+
+	private Long rootOrgId;
+
+	private Long id;
+
+	private String code;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public static long getSerialversionuid() {
+		return serialVersionUID;
+	}
+
+}

+ 21 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetCoursesByIdListReq.java

@@ -0,0 +1,21 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetCoursesByIdListReq extends BaseRequest {
+
+	private static final long serialVersionUID = 7565898756857730107L;
+
+	private List<Long> courseIdList;
+
+	public List<Long> getCourseIdList() {
+		return courseIdList;
+	}
+
+	public void setCourseIdList(List<Long> courseIdList) {
+		this.courseIdList = courseIdList;
+	}
+
+}

+ 29 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgListByNameLikeReq.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetOrgListByNameLikeReq extends BaseRequest {
+
+	private static final long serialVersionUID = 612496100625952940L;
+
+	private String rootOrgId;
+
+	private String orgName;
+
+	public String getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(String rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+}

+ 39 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgPropertyReq.java

@@ -0,0 +1,39 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetOrgPropertyReq extends BaseRequest {
+
+	private static final long serialVersionUID = 8445489864946182160L;
+
+	private Long orgId;
+
+	private String keyName;
+
+	private Long keyId;
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getKeyName() {
+		return keyName;
+	}
+
+	public void setKeyName(String keyName) {
+		this.keyName = keyName;
+	}
+
+	public Long getKeyId() {
+		return keyId;
+	}
+
+	public void setKeyId(Long keyId) {
+		this.keyId = keyId;
+	}
+
+}

+ 39 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgReq.java

@@ -0,0 +1,39 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetOrgReq extends BaseRequest {
+
+	private static final long serialVersionUID = 8860061888831487546L;
+
+	private Long orgId;
+
+	private String orgCode;
+
+	private Long rootOrgId;
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgCode() {
+		return orgCode;
+	}
+
+	public void setOrgCode(String orgCode) {
+		this.orgCode = orgCode;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+}

+ 21 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgsByIdListReq.java

@@ -0,0 +1,21 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetOrgsByIdListReq extends BaseRequest {
+
+	private static final long serialVersionUID = -3244077131326044340L;
+
+	private List<Long> orgIdList;
+
+	public List<Long> getOrgIdList() {
+		return orgIdList;
+	}
+
+	public void setOrgIdList(List<Long> orgIdList) {
+		this.orgIdList = orgIdList;
+	}
+
+}

+ 49 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetOrgsReq.java

@@ -0,0 +1,49 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetOrgsReq extends BaseRequest {
+
+	private static final long serialVersionUID = -4094995334429058987L;
+
+	private Boolean withoutParentId;
+
+	private Long rootOrgId;
+
+	private Long start;
+
+	private Boolean enable;
+
+	public Boolean getWithoutParentId() {
+		return withoutParentId;
+	}
+
+	public void setWithoutParentId(Boolean withoutParentId) {
+		this.withoutParentId = withoutParentId;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getStart() {
+		return start;
+	}
+
+	public void setStart(Long start) {
+		this.start = start;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+}

+ 29 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetPrivilegeListReq.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetPrivilegeListReq extends BaseRequest {
+
+	private static final long serialVersionUID = -2241264953393891893L;
+
+	private Long rootOrgId;
+
+	private Long roleId;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getRoleId() {
+		return roleId;
+	}
+
+	public void setRoleId(Long roleId) {
+		this.roleId = roleId;
+	}
+
+}

+ 26 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetStudentFaceReq.java

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年9月4日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class GetStudentFaceReq extends BaseRequest {
+
+	private static final long serialVersionUID = -7703603729469051005L;
+
+	private Long studentId;
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+}

+ 74 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetStudentReq.java

@@ -0,0 +1,74 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetStudentReq extends BaseRequest {
+
+	private static final long serialVersionUID = 2135618523755240278L;
+
+	/**
+	 * 顶级机构ID
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 学生ID
+	 */
+	private Long studentId;
+
+	/**
+	 * 身份证号码
+	 */
+	private String identityNumber;
+
+	/**
+	 * 安全手机号码(用于登录)
+	 */
+	private String securityPhone;
+
+	/**
+	 * 学生code
+	 */
+	private String studentCode;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public String getSecurityPhone() {
+		return securityPhone;
+	}
+
+	public void setSecurityPhone(String securityPhone) {
+		this.securityPhone = securityPhone;
+	}
+
+	public String getStudentCode() {
+		return studentCode;
+	}
+
+	public void setStudentCode(String studentCode) {
+		this.studentCode = studentCode;
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetSystemPropertyReq.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetSystemPropertyReq extends BaseRequest {
+
+	private static final long serialVersionUID = 2737057867242610859L;
+
+	private String key;
+
+	public String getKey() {
+		return key;
+	}
+
+	public void setKey(String key) {
+		this.key = key;
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetUsableFacesetListReq.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetUsableFacesetListReq extends BaseRequest {
+
+	private static final long serialVersionUID = -6219983651710389305L;
+
+	private Long rootOrgId;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+}

+ 31 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetUserListByIdsReq.java

@@ -0,0 +1,31 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetUserListByIdsReq extends BaseRequest {
+
+	private static final long serialVersionUID = -5423361956786896423L;
+
+	private Long rootOrgId;
+
+	private List<Long> userIdList;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public List<Long> getUserIdList() {
+		return userIdList;
+	}
+
+	public void setUserIdList(List<Long> userIdList) {
+		this.userIdList = userIdList;
+	}
+
+}

+ 39 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetUserReq.java

@@ -0,0 +1,39 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class GetUserReq extends BaseRequest {
+
+	private static final long serialVersionUID = 6450873611171541831L;
+
+	private Long rootOrgId;
+
+	private Long userId;
+
+	private String loginName;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Long userId) {
+		this.userId = userId;
+	}
+
+	public String getLoginName() {
+		return loginName;
+	}
+
+	public void setLoginName(String loginName) {
+		this.loginName = loginName;
+	}
+
+}

+ 33 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/GetXxxReq.java

@@ -0,0 +1,33 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * @author WANGWEI
+ *
+ */
+public class GetXxxReq extends BaseRequest {
+
+	private static final long serialVersionUID = -6925630706679571172L;
+
+	private String f1;
+
+	private int f2;
+
+	public String getF1() {
+		return f1;
+	}
+
+	public void setF1(String f1) {
+		this.f1 = f1;
+	}
+
+	public int getF2() {
+		return f2;
+	}
+
+	public void setF2(int f2) {
+		this.f2 = f2;
+	}
+
+}

+ 36 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/LoginReq.java

@@ -0,0 +1,36 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+import cn.com.qmth.examcloud.api.commons.security.bean.UserType;
+
+public class LoginReq extends BaseRequest {
+
+	private static final long serialVersionUID = 79813981418301573L;
+
+	/**
+	 * 用户类型
+	 */
+	private UserType userType;
+
+	/**
+	 * 用户ID(包含普通用户ID,学生用户ID)
+	 */
+	private Long userId;
+
+	public UserType getUserType() {
+		return userType;
+	}
+
+	public void setUserType(UserType userType) {
+		this.userType = userType;
+	}
+
+	public Long getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Long userId) {
+		this.userId = userId;
+	}
+
+}

+ 84 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveCourseReq.java

@@ -0,0 +1,84 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class SaveCourseReq extends BaseRequest {
+
+	private static final long serialVersionUID = -814368725579588751L;
+
+	/**
+	 * 顶级机构ID
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 课程ID
+	 */
+	private Long courseId;
+
+	/**
+	 * 课程code
+	 */
+	private String courseCode;
+
+	/**
+	 * 课程name
+	 */
+	private String courseName;
+
+	/**
+	 * 课程level
+	 */
+	private String courseLevel;
+
+	private Boolean enable;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getCourseId() {
+		return courseId;
+	}
+
+	public void setCourseId(Long courseId) {
+		this.courseId = courseId;
+	}
+
+	public String getCourseCode() {
+		return courseCode;
+	}
+
+	public void setCourseCode(String courseCode) {
+		this.courseCode = courseCode;
+	}
+
+	public String getCourseName() {
+		return courseName;
+	}
+
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+
+	public String getCourseLevel() {
+		return courseLevel;
+	}
+
+	public void setCourseLevel(String courseLevel) {
+		this.courseLevel = courseLevel;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+}

+ 116 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveOrgReq.java

@@ -0,0 +1,116 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年8月23日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class SaveOrgReq extends BaseRequest {
+
+	private static final long serialVersionUID = -542122454712136439L;
+
+	private Long id;
+
+	private Long rootId;
+
+	private Long parentId;
+
+	private String code;
+
+	private String name;
+
+	private Boolean enable;
+
+	private String telephone;
+
+	private String contacts;
+
+	private String remark;
+
+	private String domainName;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public Long getRootId() {
+		return rootId;
+	}
+
+	public void setRootId(Long rootId) {
+		this.rootId = rootId;
+	}
+
+	public Long getParentId() {
+		return parentId;
+	}
+
+	public void setParentId(Long parentId) {
+		this.parentId = parentId;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+	public String getTelephone() {
+		return telephone;
+	}
+
+	public void setTelephone(String telephone) {
+		this.telephone = telephone;
+	}
+
+	public String getContacts() {
+		return contacts;
+	}
+
+	public void setContacts(String contacts) {
+		this.contacts = contacts;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public String getDomainName() {
+		return domainName;
+	}
+
+	public void setDomainName(String domainName) {
+		this.domainName = domainName;
+	}
+
+}

+ 46 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveRoleReq.java

@@ -0,0 +1,46 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年9月3日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class SaveRoleReq extends BaseRequest {
+
+	private static final long serialVersionUID = 5909926191507766711L;
+
+	private String code;
+
+	private String name;
+
+	private Long rootOrgId;
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+}

+ 96 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveStudentFaceReq.java

@@ -0,0 +1,96 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月18日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class SaveStudentFaceReq extends BaseRequest {
+
+	private static final long serialVersionUID = -8260481601116583797L;
+
+	private Long rootOrgId;
+
+	private Long studentId;
+
+	private String faceToken;
+
+	private String facesetToken;
+
+	private String photoName;
+
+	private String operator;
+
+	private Long faceCount;
+	
+	private String photoTreatyPath;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public String getFaceToken() {
+		return faceToken;
+	}
+
+	public void setFaceToken(String faceToken) {
+		this.faceToken = faceToken;
+	}
+
+	public String getFacesetToken() {
+		return facesetToken;
+	}
+
+	public void setFacesetToken(String facesetToken) {
+		this.facesetToken = facesetToken;
+	}
+
+	public String getPhotoName() {
+		return photoName;
+	}
+
+	public void setPhotoName(String photoName) {
+		this.photoName = photoName;
+	}
+
+	public String getOperator() {
+		return operator;
+	}
+
+	public void setOperator(String operator) {
+		this.operator = operator;
+	}
+
+	public Long getFaceCount() {
+		return faceCount;
+	}
+
+	public void setFaceCount(Long faceCount) {
+		this.faceCount = faceCount;
+	}
+
+	public String getPhotoTreatyPath() {
+		return photoTreatyPath;
+	}
+
+	public void setPhotoTreatyPath(String photoTreatyPath) {
+		this.photoTreatyPath = photoTreatyPath;
+	}
+
+}

+ 154 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SaveStudentReq.java

@@ -0,0 +1,154 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class SaveStudentReq extends BaseRequest {
+
+	private static final long serialVersionUID = 9066273303019460160L;
+
+	/**
+	 * 是否可用
+	 */
+	private Boolean enable;
+
+	/**
+	 * 学生姓名
+	 */
+	private String name;
+
+	/**
+	 * 顶级机构ID
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 机构ID
+	 */
+	private Long orgId;
+
+	/**
+	 * 学习中心编码
+	 */
+	private String orgCode;
+
+	/**
+	 * 学习中心名称
+	 */
+	private String orgName;
+
+	/**
+	 * 学生code集合
+	 */
+	private List<String> studentCodeList;
+
+	/**
+	 * 身份证号码
+	 */
+	private String identityNumber;
+
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+	/**
+	 * 图片地址
+	 */
+	private String photoPath;
+
+	/**
+	 * 手机号码
+	 */
+	private String phoneNumber;
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgCode() {
+		return orgCode;
+	}
+
+	public void setOrgCode(String orgCode) {
+		this.orgCode = orgCode;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+	public List<String> getStudentCodeList() {
+		return studentCodeList;
+	}
+
+	public void setStudentCodeList(List<String> studentCodeList) {
+		this.studentCodeList = studentCodeList;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public String getPhotoPath() {
+		return photoPath;
+	}
+
+	public void setPhotoPath(String photoPath) {
+		this.photoPath = photoPath;
+	}
+
+	public String getPhoneNumber() {
+		return phoneNumber;
+	}
+
+	public void setPhoneNumber(String phoneNumber) {
+		this.phoneNumber = phoneNumber;
+	}
+
+}

+ 29 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/SetSystemPropertyReq.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class SetSystemPropertyReq extends BaseRequest {
+
+	private static final long serialVersionUID = -6852583351399210497L;
+
+	private String key;
+
+	private String value;
+
+	public String getKey() {
+		return key;
+	}
+
+	public void setKey(String key) {
+		this.key = key;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+}

+ 39 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/UnbindStudentCodeReq.java

@@ -0,0 +1,39 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class UnbindStudentCodeReq extends BaseRequest {
+
+	private static final long serialVersionUID = -1622586655285073431L;
+
+	private Long rootOrgId;
+
+	private String identityNumber;
+
+	private String studentCode;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public String getStudentCode() {
+		return studentCode;
+	}
+
+	public void setStudentCode(String studentCode) {
+		this.studentCode = studentCode;
+	}
+
+}

+ 49 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/UpdatePasswordReq.java

@@ -0,0 +1,49 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class UpdatePasswordReq extends BaseRequest {
+
+	private static final long serialVersionUID = 1003594551453376759L;
+
+	private Long rootOrgId;
+
+	private Long studentId;
+
+	private String identityNumber;
+
+	private String password;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public String getPassword() {
+		return password;
+	}
+
+	public void setPassword(String password) {
+		this.password = password;
+	}
+
+}

+ 48 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/request/UpdateStudentStatusReq.java

@@ -0,0 +1,48 @@
+package cn.com.qmth.examcloud.core.basic.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class UpdateStudentStatusReq extends BaseRequest {
+	private static final long serialVersionUID = -3300491605950827319L;
+
+	private Long rootOrgId;
+
+	private Long studentId;
+
+	private String identityNumber;
+
+	private Boolean enable;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+}

+ 26 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/AddUserResp.java

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月20日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class AddUserResp extends BaseResponse {
+
+	private static final long serialVersionUID = -9143409387667411757L;
+
+	private Long userId;
+
+	public Long getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Long userId) {
+		this.userId = userId;
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/CountStudentResp.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class CountStudentResp extends BaseResponse {
+
+	private static final long serialVersionUID = 8248332539047118990L;
+
+	private Long count;
+
+	public Long getCount() {
+		return count;
+	}
+
+	public void setCount(Long count) {
+		this.count = count;
+	}
+
+}

+ 23 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/DeleteRoleResp.java

@@ -0,0 +1,23 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.RoleBean;
+
+public class DeleteRoleResp extends BaseResponse {
+
+	/**
+	 * 属性注释
+	 */
+	private static final long serialVersionUID = 3861498499053730038L;
+
+	private RoleBean roleBean;
+
+	public RoleBean getRoleBean() {
+		return roleBean;
+	}
+
+	public void setRoleBean(RoleBean roleBean) {
+		this.roleBean = roleBean;
+	}
+
+}

+ 21 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetAllOrgPropertiesResp.java

@@ -0,0 +1,21 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.Map;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class GetAllOrgPropertiesResp extends BaseResponse {
+
+	private static final long serialVersionUID = -3389812285108955277L;
+
+	private Map<String, String> props;
+
+	public Map<String, String> getProps() {
+		return props;
+	}
+
+	public void setProps(Map<String, String> props) {
+		this.props = props;
+	}
+
+}

+ 32 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetAllUsersByRoleResp.java

@@ -0,0 +1,32 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.UserBean;
+
+public class GetAllUsersByRoleResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2236372532342357905L;
+
+	private long next;
+
+	private List<UserBean> userBeanList;
+
+	public long getNext() {
+		return next;
+	}
+
+	public void setNext(long next) {
+		this.next = next;
+	}
+
+	public List<UserBean> getUserBeanList() {
+		return userBeanList;
+	}
+
+	public void setUserBeanList(List<UserBean> userBeanList) {
+		this.userBeanList = userBeanList;
+	}
+
+}

+ 27 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetCourseResp.java

@@ -0,0 +1,27 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月18日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class GetCourseResp extends BaseResponse {
+
+	private static final long serialVersionUID = -572585864968338068L;
+
+	private CourseBean courseBean;
+
+	public CourseBean getCourseBean() {
+		return courseBean;
+	}
+
+	public void setCourseBean(CourseBean courseBean) {
+		this.courseBean = courseBean;
+	}
+
+}

+ 22 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetCoursesByIdListResp.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
+
+public class GetCoursesByIdListResp extends BaseResponse {
+
+	private static final long serialVersionUID = -191671960381795922L;
+
+	private List<CourseBean> courseList;
+
+	public List<CourseBean> getCourseList() {
+		return courseList;
+	}
+
+	public void setCourseList(List<CourseBean> courseList) {
+		this.courseList = courseList;
+	}
+
+}

+ 22 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgListByNameLikeResp.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.OrgBean;
+
+public class GetOrgListByNameLikeResp extends BaseResponse {
+
+	private static final long serialVersionUID = -4635477352326141785L;
+
+	List<OrgBean> orgList;
+
+	public List<OrgBean> getOrgList() {
+		return orgList;
+	}
+
+	public void setOrgList(List<OrgBean> orgList) {
+		this.orgList = orgList;
+	}
+
+}

+ 19 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgPropertyResp.java

@@ -0,0 +1,19 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class GetOrgPropertyResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2283981755144391579L;
+
+	private String value;
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgResp.java

@@ -0,0 +1,20 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.OrgBean;
+
+public class GetOrgResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2625382462279650240L;
+
+	private OrgBean org;
+
+	public OrgBean getOrg() {
+		return org;
+	}
+
+	public void setOrg(OrgBean org) {
+		this.org = org;
+	}
+
+}

+ 22 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgsByIdListResp.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.OrgBean;
+
+public class GetOrgsByIdListResp extends BaseResponse {
+
+	private static final long serialVersionUID = -8955155619683354763L;
+
+	private List<OrgBean> orgList;
+
+	public List<OrgBean> getOrgList() {
+		return orgList;
+	}
+
+	public void setOrgList(List<OrgBean> orgList) {
+		this.orgList = orgList;
+	}
+
+}

+ 32 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetOrgsResp.java

@@ -0,0 +1,32 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.OrgBean;
+
+public class GetOrgsResp extends BaseResponse {
+
+	private static final long serialVersionUID = -8786805029980636744L;
+
+	private long next;
+
+	private List<OrgBean> orgBeanList;
+
+	public long getNext() {
+		return next;
+	}
+
+	public void setNext(long next) {
+		this.next = next;
+	}
+
+	public List<OrgBean> getOrgBeanList() {
+		return orgBeanList;
+	}
+
+	public void setOrgBeanList(List<OrgBean> orgBeanList) {
+		this.orgBeanList = orgBeanList;
+	}
+
+}

+ 21 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetPrivilegeListResp.java

@@ -0,0 +1,21 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class GetPrivilegeListResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2085836838190278368L;
+
+	private List<String> privilegeCodeList;
+
+	public List<String> getPrivilegeCodeList() {
+		return privilegeCodeList;
+	}
+
+	public void setPrivilegeCodeList(List<String> privilegeCodeList) {
+		this.privilegeCodeList = privilegeCodeList;
+	}
+
+}

+ 34 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetStudentFaceResp.java

@@ -0,0 +1,34 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.FacesetBean;
+import cn.com.qmth.examcloud.core.basic.api.bean.StudentFaceBean;
+
+public class GetStudentFaceResp extends BaseResponse {
+
+	/**
+	 * 属性注释
+	 */
+	private static final long serialVersionUID = 5710676102629966716L;
+
+	private StudentFaceBean studentFaceBean;
+
+	private FacesetBean facesetBean;
+
+	public StudentFaceBean getStudentFaceBean() {
+		return studentFaceBean;
+	}
+
+	public void setStudentFaceBean(StudentFaceBean studentFaceBean) {
+		this.studentFaceBean = studentFaceBean;
+	}
+
+	public FacesetBean getFacesetBean() {
+		return facesetBean;
+	}
+
+	public void setFacesetBean(FacesetBean facesetBean) {
+		this.facesetBean = facesetBean;
+	}
+
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetStudentResp.java

@@ -0,0 +1,20 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.StudentBean;
+
+public class GetStudentResp extends BaseResponse {
+
+	private static final long serialVersionUID = 7197179106056569555L;
+
+	private StudentBean studentInfo;
+
+	public StudentBean getStudentInfo() {
+		return studentInfo;
+	}
+
+	public void setStudentInfo(StudentBean studentInfo) {
+		this.studentInfo = studentInfo;
+	}
+
+}

+ 29 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetSystemPropertyResp.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class GetSystemPropertyResp extends BaseResponse {
+
+	private static final long serialVersionUID = -8592124313710003551L;
+
+	private String key;
+
+	private String value;
+
+	public String getKey() {
+		return key;
+	}
+
+	public void setKey(String key) {
+		this.key = key;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+}

+ 22 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetUsableFacesetListResp.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.FacesetBean;
+
+public class GetUsableFacesetListResp extends BaseResponse {
+
+	private static final long serialVersionUID = 1540591806637296939L;
+
+	private List<FacesetBean> facesetBeanList;
+
+	public List<FacesetBean> getFacesetBeanList() {
+		return facesetBeanList;
+	}
+
+	public void setFacesetBeanList(List<FacesetBean> facesetBeanList) {
+		this.facesetBeanList = facesetBeanList;
+	}
+
+}

+ 22 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetUserListByIdsResp.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.UserBean;
+
+public class GetUserListByIdsResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2236372532342357905L;
+
+	private List<UserBean> userBeanList;
+
+	public List<UserBean> getUserBeanList() {
+		return userBeanList;
+	}
+
+	public void setUserBeanList(List<UserBean> userBeanList) {
+		this.userBeanList = userBeanList;
+	}
+
+}

+ 30 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetUserResp.java

@@ -0,0 +1,30 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.UserBean;
+
+public class GetUserResp extends BaseResponse {
+
+	private static final long serialVersionUID = -2113393945721693679L;
+
+	private Boolean existing;
+
+	private UserBean userBean;
+
+	public Boolean getExisting() {
+		return existing;
+	}
+
+	public void setExisting(Boolean existing) {
+		this.existing = existing;
+	}
+
+	public UserBean getUserBean() {
+		return userBean;
+	}
+
+	public void setUserBean(UserBean userBean) {
+		this.userBean = userBean;
+	}
+
+}

+ 23 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/GetXxxResp.java

@@ -0,0 +1,23 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+/**
+ * @author WANGWEI
+ *
+ */
+public class GetXxxResp extends BaseResponse {
+
+	private static final long serialVersionUID = -6925630706679571172L;
+
+	private String s;
+
+	public String getS() {
+		return s;
+	}
+
+	public void setS(String s) {
+		this.s = s;
+	}
+
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/LoginResp.java

@@ -0,0 +1,20 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.api.commons.security.bean.User;
+
+public class LoginResp extends BaseResponse {
+
+	private static final long serialVersionUID = 528886162978052908L;
+
+	private User user;
+
+	public User getUser() {
+		return user;
+	}
+
+	public void setUser(User user) {
+		this.user = user;
+	}
+
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveCourseResp.java

@@ -0,0 +1,20 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
+
+public class SaveCourseResp extends BaseResponse {
+
+	private static final long serialVersionUID = -6692031428275657695L;
+
+	private CourseBean courseBean;
+
+	public CourseBean getCourseBean() {
+		return courseBean;
+	}
+
+	public void setCourseBean(CourseBean courseBean) {
+		this.courseBean = courseBean;
+	}
+
+}

+ 25 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveOrgResp.java

@@ -0,0 +1,25 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+public class SaveOrgResp {
+
+	private Long id;
+	
+	private String name;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+	
+}

+ 20 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveRoleResp.java

@@ -0,0 +1,20 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.basic.api.bean.RoleBean;
+
+public class SaveRoleResp extends BaseResponse {
+
+	private static final long serialVersionUID = -3697515955413916061L;
+
+	private RoleBean roleBean;
+
+	public RoleBean getRoleBean() {
+		return roleBean;
+	}
+
+	public void setRoleBean(RoleBean roleBean) {
+		this.roleBean = roleBean;
+	}
+
+}

+ 29 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveStudentFaceResp.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年7月18日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class SaveStudentFaceResp extends BaseResponse {
+
+	/**
+	 * 属性注释
+	 */
+	private static final long serialVersionUID = 731016458089573829L;
+
+	private Long id;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+}

+ 59 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SaveStudentResp.java

@@ -0,0 +1,59 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年6月29日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class SaveStudentResp extends BaseResponse {
+
+	/**
+	 * 属性注释
+	 */
+	private static final long serialVersionUID = 2263704597882102664L;
+
+	private Long studentId;
+
+	private Long rootOrgId;
+
+	private Long orgId;
+
+	private String orgName;
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+}

+ 29 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/SetSystemPropertyResp.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class SetSystemPropertyResp extends BaseResponse {
+
+	private static final long serialVersionUID = -8345402842873364242L;
+
+	private String key;
+
+	private String value;
+
+	public String getKey() {
+		return key;
+	}
+
+	public void setKey(String key) {
+		this.key = key;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+}

+ 21 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/UnbindStudentCodeResp.java

@@ -0,0 +1,21 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class UnbindStudentCodeResp extends BaseResponse {
+
+	private static final long serialVersionUID = 4719566334495559584L;
+
+	private List<Long> studentIdList;
+
+	public List<Long> getStudentIdList() {
+		return studentIdList;
+	}
+
+	public void setStudentIdList(List<Long> studentIdList) {
+		this.studentIdList = studentIdList;
+	}
+
+}

+ 9 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/UpdatePasswordResp.java

@@ -0,0 +1,9 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class UpdatePasswordResp extends BaseResponse {
+
+	private static final long serialVersionUID = -8014767470452998115L;
+
+}

+ 9 - 0
examcloud-core-basic-api/src/main/java/cn/com/qmth/examcloud/core/basic/api/response/UpdateStudentStatusResp.java

@@ -0,0 +1,9 @@
+package cn.com.qmth.examcloud.core.basic.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class UpdateStudentStatusResp extends BaseResponse {
+
+	private static final long serialVersionUID = 5522567503210196810L;
+
+}

+ 25 - 0
examcloud-core-examwork-api-client/pom.xml

@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>cn.com.qmth.examcloud.rpc</groupId>
+		<artifactId>examcloud-rpc</artifactId>
+		<version>2019-SNAPSHOT</version>
+	</parent>
+	<artifactId>examcloud-core-examwork-api-client</artifactId>
+	<packaging>jar</packaging>
+
+	<dependencies>
+		<dependency>
+			<groupId>cn.com.qmth.examcloud.rpc</groupId>
+			<artifactId>examcloud-core-examwork-api</artifactId>
+			<version>${examcloud.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>cn.com.qmth.examcloud</groupId>
+			<artifactId>examcloud-web</artifactId>
+			<version>${examcloud.version}</version>
+		</dependency>
+	</dependencies>
+
+</project>

+ 30 - 0
examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/AbstractCloudClientSupport.java

@@ -0,0 +1,30 @@
+package cn.com.qmth.examcloud.examwork.api.client;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+import cn.com.qmth.examcloud.web.cloud.CloudClientSupport;
+
+/**
+ * @author WANGWEI
+ *
+ */
+public abstract class AbstractCloudClientSupport extends CloudClientSupport {
+
+	private static final String APP_NAME = "EC-CORE-EXAMWORK";
+
+	@Override
+	protected String getRequestMappingPrefix() {
+		return "api/core/examwork";
+	}
+
+	protected void post(String requestMappingSuffix, BaseRequest body) {
+		super.post(APP_NAME, requestMappingSuffix, body);
+	}
+
+	protected <T> T post(String requestMappingSuffix, BaseRequest body, Class<T> responseType) {
+		return super.post(APP_NAME, requestMappingSuffix, body, responseType);
+	}
+
+	protected void post(String requestMappingSuffix) {
+		super.post(APP_NAME, requestMappingSuffix);
+	}
+}

+ 141 - 0
examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/ExamCloudServiceClient.java

@@ -0,0 +1,141 @@
+package cn.com.qmth.examcloud.examwork.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.examwork.api.ExamCloudService;
+import cn.com.qmth.examcloud.examwork.api.request.CountExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamCourseListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamCoursePaperTypeListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamOrgListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamPropertyListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamPropertyReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamStudentPropertyValueListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamsByIdListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamsReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetOngoingExamListReq;
+import cn.com.qmth.examcloud.examwork.api.request.LockExamStudentsReq;
+import cn.com.qmth.examcloud.examwork.api.request.SaveExamReq;
+import cn.com.qmth.examcloud.examwork.api.request.SaveStudentSpecialSettingsReq;
+import cn.com.qmth.examcloud.examwork.api.request.SetExamPropertyReq;
+import cn.com.qmth.examcloud.examwork.api.request.UnlockExamStudentsReq;
+import cn.com.qmth.examcloud.examwork.api.response.CountExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamCourseListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamCoursePaperTypeListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamOrgListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamPropertyListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamPropertyResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamStudentPropertyValueListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamsByIdListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamsResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetOngoingExamListResp;
+import cn.com.qmth.examcloud.examwork.api.response.LockExamStudentsResp;
+import cn.com.qmth.examcloud.examwork.api.response.SaveExamResp;
+import cn.com.qmth.examcloud.examwork.api.response.SaveStudentSpecialSettingsResp;
+import cn.com.qmth.examcloud.examwork.api.response.SetExamPropertyResp;
+import cn.com.qmth.examcloud.examwork.api.response.UnlockExamStudentsResp;
+
+/**
+ * @author chenken
+ * @date 2018年5月3日 上午9:18:19
+ * @company QMTH
+ * @description ExamClient.java
+ */
+@Service
+public class ExamCloudServiceClient extends AbstractCloudClientSupport implements ExamCloudService {
+
+	private static final long serialVersionUID = -2880611326177571371L;
+
+	@Override
+	public SaveExamResp saveExam(SaveExamReq req) {
+		return post("exam/saveExam", req, SaveExamResp.class);
+	}
+
+	@Override
+	public GetExamResp getExam(GetExamReq req) {
+		return post("exam/getExam", req, GetExamResp.class);
+	}
+
+	@Override
+	public SetExamPropertyResp setExamProperty(SetExamPropertyReq req) {
+		return post("exam/setExamProperty", req, SetExamPropertyResp.class);
+	}
+
+	@Override
+	public GetExamPropertyResp getExamProperty(GetExamPropertyReq req) {
+		return post("exam/getExamProperty", req, GetExamPropertyResp.class);
+	}
+
+	@Override
+	public GetExamPropertyListResp getExamPropertyList(GetExamPropertyListReq req) {
+		return post("exam/getExamPropertyList", req, GetExamPropertyListResp.class);
+	}
+
+	@Override
+	public GetOngoingExamListResp getOngoingExamList(GetOngoingExamListReq req) {
+		return post("exam/getOngoingExamList", req, GetOngoingExamListResp.class);
+	}
+
+	@Override
+	public LockExamStudentsResp lockExamStudents(LockExamStudentsReq req) {
+		return post("exam/lockExamStudents", req, LockExamStudentsResp.class);
+	}
+
+	@Override
+	public UnlockExamStudentsResp unlockExamStudents(UnlockExamStudentsReq req) {
+		return post("exam/unlockExamStudents", req, UnlockExamStudentsResp.class);
+	}
+
+	@Override
+	public GetExamListResp getExamList(GetExamListReq req) {
+		return post("exam/getExamList", req, GetExamListResp.class);
+	}
+
+	@Override
+	public GetExamCourseListResp getExamCourseList(GetExamCourseListReq req) {
+		return post("exam/getExamCourseList", req, GetExamCourseListResp.class);
+	}
+
+	@Override
+	public GetExamCoursePaperTypeListResp getExamCoursePaperTypeList(
+			GetExamCoursePaperTypeListReq req) {
+		return post("exam/getExamCoursePaperTypeList", req, GetExamCoursePaperTypeListResp.class);
+	}
+
+	@Override
+	public CountExamStudentResp countExamStudent(CountExamStudentReq req) {
+		return post("exam/countExamStudent", req, CountExamStudentResp.class);
+	}
+
+	@Override
+	public GetExamOrgListResp getExamOrgList(GetExamOrgListReq req) {
+		return post("exam/getExamOrgList", req, GetExamOrgListResp.class);
+	}
+
+	@Override
+	public GetExamStudentPropertyValueListResp getExamStudentPropertyValueList(
+			GetExamStudentPropertyValueListReq req) {
+		return post("exam/getExamStudentPropertyValueList", req,
+				GetExamStudentPropertyValueListResp.class);
+	}
+
+	@Override
+	public GetExamsByIdListResp getExamsByIdList(GetExamsByIdListReq req) {
+		return post("exam/getExamsByIdList", req, GetExamsByIdListResp.class);
+	}
+
+	@Override
+	public GetExamsResp getExams(GetExamsReq req) {
+		return post("exam/getExams", req, GetExamsResp.class);
+	}
+
+	@Override
+	public SaveStudentSpecialSettingsResp saveStudentSpecialSettings(
+			SaveStudentSpecialSettingsReq req) {
+		return post("exam/saveStudentSpecialSettings", req, SaveStudentSpecialSettingsResp.class);
+	}
+
+}

+ 56 - 0
examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/ExamStudentCloudServiceClient.java

@@ -0,0 +1,56 @@
+package cn.com.qmth.examcloud.examwork.api.client;
+
+import org.springframework.stereotype.Service;
+
+import cn.com.qmth.examcloud.examwork.api.ExamStudentCloudService;
+import cn.com.qmth.examcloud.examwork.api.request.CopyExamStudentsReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamStudentPageReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.ResetExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.SaveExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.UpdateExamStudentStatusReq;
+import cn.com.qmth.examcloud.examwork.api.response.CopyExamStudentsResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamStudentPageResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.ResetExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.SaveExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.UpdateExamStudentStatusResp;
+
+@Service
+public class ExamStudentCloudServiceClient extends AbstractCloudClientSupport
+		implements
+			ExamStudentCloudService {
+
+	private static final long serialVersionUID = -8874453764538303046L;
+
+	@Override
+	public SaveExamStudentResp saveExamStudent(SaveExamStudentReq req) {
+		return post("examStudent/saveExamStudent", req, SaveExamStudentResp.class);
+	}
+
+	@Override
+	public CopyExamStudentsResp copyExamStudents(CopyExamStudentsReq req) {
+		return post("examStudent/copyExamStudents", req, CopyExamStudentsResp.class);
+	}
+
+	@Override
+	public GetExamStudentResp getExamStudent(GetExamStudentReq req) {
+		return post("examStudent/getExamStudent", req, GetExamStudentResp.class);
+	}
+
+	@Override
+	public GetExamStudentPageResp getExamStudentPage(GetExamStudentPageReq req) {
+		return post("examStudent/getExamStudentPage", req, GetExamStudentPageResp.class);
+	}
+
+	@Override
+	public UpdateExamStudentStatusResp updateExamStudentStatus(UpdateExamStudentStatusReq req) {
+		return post("examStudent/updateExamStudentStatus", req, UpdateExamStudentStatusResp.class);
+	}
+
+	@Override
+	public ResetExamStudentResp resetExamStudent(ResetExamStudentReq req) {
+		return post("examStudent/resetExamStudent", req, ResetExamStudentResp.class);
+	}
+
+}

+ 38 - 0
examcloud-core-examwork-api-client/src/main/java/cn/com/qmth/examcloud/examwork/api/client/NoticeCloudServiceClient.java

@@ -0,0 +1,38 @@
+package cn.com.qmth.examcloud.examwork.api.client;
+
+import cn.com.qmth.examcloud.examwork.api.NoticeCloudService;
+import cn.com.qmth.examcloud.examwork.api.request.DisposePublishingUserNoticeReq;
+import cn.com.qmth.examcloud.examwork.api.request.UpdateNoticeStatusReq;
+import cn.com.qmth.examcloud.examwork.api.response.DisposePublishingUserNoticeResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetNoticeRulePublishProgressListResp;
+import org.springframework.stereotype.Service;
+
+@Service
+public class NoticeCloudServiceClient extends AbstractCloudClientSupport
+        implements
+        NoticeCloudService {
+
+    private static final long serialVersionUID = -8874453764538303046L;
+
+    @Override
+    public GetNoticeRulePublishProgressListResp getToBeDisposedNoticeRulePublishProgressList() {
+        return post("notice/getToBeDisposedNoticeRulePublishProgressList",null,GetNoticeRulePublishProgressListResp.class);
+    }
+
+    @Override
+    public DisposePublishingUserNoticeResp disposePublishingUserNotice(DisposePublishingUserNoticeReq req) {
+        return post("notice/disposePublishingUserNotice",req,DisposePublishingUserNoticeResp.class);
+    }
+
+    @Override
+    public void disposeOverdueNotice() {
+        post("notice/disposeOverdueNotice");
+    }
+
+    @Override
+    public void updateNoticeStatus(UpdateNoticeStatusReq updateNoticeStatusReq) {
+        post("notice/updateNoticeStatus",updateNoticeStatusReq);
+    }
+
+
+}

+ 18 - 0
examcloud-core-examwork-api/pom.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>cn.com.qmth.examcloud.rpc</groupId>
+		<artifactId>examcloud-rpc</artifactId>
+		<version>2019-SNAPSHOT</version>
+	</parent>
+	<artifactId>examcloud-core-examwork-api</artifactId>
+	<packaging>jar</packaging>
+	<dependencies>
+		<dependency>
+			<groupId>cn.com.qmth.examcloud</groupId>
+			<artifactId>examcloud-api-commons</artifactId>
+			<version>${examcloud.version}</version>
+		</dependency>
+	</dependencies>
+</project>

+ 198 - 0
examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/ExamCloudService.java

@@ -0,0 +1,198 @@
+package cn.com.qmth.examcloud.examwork.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.examwork.api.request.CountExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamCourseListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamCoursePaperTypeListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamOrgListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamPropertyListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamPropertyReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamStudentPropertyValueListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamsByIdListReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamsReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetOngoingExamListReq;
+import cn.com.qmth.examcloud.examwork.api.request.LockExamStudentsReq;
+import cn.com.qmth.examcloud.examwork.api.request.SaveExamReq;
+import cn.com.qmth.examcloud.examwork.api.request.SaveStudentSpecialSettingsReq;
+import cn.com.qmth.examcloud.examwork.api.request.SetExamPropertyReq;
+import cn.com.qmth.examcloud.examwork.api.request.UnlockExamStudentsReq;
+import cn.com.qmth.examcloud.examwork.api.response.CountExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamCourseListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamCoursePaperTypeListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamOrgListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamPropertyListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamPropertyResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamStudentPropertyValueListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamsByIdListResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamsResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetOngoingExamListResp;
+import cn.com.qmth.examcloud.examwork.api.response.LockExamStudentsResp;
+import cn.com.qmth.examcloud.examwork.api.response.SaveExamResp;
+import cn.com.qmth.examcloud.examwork.api.response.SaveStudentSpecialSettingsResp;
+import cn.com.qmth.examcloud.examwork.api.response.SetExamPropertyResp;
+import cn.com.qmth.examcloud.examwork.api.response.UnlockExamStudentsResp;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年8月6日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public interface ExamCloudService extends CloudService {
+
+	/**
+	 * 保存考试
+	 * 
+	 * @param exam
+	 */
+	SaveExamResp saveExam(SaveExamReq req);
+
+	/**
+	 * 查询考试
+	 * 
+	 * @param name
+	 * @return
+	 */
+	GetExamResp getExam(GetExamReq req);
+
+	/**
+	 * 查询考试
+	 * 
+	 * @param name
+	 * @return
+	 */
+	GetExamsByIdListResp getExamsByIdList(GetExamsByIdListReq req);
+
+	/**
+	 * 设置考试属性配置
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	SetExamPropertyResp setExamProperty(SetExamPropertyReq req);
+
+	/**
+	 * 获取考试属性配置
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamPropertyResp getExamProperty(GetExamPropertyReq req);
+
+	/**
+	 * 获取考试属性配置集合
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamPropertyListResp getExamPropertyList(GetExamPropertyListReq req);
+
+	/**
+	 * 获取正在进行的考试
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetOngoingExamListResp getOngoingExamList(GetOngoingExamListReq req);
+
+	/**
+	 * 锁定考生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	LockExamStudentsResp lockExamStudents(LockExamStudentsReq req);
+
+	/**
+	 * 解锁考生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	UnlockExamStudentsResp unlockExamStudents(UnlockExamStudentsReq req);
+
+	/**
+	 * 查询考试
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamListResp getExamList(GetExamListReq req);
+
+	/**
+	 * 查询考试的课程集合
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamCourseListResp getExamCourseList(GetExamCourseListReq req);
+
+	/**
+	 * 查询考试课程的试卷类型集
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamCoursePaperTypeListResp getExamCoursePaperTypeList(GetExamCoursePaperTypeListReq req);
+
+	/**
+	 * 统计考生数量
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	CountExamStudentResp countExamStudent(CountExamStudentReq req);
+
+	/**
+	 * 获取考试机构列表
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamOrgListResp getExamOrgList(GetExamOrgListReq req);
+
+	/**
+	 * 获取考生属性值集合
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamStudentPropertyValueListResp getExamStudentPropertyValueList(
+			GetExamStudentPropertyValueListReq req);
+
+	/**
+	 * 遍历考试
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamsResp getExams(GetExamsReq req);
+
+	/**
+	 * 保存学生特殊设置
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	SaveStudentSpecialSettingsResp saveStudentSpecialSettings(SaveStudentSpecialSettingsReq req);
+
+}

+ 78 - 0
examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/ExamStudentCloudService.java

@@ -0,0 +1,78 @@
+package cn.com.qmth.examcloud.examwork.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.examwork.api.request.CopyExamStudentsReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamStudentPageReq;
+import cn.com.qmth.examcloud.examwork.api.request.GetExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.ResetExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.SaveExamStudentReq;
+import cn.com.qmth.examcloud.examwork.api.request.UpdateExamStudentStatusReq;
+import cn.com.qmth.examcloud.examwork.api.response.CopyExamStudentsResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamStudentPageResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.ResetExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.SaveExamStudentResp;
+import cn.com.qmth.examcloud.examwork.api.response.UpdateExamStudentStatusResp;
+
+/**
+ * 考生信息服务
+ * 
+ * @author chenken
+ * @date 2018年5月4日 下午2:01:15
+ * @company QMTH
+ * @description ExamStudentCloudService.java
+ */
+public interface ExamStudentCloudService extends CloudService {
+
+	/**
+	 * 保存考生信息
+	 * 
+	 * @param examStudentReq
+	 */
+	SaveExamStudentResp saveExamStudent(SaveExamStudentReq req);
+
+	/**
+	 * 拷贝
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	CopyExamStudentsResp copyExamStudents(CopyExamStudentsReq req);
+
+	/**
+	 * 查询单个考生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamStudentResp getExamStudent(GetExamStudentReq req);
+
+	/**
+	 * 分页查询考生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	GetExamStudentPageResp getExamStudentPage(GetExamStudentPageReq req);
+
+	/**
+	 * 更新考生状态
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	UpdateExamStudentStatusResp updateExamStudentStatus(UpdateExamStudentStatusReq req);
+
+	/**
+	 * 重置考生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	ResetExamStudentResp resetExamStudent(ResetExamStudentReq req);
+}

+ 23 - 0
examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/NoticeCloudService.java

@@ -0,0 +1,23 @@
+package cn.com.qmth.examcloud.examwork.api;
+
+import cn.com.qmth.examcloud.api.commons.CloudService;
+import cn.com.qmth.examcloud.examwork.api.request.DisposePublishingUserNoticeReq;
+import cn.com.qmth.examcloud.examwork.api.request.UpdateNoticeStatusReq;
+import cn.com.qmth.examcloud.examwork.api.response.DisposePublishingUserNoticeResp;
+import cn.com.qmth.examcloud.examwork.api.response.GetNoticeRulePublishProgressListResp;
+import io.swagger.annotations.ApiOperation;
+
+public interface NoticeCloudService extends CloudService {
+
+	@ApiOperation(value = "获取通知规则发布状态")
+	GetNoticeRulePublishProgressListResp getToBeDisposedNoticeRulePublishProgressList();
+
+	@ApiOperation(value = "处理发布中的用户通知数据")
+	DisposePublishingUserNoticeResp disposePublishingUserNotice(DisposePublishingUserNoticeReq req);
+
+	@ApiOperation(value = "清理过期的通知数据")
+	void disposeOverdueNotice();
+
+	@ApiOperation(value = "更新通知状态")
+	void updateNoticeStatus(UpdateNoticeStatusReq updateNoticeStatusReq);
+}

+ 200 - 0
examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/bean/ExamBean.java

@@ -0,0 +1,200 @@
+package cn.com.qmth.examcloud.examwork.api.bean;
+
+import java.util.Date;
+
+import cn.com.qmth.examcloud.api.commons.enums.ExamSpecialSettingsType;
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+/**
+ * 类注释
+ *
+ * @author WANGWEI
+ * @date 2018年8月14日
+ * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
+ */
+public class ExamBean implements JsonSerializable {
+
+	private static final long serialVersionUID = 6619634459082795393L;
+
+	/**
+	 * ID
+	 */
+	private Long id;
+
+	/**
+	 * 顶级机构Id
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 考试批次开始时间
+	 */
+	private Date beginTime;
+
+	/**
+	 * 考试批次结束时间
+	 */
+	private Date endTime;
+
+	/**
+	 * 考试名称
+	 */
+	private String name;
+
+	/**
+	 * 考试编码
+	 */
+	private String code;
+
+	/**
+	 * 考试类型
+	 */
+	private String examType;
+
+	/**
+	 * 考试时长(分钟)
+	 */
+	private Integer duration;
+
+	/**
+	 * 是否可用
+	 */
+	private Boolean enable;
+
+	/**
+	 * 考试备注
+	 */
+	private String remark;
+
+	/**
+	 * 考试次数
+	 */
+	private Long examTimes;
+
+	/**
+	 * 是否禁止考试
+	 */
+	private Boolean examLimit;
+
+	/**
+	 * 开启特殊设置
+	 */
+	private Boolean specialSettingsEnabled;
+
+	/**
+	 * 特殊设置类型
+	 */
+	private ExamSpecialSettingsType specialSettingsType;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Date getBeginTime() {
+		return beginTime;
+	}
+
+	public void setBeginTime(Date beginTime) {
+		this.beginTime = beginTime;
+	}
+
+	public Date getEndTime() {
+		return endTime;
+	}
+
+	public void setEndTime(Date endTime) {
+		this.endTime = endTime;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getExamType() {
+		return examType;
+	}
+
+	public void setExamType(String examType) {
+		this.examType = examType;
+	}
+
+	public Integer getDuration() {
+		return duration;
+	}
+
+	public void setDuration(Integer duration) {
+		this.duration = duration;
+	}
+
+	public Boolean getEnable() {
+		return enable;
+	}
+
+	public void setEnable(Boolean enable) {
+		this.enable = enable;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public Long getExamTimes() {
+		return examTimes;
+	}
+
+	public void setExamTimes(Long examTimes) {
+		this.examTimes = examTimes;
+	}
+
+	public Boolean getExamLimit() {
+		return examLimit;
+	}
+
+	public void setExamLimit(Boolean examLimit) {
+		this.examLimit = examLimit;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public Boolean getSpecialSettingsEnabled() {
+		return specialSettingsEnabled;
+	}
+
+	public void setSpecialSettingsEnabled(Boolean specialSettingsEnabled) {
+		this.specialSettingsEnabled = specialSettingsEnabled;
+	}
+
+	public ExamSpecialSettingsType getSpecialSettingsType() {
+		return specialSettingsType;
+	}
+
+	public void setSpecialSettingsType(ExamSpecialSettingsType specialSettingsType) {
+		this.specialSettingsType = specialSettingsType;
+	}
+}

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff