瀏覽代碼

提交代码

夏文涛 2 年之前
父節點
當前提交
cc8a309551

+ 256 - 322
.idea/workspace.xml

@@ -2,6 +2,19 @@
 <project version="4">
 <project version="4">
   <component name="ChangeListManager">
   <component name="ChangeListManager">
     <list default="true" id="9931dd54-c6ba-4f79-99b0-d746475b8903" name="Default Changelist" comment="">
     <list default="true" id="9931dd54-c6ba-4f79-99b0-d746475b8903" name="Default Changelist" comment="">
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzParam.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzRequest.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzResult.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesParam.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesRequest.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesResult.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/controller/ScheduleController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/ScheduleController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartGradeRequest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartGradeRequest.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartUserRequest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartUserRequest.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/request/updateSmartUserRequest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/request/updateSmartUserRequest.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/mybatis_plus-0.0.1-SNAPSHOT.jar.original" beforeDir="false" afterPath="$PROJECT_DIR$/target/mybatis_plus-0.0.1-SNAPSHOT.jar.original" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/mybatis_plus-0.0.1-SNAPSHOT.jar.original" beforeDir="false" afterPath="$PROJECT_DIR$/target/mybatis_plus-0.0.1-SNAPSHOT.jar.original" afterDir="false" />
     </list>
     </list>
     <ignored path="$PROJECT_DIR$/classes/" />
     <ignored path="$PROJECT_DIR$/classes/" />
@@ -32,62 +45,10 @@
   <component name="FileEditorManager">
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
       <file pinned="false" current-in-tab="true">
       <file pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/ScheduleController.java">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="174">
-              <caret line="147" column="40" lean-forward="true" selection-start-line="147" selection-start-column="40" selection-end-line="147" selection-end-column="40" />
-              <folding>
-                <element signature="imports" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/resources/application-dev.yml">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="223">
-              <caret line="57" column="2" lean-forward="true" selection-start-line="57" selection-start-column="2" selection-end-line="59" selection-end-column="44" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/TimeExchange.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="269">
-              <caret line="242" column="29" selection-start-line="242" selection-start-column="25" selection-end-line="242" selection-end-column="29" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartGradeController.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="345">
-              <caret line="91" selection-start-line="91" selection-end-line="91" />
-              <folding>
-                <element signature="e#1573#1574#0" expanded="true" />
-                <element signature="e#1600#1601#0" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartDepartmentController.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="230">
-              <caret line="151" column="35" selection-start-line="151" selection-start-column="35" selection-end-line="151" selection-end-column="35" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartClassService.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="483">
-              <caret line="25" column="20" selection-start-line="25" selection-start-column="20" selection-end-line="25" selection-end-column="20" />
+            <state relative-caret-position="318">
+              <caret line="87" column="52" lean-forward="true" selection-start-line="87" selection-start-column="52" selection-end-line="87" selection-end-column="52" />
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
@@ -95,17 +56,8 @@
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartClassServiceImpl.java">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartClassServiceImpl.java">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="1058">
-              <caret line="59" column="50" selection-start-line="59" selection-start-column="28" selection-end-line="59" selection-end-column="50" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="736">
-              <caret line="39" column="61" selection-start-line="39" selection-start-column="61" selection-end-line="39" selection-end-column="61" />
+            <state relative-caret-position="269">
+              <caret line="31" column="42" selection-start-line="31" selection-start-column="28" selection-end-line="31" selection-end-column="42" />
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
@@ -121,15 +73,6 @@
   </component>
   </component>
   <component name="FindInProjectRecents">
   <component name="FindInProjectRecents">
     <findStrings>
     <findStrings>
-      <find>getSmartById</find>
-      <find>Transactional</find>
-      <find>querySmartSecordPage</find>
-      <find>@Transactional(rollbackFor = {Exception.class})</find>
-      <find>querySmartScorePage</find>
-      <find>querySmartGrades</find>
-      <find>seewoConfi</find>
-      <find>sheetAt.getLastRowNum():从0开始统计数量 所以得+1</find>
-      <find>if(rowNum ==</find>
       <find>if(rowNum</find>
       <find>if(rowNum</find>
       <find>xlsx</find>
       <find>xlsx</find>
       <find>importSmartScoreExcel</find>
       <find>importSmartScoreExcel</find>
@@ -147,10 +90,19 @@
       <find>queryAffiliateUserById</find>
       <find>queryAffiliateUserById</find>
       <find>querySmartUserPages</find>
       <find>querySmartUserPages</find>
       <find>.collect(</find>
       <find>.collect(</find>
-      <find>queryPageSmartUser</find>
       <find>querySmartClasss</find>
       <find>querySmartClasss</find>
       <find>getY</find>
       <find>getY</find>
+      <find>updateSmartUserById</find>
+      <find>@NotBlank</find>
+      <find>has</find>
+      <find>.isE</find>
+      <find>insertSmartGradeToBaisheng</find>
+      <find>insert</find>
+      <find>queryPageSmartUser</find>
+      <find>querySmartSecordPage</find>
+      <find>getGradeUid</find>
       <find>insertSmartClassToBaisheng</find>
       <find>insertSmartClassToBaisheng</find>
+      <find>getSmartClasss</find>
     </findStrings>
     </findStrings>
     <replaceStrings>
     <replaceStrings>
       <replace>班级</replace>
       <replace>班级</replace>
@@ -169,11 +121,7 @@
   <component name="IdeDocumentHistory">
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
     <option name="CHANGED_PATHS">
       <list>
       <list>
-        <option value="$PROJECT_DIR$/src/main/java/com/template/common/utils/AesTestOne.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsGradeVo.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsGradeNoVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/useridsRequest.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/useridsRequest.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartGradeRequest.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartClass.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartClass.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassNoVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassNoVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassVo.java" />
@@ -193,8 +141,6 @@
         <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartVisitorControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartVisitorControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartVisitorController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartVisitorController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/seewo/StudentServiceBatchSaveClassStudentsRequest.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/seewo/StudentServiceBatchSaveClassStudentsRequest.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartUserRequest.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/updateSmartUserRequest.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/common/utils/imageUtils.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/common/utils/imageUtils.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/GradeVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/GradeVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStudentVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStudentVo.java" />
@@ -215,11 +161,17 @@
         <option value="$PROJECT_DIR$/src/main/resources/mapper/template/SmartUserMapper.xml" />
         <option value="$PROJECT_DIR$/src/main/resources/mapper/template/SmartUserMapper.xml" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/UserVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/UserVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/seewo/StudentServiceUpdateStudentInfoParam.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/seewo/StudentServiceUpdateStudentInfoParam.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartClassService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartClassService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartClassServiceImpl.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartClassServiceImpl.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/updateSmartUserRequest.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartGradeRequest.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartUserRequest.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesParam.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzParam.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/controller/ScheduleController.java" />
       </list>
       </list>
     </option>
     </option>
   </component>
   </component>
@@ -253,7 +205,7 @@
   </component>
   </component>
   <component name="ProjectFrameBounds">
   <component name="ProjectFrameBounds">
     <option name="x" value="-7" />
     <option name="x" value="-7" />
-    <option name="width" value="958" />
+    <option name="width" value="974" />
     <option name="height" value="1039" />
     <option name="height" value="1039" />
   </component>
   </component>
   <component name="ProjectView">
   <component name="ProjectView">
@@ -303,35 +255,7 @@
               <item name="main" type="462c0819:PsiDirectoryNode" />
               <item name="main" type="462c0819:PsiDirectoryNode" />
               <item name="java" type="462c0819:PsiDirectoryNode" />
               <item name="java" type="462c0819:PsiDirectoryNode" />
               <item name="template" type="462c0819:PsiDirectoryNode" />
               <item name="template" type="462c0819:PsiDirectoryNode" />
-              <item name="api" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
-              <item name="backend_code" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="template" type="462c0819:PsiDirectoryNode" />
-              <item name="controller" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
-              <item name="backend_code" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="template" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
-              <item name="backend_code" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="template" type="462c0819:PsiDirectoryNode" />
               <item name="model" type="462c0819:PsiDirectoryNode" />
               <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="enumModel" type="462c0819:PsiDirectoryNode" />
             </path>
             </path>
             <path>
             <path>
               <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
               <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
@@ -348,35 +272,6 @@
               <item name="backend_code" type="462c0819:PsiDirectoryNode" />
               <item name="backend_code" type="462c0819:PsiDirectoryNode" />
               <item name="src" type="462c0819:PsiDirectoryNode" />
               <item name="src" type="462c0819:PsiDirectoryNode" />
               <item name="main" type="462c0819:PsiDirectoryNode" />
               <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="template" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="vo" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
-              <item name="backend_code" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="template" type="462c0819:PsiDirectoryNode" />
-              <item name="services" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
-              <item name="backend_code" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="template" type="462c0819:PsiDirectoryNode" />
-              <item name="services" type="462c0819:PsiDirectoryNode" />
-              <item name="impl" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="mybatis_plus" type="b2602c69:ProjectViewProjectNode" />
-              <item name="backend_code" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
               <item name="resources" type="462c0819:PsiDirectoryNode" />
               <item name="resources" type="462c0819:PsiDirectoryNode" />
             </path>
             </path>
             <path>
             <path>
@@ -414,8 +309,9 @@
     <selection>jr</selection>
     <selection>jr</selection>
   </component>
   </component>
   <component name="RecentsManager">
   <component name="RecentsManager">
-    <key name="MoveFile.RECENT_KEYS">
-      <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\resources\mapper\template" />
+    <key name="CopyFile.RECENT_KEYS">
+      <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\seewo" />
+      <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo" />
     </key>
     </key>
     <key name="CopyClassDialog.RECENTS_KEY">
     <key name="CopyClassDialog.RECENTS_KEY">
       <recent name="com.template.model.vo" />
       <recent name="com.template.model.vo" />
@@ -424,9 +320,8 @@
       <recent name="com.template.model.enumModel" />
       <recent name="com.template.model.enumModel" />
       <recent name="com.template.api" />
       <recent name="com.template.api" />
     </key>
     </key>
-    <key name="CopyFile.RECENT_KEYS">
-      <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\seewo" />
-      <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo" />
+    <key name="MoveFile.RECENT_KEYS">
+      <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\resources\mapper\template" />
     </key>
     </key>
   </component>
   </component>
   <component name="RunDashboard">
   <component name="RunDashboard">
@@ -530,15 +425,15 @@
       <workItem from="1704760999320" duration="4756000" />
       <workItem from="1704760999320" duration="4756000" />
       <workItem from="1704765975943" duration="72000" />
       <workItem from="1704765975943" duration="72000" />
       <workItem from="1704766062941" duration="43011000" />
       <workItem from="1704766062941" duration="43011000" />
-      <workItem from="1704936821369" duration="4367000" />
+      <workItem from="1704936821369" duration="23215000" />
     </task>
     </task>
     <servers />
     <servers />
   </component>
   </component>
   <component name="TimeTrackingManager">
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="302412000" />
+    <option name="totallyTimeSpent" value="321260000" />
   </component>
   </component>
   <component name="ToolWindowManager">
   <component name="ToolWindowManager">
-    <frame x="-7" y="0" width="958" height="1039" extended-state="0" />
+    <frame x="-7" y="0" width="974" height="1039" extended-state="0" />
     <editor active="true" />
     <editor active="true" />
     <layout>
     <layout>
       <window_info id="JRebel" order="0" side_tool="true" />
       <window_info id="JRebel" order="0" side_tool="true" />
@@ -549,11 +444,11 @@
       <window_info id="Designer" order="5" />
       <window_info id="Designer" order="5" />
       <window_info id="Web" order="6" side_tool="true" />
       <window_info id="Web" order="6" side_tool="true" />
       <window_info id="Structure" order="7" side_tool="true" weight="0.25" />
       <window_info id="Structure" order="7" side_tool="true" weight="0.25" />
-      <window_info content_ui="combo" id="Project" order="8" weight="0.19037199" />
+      <window_info content_ui="combo" id="Project" order="8" weight="0.27461708" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Find" order="1" />
       <window_info anchor="bottom" id="Find" order="1" />
       <window_info anchor="bottom" id="Run" order="2" weight="0.3160221" />
       <window_info anchor="bottom" id="Run" order="2" weight="0.3160221" />
-      <window_info anchor="bottom" id="Debug" order="3" weight="0.32275712" />
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.66740334" />
       <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
       <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
       <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
       <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
       <window_info anchor="bottom" id="TODO" order="6" />
       <window_info anchor="bottom" id="TODO" order="6" />
@@ -567,7 +462,7 @@
       <window_info anchor="bottom" id="Version Control" order="14" />
       <window_info anchor="bottom" id="Version Control" order="14" />
       <window_info anchor="bottom" id="JRebel Executor" order="15" />
       <window_info anchor="bottom" id="JRebel Executor" order="15" />
       <window_info anchor="bottom" id="JRebel Console" order="16" side_tool="true" />
       <window_info anchor="bottom" id="JRebel Console" order="16" side_tool="true" />
-      <window_info anchor="right" id="Maven" order="0" weight="0.8808463" />
+      <window_info anchor="right" id="Maven" order="0" weight="0.766147" />
       <window_info anchor="right" id="Palette" order="1" />
       <window_info anchor="right" id="Palette" order="1" />
       <window_info anchor="right" id="Capture Analysis" order="2" />
       <window_info anchor="right" id="Capture Analysis" order="2" />
       <window_info anchor="right" id="Database" order="3" weight="0.32995737" />
       <window_info anchor="right" id="Database" order="3" weight="0.32995737" />
@@ -579,6 +474,45 @@
       <window_info anchor="right" content_ui="combo" id="Hierarchy" order="9" weight="0.25" />
       <window_info anchor="right" content_ui="combo" id="Hierarchy" order="9" weight="0.25" />
       <window_info anchor="right" id="Ant Build" order="10" weight="0.24945295" />
       <window_info anchor="right" id="Ant Build" order="10" weight="0.24945295" />
     </layout>
     </layout>
+    <layout-to-restore>
+      <window_info id="JRebel" order="0" side_tool="true" />
+      <window_info id="Image Layers" order="1" />
+      <window_info id="Capture Tool" order="2" />
+      <window_info id="UI Designer" order="3" />
+      <window_info id="Favorites" order="4" side_tool="true" />
+      <window_info id="Designer" order="5" />
+      <window_info id="Web" order="6" side_tool="true" />
+      <window_info id="Structure" order="7" side_tool="true" weight="0.25" />
+      <window_info content_ui="combo" id="Project" order="8" visible="true" weight="0.09221748" />
+      <window_info anchor="bottom" id="Message" order="0" />
+      <window_info anchor="bottom" id="Find" order="1" />
+      <window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.31509846" />
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.72265196" />
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
+      <window_info anchor="bottom" id="TODO" order="6" />
+      <window_info anchor="bottom" id="Spring" order="7" />
+      <window_info anchor="bottom" id="Terminal" order="8" />
+      <window_info anchor="bottom" id="Docker" order="9" />
+      <window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
+      <window_info anchor="bottom" id="Messages" order="11" weight="0.3085339" />
+      <window_info anchor="bottom" id="Java Enterprise" order="12" />
+      <window_info anchor="bottom" id="Database Changes" order="13" />
+      <window_info anchor="bottom" id="Version Control" order="14" />
+      <window_info anchor="bottom" id="JRebel Executor" order="15" />
+      <window_info anchor="bottom" id="JRebel Console" order="16" side_tool="true" />
+      <window_info anchor="right" id="Maven" order="0" weight="0.8596882" />
+      <window_info anchor="right" id="Palette" order="1" />
+      <window_info anchor="right" id="Capture Analysis" order="2" />
+      <window_info anchor="right" id="Database" order="3" weight="0.32995737" />
+      <window_info anchor="right" id="Palette&#9;" order="4" />
+      <window_info anchor="right" id="Theme Preview" order="5" />
+      <window_info anchor="right" id="JRebel Setup Guide" order="6" side_tool="true" />
+      <window_info anchor="right" id="Bean Validation" order="7" />
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="8" type="SLIDING" weight="0.4" />
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="9" weight="0.25" />
+      <window_info anchor="right" id="Ant Build" order="10" weight="0.24945295" />
+    </layout-to-restore>
   </component>
   </component>
   <component name="TypeScriptGeneratedFilesManager">
   <component name="TypeScriptGeneratedFilesManager">
     <option name="version" value="1" />
     <option name="version" value="1" />
@@ -588,7 +522,7 @@
       <breakpoints>
       <breakpoints>
         <line-breakpoint enabled="true" type="java-line">
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/WechatScanLoginController.java</url>
           <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/WechatScanLoginController.java</url>
-          <line>115</line>
+          <line>117</line>
           <properties />
           <properties />
           <option name="timeStamp" value="57" />
           <option name="timeStamp" value="57" />
         </line-breakpoint>
         </line-breakpoint>
@@ -616,6 +550,18 @@
           <properties />
           <properties />
           <option name="timeStamp" value="79" />
           <option name="timeStamp" value="79" />
         </line-breakpoint>
         </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java</url>
+          <line>1102</line>
+          <properties />
+          <option name="timeStamp" value="91" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java</url>
+          <line>1360</line>
+          <properties />
+          <option name="timeStamp" value="95" />
+        </line-breakpoint>
       </breakpoints>
       </breakpoints>
     </breakpoint-manager>
     </breakpoint-manager>
   </component>
   </component>
@@ -624,259 +570,263 @@
     <option name="FILTER_TARGETS" value="false" />
     <option name="FILTER_TARGETS" value="false" />
   </component>
   </component>
   <component name="editorHistoryManager">
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartGradeControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/config/ControlConfig.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="805">
-          <caret line="42" column="71" selection-start-line="42" selection-start-column="71" selection-end-line="42" selection-end-column="71" />
+        <state relative-caret-position="115">
+          <caret line="7" column="48" selection-start-line="7" selection-start-column="35" selection-end-line="7" selection-end-column="48" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartGradeService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/GradeVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="414">
-          <caret line="21" column="24" selection-start-line="21" selection-start-column="8" selection-end-line="21" selection-end-column="24" />
+        <state relative-caret-position="304">
+          <caret line="30" column="19" selection-start-line="30" selection-start-column="19" selection-end-line="30" selection-end-column="19" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSchoolServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="456">
-          <caret line="60" column="22" selection-start-line="59" selection-start-column="8" selection-end-line="60" selection-end-column="22" />
+        <state relative-caret-position="253">
+          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartUserRequest.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsGradeNoVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-602">
-          <caret line="19" column="13" selection-start-line="19" selection-start-column="13" selection-end-line="19" selection-end-column="13" />
+        <state relative-caret-position="253">
+          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/JWTUtil.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="207">
-          <caret line="20" column="13" selection-start-line="20" selection-start-column="13" selection-end-line="20" selection-end-column="13" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/TeacherServiceBatchSaveOrUpdateTeacherParam.java">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/HttpUtils.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartUserService.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" />
+        <state relative-caret-position="195">
+          <caret line="29" column="37" selection-start-line="29" selection-start-column="20" selection-end-line="29" selection-end-column="37" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/imageUtils.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ParentOfStudentsVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="102">
-          <caret line="15" column="23" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="23" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="240">
+          <caret line="11" column="31" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="31" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/GradeListVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SystemUser.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="13" column="11" lean-forward="true" selection-start-line="13" selection-start-column="11" selection-end-line="13" selection-end-column="11" />
+        <state relative-caret-position="10">
+          <caret line="24" column="13" selection-start-line="24" selection-start-column="13" selection-end-line="24" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStaffVo.java">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStudentVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="253">
         <state relative-caret-position="253">
           <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
           <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStaffNoVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="830">
-          <caret line="61" selection-start-line="61" selection-end-line="61" />
+        <state relative-caret-position="253">
+          <caret line="11" column="24" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="24" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassNoVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStudentNoVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="253">
         <state relative-caret-position="253">
-          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
+          <caret line="11" column="26" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="26" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/MybatisPlusApplication.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartUser.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="14" column="44" selection-start-line="14" selection-start-column="4" selection-end-line="14" selection-end-column="44" />
+        <state relative-caret-position="448">
+          <caret line="122" column="47" lean-forward="true" selection-start-line="122" selection-start-column="47" selection-end-line="122" selection-end-column="47" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/config/ControlConfig.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsDepartmentVo.java">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsDepartmentNoVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="115">
-          <caret line="7" column="48" selection-start-line="7" selection-start-column="35" selection-end-line="7" selection-end-column="48" />
+        <state relative-caret-position="253">
+          <caret line="11" column="29" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="29" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/GradeVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDepartment.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="304">
-          <caret line="30" column="19" selection-start-line="30" selection-start-column="19" selection-end-line="30" selection-end-column="19" />
+        <state relative-caret-position="425">
+          <caret line="43" column="33" selection-start-line="43" selection-start-column="19" selection-end-line="43" selection-end-column="33" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartAuthorGroupController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="262">
-          <caret line="83" column="21" selection-start-line="83" selection-start-column="21" selection-end-line="83" selection-end-column="21" />
+        <state relative-caret-position="295">
+          <caret line="117" column="108" selection-start-line="117" selection-start-column="78" selection-end-line="117" selection-end-column="108" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsClassVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/UserVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
+        <state relative-caret-position="299">
+          <caret line="118" column="24" selection-start-line="118" selection-start-column="24" selection-end-line="118" selection-end-column="24" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsGradeNoVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/AffiliateUserVo.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
+        <state relative-caret-position="207">
+          <caret line="9" column="3" lean-forward="true" selection-start-line="9" selection-start-column="3" selection-end-line="9" selection-end-column="3" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/TeacherServiceBatchSaveOrUpdateTeacherParam.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/StudentServiceUpdateStudentInfoParam.java">
       <provider selected="true" editor-type-id="text-editor" />
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartUserControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartClassRequest.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="677">
-          <caret line="103" column="57" lean-forward="true" selection-start-line="103" selection-start-column="57" selection-end-line="103" selection-end-column="57" />
+        <state relative-caret-position="292">
+          <caret line="16" column="13" selection-start-line="16" selection-start-column="13" selection-end-line="16" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartUserService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartClassService.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="195">
-          <caret line="29" column="37" selection-start-line="29" selection-start-column="20" selection-end-line="29" selection-end-column="37" />
+        <state relative-caret-position="483">
+          <caret line="25" column="20" selection-start-line="25" selection-start-column="20" selection-end-line="25" selection-end-column="20" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ParentOfStudentsVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartDepartmentController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="11" column="31" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="31" />
+        <state relative-caret-position="230">
+          <caret line="151" column="35" selection-start-line="151" selection-start-column="35" selection-end-line="151" selection-end-column="35" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SystemUser.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/ClassServiceBatchSaveClassParam.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="10">
-          <caret line="24" column="13" selection-start-line="24" selection-start-column="13" selection-end-line="24" selection-end-column="13" />
+        <state relative-caret-position="191">
+          <caret line="289" column="36" selection-start-line="289" selection-start-column="36" selection-end-line="289" selection-end-column="36" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStaffVo.java">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStudentVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/config/SeewoConfig.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="253">
         <state relative-caret-position="253">
-          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
+          <caret line="13" column="19" selection-start-line="13" selection-start-column="19" selection-end-line="13" selection-end-column="19" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStaffNoVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/application.yml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/application-dev.yml">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="11" column="24" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="24" />
+        <state relative-caret-position="223">
+          <caret line="57" column="2" selection-start-line="57" selection-start-column="2" selection-end-line="59" selection-end-column="44" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsStudentNoVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartUserControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="11" column="26" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="26" />
+        <state relative-caret-position="176">
+          <caret line="63" column="46" selection-start-line="63" selection-start-column="27" selection-end-line="63" selection-end-column="46" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartUser.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/updateSmartUserRequest.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="448">
-          <caret line="122" column="47" lean-forward="true" selection-start-line="122" selection-start-column="47" selection-end-line="122" selection-end-column="47" />
+        <state relative-caret-position="283">
+          <caret line="154" column="6" selection-start-line="154" selection-start-column="6" selection-end-line="154" selection-end-column="6" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsDepartmentVo.java">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/BsDepartmentNoVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/exception/EmsExceptionHandler.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="11" column="29" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="29" />
+        <state relative-caret-position="61">
+          <caret line="70" selection-start-line="70" selection-end-line="70" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDepartment.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/core/JwtAuthenticationInterceptor.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="425">
-          <caret line="43" column="33" selection-start-line="43" selection-start-column="19" selection-end-line="43" selection-end-column="33" />
+        <state relative-caret-position="295">
+          <caret line="78" column="35" selection-start-line="78" selection-start-column="15" selection-end-line="78" selection-end-column="35" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartUserServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmsCodeServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="361">
-          <caret line="61" column="66" selection-start-line="61" selection-start-column="47" selection-end-line="61" selection-end-column="66" />
+        <state relative-caret-position="295">
+          <caret line="42" column="31" selection-start-line="42" selection-start-column="12" selection-end-line="42" selection-end-column="31" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartUserMapper.xml">
+    <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/5.3.1/spring-aop-5.3.1.jar!/org/springframework/aop/framework/CglibAopProxy.class">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="522">
-          <caret line="46" column="71" selection-start-line="46" selection-start-column="71" selection-end-line="46" selection-end-column="71" />
+        <state relative-caret-position="292">
+          <caret line="433" selection-start-line="433" selection-end-line="433" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartAuthorGroupController.java">
+    <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/5.3.1/spring-core-5.3.1.jar!/org/springframework/cglib/proxy/MethodProxy.class">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="117" column="108" selection-start-line="117" selection-start-column="78" selection-end-line="117" selection-end-column="108" />
+        <state relative-caret-position="292">
+          <caret line="104" selection-start-line="104" selection-end-line="104" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/UserVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartGradeController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="118" column="24" selection-start-line="118" selection-start-column="24" selection-end-line="118" selection-end-column="24" />
+        <state relative-caret-position="486">
+          <caret line="88" column="27" selection-start-line="88" selection-start-column="27" selection-end-line="88" selection-end-column="27" />
           <folding>
           <folding>
-            <element signature="imports" expanded="true" />
+            <element signature="e#1573#1574#0" expanded="true" />
+            <element signature="e#1600#1601#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/AffiliateUserVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartUserRequest.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="207">
-          <caret line="9" column="3" lean-forward="true" selection-start-line="9" selection-start-column="3" selection-end-line="9" selection-end-column="3" />
+        <state relative-caret-position="73">
+          <caret line="112" column="6" selection-start-line="112" selection-start-column="6" selection-end-line="112" selection-end-column="6" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/StudentServiceUpdateStudentInfoParam.java">
-      <provider selected="true" editor-type-id="text-editor" />
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartGradeRequest.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="552">
+          <caret line="27" column="12" selection-start-line="27" selection-start-column="12" selection-end-line="27" selection-end-column="12" />
+        </state>
+      </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eIdentityStatu.java">
+    <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/5.3.22/spring-web-5.3.22-sources.jar!/org/springframework/web/method/support/InvocableHandlerMethod.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="11" column="11" selection-start-line="11" selection-start-column="4" selection-end-line="11" selection-end-column="11" />
+        <state relative-caret-position="356">
+          <caret line="213" selection-start-line="213" selection-end-line="213" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java">
     <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="386">
-          <caret line="1327" column="41" lean-forward="true" selection-start-line="1327" selection-start-column="41" selection-end-line="1327" selection-end-column="41" />
+        <state relative-caret-position="173">
+          <caret line="1404" column="21" selection-start-line="1404" selection-start-column="21" selection-end-line="1404" selection-end-column="21" />
           <folding>
           <folding>
             <element signature="method#logoffAccount#0;class#SmartUserController#0" />
             <element signature="method#logoffAccount#0;class#SmartUserController#0" />
             <element signature="method#changeDepartment#0;class#SmartUserController#0" />
             <element signature="method#changeDepartment#0;class#SmartUserController#0" />
@@ -887,110 +837,94 @@
             <element signature="method#readXlsx#0;class#SmartUserController#0" />
             <element signature="method#readXlsx#0;class#SmartUserController#0" />
             <element signature="docComment;method#readXls#0;class#SmartUserController#0" />
             <element signature="docComment;method#readXls#0;class#SmartUserController#0" />
             <element signature="method#readXls#0;class#SmartUserController#0" />
             <element signature="method#readXls#0;class#SmartUserController#0" />
-            <element signature="e#38913#38917#0" />
-            <element signature="e#39021#39090#1" />
-            <element signature="e#39324#39345#0" />
-            <element signature="e#46364#46436#1" />
-            <element signature="e#46508#46604#1" />
-            <element signature="e#46558#46575#0" />
-            <element signature="e#51192#51288#1" />
-            <element signature="e#51420#51437#0" />
-            <element signature="e#60909#60926#0" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/insertSmartClassRequest.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eIdentityStatu.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="292">
-          <caret line="16" column="13" selection-start-line="16" selection-start-column="13" selection-end-line="16" selection-end-column="13" />
+        <state relative-caret-position="253">
+          <caret line="11" column="11" selection-start-line="11" selection-start-column="4" selection-end-line="11" selection-end-column="11" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartGrade.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="223">
-          <caret line="32" column="13" selection-start-line="32" selection-start-column="13" selection-end-line="32" selection-end-column="13" />
+        <state relative-caret-position="197">
+          <caret line="117" column="73" selection-start-line="117" selection-start-column="53" selection-end-line="117" selection-end-column="73" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartClassService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartUserMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="483">
-          <caret line="25" column="20" selection-start-line="25" selection-start-column="20" selection-end-line="25" selection-end-column="20" />
+        <state relative-caret-position="312">
+          <caret line="113" column="13" lean-forward="true" selection-start-line="113" selection-start-column="13" selection-end-line="113" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartClassServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesParam.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="1058">
-          <caret line="59" column="50" selection-start-line="59" selection-start-column="28" selection-end-line="59" selection-end-column="50" />
-        </state>
+        <state relative-caret-position="-276" />
       </provider>
       </provider>
     </entry>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java">
     <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartClassControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="736">
-          <caret line="39" column="61" selection-start-line="39" selection-start-column="61" selection-end-line="39" selection-end-column="61" />
+        <state relative-caret-position="562">
+          <caret line="40" column="61" lean-forward="true" selection-start-line="40" selection-start-column="61" selection-end-line="40" selection-end-column="61" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartGradeController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartUserServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="345">
-          <caret line="91" selection-start-line="91" selection-end-line="91" />
-          <folding>
-            <element signature="e#1573#1574#0" expanded="true" />
-            <element signature="e#1600#1601#0" expanded="true" />
-          </folding>
+        <state relative-caret-position="-1334">
+          <caret line="65" column="13" lean-forward="true" selection-start-line="65" selection-start-column="13" selection-end-line="65" selection-end-column="13" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartDepartmentController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartGrade.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="151" column="35" selection-start-line="151" selection-start-column="35" selection-end-line="151" selection-end-column="35" />
+        <state relative-caret-position="433">
+          <caret line="50" column="27" selection-start-line="50" selection-start-column="19" selection-end-line="50" selection-end-column="27" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/TimeExchange.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="269">
-          <caret line="242" column="29" selection-start-line="242" selection-start-column="25" selection-end-line="242" selection-end-column="29" />
+        <state relative-caret-position="65">
+          <caret line="79" column="38" lean-forward="true" selection-start-line="79" selection-start-column="38" selection-end-line="79" selection-end-column="38" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/ClassServiceBatchSaveClassParam.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartClassServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="191">
-          <caret line="289" column="36" selection-start-line="289" selection-start-column="36" selection-end-line="289" selection-end-column="36" />
+        <state relative-caret-position="269">
+          <caret line="31" column="42" selection-start-line="31" selection-start-column="28" selection-end-line="31" selection-end-column="42" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/config/SeewoConfig.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzParam.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="13" column="19" selection-start-line="13" selection-start-column="19" selection-end-line="13" selection-end-column="19" />
+        <state>
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/application.yml">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/application-dev.yml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/TimeExchange.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="223">
-          <caret line="57" column="2" lean-forward="true" selection-start-line="57" selection-start-column="2" selection-end-line="59" selection-end-column="44" />
+        <state relative-caret-position="295">
+          <caret line="203" column="25" selection-start-line="203" selection-start-column="25" selection-end-line="203" selection-end-column="25" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartClassController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/ScheduleController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="174">
-          <caret line="147" column="40" lean-forward="true" selection-start-line="147" selection-start-column="40" selection-end-line="147" selection-end-column="40" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="318">
+          <caret line="87" column="52" lean-forward="true" selection-start-line="87" selection-start-column="52" selection-end-line="87" selection-end-column="52" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>

+ 6 - 0
src/main/java/com/template/api/SmartClassControllerAPI.java

@@ -4,6 +4,7 @@ import com.template.model.pojo.SmartClass;
 import com.template.model.request.insertSmartClassRequest;
 import com.template.model.request.insertSmartClassRequest;
 import com.template.model.result.CommonResult;
 import com.template.model.result.CommonResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.validation.annotation.Validated;
@@ -42,4 +43,9 @@ public interface SmartClassControllerAPI {
     @PostMapping(value = "/insertSmartClassToBaisheng")
     @PostMapping(value = "/insertSmartClassToBaisheng")
     @ApiOperation(value = "将班级数据添加到百胜系统", notes = "将班级数据添加到百胜系统", httpMethod = "POST")
     @ApiOperation(value = "将班级数据添加到百胜系统", notes = "将班级数据添加到百胜系统", httpMethod = "POST")
     CommonResult insertSmartClassToBaisheng(@Validated @RequestBody insertSmartClassRequest iscr, BindingResult bindingResult) throws Exception;
     CommonResult insertSmartClassToBaisheng(@Validated @RequestBody insertSmartClassRequest iscr, BindingResult bindingResult) throws Exception;
+
+
+    @GetMapping(value = "/initSchoolClasses")
+    @ApiOperation(value = "根据ID删除指定班级", notes = "根据ID删除指定班级", httpMethod = "GET")
+    CommonResult initSchoolClasses();
 }
 }

+ 69 - 33
src/main/java/com/template/controller/ScheduleController.java

@@ -6,15 +6,17 @@ import com.seewo.open.sdk.auth.Account;
 import com.template.common.utils.TimeExchange;
 import com.template.common.utils.TimeExchange;
 import com.template.config.ScheduleConfig;
 import com.template.config.ScheduleConfig;
 import com.template.config.SeewoConfig;
 import com.template.config.SeewoConfig;
-import com.template.model.seewo.AttendanceServiceListAttendClassRecordsParam;
-import com.template.model.seewo.AttendanceServiceListAttendClassRecordsRequest;
-import com.template.model.seewo.AttendanceServiceListAttendClassRecordsResult;
+import com.template.model.pojo.SmartClass;
+import com.template.model.seewo.*;
+import com.template.services.SmartClassService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import java.util.List;
 
 
 
 
 @Component
 @Component
@@ -27,6 +29,10 @@ public class ScheduleController {
     @Resource
     @Resource
     private ScheduleConfig scheduleConfig;
     private ScheduleConfig scheduleConfig;
 
 
+    @Autowired
+    private SmartClassService smartClassService;
+
+
     /**
     /**
      * @Scheduled注解会在默认情况下以单线程的方式执行定时任务。 这个“单线程”指两个方面:
      * @Scheduled注解会在默认情况下以单线程的方式执行定时任务。 这个“单线程”指两个方面:
      * 如果一个定时任务执行时间大于其任务间隔时间,那么下一次将会等待上一次执行结束后再继续执行。
      * 如果一个定时任务执行时间大于其任务间隔时间,那么下一次将会等待上一次执行结束后再继续执行。
@@ -57,40 +63,70 @@ public class ScheduleController {
         if(scheduleConfig.getIsOpen().equals("1")){
         if(scheduleConfig.getIsOpen().equals("1")){
 
 
             //循环班级的classUid
             //循环班级的classUid
+            List<SmartClass> classes = smartClassService.getSmartClasss();
+            for (SmartClass data:classes) {
+                //region 获取考勤事件ID
+                //初始化客户端
+                SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
+                AttendanceRuleListEventByClazzParam kParam = new AttendanceRuleListEventByClazzParam();
+                //响应体,MimeType为 application/json
+                AttendanceRuleListEventByClazzParam.RequestBody kRequestBody = AttendanceRuleListEventByClazzParam.RequestBody.builder()
+                        .build();
+                kParam.setRequestBody(kRequestBody);
+                //query
+                AttendanceRuleListEventByClazzParam.Query kQuery = AttendanceRuleListEventByClazzParam.Query.builder()
+                        .appId(seewoConfig.getAppId())
+                        .schoolUid(seewoConfig.getSchoolId())
+                        .date(TimeExchange.getDate())
+                        .classUid(data.getClassUid())
+                        .page(1)
+                        .pageSize(20)
+                        .build();
+                kRequestBody.setQuery(kQuery);
+                kParam.setRequestBody(kRequestBody);
+                AttendanceRuleListEventByClazzRequest kRequest = new AttendanceRuleListEventByClazzRequest(kParam);
+                System.out.println("入参:" +kRequest);
+                //如果想要调用沙箱环境,请通过设置 request 对象的 serverUrl 属性,如:
+                //request.setServerUrl("https://openapi.test.seewo.com")
+                //执行请求,如果想获取到com.seewo.open.sdk.HttpResponse对象,请调用 seewoClient.execute 方法
+                AttendanceRuleListEventByClazzResult kResult = seewoClient.invoke(kRequest);
+                System.out.println("出参:" +kResult);
 
 
+                //考勤事件ID
 
 
-            /**
-             * 定时获取考勤
-             */
-            //初始化客户端
-            SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
-            AttendanceServiceListAttendClassRecordsParam param = new AttendanceServiceListAttendClassRecordsParam();
-            //响应体,MimeType为 application/json
-            AttendanceServiceListAttendClassRecordsParam.RequestBody requestBody = AttendanceServiceListAttendClassRecordsParam.RequestBody.builder()
-                    .build();
-            param.setRequestBody(requestBody);
-            //query
-            AttendanceServiceListAttendClassRecordsParam.Query query = AttendanceServiceListAttendClassRecordsParam.Query.builder()
-                    .eventId("1316302749783220225")//考勤事件ID 固定写死
-                    .attendDate(TimeExchange.getDate())//考勤日期
-                    .appId(seewoConfig.getAppId())//appid
-                    .grade(1)//年级序号
-                    .classUid("123456789")//班级uid 班级uid与年级序号、班级序号二选一确定具体的班级,如果都填以classUid为准
-                    .clazz(1)//班级序号
-                    .schoolUid(seewoConfig.getSchoolId())//学校uid
-                    .attendType(1)//考勤类型 时间考勤(默认):1  课程考勤:2
-                    .build();
-            requestBody.setQuery(query);
-            param.setRequestBody(requestBody);
-            AttendanceServiceListAttendClassRecordsRequest request = new AttendanceServiceListAttendClassRecordsRequest(param);
-            System.out.println("入参:" +request);
-            //如果想要调用沙箱环境,请通过设置 request 对象的 serverUrl 属性,如:
-            //request.setServerUrl("https://openapi.test.seewo.com")
-            //执行请求,如果想获取到com.seewo.open.sdk.HttpResponse对象,请调用 seewoClient.execute 方法
-            AttendanceServiceListAttendClassRecordsResult result = seewoClient.invoke(request);
-            System.out.println("出参:" +result);
+                //endregion
 
 
 
 
+                /**
+                 * 定时获取考勤
+                 */
+                //初始化客户端
+                //SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
+                AttendanceServiceListAttendClassRecordsParam param = new AttendanceServiceListAttendClassRecordsParam();
+                //响应体,MimeType为 application/json
+                AttendanceServiceListAttendClassRecordsParam.RequestBody requestBody = AttendanceServiceListAttendClassRecordsParam.RequestBody.builder()
+                        .build();
+                param.setRequestBody(requestBody);
+                //query
+                AttendanceServiceListAttendClassRecordsParam.Query query = AttendanceServiceListAttendClassRecordsParam.Query.builder()
+                        .eventId("1316302749783220225")//考勤事件ID 固定写死
+                        .attendDate(TimeExchange.getDate())//考勤日期
+                        .appId(seewoConfig.getAppId())//appid
+                        .grade(1)//年级序号
+                        .classUid("123456789")//班级uid 班级uid与年级序号、班级序号二选一确定具体的班级,如果都填以classUid为准
+                        .schoolUid(seewoConfig.getSchoolId())//学校uid
+                        .attendType(1)//考勤类型 时间考勤(默认):1  课程考勤:2
+                        .build();
+                requestBody.setQuery(query);
+                param.setRequestBody(requestBody);
+                AttendanceServiceListAttendClassRecordsRequest request = new AttendanceServiceListAttendClassRecordsRequest(param);
+                System.out.println("入参:" +request);
+                //如果想要调用沙箱环境,请通过设置 request 对象的 serverUrl 属性,如:
+                //request.setServerUrl("https://openapi.test.seewo.com")
+                //执行请求,如果想获取到com.seewo.open.sdk.HttpResponse对象,请调用 seewoClient.execute 方法
+                AttendanceServiceListAttendClassRecordsResult result = seewoClient.invoke(request);
+                System.out.println("出参:" +result);
+            }
         }
         }
     }
     }
 }
 }

+ 75 - 6
src/main/java/com/template/controller/SmartClassController.java

@@ -13,9 +13,7 @@ import com.template.config.SeewoConfig;
 import com.template.model.pojo.*;
 import com.template.model.pojo.*;
 import com.template.model.request.insertSmartClassRequest;
 import com.template.model.request.insertSmartClassRequest;
 import com.template.model.result.CommonResult;
 import com.template.model.result.CommonResult;
-import com.template.model.seewo.ClassServiceBatchSaveClassParam;
-import com.template.model.seewo.ClassServiceBatchSaveClassRequest;
-import com.template.model.seewo.ClassServiceBatchSaveClassResult;
+import com.template.model.seewo.*;
 import com.template.model.vo.*;
 import com.template.model.vo.*;
 import com.template.services.SmartClassService;
 import com.template.services.SmartClassService;
 import com.template.services.SmartGradeService;
 import com.template.services.SmartGradeService;
@@ -29,7 +27,6 @@ import javax.annotation.Resource;
 import java.net.URLDecoder;
 import java.net.URLDecoder;
 import java.net.URLEncoder;
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.ArrayList;
-import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
 import static com.template.common.utils.AesTestOne.decrypt;
 import static com.template.common.utils.AesTestOne.decrypt;
@@ -132,9 +129,45 @@ public class SmartClassController implements SmartClassControllerAPI {
         String result = RequestUtils.httpPost(url, jsonobject.toJSONString());
         String result = RequestUtils.httpPost(url, jsonobject.toJSONString());
 
 
         if (result.contains("添加成功")) {
         if (result.contains("添加成功")) {
-            //将数据加入希沃系统中
+
+            //region 将K12校区的班级数据初始化
+            //希沃班级传输特点:
+            //当前月份小于9月份就传当前年份 - 1 ;如果大于9月份就传当前年份
+            Integer nowMonth = Integer.valueOf(TimeExchange.getNowMonth());
             //初始化客户端
             //初始化客户端
             SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
             SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
+            OrganizationNodeServiceInitSchoolClassesParam kParam = new OrganizationNodeServiceInitSchoolClassesParam();
+            //响应体,MimeType为 application/json
+            OrganizationNodeServiceInitSchoolClassesParam.RequestBody kRequestBody = OrganizationNodeServiceInitSchoolClassesParam.RequestBody.builder()
+                    .build();
+            kParam.setRequestBody(kRequestBody);
+            //query
+            OrganizationNodeServiceInitSchoolClassesParam.Query kQuery = OrganizationNodeServiceInitSchoolClassesParam.Query.builder()
+                    .appId(seewoConfig.getAppId())
+                    .unitUid(seewoConfig.getSchoolId())
+                    .campusName("宜阳学校")
+                    .build();
+            kRequestBody.setQuery(kQuery);
+            //新增班级列表(最大200条)
+            OrganizationNodeServiceInitSchoolClassesParam.Object kClassList = OrganizationNodeServiceInitSchoolClassesParam.Object.builder()
+                    .stageName("初中")
+                    .gradeYear(nowMonth < 9 ? Integer.valueOf(TimeExchange.getYear()).intValue() - 1 : Integer.valueOf(TimeExchange.getYear()))
+                    .build();
+            kQuery.setClassList(java.util.Collections.singletonList(kClassList));
+            kParam.setRequestBody(kRequestBody);
+            OrganizationNodeServiceInitSchoolClassesRequest kRequest = new OrganizationNodeServiceInitSchoolClassesRequest(kParam);
+            System.out.println("入参:" +kRequest);
+            //如果想要调用沙箱环境,请通过设置 request 对象的 serverUrl 属性,如:
+            //request.setServerUrl("https://openapi.test.seewo.com")
+            //执行请求,如果想获取到com.seewo.open.sdk.HttpResponse对象,请调用 seewoClient.execute 方法
+            OrganizationNodeServiceInitSchoolClassesResult kResult = seewoClient.invoke(kRequest);
+            System.out.println("出参:" +kResult);
+            //endregion
+
+
+            //region 将数据加入希沃系统中
+            //初始化客户端
+            //SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
             ClassServiceBatchSaveClassParam param = new ClassServiceBatchSaveClassParam();
             ClassServiceBatchSaveClassParam param = new ClassServiceBatchSaveClassParam();
             //请求体,MimeType为 application/json
             //请求体,MimeType为 application/json
             ClassServiceBatchSaveClassParam.JSONRequestBody requestBody = ClassServiceBatchSaveClassParam.JSONRequestBody.builder()
             ClassServiceBatchSaveClassParam.JSONRequestBody requestBody = ClassServiceBatchSaveClassParam.JSONRequestBody.builder()
@@ -146,13 +179,14 @@ public class SmartClassController implements SmartClassControllerAPI {
                     .schoolUid(seewoConfig.getSchoolId())
                     .schoolUid(seewoConfig.getSchoolId())
                     .build();
                     .build();
             requestBody.setQuery(query);
             requestBody.setQuery(query);
+
             //班级信息列表
             //班级信息列表
             ClassServiceBatchSaveClassParam.ClassInfo classList = ClassServiceBatchSaveClassParam.ClassInfo.builder()
             ClassServiceBatchSaveClassParam.ClassInfo classList = ClassServiceBatchSaveClassParam.ClassInfo.builder()
                     .stageCode("CodeSchoolStage_1")
                     .stageCode("CodeSchoolStage_1")
                     .clazz(iscr.getClassNo())
                     .clazz(iscr.getClassNo())
                     .nickName(iscr.getClassName())
                     .nickName(iscr.getClassName())
                     .grade(grade.getGradeNo())
                     .grade(grade.getGradeNo())
-                    .gradeYear(Integer.valueOf(TimeExchange.getYear()))
+                    .gradeYear(nowMonth < 9 ? Integer.valueOf(TimeExchange.getYear()).intValue() - 1 : Integer.valueOf(TimeExchange.getYear()))
                     .build();
                     .build();
             query.setClassList(java.util.Collections.singletonList(classList));
             query.setClassList(java.util.Collections.singletonList(classList));
             param.setRequestBody(requestBody);
             param.setRequestBody(requestBody);
@@ -171,6 +205,7 @@ public class SmartClassController implements SmartClassControllerAPI {
             if (!xwResult.getResponseBody().getCode().equals("000000")) {
             if (!xwResult.getResponseBody().getCode().equals("000000")) {
                 return CommonResult.fail(xwResult.getResponseBody().getMessage());
                 return CommonResult.fail(xwResult.getResponseBody().getMessage());
             }
             }
+            //endregion
 
 
             //希沃添加年级和班级数据是:存在就覆盖 不存在就新增
             //希沃添加年级和班级数据是:存在就覆盖 不存在就新增
             //要拿到希沃的年级Uid和班级Uid
             //要拿到希沃的年级Uid和班级Uid
@@ -220,5 +255,39 @@ public class SmartClassController implements SmartClassControllerAPI {
         return CommonResult.fail("操作失败");
         return CommonResult.fail("操作失败");
 
 
     }
     }
+
+    @Override
+    public CommonResult initSchoolClasses() {
+        //初始化客户端
+        SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
+        OrganizationNodeServiceInitSchoolClassesParam param = new OrganizationNodeServiceInitSchoolClassesParam();
+        //响应体,MimeType为 application/json
+        OrganizationNodeServiceInitSchoolClassesParam.RequestBody requestBody = OrganizationNodeServiceInitSchoolClassesParam.RequestBody.builder()
+                .build();
+        param.setRequestBody(requestBody);
+        //query
+        OrganizationNodeServiceInitSchoolClassesParam.Query query = OrganizationNodeServiceInitSchoolClassesParam.Query.builder()
+                .appId(seewoConfig.getAppId())
+                .unitUid(seewoConfig.getSchoolId())
+                .campusName("宜阳学校")
+                .build();
+        requestBody.setQuery(query);
+        //新增班级列表(最大200条)
+        OrganizationNodeServiceInitSchoolClassesParam.Object classList = OrganizationNodeServiceInitSchoolClassesParam.Object.builder()
+                .stageName("初中")
+                .gradeYear(2022)
+                .build();
+        query.setClassList(java.util.Collections.singletonList(classList));
+        param.setRequestBody(requestBody);
+        OrganizationNodeServiceInitSchoolClassesRequest request = new OrganizationNodeServiceInitSchoolClassesRequest(param);
+        System.out.println("入参:" +request);
+        //如果想要调用沙箱环境,请通过设置 request 对象的 serverUrl 属性,如:
+        //request.setServerUrl("https://openapi.test.seewo.com")
+        //执行请求,如果想获取到com.seewo.open.sdk.HttpResponse对象,请调用 seewoClient.execute 方法
+        OrganizationNodeServiceInitSchoolClassesResult result = seewoClient.invoke(request);
+        System.out.println("出参:" +result);
+
+        return null;
+    }
 }
 }
 
 

+ 14 - 10
src/main/java/com/template/controller/SmartUserController.java

@@ -1196,7 +1196,7 @@ public class SmartUserController implements SmartUserControllerAPI {
 
 
             //region 更新希沃学生信息
             //region 更新希沃学生信息
             //初始化客户端
             //初始化客户端
-            SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppId()));
+            SeewoClient seewoClient = new DefaultSeewoClient(new Account(seewoConfig.getAppId(), seewoConfig.getAppSecret()));
             StudentServiceUpdateStudentInfoParam param = new StudentServiceUpdateStudentInfoParam();
             StudentServiceUpdateStudentInfoParam param = new StudentServiceUpdateStudentInfoParam();
             //响应体,MimeType为 application/json
             //响应体,MimeType为 application/json
             StudentServiceUpdateStudentInfoParam.RequestBody requestBody = StudentServiceUpdateStudentInfoParam.RequestBody.builder()
             StudentServiceUpdateStudentInfoParam.RequestBody requestBody = StudentServiceUpdateStudentInfoParam.RequestBody.builder()
@@ -1373,7 +1373,9 @@ public class SmartUserController implements SmartUserControllerAPI {
             List<Integer> studentIds = new ArrayList<>();
             List<Integer> studentIds = new ArrayList<>();
             List<String> studentStrs = Arrays.asList(StringUtils.join(result.getList().stream().map(UserVo::getAffiliate).collect(Collectors.toList()), ",").split(","));
             List<String> studentStrs = Arrays.asList(StringUtils.join(result.getList().stream().map(UserVo::getAffiliate).collect(Collectors.toList()), ",").split(","));
             for (String studentStr : studentStrs) {
             for (String studentStr : studentStrs) {
-                studentIds.add(Integer.valueOf(studentStr));
+                if(!ObjectUtils.isEmpty(studentStr)){
+                    studentIds.add(Integer.valueOf(studentStr));
+                }
             }
             }
             List<SmartUser> students = smartUserService.getSmartUserByIds(studentIds);
             List<SmartUser> students = smartUserService.getSmartUserByIds(studentIds);
             List<SmartClass> classs = smartClassService.list(null);
             List<SmartClass> classs = smartClassService.list(null);
@@ -1393,14 +1395,16 @@ public class SmartUserController implements SmartUserControllerAPI {
                 List<AffiliateUserVo> datas = new ArrayList<>();
                 List<AffiliateUserVo> datas = new ArrayList<>();
                 List<String> affiliates = Arrays.asList(data.getAffiliate().split(","));
                 List<String> affiliates = Arrays.asList(data.getAffiliate().split(","));
                 for (String a : affiliates) {
                 for (String a : affiliates) {
-                    Optional<SmartUser> student = students.stream().filter(e -> e.getId().equals(Integer.valueOf(a))).findFirst();
-                    if (student != null && student.isPresent()) {
-                        AffiliateUserVo affiliate = new AffiliateUserVo();
-                        affiliate.setId(student.get().getId());
-                        affiliate.setName(student.get().getName());
-                        affiliate.setCardNo(student.get().getCardNo());
-                        affiliate.setDepartmentId(student.get().getDepartmentId());
-                        datas.add(affiliate);
+                    if(!ObjectUtils.isEmpty(a)){
+                        Optional<SmartUser> student = students.stream().filter(e -> e.getId().equals(Integer.valueOf(a))).findFirst();
+                        if (student != null && student.isPresent()) {
+                            AffiliateUserVo affiliate = new AffiliateUserVo();
+                            affiliate.setId(student.get().getId());
+                            affiliate.setName(student.get().getName());
+                            affiliate.setCardNo(student.get().getCardNo());
+                            affiliate.setDepartmentId(student.get().getDepartmentId());
+                            datas.add(affiliate);
+                        }
                     }
                     }
                 }
                 }
                 data.setAffiliates(datas);
                 data.setAffiliates(datas);

+ 1 - 1
src/main/java/com/template/model/request/insertSmartGradeRequest.java

@@ -25,6 +25,6 @@ public class insertSmartGradeRequest {
     /**
     /**
      * 年级序号
      * 年级序号
      */
      */
-    @NotBlank(message = "年级序号不能为空")
+    @NotNull(message = "年级序号不能为空")
     private Integer gradeNo;
     private Integer gradeNo;
 }
 }

+ 1 - 1
src/main/java/com/template/model/request/insertSmartUserRequest.java

@@ -110,7 +110,7 @@ public class insertSmartUserRequest {
      * 被关联用户的ID
      * 被关联用户的ID
      * 多个用户用逗号隔开
      * 多个用户用逗号隔开
      */
      */
-    @NotEmpty(message = "关联人不能为空")
+    //@NotEmpty(message = "关联人不能为空")
     private List<String> affiliate;
     private List<String> affiliate;
 
 
     /**
     /**

+ 11 - 11
src/main/java/com/template/model/request/updateSmartUserRequest.java

@@ -78,31 +78,31 @@ public class updateSmartUserRequest {
     /**
     /**
      * 学院
      * 学院
      */
      */
-    @NotBlank(message = "学院不能为空")
+    //@NotBlank(message = "学院不能为空")
     private String college;
     private String college;
 
 
     /**
     /**
      * 专业
      * 专业
      */
      */
-    @NotBlank(message = "专业不能为空")
+    //@NotBlank(message = "专业不能为空")
     private String speciality;
     private String speciality;
 
 
     /**
     /**
      * 班级
      * 班级
      */
      */
-    @NotBlank(message = "班级不能为空")
+    @NotNull(message = "班级不能为空")
     private Integer schoolClass;
     private Integer schoolClass;
 
 
     /**
     /**
      * 校区
      * 校区
      */
      */
-    @NotBlank(message = "校区不能为空")
+    //@NotBlank(message = "校区不能为空")
     private String campus;
     private String campus;
 
 
     /**
     /**
      * 宿舍号
      * 宿舍号
       */
       */
-    @NotBlank(message = "宿舍号不能为空")
+    //@NotBlank(message = "宿舍号不能为空")
     private String dormitoryNumber;
     private String dormitoryNumber;
 
 
     /**
     /**
@@ -122,37 +122,37 @@ public class updateSmartUserRequest {
     /**
     /**
      * 职称
      * 职称
      */
      */
-    @NotBlank(message = "职称不能为空")
+    //@NotBlank(message = "职称不能为空")
     private String title;
     private String title;
 
 
     /**
     /**
      * 家庭住址
      * 家庭住址
      */
      */
-    @NotBlank(message = "家庭住址不能为空")
+    //@NotBlank(message = "家庭住址不能为空")
     private String address;
     private String address;
 
 
     /**
     /**
      * 民族
      * 民族
      */
      */
-    @NotBlank(message = "民族不能为空")
+    //@NotBlank(message = "民族不能为空")
     private String nation;
     private String nation;
 
 
     /**
     /**
      * 生源地不能为空
      * 生源地不能为空
      */
      */
-    @NotBlank(message = "生源地不能为空")
+    //@NotBlank(message = "生源地不能为空")
     private String ofStudent;
     private String ofStudent;
 
 
     /**
     /**
      * 毕业学校
      * 毕业学校
      */
      */
-    @NotBlank(message = "毕业学校不能为空")
+    //@NotBlank(message = "毕业学校不能为空")
     private String graduate;
     private String graduate;
 
 
     /**
     /**
      * 职务
      * 职务
      */
      */
-    @NotBlank(message = "职务不能为空")
+    //@NotBlank(message = "职务不能为空")
     private String duties;
     private String duties;
 
 
 }
 }

+ 248 - 0
src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzParam.java

@@ -0,0 +1,248 @@
+package com.template.model.seewo;
+
+import java.util.*;
+import com.seewo.open.sdk.OpenApiParam;
+import com.seewo.open.sdk.ParameterPosition;
+
+/**
+ * seewo-open API: 【事件考勤】查询班级指定日期的考勤规则列表
+ *
+ *
+ * @author auto create
+ * @since 2.0.1 2023-12-19
+ */
+public class AttendanceRuleListEventByClazzParam extends OpenApiParam {
+
+
+    /**
+     * 响应体,MimeType为 application/json
+     */
+
+    private RequestBody requestBody;
+
+
+    public RequestBody getRequestBody() {
+        return this.requestBody;
+    }
+
+    public void setRequestBody(RequestBody requestBody) {
+        this.requestBody = requestBody;
+    }
+
+    public static AttendanceRuleListEventByClazzParamBuilder builder(){
+        return new AttendanceRuleListEventByClazzParamBuilder();
+    }
+
+    public static class AttendanceRuleListEventByClazzParamBuilder{
+        private RequestBody requestBody;
+
+        public AttendanceRuleListEventByClazzParamBuilder requestBody(RequestBody requestBody){
+            this.requestBody = requestBody;
+            return this;
+        }
+
+        public AttendanceRuleListEventByClazzParam build(){
+            AttendanceRuleListEventByClazzParam param = new AttendanceRuleListEventByClazzParam();
+            param.setRequestBody(requestBody);
+            return param;
+        }
+    }
+
+    public static class RequestBody {
+        /**
+         * query
+         */
+        private Query query;
+
+        public Query getQuery() {
+            return this.query;
+        }
+
+        public void setQuery(Query query) {
+            this.query = query;
+        }
+
+
+        public static RequestBodyBuilder builder(){
+            return new RequestBodyBuilder();
+        }
+
+        public static class RequestBodyBuilder{
+            private Query query;
+
+            public RequestBodyBuilder query(Query query){
+                this.query = query;
+                return this;
+            }
+
+            public RequestBody build(){
+                RequestBody param = new RequestBody();
+                param.setQuery(query);
+                return param;
+            }
+        }
+    }
+
+    public static class Query {
+        /**
+         * appId
+         */
+        private String appId;
+        /**
+         * 学校ID
+         */
+        private String schoolUid;
+        /**
+         * 考勤日期
+         */
+        private String date;
+        /**
+         * 班级ID
+         */
+        private String classUid;
+        /**
+         * 年级序号
+         */
+        private Integer grade;
+        /**
+         * 班级序号
+         */
+        private Integer clazz;
+        /**
+         * page
+         */
+        private Integer page;
+        /**
+         * pageSize
+         */
+        private Integer pageSize;
+
+        public String getAppId() {
+            return this.appId;
+        }
+
+        public void setAppId(String appId) {
+            this.appId = appId;
+        }
+
+        public String getSchoolUid() {
+            return this.schoolUid;
+        }
+
+        public void setSchoolUid(String schoolUid) {
+            this.schoolUid = schoolUid;
+        }
+
+        public String getDate() {
+            return this.date;
+        }
+
+        public void setDate(String date) {
+            this.date = date;
+        }
+
+        public String getClassUid() {
+            return this.classUid;
+        }
+
+        public void setClassUid(String classUid) {
+            this.classUid = classUid;
+        }
+
+        public Integer getGrade() {
+            return this.grade;
+        }
+
+        public void setGrade(Integer grade) {
+            this.grade = grade;
+        }
+
+        public Integer getClazz() {
+            return this.clazz;
+        }
+
+        public void setClazz(Integer clazz) {
+            this.clazz = clazz;
+        }
+
+        public Integer getPage() {
+            return this.page;
+        }
+
+        public void setPage(Integer page) {
+            this.page = page;
+        }
+
+        public Integer getPageSize() {
+            return this.pageSize;
+        }
+
+        public void setPageSize(Integer pageSize) {
+            this.pageSize = pageSize;
+        }
+
+
+        public static QueryBuilder builder(){
+            return new QueryBuilder();
+        }
+
+        public static class QueryBuilder{
+            private String appId;
+            private String schoolUid;
+            private String date;
+            private String classUid;
+            private Integer grade;
+            private Integer clazz;
+            private Integer page;
+            private Integer pageSize;
+
+            public QueryBuilder appId(String appId){
+                this.appId = appId;
+                return this;
+            }
+            public QueryBuilder schoolUid(String schoolUid){
+                this.schoolUid = schoolUid;
+                return this;
+            }
+            public QueryBuilder date(String date){
+                this.date = date;
+                return this;
+            }
+            public QueryBuilder classUid(String classUid){
+                this.classUid = classUid;
+                return this;
+            }
+            public QueryBuilder grade(Integer grade){
+                this.grade = grade;
+                return this;
+            }
+            public QueryBuilder clazz(Integer clazz){
+                this.clazz = clazz;
+                return this;
+            }
+            public QueryBuilder page(Integer page){
+                this.page = page;
+                return this;
+            }
+            public QueryBuilder pageSize(Integer pageSize){
+                this.pageSize = pageSize;
+                return this;
+            }
+
+            public Query build(){
+                Query param = new Query();
+                param.setAppId(appId);
+                param.setSchoolUid(schoolUid);
+                param.setDate(date);
+                param.setClassUid(classUid);
+                param.setGrade(grade);
+                param.setClazz(clazz);
+                param.setPage(page);
+                param.setPageSize(pageSize);
+                return param;
+            }
+        }
+    }
+
+
+}

+ 35 - 0
src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzRequest.java

@@ -0,0 +1,35 @@
+package com.template.model.seewo;
+
+import java.util.*;
+import com.seewo.open.sdk.OpenApiParam;
+import com.seewo.open.sdk.OpenApiRequest;
+
+/**
+ * seewo-open API: 【事件考勤】查询班级指定日期的考勤规则列表
+ *
+ *
+ * @author auto create
+ * @since 2.0.1 2023-12-19
+ */
+public class AttendanceRuleListEventByClazzRequest extends OpenApiRequest<AttendanceRuleListEventByClazzParam, AttendanceRuleListEventByClazzResult> {
+
+    public AttendanceRuleListEventByClazzRequest(AttendanceRuleListEventByClazzParam param) {
+        this();
+        setBizModel(param);
+    }
+
+    public AttendanceRuleListEventByClazzRequest() {
+        setServerUrl("https://openapi.seewo.com");
+        setPath("/seewo-yunban-api/attendance-rule/list-event-by-clazz");
+        setHttpMethod("POST");
+    }
+
+    public Class<AttendanceRuleListEventByClazzResult> getResponseClass() {
+        return AttendanceRuleListEventByClazzResult.class;
+    }
+
+    public Class<AttendanceRuleListEventByClazzParam> getDomainClass() {
+        return AttendanceRuleListEventByClazzParam.class;
+    }
+}
+

+ 206 - 0
src/main/java/com/template/model/seewo/AttendanceRuleListEventByClazzResult.java

@@ -0,0 +1,206 @@
+package com.template.model.seewo;
+
+import java.util.*;
+import com.seewo.open.sdk.OpenApiResult;
+import com.seewo.open.sdk.HttpResponse;
+
+/**
+ * seewo-open API: 【事件考勤】查询班级指定日期的考勤规则列表
+ *
+ *
+ * @author auto create
+ * @since 2.0.1 2023-12-19
+ */
+public class AttendanceRuleListEventByClazzResult extends OpenApiResult {
+
+    public AttendanceRuleListEventByClazzResult(HttpResponse response) {
+        super(response);
+    }
+
+
+    /**
+     * 响应体,MimeType为 application/json
+     */
+
+    private ResponseBody responseBody;
+
+
+    public ResponseBody getResponseBody() {
+        return this.responseBody;
+    }
+
+    public void setResponseBody(ResponseBody responseBody) {
+        this.responseBody = responseBody;
+    }
+
+    public static class ResponseBody {
+        /**
+         * code
+         */
+        private String code;
+        /**
+         * message
+         */
+        private String message;
+        /**
+         * data
+         */
+        private Data data;
+
+        public String getCode() {
+            return this.code;
+        }
+
+        public void setCode(String code) {
+            this.code = code;
+        }
+
+        public String getMessage() {
+            return this.message;
+        }
+
+        public void setMessage(String message) {
+            this.message = message;
+        }
+
+        public Data getData() {
+            return this.data;
+        }
+
+        public void setData(Data data) {
+            this.data = data;
+        }
+
+    }
+
+    public static class Data {
+        /**
+         * classUid
+         */
+        private String classUid;
+        /**
+         * className
+         */
+        private String className;
+        /**
+         * classType
+         */
+        private Integer classType;
+        /**
+         * events
+         */
+        private List<EventsItem> events;
+
+        public String getClassUid() {
+            return this.classUid;
+        }
+
+        public void setClassUid(String classUid) {
+            this.classUid = classUid;
+        }
+
+        public String getClassName() {
+            return this.className;
+        }
+
+        public void setClassName(String className) {
+            this.className = className;
+        }
+
+        public Integer getClassType() {
+            return this.classType;
+        }
+
+        public void setClassType(Integer classType) {
+            this.classType = classType;
+        }
+
+        public List<EventsItem> getEvents() {
+            return this.events;
+        }
+
+        public void setEvents(List<EventsItem> events) {
+            this.events = events;
+        }
+
+    }
+
+    public static class EventsItem {
+        /**
+         * ruleId
+         */
+        private String ruleId;
+        /**
+         * name
+         */
+        private String name;
+        /**
+         * attendType
+         */
+        private Integer attendType;
+        /**
+         * attendStartTime
+         */
+        private String attendStartTime;
+        /**
+         * attendLateTime
+         */
+        private String attendLateTime;
+        /**
+         * attendEndTime
+         */
+        private String attendEndTime;
+
+        public String getRuleId() {
+            return this.ruleId;
+        }
+
+        public void setRuleId(String ruleId) {
+            this.ruleId = ruleId;
+        }
+
+        public String getName() {
+            return this.name;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public Integer getAttendType() {
+            return this.attendType;
+        }
+
+        public void setAttendType(Integer attendType) {
+            this.attendType = attendType;
+        }
+
+        public String getAttendStartTime() {
+            return this.attendStartTime;
+        }
+
+        public void setAttendStartTime(String attendStartTime) {
+            this.attendStartTime = attendStartTime;
+        }
+
+        public String getAttendLateTime() {
+            return this.attendLateTime;
+        }
+
+        public void setAttendLateTime(String attendLateTime) {
+            this.attendLateTime = attendLateTime;
+        }
+
+        public String getAttendEndTime() {
+            return this.attendEndTime;
+        }
+
+        public void setAttendEndTime(String attendEndTime) {
+            this.attendEndTime = attendEndTime;
+        }
+
+    }
+
+
+}
+

+ 283 - 0
src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesParam.java

@@ -0,0 +1,283 @@
+package com.template.model.seewo;
+
+import java.util.*;
+import com.seewo.open.sdk.OpenApiParam;
+import com.seewo.open.sdk.ParameterPosition;
+
+/**
+ * seewo-open API: 批量初始化K12班级
+ *
+ *
+ * @author auto create
+ * @since 2.0.1 2023-12-19
+ */
+public class OrganizationNodeServiceInitSchoolClassesParam extends OpenApiParam {
+
+
+    /**
+     * 响应体,MimeType为 application/json
+     */
+
+    private RequestBody requestBody;
+
+
+    public RequestBody getRequestBody() {
+        return this.requestBody;
+    }
+
+    public void setRequestBody(RequestBody requestBody) {
+        this.requestBody = requestBody;
+    }
+
+    public static OrganizationNodeServiceInitSchoolClassesParamBuilder builder(){
+        return new OrganizationNodeServiceInitSchoolClassesParamBuilder();
+    }
+
+    public static class OrganizationNodeServiceInitSchoolClassesParamBuilder{
+        private RequestBody requestBody;
+
+        public OrganizationNodeServiceInitSchoolClassesParamBuilder requestBody(RequestBody requestBody){
+            this.requestBody = requestBody;
+            return this;
+        }
+
+        public OrganizationNodeServiceInitSchoolClassesParam build(){
+            OrganizationNodeServiceInitSchoolClassesParam param = new OrganizationNodeServiceInitSchoolClassesParam();
+            param.setRequestBody(requestBody);
+            return param;
+        }
+    }
+
+    public static class RequestBody {
+        /**
+         * query
+         */
+        private Query query;
+
+        public Query getQuery() {
+            return this.query;
+        }
+
+        public void setQuery(Query query) {
+            this.query = query;
+        }
+
+
+        public static RequestBodyBuilder builder(){
+            return new RequestBodyBuilder();
+        }
+
+        public static class RequestBodyBuilder{
+            private Query query;
+
+            public RequestBodyBuilder query(Query query){
+                this.query = query;
+                return this;
+            }
+
+            public RequestBody build(){
+                RequestBody param = new RequestBody();
+                param.setQuery(query);
+                return param;
+            }
+        }
+    }
+
+    public static class Query {
+        /**
+         * appId
+         */
+        private String appId;
+        /**
+         * 学校ID
+         */
+        private String unitUid;
+        /**
+         * 校区名称,名字不能超过20位
+         */
+        private String campusName;
+        /**
+         * 新增班级列表(最大200条)
+         */
+        private List<Object> classList;
+
+        public String getAppId() {
+            return this.appId;
+        }
+
+        public void setAppId(String appId) {
+            this.appId = appId;
+        }
+
+        public String getUnitUid() {
+            return this.unitUid;
+        }
+
+        public void setUnitUid(String unitUid) {
+            this.unitUid = unitUid;
+        }
+
+        public String getCampusName() {
+            return this.campusName;
+        }
+
+        public void setCampusName(String campusName) {
+            this.campusName = campusName;
+        }
+
+        public List<Object> getClassList() {
+            return this.classList;
+        }
+
+        public void setClassList(List<Object> classList) {
+            this.classList = classList;
+        }
+
+
+        public static QueryBuilder builder(){
+            return new QueryBuilder();
+        }
+
+        public static class QueryBuilder{
+            private String appId;
+            private String unitUid;
+            private String campusName;
+            private List<Object> classList;
+
+            public QueryBuilder appId(String appId){
+                this.appId = appId;
+                return this;
+            }
+            public QueryBuilder unitUid(String unitUid){
+                this.unitUid = unitUid;
+                return this;
+            }
+            public QueryBuilder campusName(String campusName){
+                this.campusName = campusName;
+                return this;
+            }
+            public QueryBuilder classList(List<Object> classList){
+                this.classList = classList;
+                return this;
+            }
+
+            public Query build(){
+                Query param = new Query();
+                param.setAppId(appId);
+                param.setUnitUid(unitUid);
+                param.setCampusName(campusName);
+                param.setClassList(classList);
+                return param;
+            }
+        }
+    }
+
+    public static class Object {
+        /**
+         * 学段名称 : 幼儿园、小学、初中、高中
+         */
+        private String stageName;
+        /**
+         * 入学年份,例如2017届,为2000至2117 -优先 (入学年份与年级必填一个)
+         */
+        private Integer gradeYear;
+        /**
+         * 年级:小学~高中 : 1-12 幼儿园:30 托班:31 小班:32 中班:33 大班:34
+         */
+        private Integer grade;
+        /**
+         * 班级名称
+         */
+        private String className;
+        /**
+         * 班级序号 1-50,比如:  一年级1班 clazz:1
+         */
+        private Integer clazz;
+
+        public String getStageName() {
+            return this.stageName;
+        }
+
+        public void setStageName(String stageName) {
+            this.stageName = stageName;
+        }
+
+        public Integer getGradeYear() {
+            return this.gradeYear;
+        }
+
+        public void setGradeYear(Integer gradeYear) {
+            this.gradeYear = gradeYear;
+        }
+
+        public Integer getGrade() {
+            return this.grade;
+        }
+
+        public void setGrade(Integer grade) {
+            this.grade = grade;
+        }
+
+        public String getClassName() {
+            return this.className;
+        }
+
+        public void setClassName(String className) {
+            this.className = className;
+        }
+
+        public Integer getClazz() {
+            return this.clazz;
+        }
+
+        public void setClazz(Integer clazz) {
+            this.clazz = clazz;
+        }
+
+
+        public static ObjectBuilder builder(){
+            return new ObjectBuilder();
+        }
+
+        public static class ObjectBuilder{
+            private String stageName;
+            private Integer gradeYear;
+            private Integer grade;
+            private String className;
+            private Integer clazz;
+
+            public ObjectBuilder stageName(String stageName){
+                this.stageName = stageName;
+                return this;
+            }
+            public ObjectBuilder gradeYear(Integer gradeYear){
+                this.gradeYear = gradeYear;
+                return this;
+            }
+            public ObjectBuilder grade(Integer grade){
+                this.grade = grade;
+                return this;
+            }
+            public ObjectBuilder className(String className){
+                this.className = className;
+                return this;
+            }
+            public ObjectBuilder clazz(Integer clazz){
+                this.clazz = clazz;
+                return this;
+            }
+
+            public Object build(){
+                Object param = new Object();
+                param.setStageName(stageName);
+                param.setGradeYear(gradeYear);
+                param.setGrade(grade);
+                param.setClassName(className);
+                param.setClazz(clazz);
+                return param;
+            }
+        }
+    }
+
+
+}

+ 35 - 0
src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesRequest.java

@@ -0,0 +1,35 @@
+package com.template.model.seewo;
+
+import java.util.*;
+import com.seewo.open.sdk.OpenApiParam;
+import com.seewo.open.sdk.OpenApiRequest;
+
+/**
+ * seewo-open API: 批量初始化K12班级
+ *
+ *
+ * @author auto create
+ * @since 2.0.1 2023-12-19
+ */
+public class OrganizationNodeServiceInitSchoolClassesRequest extends OpenApiRequest<OrganizationNodeServiceInitSchoolClassesParam, OrganizationNodeServiceInitSchoolClassesResult> {
+
+    public OrganizationNodeServiceInitSchoolClassesRequest(OrganizationNodeServiceInitSchoolClassesParam param) {
+        this();
+        setBizModel(param);
+    }
+
+    public OrganizationNodeServiceInitSchoolClassesRequest() {
+        setServerUrl("https://openapi.seewo.com");
+        setPath("/seewo-yunban-api/organization-node-service/init-school-classes");
+        setHttpMethod("POST");
+    }
+
+    public Class<OrganizationNodeServiceInitSchoolClassesResult> getResponseClass() {
+        return OrganizationNodeServiceInitSchoolClassesResult.class;
+    }
+
+    public Class<OrganizationNodeServiceInitSchoolClassesParam> getDomainClass() {
+        return OrganizationNodeServiceInitSchoolClassesParam.class;
+    }
+}
+

+ 66 - 0
src/main/java/com/template/model/seewo/OrganizationNodeServiceInitSchoolClassesResult.java

@@ -0,0 +1,66 @@
+package com.template.model.seewo;
+
+import java.util.*;
+import com.seewo.open.sdk.OpenApiResult;
+import com.seewo.open.sdk.HttpResponse;
+
+/**
+ * seewo-open API: 批量初始化K12班级
+ *
+ *
+ * @author auto create
+ * @since 2.0.1 2023-12-19
+ */
+public class OrganizationNodeServiceInitSchoolClassesResult extends OpenApiResult {
+
+    public OrganizationNodeServiceInitSchoolClassesResult(HttpResponse response) {
+        super(response);
+    }
+
+
+    /**
+     * 响应体,MimeType为 application/json
+     */
+
+    private ResponseBody responseBody;
+
+
+    public ResponseBody getResponseBody() {
+        return this.responseBody;
+    }
+
+    public void setResponseBody(ResponseBody responseBody) {
+        this.responseBody = responseBody;
+    }
+
+    public static class ResponseBody {
+        /**
+         * code
+         */
+        private String code;
+        /**
+         * message
+         */
+        private String message;
+
+        public String getCode() {
+            return this.code;
+        }
+
+        public void setCode(String code) {
+            this.code = code;
+        }
+
+        public String getMessage() {
+            return this.message;
+        }
+
+        public void setMessage(String message) {
+            this.message = message;
+        }
+
+    }
+
+
+}
+

二進制
target/mybatis_plus-0.0.1-SNAPSHOT.jar.original