浏览代码

微信拆分

shenhao 6 年之前
当前提交
ee0d2dfe87
共有 100 个文件被更改,包括 10858 次插入0 次删除
  1. 339 0
      pom.xml
  2. 21 0
      src/main/java/com/ssj/WeixinApp.java
  3. 28 0
      src/main/java/com/ssj/alipay/utils/AlipayClientFactory.java
  4. 132 0
      src/main/java/com/ssj/alipay/utils/AlipayOrderHelper.java
  5. 28 0
      src/main/java/com/ssj/alipay/utils/AlipayPayConfig.java
  6. 59 0
      src/main/java/com/ssj/api/weixin/util/AesException.java
  7. 26 0
      src/main/java/com/ssj/api/weixin/util/ByteGroup.java
  8. 67 0
      src/main/java/com/ssj/api/weixin/util/PKCS7Encoder.java
  9. 61 0
      src/main/java/com/ssj/api/weixin/util/SHA1.java
  10. 39 0
      src/main/java/com/ssj/bean/award/dto/ActivityDrawDto.java
  11. 61 0
      src/main/java/com/ssj/bean/award/dto/ActivityInfoDto.java
  12. 70 0
      src/main/java/com/ssj/bean/award/dto/MaterialInfoDto.java
  13. 95 0
      src/main/java/com/ssj/bean/award/dto/MaterialListDto.java
  14. 120 0
      src/main/java/com/ssj/bean/award/dto/MyAwardListDto.java
  15. 90 0
      src/main/java/com/ssj/bean/award/dto/SncodeInfoDto.java
  16. 51 0
      src/main/java/com/ssj/bean/award/dto/VipIntegralDto.java
  17. 29 0
      src/main/java/com/ssj/bean/award/vo/ActivityDrawShareVO.java
  18. 21 0
      src/main/java/com/ssj/bean/award/vo/MaterialExchangeSaveVO.java
  19. 19 0
      src/main/java/com/ssj/bean/award/vo/UrlShareVO.java
  20. 19 0
      src/main/java/com/ssj/bean/award/vo/VipBaseRequestVO.java
  21. 42 0
      src/main/java/com/ssj/bean/award/vo/VipIntegralRequestVO.java
  22. 154 0
      src/main/java/com/ssj/bean/common/files/domain/FileInfo.java
  23. 41 0
      src/main/java/com/ssj/bean/common/framework/core/domain/BaseEntity.java
  24. 56 0
      src/main/java/com/ssj/bean/common/framework/core/domain/BasePageRequest.java
  25. 23 0
      src/main/java/com/ssj/bean/common/framework/core/domain/BaseRequest.java
  26. 41 0
      src/main/java/com/ssj/bean/common/framework/core/domain/BaseResponse.java
  27. 28 0
      src/main/java/com/ssj/bean/common/framework/core/domain/PersistentEntity.java
  28. 87 0
      src/main/java/com/ssj/bean/common/framework/core/domain/Response.java
  29. 219 0
      src/main/java/com/ssj/bean/conch/conch/domain/ConchDerver.java
  30. 67 0
      src/main/java/com/ssj/bean/conch/conch/domain/ConchDerverUseRecord.java
  31. 112 0
      src/main/java/com/ssj/bean/conch/conch/domain/ConchSystemDerver.java
  32. 54 0
      src/main/java/com/ssj/bean/conch/conch/domain/HomeworkRanking.java
  33. 87 0
      src/main/java/com/ssj/bean/conch/conch/domain/HomeworkRecord.java
  34. 234 0
      src/main/java/com/ssj/bean/conch/conch/domain/IntegralDetail.java
  35. 135 0
      src/main/java/com/ssj/bean/conch/conch/domain/SconOtaManager.java
  36. 102 0
      src/main/java/com/ssj/bean/conch/conch/domain/SconPadInfo.java
  37. 91 0
      src/main/java/com/ssj/bean/conch/conch/domain/SconStudentTermtainData.java
  38. 360 0
      src/main/java/com/ssj/bean/conch/conch/domain/SmarttimePicture.java
  39. 50 0
      src/main/java/com/ssj/bean/conch/conch/dto/BriefHomeworkPictureDto.java
  40. 44 0
      src/main/java/com/ssj/bean/conch/conch/dto/ExerciseQuestionAnswerSpaceDto.java
  41. 90 0
      src/main/java/com/ssj/bean/conch/conch/dto/ExerciseQuestionAnswerStyleDto.java
  42. 44 0
      src/main/java/com/ssj/bean/conch/conch/dto/ExerciseQuestionAnswerValueDto.java
  43. 69 0
      src/main/java/com/ssj/bean/conch/conch/dto/HomeworkCheckStatusDto.java
  44. 96 0
      src/main/java/com/ssj/bean/conch/conch/dto/HomeworkRecordDto.java
  45. 78 0
      src/main/java/com/ssj/bean/conch/conch/dto/KmtExerciseQuestionProblemDto.java
  46. 96 0
      src/main/java/com/ssj/bean/conch/conch/dto/KmtQuestionDto.java
  47. 121 0
      src/main/java/com/ssj/bean/conch/conch/dto/OpenTestDto.java
  48. 160 0
      src/main/java/com/ssj/bean/conch/conch/dto/ProblemDetailDto.java
  49. 106 0
      src/main/java/com/ssj/bean/conch/curator/dto/ClassStudentDetailDto.java
  50. 110 0
      src/main/java/com/ssj/bean/conch/curator/dto/CuratorTeacherListDto.java
  51. 63 0
      src/main/java/com/ssj/bean/conch/curator/dto/TeacherDetailClassListDto.java
  52. 187 0
      src/main/java/com/ssj/bean/course/domain/CourseDetailFeedbackLib.java
  53. 111 0
      src/main/java/com/ssj/bean/course/domain/CourseFeedbackFile.java
  54. 70 0
      src/main/java/com/ssj/bean/course/domain/CourseLearn.java
  55. 69 0
      src/main/java/com/ssj/bean/course/domain/CourseReadHis.java
  56. 49 0
      src/main/java/com/ssj/bean/course/domain/CourseScanHis.java
  57. 251 0
      src/main/java/com/ssj/bean/course/domain/CourseSeries.java
  58. 117 0
      src/main/java/com/ssj/bean/course/domain/CourseSeriesDetail.java
  59. 204 0
      src/main/java/com/ssj/bean/course/domain/CourseSeriesDetailFeedback.java
  60. 59 0
      src/main/java/com/ssj/bean/course/domain/CourseSeriesDetailFile.java
  61. 176 0
      src/main/java/com/ssj/bean/course/domain/CourseSeriesJoin.java
  62. 168 0
      src/main/java/com/ssj/bean/course/domain/CourseSeriesOrder.java
  63. 135 0
      src/main/java/com/ssj/bean/course/domain/CourseSeriesSetting.java
  64. 58 0
      src/main/java/com/ssj/bean/curator/TbLibBindAudit.java
  65. 105 0
      src/main/java/com/ssj/bean/curator/TbVacationLimit.java
  66. 79 0
      src/main/java/com/ssj/bean/es/domain/EsDataRecode.java
  67. 26 0
      src/main/java/com/ssj/bean/kmt/arrange/dto/DutyTemplate.java
  68. 51 0
      src/main/java/com/ssj/bean/kmt/arrange/dto/DutyTimeVO.java
  69. 49 0
      src/main/java/com/ssj/bean/kmt/arrange/dto/TeacherArrangeDayVO.java
  70. 74 0
      src/main/java/com/ssj/bean/kmt/arrange/dto/TeacherArrangeVO.java
  71. 50 0
      src/main/java/com/ssj/bean/kmt/arrange/dto/TeacherNextArrangeVO.java
  72. 15 0
      src/main/java/com/ssj/bean/kmt/arrange/vo/DutyRequestVO.java
  73. 15 0
      src/main/java/com/ssj/bean/kmt/arrange/vo/DutySysRequestVO.java
  74. 15 0
      src/main/java/com/ssj/bean/kmt/arrange/vo/TeacherDutyRequestVO.java
  75. 123 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtAiRecord.java
  76. 75 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtArrangeAllot.java
  77. 158 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtArrangeDetail.java
  78. 140 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtArrangeTemplate.java
  79. 373 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourse.java
  80. 210 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnow.java
  81. 57 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowArea.java
  82. 137 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowDetail.java
  83. 97 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowKdDetail.java
  84. 133 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowTemplate.java
  85. 141 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseQuestionDetail.java
  86. 51 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseRecord.java
  87. 109 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseTemplate.java
  88. 47 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExampaper.java
  89. 97 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExampaperArea.java
  90. 142 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExampaperDetail.java
  91. 487 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBook.java
  92. 185 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookCount.java
  93. 210 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookCourse.java
  94. 434 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookDistributionCount.java
  95. 51 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookLib.java
  96. 87 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookStatusCount.java
  97. 119 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookTeacherRecord.java
  98. 90 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseLibPriority.java
  99. 537 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseQuestion.java
  100. 0 0
      src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseQuestionErrors.java

+ 339 - 0
pom.xml

@@ -0,0 +1,339 @@
+<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>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>1.5.18.RELEASE</version>
+        <relativePath/>
+    </parent>
+
+
+    <artifactId>ssj-weixin</artifactId>
+    <packaging>war</packaging>
+    <name>ssj-weixin</name>
+    <description>微信以及小程序</description>
+    <properties>
+        <java.version>1.8</java.version>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <commons-lang.version>3.4</commons-lang.version>
+        <commons-codec.version>1.10</commons-codec.version>
+        <commons-fileupload.version>1.3.1</commons-fileupload.version>
+        <fastjson.version>1.2.71</fastjson.version>
+        <org.jsoup.version>1.9.2</org.jsoup.version>
+
+        <org.springframework.version>1.5.18.RELEASE</org.springframework.version>
+
+        <!--以下两项需要如果不配置,解析themleaft 会有问题-->
+        <thymeleaf.version>3.0.2.RELEASE</thymeleaf.version>
+        <thymeleaf-layout-dialect.version>2.0.5</thymeleaf-layout-dialect.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.slf4j</groupId>
+                    <artifactId>slf4j-log4j12</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+
+
+        <!-- 文件上传依赖 -->
+        <dependency>
+            <groupId>commons-fileupload</groupId>
+            <artifactId>commons-fileupload</artifactId>
+            <version>${commons-fileupload.version}</version>
+        </dependency>
+        <!-- commons-io -->
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
+            <version>${commons-lang.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-codec</groupId>
+            <artifactId>commons-codec</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>commons-beanutils</groupId>
+            <artifactId>commons-beanutils</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>commons-logging</groupId>
+                    <artifactId>commons-logging</artifactId>
+                </exclusion>
+            </exclusions>
+            <version>1.9.3</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <version>${fastjson.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-redis</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.session</groupId>
+            <artifactId>spring-session-data-redis</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-jpa</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-amqp</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-aop</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-thymeleaf</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+            <version>3.2.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.squareup.okhttp3</groupId>
+            <artifactId>okhttp</artifactId>
+            <version>3.13.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.aliyun.oss</groupId>
+            <artifactId>aliyun-sdk-oss</artifactId>
+            <version>3.4.2</version>
+        </dependency>
+
+        <!-- 环信即时通讯-->
+        <dependency>
+            <groupId>com.easemob</groupId>
+            <artifactId>rest-java-sdk</artifactId>
+            <version>1.0.5</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.httpcomponents</groupId>
+            <artifactId>httpcore</artifactId>
+            <version>4.4.10</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.httpcomponents</groupId>
+            <artifactId>httpclient</artifactId>
+            <version>4.5.6</version>
+        </dependency>
+
+        <dependency>
+            <groupId>redis.clients</groupId>
+            <artifactId>jedis</artifactId>
+        </dependency>
+
+
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-base</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-web</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-annotation</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.code.gson</groupId>
+            <artifactId>gson</artifactId>
+            <version>2.8.5</version>
+        </dependency>
+
+
+        <dependency>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-annotations</artifactId>
+            <version>1.5.13</version>
+            <scope>compile</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>com.alipay.sdk</groupId>
+            <artifactId>alipay-sdk-java</artifactId>
+            <version>3.6.0.ALL</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.zxing</groupId>
+            <artifactId>core</artifactId>
+            <version>3.0.0</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.google.zxing</groupId>
+            <artifactId>javase</artifactId>
+            <version>3.0.0</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org</groupId>
+            <artifactId>jaudiotagger</artifactId>
+            <version>2.0.3</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.session</groupId>
+            <artifactId>spring-session</artifactId>
+            <version>1.3.4.RELEASE</version>
+        </dependency>
+
+        <dependency>
+            <groupId>cn.jpush.api</groupId>
+            <artifactId>jpush-client</artifactId>
+            <version>3.4.3</version>
+        </dependency>
+        <dependency>
+            <groupId>cn.jpush.api</groupId>
+            <artifactId>jiguang-common</artifactId>
+            <version>1.1.7</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.code.gson</groupId>
+            <artifactId>gson</artifactId>
+            <version>2.8.5</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid</artifactId>
+            <version>1.1.19</version>
+        </dependency>
+        <dependency>
+            <groupId>org.json</groupId>
+            <artifactId>json</artifactId>
+            <version>20140107</version>
+        </dependency>
+
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger2</artifactId>
+            <version>2.7.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger-ui</artifactId>
+            <version>2.7.0</version>
+        </dependency>
+        <!-- 阿里云短信SDK -->
+        <dependency>
+            <groupId>com.aliyun</groupId>
+            <artifactId>aliyun-java-sdk-core</artifactId>
+            <version>4.0.6</version>
+        </dependency>
+        <dependency>
+            <groupId>com.aliyun</groupId>
+            <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
+            <version>1.1.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.baidu.aip</groupId>
+            <artifactId>java-sdk</artifactId>
+            <version>3.2.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.thoughtworks.xstream</groupId>
+            <artifactId>xstream</artifactId>
+            <version>1.4.10</version>
+        </dependency>
+        <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+            <version>18.0</version>
+        </dependency>
+
+
+    </dependencies>
+
+    <!-- Package as an executable jar -->
+    <build>
+        <!-- 产生的构件的文件名,默认值是${artifactId}-${version}。 -->
+        <finalName>${project.artifactId}</finalName>
+        <resources>
+            <resource>
+                <directory>src/main/resources/</directory>
+                <filtering>true</filtering>
+                <includes>
+                    <include>**/*.properties</include>
+                </includes>
+            </resource>
+            <resource>
+                <directory>src/main/resources</directory>
+                <includes>
+                    <include>**.*</include>
+                    <include>**/*.*</include><!-- i18n能读取到 -->
+                    <include>**/*/*.*</include>
+                </includes>
+            </resource>
+        </resources>
+
+
+        <plugins>
+
+            <plugin>
+                <artifactId>maven-resources-plugin</artifactId>
+                <configuration>
+                    <encoding>utf-8</encoding>
+                    <useDefaultDelimiters>true</useDefaultDelimiters>
+                </configuration>
+            </plugin>
+
+        </plugins>
+
+    </build>
+    <profiles>
+        <profile>
+            <id>dev</id>
+            <properties>
+                <!-- 环境标识,需要与配置文件的名称相对应 -->
+                <activatedProperties>common-dev</activatedProperties>
+            </properties>
+            <activation>
+                <!-- 默认环境 -->
+                <activeByDefault>true</activeByDefault>
+            </activation>
+        </profile>
+        <profile>
+            <id>prod</id>
+            <properties>
+                <activatedProperties>common-prod</activatedProperties>
+            </properties>
+        </profile>
+    </profiles>
+
+</project>
+
+
+
+
+
+

+ 21 - 0
src/main/java/com/ssj/WeixinApp.java

@@ -0,0 +1,21 @@
+package com.ssj;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+
+@SpringBootApplication(scanBasePackages = {"com.ssj"})
+@EnableJpaRepositories
+public class WeixinApp extends SpringBootServletInitializer{
+
+	 public static void main(String[] args) {
+	        SpringApplication.run(WeixinApp.class);
+	    }
+	 
+	 @Override
+	    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
+	        return builder.sources(WeixinApp.class);
+	    }
+}

+ 28 - 0
src/main/java/com/ssj/alipay/utils/AlipayClientFactory.java

@@ -0,0 +1,28 @@
+package com.ssj.alipay.utils;
+
+import com.alipay.api.AlipayClient;
+import com.alipay.api.DefaultAlipayClient;
+
+
+/**
+ * 支付宝工厂类
+ * 2019年4月23日10:42:44
+ * @author wuwen
+ *
+ */
+public class AlipayClientFactory {
+
+    private static  AlipayClient alipayClient;
+    
+    private AlipayClientFactory (){}
+
+    public synchronized static AlipayClient getAlipayClient() {
+        if (alipayClient == null) {
+            alipayClient = new DefaultAlipayClient(AlipayPayConfig.ALIPAY_GATEWAY_NEW, AlipayPayConfig.APP_ID,
+                    AlipayPayConfig.APP_PRIVATE_KEY, "json", AlipayPayConfig.CHARSET, AlipayPayConfig.ALIPAY_PUBLIC_KEY, "RSA2");
+        }
+        return alipayClient;
+    }
+
+
+}

+ 132 - 0
src/main/java/com/ssj/alipay/utils/AlipayOrderHelper.java

@@ -0,0 +1,132 @@
+package com.ssj.alipay.utils;
+
+import com.alipay.api.AlipayClient;
+import com.alipay.api.domain.AlipayTradeAppPayModel;
+import com.alipay.api.domain.AlipayTradeWapPayModel;
+import com.alipay.api.request.AlipayTradeAppPayRequest;
+import com.alipay.api.request.AlipayTradeWapPayRequest;
+import com.alipay.api.response.AlipayTradeAppPayResponse;
+import com.alipay.api.response.AlipayTradeWapPayResponse;
+import com.ssj.framework.core.security.manager.TokenManager;
+import com.ssj.framework.core.util.SystemResourceLocator;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.Map;
+
+public class AlipayOrderHelper {
+    private static Logger logger = LoggerFactory.getLogger(AlipayOrderHelper.class);
+
+    private static final String ALIPAY_WAP = "WAP";
+    private static final String ALIPAY_APP = "APP";
+
+    /**
+     * 支付宝APP支付
+     * @param orderMoney 金额,
+     * @param order_no   订单编号
+     * @param title      商品的标题/交易标题/订单标题/订单关键字等。
+     * @param body       支付提示语
+     * @return
+     * @throws Exception 创建人:wuwen
+     *                   2019年4月23日11:45:12
+     * @Map<String,Object>
+     */
+    public static Map<String, String> reqestAPPAliPayOrder(BigDecimal orderMoney, String order_no, String title, String body) throws Exception {
+        String url = SystemResourceLocator.getValue("sys_url") + "/pay/payment/order_alipay_callback.html";
+        Map<String, String> data = requestAliPayOrder(orderMoney, order_no, title, body, url, "APP");
+        return data;
+    }
+    /**
+     * 支付宝手机网页支付
+     * @param orderMoney
+     * @param order_no
+     * @param title
+     * @param body
+     * @return
+     * @throws Exception
+     */
+    public static Map<String, String> reqestWapAliPayOrder(BigDecimal orderMoney, String order_no, String title, String body) throws Exception {
+        String url = SystemResourceLocator.getValue("sys_url") + "/pay/payment/order_alipay_callback.html";
+        Map<String, String> data = requestAliPayOrder(orderMoney, order_no, title, body, url, "WAP");
+        return data;
+    }
+
+    public static Map<String, String> requestAliPayOrder(BigDecimal orderMoney, String order_no, String title, String body, String url, String payType) throws Exception {
+        TokenManager tokenManager = SystemResourceLocator.getBean(TokenManager.class, "tokenManager");
+        String key = payType + order_no;
+        Map<String, String> prepaymap = tokenManager.hget(key);
+        logger.info("key=" + key);
+        if (!prepaymap.isEmpty()) {
+            logger.info("===返回支付宝orderString参数redis获取:" + prepaymap);
+            return prepaymap;
+        }
+        String orderString = "";
+        // 支付宝统一下单接口
+        AlipayClient alipayClient = AlipayClientFactory.getAlipayClient();
+
+        if (ALIPAY_WAP.equals(payType)) {
+            //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.wap.pay
+            AlipayTradeWapPayRequest request = new AlipayTradeWapPayRequest();
+
+            //SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
+            AlipayTradeWapPayModel wapPayModel = new AlipayTradeWapPayModel();
+            //设置未付款支付宝交易的超时时间
+            wapPayModel.setTimeoutExpress(AlipayPayConfig.TIMEOUTEXPRESS);
+            //为固定值QUICK_MSECURITY_PAY
+            wapPayModel.setProductCode(AlipayPayConfig.QUICK_MSECURITY_PAY);
+            //商户网站唯一订单号
+            wapPayModel.setOutTradeNo(order_no);
+            //对一笔交易的具体描述信息。如果是多种商品,请将商品描述字符串累加传给body。
+            wapPayModel.setBody(body);
+            //商品的标题/交易标题/订单标题/订单关键字等。
+            wapPayModel.setSubject(title);
+            //订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
+            wapPayModel.setTotalAmount(orderMoney.toString());
+
+            request.setBizModel(wapPayModel);
+            //页面跳转同步通知页面路径 需http://或者https://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问 商户可以自定义同步跳转地址
+            request.setReturnUrl("");
+            //服务器异步通知页面路径 需http://或者https://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
+            request.setNotifyUrl(url);
+
+            AlipayTradeWapPayResponse response = alipayClient.pageExecute(request);
+            //就是orderString 可以直接给客户端请求,无需再做处理。
+            orderString = response.getBody();
+        } else if (ALIPAY_APP.equals(payType)) {
+            //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
+            AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
+            //SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
+            AlipayTradeAppPayModel appPayModel = new AlipayTradeAppPayModel();
+
+            //设置未付款支付宝交易的超时时间
+            appPayModel.setTimeoutExpress(AlipayPayConfig.TIMEOUTEXPRESS);
+            //为固定值QUICK_MSECURITY_PAY
+            appPayModel.setProductCode(AlipayPayConfig.QUICK_MSECURITY_PAY);
+            //商户网站唯一订单号
+            appPayModel.setOutTradeNo(order_no);
+            //对一笔交易的具体描述信息。如果是多种商品,请将商品描述字符串累加传给body。
+            appPayModel.setBody(body);
+            //商品的标题/交易标题/订单标题/订单关键字等。
+            appPayModel.setSubject(title);
+            //订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
+            appPayModel.setTotalAmount(orderMoney.toString());
+
+            request.setBizModel(appPayModel);
+            //支付宝服务器主动通知商户服务器里指定的页面
+            request.setNotifyUrl(url);
+            //这里和普通的接口调用不同,使用的是sdkExecute
+            AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
+            //就是orderString 可以直接给客户端请求,无需再做处理。
+            orderString = response.getBody();
+        }
+        Map<String, String> data = new HashMap<>(16);
+        data.put("orderString", orderString);
+        logger.info("===返回支付宝orderString参数:" + data);
+        if (!data.isEmpty()) {
+            tokenManager.hset(key, data, 1800);
+        }
+        return data;
+    }
+}

文件差异内容过多而无法显示
+ 28 - 0
src/main/java/com/ssj/alipay/utils/AlipayPayConfig.java


+ 59 - 0
src/main/java/com/ssj/api/weixin/util/AesException.java

@@ -0,0 +1,59 @@
+package com.ssj.api.weixin.util;
+
+@SuppressWarnings("serial")
+public class AesException extends Exception {
+
+	public final static int OK = 0;
+	public final static int ValidateSignatureError = -40001;
+	public final static int ParseXmlError = -40002;
+	public final static int ComputeSignatureError = -40003;
+	public final static int IllegalAesKey = -40004;
+	public final static int ValidateAppidError = -40005;
+	public final static int EncryptAESError = -40006;
+	public final static int DecryptAESError = -40007;
+	public final static int IllegalBuffer = -40008;
+	//public final static int EncodeBase64Error = -40009;
+	//public final static int DecodeBase64Error = -40010;
+	//public final static int GenReturnXmlError = -40011;
+
+	private int code;
+
+	private static String getMessage(int code) {
+		switch (code) {
+		case ValidateSignatureError:
+			return "签名验证错误";
+		case ParseXmlError:
+			return "xml解析失败";
+		case ComputeSignatureError:
+			return "sha加密生成签名失败";
+		case IllegalAesKey:
+			return "SymmetricKey非法";
+		case ValidateAppidError:
+			return "appid校验失败";
+		case EncryptAESError:
+			return "aes加密失败";
+		case DecryptAESError:
+			return "aes解密失败";
+		case IllegalBuffer:
+			return "解密后得到的buffer非法";
+//		case EncodeBase64Error:
+//			return "base64加密错误";
+//		case DecodeBase64Error:
+//			return "base64解密错误";
+//		case GenReturnXmlError:
+//			return "xml生成失败";
+		default:
+			return null; // cannot be
+		}
+	}
+
+	public int getCode() {
+		return code;
+	}
+
+	AesException(int code) {
+		super(getMessage(code));
+		this.code = code;
+	}
+
+}

+ 26 - 0
src/main/java/com/ssj/api/weixin/util/ByteGroup.java

@@ -0,0 +1,26 @@
+package com.ssj.api.weixin.util;
+
+import java.util.ArrayList;
+
+class ByteGroup {
+	ArrayList<Byte> byteContainer = new ArrayList<Byte>();
+
+	public byte[] toBytes() {
+		byte[] bytes = new byte[byteContainer.size()];
+		for (int i = 0; i < byteContainer.size(); i++) {
+			bytes[i] = byteContainer.get(i);
+		}
+		return bytes;
+	}
+
+	public ByteGroup addBytes(byte[] bytes) {
+		for (byte b : bytes) {
+			byteContainer.add(b);
+		}
+		return this;
+	}
+
+	public int size() {
+		return byteContainer.size();
+	}
+}

+ 67 - 0
src/main/java/com/ssj/api/weixin/util/PKCS7Encoder.java

@@ -0,0 +1,67 @@
+/**
+ * 对公众平台发送给公众账号的消息加解密示例代码.
+ * 
+ * @copyright Copyright (c) 1998-2014 Tencent Inc.
+ */
+
+// ------------------------------------------------------------------------
+
+package com.ssj.api.weixin.util;
+
+import java.nio.charset.Charset;
+import java.util.Arrays;
+
+/**
+ * 提供基于PKCS7算法的加解密接口.
+ */
+class PKCS7Encoder {
+	static Charset CHARSET = Charset.forName("utf-8");
+	static int BLOCK_SIZE = 32;
+
+	/**
+	 * 获得对明文进行补位填充的字节.
+	 * 
+	 * @param count 需要进行填充补位操作的明文字节个数
+	 * @return 补齐用的字节数组
+	 */
+	static byte[] encode(int count) {
+		// 计算需要填充的位数
+		int amountToPad = BLOCK_SIZE - (count % BLOCK_SIZE);
+		if (amountToPad == 0) {
+			amountToPad = BLOCK_SIZE;
+		}
+		// 获得补位所用的字符
+		char padChr = chr(amountToPad);
+		String tmp = new String();
+		for (int index = 0; index < amountToPad; index++) {
+			tmp += padChr;
+		}
+		return tmp.getBytes(CHARSET);
+	}
+
+	/**
+	 * 删除解密后明文的补位字符
+	 * 
+	 * @param decrypted 解密后的明文
+	 * @return 删除补位字符后的明文
+	 */
+	static byte[] decode(byte[] decrypted) {
+		int pad = (int) decrypted[decrypted.length - 1];
+		if (pad < 1 || pad > 32) {
+			pad = 0;
+		}
+		return Arrays.copyOfRange(decrypted, 0, decrypted.length - pad);
+	}
+
+	/**
+	 * 将数字转化成ASCII码对应的字符,用于对明文进行补码
+	 * 
+	 * @param a 需要转化的数字
+	 * @return 转化得到的字符
+	 */
+	static char chr(int a) {
+		byte target = (byte) (a & 0xFF);
+		return (char) target;
+	}
+
+}

+ 61 - 0
src/main/java/com/ssj/api/weixin/util/SHA1.java

@@ -0,0 +1,61 @@
+/**
+ * 对公众平台发送给公众账号的消息加解密示例代码.
+ * 
+ * @copyright Copyright (c) 1998-2014 Tencent Inc.
+ */
+
+// ------------------------------------------------------------------------
+
+package com.ssj.api.weixin.util;
+
+import java.security.MessageDigest;
+import java.util.Arrays;
+
+/**
+ * SHA1 class
+ *
+ * 计算公众平台的消息签名接口.
+ */
+class SHA1 {
+
+	/**
+	 * 用SHA1算法生成安全签名
+	 * @param token 票据
+	 * @param timestamp 时间戳
+	 * @param nonce 随机字符串
+	 * @param encrypt 密文
+	 * @return 安全签名
+	 * @throws AesException 
+	 */
+	public static String getSHA1(String token, String timestamp, String nonce, String encrypt) throws AesException
+			  {
+		try {
+			String[] array = new String[] { token, timestamp, nonce, encrypt };
+			StringBuffer sb = new StringBuffer();
+			// 字符串排序
+			Arrays.sort(array);
+			for (int i = 0; i < 4; i++) {
+				sb.append(array[i]);
+			}
+			String str = sb.toString();
+			// SHA1签名生成
+			MessageDigest md = MessageDigest.getInstance("SHA-1");
+			md.update(str.getBytes());
+			byte[] digest = md.digest();
+
+			StringBuffer hexstr = new StringBuffer();
+			String shaHex = "";
+			for (int i = 0; i < digest.length; i++) {
+				shaHex = Integer.toHexString(digest[i] & 0xFF);
+				if (shaHex.length() < 2) {
+					hexstr.append(0);
+				}
+				hexstr.append(shaHex);
+			}
+			return hexstr.toString();
+		} catch (Exception e) {
+			e.printStackTrace();
+			throw new AesException(AesException.ComputeSignatureError);
+		}
+	}
+}

+ 39 - 0
src/main/java/com/ssj/bean/award/dto/ActivityDrawDto.java

@@ -0,0 +1,39 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+
+public class ActivityDrawDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Integer status;
+    
+    private Integer integral;
+    
+    private MaterialInfoDto material;
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public Integer getIntegral() {
+		return integral;
+	}
+
+	public void setIntegral(Integer integral) {
+		this.integral = integral;
+	}
+
+	public MaterialInfoDto getMaterial() {
+		return material;
+	}
+
+	public void setMaterial(MaterialInfoDto material) {
+		this.material = material;
+	}
+    
+}

+ 61 - 0
src/main/java/com/ssj/bean/award/dto/ActivityInfoDto.java

@@ -0,0 +1,61 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+import java.util.List;
+
+public class ActivityInfoDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Integer integral;
+
+    private String id;
+
+    private String img;
+    
+    private Integer stockNumber;
+    
+    private List<MaterialInfoDto> materials;
+
+	public Integer getIntegral() {
+		return integral;
+	}
+
+	public void setIntegral(Integer integral) {
+		this.integral = integral;
+	}
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getImg() {
+		return img;
+	}
+
+	public void setImg(String img) {
+		this.img = img;
+	}
+
+	public Integer getStockNumber() {
+		return stockNumber;
+	}
+
+	public void setStockNumber(Integer stockNumber) {
+		this.stockNumber = stockNumber;
+	}
+
+	public List<MaterialInfoDto> getMaterials() {
+		return materials;
+	}
+
+	public void setMaterials(List<MaterialInfoDto> materials) {
+		this.materials = materials;
+	}
+	
+	
+}

+ 70 - 0
src/main/java/com/ssj/bean/award/dto/MaterialInfoDto.java

@@ -0,0 +1,70 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+
+public class MaterialInfoDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Integer level;
+
+    private String name;
+    
+    private String img;
+    
+    private String price;
+    
+    private String qrCodeImg;
+    
+    private String sncode;
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getImg() {
+		return img;
+	}
+
+	public void setImg(String img) {
+		this.img = img;
+	}
+
+	public String getSncode() {
+		return sncode;
+	}
+
+	public void setSncode(String sncode) {
+		this.sncode = sncode;
+	}
+
+	public String getPrice() {
+		return price;
+	}
+
+	public void setPrice(String price) {
+		this.price = price;
+	}
+
+	public String getQrCodeImg() {
+		return qrCodeImg;
+	}
+
+	public void setQrCodeImg(String qrCodeImg) {
+		this.qrCodeImg = qrCodeImg;
+	}
+
+    
+}

+ 95 - 0
src/main/java/com/ssj/bean/award/dto/MaterialListDto.java

@@ -0,0 +1,95 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 20:40 2019/12/9
+ * @Modified By
+ */
+public class MaterialListDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private String id;
+
+    private String name;
+
+    private String img;
+    
+    private String price;
+    
+    private Integer stockNumber;
+    
+    private Integer exchangeIntegral;
+    
+    private Integer isExchange;
+    
+    private Integer level;
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getImg() {
+		return img;
+	}
+
+	public void setImg(String img) {
+		this.img = img;
+	}
+
+	public Integer getStockNumber() {
+		return stockNumber;
+	}
+
+	public void setStockNumber(Integer stockNumber) {
+		this.stockNumber = stockNumber;
+	}
+
+	public Integer getExchangeIntegral() {
+		return exchangeIntegral;
+	}
+
+	public void setExchangeIntegral(Integer exchangeIntegral) {
+		this.exchangeIntegral = exchangeIntegral;
+	}
+
+	public Integer getIsExchange() {
+		return isExchange;
+	}
+
+	public void setIsExchange(Integer isExchange) {
+		this.isExchange = isExchange;
+	}
+
+	public String getPrice() {
+		return price;
+	}
+
+	public void setPrice(String price) {
+		this.price = price;
+	}
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+      
+}

+ 120 - 0
src/main/java/com/ssj/bean/award/dto/MyAwardListDto.java

@@ -0,0 +1,120 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+
+public class MyAwardListDto  implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+    
+    private String id;
+    
+    private String name;
+    
+    private Integer level;
+    
+    private String img;
+    
+    private String sncode;
+    
+    private String sncodeImg;
+    
+    private String leagueName;
+    
+    private String leagueAddress;
+    
+    private Integer type;
+    
+    private Integer status;
+    
+    private String createTime;
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+
+	public String getImg() {
+		return img;
+	}
+
+	public void setImg(String img) {
+		this.img = img;
+	}
+
+	public String getSncode() {
+		return sncode;
+	}
+
+	public void setSncode(String sncode) {
+		this.sncode = sncode;
+	}
+
+	public String getSncodeImg() {
+		return sncodeImg;
+	}
+
+	public void setSncodeImg(String sncodeImg) {
+		this.sncodeImg = sncodeImg;
+	}
+
+	public String getLeagueName() {
+		return leagueName;
+	}
+
+	public void setLeagueName(String leagueName) {
+		this.leagueName = leagueName;
+	}
+
+	public String getLeagueAddress() {
+		return leagueAddress;
+	}
+
+	public void setLeagueAddress(String leagueAddress) {
+		this.leagueAddress = leagueAddress;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public String getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(String createTime) {
+		this.createTime = createTime;
+	}
+    
+      
+}

+ 90 - 0
src/main/java/com/ssj/bean/award/dto/SncodeInfoDto.java

@@ -0,0 +1,90 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+
+public class SncodeInfoDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+    
+    private String sncode;
+    
+    private String sncodeImg;
+    
+    private Integer level;
+    
+    private String img;
+    
+    private String imgUrl;
+    
+    private String name;
+    
+    private Integer type;
+    
+    private Integer status;
+
+	public String getSncode() {
+		return sncode;
+	}
+
+	public void setSncode(String sncode) {
+		this.sncode = sncode;
+	}
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+
+	public String getImg() {
+		return img;
+	}
+
+	public void setImg(String img) {
+		this.img = img;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public String getImgUrl() {
+		return imgUrl;
+	}
+
+	public void setImgUrl(String imgUrl) {
+		this.imgUrl = imgUrl;
+	}
+
+	public String getSncodeImg() {
+		return sncodeImg;
+	}
+
+	public void setSncodeImg(String sncodeImg) {
+		this.sncodeImg = sncodeImg;
+	}
+    
+
+}

+ 51 - 0
src/main/java/com/ssj/bean/award/dto/VipIntegralDto.java

@@ -0,0 +1,51 @@
+package com.ssj.bean.award.dto;
+
+import java.io.Serializable;
+
+public class VipIntegralDto implements Serializable {
+
+	/**
+	 * createTime	String	list	积分变动时间
+	 * type	int	list	变动类型 1-增加 2-减少
+	 * integral	int	list	变动的积分值
+	 * title	String	list	变动类目(积分变动详情原因)
+	 */
+    private static final long serialVersionUID = 1L;
+
+    private String  createTime;
+    private int type;
+    private int integral;
+    private String title;
+
+	public String getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(String createTime) {
+		this.createTime = createTime;
+	}
+
+	public int getType() {
+		return type;
+	}
+
+	public void setType(int type) {
+		this.type = type;
+	}
+
+	public int getIntegral() {
+		return integral;
+	}
+
+	public void setIntegral(int integral) {
+		this.integral = integral;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+}

+ 29 - 0
src/main/java/com/ssj/bean/award/vo/ActivityDrawShareVO.java

@@ -0,0 +1,29 @@
+package com.ssj.bean.award.vo;
+
+public class ActivityDrawShareVO extends VipBaseRequestVO{
+
+	private static final long serialVersionUID = 1L;
+	
+	private String sncode;
+	
+	private String code;
+
+	public String getSncode() {
+		return sncode;
+	}
+
+	public void setSncode(String sncode) {
+		this.sncode = sncode;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+	
+	
+
+}

+ 21 - 0
src/main/java/com/ssj/bean/award/vo/MaterialExchangeSaveVO.java

@@ -0,0 +1,21 @@
+package com.ssj.bean.award.vo;
+
+public class MaterialExchangeSaveVO extends VipBaseRequestVO{
+
+	private static final long serialVersionUID = 1L;
+	
+	private String id;
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+	
+	
+
+	
+	
+}

+ 19 - 0
src/main/java/com/ssj/bean/award/vo/UrlShareVO.java

@@ -0,0 +1,19 @@
+package com.ssj.bean.award.vo;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+public class UrlShareVO extends BaseRequest{
+
+	private static final long serialVersionUID = 1L;
+	
+	private String url;
+
+	public String getUrl() {
+		return url;
+	}
+
+	public void setUrl(String url) {
+		this.url = url;
+	}
+
+}

+ 19 - 0
src/main/java/com/ssj/bean/award/vo/VipBaseRequestVO.java

@@ -0,0 +1,19 @@
+package com.ssj.bean.award.vo;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+public class VipBaseRequestVO extends BaseRequest {
+	
+	private static final long serialVersionUID = 1L;
+	
+	private String vipId;
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+    
+}

+ 42 - 0
src/main/java/com/ssj/bean/award/vo/VipIntegralRequestVO.java

@@ -0,0 +1,42 @@
+package com.ssj.bean.award.vo;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+import io.swagger.annotations.ApiModelProperty;
+
+public class VipIntegralRequestVO extends BaseRequest {
+	
+	private static final long serialVersionUID = 1L;
+
+	@ApiModelProperty(name="vipId",value="会员id",required=true)
+	private String vipId;
+
+	@ApiModelProperty(name="pageSize",value="一页多少条",required=true)
+	private int pageSize=10;
+
+	@ApiModelProperty(name="pageNo",value="第几页",required=true)
+	private int pageNo=1;
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+	public int getPageSize() {
+		return pageSize;
+	}
+
+	public void setPageSize(int pageSize) {
+		this.pageSize = pageSize;
+	}
+
+	public int getPageNo() {
+		return pageNo;
+	}
+
+	public void setPageNo(int pageNo) {
+		this.pageNo = pageNo;
+	}
+}

+ 154 - 0
src/main/java/com/ssj/bean/common/files/domain/FileInfo.java

@@ -0,0 +1,154 @@
+package com.ssj.bean.common.files.domain;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.util.Date;
+
+@Entity
+@Table(name = "sys_file_info")
+public class FileInfo extends BaseEntity {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -2992468966743113586L;
+    /**
+     * 图片加密code
+     */
+	private String fileCode;
+    /**
+     * 图片相对路径
+     */
+	private String filePath;
+    /**
+     * 域名下路径
+     */
+	private String fileThumPath;
+    /**
+     * 文件路径
+     */
+	private String fileName;
+    /**
+     * 文件后缀
+     */
+	private String fileExt;
+    /**
+     * 文件大小
+     */
+	private String fileSize;
+
+	private Date createdDate;// 创建时间
+
+	private String name;
+	
+	private String userId;
+	
+	private int fileWidth;//图片宽
+	
+	private int fileHeight;//图片高
+
+
+	@Column(name = "file_code")
+	public String getFileCode() {
+		return fileCode;
+	}
+
+	public void setFileCode(String fileCode) {
+		this.fileCode = fileCode;
+	}
+
+	@Column(name = "file_path")
+	public String getFilePath() {
+		return filePath;
+	}
+
+	public void setFilePath(String filePath) {
+		this.filePath = filePath;
+	}
+
+	@Column(name = "file_thum_path")
+	public String getFileThumPath() {
+		return fileThumPath;
+	}
+
+	public void setFileThumPath(String fileThumPath) {
+		this.fileThumPath = fileThumPath;
+	}
+
+	@Column(name = "file_name")
+	public String getFileName() {
+		return fileName;
+	}
+
+	public void setFileName(String fileName) {
+		this.fileName = fileName;
+	}
+
+	@Column(name = "file_ext")
+	public String getFileExt() {
+		return fileExt;
+	}
+
+	public void setFileExt(String fileExt) {
+		this.fileExt = fileExt;
+	}
+
+	@Column(name = "file_size")
+	public String getFileSize() {
+		return fileSize;
+	}
+
+	public void setFileSize(String fileSize) {
+		this.fileSize = fileSize;
+	}
+
+	@Column(name = "created_date", updatable = false)
+	public Date getCreatedDate() {
+		return createdDate;
+	}
+
+	public void setCreatedDate(Date createdDate) {
+		this.createdDate = createdDate;
+	}
+
+	@Transient
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+	 @JSONField(serialize=false)
+	 @Column(name = "user_id")
+	public String getUserId() {
+		return userId;
+	}
+
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+	 @Column(name = "file_width")
+	public int getFileWidth() {
+		return fileWidth;
+	}
+
+	public void setFileWidth(int fileWidth) {
+		this.fileWidth = fileWidth;
+	}
+
+	@Column(name = "file_height")
+	public int getFileHeight() {
+		return fileHeight;
+	}
+
+	public void setFileHeight(int fileHeight) {
+		this.fileHeight = fileHeight;
+	}
+
+}

+ 41 - 0
src/main/java/com/ssj/bean/common/framework/core/domain/BaseEntity.java

@@ -0,0 +1,41 @@
+package com.ssj.bean.common.framework.core.domain;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import javax.persistence.*;
+
+/**
+ * 
+ * 类名称:BaseEntity<br>
+ * 类描述: 实体类,所有的实体对象都需要继承该基类<br>
+ * 重要:使用@MappedSupperClass注解取代原来的@Entity和@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)注解<br>
+ * 原因是:@Entity注解会导致所有子类都无法使用二级缓存,而且@MappedSupperClass不需要对应数据库table<br>
+ * @version v1.0
+ *
+ */
+@MappedSuperclass
+public abstract class BaseEntity extends PersistentEntity {
+
+    private static final long serialVersionUID = 1534056643006312407L;
+
+    /*
+     * 主键
+     */
+    private String id;
+
+    public BaseEntity() {
+
+    }
+
+    @Id
+    @GeneratedValue( strategy = GenerationType.AUTO,  generator = "id") //指定生成器名称
+    @GenericGenerator(name = "id", strategy = "com.ssj.framework.idworker.IDGenerator")
+    @Column(length = 32, nullable = false)
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+}

+ 56 - 0
src/main/java/com/ssj/bean/common/framework/core/domain/BasePageRequest.java

@@ -0,0 +1,56 @@
+package com.ssj.bean.common.framework.core.domain;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.serializer.SerializeConfig;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author Mount Liu
+ * @date 2019/9/29
+ */
+public class BasePageRequest implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(name = "pageNo", value = "页码", required = true)
+    private int pageNo;
+    @ApiModelProperty(name = "pageSize", value = "每页条数", required = true)
+    private int pageSize;
+    @ApiModelProperty(name = "maxCreateTime", value = "最大时间,格式(yyyy-MM-dd HH:mm:ss)", required = true)
+    private String maxCreateTime;
+
+    @Override
+    public String toString() {
+        SerializeConfig mapping = new SerializeConfig();
+        mapping.put(Date.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));
+        return JSON.toJSONString(this);
+    }
+
+    public int getPageNo() {
+        return pageNo;
+    }
+
+    public void setPageNo(int pageNo) {
+        this.pageNo = pageNo;
+    }
+
+    public int getPageSize() {
+        return pageSize;
+    }
+
+    public void setPageSize(int pageSize) {
+        this.pageSize = pageSize;
+    }
+
+    public String getMaxCreateTime() {
+        return maxCreateTime;
+    }
+
+    public void setMaxCreateTime(String maxCreateTime) {
+        this.maxCreateTime = maxCreateTime;
+    }
+}

+ 23 - 0
src/main/java/com/ssj/bean/common/framework/core/domain/BaseRequest.java

@@ -0,0 +1,23 @@
+package com.ssj.bean.common.framework.core.domain;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.serializer.SerializeConfig;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+
+import java.io.Serializable;
+import java.util.Date;
+/**
+ *
+ */
+public class BaseRequest implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	@Override
+    public String toString() {
+        SerializeConfig mapping = new SerializeConfig();
+        mapping.put(Date.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));
+        return JSON.toJSONString(this);
+    }
+
+}

+ 41 - 0
src/main/java/com/ssj/bean/common/framework/core/domain/BaseResponse.java

@@ -0,0 +1,41 @@
+package com.ssj.bean.common.framework.core.domain;
+
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import javax.persistence.Transient;
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+public class BaseResponse implements Serializable  {
+
+    private static final long serialVersionUID = 1L;
+
+   private Timestamp timestamp;
+
+    @Transient
+    public Timestamp getTimestamp() {
+        return new Timestamp(System.currentTimeMillis());
+    }
+
+    public void setTimestamp(Timestamp timestamp) {
+        this.timestamp = timestamp;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        return EqualsBuilder.reflectionEquals(o, this, false);
+    }
+
+    @Override
+    public int hashCode() {
+        return HashCodeBuilder.reflectionHashCode(this, false);
+    }
+
+    @Override
+    public String toString() {
+        return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
+    }
+}

+ 28 - 0
src/main/java/com/ssj/bean/common/framework/core/domain/PersistentEntity.java

@@ -0,0 +1,28 @@
+package com.ssj.bean.common.framework.core.domain;
+
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.io.Serializable;
+
+public abstract class PersistentEntity implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object o) {
+        return EqualsBuilder.reflectionEquals(o, this, false);
+    }
+
+    @Override
+    public int hashCode() {
+        return HashCodeBuilder.reflectionHashCode(this, false);
+    }
+
+    @Override
+    public String toString() {
+        return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
+    }
+}

+ 87 - 0
src/main/java/com/ssj/bean/common/framework/core/domain/Response.java

@@ -0,0 +1,87 @@
+package com.ssj.bean.common.framework.core.domain;
+
+import java.io.Serializable;
+
+/**
+ * 
+ * 类名称:Response<br>
+ * 类描述:Response 类<br>
+ * @version v1.0
+ *
+ */
+public class Response implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+    private static final String OK = "ok";
+    private static final String ERROR = "error";
+
+    private Meta meta;
+    private Object data;
+
+    public Response success() {
+        this.meta = new Meta(true, OK);
+        return this;
+    }
+
+    public Response success(String message) {
+        this.meta = new Meta(true, message);
+        return this;
+    }
+
+    public Response success(Object data) {
+        this.meta = new Meta(true, OK);
+        this.data = data;
+        return this;
+    }
+
+    public Response success(Object data, String message) {
+        this.meta = new Meta(true, message);
+        this.data = data;
+        return this;
+    }
+
+    public Response failure() {
+        this.meta = new Meta(false, ERROR);
+        return this;
+    }
+
+    public Response failure(String message) {
+        this.meta = new Meta(false, message);
+        return this;
+    }
+    
+    public Meta getMeta() {
+        return meta;
+    }
+
+    public Object getData() {
+        return data;
+    }
+
+    public class Meta implements Serializable{
+
+        /**
+		 * 
+		 */
+		private static final long serialVersionUID = 4446533722830403967L;
+		private boolean success;
+        private String message;
+
+        public Meta(boolean success) {
+            this.success = success;
+        }
+
+        public Meta(boolean success, String message) {
+            this.success = success;
+            this.message = message;
+        }
+
+        public boolean isSuccess() {
+            return success;
+        }
+
+        public String getMessage() {
+            return message;
+        }
+    }
+}

+ 219 - 0
src/main/java/com/ssj/bean/conch/conch/domain/ConchDerver.java

@@ -0,0 +1,219 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年4月11日 下午3:26:05 
+ * 类说明  硬件设备表(小塾表)跟会员卡之间的绑定,关联用户
+ */
+@Entity
+@Table(name = "conch_derver")
+public class ConchDerver extends BaseEntity{
+
+	private static final long serialVersionUID = 5763217046572919782L;
+	
+	private String derver;//小塾设备号
+	private String qrCode;//二维码(这里是微信公众号的二维码)
+	private String qrCodeImg;//二维码本地图片。
+    private String userId;//使用人(小孩)
+    private Date createdDate;//创建时间。
+    private Date updatedDate;//绑定时间
+    private String vipId;//绑定的会员ID
+    private String	version;
+    private String	versionType;
+    private Long	issueNum;
+    private int isService;
+    private String simcard;//sim卡号
+    private String longitude;//经度
+    private String latitude;//维度
+    private String battery;//电量
+    private Integer type;//1深圳,2上海(默认深圳)
+    private String easemobName;//环信用户名,只有上海版本才用到
+	private String imei; //imei号
+	private String sim;
+	/**
+	 * 试用类型(1:正常使用,2:试用,3:永久使用)
+	 */
+	private int useType;
+	/**
+	 * 试用天数
+	 */
+	private int useDays;
+	/**
+	 * 是否赠送有效(0:有效 1:无效)
+	 */
+	private int isGiveInvalid;
+
+	public int getIsGiveInvalid() {
+		return isGiveInvalid;
+	}
+
+	public void setIsGiveInvalid(int isGiveInvalid) {
+		this.isGiveInvalid = isGiveInvalid;
+	}
+
+	public int getUseType() {
+		return useType;
+	}
+
+	public void setUseType(int useType) {
+		this.useType = useType;
+	}
+
+	public int getUseDays() {
+		return useDays;
+	}
+
+	public void setUseDays(int useDays) {
+		this.useDays = useDays;
+	}
+
+	@Column(name="derver")
+	public String getDerver() {
+		return derver;
+	}
+	public void setDerver(String derver) {
+		this.derver = derver;
+	}
+	@Column(name="qr_code")
+	public String getQrCode() {
+		return qrCode;
+	}
+	public void setQrCode(String qrCode) {
+		this.qrCode = qrCode;
+	}
+	@Column(name="qr_code_img")
+	public String getQrCodeImg() {
+		return qrCodeImg;
+	}
+	public void setQrCodeImg(String qrCodeImg) {
+		this.qrCodeImg = qrCodeImg;
+	}
+	
+	
+
+	@Column(name="created_date")
+	public Date getCreatedDate() {
+		return createdDate;
+	}
+	public void setCreatedDate(Date createdDate) {
+		this.createdDate = createdDate;
+	}
+	
+	@Column(name="updated_date")
+	public Date getUpdatedDate() {
+		return updatedDate;
+	}
+	public void setUpdatedDate(Date updatedDate) {
+		this.updatedDate = updatedDate;
+	}
+	
+	@Column(name="version")
+	public String getVersion() {
+		return version;
+	}
+	public void setVersion(String version) {
+		this.version = version;
+	}
+	
+	@Column(name="version_type")
+	public String getVersionType() {
+		return versionType;
+	}
+	public void setVersionType(String versionType) {
+		this.versionType = versionType;
+	}
+	
+	@Column(name="issue_num")
+	public Long getIssueNum() {
+		return issueNum;
+	}
+	public void setIssueNum(Long issueNum) {
+		this.issueNum = issueNum;
+	}
+	@Column(name="user_id")
+	public String getUserId() {
+		return userId;
+	}
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+	@Column(name="vip_id")
+	public String getVipId() {
+		return vipId;
+	}
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+	@Column(name="is_service")
+	public int getIsService() {
+		return isService;
+	}
+	public void setIsService(int isService) {
+		this.isService = isService;
+	}
+	@Column(name="simcard")
+	public String getSimcard() {
+		return simcard;
+	}
+	public void setSimcard(String simcard) {
+		this.simcard = simcard;
+	}
+	@Column(name="longitude")
+	public String getLongitude() {
+		return longitude;
+	}
+	public void setLongitude(String longitude) {
+		this.longitude = longitude;
+	}
+	@Column(name="latitude")
+	public String getLatitude() {
+		return latitude;
+	}
+	public void setLatitude(String latitude) {
+		this.latitude = latitude;
+	}
+	@Column(name="battery")
+	public String getBattery() {
+		return battery;
+	}
+	public void setBattery(String battery) {
+		this.battery = battery;
+	}
+	@Column(name="type")
+	public Integer getType() {
+		return type;
+	}
+	public void setType(Integer type) {
+		this.type = type;
+	}
+	@Column(name="easemob_name")
+	public String getEasemobName() {
+		return easemobName;
+	}
+	public void setEasemobName(String easemobName) {
+		this.easemobName = easemobName;
+	}
+	@Column(name="imei")
+	public String getImei() {
+		return imei;
+	}
+	public void setImei(String imei) {
+		this.imei = imei;
+	}
+
+	public String getSim() {
+		return sim;
+	}
+
+	public void setSim(String sim) {
+		this.sim = sim;
+	}
+}

+ 67 - 0
src/main/java/com/ssj/bean/conch/conch/domain/ConchDerverUseRecord.java

@@ -0,0 +1,67 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * @author Mount Liu
+ * @date 2019/7/30
+ */
+@Entity
+@Table(name = "conch_derver_use_record")
+public class ConchDerverUseRecord extends BaseEntity {
+
+    private static final long serialVersionUID = 5763217046572919782L;
+
+    /**
+     * 创建时间(激活时间)
+     */
+    private Date createTime;
+    /**
+     * 使用者(tb_user.id)
+     */
+    private String userId;
+    /**
+     * 小塾号
+     */
+    private String derver;
+    /**
+     * 结束时间
+     */
+    private Date endTime;
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public String getDerver() {
+        return derver;
+    }
+
+    public void setDerver(String derver) {
+        this.derver = derver;
+    }
+
+    public Date getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(Date endTime) {
+        this.endTime = endTime;
+    }
+}

+ 112 - 0
src/main/java/com/ssj/bean/conch/conch/domain/ConchSystemDerver.java

@@ -0,0 +1,112 @@
+package com.ssj.bean.conch.conch.domain;
+
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年4月11日 下午3:26:05 
+ * 类说明  硬件设备表(小塾表)跟会员卡之间的绑定,关联用户
+ */
+@Entity
+@Table(name = "conch_system_derver")
+public class ConchSystemDerver extends BaseEntity {
+
+	private static final long serialVersionUID = 5763217046572919782L;
+	
+	private String derver;//小塾设备号
+    private String oldDerver;//由前端上传设备号
+
+    private Date createdDate;//创建时间。
+    private Date updatedDate;//绑定时间
+
+    private String simcard;//sim卡号
+    private String imei;//imei号
+
+	private int num;
+	private int type;
+    public ConchSystemDerver(){};
+	public ConchSystemDerver(String derver, String oldDerver, String simcard, String imei){
+		super();
+        this.derver = derver;
+		this.oldDerver = oldDerver;
+		this.simcard = simcard;
+		this.imei = imei;
+		this.num =0;
+		this.type =2;
+	};
+	public String getDerver() {
+		return derver;
+	}
+
+	public void setDerver(String derver) {
+		this.derver = derver;
+	}
+
+	public String getOldDerver() {
+		return oldDerver;
+	}
+
+	public void setOldDerver(String oldDerver) {
+		this.oldDerver = oldDerver;
+	}
+	@Column(updatable = false)
+	@JSONField(serialize = false)
+	public Date getCreatedDate() {
+		return createdDate;
+	}
+
+	public void setCreatedDate(Date createdDate) {
+		this.createdDate = createdDate;
+	}
+	@Column(insertable = false)
+	@JSONField(serialize = false)
+	public Date getUpdatedDate() {
+		return updatedDate;
+	}
+
+	public void setUpdatedDate(Date updatedDate) {
+		this.updatedDate = updatedDate;
+	}
+
+	public String getSimcard() {
+		return simcard;
+	}
+
+	public void setSimcard(String simcard) {
+		this.simcard = simcard;
+	}
+
+
+
+	public String getImei() {
+		return imei;
+	}
+
+	public void setImei(String imei) {
+		this.imei = imei;
+	}
+	@JSONField(serialize = false)
+	public int getNum() {
+		return num;
+	}
+
+	public void setNum(int num) {
+		this.num = num;
+	}
+	@JSONField(serialize = false)
+	public int getType() {
+		return type;
+	}
+
+	public void setType(int type) {
+		this.type = type;
+	}
+}

+ 54 - 0
src/main/java/com/ssj/bean/conch/conch/domain/HomeworkRanking.java

@@ -0,0 +1,54 @@
+package com.ssj.bean.conch.conch.domain;
+
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "scon_homework_ranking")
+public class HomeworkRanking extends BaseEntity {
+
+  private static final long serialVersionUID = 2400684909955646090L;
+
+  private String vipId;
+  private Integer rankingNum;
+  private Date updateTime;
+  private Date createTime;
+
+  public String getVipId() {
+    return vipId;
+  }
+
+  public void setVipId(String vipId) {
+    this.vipId = vipId;
+  }
+
+
+  public Integer getRankingNum() {
+    return rankingNum;
+  }
+
+  public void setRankingNum(Integer rankingNum) {
+    this.rankingNum = rankingNum;
+  }
+
+  public Date getUpdateTime() {
+    return updateTime;
+  }
+
+  public void setUpdateTime(Date updateTime) {
+    this.updateTime = updateTime;
+  }
+
+  public Date getCreateTime() {
+    return createTime;
+  }
+
+  public void setCreateTime(Date createTime) {
+    this.createTime = createTime;
+  }
+
+}

+ 87 - 0
src/main/java/com/ssj/bean/conch/conch/domain/HomeworkRecord.java

@@ -0,0 +1,87 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.alibaba.fastjson.annotation.JSONField;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 15:50 2019/10/12
+ * @Modified By
+ */
+public class HomeworkRecord implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String id;
+
+    private String homeworkId;
+
+    private String subject;
+
+    private Date date;
+
+    private int type;
+
+    @JSONField(serialize = false)
+    private Integer notCorrectedCount;
+
+    private String homeworkPictureUrl;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getHomeworkId() {
+        return homeworkId;
+    }
+
+    public void setHomeworkId(String homeworkId) {
+        this.homeworkId = homeworkId;
+    }
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        this.subject = subject;
+    }
+
+    public Date getDate() {
+        return date;
+    }
+
+    public void setDate(Date date) {
+        this.date = date;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public Integer getNotCorrectedCount() {
+        return notCorrectedCount;
+    }
+
+    public void setNotCorrectedCount(Integer notCorrectedCount) {
+        this.notCorrectedCount = notCorrectedCount;
+    }
+
+    public String getHomeworkPictureUrl() {
+        return homeworkPictureUrl;
+    }
+
+    public void setHomeworkPictureUrl(String homeworkPictureUrl) {
+        this.homeworkPictureUrl = homeworkPictureUrl;
+    }
+}

+ 234 - 0
src/main/java/com/ssj/bean/conch/conch/domain/IntegralDetail.java

@@ -0,0 +1,234 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+import com.ssj.framework.weixin.util.DateUtil;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * @author sh
+ * @className IntegralDetail
+ * @description 积分明细类
+ * @date 2020/6/2
+ */
+@Entity
+@Table(name="scon_integral_detail")
+public class IntegralDetail extends BaseEntity {
+
+    private String vipId;
+    /**
+     * 变动类型 1-增加 2-减少
+     */
+    private int type;
+
+    /**
+     * 变动的积分值
+     */
+    private int integral;
+
+    /**
+     * 变动类目(积分变动详情原因)
+     */
+    private String title;
+
+    /**
+     * 操作类型
+     * 1、完成作业 2、作业正确率 3、签到 4、周报对比 5、月报对比
+     * 6、周报分享 7、月报分享 8、中奖信息分享、9 积分夺宝 10、积分兑换 11、积分失效
+     */
+    private int operType;
+
+    /**
+     * 积分变动时间
+     */
+    private Date createTime;
+
+    /**
+     * 积分是否失效 1-有效 2-无效
+     */
+    private int state;
+
+    /**
+     * 周报分享和对比,周报开始时间
+     */
+    private String startTime;
+
+    /**
+     * 周报分享和对比,周报结束时间
+     */
+    private String endTime;
+
+    /**
+     * 月报时间 格式 2020-06
+     */
+    private String reportMonth;
+
+    /**
+     * 详细科目
+     * 科目或者奖品兑换码
+     */
+    private String detailCategory;
+
+    public IntegralDetail(){}
+
+    public IntegralDetail(int operType,String detailCategory){
+        this.operType = operType;
+        this.detailCategory = detailCategory;
+        this.state = 1;
+        String month = null;
+        String startTime = null;
+        String title= "";
+        int type = 1;
+        switch (operType){
+            case 1:
+                title="写"+detailCategory+"作业";
+                break;
+            case 2:
+                title=detailCategory+"作业正确率";
+                break;
+            case 3:
+                title="每日签到";
+                break;
+            case 4:
+                title=detailCategory+"周报";
+                Date beginDateTime = DateUtil.getEndOfLastWeek(new Date());
+                LocalDate today = LocalDate.now();
+                if (!Objects.equals(today.getDayOfWeek().getValue(), DayOfWeek.SUNDAY.getValue())) {
+                    beginDateTime = DateUtil.addDays(beginDateTime, -7);
+                }
+                startTime=DateUtil.format_yyyyMMdd(beginDateTime);
+                break;
+            case 5:
+                title="月报提高";
+                month= DateUtil.format(DateUtil.getBeginOfLastMonth(new Date()).getTime(), "yyyy-MM");
+                break;
+            case 6:
+                title=detailCategory+"周报分享";
+                Date beginDateTime2 = DateUtil.getEndOfLastWeek(new Date());
+                LocalDate today2 = LocalDate.now();
+                if (!Objects.equals(today2.getDayOfWeek().getValue(), DayOfWeek.SUNDAY.getValue())) {
+                    beginDateTime2 = DateUtil.addDays(beginDateTime2, -7);
+                }
+                startTime=DateUtil.format_yyyyMMdd(beginDateTime2);
+                break;
+            case 7:
+                title="月报分享";
+                month=DateUtil.format(DateUtil.getBeginOfLastMonth(new Date()).getTime(), "yyyy-MM");
+                break;
+            case 8:
+                title="中奖分享";
+                break;
+            case 9:
+                title="积分抽奖";
+                type = 2;
+                break;
+            case 10:
+                title="积分兑换";
+                type = 2;
+                break;
+            case 11:
+                title="积分过期";
+                type = 2;
+                break;
+            default:
+                break;
+        }
+        this.title = title;
+        this.type = type;
+        this.reportMonth = month;
+        this.startTime=startTime;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public int getIntegral() {
+        return integral;
+    }
+
+    public void setIntegral(int integral) {
+        this.integral = integral;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public int getOperType() {
+        return operType;
+    }
+
+    public void setOperType(int operType) {
+        this.operType = operType;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public int getState() {
+        return state;
+    }
+
+    public void setState(int state) {
+        this.state = state;
+    }
+
+    public String getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(String startTime) {
+        this.startTime = startTime;
+    }
+
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
+    public String getReportMonth() {
+        return reportMonth;
+    }
+
+    public void setReportMonth(String reportMonth) {
+        this.reportMonth = reportMonth;
+    }
+
+    public String getDetailCategory() {
+        return detailCategory;
+    }
+
+    public void setDetailCategory(String detailCategory) {
+        this.detailCategory = detailCategory;
+    }
+
+    public String getVipId() {
+        return vipId;
+    }
+
+    public void setVipId(String vipId) {
+        this.vipId = vipId;
+    }
+}

+ 135 - 0
src/main/java/com/ssj/bean/conch/conch/domain/SconOtaManager.java

@@ -0,0 +1,135 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+/**
+ * @author yangcan
+ * 类描述:小塾OTA系统升级表
+ * 创建时间:2019/6/28 11:21
+ */
+@Entity
+@Table(name = "scon_ota_manager")
+public class SconOtaManager extends BaseEntity{
+	private static final long serialVersionUID = 1L;
+	
+	private String updatePackName;//升级包名称
+	private String currentVersion;//当前ota系统版本号
+	private String updateVersion;//升级后ota系统版本号
+    private String fileKey;//ota版本存放路径
+    private String content;//升级内容
+    private int isTest;//是否测试(0:否 1:是)
+    private String testImei;//测试IMEI号,多个imei号用逗号隔开
+    private int type;//类型(1:深圳小塾,2:上海晓方块)
+    private  String md5;//文件名转换为的编码(md5)
+    private int isUsing;//是否启用升级(0:否 1:是)
+	private int isDelete; //是否删除,0:否 1:是
+	private Date createTime;//创建时间
+    private String fileName;//filekey后缀名
+
+    public String getFileName() {
+        return fileName;
+    }
+
+    public void setFileName(String fileName) {
+        this.fileName = fileName;
+    }
+
+    public String getUpdatePackName() {
+        return updatePackName;
+    }
+
+    public void setUpdatePackName(String updatePackName) {
+        this.updatePackName = updatePackName;
+    }
+
+    @Column(name="current_version")
+    public String getCurrentVersion() {
+        return currentVersion;
+    }
+
+    public void setCurrentVersion(String currentVersion) {
+        this.currentVersion = currentVersion;
+    }
+
+    public String getUpdateVersion() {
+        return updateVersion;
+    }
+
+    public void setUpdateVersion(String updateVersion) {
+        this.updateVersion = updateVersion;
+    }
+
+    public String getFileKey() {
+        return fileKey;
+    }
+
+    public void setFileKey(String fileKey) {
+        this.fileKey = fileKey;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public int getIsTest() {
+        return isTest;
+    }
+
+    public void setIsTest(int isTest) {
+        this.isTest = isTest;
+    }
+
+    public String getTestImei() {
+        return testImei;
+    }
+
+    public void setTestImei(String testImei) {
+        this.testImei = testImei;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public int getIsUsing() {
+        return isUsing;
+    }
+
+    public void setIsUsing(int isUsing) {
+        this.isUsing = isUsing;
+    }
+
+    public int getIsDelete() {
+        return isDelete;
+    }
+
+    public void setIsDelete(int isDelete) {
+        this.isDelete = isDelete;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getMd5() { return md5; }
+
+    public void setMd5(String md5) { this.md5 = md5; }
+}

+ 102 - 0
src/main/java/com/ssj/bean/conch/conch/domain/SconPadInfo.java

@@ -0,0 +1,102 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+/**
+ * @author yangcan
+ * 类描述: 小塾学伴pad信息表
+ * 创建时间:2019/11/7 10:24
+ */
+@Entity
+@Table(name = "scon_pad_info")
+public class SconPadInfo extends BaseEntity{
+
+	private static final long serialVersionUID = 1L;
+	
+	private String padCode;//pad唯一设备码
+	private String xingeToken;//信鸽token
+	private String platform;//信鸽推送平台(ANDROID,IOS)
+    private String vipId;//小孩vip_id
+    private String userId;//小孩user_id
+    private int type; //平台类型:(6:小塾学伴pad端  3:小塾学伴学生app端)
+    private Date createTime;//绑定时间
+    private int isRemind;//0:不接收消息推送 1:接收消息推送
+
+	@Column(name="pad_code")
+	public String getPadCode() {
+		return padCode;
+	}
+
+	public void setPadCode(String padCode) {
+		this.padCode = padCode;
+	}
+
+	@Column(name="xinge_token")
+	public String getXingeToken() {
+		return xingeToken;
+	}
+
+	public void setXingeToken(String xingeToken) {
+		this.xingeToken = xingeToken;
+	}
+
+	@Column(name="platform")
+	public String getPlatform() {
+		return platform;
+	}
+
+	public void setPlatform(String platform) {
+		this.platform = platform;
+	}
+
+	@Column(name="vip_id")
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+    @Column(name="user_id")
+	public String getUserId() {
+		return userId;
+	}
+
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+
+    @Column(name="type")
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    @Column(name="create_time")
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+    @Column(name="is_remind")
+    public int getIsRemind() {
+        return isRemind;
+    }
+
+    public void setIsRemind(int isRemind) {
+        this.isRemind = isRemind;
+    }
+}

+ 91 - 0
src/main/java/com/ssj/bean/conch/conch/domain/SconStudentTermtainData.java

@@ -0,0 +1,91 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 11:54 2020/4/27
+ * @Modified By
+ */
+
+@Entity
+@Table(name = "scon_student_termtain_data")
+public class SconStudentTermtainData extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    private String vipId;
+
+    private String subject;
+
+    /**
+     *类型,1未掌握,2未学习,3已掌握
+     */
+    private int type;
+
+    /**
+     * id列表,逗号拼接
+     */
+    private String detailIds;
+
+    /**
+     * 状态,1生效,0需要重新导入
+     */
+    private int status;
+
+    /**
+     *数据类别,0知识点记录,1题目记录
+     */
+    private int storageDataType;
+
+    public String getVipId() {
+        return vipId;
+    }
+
+    public void setVipId(String vipId) {
+        this.vipId = vipId;
+    }
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        this.subject = subject;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public String getDetailIds() {
+        return detailIds;
+    }
+
+    public void setDetailIds(String detailIds) {
+        this.detailIds = detailIds;
+    }
+
+    public int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+
+    public int getStorageDataType() {
+        return storageDataType;
+    }
+
+    public void setStorageDataType(int storageDataType) {
+        this.storageDataType = storageDataType;
+    }
+}

+ 360 - 0
src/main/java/com/ssj/bean/conch/conch/domain/SmarttimePicture.java

@@ -0,0 +1,360 @@
+package com.ssj.bean.conch.conch.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "scon_smarttime_picture")
+public class SmarttimePicture extends BaseEntity {
+
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 375584366877155954L;
+
+
+    private String            parentId;
+
+
+    private String            fileKey;
+
+
+    private Integer           commentNums;
+
+
+    private String            derver;
+
+    private String            lat;
+
+
+    private String            lon;
+
+
+    private String            address;
+
+
+    private Integer           mnc1;
+
+
+    private Integer           lac1;
+
+
+    private Integer           cell1;
+
+
+    private Integer           strength1;
+
+
+    private Integer           mnc2;
+
+
+    private Integer           lac2;
+
+    private Integer           cell2;
+
+  
+    private Integer           strength2;
+
+
+    private Integer           mnc3;
+
+
+    private Integer           lac3;
+
+
+    private Integer           cell3;
+
+   
+    private Integer           strength3;
+
+ 
+    private Integer           mnc4;
+
+ 
+    private Integer           lac4;
+
+
+    private Integer           cell4;
+
+
+    private Integer           strength4;
+
+
+    private String            network;
+
+
+    private int               type;
+
+
+    private String            derverFileKey;
+
+
+    private Date              createTime;
+
+  
+    private int               isDelete         = 0;
+
+
+    private String smartsay;
+    
+ 
+    private String keyword; //图片分类标签
+    
+    private String 			  vipId;//会员卡id
+    
+    @Column(name = "parent_id")
+    public String getParentId() {
+        return parentId;
+    }
+
+    public void setParentId(String parentId) {
+        this.parentId = parentId;
+    }
+    @Column(name = "file_key")
+    public String getFileKey() {
+        return fileKey;
+    }
+
+    public void setFileKey(String fileKey) {
+        this.fileKey = fileKey;
+    }
+    @Column(name = "comment_nums")
+    public Integer getCommentNums() {
+        return commentNums;
+    }
+
+    public void setCommentNums(Integer commentNums) {
+        this.commentNums = commentNums;
+    }
+    @Column(name = "derver")
+    public String getDerver() {
+        return derver;
+    }
+
+    public void setDerver(String derver) {
+        this.derver = derver;
+    }
+    @Column(name = "lat")
+    public String getLat() {
+        return lat;
+    }
+
+    public void setLat(String lat) {
+        this.lat = lat;
+    }
+    @Column(name = "lon")
+    public String getLon() {
+        return lon;
+    }
+
+    public void setLon(String lon) {
+        this.lon = lon;
+    }
+    @Column(name = "address")
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+    @Column(name = "mnc1")
+    public Integer getMnc1() {
+        return mnc1;
+    }
+
+    public void setMnc1(Integer mnc1) {
+        this.mnc1 = mnc1;
+    }
+    @Column(name = "lac1")
+    public Integer getLac1() {
+        return lac1;
+    }
+
+    public void setLac1(Integer lac1) {
+        this.lac1 = lac1;
+    }
+    @Column(name = "cell1")
+    public Integer getCell1() {
+        return cell1;
+    }
+
+    public void setCell1(Integer cell1) {
+        this.cell1 = cell1;
+    }
+    @Column(name = "strength1")
+    public Integer getStrength1() {
+        return strength1;
+    }
+
+    public void setStrength1(Integer strength1) {
+        this.strength1 = strength1;
+    }
+    @Column(name = "mnc2")
+    public Integer getMnc2() {
+        return mnc2;
+    }
+
+    public void setMnc2(Integer mnc2) {
+        this.mnc2 = mnc2;
+    }
+    @Column(name = "lac2")
+    public Integer getLac2() {
+        return lac2;
+    }
+
+    public void setLac2(Integer lac2) {
+        this.lac2 = lac2;
+    }
+    @Column(name = "cell2")
+    public Integer getCell2() {
+        return cell2;
+    }
+
+    public void setCell2(Integer cell2) {
+        this.cell2 = cell2;
+    }
+    @Column(name = "strength2")
+    public Integer getStrength2() {
+        return strength2;
+    }
+
+    public void setStrength2(Integer strength2) {
+        this.strength2 = strength2;
+    }
+    @Column(name = "mnc3")
+    public Integer getMnc3() {
+        return mnc3;
+    }
+
+    public void setMnc3(Integer mnc3) {
+        this.mnc3 = mnc3;
+    }
+    @Column(name = "lac3")
+    public Integer getLac3() {
+        return lac3;
+    }
+
+    public void setLac3(Integer lac3) {
+        this.lac3 = lac3;
+    }
+    @Column(name = "cell3")
+    public Integer getCell3() {
+        return cell3;
+    }
+
+    public void setCell3(Integer cell3) {
+        this.cell3 = cell3;
+    }
+    @Column(name = "strength3")
+    public Integer getStrength3() {
+        return strength3;
+    }
+
+    public void setStrength3(Integer strength3) {
+        this.strength3 = strength3;
+    }
+    @Column(name = "mnc4")
+    public Integer getMnc4() {
+        return mnc4;
+    }
+
+    public void setMnc4(Integer mnc4) {
+        this.mnc4 = mnc4;
+    }
+    @Column(name = "lac4")
+    public Integer getLac4() {
+        return lac4;
+    }
+
+    public void setLac4(Integer lac4) {
+        this.lac4 = lac4;
+    }
+    @Column(name = "cell4")
+    public Integer getCell4() {
+        return cell4;
+    }
+
+    public void setCell4(Integer cell4) {
+        this.cell4 = cell4;
+    }
+    @Column(name = "strength4")
+    public Integer getStrength4() {
+        return strength4;
+    }
+
+    public void setStrength4(Integer strength4) {
+        this.strength4 = strength4;
+    }
+    @Column(name = "network")
+    public String getNetwork() {
+        return network;
+    }
+
+    public void setNetwork(String network) {
+        this.network = network;
+    }
+    @Column(name = "type")
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+    @Column(name = "derver_file_key")
+    public String getDerverFileKey() {
+        return derverFileKey;
+    }
+
+    public void setDerverFileKey(String derverFileKey) {
+        this.derverFileKey = derverFileKey;
+    }
+    @Column(name = "create_time")
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+    @Column(name = "is_delete")
+    public int getIsDelete() {
+        return isDelete;
+    }
+
+    public void setIsDelete(int isDelete) {
+        this.isDelete = isDelete;
+    }
+    @Column(name = "smartsay")
+	public String getSmartsay() {
+		return smartsay;
+	}
+
+	public void setSmartsay(String smartsay) {
+		this.smartsay = smartsay;
+	}
+	@Column(name = "keyword")
+	public String getKeyword() {
+		return keyword;
+	}
+
+	public void setKeyword(String keyword) {
+		this.keyword = keyword;
+	}
+
+	@Column(name = "vip_id")
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+}

+ 50 - 0
src/main/java/com/ssj/bean/conch/conch/dto/BriefHomeworkPictureDto.java

@@ -0,0 +1,50 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 14:45 2019/10/12
+ * @Modified By
+ */
+public class BriefHomeworkPictureDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String homeworkPictureId;
+
+    /**
+     * 类型 图片状态(0:正常,1:模糊,2:补拍(包括模糊图片更替、二次作业),3:作业不全, 5:登记, 10不批改)
+     */
+    private int type;
+
+    /**
+     * 原图链接
+     */
+    private String homeworkPictureUrl;
+
+
+    public String getHomeworkPictureId() {
+        return homeworkPictureId;
+    }
+
+    public void setHomeworkPictureId(String homeworkPictureId) {
+        this.homeworkPictureId = homeworkPictureId;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public String getHomeworkPictureUrl() {
+        return homeworkPictureUrl;
+    }
+
+    public void setHomeworkPictureUrl(String homeworkPictureUrl) {
+        this.homeworkPictureUrl = homeworkPictureUrl;
+    }
+}

+ 44 - 0
src/main/java/com/ssj/bean/conch/conch/dto/ExerciseQuestionAnswerSpaceDto.java

@@ -0,0 +1,44 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 13:58 2019/10/30
+ * @Modified By
+ */
+public class ExerciseQuestionAnswerSpaceDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private int index;
+
+    private int selectedType;
+
+    private List<ExerciseQuestionAnswerValueDto> list;
+
+    public int getIndex() {
+        return index;
+    }
+
+    public void setIndex(int index) {
+        this.index = index;
+    }
+
+    public int getSelectedType() {
+        return selectedType;
+    }
+
+    public void setSelectedType(int selectedType) {
+        this.selectedType = selectedType;
+    }
+
+    public List<ExerciseQuestionAnswerValueDto> getList() {
+        return list;
+    }
+
+    public void setList(List<ExerciseQuestionAnswerValueDto> list) {
+        this.list = list;
+    }
+}

+ 90 - 0
src/main/java/com/ssj/bean/conch/conch/dto/ExerciseQuestionAnswerStyleDto.java

@@ -0,0 +1,90 @@
+package com.ssj.bean.conch.conch.dto;
+
+import com.alibaba.fastjson.annotation.JSONField;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 13:59 2019/10/30
+ * @Modified By
+ */
+public class ExerciseQuestionAnswerStyleDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private int width = 16;
+
+    private int height = 16;
+
+    private String color = "#666666";
+
+    private int flex;
+
+    private int fontSize = 16;
+
+    private String background = "transparent";
+
+    private int textIndent;
+
+    public int getWidth() {
+        return width;
+    }
+
+    public void setWidth(int width) {
+        this.width = width;
+    }
+
+    public int getHeight() {
+        return height;
+    }
+
+    public void setHeight(int height) {
+        this.height = height;
+    }
+
+    @JSONField(serialize = false)
+    public String getColor() {
+        return color;
+    }
+
+    public void setColor(String color) {
+        this.color = color;
+    }
+
+    @JSONField(serialize = false)
+    public int getFlex() {
+        return flex;
+    }
+
+    public void setFlex(int flex) {
+        this.flex = flex;
+    }
+
+    @JSONField(serialize = false)
+    public int getFontSize() {
+        return fontSize;
+    }
+
+    public void setFontSize(int fontSize) {
+        this.fontSize = fontSize;
+    }
+
+    @JSONField(serialize = false)
+    public String getBackground() {
+        return background;
+    }
+
+    public void setBackground(String background) {
+        this.background = background;
+    }
+
+    @JSONField(serialize = false)
+    public int getTextIndent() {
+        return textIndent;
+    }
+
+    public void setTextIndent(int textIndent) {
+        this.textIndent = textIndent;
+    }
+}

+ 44 - 0
src/main/java/com/ssj/bean/conch/conch/dto/ExerciseQuestionAnswerValueDto.java

@@ -0,0 +1,44 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 13:59 2019/10/30
+ * @Modified By
+ */
+public class ExerciseQuestionAnswerValueDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private int type;
+
+    private String value;
+
+    private ExerciseQuestionAnswerStyleDto style;
+
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    public ExerciseQuestionAnswerStyleDto getStyle() {
+        return style;
+    }
+
+    public void setStyle(ExerciseQuestionAnswerStyleDto style) {
+        this.style = style;
+    }
+}

+ 69 - 0
src/main/java/com/ssj/bean/conch/conch/dto/HomeworkCheckStatusDto.java

@@ -0,0 +1,69 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 14:39 2019/11/13
+ * @Modified By
+ */
+public class HomeworkCheckStatusDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String homeworkId;
+
+
+    private int countCheckStartTime;
+
+    private int countCheckEndTime;
+
+    private int totalCount;
+
+    public String getHomeworkId() {
+        return homeworkId;
+    }
+
+    public void setHomeworkId(String homeworkId) {
+        this.homeworkId = homeworkId;
+    }
+
+    public int getCountCheckStartTime() {
+        return countCheckStartTime;
+    }
+
+    public void setCountCheckStartTime(int countCheckStartTime) {
+        this.countCheckStartTime = countCheckStartTime;
+    }
+
+    public int getCountCheckEndTime() {
+        return countCheckEndTime;
+    }
+
+    public void setCountCheckEndTime(int countCheckEndTime) {
+        this.countCheckEndTime = countCheckEndTime;
+    }
+
+    public int getTotalCount() {
+        return totalCount;
+    }
+
+    public void setTotalCount(int totalCount) {
+        this.totalCount = totalCount;
+    }
+
+    public boolean isCheckingFlag (){
+        if (this.countCheckStartTime > 0){
+            return true;
+        } else {
+            return false;
+        }
+    }
+    public boolean isCheckedFlag (){
+        if (this.countCheckEndTime == this.countCheckStartTime && this.totalCount == this.countCheckStartTime){
+            return true;
+        } else {
+            return false;
+        }
+    }
+}

+ 96 - 0
src/main/java/com/ssj/bean/conch/conch/dto/HomeworkRecordDto.java

@@ -0,0 +1,96 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 15:20 2019/10/12
+ * @Modified By
+ */
+public class HomeworkRecordDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String date;
+
+    private String dateweek;
+
+    /**
+     * 类别, 0待批改,1模糊,2补拍,3作业不全,5已批改
+     */
+    private int type;
+
+    private Integer notCorrectedCount;
+
+    private String homeworkId;
+
+    private String subject;
+
+    private List<BriefHomeworkPictureDto> homeworkPictures = new ArrayList<>();
+
+    public String getDate() {
+        return date;
+    }
+
+    public void setDate(String date) {
+        this.date = date;
+    }
+
+    public String getDateweek() {
+        return dateweek;
+    }
+
+    public void setDateweek(String dateweek) {
+        this.dateweek = dateweek;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public Integer getNotCorrectedCount() {
+        return notCorrectedCount;
+    }
+
+    public void setNotCorrectedCount(Integer notCorrectedCount) {
+        this.notCorrectedCount = notCorrectedCount;
+    }
+
+    public String getHomeworkId() {
+        return homeworkId;
+    }
+
+    public void setHomeworkId(String homeworkId) {
+        this.homeworkId = homeworkId;
+    }
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        switch (subject){
+            case "语文": this.subject = "YUWEN"; break;
+            case "英语": this.subject = "YINGYU"; break;
+            default: this.subject = "SHUXUE";
+        }
+    }
+
+    public List<BriefHomeworkPictureDto> getHomeworkPictures() {
+        return homeworkPictures;
+    }
+
+    public void setHomeworkPictures(List<BriefHomeworkPictureDto> homeworkPictures) {
+        this.homeworkPictures = homeworkPictures;
+    }
+
+    public void addHomeworkPicture (BriefHomeworkPictureDto homeworkPictureDto){
+        this.homeworkPictures.add(homeworkPictureDto);
+    }
+}

+ 78 - 0
src/main/java/com/ssj/bean/conch/conch/dto/KmtExerciseQuestionProblemDto.java

@@ -0,0 +1,78 @@
+package com.ssj.bean.conch.conch.dto;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.annotation.JSONField;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 11:39 2019/10/30
+ * @Modified By
+ */
+public class KmtExerciseQuestionProblemDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String questionId;
+
+    private String question;
+
+    private String answerJson;
+
+    private String bigQuestionIndex;
+
+    private List<ExerciseQuestionAnswerSpaceDto>  answers = new ArrayList<>();
+
+    public String getQuestionId() {
+        return questionId;
+    }
+
+    public void setQuestionId(String questionId) {
+        this.questionId = questionId;
+    }
+
+    @JSONField(serialize=false)
+    public String getAnswerJson() {
+        return answerJson;
+    }
+
+    public void setAnswerJson(String answerJson) {
+        this.answerJson = answerJson;
+        this.answers = JSON.parseArray(answerJson, ExerciseQuestionAnswerSpaceDto.class);
+        int index = 1;
+        if (this.answers != null && this.answers.size() > 0) {
+            for (ExerciseQuestionAnswerSpaceDto questionAnswer : this.answers) {
+                questionAnswer.setIndex(index);
+                index++;
+            }
+        }
+    }
+
+    @JSONField(serialize=false)
+    public String getBigQuestionIndex() {
+        return bigQuestionIndex;
+    }
+
+    public void setBigQuestionIndex(String bigQuestionIndex) {
+        this.bigQuestionIndex = bigQuestionIndex;
+    }
+
+    public String getQuestion() {
+        return question;
+    }
+
+    public void setQuestion(String question) {
+        this.question = question;
+    }
+
+    public List<ExerciseQuestionAnswerSpaceDto> getAnswers() {
+        return answers;
+    }
+
+    public void setAnswers(List<ExerciseQuestionAnswerSpaceDto> answers) {
+        this.answers = answers;
+    }
+}

+ 96 - 0
src/main/java/com/ssj/bean/conch/conch/dto/KmtQuestionDto.java

@@ -0,0 +1,96 @@
+package com.ssj.bean.conch.conch.dto;
+
+import com.alibaba.fastjson.annotation.JSONField;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 15:03 2019/10/24
+ * @Modified By
+ */
+public class KmtQuestionDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String questionId;
+
+    private String question;
+
+    private String optionContent;
+
+    private String optionAnswer;
+
+    private String analysis;
+
+    private String thinking;
+
+    private String suggest;
+
+    @JSONField(serialize = false)
+    private int num;
+
+    public String getQuestionId() {
+        return questionId;
+    }
+
+    public void setQuestionId(String questionId) {
+        this.questionId = questionId;
+    }
+
+    public String getQuestion() {
+        return question;
+    }
+
+    public void setQuestion(String question) {
+        this.question = question;
+    }
+
+    public String getOptionContent() {
+        return optionContent;
+    }
+
+    public void setOptionContent(String optionContent) {
+        this.optionContent = optionContent;
+    }
+
+    public String getOptionAnswer() {
+        return optionAnswer;
+    }
+
+    public void setOptionAnswer(String optionAnswer) {
+        this.optionAnswer = optionAnswer;
+    }
+
+    public String getAnalysis() {
+        return analysis;
+    }
+
+    public void setAnalysis(String analysis) {
+        this.analysis = analysis;
+    }
+
+    public String getThinking() {
+        return thinking;
+    }
+
+    public void setThinking(String thinking) {
+        this.thinking = thinking;
+    }
+
+    public String getSuggest() {
+        return suggest;
+    }
+
+    public void setSuggest(String suggest) {
+        this.suggest = suggest;
+    }
+
+    public int getNum() {
+        return num;
+    }
+
+    public void setNum(int num) {
+        this.num = num;
+    }
+}

+ 121 - 0
src/main/java/com/ssj/bean/conch/conch/dto/OpenTestDto.java

@@ -0,0 +1,121 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author yanghuan
+ * @title: OpenTestDto
+ * @projectName ssj
+ * @description: TODO
+ * @date 2020/5/15 17:44
+ */
+public class OpenTestDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private int questionNo;
+
+    private  String questionId;
+
+    private String question;
+
+    private String module;
+
+    private String answer;
+
+    private String moduleType;
+
+    private List<Contents> optionList;
+
+    public String getModuleType() {
+        return moduleType;
+    }
+
+    public void setModuleType(String moduleType) {
+        this.moduleType = moduleType;
+    }
+
+    public int getQuestionNo() {
+        return questionNo;
+    }
+
+    public void setQuestionNo(int questionNo) {
+        this.questionNo = questionNo;
+    }
+
+    public String getQuestionId() {
+        return questionId;
+    }
+
+    public void setQuestionId(String questionId) {
+        this.questionId = questionId;
+    }
+
+    public String getQuestion() {
+        return question;
+    }
+
+    public void setQuestion(String question) {
+        this.question = question;
+    }
+
+    public String getModule() {
+        return module;
+    }
+
+    public void setModule(String module) {
+        this.module = module;
+    }
+
+    public String getAnswer() {
+        return answer;
+    }
+
+    public void setAnswer(String answer) {
+        this.answer = answer;
+    }
+
+    public List<Contents> getOptionList() {
+        return optionList;
+    }
+
+    public void setOptionList(List<Contents> optionList) {
+        this.optionList = optionList;
+    }
+
+    public  class Contents implements Serializable{
+
+        private static final long serialVersionUID = -7533013383719455973L;
+
+        private String option;
+
+        private String value;
+
+        private int isAnswer;
+
+        public int getIsAnswer() {
+            return isAnswer;
+        }
+
+        public void setIsAnswer(int isAnswer) {
+            this.isAnswer = isAnswer;
+        }
+
+        public String getOption() {
+            return option;
+        }
+
+        public void setOption(String option) {
+            this.option = option;
+        }
+
+        public String getValue() {
+            return value;
+        }
+
+        public void setValue(String value) {
+            this.value = value;
+        }
+    }
+}

+ 160 - 0
src/main/java/com/ssj/bean/conch/conch/dto/ProblemDetailDto.java

@@ -0,0 +1,160 @@
+package com.ssj.bean.conch.conch.dto;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 15:06 2019/10/24
+ * @Modified By
+ */
+public class ProblemDetailDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private int isFeedback;
+
+    private String problemPictureId = "";
+
+    private int queryStatus;
+
+    private int resolutionStatus;
+
+    private String createTime = "";
+
+    private String subject = "";
+
+    private String derverFileKey = "";
+
+    private String problemFeedbackVideoPath = "";
+
+    private String problemPicturePath = "";
+
+    private List<KmtExerciseQuestionProblemDto> similarQuestions = new ArrayList<>();
+
+    private List<KmtQuestionDto> recommendedQuestions = new ArrayList<>();
+
+    private String teacherMessage = "";
+    /**
+     * 图片列表
+     */
+    private List<Map<String, String>> fileKeys;
+    /**
+     * 语音list
+     */
+    private List<Map<String, String>> voiceKeyList;
+
+    public int getIsFeedback() {
+        return isFeedback;
+    }
+
+    public void setIsFeedback(int isFeedback) {
+        this.isFeedback = isFeedback;
+    }
+
+    public String getProblemPictureId() {
+        return problemPictureId;
+    }
+
+    public void setProblemPictureId(String problemPictureId) {
+        this.problemPictureId = problemPictureId;
+    }
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        this.subject = subject;
+    }
+
+    public String getDerverFileKey() {
+        return derverFileKey;
+    }
+
+    public void setDerverFileKey(String derverFileKey) {
+        this.derverFileKey = derverFileKey;
+    }
+
+    public String getProblemFeedbackVideoPath() {
+        return problemFeedbackVideoPath;
+    }
+
+    public void setProblemFeedbackVideoPath(String problemFeedbackVideoPath) {
+        this.problemFeedbackVideoPath = problemFeedbackVideoPath;
+    }
+
+    public String getProblemPicturePath() {
+        return problemPicturePath;
+    }
+
+    public void setProblemPicturePath(String problemPicturePath) {
+        this.problemPicturePath = problemPicturePath;
+    }
+
+    public List<KmtExerciseQuestionProblemDto> getSimilarQuestions() {
+        return similarQuestions;
+    }
+
+    public void setSimilarQuestions(List<KmtExerciseQuestionProblemDto> similarQuestions) {
+        this.similarQuestions = similarQuestions;
+    }
+
+    public List<KmtQuestionDto> getRecommendedQuestions() {
+        return recommendedQuestions;
+    }
+
+    public void setRecommendedQuestions(List<KmtQuestionDto> recommendedQuestions) {
+        this.recommendedQuestions = recommendedQuestions;
+    }
+
+    public String getTeacherMessage() {
+        return teacherMessage;
+    }
+
+    public void setTeacherMessage(String teacherMessage) {
+        this.teacherMessage = teacherMessage;
+    }
+
+    public String getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(String createTime) {
+        this.createTime = createTime;
+    }
+
+    public int getQueryStatus() {
+        return queryStatus;
+    }
+
+    public void setQueryStatus(int queryStatus) {
+        this.queryStatus = queryStatus;
+    }
+
+    public int getResolutionStatus() {
+        return resolutionStatus;
+    }
+
+    public void setResolutionStatus(int resolutionStatus) {
+        this.resolutionStatus = resolutionStatus;
+    }
+
+    public List<Map<String, String>> getFileKeys() {
+        return fileKeys;
+    }
+
+    public void setFileKeys(List<Map<String, String>> fileKeys) {
+        this.fileKeys = fileKeys;
+    }
+
+    public List<Map<String, String>> getVoiceKeyList() {
+        return voiceKeyList;
+    }
+
+    public void setVoiceKeyList(List<Map<String, String>> voiceKeyList) {
+        this.voiceKeyList = voiceKeyList;
+    }
+}

+ 106 - 0
src/main/java/com/ssj/bean/conch/curator/dto/ClassStudentDetailDto.java

@@ -0,0 +1,106 @@
+package com.ssj.bean.conch.curator.dto;
+
+import java.io.Serializable;
+
+/**
+ * @author yanghuan
+ * @title: ClassStudentDetailDto
+ * @projectName ssj
+ * @description: TODO
+ * @date 2019/12/25 10:43
+ */
+public class ClassStudentDetailDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 学生id
+     */
+    private String vipId;
+
+    /**
+     * 学生姓名
+     */
+    private String childName;
+
+    /**
+     * 头像
+     */
+    private String imgUrl;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 服务类型
+     */
+    private  int serviceType;
+
+    /**
+     * 班级id
+     */
+    private String classId;
+
+    /**
+     * 班级名
+     */
+    private  String className;
+
+    public String getVipId() {
+        return vipId;
+    }
+
+    public void setVipId(String vipId) {
+        this.vipId = vipId;
+    }
+
+    public String getChildName() {
+        return childName;
+    }
+
+    public void setChildName(String childName) {
+        this.childName = childName;
+    }
+
+    public String getImgUrl() {
+        return imgUrl;
+    }
+
+    public void setImgUrl(String imgUrl) {
+        this.imgUrl = imgUrl;
+    }
+
+    public String getGrade() {
+        return grade;
+    }
+
+    public void setGrade(String grade) {
+        this.grade = grade;
+    }
+
+    public int getServiceType() {
+        return serviceType;
+    }
+
+    public void setServiceType(int serviceType) {
+        this.serviceType = serviceType;
+    }
+
+    public String getClassId() {
+        return classId;
+    }
+
+    public void setClassId(String classId) {
+        this.classId = classId;
+    }
+
+    public String getClassName() {
+        return className;
+    }
+
+    public void setClassName(String className) {
+        this.className = className;
+    }
+}

+ 110 - 0
src/main/java/com/ssj/bean/conch/curator/dto/CuratorTeacherListDto.java

@@ -0,0 +1,110 @@
+package com.ssj.bean.conch.curator.dto;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 15:00 2019/12/24
+ * @Modified By
+ */
+public class CuratorTeacherListDto  implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String teacherId;
+
+    private String subject;
+
+    private String name;
+
+    private String imgUrl;
+
+    private String phone;
+
+    private int classSum;
+
+    private List<String> teacherTypeList;
+
+    private List<TeacherDetailClassListDto> list;
+
+    public String getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(String teacherId) {
+        this.teacherId = teacherId;
+    }
+
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        this.subject = subject;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getImgUrl() {
+        return imgUrl;
+    }
+
+    public void setImgUrl(String imgUrl) {
+        this.imgUrl = imgUrl;
+    }
+
+    public String getPhone() {
+        return phone;
+    }
+
+    public void setPhone(String phone) {
+        this.phone = phone;
+    }
+
+    public int getClassSum() {
+        return classSum;
+    }
+
+    public void setClassSum(int classSum) {
+        this.classSum = classSum;
+    }
+
+    public List<String> getTeacherTypeList() {
+        return teacherTypeList;
+    }
+
+    public void setTeacherTypeList(String teacherTypeList) {
+        if (teacherTypeList != null && teacherTypeList != ""){
+            this.teacherTypeList = new ArrayList<>();
+            for (String type : Arrays.asList(teacherTypeList.split(","))){
+                if ("10".equals(type)){
+                    this.teacherTypeList.add("3");
+                } else  if ("15".equals(type)){
+                    this.teacherTypeList.add("4");
+                } else {
+                    this.teacherTypeList.add(type);
+                }
+            }
+            Collections.sort(this.teacherTypeList);
+        }
+    }
+
+    public List<TeacherDetailClassListDto> getList() {
+        return list;
+    }
+
+    public void setList(List<TeacherDetailClassListDto> list) {
+        this.list = list;
+    }
+}

+ 63 - 0
src/main/java/com/ssj/bean/conch/curator/dto/TeacherDetailClassListDto.java

@@ -0,0 +1,63 @@
+package com.ssj.bean.conch.curator.dto;
+
+import java.io.Serializable;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 17:06 2019/12/24
+ * @Modified By
+ */
+public class TeacherDetailClassListDto implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String classId;
+
+    private String className;
+
+    private int studentSum;
+
+    private int teacherSum;
+
+    private int isDefault;
+
+    public String getClassId() {
+        return classId;
+    }
+
+    public void setClassId(String classId) {
+        this.classId = classId;
+    }
+
+    public String getClassName() {
+        return className;
+    }
+
+    public void setClassName(String className) {
+        this.className = className;
+    }
+
+    public int getStudentSum() {
+        return studentSum;
+    }
+
+    public void setStudentSum(int studentSum) {
+        this.studentSum = studentSum;
+    }
+
+    public int getTeacherSum() {
+        return teacherSum;
+    }
+
+    public void setTeacherSum(int teacherSum) {
+        this.teacherSum = teacherSum;
+    }
+
+    public int getIsDefault() {
+        return isDefault;
+    }
+
+    public void setIsDefault(int isDefault) {
+        this.isDefault = isDefault;
+    }
+}

+ 187 - 0
src/main/java/com/ssj/bean/course/domain/CourseDetailFeedbackLib.java

@@ -0,0 +1,187 @@
+package com.ssj.bean.course.domain;
+
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年10月19日 上午9:56:40 
+ * 类说明 
+ */
+@Entity
+@Table(name="tb_course_lib_feedback")
+public class CourseDetailFeedbackLib extends BaseEntity {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -7883204619208701198L;
+	
+	/**
+	 *老师userId
+	 */
+	private String userId; 
+	/**
+	 * 图书馆
+	 */
+	private String libId;
+	/**
+	 * 课程id
+	 */
+	private String courseDetailsId;
+	/**
+	 * 课程系列id
+	 */
+	private String courseSeriesId;
+	/**
+	 * 课程时间
+	 */
+	private Date openTime;
+	
+	/**
+	 * 是否发送 0-未发送-1已发送
+	 */
+	private Integer isSend;
+	
+	/**
+	 * 课程内容(存在修改与录入课件内容不一致)
+	 */
+	private String courseContent;
+	
+	/**
+	 * 今日课堂(存入json格式)
+	 */
+	private String todayLine;
+	
+	/**
+	 * 课后小任务
+	 */
+	private String courseTask;
+	
+	/**
+	 * 老师有话说
+	 */
+	private String teacherSay;
+	
+
+	/**
+	   * 创建时间
+	   */
+	private Date createTime;
+
+
+	public String getUserId() {
+		return userId;
+	}
+
+
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+
+
+	public String getLibId() {
+		return libId;
+	}
+
+
+	public void setLibId(String libId) {
+		this.libId = libId;
+	}
+
+
+	public String getCourseDetailsId() {
+		return courseDetailsId;
+	}
+
+
+	public void setCourseDetailsId(String courseDetailsId) {
+		this.courseDetailsId = courseDetailsId;
+	}
+
+
+	public String getCourseSeriesId() {
+		return courseSeriesId;
+	}
+
+
+	public void setCourseSeriesId(String courseSeriesId) {
+		this.courseSeriesId = courseSeriesId;
+	}
+
+
+	public Date getOpenTime() {
+		return openTime;
+	}
+
+
+	public void setOpenTime(Date openTime) {
+		this.openTime = openTime;
+	}
+
+
+	public Integer getIsSend() {
+		return isSend;
+	}
+
+
+	public void setIsSend(Integer isSend) {
+		this.isSend = isSend;
+	}
+
+
+	public String getCourseContent() {
+		return courseContent;
+	}
+
+
+	public void setCourseContent(String courseContent) {
+		this.courseContent = courseContent;
+	}
+
+
+	public String getTodayLine() {
+		return todayLine;
+	}
+
+
+	public void setTodayLine(String todayLine) {
+		this.todayLine = todayLine;
+	}
+
+
+	public String getCourseTask() {
+		return courseTask;
+	}
+
+
+	public void setCourseTask(String courseTask) {
+		this.courseTask = courseTask;
+	}
+
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+
+	public String getTeacherSay() {
+		return teacherSay;
+	}
+
+
+	public void setTeacherSay(String teacherSay) {
+		this.teacherSay = teacherSay;
+	}
+
+	
+}

+ 111 - 0
src/main/java/com/ssj/bean/course/domain/CourseFeedbackFile.java

@@ -0,0 +1,111 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/** 
+ * @author 
+ * @version 
+ * 小红花记录保存表
+ */
+@Entity
+@Table(name="tb_course_feedback_file")
+public class CourseFeedbackFile extends BaseEntity{
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -7883204619208701198L;
+	
+	/**
+	 * 会员卡id
+	 */
+	private String vipId;
+	/**
+	 * 图书馆
+	 */
+	private String libId;
+	/**
+	 * 课程id
+	 */
+	private String courseDetailsId;
+	
+	/**
+	 * 小红花路径
+	 */
+	private String imgurl;
+
+	/**
+	   * 创建时间
+	   */
+	private Date createTime;
+	
+	/**
+	   * openTime
+	   */
+	private Date openTime;
+
+
+	
+
+	public Date getOpenTime() {
+		return openTime;
+	}
+
+	public void setOpenTime(Date openTime) {
+		this.openTime = openTime;
+	}
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+	public String getLibId() {
+		return libId;
+	}
+
+	public void setLibId(String libId) {
+		this.libId = libId;
+	}
+
+	public String getCourseDetailsId() {
+		return courseDetailsId;
+	}
+
+	public void setCourseDetailsId(String courseDetailsId) {
+		this.courseDetailsId = courseDetailsId;
+	}
+
+	
+
+	public String getImgurl() {
+		return imgurl;
+	}
+
+	public void setImgurl(String imgurl) {
+		this.imgurl = imgurl;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public static long getSerialversionuid() {
+		return serialVersionUID;
+	}
+
+	
+	
+
+}

+ 70 - 0
src/main/java/com/ssj/bean/course/domain/CourseLearn.java

@@ -0,0 +1,70 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="tb_course_learn")
+public class CourseLearn extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+
+	private String courseName;
+	
+	private String vipId;
+	
+	private Integer flowId;
+	
+	private String evaluate;
+	
+	private Date createTime;
+
+	public String getCourseName() {
+		return courseName;
+	}
+
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+
+	
+	
+
+	public Integer getFlowId() {
+		return flowId;
+	}
+
+	public void setFlowId(Integer flowId) {
+		this.flowId = flowId;
+	}
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+	public String getEvaluate() {
+		return evaluate;
+	}
+
+	public void setEvaluate(String evaluate) {
+		this.evaluate = evaluate;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+
+	
+}

+ 69 - 0
src/main/java/com/ssj/bean/course/domain/CourseReadHis.java

@@ -0,0 +1,69 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="course_read_his")
+public class CourseReadHis extends BaseEntity {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String courseDetailId;
+	private String onlineType;
+	private String userId;
+	private String libId;
+	private Date openTime;//创建时间
+	private Date closeTime;
+	private Integer state; //状态 1新建 2完结
+	public String getCourseDetailId() {
+		return courseDetailId;
+	}
+	public void setCourseDetailId(String courseDetailId) {
+		this.courseDetailId = courseDetailId;
+	}
+	public String getOnlineType() {
+		return onlineType;
+	}
+	public void setOnlineType(String onlineType) {
+		this.onlineType = onlineType;
+	}
+	public String getUserId() {
+		return userId;
+	}
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+	public String getLibId() {
+		return libId;
+	}
+	public void setLibId(String libId) {
+		this.libId = libId;
+	}
+	public Date getOpenTime() {
+		return openTime;
+	}
+	public void setOpenTime(Date openTime) {
+		this.openTime = openTime;
+	}
+	public Date getCloseTime() {
+		return closeTime;
+	}
+	public void setCloseTime(Date closeTime) {
+		this.closeTime = closeTime;
+	}
+	public Integer getState() {
+		return state;
+	}
+	public void setState(Integer state) {
+		this.state = state;
+	}
+	
+	
+}

+ 49 - 0
src/main/java/com/ssj/bean/course/domain/CourseScanHis.java

@@ -0,0 +1,49 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="tb_course_scanhis")
+public class CourseScanHis extends BaseEntity {
+	
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String sessionId; //调用sessionId
+	private String userId; //老师的userId
+	private Date  createTime; //创建时间
+	private Integer state; //是否有效 1有效 2无效 登陆成功后更新为无效
+	
+	
+	public String getSessionId() {
+		return sessionId;
+	}
+	public void setSessionId(String sessionId) {
+		this.sessionId = sessionId;
+	}
+	public String getUserId() {
+		return userId;
+	}
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+	
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	public Integer getState() {
+		return state;
+	}
+	public void setState(Integer state) {
+		this.state = state;
+	}
+}

+ 251 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeries.java

@@ -0,0 +1,251 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Entity
+@Table(name="tb_course_series")
+public class CourseSeries extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+	/**
+	 * 课程名称
+	 */
+	private String courseName;
+	/**
+	 * 课程对象
+	 */
+	private String courseTarget;
+	/**
+	 * 班级人数
+	 */
+	private String classPnum;
+	/**
+	 * 课程时数
+	 */
+	private String coursePlan;
+	
+	/**
+	 * 课程内容
+	 */
+	private String courseContent;
+	
+	/**
+	 * 课程简介
+	 */
+	private String courseSummary;
+	/**
+	 * 推荐理由
+	 */
+	private String recommendReason;
+	/**
+	 * 老师要求
+	 */
+	private String teacherRequire;
+	
+	private String[] require;
+	/**
+	 * 官方价格
+	 */
+	private BigDecimal officialPrice;
+	/**
+	 * 课程类型标签 --:1语音类、2阅读类
+	 */
+	private Integer courseTypeLabel;
+	/**
+	 * 课程推荐标签   --1热门好课、2限时免费、3新课上线
+	 */
+	private String courseHotLable;
+	/**
+	 * 课程封面路径  -- 
+	 */
+	private String coverUrl;
+	/**
+	 * 创建时间
+	 */
+	private Date createTime;
+	/**
+	 * 最后更新时间
+	 */
+	private Date lastUpdateTime;
+	/**
+	 * 课程评分
+	 */
+	private Double score;
+	
+	/**
+	 * 1--有效--2无效
+	 */
+	private Integer state;
+	/**
+	 * 课程个数
+	 */
+	private Integer courseSeriesDetailSize;
+	
+	private String teacherName;
+	/**
+	 * 中断率
+	 */
+	private String interruptRate;
+	/**
+	 * 学生实际个数
+	 */
+	private int studentNumber;
+	
+	
+	private String color;
+	
+	public String getColor() {
+		return color;
+	}
+	public void setColor(String color) {
+		this.color = color;
+	}
+	public String getCourseName() {
+		return courseName;
+	}
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+	public String getCourseTarget() {
+		return courseTarget;
+	}
+	public void setCourseTarget(String courseTarget) {
+		this.courseTarget = courseTarget;
+	}
+	public String getClassPnum() {
+		return classPnum;
+	}
+	public void setClassPnum(String classPnum) {
+		this.classPnum = classPnum;
+	}
+	public String getCoursePlan() {
+		return coursePlan;
+	}
+	public void setCoursePlan(String coursePlan) {
+		this.coursePlan = coursePlan;
+	}
+	public String getRecommendReason() {
+		return recommendReason;
+	}
+	public void setRecommendReason(String recommendReason) {
+		this.recommendReason = recommendReason;
+	}
+	public String getTeacherRequire() {
+		return teacherRequire;
+	}
+	public void setTeacherRequire(String teacherRequire) {
+		this.teacherRequire = teacherRequire;
+	}
+	public BigDecimal getOfficialPrice() {
+		return officialPrice;
+	}
+	public void setOfficialPrice(BigDecimal officialPrice) {
+		this.officialPrice = officialPrice;
+	}
+	public Integer getCourseTypeLabel() {
+		return courseTypeLabel;
+	}
+	public void setCourseTypeLabel(Integer courseTypeLabel) {
+		this.courseTypeLabel = courseTypeLabel;
+	}
+	public String getCourseHotLable() {
+		return courseHotLable;
+	}
+	public void setCourseHotLable(String courseHotLable) {
+		this.courseHotLable = courseHotLable;
+	}
+	public String getCoverUrl() {
+		return coverUrl;
+	}
+	public void setCoverUrl(String coverUrl) {
+		this.coverUrl = coverUrl;
+	}
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	public Date getLastUpdateTime() {
+		return lastUpdateTime;
+	}
+	public void setLastUpdateTime(Date lastUpdateTime) {
+		this.lastUpdateTime = lastUpdateTime;
+	}
+	public Double getScore() {
+		return score;
+	}
+	public void setScore(Double score) {
+		this.score = score;
+	}
+	public Integer getState() {
+		return state;
+	}
+	public void setState(Integer state) {
+		this.state = state;
+	}
+	public String getCourseSummary() {
+		return courseSummary;
+	}
+	public void setCourseSummary(String courseSummary) {
+		this.courseSummary = courseSummary;
+	}
+	@Transient
+	public Integer getCourseSeriesDetailSize() {
+		return courseSeriesDetailSize;
+	}
+	public void setCourseSeriesDetailSize(Integer courseSeriesDetailSize) {
+		this.courseSeriesDetailSize = courseSeriesDetailSize;
+	}
+	@Transient
+	public String getTeacherName() {
+		return teacherName;
+	}
+	public void setTeacherName(String teacherName) {
+		this.teacherName = teacherName;
+	}
+	@Transient
+	public String[] getRequire() {
+		if(require!=null && require.length>0){
+			return require;
+		}
+		if(teacherRequire!=null && teacherRequire.trim().length()>0){
+			return teacherRequire.trim().split(";");
+		}
+		
+		return null;
+	}
+	public void setRequire(String[] require) {
+		this.require = require;
+	}
+	@Transient
+	public String getInterruptRate() {
+		return interruptRate;
+	}
+	public void setInterruptRate(String interruptRate) {
+		this.interruptRate = interruptRate;
+	}
+	@Transient
+	public int getStudentNumber() {
+		return studentNumber;
+	}
+	public void setStudentNumber(int studentNumber) {
+		this.studentNumber = studentNumber;
+	}
+	public String getCourseContent() {
+		return courseContent;
+	}
+	public void setCourseContent(String courseContent) {
+		this.courseContent = courseContent;
+	}
+  
+	
+	
+	
+}

+ 117 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeriesDetail.java

@@ -0,0 +1,117 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+import org.hibernate.annotations.Fetch;
+import org.hibernate.annotations.FetchMode;
+
+import javax.persistence.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+@Entity
+@Table(name="tb_course_series_details")
+public class CourseSeriesDetail extends BaseEntity {
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	/**
+	 * id varchar(36) not null,
+    course_unit varchar(100) not null comment '单元',
+    course_content varchar(500) not null comment '内容',
+    course_model varchar(500) not null comment '模块',
+    course_duration varchar(36) not null comment '时长',
+    course_num  varchar(10) not null comment '课时',
+    create_time datetime comment '创建时间',
+    last_update_time datetime comment '最后更新时间',
+	 */
+	/**
+	 * tb_course_series id
+	 */
+	private String seriesId;
+	private String courseUnit;
+	private String courseContent;
+	private String courseModel;
+	private String courseDuration;
+	private String courseNum;
+	private Date createTime;
+	private Date lastUpdateTime;
+	private Integer state;
+	private Integer courseIndex;
+	
+	private List<CourseSeriesDetailFile>  fileList = new ArrayList<CourseSeriesDetailFile>();
+	
+	public String getCourseUnit() {
+		return courseUnit;
+	}
+	public void setCourseUnit(String courseUnit) {
+		this.courseUnit = courseUnit;
+	}
+	public String getCourseContent() {
+		return courseContent;
+	}
+	public void setCourseContent(String courseContent) {
+		this.courseContent = courseContent;
+	}
+	public String getCourseModel() {
+		return courseModel;
+	}
+	public void setCourseModel(String courseModel) {
+		this.courseModel = courseModel;
+	}
+	public String getCourseDuration() {
+		return courseDuration;
+	}
+	public void setCourseDuration(String courseDuration) {
+		this.courseDuration = courseDuration;
+	}
+	public String getCourseNum() {
+		return courseNum;
+	}
+	public void setCourseNum(String courseNum) {
+		this.courseNum = courseNum;
+	}
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	public Date getLastUpdateTime() {
+		return lastUpdateTime;
+	}
+	public void setLastUpdateTime(Date lastUpdateTime) {
+		this.lastUpdateTime = lastUpdateTime;
+	}
+	public String getSeriesId() {
+		return seriesId;
+	}
+	public void setSeriesId(String seriesId) {
+		this.seriesId = seriesId;
+	}
+	public Integer getState() {
+		return state;
+	}
+	public void setState(Integer state) {
+		this.state = state;
+	}
+	public Integer getCourseIndex() {
+		return courseIndex;
+	}
+	public void setCourseIndex(Integer courseIndex) {
+		this.courseIndex = courseIndex;
+	}
+	@OneToMany(cascade = { CascadeType.REFRESH}, fetch=FetchType.EAGER)
+	@JoinColumn(name="courseDetailsId",updatable =false,insertable =false)
+	@OrderBy(" createTime ASC")
+	@Fetch(FetchMode.SELECT)
+	public List<CourseSeriesDetailFile> getFileList() {
+		return fileList;
+	}
+	public void setFileList(List<CourseSeriesDetailFile> fileList) {
+		this.fileList = fileList;
+	}
+	
+	
+}

+ 204 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeriesDetailFeedback.java

@@ -0,0 +1,204 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年10月19日 上午9:56:40 
+ * 类说明 
+ */
+@Entity
+@Table(name="tb_course_series_details_feedback")
+public class CourseSeriesDetailFeedback extends BaseEntity{
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -7883204619208701198L;
+	
+	/**
+	 *userId
+	 */
+	private String userId;
+	/**
+	 * 会员卡id
+	 */
+	private String vipId;
+	/**
+	 * 图书馆
+	 */
+	private String libId;
+	/**
+	 * 课程id
+	 */
+	private String courseDetailsId;
+	/**
+	 * 课程系列id
+	 */
+	private String courseSeriesId;
+	/**
+	 * 专注度
+	 */
+	private Double focusScore;
+	
+	/**
+	 * 主动度
+	 */
+	private Double activeScore;
+	
+	/**
+	 * 家长的满意度
+	 */
+	private Double pleasedScore;
+	
+	/**
+	 * 老师有话说
+	 */
+	private String saying;
+	
+	/**
+	 * 评价
+	 */
+	private String evaluate;
+	
+	/**
+	 * 是否发送
+	 */
+	private Integer isSend;
+	
+	/**
+	 * 
+	 */
+	private String libFeedbackId;
+
+	/**
+	   * 创建时间
+	   */
+	private Date createTime;
+	
+	/**
+	 * 家长打开报告时间
+	 */
+	private Date viewTime;
+
+	public String getUserId() {
+		return userId;
+	}
+
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+	public String getLibId() {
+		return libId;
+	}
+
+	public void setLibId(String libId) {
+		this.libId = libId;
+	}
+
+	public String getCourseDetailsId() {
+		return courseDetailsId;
+	}
+
+	public void setCourseDetailsId(String courseDetailsId) {
+		this.courseDetailsId = courseDetailsId;
+	}
+
+	public String getCourseSeriesId() {
+		return courseSeriesId;
+	}
+
+	public void setCourseSeriesId(String courseSeriesId) {
+		this.courseSeriesId = courseSeriesId;
+	}
+
+	public Double getFocusScore() {
+		return focusScore;
+	}
+
+	public void setFocusScore(Double focusScore) {
+		this.focusScore = focusScore;
+	}
+
+	public Double getActiveScore() {
+		return activeScore;
+	}
+
+	public void setActiveScore(Double activeScore) {
+		this.activeScore = activeScore;
+	}
+
+	public Double getPleasedScore() {
+		return pleasedScore;
+	}
+
+	public void setPleasedScore(Double pleasedScore) {
+		this.pleasedScore = pleasedScore;
+	}
+
+	public String getSaying() {
+		return saying;
+	}
+
+	public void setSaying(String saying) {
+		this.saying = saying;
+	}
+
+	public String getEvaluate() {
+		return evaluate;
+	}
+
+	public void setEvaluate(String evaluate) {
+		this.evaluate = evaluate;
+	}
+
+	public Integer getIsSend() {
+		return isSend;
+	}
+
+	public void setIsSend(Integer isSend) {
+		this.isSend = isSend;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public String getLibFeedbackId() {
+		return libFeedbackId;
+	}
+
+	public void setLibFeedbackId(String libFeedbackId) {
+		this.libFeedbackId = libFeedbackId;
+	}
+
+	public Date getViewTime() {
+		return viewTime;
+	}
+
+	public void setViewTime(Date viewTime) {
+		this.viewTime = viewTime;
+	}
+
+
+	
+	
+
+}

+ 59 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeriesDetailFile.java

@@ -0,0 +1,59 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="tb_course_series_details_file")
+public class CourseSeriesDetailFile extends BaseEntity {
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	/**
+	 * course_details_id varchar(36) not null comment '系列课明细id',
+  file_type varchar(20) not null comment '文件类型',
+  file_url varchar(30) not null comment '文件路径',
+  create_time datetime comment '创建时间',
+	 */
+	private String courseDetailsId;
+	private String fileType;
+	private String fileUrl;
+	private Date createTime;
+	private String coverUrl; //封面 mp4时有
+	public String getCourseDetailsId() {
+		return courseDetailsId;
+	}
+	public void setCourseDetailsId(String courseDetailsId) {
+		this.courseDetailsId = courseDetailsId;
+	}
+	public String getFileType() {
+		return fileType;
+	}
+	public void setFileType(String fileType) {
+		this.fileType = fileType;
+	}
+	public String getFileUrl() {
+		return fileUrl;
+	}
+	public void setFileUrl(String fileUrl) {
+		this.fileUrl = fileUrl;
+	}
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	public String getCoverUrl() {
+		return coverUrl;
+	}
+	public void setCoverUrl(String coverUrl) {
+		this.coverUrl = coverUrl;
+	}
+	
+	
+}

+ 176 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeriesJoin.java

@@ -0,0 +1,176 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年10月18日 下午3:00:59 
+ * 类说明  家长点击加入课程系列
+ */
+@Entity
+@Table(name="tb_course_series_join")
+public class CourseSeriesJoin extends BaseEntity {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -7388278462350897354L;
+	
+	/**
+	 * 家长id
+	 */
+	private String userId;
+	
+	/**
+	 * 会员卡id
+	 */
+	private String vipId;
+	/**
+	 * 图书馆
+	 */
+	private String libId;
+	/**
+	 * 课程id
+	 */
+	private String courseDetailsId;
+	/**
+	 * 课程系列id
+	 */
+	private String courseSeriesId;
+	/**
+	 * 上课时间
+	 */
+	private Date openTime;
+	/**
+	 * 上课时长(关闭浏览器)
+	 */
+	private String duration;
+	/**
+   * 创建时间
+   */
+	private Date createTime;
+	
+	/**
+	 * 老师上课时间
+	 */
+	private Date beginTime;
+	
+	/**
+	 * 老师下课时间(能监控到的最后一个时间)
+	 */
+	private Date endTime;
+	
+	/**
+	 * 状态 0-没上课-1已经上课 2-已反馈
+	 */
+	private Integer state;
+	/**
+	 * 排序
+	 */
+	private Integer num;
+	
+	
+	public String getUserId() {
+		return userId;
+	}
+
+	public void setUserId(String userId) {
+		this.userId = userId;
+	}
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+	public String getLibId() {
+		return libId;
+	}
+
+	public void setLibId(String libId) {
+		this.libId = libId;
+	}
+
+	public String getCourseDetailsId() {
+		return courseDetailsId;
+	}
+
+	public void setCourseDetailsId(String courseDetailsId) {
+		this.courseDetailsId = courseDetailsId;
+	}
+
+	public String getCourseSeriesId() {
+		return courseSeriesId;
+	}
+
+	public void setCourseSeriesId(String courseSeriesId) {
+		this.courseSeriesId = courseSeriesId;
+	}
+
+	public Date getOpenTime() {
+		return openTime;
+	}
+
+	public void setOpenTime(Date openTime) {
+		this.openTime = openTime;
+	}
+
+	@Column(updatable = false)
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Date getBeginTime() {
+		return beginTime;
+	}
+
+	public void setBeginTime(Date beginTime) {
+		this.beginTime = beginTime;
+	}
+
+	public Integer getState() {
+		return state;
+	}
+
+	public void setState(Integer state) {
+		this.state = state;
+	}
+
+	public String getDuration() {
+		return duration;
+	}
+
+	public void setDuration(String duration) {
+		this.duration = duration;
+	}
+
+	public Date getEndTime() {
+		return endTime;
+	}
+
+	public void setEndTime(Date endTime) {
+		this.endTime = endTime;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	
+}

+ 168 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeriesOrder.java

@@ -0,0 +1,168 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年10月18日 下午3:09:30 
+ * 类说明  订单明细
+ */
+@Entity
+@Table(name="tb_course_series_order")
+public class CourseSeriesOrder extends BaseEntity {
+
+	
+	
+	  /**
+	 * 
+	 */
+	private static final long serialVersionUID = -6051374552019013315L;
+	/**
+     * 订单编号
+     */
+	
+    private String orderNo;
+    /**
+     * 订单ID
+     */
+    private String orderId;
+    
+    
+    /**
+	 * 课程系列id
+	 */
+	private String courseSeriesId;
+	
+	/**
+	 * 图书馆
+	 */
+	private String libId;
+	
+	 /**
+	   * 创建时间
+	   */
+   private Date createTime;
+   /**
+    * 开始时间
+    */
+   private Date startTime;
+   /**
+    * 结束时间
+    */
+   private Date endTime;
+   
+   /**
+    * 价格
+    */
+   private BigDecimal price;
+   /**
+    * 下单人
+    */
+   private String userId;
+   
+   /**
+    * 1收费,2免费
+    */
+   private Integer type;
+   
+   /**
+    * 1有效,2无效
+    */
+   private Integer stat;
+
+public String getOrderNo() {
+	return orderNo;
+}
+
+public void setOrderNo(String orderNo) {
+	this.orderNo = orderNo;
+}
+
+public String getOrderId() {
+	return orderId;
+}
+
+public void setOrderId(String orderId) {
+	this.orderId = orderId;
+}
+
+public String getCourseSeriesId() {
+	return courseSeriesId;
+}
+
+public void setCourseSeriesId(String courseSeriesId) {
+	this.courseSeriesId = courseSeriesId;
+}
+
+public String getLibId() {
+	return libId;
+}
+
+public void setLibId(String libId) {
+	this.libId = libId;
+}
+@Column(updatable=false)
+public Date getCreateTime() {
+	return createTime;
+}
+
+public void setCreateTime(Date createTime) {
+	this.createTime = createTime;
+}
+
+public Date getStartTime() {
+	return startTime;
+}
+
+public void setStartTime(Date startTime) {
+	this.startTime = startTime;
+}
+
+public Date getEndTime() {
+	return endTime;
+}
+
+public void setEndTime(Date endTime) {
+	this.endTime = endTime;
+}
+
+public BigDecimal getPrice() {
+	return price;
+}
+
+public void setPrice(BigDecimal price) {
+	this.price = price;
+}
+
+public String getUserId() {
+	return userId;
+}
+
+public void setUserId(String userId) {
+	this.userId = userId;
+}
+
+public Integer getType() {
+	return type;
+}
+
+public void setType(Integer type) {
+	this.type = type;
+}
+
+public Integer getStat() {
+	return stat;
+}
+
+public void setStat(Integer stat) {
+	this.stat = stat;
+}
+   
+   
+}

+ 135 - 0
src/main/java/com/ssj/bean/course/domain/CourseSeriesSetting.java

@@ -0,0 +1,135 @@
+package com.ssj.bean.course.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/** 
+ * @author  ZhangCaibao 
+ * @version 2018年10月18日 下午3:14:54 
+ * 类说明 
+ */
+@Entity
+@Table(name="tb_course_series_setting")
+public class CourseSeriesSetting  extends BaseEntity {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -4050952771358416236L;
+	
+	/**
+	 * 课程系列id
+	 */
+	private String courseSeriesId;
+	/**
+	 * 老师Id
+	 */
+	   private String teacherId;
+	
+	/**
+	    * 价格
+	    */
+	   private BigDecimal price;
+	   /**
+		 * 开课时间
+		 */
+		private Date openTime;
+		
+		/**
+		 *结课时间
+		 */
+		private Date endTime;
+		
+		/**
+		 * 课程数
+		 */
+		private Integer courseSize;
+		/**
+		 * 间隔天数
+		 */
+		private Integer days;
+		/**
+		 * 逢周几设置
+		 */
+		private String  weeks;
+		
+		/**
+		 * 上课的日期集合,用分;号相隔
+		 */
+		private String  courseDate;
+		
+		/**
+		 * 图书馆
+		 */
+		private String libId;
+		
+		public String getCourseSeriesId() {
+			return courseSeriesId;
+		}
+		public void setCourseSeriesId(String courseSeriesId) {
+			this.courseSeriesId = courseSeriesId;
+		}
+		public String getTeacherId() {
+			return teacherId;
+		}
+		public void setTeacherId(String teacherId) {
+			this.teacherId = teacherId;
+		}
+		public BigDecimal getPrice() {
+			return price;
+		}
+		public void setPrice(BigDecimal price) {
+			this.price = price;
+		}
+		@DateTimeFormat(pattern="yyyy-MM-dd")
+		public Date getOpenTime() {
+			return openTime;
+		}
+		public void setOpenTime(Date openTime) {
+			this.openTime = openTime;
+		}
+		public Integer getDays() {
+			return days;
+		}
+		public void setDays(Integer days) {
+			this.days = days;
+		}
+		public String getLibId() {
+			return libId;
+		}
+		public void setLibId(String libId) {
+			this.libId = libId;
+		}
+		public Date getEndTime() {
+			return endTime;
+		}
+		public void setEndTime(Date endTime) {
+			this.endTime = endTime;
+		}
+		public Integer getCourseSize() {
+			return courseSize;
+		}
+		public void setCourseSize(Integer courseSize) {
+			this.courseSize = courseSize;
+		}
+		public String getWeeks() {
+			return weeks;
+		}
+		public void setWeeks(String weeks) {
+			this.weeks = weeks;
+		}
+		public String getCourseDate() {
+			return courseDate;
+		}
+		public void setCourseDate(String courseDate) {
+			this.courseDate = courseDate;
+		}
+		
+		
+		
+}

+ 58 - 0
src/main/java/com/ssj/bean/curator/TbLibBindAudit.java

@@ -0,0 +1,58 @@
+package com.ssj.bean.curator;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "tb_lib_bind_audit")
+public class TbLibBindAudit extends BaseEntity {
+
+    private String libId;
+    private String schoolName; //学校名称
+    private String vipId;      //vip_id
+    private int status; 	   //1:审批中,2:审批拒绝,3:审批通过
+    private Date createTime;   //创建时间
+
+    public String getLibId() {
+        return libId;
+    }
+
+    public void setLibId(String libId) {
+        this.libId = libId;
+    }
+
+    public String getSchoolName() {
+        return schoolName;
+    }
+
+    public void setSchoolName(String schoolName) {
+        this.schoolName = schoolName;
+    }
+
+    public String getVipId() {
+        return vipId;
+    }
+
+    public void setVipId(String vipId) {
+        this.vipId = vipId;
+    }
+
+    public int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+}

+ 105 - 0
src/main/java/com/ssj/bean/curator/TbVacationLimit.java

@@ -0,0 +1,105 @@
+package com.ssj.bean.curator;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "tb_vacation_limit")
+public class TbVacationLimit extends BaseEntity {
+    /**
+     * id varchar(36) not null,
+     * 	lib_id varchar(36) not null,
+     * 	type int not null comment '1-寒假、2-五一、3-暑假、4国庆',
+     * 	start_date date comment '假期开始时间',
+     * 	end_date date comment '假期结束时间',
+     * 	update_time datetime comment '数据修改时间',
+     * 	user_id varchar(36) comment '修改人userid',
+     * 	limit_year varchar(4) comment '年份',
+     */
+    private String libId;
+    private int type;
+    private Date startDate;
+
+    private Date endDate;
+    private Date updateTime;
+    private String userId;
+    private String limitYear;
+    private Integer setState; 	//1关闭 2-开启
+    private String limitMsg; //限制文案
+
+    public String getLibId() {
+        return libId;
+    }
+
+    public void setLibId(String libId) {
+        this.libId = libId;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public Date getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(Date startDate) {
+        this.startDate = startDate;
+    }
+
+
+    public Date getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(Date endDate) {
+        this.endDate = endDate;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public String getLimitYear() {
+        return limitYear;
+    }
+
+    public void setLimitYear(String limitYear) {
+        this.limitYear = limitYear;
+    }
+
+    public Integer getSetState() {
+        return setState;
+    }
+
+    public void setSetState(Integer setState) {
+        this.setState = setState;
+    }
+
+    public String getLimitMsg() {
+        return limitMsg;
+    }
+
+    public void setLimitMsg(String limitMsg) {
+        this.limitMsg = limitMsg;
+    }
+}

+ 79 - 0
src/main/java/com/ssj/bean/es/domain/EsDataRecode.java

@@ -0,0 +1,79 @@
+package com.ssj.bean.es.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * @author sh
+ * @className EsDataRecode
+ * @description TODO
+ * @date 2020/4/29
+ */
+@Entity
+@Table(name="es_data_recode")
+public class EsDataRecode extends BaseEntity {
+
+    /**
+     * es 索引名称
+     */
+    private String esIndexName;
+    /**
+     * 数据加载时间
+     */
+    private String loadDate;
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+    /**
+     * api名称 中文
+     */
+    private String apiName;
+    /**
+     * 状态 1-刷新成功 2-刷新失败
+     */
+    private int state;
+
+    public String getEsIndexName() {
+        return esIndexName;
+    }
+
+    public void setEsIndexName(String esIndexName) {
+        this.esIndexName = esIndexName;
+    }
+
+    public String getLoadDate() {
+        return loadDate;
+    }
+
+    public void setLoadDate(String loadDate) {
+        this.loadDate = loadDate;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getApiName() {
+        return apiName;
+    }
+
+    public void setApiName(String apiName) {
+        this.apiName = apiName;
+    }
+
+    public int getState() {
+        return state;
+    }
+
+    public void setState(int state) {
+        this.state = state;
+    }
+}

+ 26 - 0
src/main/java/com/ssj/bean/kmt/arrange/dto/DutyTemplate.java

@@ -0,0 +1,26 @@
+package com.ssj.bean.kmt.arrange.dto;
+
+import java.io.Serializable;
+
+public class DutyTemplate implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private String day;
+    private String isOpen;
+
+    public String getDay() {
+        return day;
+    }
+
+    public void setDay(String day) {
+        this.day = day;
+    }
+
+    public String getIsOpen() {
+        return isOpen;
+    }
+
+    public void setIsOpen(String isOpen) {
+        this.isOpen = isOpen;
+    }
+}

+ 51 - 0
src/main/java/com/ssj/bean/kmt/arrange/dto/DutyTimeVO.java

@@ -0,0 +1,51 @@
+package com.ssj.bean.kmt.arrange.dto;
+
+import java.io.Serializable;
+
+public class DutyTimeVO implements Serializable {
+
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+
+    private  String id;
+    //开始时段
+    private String startInterval;
+    //结束时段
+    private String endInterval;
+    //时间段状态 1-未选 2-已选 3-饱和 4-缺勤
+    private Integer timeState;
+
+    public String getStartInterval() {
+        return startInterval;
+    }
+
+    public void setStartInterval(String startInterval) {
+        this.startInterval = startInterval;
+    }
+
+    public String getEndInterval() {
+        return endInterval;
+    }
+
+    public void setEndInterval(String endInterval) {
+        this.endInterval = endInterval;
+    }
+
+    public Integer getTimeState() {
+        return timeState;
+    }
+
+    public void setTimeState(Integer timeState) {
+        this.timeState = timeState;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+}

+ 49 - 0
src/main/java/com/ssj/bean/kmt/arrange/dto/TeacherArrangeDayVO.java

@@ -0,0 +1,49 @@
+package com.ssj.bean.kmt.arrange.dto;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TeacherArrangeDayVO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+    private String day;
+
+    private Integer isOpen;
+
+    private Integer isOutDate;//是否过期0过期1未过期
+
+    private List<DutyTimeVO> timeVoList = new ArrayList<DutyTimeVO>();
+
+    public String getDay() {
+        return day;
+    }
+
+    public void setDay(String day) {
+        this.day = day;
+    }
+
+    public Integer getIsOpen() {
+        return isOpen;
+    }
+
+    public void setIsOpen(Integer isOpen) {
+        this.isOpen = isOpen;
+    }
+
+    public List<DutyTimeVO> getTimeVoList() {
+        return timeVoList;
+    }
+
+    public void setTimeVoList(List<DutyTimeVO> timeVoList) {
+        this.timeVoList = timeVoList;
+    }
+
+    public Integer getIsOutDate() {
+        return isOutDate;
+    }
+
+    public void setIsOutDate(Integer isOutDate) {
+        this.isOutDate = isOutDate;
+    }
+}

+ 74 - 0
src/main/java/com/ssj/bean/kmt/arrange/dto/TeacherArrangeVO.java

@@ -0,0 +1,74 @@
+package com.ssj.bean.kmt.arrange.dto;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TeacherArrangeVO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    //年份
+    private String year;
+    /* 月份
+     */
+    private String month;
+    //出勤率
+    private String dutyRate;
+
+    //是否显示下个月每月25号后可选择下个月排班 1是2否
+    private Integer isShowNext;
+
+    //下个月已选排班
+    private Integer nextDutyCount;
+
+    //日历时间段
+    private List<TeacherArrangeDayVO> dayList = new ArrayList<TeacherArrangeDayVO>();
+
+    public String getMonth() {
+        return month;
+    }
+
+    public void setMonth(String month) {
+        this.month = month;
+    }
+
+    public String getDutyRate() {
+        return dutyRate;
+    }
+
+    public void setDutyRate(String dutyRate) {
+        this.dutyRate = dutyRate;
+    }
+
+    public Integer getIsShowNext() {
+        return isShowNext;
+    }
+
+    public void setIsShowNext(Integer isShowNext) {
+        this.isShowNext = isShowNext;
+    }
+
+    public Integer getNextDutyCount() {
+        return nextDutyCount;
+    }
+
+    public void setNextDutyCount(Integer nextDutyCount) {
+        this.nextDutyCount = nextDutyCount;
+    }
+
+    public List<TeacherArrangeDayVO> getDayList() {
+        return dayList;
+    }
+
+    public void setDayList(List<TeacherArrangeDayVO> dayList) {
+        this.dayList = dayList;
+    }
+
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+}

+ 50 - 0
src/main/java/com/ssj/bean/kmt/arrange/dto/TeacherNextArrangeVO.java

@@ -0,0 +1,50 @@
+package com.ssj.bean.kmt.arrange.dto;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TeacherNextArrangeVO implements Serializable {
+    private static final long serialVersionUID = 1L;
+    /* 月份
+     */
+    private String month;
+    //下个月已选排班
+    private Integer nextDutyCount;
+
+    private String year;
+
+    //日历时间段
+    private List<TeacherArrangeDayVO> dayList = new ArrayList<TeacherArrangeDayVO>();
+
+    public String getMonth() {
+        return month;
+    }
+
+    public void setMonth(String month) {
+        this.month = month;
+    }
+
+    public List<TeacherArrangeDayVO> getDayList() {
+        return dayList;
+    }
+
+    public void setDayList(List<TeacherArrangeDayVO> dayList) {
+        this.dayList = dayList;
+    }
+    public Integer getNextDutyCount() {
+        return nextDutyCount;
+    }
+
+    public void setNextDutyCount(Integer nextDutyCount) {
+        this.nextDutyCount = nextDutyCount;
+    }
+
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+}

+ 15 - 0
src/main/java/com/ssj/bean/kmt/arrange/vo/DutyRequestVO.java

@@ -0,0 +1,15 @@
+package com.ssj.bean.kmt.arrange.vo;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+public class DutyRequestVO extends BaseRequest {
+    private String[] ids;
+
+    public String[] getIds() {
+        return ids;
+    }
+
+    public void setIds(String[] ids) {
+        this.ids = ids;
+    }
+}

+ 15 - 0
src/main/java/com/ssj/bean/kmt/arrange/vo/DutySysRequestVO.java

@@ -0,0 +1,15 @@
+package com.ssj.bean.kmt.arrange.vo;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+public class DutySysRequestVO extends BaseRequest {
+    private String[] days;
+
+    public String[] getDays() {
+        return days;
+    }
+
+    public void setDays(String[] days) {
+        this.days = days;
+    }
+}

+ 15 - 0
src/main/java/com/ssj/bean/kmt/arrange/vo/TeacherDutyRequestVO.java

@@ -0,0 +1,15 @@
+package com.ssj.bean.kmt.arrange.vo;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+public class TeacherDutyRequestVO extends BaseRequest {
+    private String teacherId;
+
+    public String getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(String teacherId) {
+        this.teacherId = teacherId;
+    }
+}

+ 123 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtAiRecord.java

@@ -0,0 +1,123 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+
+@Entity
+@Table(name = "kmt_ai_record")
+public class KmtAiRecord  extends BaseEntity {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+
+	
+    private String fileCode;
+    
+    private String fileName;
+    
+    private String filePath;
+    
+    private Integer countNum;
+    
+    private Integer correctNum;
+    
+    private Integer errorNum;
+    
+    private String remarks;
+    
+    private Integer state;
+    
+    private Integer type;
+    
+    private Date createTime;
+
+	public Integer getState() {
+		return state;
+	}
+
+	public void setState(Integer state) {
+		this.state = state;
+	}
+
+	public String getFileCode() {
+		return fileCode;
+	}
+
+	public void setFileCode(String fileCode) {
+		this.fileCode = fileCode;
+	}
+
+	public String getFileName() {
+		return fileName;
+	}
+
+	public void setFileName(String fileName) {
+		this.fileName = fileName;
+	}
+
+	public String getFilePath() {
+		return filePath;
+	}
+
+	public void setFilePath(String filePath) {
+		this.filePath = filePath;
+	}
+
+	public Integer getCountNum() {
+		return countNum;
+	}
+
+	public void setCountNum(Integer countNum) {
+		this.countNum = countNum;
+	}
+
+	public Integer getCorrectNum() {
+		return correctNum;
+	}
+
+	public void setCorrectNum(Integer correctNum) {
+		this.correctNum = correctNum;
+	}
+
+	public Integer getErrorNum() {
+		return errorNum;
+	}
+
+	public void setErrorNum(Integer errorNum) {
+		this.errorNum = errorNum;
+	}
+
+	public String getRemarks() {
+		return remarks;
+	}
+
+	public void setRemarks(String remarks) {
+		this.remarks = remarks;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	
+	
+}

+ 75 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtArrangeAllot.java

@@ -0,0 +1,75 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "kmt_arrange_allot")
+public class KmtArrangeAllot  extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+
+    private String arrangeDetailId;
+    
+    private String teacherId;
+    
+    private Date arrangeDate;
+    
+    private Integer status;
+        
+    private Date createTime;
+
+    private Integer attendType; //是否有效出勤 0-无效 1-有效
+
+	public String getArrangeDetailId() {
+		return arrangeDetailId;
+	}
+
+	public void setArrangeDetailId(String arrangeDetailId) {
+		this.arrangeDetailId = arrangeDetailId;
+	}
+
+	public String getTeacherId() {
+		return teacherId;
+	}
+
+	public void setTeacherId(String teacherId) {
+		this.teacherId = teacherId;
+	}
+
+	public Date getArrangeDate() {
+		return arrangeDate;
+	}
+
+	public void setArrangeDate(Date arrangeDate) {
+		this.arrangeDate = arrangeDate;
+	}
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Integer getAttendType() {
+		return attendType;
+	}
+
+	public void setAttendType(Integer attendType) {
+		this.attendType = attendType;
+	}
+}

+ 158 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtArrangeDetail.java

@@ -0,0 +1,158 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "kmt_arrange_detail")
+public class KmtArrangeDetail  extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+
+    private String arrangeTemplateId;
+    
+    private String startInterval;
+    
+    private String endInterval;
+    
+    private Integer type;
+    
+    private String subject;
+    
+    private Date arrangeDate;
+    
+    private Integer week;
+    
+    private Integer miniNum;
+    
+    private Integer maxNum;
+    
+    private Integer haveNum;
+    
+    private Integer isOpen;
+
+    private Integer status;
+        
+    private Date createTime;
+    
+    private Date updateTime;
+    
+
+	public String getArrangeTemplateId() {
+		return arrangeTemplateId;
+	}
+
+	public void setArrangeTemplateId(String arrangeTemplateId) {
+		this.arrangeTemplateId = arrangeTemplateId;
+	}
+
+	public String getStartInterval() {
+		return startInterval;
+	}
+
+	public void setStartInterval(String startInterval) {
+		this.startInterval = startInterval;
+	}
+
+	public String getEndInterval() {
+		return endInterval;
+	}
+
+	public void setEndInterval(String endInterval) {
+		this.endInterval = endInterval;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public String getSubject() {
+		return subject;
+	}
+
+	public void setSubject(String subject) {
+		this.subject = subject;
+	}
+
+	public Date getArrangeDate() {
+		return arrangeDate;
+	}
+
+	public void setArrangeDate(Date arrangeDate) {
+		this.arrangeDate = arrangeDate;
+	}
+
+	public Integer getMiniNum() {
+		return miniNum;
+	}
+
+	public void setMiniNum(Integer miniNum) {
+		this.miniNum = miniNum;
+	}
+
+	public Integer getMaxNum() {
+		return maxNum;
+	}
+
+	public void setMaxNum(Integer maxNum) {
+		this.maxNum = maxNum;
+	}
+
+	public Integer getHaveNum() {
+		return haveNum;
+	}
+
+	public void setHaveNum(Integer haveNum) {
+		this.haveNum = haveNum;
+	}
+
+	public Integer getIsOpen() {
+		return isOpen;
+	}
+
+	public void setIsOpen(Integer isOpen) {
+		this.isOpen = isOpen;
+	}
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Integer getWeek() {
+		return week;
+	}
+
+	public void setWeek(Integer week) {
+		this.week = week;
+	}
+
+	public Date getUpdateTime() {
+		return updateTime;
+	}
+
+	public void setUpdateTime(Date updateTime) {
+		this.updateTime = updateTime;
+	}
+
+	
+}

+ 140 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtArrangeTemplate.java

@@ -0,0 +1,140 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "kmt_arrange_template")
+public class KmtArrangeTemplate  extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+
+    private String startInterval;
+    
+    private String endInterval;
+    
+    private Double workRatio;
+    
+    private Double weekendRatio;//批改老师
+    
+    private Integer averageNum;//批改老师
+
+    private Double knowWorkRatio;//知识点老师
+
+    private Double knowWeekendRatio;//知识点老师
+
+    private Integer knowAverageNum;//知识点老师
+
+    private Integer activeNum;
+
+    private Integer status;
+        
+    private Date createTime;
+    
+    private Date updateTime;
+    
+	public String getStartInterval() {
+		return startInterval;
+	}
+
+	public void setStartInterval(String startInterval) {
+		this.startInterval = startInterval;
+	}
+
+	public String getEndInterval() {
+		return endInterval;
+	}
+
+	public void setEndInterval(String endInterval) {
+		this.endInterval = endInterval;
+	}
+
+	public Double getWorkRatio() {
+		return workRatio;
+	}
+
+	public void setWorkRatio(Double workRatio) {
+		this.workRatio = workRatio;
+	}
+
+	public Double getWeekendRatio() {
+		return weekendRatio;
+	}
+
+	public void setWeekendRatio(Double weekendRatio) {
+		this.weekendRatio = weekendRatio;
+	}
+
+	public Integer getActiveNum() {
+		return activeNum;
+	}
+
+	public void setActiveNum(Integer activeNum) {
+		this.activeNum = activeNum;
+	}
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Date getUpdateTime() {
+		return updateTime;
+	}
+
+	public void setUpdateTime(Date updateTime) {
+		this.updateTime = updateTime;
+	}
+
+	public Integer getAverageNum() {
+		return averageNum;
+	}
+
+	public void setAverageNum(Integer averageNum) {
+		this.averageNum = averageNum;
+	}
+
+	public Double getKnowWorkRatio() {
+		return knowWorkRatio;
+	}
+
+	public void setKnowWorkRatio(Double knowWorkRatio) {
+		this.knowWorkRatio = knowWorkRatio;
+	}
+
+	public Double getKnowWeekendRatio() {
+		return knowWeekendRatio;
+	}
+
+	public void setKnowWeekendRatio(Double knowWeekendRatio) {
+		this.knowWeekendRatio = knowWeekendRatio;
+	}
+
+	public Integer getKnowAverageNum() {
+		return knowAverageNum;
+	}
+
+	public void setKnowAverageNum(Integer knowAverageNum) {
+		this.knowAverageNum = knowAverageNum;
+	}
+
+
+
+
+
+}

+ 373 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourse.java

@@ -0,0 +1,373 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course")
+public class KmtCourse extends BaseEntity {
+
+	/**     
+	 **wwww     
+	/**     
+	 **     
+	 */
+	private static final long serialVersionUID = 1L;      
+	
+	
+	private String teacherId;
+
+	private String courseTime;
+	
+	private String week;
+	
+	private String startTime;
+	
+	private String endTime;
+	
+	private String courseTmplateId;
+	
+	private String courseKnowId;
+	
+	private Integer state;
+	
+	private Date createTime;
+	
+	private String vipId;
+	private String lessonServiceId;//一对一辅导表id
+	private Integer courseType; //0:试听课,1:正式课
+	private Integer planStatus; //计划状态 1未支付 2家长支付;3确定上课意向;4上课;5反馈
+	private Integer num; //自增标识 从1开始
+	private Integer isFinish;//是否完成学习计划任务 0:未完成 1:已完成
+	private Date callTime; //打卡时间
+	private String callLng;//打卡经度
+	private String callLat;//打卡纬度
+	private String callMsg;//打卡信息
+	private Date confirmTime; //老师确认上课时间
+	private Integer isApply;//0:未申请调课 1:已申请调课
+	
+	private String teacherLever;//注册老师/明星老师/学霸老师
+	private String teacherType;//兼职/全职
+	
+    private Integer classLine; //课堂纪律评星
+	
+	private Integer studyActive; //学习主动性评星
+	
+	private String teacherSay; //老师评语
+	
+	private Date feedbackTime;//反馈时间
+	
+	private Integer parentJudgeLever; //家长评价评星
+	
+	private String judgeLable; //评价标签
+	
+	private Date judgeTime; //家长评价时间
+	
+	private Date parentViewTime; //家长查看时间
+	
+	private String applyTeacherId;//申请更换老师id
+	
+	private String refuseReason; //调课或换老师拒绝理由
+	/**
+	 * 组备课id
+	 */
+	private String groupCourseId;
+
+	private int isGroup;//0:一对一下单类型,1:小课下单类型
+	private int signInOff;//签到状态 0:未签到,1:已签到,2:已签离(废弃,只有签到)
+
+	public String getTeacherId() {
+		return teacherId;
+	}
+
+	public void setTeacherId(String teacherId) {
+		this.teacherId = teacherId;
+	}
+
+
+	public String getCourseTime() {
+		return courseTime;
+	}
+
+	public void setCourseTime(String courseTime) {
+		this.courseTime = courseTime;
+	}
+
+	public String getWeek() {
+		return week;
+	}
+
+	public void setWeek(String week) {
+		this.week = week;
+	}
+
+	public String getStartTime() {
+		return startTime;
+	}
+
+	public void setStartTime(String startTime) {
+		this.startTime = startTime;
+	}
+
+	public String getEndTime() {
+		return endTime;
+	}
+
+	public void setEndTime(String endTime) {
+		this.endTime = endTime;
+	}
+
+	public String getCourseTmplateId() {
+		return courseTmplateId;
+	}
+
+	public void setCourseTmplateId(String courseTmplateId) {
+		this.courseTmplateId = courseTmplateId;
+	}
+
+	public String getCourseKnowId() {
+		return courseKnowId;
+	}
+
+	public void setCourseKnowId(String courseKnowId) {
+		this.courseKnowId = courseKnowId;
+	}
+
+	public Integer getState() {
+		return state;
+	}
+
+	public void setState(Integer state) {
+		this.state = state;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public String getVipId() {
+		return vipId;
+	}
+
+	public void setVipId(String vipId) {
+		this.vipId = vipId;
+	}
+
+	public String getLessonServiceId() {
+		return lessonServiceId;
+	}
+
+	public void setLessonServiceId(String lessonServiceId) {
+		this.lessonServiceId = lessonServiceId;
+	}
+
+	
+
+	public Date getCallTime() {
+		return callTime;
+	}
+
+	public void setCallTime(Date callTime) {
+		this.callTime = callTime;
+	}
+
+	public String getCallLng() {
+		return callLng;
+	}
+
+	public void setCallLng(String callLng) {
+		this.callLng = callLng;
+	}
+
+	public String getCallLat() {
+		return callLat;
+	}
+
+	public void setCallLat(String callLat) {
+		this.callLat = callLat;
+	}
+
+	public String getCallMsg() {
+		return callMsg;
+	}
+
+	public void setCallMsg(String callMsg) {
+		this.callMsg = callMsg;
+	}
+
+	public Date getConfirmTime() {
+		return confirmTime;
+	}
+
+	public void setConfirmTime(Date confirmTime) {
+		this.confirmTime = confirmTime;
+	}
+
+	public Integer getCourseType() {
+		return courseType;
+	}
+
+	public void setCourseType(Integer courseType) {
+		this.courseType = courseType;
+	}
+
+	public Integer getPlanStatus() {
+		return planStatus;
+	}
+
+	public void setPlanStatus(Integer planStatus) {
+		this.planStatus = planStatus;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public Integer getIsFinish() {
+		return isFinish;
+	}
+
+	public void setIsFinish(Integer isFinish) {
+		this.isFinish = isFinish;
+	}
+
+	public Integer getIsApply() {
+		return isApply;
+	}
+
+	public void setIsApply(Integer isApply) {
+		this.isApply = isApply;
+	}
+
+	public String getTeacherLever() {
+		return teacherLever;
+	}
+
+	public void setTeacherLever(String teacherLever) {
+		this.teacherLever = teacherLever;
+	}
+
+	public String getTeacherType() {
+		return teacherType;
+	}
+
+	public void setTeacherType(String teacherType) {
+		this.teacherType = teacherType;
+	}
+
+	public Integer getClassLine() {
+		return classLine;
+	}
+
+	public void setClassLine(Integer classLine) {
+		this.classLine = classLine;
+	}
+
+	public Integer getStudyActive() {
+		return studyActive;
+	}
+
+	public void setStudyActive(Integer studyActive) {
+		this.studyActive = studyActive;
+	}
+
+	public String getTeacherSay() {
+		return teacherSay;
+	}
+
+	public void setTeacherSay(String teacherSay) {
+		this.teacherSay = teacherSay;
+	}
+
+	public Date getFeedbackTime() {
+		return feedbackTime;
+	}
+
+	public void setFeedbackTime(Date feedbackTime) {
+		this.feedbackTime = feedbackTime;
+	}
+
+	public Integer getParentJudgeLever() {
+		return parentJudgeLever;
+	}
+
+	public void setParentJudgeLever(Integer parentJudgeLever) {
+		this.parentJudgeLever = parentJudgeLever;
+	}
+
+	public String getJudgeLable() {
+		return judgeLable;
+	}
+
+	public void setJudgeLable(String judgeLable) {
+		this.judgeLable = judgeLable;
+	}
+
+	public Date getJudgeTime() {
+		return judgeTime;
+	}
+
+	public void setJudgeTime(Date judgeTime) {
+		this.judgeTime = judgeTime;
+	}
+
+	public Date getParentViewTime() {
+		return parentViewTime;
+	}
+
+	public void setParentViewTime(Date parentViewTime) {
+		this.parentViewTime = parentViewTime;
+	}
+
+	public String getApplyTeacherId() {
+		return applyTeacherId;
+	}
+
+	public void setApplyTeacherId(String applyTeacherId) {
+		this.applyTeacherId = applyTeacherId;
+	}
+	
+	public String getRefuseReason() {
+		return refuseReason;
+	}
+
+	public void setRefuseReason(String refuseReason) {
+		this.refuseReason = refuseReason;
+	}
+
+	public String getGroupCourseId() {
+		return groupCourseId;
+	}
+
+	public void setGroupCourseId(String groupCourseId) {
+		this.groupCourseId = groupCourseId;
+	}
+
+	public int getIsGroup() {
+		return isGroup;
+	}
+
+	public void setIsGroup(int isGroup) {
+		this.isGroup = isGroup;
+	}
+
+	public int getSignInOff() {
+		return signInOff;
+	}
+
+	public void setSignInOff(int signInOff) {
+		this.signInOff = signInOff;
+	}
+
+}

+ 210 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnow.java

@@ -0,0 +1,210 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_know")
+public class KmtCourseKnow  extends BaseEntity {
+
+	/**
+	 * 2222
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String teacherId;
+	
+	private String courseName;
+	
+	private String teachingType;
+	
+	private String title;
+	
+	private String target;
+	
+	private String nodus;
+	
+	private String level;
+	
+	private String gain;
+	
+	private Integer diffi;
+	
+	private String hard;
+	
+	private String easy;
+	
+	private Date createTime;
+
+	private Integer classLine; //课堂纪律评星
+	
+	private Integer studyActive; //学习主动性评星
+	
+	private String teacherSay; //老师评语
+	
+	private Date feedbackTime;//反馈时间
+	
+	private Integer parentJudgeLever; //家长评价评星
+	
+	private String judgeLable; //评价标签
+	
+	private Date judgeTime; //家长评价时间
+	
+	
+	public String getTeacherId() {
+		return teacherId;
+	}
+
+	public void setTeacherId(String teacherId) {
+		this.teacherId = teacherId;
+	}
+
+	public String getCourseName() {
+		return courseName;
+	}
+
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+
+	public String getTeachingType() {
+		return teachingType;
+	}
+
+	public void setTeachingType(String teachingType) {
+		this.teachingType = teachingType;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+	public String getTarget() {
+		return target;
+	}
+
+	public void setTarget(String target) {
+		this.target = target;
+	}
+
+	public String getNodus() {
+		return nodus;
+	}
+
+	public void setNodus(String nodus) {
+		this.nodus = nodus;
+	}
+
+	public String getLevel() {
+		return level;
+	}
+
+	public void setLevel(String level) {
+		this.level = level;
+	}
+
+	public String getGain() {
+		return gain;
+	}
+
+	public void setGain(String gain) {
+		this.gain = gain;
+	}
+
+	public Integer getDiffi() {
+		return diffi;
+	}
+
+	public void setDiffi(Integer diffi) {
+		this.diffi = diffi;
+	}
+
+	public String getHard() {
+		return hard;
+	}
+
+	public void setHard(String hard) {
+		this.hard = hard;
+	}
+
+	public String getEasy() {
+		return easy;
+	}
+
+	public void setEasy(String easy) {
+		this.easy = easy;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Integer getClassLine() {
+		return classLine;
+	}
+
+	public void setClassLine(Integer classLine) {
+		this.classLine = classLine;
+	}
+
+	public Integer getStudyActive() {
+		return studyActive;
+	}
+
+	public void setStudyActive(Integer studyActive) {
+		this.studyActive = studyActive;
+	}
+
+	public String getTeacherSay() {
+		return teacherSay;
+	}
+
+	public void setTeacherSay(String teacherSay) {
+		this.teacherSay = teacherSay;
+	}
+
+	public Date getFeedbackTime() {
+		return feedbackTime;
+	}
+
+	public void setFeedbackTime(Date feedbackTime) {
+		this.feedbackTime = feedbackTime;
+	}
+
+	public Integer getParentJudgeLever() {
+		return parentJudgeLever;
+	}
+
+	public void setParentJudgeLever(Integer parentJudgeLever) {
+		this.parentJudgeLever = parentJudgeLever;
+	}
+
+	public String getJudgeLable() {
+		return judgeLable;
+	}
+
+	public void setJudgeLable(String judgeLable) {
+		this.judgeLable = judgeLable;
+	}
+
+	public Date getJudgeTime() {
+		return judgeTime;
+	}
+
+	public void setJudgeTime(Date judgeTime) {
+		this.judgeTime = judgeTime;
+	}
+	
+	
+}

+ 57 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowArea.java

@@ -0,0 +1,57 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_know_area")
+public class KmtCourseKnowArea  extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+
+	private String courseKnowId;
+    
+    private String areaId;
+    
+    private Integer num;
+    
+    private Date createTime;
+
+	public String getCourseKnowId() {
+		return courseKnowId;
+	}
+
+	public void setCourseKnowId(String courseKnowId) {
+		this.courseKnowId = courseKnowId;
+	}
+
+	public String getAreaId() {
+		return areaId;
+	}
+
+	public void setAreaId(String areaId) {
+		this.areaId = areaId;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	
+	
+	
+}

+ 137 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowDetail.java

@@ -0,0 +1,137 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_know_detail")
+public class KmtCourseKnowDetail  extends BaseEntity {
+	
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String courseKnowId;
+	
+	private String knowId;
+	
+	private String explainText;
+	
+	private Integer num;
+	
+	private Integer type;
+	
+	private String name;
+	
+	private String ydsl;
+	
+	private String howName;
+	
+	private String howId;
+	
+	
+	private Date createTime;
+	/**
+	 * 专题知识点id
+	 */
+	private String specialTopicDetailsId;
+	
+
+	public String getYdsl() {
+		return ydsl;
+	}
+
+	public void setYdsl(String ydsl) {
+		this.ydsl = ydsl;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public String getCourseKnowId() {
+		return courseKnowId;
+	}
+
+	public void setCourseKnowId(String courseKnowId) {
+		this.courseKnowId = courseKnowId;
+	}
+
+	
+	public String getKnowId() {
+		return knowId;
+	}
+
+	public void setKnowId(String knowId) {
+		this.knowId = knowId;
+	}
+
+
+	public String getExplainText() {
+		return explainText;
+	}
+
+	public void setExplainText(String explainText) {
+		this.explainText = explainText;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getSpecialTopicDetailsId() {
+		return specialTopicDetailsId;
+	}
+
+	public void setSpecialTopicDetailsId(String specialTopicDetailsId) {
+		this.specialTopicDetailsId = specialTopicDetailsId;
+	}
+
+	public String getHowName() {
+		return howName;
+	}
+
+	public void setHowName(String howName) {
+		this.howName = howName;
+	}
+
+	public String getHowId() {
+		return howId;
+	}
+
+	public void setHowId(String howId) {
+		this.howId = howId;
+	}
+	
+	
+	
+}

+ 97 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowKdDetail.java

@@ -0,0 +1,97 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_know_kd_detail")
+public class KmtCourseKnowKdDetail  extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+	
+	private String courseKnowId;
+	
+	private String howDetailsKdId;
+	
+	private String kdName;
+	
+	private String knowId;
+	
+	private String ydsl;
+	
+	private Integer num;
+	
+	private Integer type;
+	
+	private Date createTime;
+
+	public String getCourseKnowId() {
+		return courseKnowId;
+	}
+
+	public void setCourseKnowId(String courseKnowId) {
+		this.courseKnowId = courseKnowId;
+	}
+
+	public String getHowDetailsKdId() {
+		return howDetailsKdId;
+	}
+
+	public void setHowDetailsKdId(String howDetailsKdId) {
+		this.howDetailsKdId = howDetailsKdId;
+	}
+
+	public String getKdName() {
+		return kdName;
+	}
+
+	public void setKdName(String kdName) {
+		this.kdName = kdName;
+	}
+
+	public String getKnowId() {
+		return knowId;
+	}
+
+	public void setKnowId(String knowId) {
+		this.knowId = knowId;
+	}
+
+	public String getYdsl() {
+		return ydsl;
+	}
+
+	public void setYdsl(String ydsl) {
+		this.ydsl = ydsl;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	
+
+
+}

+ 133 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseKnowTemplate.java

@@ -0,0 +1,133 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_know_template")
+public class KmtCourseKnowTemplate extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 模板名称
+     */
+    private String name;
+
+    /**
+     * 老师id
+     */
+    private String teacherId;
+
+    /**
+     * 模板的讲义id
+     */
+    private String courseKnowId;
+
+    /**
+     * 科目
+     */
+    private String courseName;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+
+    /**
+     * 学期,1上学期,2下学期
+     */
+    private Integer semester;
+
+    /**
+     * 同步专题标识字段,1同步,2专题
+     */
+    private Integer topic;
+
+    /**
+     * 模板缓存的数组字段
+     */
+    private String data;
+
+    /**
+     * 模板类型,1小课正式版
+     */
+    private Integer templateType;
+
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(String teacherId) {
+        this.teacherId = teacherId;
+    }
+
+    public String getCourseKnowId() {
+        return courseKnowId;
+    }
+
+    public void setCourseKnowId(String courseKnowId) {
+        this.courseKnowId = courseKnowId;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Integer getSemester() {
+        return semester;
+    }
+
+    public void setSemester(Integer semester) {
+        this.semester = semester;
+    }
+
+    public Integer getTopic() {
+        return topic;
+    }
+
+    public void setTopic(Integer topic) {
+        this.topic = topic;
+    }
+
+    public String getData() {
+        return data;
+    }
+
+    public void setData(String data) {
+        this.data = data;
+    }
+
+    public Integer getTemplateType() {
+        return templateType;
+    }
+
+    public void setTemplateType(Integer templateType) {
+        this.templateType = templateType;
+    }
+}

+ 141 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseQuestionDetail.java

@@ -0,0 +1,141 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+@Entity
+@Table(name = "kmt_course_question_detail")
+public class KmtCourseQuestionDetail extends BaseEntity {
+	
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String courseKnowId;
+	
+	private String knowId;
+	
+	private String howDetailsKdId;
+	
+	private String questionId;
+	
+	private Integer type;
+	
+	private Integer isAnswer;
+	
+	private Integer num;
+	
+	private Integer mark;
+
+	private String kname;
+	
+	private String howDetailsId;
+	
+	private String ydsl;
+	
+	private Date createTime;
+	
+	
+	
+	public String getYdsl() {
+		return ydsl;
+	}
+
+	public void setYdsl(String ydsl) {
+		this.ydsl = ydsl;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public String getCourseKnowId() {
+		return courseKnowId;
+	}
+
+	public void setCourseKnowId(String courseKnowId) {
+		this.courseKnowId = courseKnowId;
+	}
+
+	public String getKnowId() {
+		return knowId;
+	}
+
+	public void setKnowId(String knowId) {
+		this.knowId = knowId;
+	}
+
+	public String getQuestionId() {
+		return questionId;
+	}
+
+	public void setQuestionId(String questionId) {
+		this.questionId = questionId;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public Integer getIsAnswer() {
+		return isAnswer;
+	}
+
+	public void setIsAnswer(Integer isAnswer) {
+		this.isAnswer = isAnswer;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public Integer getMark() {
+		return mark;
+	}
+
+	public void setMark(Integer mark) {
+		this.mark = mark;
+	}
+
+	public String getKname() {
+		return kname;
+	}
+
+	public void setKname(String kname) {
+		this.kname = kname;
+	}
+
+	public String getHowDetailsKdId() {
+		return howDetailsKdId;
+	}
+
+	public void setHowDetailsKdId(String howDetailsKdId) {
+		this.howDetailsKdId = howDetailsKdId;
+	}
+
+	public String getHowDetailsId() {
+		return howDetailsId;
+	}
+
+	public void setHowDetailsId(String howDetailsId) {
+		this.howDetailsId = howDetailsId;
+	}
+	
+}

+ 51 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseRecord.java

@@ -0,0 +1,51 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_record")
+public class KmtCourseRecord  extends BaseEntity {
+	
+	private static final long serialVersionUID = 1L;
+	
+	private String courseKnowId;
+	
+	private String html;
+	
+	private Date createTime;
+
+	public String getCourseKnowId() {
+		return courseKnowId;
+	}
+
+	public void setCourseKnowId(String courseKnowId) {
+		this.courseKnowId = courseKnowId;
+	}
+
+	public String getHtml() {
+		return html;
+	}
+
+	public void setHtml(String html) {
+		this.html = html;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	
+	
+	
+	
+	
+	
+
+}

+ 109 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtCourseTemplate.java

@@ -0,0 +1,109 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name = "kmt_course_template")
+public class KmtCourseTemplate extends BaseEntity {
+	
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	private String teacherId;
+	
+	private Integer type;
+	
+	private String val;
+	
+	private String details;
+	
+	private Integer state;
+	
+	private Integer num;
+	
+	private Date createTime;
+	
+	private String grade;
+	
+	private Integer isPublic;
+
+	public String getTeacherId() {
+		return teacherId;
+	}
+
+	public void setTeacherId(String teacherId) {
+		this.teacherId = teacherId;
+	}
+
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public String getVal() {
+		return val;
+	}
+
+	public void setVal(String val) {
+		this.val = val;
+	}
+
+	public String getDetails() {
+		return details;
+	}
+
+	public void setDetails(String details) {
+		this.details = details;
+	}
+
+	public Integer getState() {
+		return state;
+	}
+
+	public void setState(Integer state) {
+		this.state = state;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public String getGrade() {
+		return grade;
+	}
+
+	public void setGrade(String grade) {
+		this.grade = grade;
+	}
+
+	public Integer getIsPublic() {
+		return isPublic;
+	}
+
+	public void setIsPublic(Integer isPublic) {
+		this.isPublic = isPublic;
+	}
+
+	
+}

+ 47 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExampaper.java

@@ -0,0 +1,47 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+
+@Entity
+@Table(name="kmt_exampaper")
+public class KmtExampaper extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+	
+	private String questionId; //题目id
+	private String areaId; //试卷id
+	private String num;
+	private Date createTime;//时间
+	
+	
+	public String getNum() {
+		return num;
+	}
+	public void setNum(String num) {
+		this.num = num;
+	}
+	public String getQuestionId() {
+		return questionId;
+	}
+	public void setQuestionId(String questionId) {
+		this.questionId = questionId;
+	}
+	public String getAreaId() {
+		return areaId;
+	}
+	public void setAreaId(String areaId) {
+		this.areaId = areaId;
+	}
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	
+}

+ 97 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExampaperArea.java

@@ -0,0 +1,97 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.util.Date;
+
+@Entity
+@Table(name="kmt_exampaper_area")
+public class KmtExampaperArea extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+	private String year; //年份
+	private String city; //城市
+	private String area;//区
+	private String school;//学校可空
+	private Integer semester;//上下学期 1上学期2下学期
+	private Integer type;//1单元2期末
+	private String subject;//科目
+	private String grade;//年级
+	private Date createTime;//创建时间
+	private String addStr; //附加值
+	
+	private Integer is=0;//是否已选
+	@Transient
+	public Integer getIs() {
+		return is;
+	}
+	public void setIs(Integer is) {
+		this.is = is;
+	}
+	public String getYear() {
+		return year;
+	}
+	public void setYear(String year) {
+		this.year = year;
+	}
+	public String getCity() {
+		return city;
+	}
+	public void setCity(String city) {
+		this.city = city;
+	}
+	public String getArea() {
+		return area;
+	}
+	public void setArea(String area) {
+		this.area = area;
+	}
+	public String getSchool() {
+		return school;
+	}
+	public void setSchool(String school) {
+		this.school = school;
+	}
+	public Integer getSemester() {
+		return semester;
+	}
+	public void setSemester(Integer semester) {
+		this.semester = semester;
+	}
+	public Integer getType() {
+		return type;
+	}
+	public void setType(Integer type) {
+		this.type = type;
+	}
+	public String getSubject() {
+		return subject;
+	}
+	public void setSubject(String subject) {
+		this.subject = subject;
+	}
+	public String getGrade() {
+		return grade;
+	}
+	public void setGrade(String grade) {
+		this.grade = grade;
+	}
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	public String getAddStr() {
+		return addStr;
+	}
+	public void setAddStr(String addStr) {
+		this.addStr = addStr;
+	}
+	
+	
+
+}

+ 142 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExampaperDetail.java

@@ -0,0 +1,142 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+import org.hibernate.annotations.Fetch;
+import org.hibernate.annotations.FetchMode;
+
+import javax.persistence.*;
+import java.util.Date;
+
+@Entity
+@Table(name="kmt_exampaper_detail")
+public class KmtExampaperDetail extends BaseEntity {
+
+	private static final long serialVersionUID = 1L;
+	
+	private String areaId;
+	
+	private String questionId;
+
+	private String pId;
+	
+	private String code;
+	
+	private String name;
+	
+	private Integer sortNo;
+	
+	private int subCount;
+	
+	private Integer orgLevel;
+	
+	private Integer status;
+	
+	private Date createTime;
+	
+	private boolean isParent;//是否存在父节点,不持久化
+	
+	private KmtQuestion kmtQuestion;
+	
+	@OneToOne(cascade = { CascadeType.PERSIST}, fetch=FetchType.EAGER)
+	@JoinColumn(name="questionId",updatable =false,insertable =false)
+	@Fetch(FetchMode.SELECT)
+	public KmtQuestion getKmtQuestion() {
+		return kmtQuestion;
+	}
+
+	public void setKmtQuestion(KmtQuestion kmtQuestion) {
+		this.kmtQuestion = kmtQuestion;
+	}
+
+	public String getAreaId() {
+		return areaId;
+	}
+
+	public void setAreaId(String areaId) {
+		this.areaId = areaId;
+	}
+
+	public String getQuestionId() {
+		return questionId;
+	}
+
+	public void setQuestionId(String questionId) {
+		this.questionId = questionId;
+	}
+
+	public String getpId() {
+		return pId;
+	}
+
+	public void setpId(String pId) {
+		this.pId = pId;
+	}
+
+	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 Integer getSortNo() {
+		return sortNo;
+	}
+
+	public void setSortNo(Integer sortNo) {
+		this.sortNo = sortNo;
+	}
+
+	public int getSubCount() {
+		return subCount;
+	}
+
+	public void setSubCount(int subCount) {
+		this.subCount = subCount;
+	}
+
+	public Integer getOrgLevel() {
+		return orgLevel;
+	}
+
+	public void setOrgLevel(Integer orgLevel) {
+		this.orgLevel = orgLevel;
+	}
+
+	public Integer getStatus() {
+		return status;
+	}
+
+	public void setStatus(Integer status) {
+		this.status = status;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	 @Transient
+	 public boolean getIsParent() {
+        if (isParent == true) {
+            return true;
+        } else {
+            return subCount > 0;
+        }
+    }
+    public void setIsParent(boolean isParent) {
+        this.isParent = isParent;
+    }
+
+}

+ 487 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBook.java

@@ -0,0 +1,487 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 15:30 2019/12/10
+ * @Modified By
+ */
+@Entity
+@Table(name="kmt_exercise_book")
+public class KmtExerciseBook extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    private String bookName;
+
+    private int version;
+
+    private String grade;
+
+    private int semester;
+
+    private Date createTime;
+
+    private String handleUserId;
+
+    private String auditingUserId;
+
+    private String analysisUserId;
+
+    private int hadHandle;
+
+    private int hadAuditing;
+
+    private String courseName;
+
+    private String analysisAuditerId;
+
+    private int analysisHandled;
+
+    private int analysisAudited;
+
+    private String bookId;
+    /**
+     * 使用年份
+     */
+    private int bookYear;
+    private Integer bookStatus;
+    /**
+     * 路径1
+     */
+    private String url1;
+    /**
+     * 路径2
+     */
+    private String url2;
+    /**
+     * 出版社
+     */
+    private String press;
+    /**
+     * 印刷年份
+     */
+    private String printYear;
+    /**
+     * 使用年份(废弃,使用bookYear)
+     */
+    //private String useYear;
+
+    /**
+     * 状态
+     */
+    private String status;
+    /**
+     * 关联机构数
+     */
+    private int orgNums;
+    /**
+     * 对接进度
+     */
+    private String progress;
+    /**
+     * 优先级
+     */
+    private String priority;
+    /**
+     * 被识别次数
+     */
+    private int identifiedNums;
+    /**
+     * 编辑人id
+     */
+    private String userId;
+    /**
+     * 编辑人
+     */
+    private String userName;
+    /**
+     * 更新时间
+     */
+    private Date updatedTime;
+    /**
+     * 版本名称
+     */
+    private String versionName;
+
+    /**
+     * 多机构综合识别率
+     */
+    private String totalGradePriority;
+
+    /**
+     *练习册关联机构签约总数
+     *
+     */
+    private int exerciseRelevancyNum;
+
+    /**
+     * 答案校对员用户id
+     */
+    private String answerCorrecterId;
+
+    /**
+     * 答案校对状态, 0未校对, 1答案正确,2答案错误, 3管理员已修改
+     */
+    private int proofreadStatus;
+
+    /**
+     * 最近一次答案校对为错误的时间
+     */
+    private Date latestAnswerWrongDateTime;
+
+    /**
+     * 练习册类型,0整本,1上半本,2下半本,3完成不同的页码的新版练习册
+     */
+    private int bookType;
+
+    private int partFlag;
+
+    private int answerCorrectedStatus;
+    /**
+     * 所有绑定的机构名(用于导入)
+     */
+    private String libName;
+
+    /**
+     * 校对时间(已校对的才有校对时间)
+     */
+    private Date checkTime;
+    /**
+     * ai打回重导标记,0无重导,1有重导
+     */
+    private int aiRollbackImport;
+
+    public int getAiRollbackImport() {
+        return aiRollbackImport;
+    }
+
+    public void setAiRollbackImport(int aiRollbackImport) {
+        this.aiRollbackImport = aiRollbackImport;
+    }
+
+    public Date getCheckTime() {
+        return checkTime;
+    }
+
+    public void setCheckTime(Date checkTime) {
+        this.checkTime = checkTime;
+    }
+
+    public String getLibName() {
+        return libName;
+    }
+
+    public void setLibName(String libName) {
+        this.libName = libName;
+    }
+
+    public int getPartFlag() {
+        return partFlag;
+    }
+
+    public void setPartFlag(int partFlag) {
+        this.partFlag = partFlag;
+    }
+
+    public int getBookType() {
+        return bookType;
+    }
+
+    public void setBookType(int bookType) {
+        this.bookType = bookType;
+    }
+
+    public String getTotalGradePriority() {
+        return totalGradePriority;
+    }
+
+    public void setTotalGradePriority(String totalGradePriority) {
+        this.totalGradePriority = totalGradePriority;
+    }
+
+    public int getExerciseRelevancyNum() {
+        return exerciseRelevancyNum;
+    }
+
+    public void setExerciseRelevancyNum(int exerciseRelevancyNum) {
+        this.exerciseRelevancyNum = exerciseRelevancyNum;
+    }
+
+    public String getVersionName() {
+        return versionName;
+    }
+
+    public void setVersionName(String versionName) {
+        this.versionName = versionName;
+    }
+
+    public Date getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Date updatedTime) {
+        this.updatedTime = updatedTime;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getUrl1() {
+        return url1;
+    }
+
+    public void setUrl1(String url1) {
+        this.url1 = url1;
+    }
+
+    public String getUrl2() {
+        return url2;
+    }
+
+    public void setUrl2(String url2) {
+        this.url2 = url2;
+    }
+
+    public String getPress() {
+        return press;
+    }
+
+    public void setPress(String press) {
+        this.press = press;
+    }
+
+    public String getPrintYear() {
+        return printYear;
+    }
+
+    public void setPrintYear(String printYear) {
+        this.printYear = printYear;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getProgress() {
+        return progress;
+    }
+
+    public void setProgress(String progress) {
+        this.progress = progress;
+    }
+
+    public String getPriority() {
+        return priority;
+    }
+
+    public void setPriority(String priority) {
+        this.priority = priority;
+    }
+
+    public String getBookName() {
+        return bookName;
+    }
+
+    public void setBookName(String bookName) {
+        this.bookName = bookName;
+    }
+
+    public int getVersion() {
+        return version;
+    }
+
+    public void setVersion(int version) {
+        this.version = version;
+    }
+
+    public String getGrade() {
+        return grade;
+    }
+
+    public void setGrade(String grade) {
+        this.grade = grade;
+    }
+
+    public int getSemester() {
+        return semester;
+    }
+
+    public void setSemester(int semester) {
+        this.semester = semester;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getHandleUserId() {
+        return handleUserId;
+    }
+
+    public void setHandleUserId(String handleUserId) {
+        this.handleUserId = handleUserId;
+    }
+
+    public String getAuditingUserId() {
+        return auditingUserId;
+    }
+
+    public void setAuditingUserId(String auditingUserId) {
+        this.auditingUserId = auditingUserId;
+    }
+
+    public String getAnalysisUserId() {
+        return analysisUserId;
+    }
+
+    public void setAnalysisUserId(String analysisUserId) {
+        this.analysisUserId = analysisUserId;
+    }
+
+    public int getHadHandle() {
+        return hadHandle;
+    }
+
+    public void setHadHandle(int hadHandle) {
+        this.hadHandle = hadHandle;
+    }
+
+    public int getHadAuditing() {
+        return hadAuditing;
+    }
+
+    public void setHadAuditing(int hadAuditing) {
+        this.hadAuditing = hadAuditing;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public String getAnalysisAuditerId() {
+        return analysisAuditerId;
+    }
+
+    public void setAnalysisAuditerId(String analysisAuditerId) {
+        this.analysisAuditerId = analysisAuditerId;
+    }
+
+    public int getAnalysisHandled() {
+        return analysisHandled;
+    }
+
+    public void setAnalysisHandled(int analysisHandled) {
+        this.analysisHandled = analysisHandled;
+    }
+
+    public int getAnalysisAudited() {
+        return analysisAudited;
+    }
+
+    public void setAnalysisAudited(int analysisAudited) {
+        this.analysisAudited = analysisAudited;
+    }
+
+    public String getBookId() {
+        return bookId;
+    }
+
+    public void setBookId(String bookId) {
+        this.bookId = bookId;
+    }
+
+    public int getBookYear() {
+        return bookYear;
+    }
+
+    public void setBookYear(int bookYear) {
+        this.bookYear = bookYear;
+    }
+
+    public Integer getBookStatus() {
+        return bookStatus;
+    }
+
+    public void setBookStatus(Integer bookStatus) {
+        this.bookStatus = bookStatus;
+    }
+
+    public int getOrgNums() {
+        return orgNums;
+    }
+
+    public void setOrgNums(int orgNums) {
+        this.orgNums = orgNums;
+    }
+
+    public int getIdentifiedNums() {
+        return identifiedNums;
+    }
+
+    public void setIdentifiedNums(int identifiedNums) {
+        this.identifiedNums = identifiedNums;
+    }
+
+    public String getAnswerCorrecterId() {
+        return answerCorrecterId;
+    }
+
+    public void setAnswerCorrecterId(String answerCorrecterId) {
+        this.answerCorrecterId = answerCorrecterId;
+    }
+
+    public int getProofreadStatus() {
+        return proofreadStatus;
+    }
+
+    public void setProofreadStatus(int proofreadStatus) {
+        this.proofreadStatus = proofreadStatus;
+    }
+
+    public Date getLatestAnswerWrongDateTime() {
+        return latestAnswerWrongDateTime;
+    }
+
+    public void setLatestAnswerWrongDateTime(Date latestAnswerWrongDateTime) {
+        this.latestAnswerWrongDateTime = latestAnswerWrongDateTime;
+    }
+
+    public int getAnswerCorrectedStatus() {
+        return answerCorrectedStatus;
+    }
+
+    public void setAnswerCorrectedStatus(int answerCorrectedStatus) {
+        this.answerCorrectedStatus = answerCorrectedStatus;
+    }
+}

+ 185 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookCount.java

@@ -0,0 +1,185 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="kmt_exercise_book_count")
+public class KmtExerciseBookCount extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    private String exerciseBookId;
+    private String bookId;
+    private String bookName;
+    private String courseName;
+    private String grade;
+    private Integer semester;
+    private Integer version;
+    private Integer bookType;
+    private String userId;
+    private Integer type;
+    private Integer unprocessedCount;
+    private Integer repulseCount;
+    private Integer processedCount;
+    private Integer unfinishedUnitCount;
+    private Integer totalUnitCount;
+    private Integer bookStatus;
+    private Integer accuracy;
+    private Date updateTime;
+    private Date createTime;
+
+    public String getExerciseBookId() {
+        return exerciseBookId;
+    }
+
+    public void setExerciseBookId(String exerciseBookId) {
+        this.exerciseBookId = exerciseBookId;
+    }
+
+    public String getBookId() {
+        return bookId;
+    }
+
+    public void setBookId(String bookId) {
+        this.bookId = bookId;
+    }
+
+    public String getBookName() {
+        return bookName;
+    }
+
+    public void setBookName(String bookName) {
+        this.bookName = bookName;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public String getGrade() {
+        return grade;
+    }
+
+    public void setGrade(String grade) {
+        this.grade = grade;
+    }
+
+    public Integer getSemester() {
+        return semester;
+    }
+
+    public void setSemester(Integer semester) {
+        this.semester = semester;
+    }
+
+    public Integer getVersion() {
+        return version;
+    }
+
+    public void setVersion(Integer version) {
+        this.version = version;
+    }
+
+    public Integer getBookType() {
+        return bookType;
+    }
+
+    public void setBookType(Integer bookType) {
+        this.bookType = bookType;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public Integer getUnprocessedCount() {
+        return unprocessedCount;
+    }
+
+    public void setUnprocessedCount(Integer unprocessedCount) {
+        this.unprocessedCount = unprocessedCount;
+    }
+
+    public Integer getRepulseCount() {
+        return repulseCount;
+    }
+
+    public void setRepulseCount(Integer repulseCount) {
+        this.repulseCount = repulseCount;
+    }
+
+    public Integer getProcessedCount() {
+        return processedCount;
+    }
+
+    public void setProcessedCount(Integer processedCount) {
+        this.processedCount = processedCount;
+    }
+
+    public Integer getUnfinishedUnitCount() {
+        return unfinishedUnitCount;
+    }
+
+    public void setUnfinishedUnitCount(Integer unfinishedUnitCount) {
+        this.unfinishedUnitCount = unfinishedUnitCount;
+    }
+
+    public Integer getTotalUnitCount() {
+        return totalUnitCount;
+    }
+
+    public void setTotalUnitCount(Integer totalUnitCount) {
+        this.totalUnitCount = totalUnitCount;
+    }
+
+    public Integer getBookStatus() {
+        return bookStatus;
+    }
+
+    public void setBookStatus(Integer bookStatus) {
+        this.bookStatus = bookStatus;
+    }
+
+    public Integer getAccuracy() {
+        return accuracy;
+    }
+
+    public void setAccuracy(Integer accuracy) {
+        this.accuracy = accuracy;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+}

+ 210 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookCourse.java

@@ -0,0 +1,210 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="kmt_exercise_book_course")
+public class KmtExerciseBookCourse extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 练习册id
+     */
+    private String bookId;
+
+    /**
+     * 科目
+     */
+    private String courseName;
+
+    /**
+     * 版本, 根据科目有不同的版本代号, 参考KnowledgeVersion
+     */
+    private Integer version;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 上下册, 1上2下
+     */
+    private Integer semester;
+
+    /**
+     * 练习册名称
+     */
+    private String bookName;
+
+    /**
+     * 单元id
+     */
+    private String unitId;
+
+    /**
+     * 单元名称
+     */
+    private String unit;
+
+    /**
+     * 课时名称
+     */
+    private String period;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 单元排序,只用于排序,不能用于展示
+     */
+    private Long unitSort;
+
+    /**
+     * 课时排序
+     */
+    private Integer periodSort;
+
+    private String auditingUserId;//审核人
+    private String handleUserId;//加工人
+    private String analysisUserId;//解析人
+
+    public String getBookId() {
+        return bookId;
+    }
+
+    public void setBookId(String bookId) {
+        this.bookId = bookId;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public Integer getVersion() {
+        return version;
+    }
+
+    public void setVersion(Integer version) {
+        this.version = version;
+    }
+
+    public String getGrade() {
+        return grade;
+    }
+
+    public void setGrade(String grade) {
+        this.grade = grade;
+    }
+
+    public Integer getSemester() {
+        return semester;
+    }
+
+    public void setSemester(Integer semester) {
+        this.semester = semester;
+    }
+
+    public String getBookName() {
+        return bookName;
+    }
+
+    public void setBookName(String bookName) {
+        this.bookName = bookName;
+    }
+
+    public String getUnitId() {
+        return unitId;
+    }
+
+    public void setUnitId(String unitId) {
+        this.unitId = unitId;
+    }
+
+    public String getUnit() {
+        return unit;
+    }
+
+    public void setUnit(String unit) {
+        this.unit = unit;
+    }
+
+    public String getPeriod() {
+        return period;
+    }
+
+    public void setPeriod(String period) {
+        this.period = period;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public Long getUnitSort() {
+        return unitSort;
+    }
+
+    public void setUnitSort(Long unitSort) {
+        this.unitSort = unitSort;
+    }
+
+    public Integer getPeriodSort() {
+        return periodSort;
+    }
+
+    public void setPeriodSort(Integer periodSort) {
+        this.periodSort = periodSort;
+    }
+
+    public String getAuditingUserId() {
+        return auditingUserId;
+    }
+
+    public void setAuditingUserId(String auditingUserId) {
+        this.auditingUserId = auditingUserId;
+    }
+
+    public String getHandleUserId() {
+        return handleUserId;
+    }
+
+    public void setHandleUserId(String handleUserId) {
+        this.handleUserId = handleUserId;
+    }
+
+    public String getAnalysisUserId() {
+        return analysisUserId;
+    }
+
+    public void setAnalysisUserId(String analysisUserId) {
+        this.analysisUserId = analysisUserId;
+    }
+}

+ 434 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookDistributionCount.java

@@ -0,0 +1,434 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * @author yrf
+ * @date 2020/6/2 10:33
+ */
+@Entity
+@Table(name = "kmt_exercise_book_distribution_count")
+public class KmtExerciseBookDistributionCount extends BaseEntity {
+
+    private static final long serialVersionUID = -4723210268086837591L;
+
+    /**
+     * 练习册id
+     */
+    private String exerciseBookId;
+
+    /**
+     * 练习册导入时间
+     */
+    private Date importDate;
+
+    /**
+     * 练习册名称
+     */
+    private String bookName;
+
+    /**
+     * 科目
+     */
+    private String subject;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 版本
+     */
+    private Integer version;
+
+    /**
+     * 上下册(1:上;2:下)
+     */
+    private Integer semester;
+
+    /**
+     * 练习册类型,0整本,1上半本,2下半本,3完成不同的页码的新版练习册
+     */
+    private Integer bookType;
+
+    /**
+     * 单元总数
+     */
+    private Integer unitCount = 0;
+
+    /**
+     * 课时总数
+     */
+    private Integer courseCount = 0;
+
+    /**
+     * 加工人名称
+     */
+    private String handlerName;
+
+    /**
+     * 加工人最新提交时间
+     */
+    private Date handlerLastSubmitTime;
+
+    /**
+     * 加工人结薪状态(0:未结薪;1已结薪)
+     */
+    private Integer handlerSalaryGiven = 0;
+
+    /**
+     * 加工人结薪时间
+     */
+    private Date handlerSalaryGivenTime;
+
+    /**
+     * 加工正确率
+     */
+    private Integer handlerAccuracy = 0;
+
+    /**
+     * 加审人名称
+     */
+    private String handleAuditUserName;
+
+    /**
+     * 加审人最新提交时间
+     */
+    private Date handleAuditUserLastSubmitTime;
+
+    /**
+     * 加审人结薪状态(0:未结薪;1已结薪)
+     */
+    private Integer handleAuditUserSalaryGiven = 0;
+
+    /**
+     * 加审人结薪时间
+     */
+    private Date handleAuditUserSalaryGivenTime;
+
+    /**
+     * 加审正确率
+     */
+    private Integer handleAuditUserAccuracy = 0;
+
+    /**
+     * 加工人名称
+     */
+    private String analyserName;
+
+    /**
+     * 加工人最新提交时间
+     */
+    private Date analyserLastSubmitTime;
+
+    /**
+     * 加工人结薪状态(0:未结薪;1已结薪)
+     */
+    private Integer analyserSalaryGiven = 0;
+
+    /**
+     * 加工人结薪时间
+     */
+    private Date analyserSalaryGivenTime;
+
+    /**
+     * 加工正确率
+     */
+    private Integer analyserAccuracy = 0;
+
+    /**
+     * 解审人名称
+     */
+    private String analysisAuditUserName;
+
+    /**
+     * 解审人最新提交时间
+     */
+    private Date analysisAuditUserLastSubmitTime;
+
+    /**
+     * 解审人结薪状态(0:未结薪;1已结薪)
+     */
+    private Integer analysisAuditUserSalaryGiven = 0;
+
+    /**
+     * 解审人结薪时间
+     */
+    private Date analysisAuditUserSalaryGivenTime;
+
+    /**
+     * 练习册状态(1:加工中;2:加工审核中;3:解析中;4:解析审核中;5:已发布)
+     */
+    private Integer bookStatus;
+
+    /**
+     * 最后一次更新时间
+     */
+    private Date updateTime;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    public String getExerciseBookId() {
+        return exerciseBookId;
+    }
+
+    public void setExerciseBookId(String exerciseBookId) {
+        this.exerciseBookId = exerciseBookId;
+    }
+
+    public Date getImportDate() {
+        return importDate;
+    }
+
+    public void setImportDate(Date importDate) {
+        this.importDate = importDate;
+    }
+
+    public String getBookName() {
+        return bookName;
+    }
+
+    public void setBookName(String bookName) {
+        this.bookName = bookName;
+    }
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        this.subject = subject;
+    }
+
+    public String getGrade() {
+        return grade;
+    }
+
+    public void setGrade(String grade) {
+        this.grade = grade;
+    }
+
+    public Integer getVersion() {
+        return version;
+    }
+
+    public void setVersion(Integer version) {
+        this.version = version;
+    }
+
+    public Integer getSemester() {
+        return semester;
+    }
+
+    public void setSemester(Integer semester) {
+        this.semester = semester;
+    }
+
+    public Integer getBookType() {
+        return bookType;
+    }
+
+    public void setBookType(Integer bookType) {
+        this.bookType = bookType;
+    }
+
+    public Integer getUnitCount() {
+        return unitCount;
+    }
+
+    public void setUnitCount(Integer unitCount) {
+        this.unitCount = unitCount;
+    }
+
+    public Integer getCourseCount() {
+        return courseCount;
+    }
+
+    public void setCourseCount(Integer courseCount) {
+        this.courseCount = courseCount;
+    }
+
+    public String getHandlerName() {
+        return handlerName;
+    }
+
+    public void setHandlerName(String handlerName) {
+        this.handlerName = handlerName;
+    }
+
+    public Date getHandlerLastSubmitTime() {
+        return handlerLastSubmitTime;
+    }
+
+    public void setHandlerLastSubmitTime(Date handlerLastSubmitTime) {
+        this.handlerLastSubmitTime = handlerLastSubmitTime;
+    }
+
+    public Integer getHandlerSalaryGiven() {
+        return handlerSalaryGiven;
+    }
+
+    public void setHandlerSalaryGiven(Integer handlerSalaryGiven) {
+        this.handlerSalaryGiven = handlerSalaryGiven;
+    }
+
+    public Date getHandlerSalaryGivenTime() {
+        return handlerSalaryGivenTime;
+    }
+
+    public void setHandlerSalaryGivenTime(Date handlerSalaryGivenTime) {
+        this.handlerSalaryGivenTime = handlerSalaryGivenTime;
+    }
+
+    public Integer getHandlerAccuracy() {
+        return handlerAccuracy;
+    }
+
+    public void setHandlerAccuracy(Integer handleAccuracy) {
+        this.handlerAccuracy = handleAccuracy;
+    }
+
+    public String getHandleAuditUserName() {
+        return handleAuditUserName;
+    }
+
+    public void setHandleAuditUserName(String handleAuditUserName) {
+        this.handleAuditUserName = handleAuditUserName;
+    }
+
+    public Date getHandleAuditUserLastSubmitTime() {
+        return handleAuditUserLastSubmitTime;
+    }
+
+    public void setHandleAuditUserLastSubmitTime(Date handleAuditUserLastSubmitTime) {
+        this.handleAuditUserLastSubmitTime = handleAuditUserLastSubmitTime;
+    }
+
+    public Integer getHandleAuditUserSalaryGiven() {
+        return handleAuditUserSalaryGiven;
+    }
+
+    public void setHandleAuditUserSalaryGiven(Integer handleAuditUserSalaryGiven) {
+        this.handleAuditUserSalaryGiven = handleAuditUserSalaryGiven;
+    }
+
+    public Date getHandleAuditUserSalaryGivenTime() {
+        return handleAuditUserSalaryGivenTime;
+    }
+
+    public void setHandleAuditUserSalaryGivenTime(Date handleAuditUserSalaryGivenTime) {
+        this.handleAuditUserSalaryGivenTime = handleAuditUserSalaryGivenTime;
+    }
+
+    public Integer getHandleAuditUserAccuracy() {
+        return handleAuditUserAccuracy;
+    }
+
+    public void setHandleAuditUserAccuracy(Integer handleAuditUserAccuracy) {
+        this.handleAuditUserAccuracy = handleAuditUserAccuracy;
+    }
+
+    public String getAnalyserName() {
+        return analyserName;
+    }
+
+    public void setAnalyserName(String analyserName) {
+        this.analyserName = analyserName;
+    }
+
+    public Date getAnalyserLastSubmitTime() {
+        return analyserLastSubmitTime;
+    }
+
+    public void setAnalyserLastSubmitTime(Date analyserLastSubmitTime) {
+        this.analyserLastSubmitTime = analyserLastSubmitTime;
+    }
+
+    public Integer getAnalyserSalaryGiven() {
+        return analyserSalaryGiven;
+    }
+
+    public void setAnalyserSalaryGiven(Integer analyserSalaryGiven) {
+        this.analyserSalaryGiven = analyserSalaryGiven;
+    }
+
+    public Date getAnalyserSalaryGivenTime() {
+        return analyserSalaryGivenTime;
+    }
+
+    public void setAnalyserSalaryGivenTime(Date analyserSalaryGivenTime) {
+        this.analyserSalaryGivenTime = analyserSalaryGivenTime;
+    }
+
+    public Integer getAnalyserAccuracy() {
+        return analyserAccuracy;
+    }
+
+    public void setAnalyserAccuracy(Integer analyserAccuracy) {
+        this.analyserAccuracy = analyserAccuracy;
+    }
+
+    public String getAnalysisAuditUserName() {
+        return analysisAuditUserName;
+    }
+
+    public void setAnalysisAuditUserName(String analysisAuditUserName) {
+        this.analysisAuditUserName = analysisAuditUserName;
+    }
+
+    public Date getAnalysisAuditUserLastSubmitTime() {
+        return analysisAuditUserLastSubmitTime;
+    }
+
+    public void setAnalysisAuditUserLastSubmitTime(Date analysisAuditUserLastSubmitTime) {
+        this.analysisAuditUserLastSubmitTime = analysisAuditUserLastSubmitTime;
+    }
+
+    public Integer getAnalysisAuditUserSalaryGiven() {
+        return analysisAuditUserSalaryGiven;
+    }
+
+    public void setAnalysisAuditUserSalaryGiven(Integer analysisAuditUserSalaryGiven) {
+        this.analysisAuditUserSalaryGiven = analysisAuditUserSalaryGiven;
+    }
+
+    public Date getAnalysisAuditUserSalaryGivenTime() {
+        return analysisAuditUserSalaryGivenTime;
+    }
+
+    public void setAnalysisAuditUserSalaryGivenTime(Date analysisAuditUserSalaryGivenTime) {
+        this.analysisAuditUserSalaryGivenTime = analysisAuditUserSalaryGivenTime;
+    }
+
+    public Integer getBookStatus() {
+        return bookStatus;
+    }
+
+    public void setBookStatus(Integer bookStatus) {
+        this.bookStatus = bookStatus;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+}

+ 51 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookLib.java

@@ -0,0 +1,51 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+
+/**
+ * @author yanghuan
+ * @title: KmtExerciseBookLib
+ * @projectName ssj
+ * @description: TODO
+ * @date 2020/4/13 17:35
+ */
+
+@Entity
+@Table(name="kmt_exercise_book_lib")
+public class KmtExerciseBookLib extends BaseEntity {
+
+    private String libId;
+
+    private String exerciseBookId;
+    /**
+     * 删除标志位
+     */
+    private int isDelete;
+
+    public String getLibId() {
+        return libId;
+    }
+
+    public void setLibId(String libId) {
+        this.libId = libId;
+    }
+
+    public String getExerciseBookId() {
+        return exerciseBookId;
+    }
+
+    public void setExerciseBookId(String exerciseBookId) {
+        this.exerciseBookId = exerciseBookId;
+    }
+
+    public int getIsDelete() {
+        return isDelete;
+    }
+
+    public void setIsDelete(int isDelete) {
+        this.isDelete = isDelete;
+    }
+}

+ 87 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookStatusCount.java

@@ -0,0 +1,87 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Entity
+@Table(name="kmt_exercise_book_status_count")
+public class KmtExerciseBookStatusCount extends BaseEntity {
+
+    private static final long serialVersionUID = -8354248318757576835L;
+
+    private String exerciseBookId;
+    private String bookId;
+    private String bookName;
+    private Integer bookYear;
+    private String courseName;
+    private Integer status;
+    private Integer dataStatus;
+    private Date createTime;
+
+    public String getExerciseBookId() {
+        return exerciseBookId;
+    }
+
+    public void setExerciseBookId(String exerciseBookId) {
+        this.exerciseBookId = exerciseBookId;
+    }
+
+    public String getBookId() {
+        return bookId;
+    }
+
+    public void setBookId(String bookId) {
+        this.bookId = bookId;
+    }
+
+    public String getBookName() {
+        return bookName;
+    }
+
+    public void setBookName(String bookName) {
+        this.bookName = bookName;
+    }
+
+    public Integer getBookYear() {
+        return bookYear;
+    }
+
+    public void setBookYear(Integer bookYear) {
+        this.bookYear = bookYear;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Integer getDataStatus() {
+        return dataStatus;
+    }
+
+    public void setDataStatus(Integer dataStatus) {
+        this.dataStatus = dataStatus;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+}

+ 119 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseBookTeacherRecord.java

@@ -0,0 +1,119 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * @Author: chchen
+ * @Description
+ * @Date Create in 10:45 2020/5/21
+ * @Modified By
+ */
+
+@Entity
+@Table(name="kmt_exercise_book_teacher_record")
+public class KmtExerciseBookTeacherRecord extends BaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 练习册表主键id
+     */
+    private String exerciseBookId;
+
+    private String teacherId;
+
+    private String teacherName;
+
+    /**
+     * 角色,1加工,2审核, 3解析加工,4解析审核
+     */
+    private int authorityType;
+
+    /**
+     * 分配时间
+     */
+    private Date createTime;
+
+    /**
+     * 是否已结薪, 1已结薪
+     */
+    private int salaryGiven;
+
+    /**
+     * 结薪时间
+     */
+    private Date salaryGivenTime;
+
+    /**
+     * 最新的分配记录
+     */
+    private int lastFlag;
+
+    public String getExerciseBookId() {
+        return exerciseBookId;
+    }
+
+    public void setExerciseBookId(String exerciseBookId) {
+        this.exerciseBookId = exerciseBookId;
+    }
+
+    public String getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(String teacherId) {
+        this.teacherId = teacherId;
+    }
+
+    public String getTeacherName() {
+        return teacherName;
+    }
+
+    public void setTeacherName(String teacherName) {
+        this.teacherName = teacherName;
+    }
+
+    public int getAuthorityType() {
+        return authorityType;
+    }
+
+    public void setAuthorityType(int authorityType) {
+        this.authorityType = authorityType;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public int getSalaryGiven() {
+        return salaryGiven;
+    }
+
+    public void setSalaryGiven(int salaryGiven) {
+        this.salaryGiven = salaryGiven;
+    }
+
+    public Date getSalaryGivenTime() {
+        return salaryGivenTime;
+    }
+
+    public void setSalaryGivenTime(Date salaryGivenTime) {
+        this.salaryGivenTime = salaryGivenTime;
+    }
+
+    public int getLastFlag() {
+        return lastFlag;
+    }
+
+    public void setLastFlag(int lastFlag) {
+        this.lastFlag = lastFlag;
+    }
+}

+ 90 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseLibPriority.java

@@ -0,0 +1,90 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+
+/**
+ * @author yanghuan
+ * @title: KmtExerciseLibPriority
+ * @projectName ssj
+ * @description: TODO
+ * @date 2020/6/4 10:58
+ */
+@Entity
+@Table(name="kmt_exercise_lib_priority")
+public class KmtExerciseLibPriority extends BaseEntity {
+
+    private static final long serialVersionUID = -8354248318757576835L;
+
+    private String libId;
+
+    private int recogeNum;
+
+    private int unrecogeNum;
+
+    private int totalNum;
+
+    private int unpurchaNum;
+
+    private String recogeRate;
+
+    private String subject;
+
+    public String getLibId() {
+        return libId;
+    }
+
+    public void setLibId(String libId) {
+        this.libId = libId;
+    }
+
+    public int getRecogeNum() {
+        return recogeNum;
+    }
+
+    public void setRecogeNum(int recogeNum) {
+        this.recogeNum = recogeNum;
+    }
+
+    public int getUnrecogeNum() {
+        return unrecogeNum;
+    }
+
+    public void setUnrecogeNum(int unrecogeNum) {
+        this.unrecogeNum = unrecogeNum;
+    }
+
+    public int getTotalNum() {
+        return totalNum;
+    }
+
+    public void setTotalNum(int totalNum) {
+        this.totalNum = totalNum;
+    }
+
+    public int getUnpurchaNum() {
+        return unpurchaNum;
+    }
+
+    public void setUnpurchaNum(int unpurchaNum) {
+        this.unpurchaNum = unpurchaNum;
+    }
+
+    public String getRecogeRate() {
+        return recogeRate;
+    }
+
+    public void setRecogeRate(String recogeRate) {
+        this.recogeRate = recogeRate;
+    }
+
+    public String getSubject() {
+        return subject;
+    }
+
+    public void setSubject(String subject) {
+        this.subject = subject;
+    }
+}

+ 537 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseQuestion.java

@@ -0,0 +1,537 @@
+package com.ssj.bean.kmt.kmt.domain;
+
+import com.ssj.bean.common.framework.core.domain.BaseEntity;
+
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.util.Date;
+
+@Entity
+@Table(name="kmt_exercise_questions")
+public class KmtExerciseQuestion extends BaseEntity {
+
+	private static final long serialVersionUID = 3061402905883944457L;
+
+	private String bookId;  //练习册id
+	private String bookCourseId;//单元课时id
+
+	private String question;//题目
+
+	private String optionAnswer;//答案
+
+	private String questionText; //题目文本
+	private int updateType; // 更新类型,默认0, 3拆题新增的题目, 4题库录入的题目
+	private String source;//来源, "题库录入"
+	private String bigQuestionIndex;//大题号,如:一、二
+	private Integer pageIndex = 1;//页码
+	private String image;//图片路径
+	private String precisionPercent;//识别精确率
+	private String remark;//备注
+	private Date createTime;//创建时间
+	private String auditingUserId;//审核人
+	private String handleUserId;//加工人
+	private Integer dealStatus;//状态,0已录入, 1重加工, 2打回ai, 3已加工待审核, 4审核已提交,未分配解析加工人,5解析加工中,6已删除,7打回审核,8解析打回加工中,9解析审核中,10解析打回审核中,11已发布
+	private String unitId;//单元id
+	private Integer num = 0; //排序
+	private String smallQuestionName;
+
+	private String questionJson;
+
+	private String answerJson;
+	private Date publishTime;
+	private String parentId = "";
+	private String analysisUserId;
+	private String analysisAuditerId;
+
+	private String analysis;
+	private Integer analysisSubmitType = 0;
+	private Date analysisSubmitTime;
+	private Integer questionType = 0;
+	private Integer difficultyLevel = 0;
+	private String realExamType;
+	private String trainingSkill;
+
+	private String analysisJson;
+	private String courseName;
+	private String conciseId;
+	private Integer esLoaded = 0;
+	/**
+	 * 练习册: 0共享题,1非共享题, kmt题库:1有解析的题目, 0无解析题目
+	 */
+	private Integer isCommonFlag = 0;
+	private Integer questionYear = 2019;
+
+	private String exerciseBookId;
+
+	private Date handlerSubmitTime;
+
+	private Date analysisHandlerSubmitTime;
+
+	/**
+	 * kmt题库题目类型,0单题, 1大标题,2大标题下的小题
+	 */
+	private Integer questionClassType = 0;
+
+	/**
+	 * 打回时间
+	 */
+	private Date repulseTime;
+
+	private String conciseBakId;
+
+	private String optionAnswerText;
+
+	private String answerImage;
+
+	private String bigName;
+
+	private String fromUserId;
+
+	private String toUserId;
+
+	/**
+	 * 答案校对员用户id
+	 */
+	private String answerCorrecterId;
+
+	/**
+	 * 答案校对状态, 0未校对, 1答案正确,2答案错误, 3管理员已修改
+	 */
+	private int proofreadStatus;
+
+	/**
+	 * 题目信息文件路径
+	 */
+	private String questionPath;
+
+	public Date getRepulseTime() {
+		return repulseTime;
+	}
+
+	public void setRepulseTime(Date repulseTime) {
+		this.repulseTime = repulseTime;
+	}
+
+
+	@Transient
+	public String getQuestionText() {
+		return questionText;
+	}
+
+	public void setQuestionText(String questionText) {
+		this.questionText = questionText;
+	}
+
+	public int getUpdateType() {
+		return updateType;
+	}
+
+	public void setUpdateType(int updateType) {
+		this.updateType = updateType;
+	}
+
+	public String getBookId() {
+		return bookId;
+	}
+
+	public void setBookId(String bookId) {
+		this.bookId = bookId;
+	}
+
+	public String getBookCourseId() {
+		return bookCourseId;
+	}
+
+	public void setBookCourseId(String bookCourseId) {
+		this.bookCourseId = bookCourseId;
+	}
+
+	@Transient
+	public String getQuestion() {
+		return question;
+	}
+
+	public void setQuestion(String question) {
+		this.question = question;
+	}
+
+	@Transient
+	public String getOptionAnswer() {
+		return optionAnswer;
+	}
+
+	public void setOptionAnswer(String optionAnswer) {
+		this.optionAnswer = optionAnswer;
+	}
+
+	public String getSource() {
+		return source;
+	}
+
+	public void setSource(String source) {
+		this.source = source;
+	}
+
+	public String getBigQuestionIndex() {
+		return bigQuestionIndex;
+	}
+
+	public Integer getPageIndex() {
+		return pageIndex;
+	}
+
+	public void setPageIndex(Integer pageIndex) {
+		this.pageIndex = pageIndex;
+	}
+
+	public String getImage() {
+		return image;
+	}
+
+	public void setImage(String image) {
+		this.image = image;
+	}
+
+	public String getPrecisionPercent() {
+		return precisionPercent;
+	}
+
+	public void setPrecisionPercent(String precisionPercent) {
+		this.precisionPercent = precisionPercent;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public String getAuditingUserId() {
+		return auditingUserId;
+	}
+
+	public void setAuditingUserId(String auditingUserId) {
+		this.auditingUserId = auditingUserId;
+	}
+
+	public String getHandleUserId() {
+		return handleUserId;
+	}
+
+	public void setHandleUserId(String handleUserId) {
+		this.handleUserId = handleUserId;
+	}
+
+	public Integer getDealStatus() {
+		return dealStatus;
+	}
+
+	public void setDealStatus(Integer dealStatus) {
+		this.dealStatus = dealStatus;
+	}
+
+	public String getUnitId() {
+		return unitId;
+	}
+
+	public void setUnitId(String unitId) {
+		this.unitId = unitId;
+	}
+
+	public Integer getNum() {
+		return num;
+	}
+
+	public void setNum(Integer num) {
+		this.num = num;
+	}
+
+	public String getSmallQuestionName() {
+		return smallQuestionName;
+	}
+
+	public void setSmallQuestionName(String smallQuestionName) {
+		this.smallQuestionName = smallQuestionName;
+	}
+
+	public Date getPublishTime() {
+		return publishTime;
+	}
+
+	public void setPublishTime(Date publishTime) {
+		this.publishTime = publishTime;
+	}
+
+	@Transient
+	public String getQuestionJson() {
+		return questionJson;
+	}
+
+	public void setQuestionJson(String questionJson) {
+		this.questionJson = questionJson;
+	}
+
+	@Transient
+	public String getAnswerJson() {
+		return answerJson;
+	}
+
+	public void setAnswerJson(String answerJson) {
+		this.answerJson = answerJson;
+	}
+
+	public String getParentId() {
+		return parentId;
+	}
+
+	public void setParentId(String parentId) {
+		this.parentId = parentId;
+	}
+
+	public void setBigQuestionIndex(String bigQuestionIndex) {
+		this.bigQuestionIndex = bigQuestionIndex;
+	}
+
+	public Integer getAnalysisSubmitType() {
+		return analysisSubmitType;
+	}
+
+	public void setAnalysisSubmitType(Integer analysisSubmitType) {
+		this.analysisSubmitType = analysisSubmitType;
+	}
+
+	public Date getAnalysisSubmitTime() {
+		return analysisSubmitTime;
+	}
+
+	public void setAnalysisSubmitTime(Date analysisSubmitTime) {
+		this.analysisSubmitTime = analysisSubmitTime;
+	}
+
+	public String getAnalysisUserId() {
+		return analysisUserId;
+	}
+
+	public void setAnalysisUserId(String analysisUserId) {
+		this.analysisUserId = analysisUserId;
+	}
+
+	@Transient
+	public String getAnalysis() {
+		return analysis;
+	}
+
+	public void setAnalysis(String analysis) {
+		this.analysis = analysis;
+	}
+
+	public Integer getQuestionType() {
+		return questionType;
+	}
+
+	public void setQuestionType(Integer questionType) {
+		this.questionType = questionType;
+	}
+
+	public Integer getDifficultyLevel() {
+		return difficultyLevel;
+	}
+
+	public void setDifficultyLevel(Integer difficultyLevel) {
+		this.difficultyLevel = difficultyLevel;
+	}
+
+	public String getRealExamType() {
+		return realExamType;
+	}
+
+	public void setRealExamType(String realExamType) {
+		this.realExamType = realExamType;
+	}
+
+	public String getTrainingSkill() {
+		return trainingSkill;
+	}
+
+	public void setTrainingSkill(String trainingSkill) {
+		this.trainingSkill = trainingSkill;
+	}
+
+	@Transient
+	public String getAnalysisJson() {
+		return analysisJson;
+	}
+
+	public void setAnalysisJson(String analysisJson) {
+		this.analysisJson = analysisJson;
+	}
+
+	public String getCourseName() {
+		return courseName;
+	}
+
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+
+	public String getConciseId() {
+		return conciseId;
+	}
+
+	public void setConciseId(String conciseId) {
+		this.conciseId = conciseId;
+	}
+
+	public String getAnalysisAuditerId() {
+		return analysisAuditerId;
+	}
+
+	public void setAnalysisAuditerId(String analysisAuditerId) {
+		this.analysisAuditerId = analysisAuditerId;
+	}
+
+	public Integer getEsLoaded() {
+		return esLoaded;
+	}
+
+	public void setEsLoaded(Integer esLoaded) {
+		this.esLoaded = esLoaded;
+	}
+
+	public Integer getIsCommonFlag() {
+		return isCommonFlag;
+	}
+
+	public void setIsCommonFlag(Integer isCommonFlag) {
+		this.isCommonFlag = isCommonFlag;
+	}
+
+	public Integer getQuestionYear() {
+		return questionYear;
+	}
+
+	public void setQuestionYear(Integer questionYear) {
+		this.questionYear = questionYear;
+	}
+
+
+
+
+	public String getExerciseBookId() {
+		return exerciseBookId;
+	}
+
+	public void setExerciseBookId(String exerciseBookId) {
+		this.exerciseBookId = exerciseBookId;
+	}
+
+	public Date getHandlerSubmitTime() {
+		return handlerSubmitTime;
+	}
+
+	public void setHandlerSubmitTime(Date handlerSubmitTime) {
+		this.handlerSubmitTime = handlerSubmitTime;
+	}
+
+	public Date getAnalysisHandlerSubmitTime() {
+		return analysisHandlerSubmitTime;
+	}
+
+	public void setAnalysisHandlerSubmitTime(Date analysisHandlerSubmitTime) {
+		this.analysisHandlerSubmitTime = analysisHandlerSubmitTime;
+	}
+
+
+	public Integer getQuestionClassType() {
+		return questionClassType;
+	}
+
+	public void setQuestionClassType(Integer questionClassType) {
+		this.questionClassType = questionClassType;
+	}
+
+	public String getConciseBakId() {
+		return conciseBakId;
+	}
+
+	public void setConciseBakId(String conciseBakId) {
+		this.conciseBakId = conciseBakId;
+	}
+
+	@Transient
+	public String getOptionAnswerText() {
+		return optionAnswerText;
+	}
+
+	public void setOptionAnswerText(String optionAnswerText) {
+		this.optionAnswerText = optionAnswerText;
+	}
+
+	public String getAnswerImage() {
+		return answerImage;
+	}
+
+	public void setAnswerImage(String answerImage) {
+		this.answerImage = answerImage;
+	}
+
+	public String getBigName() {
+		return bigName;
+	}
+
+	public void setBigName(String bigName) {
+		this.bigName = bigName;
+	}
+
+	public String getFromUserId() {
+		return fromUserId;
+	}
+
+	public void setFromUserId(String fromUserId) {
+		this.fromUserId = fromUserId;
+	}
+
+	public String getToUserId() {
+		return toUserId;
+	}
+
+	public void setToUserId(String toUserId) {
+		this.toUserId = toUserId;
+	}
+
+	public String getAnswerCorrecterId() {
+		return answerCorrecterId;
+	}
+
+	public void setAnswerCorrecterId(String answerCorrecterId) {
+		this.answerCorrecterId = answerCorrecterId;
+	}
+
+	public int getProofreadStatus() {
+		return proofreadStatus;
+	}
+
+	public void setProofreadStatus(int proofreadStatus) {
+		this.proofreadStatus = proofreadStatus;
+	}
+
+	public String getQuestionPath() {
+		return questionPath;
+	}
+
+	public void setQuestionPath(String questionPath) {
+		this.questionPath = questionPath;
+	}
+}
+

+ 0 - 0
src/main/java/com/ssj/bean/kmt/kmt/domain/KmtExerciseQuestionErrors.java


部分文件因为文件数量过多而无法显示