夏文涛 пре 2 година
родитељ
комит
f4ff992885

+ 296 - 285
.idea/workspace.xml

@@ -2,10 +2,24 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="6c5cf517-721b-44b7-afae-e7b1b913b988" name="Default Changelist" comment="">
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartAuthorGroupMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartAuthorGroupMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartScoreMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartScoreMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartSubjectMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartSubjectMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScore.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScore.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/request/updateScoreRequest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/request/updateScoreRequest.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/SmartAuthorGroupService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/SmartAuthorGroupService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/SmartScoreService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/SmartScoreService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/SmartSubjectService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/SmartSubjectService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartAuthorGroupServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartAuthorGroupServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartScoreServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartScoreServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/resources/mapper/template/SmartAuthorGroupMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/mapper/template/SmartAuthorGroupMapper.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/mapper/template/SmartAuthorGroupMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/mapper/template/SmartAuthorGroupMapper.xml" 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>
     <ignored path="$PROJECT_DIR$/classes/" />
@@ -24,91 +38,61 @@
       <file pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="393">
-              <caret line="204" column="66" selection-start-line="204" selection-start-column="66" selection-end-line="204" selection-end-column="66" />
+            <state relative-caret-position="238">
+              <caret line="436" column="66" selection-start-line="436" selection-start-column="66" selection-end-line="436" selection-end-column="66" />
               <folding>
-                <element signature="e#10764#10765#0" expanded="true" />
-                <element signature="e#10938#10939#0" expanded="true" />
-                <element signature="e#11075#11076#0" expanded="true" />
+                <element signature="e#11979#11980#0" expanded="true" />
+                <element signature="e#12006#12007#0" expanded="true" />
+                <element signature="e#12153#12154#0" expanded="true" />
+                <element signature="e#12180#12181#0" expanded="true" />
+                <element signature="e#12290#12291#0" expanded="true" />
+                <element signature="e#12317#12318#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/model/vo/ScoreVo.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="529">
-              <caret line="23" column="11" selection-start-line="23" selection-start-column="11" selection-end-line="23" selection-end-column="11" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="115">
-              <caret line="5" column="48" lean-forward="true" selection-start-line="5" selection-start-column="48" selection-end-line="5" selection-end-column="48" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <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/pojo/SmartScore.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="460">
-              <caret line="50" column="30" selection-start-line="50" selection-start-column="30" selection-end-line="50" selection-end-column="30" />
+            <state relative-caret-position="134">
+              <caret line="59" column="32" selection-start-line="59" selection-start-column="32" selection-end-line="59" selection-end-column="32" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eSubjectStatu.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="221">
-              <caret line="65" column="25" selection-start-line="65" selection-start-column="25" selection-end-line="65" selection-end-column="25" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartSubjectService.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="511">
-              <caret line="33" column="41" selection-start-line="33" selection-start-column="23" selection-end-line="33" selection-end-column="41" />
+            <state relative-caret-position="759">
+              <caret line="45" column="19" selection-start-line="45" selection-start-column="19" selection-end-line="45" selection-end-column="19" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java">
+        <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="350">
-              <caret line="81" column="48" selection-start-line="81" selection-start-column="30" selection-end-line="81" selection-end-column="48" />
+            <state relative-caret-position="46">
+              <caret line="59" column="41" selection-start-line="59" selection-start-column="41" selection-end-line="59" selection-end-column="41" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartUserService.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="155">
-              <caret line="29" column="4" selection-start-line="29" selection-start-column="4" selection-end-line="29" selection-end-column="54" />
+            <state relative-caret-position="677">
+              <caret line="75" column="25" selection-start-line="75" selection-start-column="25" selection-end-line="75" selection-end-column="25" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartUserServiceImpl.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartAuthorGroupController.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="512">
-              <caret line="97" column="22" selection-start-line="93" selection-start-column="8" selection-end-line="97" selection-end-column="22" />
-              <folding>
-                <element signature="e#6225#6226#0" expanded="true" />
-                <element signature="e#6284#6285#0" expanded="true" />
-                <element signature="e#7254#7255#0" expanded="true" />
-                <element signature="e#7310#7311#0" expanded="true" />
-              </folding>
+            <state relative-caret-position="295">
+              <caret line="126" column="109" selection-start-line="126" selection-start-column="79" selection-end-line="126" selection-end-column="109" />
             </state>
           </provider>
         </entry>
@@ -116,8 +100,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="244">
-              <caret line="31" column="56" selection-start-line="31" selection-start-column="45" selection-end-line="31" selection-end-column="56" />
+            <state relative-caret-position="371">
+              <caret line="90" column="24" selection-start-line="90" selection-start-column="24" selection-end-line="90" selection-end-column="24" />
             </state>
           </provider>
         </entry>
@@ -133,17 +117,6 @@
   </component>
   <component name="FindInProjectRecents">
     <findStrings>
-      <find>up</find>
-      <find>deleted</find>
-      <find>queryAppletSubjects</find>
-      <find>updateSmartGradeById</find>
-      <find>queryPageSmartUsers</find>
-      <find>deleteUser.getReason()</find>
-      <find>querySmartSecordPage</find>
-      <find>(currentPage, pageCount</find>
-      <find>updateSmartAuthorGroup</find>
-      <find>QueryParentDepartments</find>
-      <find>请假</find>
       <find>insertSmartUser</find>
       <find>getXwAttendance</find>
       <find>发送短信</find>
@@ -153,7 +126,6 @@
       <find>false</find>
       <find>.isPresent()</find>
       <find>楼栋</find>
-      <find>queryExamTypes</find>
       <find>sheet</find>
       <find>(HttpServletResponse</find>
       <find>导出</find>
@@ -162,7 +134,19 @@
       <find>smartUserExport</find>
       <find>分页</find>
       <find>querySubjects</find>
+      <find>update</find>
+      <find>user_head</find>
+      <find>querySmartAuthorGroup</find>
+      <find>smartAuthorGroup</find>
+      <find>Integer userGradeId, Integer userSchoolClass</find>
       <find>querySmartScorePage</find>
+      <find>百胜</find>
+      <find>::</find>
+      <find>semesters</find>
+      <find>queryExamTypes</find>
+      <find>querySmartScores</find>
+      <find>subjects.size() * 3</find>
+      <find>smartScoreExport</find>
     </findStrings>
     <replaceStrings>
       <replace />
@@ -185,17 +169,6 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartBuildMeter.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/SmartDepartment.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDuties.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartFaceDiscern.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartFreezeRecord.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartNotification.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartQrcode.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartSchool.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScore.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScreenshot.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScreenshotRecord.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartVisitor.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartWarning.java" />
@@ -217,7 +190,6 @@
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartUserServiceImpl.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartUserService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartUserControllerAPI.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartAuthorGroupServiceImpl.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartAttendanceController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/AutoCode.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartExamtypeMapper.java" />
@@ -229,12 +201,24 @@
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartExamtypeController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartExamtypeService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartExamtypeServiceImpl.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/request/updateScoreRequest.java" />
+        <option value="$PROJECT_DIR$/src/main/resources/mapper/template/SmartAuthorGroupMapper.xml" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartAuthorGroupMapper.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartAuthorGroupService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartAuthorGroupServiceImpl.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartScoreService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartScoreServiceImpl.java" />
+        <option value="$PROJECT_DIR$/src/main/resources/mapper/template/SmartSubjectMapper.xml" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartScoreMapper.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartSubjectMapper.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/SmartSubjectService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java" />
-        <option value="$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreRankVo.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScore.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.java" />
+        <option value="$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml" />
+        <option value="$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java" />
       </list>
     </option>
@@ -266,8 +250,9 @@
   <component name="MavenRunner">
     <option name="skipTests" value="true" />
   </component>
-  <component name="ProjectFrameBounds">
-    <option name="x" value="-7" />
+  <component name="ProjectFrameBounds" extendedState="6">
+    <option name="x" value="-8" />
+    <option name="y" value="-8" />
     <option name="width" value="974" />
     <option name="height" value="1039" />
   </component>
@@ -327,6 +312,53 @@
               <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="mapper" 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="pojo" 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="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>
@@ -375,7 +407,7 @@
     <property name="RequestMappingsPanelWidth1" value="75" />
     <property name="WebServerToolWindowFactoryState" value="false" />
     <property name="aspect.path.notification.shown" value="true" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../报修系统/repair_backend" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../校车预约移动端/carBooksDevelopV" />
     <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
     <property name="nodejs_npm_path_reset_for_default_project" value="true" />
     <property name="settings.editor.selected.configurable" value="MavenSettings" />
@@ -388,8 +420,8 @@
       <recent name="D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\resources\mapper\template" />
     </key>
     <key name="CopyClassDialog.RECENTS_KEY">
-      <recent name="com.template.api" />
       <recent name="com.template.model.vo" />
+      <recent name="com.template.api" />
       <recent name="com.template.annotation" />
     </key>
     <key name="CopyFile.RECENT_KEYS">
@@ -483,18 +515,17 @@
       <workItem from="1709604835831" duration="41000" />
       <workItem from="1709604890825" duration="250000" />
       <workItem from="1709606083794" duration="10623000" />
-      <workItem from="1709688259937" duration="87447000" />
+      <workItem from="1709688259937" duration="118762000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="238162000" />
+    <option name="totallyTimeSpent" value="269477000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="-8" y="-8" width="1936" height="1048" extended-state="6" />
-    <editor active="true" />
     <layout>
-      <window_info content_ui="combo" id="Project" order="0" weight="0.4184435" />
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.25266525" />
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
       <window_info id="Designer" order="2" />
       <window_info id="JRebel" order="3" side_tool="true" />
@@ -505,8 +536,8 @@
       <window_info id="Web" order="8" side_tool="true" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Find" order="1" />
-      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.4989059" weight="0.23425414" />
-      <window_info anchor="bottom" id="Debug" order="3" sideWeight="0.4989059" weight="0.3391685" />
+      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.4989059" visible="true" weight="0.2286652" />
+      <window_info anchor="bottom" id="Debug" order="3" sideWeight="0.4989059" weight="0.3127072" />
       <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" />
@@ -523,7 +554,7 @@
       <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
       <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
-      <window_info anchor="right" id="Maven" order="3" weight="0.2494432" />
+      <window_info active="true" anchor="right" id="Maven" order="3" visible="true" weight="0.120469086" />
       <window_info anchor="right" id="Palette" order="4" />
       <window_info anchor="right" id="Capture Analysis" order="5" />
       <window_info anchor="right" id="Database" order="6" />
@@ -566,19 +597,19 @@
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java</url>
-          <line>658</line>
+          <line>828</line>
           <properties />
           <option name="timeStamp" value="36" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java</url>
-          <line>621</line>
+          <line>791</line>
           <properties />
           <option name="timeStamp" value="37" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java</url>
-          <line>619</line>
+          <line>789</line>
           <properties />
           <option name="timeStamp" value="38" />
         </line-breakpoint>
@@ -638,22 +669,10 @@
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java</url>
-          <line>129</line>
+          <line>132</line>
           <properties />
           <option name="timeStamp" value="128" />
         </line-breakpoint>
-        <line-breakpoint enabled="true" type="java-line">
-          <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java</url>
-          <line>218</line>
-          <properties />
-          <option name="timeStamp" value="129" />
-        </line-breakpoint>
-        <line-breakpoint enabled="true" type="java-line">
-          <url>file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java</url>
-          <line>181</line>
-          <properties />
-          <option name="timeStamp" value="130" />
-        </line-breakpoint>
       </breakpoints>
     </breakpoint-manager>
   </component>
@@ -661,385 +680,377 @@
     <SUITE FILE_PATH="coverage/mybatis_plus$MybatisPlusApplication.ic" NAME="MybatisPlusApplication Coverage Results" MODIFIED="1709618808702" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartVisitorController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartExamtypeControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="249">
-          <caret line="279" column="7" selection-start-line="279" selection-start-column="7" selection-end-line="279" selection-end-column="7" />
+        <state relative-caret-position="447">
+          <caret line="29" column="112" selection-start-line="29" selection-start-column="112" selection-end-line="29" selection-end-column="129" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/LoginController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartExamtypeService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="32" column="15" lean-forward="true" selection-start-line="32" selection-start-column="15" selection-end-line="34" selection-end-column="17" />
+        <state relative-caret-position="401">
+          <caret line="21" column="113" selection-start-line="21" selection-start-column="113" selection-end-line="21" selection-end-column="113" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.0.5/mybatis-plus-generator-3.0.5.jar!/com/baomidou/mybatisplus/generator/config/PackageConfig.class">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartExamtype.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-1982">
-          <caret line="95" column="25" selection-start-line="95" selection-start-column="25" selection-end-line="95" selection-end-column="25" />
+        <state relative-caret-position="172">
+          <caret line="28" column="13" selection-start-line="28" selection-start-column="13" selection-end-line="28" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/AutoCode.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartExamtypeServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="291">
-          <caret line="44" column="42" lean-forward="true" selection-start-line="44" selection-start-column="42" selection-end-line="44" selection-end-column="42" />
+        <state relative-caret-position="101">
+          <caret line="29" column="13" selection-start-line="29" selection-start-column="13" selection-end-line="29" selection-end-column="13" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/SmartApplyMapper.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartExamtypeController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="276">
-          <caret line="17" selection-start-line="17" selection-end-line="17" selection-end-column="11" />
+        <state relative-caret-position="240">
+          <caret line="97" column="13" selection-start-line="97" selection-start-column="13" selection-end-line="97" selection-end-column="13" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/RepairAdminMapper.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartSubject.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <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="86">
+          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartExamtypeMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartUserServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="46">
-          <caret line="2" column="48" selection-start-line="2" selection-start-column="48" selection-end-line="2" selection-end-column="48" />
+        <state relative-caret-position="512">
+          <caret line="97" column="22" selection-start-line="93" selection-start-column="8" selection-end-line="97" selection-end-column="22" />
+          <folding>
+            <element signature="e#6225#6226#0" expanded="true" />
+            <element signature="e#6284#6285#0" expanded="true" />
+            <element signature="e#7254#7255#0" expanded="true" />
+            <element signature="e#7310#7311#0" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDataSource.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartUserService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="29" column="13" selection-start-line="29" selection-start-column="13" selection-end-line="29" selection-end-column="13" />
+        <state relative-caret-position="155">
+          <caret line="29" column="4" selection-start-line="29" selection-start-column="4" selection-end-line="29" selection-end-column="54" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartCodeOpenId.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eSubjectStatu.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="221">
+          <caret line="65" column="25" selection-start-line="65" selection-start-column="25" selection-end-line="65" selection-end-column="25" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartClass.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/request/updateScoreRequest.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="282">
+          <caret line="42" column="7" lean-forward="true" selection-start-line="42" selection-start-column="7" selection-end-line="42" selection-end-column="7" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartCarAccess.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/WechatScanLoginServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="224">
+          <caret line="34" column="13" selection-start-line="34" selection-start-column="13" selection-end-line="34" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartFaceDiscern.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/WechatScanLoginController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="270">
+          <caret line="430" column="7" lean-forward="true" selection-start-line="430" selection-start-column="7" selection-end-line="430" selection-end-column="7" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartFaceDiscernService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartUser.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="34" column="17" selection-start-line="34" selection-start-column="17" selection-end-line="34" selection-end-column="17" />
+        <state relative-caret-position="224">
+          <caret line="102" column="20" selection-start-line="102" selection-start-column="20" selection-end-line="102" selection-end-column="20" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartApplyController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eDuties.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="341">
-          <caret line="50" column="4" selection-start-line="50" selection-start-column="4" selection-end-line="50" selection-end-column="39" />
+        <state relative-caret-position="207">
+          <caret line="9" column="12" selection-start-line="9" selection-start-column="12" selection-end-line="9" selection-end-column="12" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartBuildController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eDutiesType.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="1344">
-          <caret line="101" column="5" lean-forward="true" selection-start-line="29" selection-start-column="4" selection-end-line="101" selection-end-column="5" />
+        <state relative-caret-position="207">
+          <caret line="9" column="12" selection-start-line="9" selection-start-column="12" selection-end-line="9" selection-end-column="12" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartBuildService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartAuthorGroup.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="483">
-          <caret line="24" column="36" lean-forward="true" selection-start-line="16" selection-start-column="4" selection-end-line="24" selection-end-column="36" />
+        <state relative-caret-position="9">
+          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartBuildServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartAuthorGroupMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="677">
-          <caret line="60" column="5" lean-forward="true" selection-start-line="26" selection-start-column="4" selection-end-line="60" selection-end-column="5" />
+        <state relative-caret-position="382">
+          <caret line="28" column="42" selection-start-line="28" selection-start-column="16" selection-end-line="28" selection-end-column="42" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/SmartExamtypeMapper.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/SmartAuthorGroupMapper.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="15" column="17" selection-start-line="15" selection-start-column="17" selection-end-line="15" selection-end-column="17" />
+        <state relative-caret-position="437">
+          <caret line="25" column="53" selection-start-line="25" selection-start-column="27" selection-end-line="25" selection-end-column="53" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/SmartBuildMapper.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartAuthorGroupService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="15" column="17" selection-start-line="15" selection-start-column="17" selection-end-line="15" selection-end-column="17" />
+        <state relative-caret-position="420">
+          <caret line="37" column="54" selection-start-line="37" selection-start-column="54" selection-end-line="37" selection-end-column="54" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartBuildControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartAuthorGroupServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="276">
-          <caret line="18" column="17" selection-start-line="18" selection-start-column="17" selection-end-line="18" selection-end-column="17" />
+        <state relative-caret-position="336">
+          <caret line="99" column="61" selection-start-line="99" selection-start-column="34" selection-end-line="99" selection-end-column="61" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScore.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartScoreService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-36">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="429">
+          <caret line="31" column="256" selection-start-line="31" selection-start-column="212" selection-end-line="31" selection-end-column="256" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartSemester.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartScoreServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-188">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="339">
+          <caret line="74" column="180" selection-start-line="74" selection-start-column="180" selection-end-line="74" selection-end-column="180" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartGrade.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartUserMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="63" column="30" selection-start-line="63" selection-start-column="4" selection-end-line="63" selection-end-column="30" />
+        <state relative-caret-position="460">
+          <caret line="59" column="38" selection-start-line="59" selection-start-column="31" selection-end-line="59" selection-end-column="38" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/SemesterVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartSubjectManageMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/XwBodyVo.java">
       <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>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/aop/DESResponseSecretAspect.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/WechatUserVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="169">
-          <caret line="79" selection-start-line="79" selection-end-line="79" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartUserControllerAPI.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="166">
-          <caret line="75" column="24" selection-start-line="75" selection-start-column="24" selection-end-line="75" selection-end-column="24" />
+        <state relative-caret-position="295">
+          <caret line="23" column="13" selection-start-line="23" selection-start-column="13" selection-end-line="23" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartWarningControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/VisitorPageVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="174">
-          <caret line="48" column="26" selection-start-line="48" selection-start-column="26" selection-end-line="48" selection-end-column="26" />
+        <state relative-caret-position="253">
+          <caret line="15" column="13" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/core/JwtAuthenticationInterceptor.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/VisitorCountVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="166">
-          <caret line="87" column="50" selection-start-line="87" selection-start-column="50" selection-end-line="87" selection-end-column="50" />
+        <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>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/WxUtil.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/UserVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="166">
-          <caret line="375" column="36" selection-start-line="375" selection-start-column="36" selection-end-line="375" selection-end-column="36" />
+        <state relative-caret-position="253">
+          <caret line="14" column="13" selection-start-line="14" selection-start-column="13" selection-end-line="14" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/ExcelUtils2.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/TimeGroupVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="166">
-          <caret line="664" column="34" selection-start-line="664" selection-start-column="34" selection-end-line="664" selection-end-column="34" />
+        <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>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartWarningController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/TurnOnDeviceVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="174">
-          <caret line="158" column="40" selection-start-line="158" selection-start-column="40" selection-end-line="158" selection-end-column="40" />
+        <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>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java">
+    <entry file="jar://C:/Program Files/Java/jdk1.8.0_181/src.zip!/java/lang/Double.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="125">
-          <caret line="2377" column="40" lean-forward="true" selection-start-line="2377" selection-start-column="40" selection-end-line="2377" selection-end-column="40" />
+        <state relative-caret-position="341">
+          <caret line="50" column="55" selection-start-line="50" selection-start-column="51" selection-end-line="50" selection-end-column="55" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/common/utils/ExcelUtils.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/SmartScoreMapper.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="238">
-          <caret line="49" column="23" selection-start-line="49" selection-start-column="23" selection-end-line="49" selection-end-column="23" />
+        <state relative-caret-position="368">
+          <caret line="23" column="302" selection-start-line="23" selection-start-column="296" selection-end-line="23" selection-end-column="302" />
         </state>
       </provider>
     </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi/4.1.0/poi-4.1.0.jar!/org/apache/poi/ss/usermodel/Workbook.class">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/mapper/SmartSubjectMapper.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="238">
-          <caret line="81" column="13" selection-start-line="81" selection-start-column="4" selection-end-line="81" selection-end-column="13" />
+        <state relative-caret-position="345">
+          <caret line="21" column="71" lean-forward="true" selection-start-line="21" selection-start-column="4" selection-end-line="21" selection-end-column="71" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/ScheduleController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartSubjectMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="343">
-          <caret line="66" column="7" selection-start-line="66" selection-start-column="7" selection-end-line="66" selection-end-column="7" />
-          <folding>
-            <element signature="method#autoDispatch#0;class#ScheduleController#0" />
-          </folding>
+        <state relative-caret-position="299">
+          <caret line="13" column="73" selection-start-line="13" selection-start-column="68" selection-end-line="13" selection-end-column="73" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartExamtypeControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="447">
-          <caret line="29" column="112" selection-start-line="29" selection-start-column="112" selection-end-line="29" selection-end-column="129" />
+        <state relative-caret-position="631">
+          <caret line="90" column="47" selection-start-line="90" selection-start-column="29" selection-end-line="90" selection-end-column="47" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartExamtypeService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/UserDeleteVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="401">
-          <caret line="21" column="113" selection-start-line="21" selection-start-column="113" selection-end-line="21" selection-end-column="113" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <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>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartExamtype.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartSubjectController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="172">
+        <state relative-caret-position="-703">
           <caret line="28" column="13" selection-start-line="28" selection-start-column="13" selection-end-line="28" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartExamtypeServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartSubjectService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="101">
-          <caret line="29" column="13" selection-start-line="29" selection-start-column="13" selection-end-line="29" selection-end-column="13" />
+        <state relative-caret-position="677">
+          <caret line="34" column="20" selection-start-line="34" selection-start-column="9" selection-end-line="34" selection-end-column="20" />
           <folding>
             <element signature="imports" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartExamtypeController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartUserController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="97" column="13" selection-start-line="97" selection-start-column="13" selection-end-line="97" selection-end-column="13" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="430">
+          <caret line="286" column="88" lean-forward="true" selection-start-line="286" selection-start-column="88" selection-end-line="286" selection-end-column="88" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartAuthorGroupController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="244">
-          <caret line="31" column="56" selection-start-line="31" selection-start-column="45" selection-end-line="31" selection-end-column="56" />
+        <state relative-caret-position="295">
+          <caret line="126" column="109" selection-start-line="126" selection-start-column="79" selection-end-line="126" selection-end-column="109" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartSubject.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreRankVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="86">
-          <caret line="30" column="13" selection-start-line="30" selection-start-column="13" selection-end-line="30" selection-end-column="13" />
+        <state relative-caret-position="1725">
+          <caret line="75" column="25" selection-start-line="75" selection-start-column="25" selection-end-line="75" selection-end-column="25" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartUserServiceImpl.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="512">
-          <caret line="97" column="22" selection-start-line="93" selection-start-column="8" selection-end-line="97" selection-end-column="22" />
-          <folding>
-            <element signature="e#6225#6226#0" expanded="true" />
-            <element signature="e#6284#6285#0" expanded="true" />
-            <element signature="e#7254#7255#0" expanded="true" />
-            <element signature="e#7310#7311#0" expanded="true" />
-          </folding>
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartSchoolMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartUserService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="155">
-          <caret line="29" column="4" selection-start-line="29" selection-start-column="4" selection-end-line="29" selection-end-column="54" />
+        <state relative-caret-position="759">
+          <caret line="45" column="19" selection-start-line="45" selection-start-column="19" selection-end-line="45" selection-end-column="19" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java">
+    <entry file="jar://C:/Program Files/Java/jdk1.8.0_181/src.zip!/java/util/List.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="350">
-          <caret line="81" column="48" selection-start-line="81" selection-start-column="30" selection-end-line="81" selection-end-column="48" />
+        <state relative-caret-position="295">
+          <caret line="621" column="8" selection-start-line="621" selection-start-column="8" selection-end-line="621" selection-end-column="8" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/services/SmartSubjectService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartScore.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="511">
-          <caret line="33" column="41" selection-start-line="33" selection-start-column="23" selection-end-line="33" selection-end-column="41" />
+        <state relative-caret-position="134">
+          <caret line="59" column="32" selection-start-line="59" selection-start-column="32" selection-end-line="59" selection-end-column="32" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/enumModel/eSubjectStatu.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="221">
-          <caret line="65" column="25" selection-start-line="65" selection-start-column="25" selection-end-line="65" selection-end-column="25" />
+        <state relative-caret-position="677">
+          <caret line="75" column="25" selection-start-line="75" selection-start-column="25" selection-end-line="75" selection-end-column="25" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScorePageVo.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">
-        <state relative-caret-position="460">
-          <caret line="50" column="30" selection-start-line="50" selection-start-column="30" selection-end-line="50" selection-end-column="30" />
+        <state relative-caret-position="295">
+          <caret line="103" selection-start-line="103" selection-end-line="103" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/model/vo/ScoreVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="529">
-          <caret line="23" column="11" selection-start-line="23" selection-start-column="11" selection-end-line="23" selection-end-column="11" />
+        <state relative-caret-position="46">
+          <caret line="59" column="41" selection-start-line="59" selection-start-column="41" selection-end-line="59" selection-end-column="41" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/template/SmartScoreMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/template/api/SmartScoreControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="115">
-          <caret line="5" column="48" lean-forward="true" selection-start-line="5" selection-start-column="48" selection-end-line="5" selection-end-column="48" />
+        <state relative-caret-position="371">
+          <caret line="90" column="24" selection-start-line="90" selection-start-column="24" selection-end-line="90" selection-end-column="24" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/template/controller/SmartScoreController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="393">
-          <caret line="204" column="66" selection-start-line="204" selection-start-column="66" selection-end-line="204" selection-end-column="66" />
+        <state relative-caret-position="238">
+          <caret line="436" column="66" selection-start-line="436" selection-start-column="66" selection-end-line="436" selection-end-column="66" />
           <folding>
-            <element signature="e#10764#10765#0" expanded="true" />
-            <element signature="e#10938#10939#0" expanded="true" />
-            <element signature="e#11075#11076#0" expanded="true" />
+            <element signature="e#11979#11980#0" expanded="true" />
+            <element signature="e#12006#12007#0" expanded="true" />
+            <element signature="e#12153#12154#0" expanded="true" />
+            <element signature="e#12180#12181#0" expanded="true" />
+            <element signature="e#12290#12291#0" expanded="true" />
+            <element signature="e#12317#12318#0" expanded="true" />
           </folding>
         </state>
       </provider>

+ 12 - 3
src/main/java/com/template/api/SmartScoreControllerAPI.java

@@ -41,7 +41,7 @@ public interface SmartScoreControllerAPI {
 
     @GetMapping(value = "/querySmartScorePage")
     @ApiOperation(value = "获取成绩分页数据", notes = "获取成绩分页数据", httpMethod = "GET")
-    CommonResult querySmartScorePage(@RequestParam int currentPage, @RequestParam int pageCount, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
+    CommonResult querySmartScorePage(@RequestParam int currentPage, @RequestParam int pageCount,/*@RequestHeader("user_head") String userhead, */String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
 
     @PostMapping(value = "/insertSmartScore")
     @ApiOperation(value = "添加成绩基本信息", notes = "添加成绩基本信息数据", httpMethod = "POST")
@@ -70,9 +70,9 @@ public interface SmartScoreControllerAPI {
     /**
      * 导出成绩数据
      */
-    @GetMapping(value = "smartUserExport")
+    @GetMapping(value = "smartScoreExport")
     @ApiOperation(value = "导出成绩数据", notes = "导出成绩数据", httpMethod = "GET")
-    void smartUserExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
+    void smartScoreExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
 
 
     /**
@@ -82,6 +82,15 @@ public interface SmartScoreControllerAPI {
     @ApiOperation(value = "测试导出成绩数据", notes = "测试导出成绩数据", httpMethod = "GET")
     void testSmartUserExport(HttpServletResponse response);
 
+
+    /**
+     * 导出排名成绩数据
+     */
+    @GetMapping(value = "smartUserExport")
+    @ApiOperation(value = "导出成绩数据", notes = "导出成绩数据", httpMethod = "GET")
+    void smartUserExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
+
+
     /**
      * 导入成绩
      * 导入的时候如果存在重复的数据就提示

+ 187 - 17
src/main/java/com/template/controller/SmartScoreController.java

@@ -3,6 +3,7 @@ package com.template.controller;
 
 import com.template.annotation.DESRespondSecret;
 import com.template.api.SmartScoreControllerAPI;
+import com.template.common.utils.AesUtils;
 import com.template.common.utils.ExcelUtils;
 import com.template.common.utils.paramUtils;
 import com.template.model.enumModel.*;
@@ -25,16 +26,14 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.BindingResult;
 
+import org.springframework.web.bind.annotation.RequestHeader;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -71,10 +70,14 @@ public class SmartScoreController implements SmartScoreControllerAPI {
     @Autowired
     private SmartExamtypeService smartExamtypeService;
 
+    @Autowired
+    private SmartAuthorGroupService smartAuthorGroupService;
+
+
     @Override
     @DESRespondSecret(validated = true)
     public CommonResult querySmartSemesters() {
-        List<SmartSemester> semesters =  smartSemesterService.list(null);
+        List<SmartSemester> semesters = smartSemesterService.list(null);
 //        //判断当前时间的月份
 //        // 2月-6月底是春季学期
 //        // 9月-次年1月底是秋季学期
@@ -110,11 +113,11 @@ public class SmartScoreController implements SmartScoreControllerAPI {
     public CommonResult querySubjects(int gradeId) {
         SmartGrade grade = smartGradeService.querySmartGradeById(gradeId);
         List<SmartSubject> result = new ArrayList<>();
-        if(grade == null){
+        if (grade == null) {
             return CommonResult.ok(result);
         }
 
-        if(grade.getSubjectId() == null){
+        if (grade.getSubjectId() == null) {
             return CommonResult.ok(result);
         }
         List<String> subjectIds = Arrays.asList(grade.getSubjectId().split(","));
@@ -136,7 +139,7 @@ public class SmartScoreController implements SmartScoreControllerAPI {
         List<SmartExamtype> exams = smartExamtypeService.getSmartByGradeId(gradeId);
 
         List<SemesterVo> semesters = new ArrayList<>();
-        for(SmartExamtype type:exams){
+        for (SmartExamtype type : exams) {
             SemesterVo semester = new SemesterVo();
             semester.setId(type.getId());
             semester.setName(type.getName());
@@ -177,16 +180,42 @@ public class SmartScoreController implements SmartScoreControllerAPI {
      */
     @Override
     @DESRespondSecret(validated = true)
-    public CommonResult querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
+    public CommonResult querySmartScorePage(int currentPage, int pageCount, /*@RequestHeader("user_head") String userhead, */String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
+
+        PageUtils<ScoreVo> result = null;
+        Integer gradeId = null, calssId = null;
+        //region
+        //2024-03-13 添加逻辑:每个班级班主任只能看到自己班的,超级管理员可看到全部
+//        String userId = AesUtils.decrypt(userhead);
+//
+//        if(userId != null){
+//            SmartUser userData = smartUserService.getSmartById(Integer.valueOf(userId));
+//            if (userData == null) {
+//                return CommonResult.ok(result);
+//            }
+//
+//            //是否是超级管理员
+//            List<SmartAuthorGroup> sags = smartAuthorGroupService.smartAuthorGroupSuperAdmins(userData.getId());
+//            if (sags == null) {
+//                //班主任
+//                if (userData.getDuties().intValue() == eDuties.ClassTeacher.getValue()) {
+//                    gradeId = Integer.valueOf(userData.getGrade());
+//                    calssId = userData.getSchoolClass();
+//                } else {
+//                    return CommonResult.ok(result);
+//                }
+//            }
+//        }
+
+        //endregion
 
         Integer subjectInt = subject == null ? null : eSubjectStatu.integerOf(subject);
         Integer examTypeInt = examType == null ? null : eExamType.integerOf(examType);
 
-        PageUtils<ScorePageVo> pageData = smartScoreService.querySmartScorePage(currentPage, pageCount, name, semester, grade, schoolClass, subjectInt, examTypeInt, MinScore, MaxScore);
+        PageUtils<ScorePageVo> pageData = smartScoreService.querySmartScorePage(currentPage, pageCount, name, semester, grade, schoolClass, subjectInt, examTypeInt, MinScore, MaxScore, gradeId, calssId);
 
         List<SmartSubject> subjects = smartSubjectService.list(null);
 
-        PageUtils<ScoreVo> result = null;
 
         if (pageData != null) {
             List<ScoreVo> datas = new ArrayList<>();
@@ -201,7 +230,7 @@ public class SmartScoreController implements SmartScoreControllerAPI {
                 data.setSchoolClassId(spv.getSchoolClassId());
                 data.setSubject(spv.getSubjectId());
                 Optional<SmartSubject> subjectData = subjects.stream().filter(e -> e.getId().equals(spv.getSubjectId())).findFirst();
-                if(subjectData != null && subjectData.isPresent()){
+                if (subjectData != null && subjectData.isPresent()) {
                     data.setSubjectStr(subjectData.get().getName());
                 }
                 data.setExamType(spv.getExamType());
@@ -326,7 +355,7 @@ public class SmartScoreController implements SmartScoreControllerAPI {
 
     @Override
     @DESRespondSecret(validated = false)
-    public void smartUserExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
+    public void smartScoreExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
 
         Integer subjectInt = subject == null ? null : eSubjectStatu.integerOf(subject);
         Integer examTypeInt = examType == null ? null : eExamType.integerOf(examType);
@@ -409,6 +438,147 @@ public class SmartScoreController implements SmartScoreControllerAPI {
     }
 
     @Override
+    @DESRespondSecret(validated = false)
+    public void smartUserExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
+        List<TimeGroupVo> subjects = smartSubjectService.queryGradeSubjects(grade);
+
+        //导出
+        Workbook workbook = new XSSFWorkbook();
+        CellStyle style = workbook.createCellStyle();//水平居中
+        style.setVerticalAlignment(VerticalAlignment.CENTER);//垂直居中
+        style.setAlignment(HorizontalAlignment.CENTER);
+        style.setBorderBottom(BorderStyle.THIN);//设置边框
+        style.setBorderLeft(BorderStyle.THIN);
+        style.setBorderRight(BorderStyle.THIN);
+        style.setBorderTop(BorderStyle.THIN);
+        Sheet sheet = workbook.createSheet("总分");
+        Row headerRow = sheet.createRow(0);
+        for (int i = 0; i < (subjects.size() + 6); i++) {
+            if (i == 0) {
+                headerRow.createCell(i).setCellValue("排行榜");
+            } else {
+                headerRow.createCell(i).setCellValue("");
+            }
+
+            headerRow.getCell(i).setCellStyle(style);
+        }
+        sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, subjects.size() + 5));//Row:行 Col:列   合并单元格 下标从0开始所以是+9
+
+        Row headerRowTwo = sheet.createRow(1);
+        headerRowTwo.createCell(0).setCellValue("姓名");
+        headerRowTwo.getCell(0).setCellStyle(style);
+        headerRowTwo.createCell(1).setCellValue("学号");
+        headerRowTwo.getCell(1).setCellStyle(style);
+        headerRowTwo.createCell(2).setCellValue("班级");
+        headerRowTwo.getCell(2).setCellStyle(style);
+        headerRowTwo.createCell(3).setCellValue("年级");
+        headerRowTwo.getCell(3).setCellStyle(style);
+        headerRowTwo.createCell(4).setCellValue("考试类型");
+        headerRowTwo.getCell(4).setCellStyle(style);
+        headerRowTwo.createCell(5).setCellValue("学期");
+        headerRowTwo.getCell(5).setCellStyle(style);
+
+        int num = 6;
+        for (TimeGroupVo sub : subjects) {
+            headerRowTwo.createCell(num).setCellValue(sub.getName());
+            headerRowTwo.getCell(num).setCellStyle(style);
+            ++num;
+        }
+
+        Row headerRowThree = sheet.createRow(2);
+        for (int i = 0; i < 6; i++) {
+            headerRowThree.createCell(i).setCellValue("");
+            headerRowThree.getCell(i).setCellStyle(style);
+            sheet.addMergedRegion(new CellRangeAddress(1, 2, i, i));//Row:行 Col:列   合并单元格
+        }
+
+        for (int i = 6; i < (subjects.size() + 6); i++) {
+            headerRowThree.createCell(i).setCellValue("分数");
+            headerRowThree.getCell(i).setCellStyle(style);
+        }
+
+        Integer subjectInt = null;
+        if (subject != null && subjects != null) {
+            Optional<TimeGroupVo> subejct = subjects.stream().filter(e -> e.getName().equals(subject)).findFirst();
+            if (subejct != null && subejct.isPresent()) {
+                subjectInt = subejct.get().getId();
+            }
+        }
+
+        List<SmartExamtype> examtypes = smartExamtypeService.list(null);
+        Integer examTypeInt = null;
+        if (examType != null && examtypes != null) {
+            Optional<SmartExamtype> et = examtypes.stream().filter(e -> e.getName().equals(examType)).findFirst();
+            if (et != null && et.isPresent()) {
+                examTypeInt = et.get().getId();
+            }
+        }
+
+        List<SmartExamtype> exams = smartExamtypeService.list(null);
+        int i = 3;
+        //获取成绩
+        List<ScorePageVo> scores = smartScoreService.querySmartScores(name, semester, grade, schoolClass, subjectInt, examTypeInt, MinScore, MaxScore);
+        if (scores != null && scores.size() > 0) {
+            List<String> semesters = scores.stream().map(ScorePageVo::getSemester).distinct().collect(Collectors.toList());
+            for (String semStr : semesters) {
+                List<ScorePageVo> scoreDatas = scores.stream().filter(e -> e.getSemester().equals(semStr)).collect(Collectors.toList());
+                List<Integer> gradeIds = scoreDatas.stream().map(ScorePageVo::getGradeId).distinct().collect(Collectors.toList());
+                for (Integer gradeId : gradeIds) {
+
+                    if (scoreDatas != null && scoreDatas.size() > 0) {
+                        List<Integer> userIds = scoreDatas.stream().map(ScorePageVo::getUserId).distinct().collect(Collectors.toList());
+
+                        for (Integer userId : userIds) {
+                            List<ScorePageVo> userScores = scoreDatas.stream().filter(e -> e.getGradeId().equals(gradeId) && e.getSemester().equals(semStr) && e.getUserId().equals(userId)).collect(Collectors.toList());
+                            if (userScores != null && userScores.size() > 0) {
+                                Row dataRow = sheet.createRow(i);
+                                dataRow.createCell(0).setCellValue(userScores.get(0).getName());//姓名
+                                dataRow.getCell(0).setCellStyle(style);
+                                dataRow.createCell(1).setCellValue(userScores.get(0).getCardNo());//学号
+                                dataRow.getCell(1).setCellStyle(style);
+                                dataRow.createCell(2).setCellValue(userScores.get(0).getSchoolClass());//班级
+                                dataRow.getCell(2).setCellStyle(style);
+                                dataRow.createCell(3).setCellValue(userScores.get(0).getGrade());//年级
+                                dataRow.getCell(3).setCellStyle(style);
+
+                                String examStr = null;
+                                if (exams != null && exams.size() > 0) {
+                                    Optional<SmartExamtype> examtype = exams.stream().filter(e -> e.getGradeId().equals(gradeId) && e.getId().equals(userScores.get(0).getExamType())).findFirst();
+                                    if (examtype != null && examtype.isPresent()) {
+                                        examStr = examtype.get().getName();
+                                    }
+                                }
+                                dataRow.createCell(4).setCellValue(examStr);//考试类型
+                                dataRow.getCell(4).setCellStyle(style);
+                                dataRow.createCell(5).setCellValue(userScores.get(0).getSemester());//学期
+                                dataRow.getCell(5).setCellStyle(style);
+
+                                for (int j = 6; j < subjects.size() + 6; j++) {
+                                    String subjectStr = headerRowTwo.getCell(j).getStringCellValue();
+                                    Optional<TimeGroupVo> subjectData = subjects.stream().filter(e -> e.getName().equals(subjectStr)).findFirst();
+                                    if (subjectData != null && subjectData.isPresent()) {
+                                        Optional<ScorePageVo> subjectScore = userScores.stream().filter(e -> e.getSubjectId().equals(subjectData.get().getId())).findFirst();
+                                        if (subjectScore != null && subjectScore.isPresent()) {
+                                            dataRow.createCell(j).setCellValue(subjectScore.get().getScore());//分数
+                                            dataRow.getCell(j).setCellStyle(style);
+                                        }else{
+                                            dataRow.createCell(j).setCellStyle(style);
+                                        }
+                                    }
+                                }
+                                i++;
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+        // 将工作簿写入文件
+        ExcelUtils.excelDownload(workbook, "排行榜.xlsx", response);
+    }
+
+    @Override
     @DESRespondSecret(validated = true)
     public CommonResult importSmartScoreExcel(MultipartFile file) throws IOException {
         if (file.isEmpty() || file.getSize() == 0) {
@@ -530,8 +700,8 @@ public class SmartScoreController implements SmartScoreControllerAPI {
                     String score = dataFormatter.formatCellValue(row.getCell(7));//成绩
 
                     SmartSemester semesterStr = smartSemesterService.querySemesterByName(semester);
-                    if(semesterStr == null){
-                        return CommonResult.fail(semester+"学期数据无效,导入失败!");
+                    if (semesterStr == null) {
+                        return CommonResult.fail(semester + "学期数据无效,导入失败!");
                     }
 
                     //数据重复性判断 学期 + 学号 + 科目
@@ -667,8 +837,8 @@ public class SmartScoreController implements SmartScoreControllerAPI {
                     String score = dataFormatter.formatCellValue(row.getCell(7));//成绩
 
                     SmartSemester semesterStr = smartSemesterService.querySemesterByName(semester);
-                    if(semesterStr == null){
-                        return CommonResult.fail(semester+"学期数据无效,导入失败!");
+                    if (semesterStr == null) {
+                        return CommonResult.fail(semester + "学期数据无效,导入失败!");
                     }
 
                     //数据重复性判断 学期 + 学号 + 科目

+ 2 - 0
src/main/java/com/template/mapper/SmartAuthorGroupMapper.java

@@ -23,4 +23,6 @@ public interface SmartAuthorGroupMapper extends BaseMapper<SmartAuthorGroup> {
 
     List<SmartAuthorGroupManager> getSmartAuthorGroupManager(@Param("groupId") String groupId);
 
+    List<SmartAuthorGroup> smartAuthorGroupSuperAdmin(@Param("userId") Integer userId);
+
 }

+ 1 - 1
src/main/java/com/template/mapper/SmartScoreMapper.java

@@ -19,7 +19,7 @@ import java.util.List;
  */
 @Repository
 public interface SmartScoreMapper extends BaseMapper<SmartScore> {
-    IPage<ScorePageVo> querySmartScorePage(IPage<ScorePageVo> page, @Param("name") String name,@Param("semester") String semester, @Param("grade") String grade,@Param("schoolClass") String schoolClass,@Param("subject") Integer subject,@Param("examType") Integer examType,@Param("MinScore") Double MinScore,@Param("MaxScore") Double MaxScore);
+    IPage<ScorePageVo> querySmartScorePage(IPage<ScorePageVo> page, @Param("name") String name,@Param("semester") String semester, @Param("grade") String grade,@Param("schoolClass") String schoolClass,@Param("subject") Integer subject,@Param("examType") Integer examType,@Param("MinScore") Double MinScore,@Param("MaxScore") Double MaxScore,@Param("userGradeId") Integer userGradeId,@Param("userSchoolClass") Integer userSchoolClass);
 
     List<ScorePageVo> querySmartScores(@Param("name") String name,@Param("semester") String semester, @Param("grade") String grade,@Param("schoolClass") String schoolClass,@Param("subject") Integer subject,@Param("examType") Integer examType,@Param("MinScore") Double MinScore,@Param("MaxScore") Double MaxScore);
 

+ 6 - 0
src/main/java/com/template/mapper/SmartSubjectMapper.java

@@ -2,8 +2,12 @@ package com.template.mapper;
 
 import com.template.model.pojo.SmartSubject;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.template.model.vo.TimeGroupVo;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 /**
  * <p>
  * 应用管理 Mapper 接口
@@ -15,4 +19,6 @@ import org.springframework.stereotype.Repository;
 @Repository
 public interface SmartSubjectMapper extends BaseMapper<SmartSubject> {
 
+    List<TimeGroupVo> queryGradeSubjects(@Param("grade") String grade);
+
 }

+ 3 - 0
src/main/java/com/template/model/pojo/SmartScore.java

@@ -57,6 +57,9 @@ public class SmartScore implements Serializable {
     @ApiModelProperty(value = "卡号")
     private String cardNo;
 
+    @ApiModelProperty(value = "考号")
+    private String candidate;
+
     @ApiModelProperty(value = "名称")
     private String name;
 

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

@@ -29,7 +29,7 @@ public class updateScoreRequest {
     /**
      * 学期ID
      */
-    @NotBlank(message = "学期ID不能为空")
+    @NotNull(message = "学期ID不能为空")
     private Integer semesterId;
 
     /**

+ 2 - 2
src/main/java/com/template/model/vo/ScorePageVo.java

@@ -33,7 +33,7 @@ public class ScorePageVo {
     /**
      * 年级ID
      */
-    private String gradeId;
+    private Integer gradeId;
 
     /**
      * 班级
@@ -43,7 +43,7 @@ public class ScorePageVo {
     /**
      * 班级ID
      */
-    private String schoolClassId;
+    private Integer schoolClassId;
 
     /**
      * 学科

+ 2 - 2
src/main/java/com/template/model/vo/ScoreVo.java

@@ -33,7 +33,7 @@ public class ScoreVo {
     /**
      * 年级ID
      */
-    private String gradeId;
+    private Integer gradeId;
 
     /**
      * 班级
@@ -43,7 +43,7 @@ public class ScoreVo {
     /**
      * 班级ID
      */
-    private String schoolClassId;
+    private Integer schoolClassId;
 
     /**
      * 学科ID

+ 6 - 2
src/main/java/com/template/services/SmartAuthorGroupService.java

@@ -35,8 +35,12 @@ public interface SmartAuthorGroupService extends IService<SmartAuthorGroup> {
 
     List<SmartAuthorGroup> smartAuthorGroup(Integer userId);
 
-    public List<AuthorListGroup> queryCommentTreeRecords(Integer pid, List<SmartAuthorGroup> lists);
+    List<SmartAuthorGroup> smartAuthorGroupSuperAdmins(Integer userId);
+
+    List<AuthorListGroup> queryCommentTreeRecords(Integer pid, List<SmartAuthorGroup> lists);
+
+    List<SmartAuthorGroupManager> getSmartAuthorGroupManager(String groupId);
+
 
-    public List<SmartAuthorGroupManager> getSmartAuthorGroupManager(String groupId);
 
 }

+ 1 - 1
src/main/java/com/template/services/SmartScoreService.java

@@ -29,7 +29,7 @@ public interface SmartScoreService extends IService<SmartScore> {
 
     int deleteSmartScoreByIds(List<Integer> ids);
 
-    PageUtils<ScorePageVo> querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore);
+    PageUtils<ScorePageVo> querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore, Integer userGradeId, Integer userSchoolClass);
 
     List<ScorePageVo> querySmartScores(String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore);
 }

+ 3 - 2
src/main/java/com/template/services/SmartSubjectService.java

@@ -1,10 +1,9 @@
 package com.template.services;
 
 import com.template.model.pojo.SmartSubject;
-import com.template.model.pojo.SmartSubject;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.template.model.pojo.SmartUser;
 import com.template.model.result.PageUtils;
+import com.template.model.vo.TimeGroupVo;
 
 import java.util.List;
 
@@ -32,4 +31,6 @@ public interface SmartSubjectService extends IService<SmartSubject> {
     List<SmartSubject> queryAppletSubjects();
 
     List<SmartSubject> getSmartSubjectIds(List<String> ids);
+
+    List<TimeGroupVo> queryGradeSubjects(String grade);
 }

+ 6 - 0
src/main/java/com/template/services/impl/SmartAuthorGroupServiceImpl.java

@@ -97,6 +97,12 @@ public class SmartAuthorGroupServiceImpl extends ServiceImpl<SmartAuthorGroupMap
     }
 
     @Override
+    public List<SmartAuthorGroup> smartAuthorGroupSuperAdmins(Integer userId){
+        List<SmartAuthorGroup> result = smartAuthorGroupMapper.smartAuthorGroupSuperAdmin(userId);
+        return result;
+    }
+
+    @Override
     public List<AuthorListGroup> queryCommentTreeRecords(Integer pid, List<SmartAuthorGroup> lists) {
         List<AuthorListGroup> newTrees = new ArrayList<>();
         List<SmartAuthorGroup> datas = lists.stream().filter(e -> e.getParentId().equals(pid)).collect(Collectors.toList());

+ 2 - 2
src/main/java/com/template/services/impl/SmartScoreServiceImpl.java

@@ -70,9 +70,9 @@ public class SmartScoreServiceImpl extends ServiceImpl<SmartScoreMapper, SmartSc
 
 
     @Override
-    public PageUtils<ScorePageVo> querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore) {
+    public PageUtils<ScorePageVo> querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore,Integer userGradeId, Integer userSchoolClass) {
         Page<ScorePageVo> page = new Page<>(currentPage, pageCount);
-        IPage<ScorePageVo> result = smartScoreMapper.querySmartScorePage(page, name, semester, grade, schoolClass, subject, examType, MinScore, MaxScore);
+        IPage<ScorePageVo> result = smartScoreMapper.querySmartScorePage(page, name, semester, grade, schoolClass, subject, examType, MinScore, MaxScore,userGradeId,userSchoolClass);
         return new PageUtils<>(result);
     }
 

+ 8 - 0
src/main/java/com/template/services/impl/SmartSubjectServiceImpl.java

@@ -8,6 +8,7 @@ import com.template.model.pojo.SmartSubject;
 import com.template.mapper.SmartSubjectMapper;
 import com.template.model.pojo.SmartUser;
 import com.template.model.result.PageUtils;
+import com.template.model.vo.TimeGroupVo;
 import com.template.services.SmartSubjectService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -85,4 +86,11 @@ public class SmartSubjectServiceImpl extends ServiceImpl<SmartSubjectMapper, Sma
         List<SmartSubject> result = smartSubjectMapper.selectList(queryWrapper);
         return result;
     }
+
+    @Override
+    public List<TimeGroupVo> queryGradeSubjects(String grade) {
+
+        List<TimeGroupVo> subjects = smartSubjectMapper.queryGradeSubjects(grade);
+        return subjects;
+    }
 }

+ 9 - 0
src/main/resources/mapper/template/SmartAuthorGroupMapper.xml

@@ -26,6 +26,15 @@
         </if>
     </select>
 
+    <select id="smartAuthorGroupSuperAdmin" resultType="com.template.model.pojo.SmartAuthorGroup" resultMap="smartAuthorGroupMap">
+        SELECT * FROM `smart_author_group`
+        where deleted = 0 and parent_id = 0
+        <if test="userId != null and userId != ''">
+            and FIND_IN_SET(#{userId},user_id)
+        </if>
+    </select>
+
+
     <select id="getSmartAuthorGroupManager" resultType="com.template.model.pojo.SmartAuthorGroupManager" resultMap="smartAuthorGroupManager">
         select a.`id`,a.`group_id`,a.`user_id`,b.card_no,b.`name` as user_name,a.`department_manage`,a.`department_view`
             from `smart_authority` a left join `smart_user` b on a.`user_id`=b.id

+ 7 - 1
src/main/resources/mapper/template/SmartScoreMapper.xml

@@ -29,9 +29,15 @@
         <if test="semester != null and semester != ''">
             and ss.semester like '%' #{semester} '%'
         </if>
+        <if test="userGradeId != null">
+            and ss.grade_id = #{userGradeId}
+        </if>
         <if test="grade != null and grade != ''">
             and ss.grade like '%' #{grade} '%'
         </if>
+        <if test="userSchoolClass != null">
+            and ss.school_class_id = #{userSchoolClass}
+        </if>
         <if test="schoolClass != null and schoolClass != ''">
             and ss.school_class like '%' #{schoolClass} '%'
         </if>
@@ -51,7 +57,7 @@
 
 
     <select id="querySmartScores" resultType="com.template.model.vo.ScorePageVo" resultMap="smartScorePageMap">
-        select ss.id,ss.semester,ss.grade,ss.school_class,ss.subject_id,ss.exam_type,su.name,ss.card_no,ss.score from
+        select ss.semester_id,ss.user_id,ss.id,ss.semester,ss.grade_id,ss.grade,ss.school_class_id,ss.school_class,ss.subject_id,ss.exam_type,su.name,ss.card_no,ss.score from
         smart_score ss
         left join smart_user su on su.deleted = 0 and su.id = ss.user_id
         where ss.deleted = 0

+ 9 - 0
target/classes/mapper/template/SmartAuthorGroupMapper.xml

@@ -26,6 +26,15 @@
         </if>
     </select>
 
+    <select id="smartAuthorGroupSuperAdmin" resultType="com.template.model.pojo.SmartAuthorGroup" resultMap="smartAuthorGroupMap">
+        SELECT * FROM `smart_author_group`
+        where deleted = 0 and parent_id = 0
+        <if test="userId != null and userId != ''">
+            and FIND_IN_SET(#{userId},user_id)
+        </if>
+    </select>
+
+
     <select id="getSmartAuthorGroupManager" resultType="com.template.model.pojo.SmartAuthorGroupManager" resultMap="smartAuthorGroupManager">
         select a.`id`,a.`group_id`,a.`user_id`,b.card_no,b.`name` as user_name,a.`department_manage`,a.`department_view`
             from `smart_authority` a left join `smart_user` b on a.`user_id`=b.id

BIN
target/mybatis_plus-0.0.1-SNAPSHOT.jar.original