Browse Source

郭师傅

夏文涛 2 years ago
parent
commit
4f66582951
24 changed files with 1117 additions and 344 deletions
  1. 258 295
      .idea/workspace.xml
  2. 8 0
      src/main/java/com/repair/api/RepairRecordControllerAPI.java
  3. 13 4
      src/main/java/com/repair/api/RepairUserControllerAPI.java
  4. 5 0
      src/main/java/com/repair/api/RepairWorkTypeControllerAPI.java
  5. 12 12
      src/main/java/com/repair/config/MyBatisPlusConfig.java
  6. 49 4
      src/main/java/com/repair/controller/RepairRecordController.java
  7. 57 13
      src/main/java/com/repair/controller/RepairUserController.java
  8. 14 0
      src/main/java/com/repair/controller/RepairWorkTypeController.java
  9. 15 0
      src/main/java/com/repair/mapper/RepairRecordMapper.java
  10. 5 4
      src/main/java/com/repair/mapper/RepairUserMapper.java
  11. 42 0
      src/main/java/com/repair/model/request/updateAddressBookRequest.java
  12. 28 0
      src/main/java/com/repair/model/vo/AddressBookListVo.java
  13. 63 0
      src/main/java/com/repair/model/vo/AddressBookVo.java
  14. 47 0
      src/main/java/com/repair/model/vo/CollaboratorVo.java
  15. 42 0
      src/main/java/com/repair/model/vo/TeamWorkCountVo.java
  16. 15 0
      src/main/java/com/repair/services/RepairRecordService.java
  17. 7 3
      src/main/java/com/repair/services/RepairUserService.java
  18. 60 0
      src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java
  19. 17 5
      src/main/java/com/repair/services/impl/RepairUserServiceImpl.java
  20. 125 2
      src/main/resources/mapper/repair/RepairRecordMapper.xml
  21. 55 0
      src/main/resources/mapper/repair/RepairUserMapper.xml
  22. 125 2
      target/classes/mapper/repair/RepairRecordMapper.xml
  23. 55 0
      target/classes/mapper/repair/RepairUserMapper.xml
  24. BIN
      target/repair_system-0.0.1-SNAPSHOT.jar.original

+ 258 - 295
.idea/workspace.xml

@@ -2,7 +2,28 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="33456f28-da03-4d10-99dd-fd9bd193cf84" name="Default Changelist" comment="">
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/request/updateAddressBookRequest.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/AddressBookListVo.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/AddressBookVo.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/CollaboratorVo.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/TeamWorkCountVo.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairUserControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairUserControllerAPI.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairWorkTypeControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairWorkTypeControllerAPI.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/config/MyBatisPlusConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/config/MyBatisPlusConfig.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairUserController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairUserController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairWorkTypeController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairWorkTypeController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairRecordMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairRecordMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairUserMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairUserMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/services/RepairRecordService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/services/RepairRecordService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/services/RepairUserService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/services/RepairUserService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairUserServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairUserServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairUserMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairUserMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/mapper/repair/RepairUserMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/mapper/repair/RepairUserMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/repair_system-0.0.1-SNAPSHOT.jar.original" beforeDir="false" afterPath="$PROJECT_DIR$/target/repair_system-0.0.1-SNAPSHOT.jar.original" afterDir="false" />
     </list>
     <ignored path="$PROJECT_DIR$/out/" />
     <ignored path="$PROJECT_DIR$/target/" />
@@ -17,86 +38,50 @@
   </component>
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
-      <file pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="242">
-              <caret line="784" column="50" selection-start-line="784" selection-start-column="50" selection-end-line="784" selection-end-column="50" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/enumModel/eRecordStatu.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="318">
-              <caret line="15" column="15" selection-start-line="15" selection-start-column="4" selection-end-line="15" selection-end-column="15" />
-            </state>
-          </provider>
-        </entry>
-      </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="555">
-              <caret line="92" column="43" selection-start-line="92" selection-start-column="27" selection-end-line="92" selection-end-column="43" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairCollaborateRecordMapper.xml">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="222">
-              <caret line="10" column="42" selection-start-line="10" selection-start-column="16" selection-end-line="10" selection-end-column="42" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairCollaborateRecordServiceImpl.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="569">
-              <caret line="70" column="99" selection-start-line="70" selection-start-column="73" selection-end-line="70" selection-end-column="99" />
+            <state relative-caret-position="-66">
+              <caret line="831" column="10" selection-start-line="831" selection-start-column="7" selection-end-line="831" selection-end-column="10" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairLeaveMessageController.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/RepairRecordService.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="346">
-              <caret line="115" column="50" selection-start-line="115" selection-start-column="50" selection-end-line="115" selection-end-column="50" />
+            <state relative-caret-position="700">
+              <caret line="65" column="54" selection-start-line="65" selection-start-column="34" selection-end-line="65" selection-end-column="54" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/common/exception/EmsExceptionHandler.java">
+        <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="133">
-              <caret line="70" selection-start-line="70" selection-end-line="70" />
+            <state relative-caret-position="1208">
+              <caret line="418" column="321" selection-start-line="418" selection-start-column="321" selection-end-line="418" selection-end-column="321" />
+              <folding>
+                <element signature="e#2405#2409#0" expanded="true" />
+              </folding>
             </state>
           </provider>
         </entry>
       </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/transferApplyRequest.java">
+      <file pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="162">
-              <caret line="13" column="13" selection-start-line="13" selection-start-column="13" selection-end-line="13" selection-end-column="13" />
-              <folding>
-                <element signature="imports" expanded="true" />
-              </folding>
+            <state relative-caret-position="22">
+              <caret line="88" column="42" lean-forward="true" selection-start-line="88" selection-start-column="42" selection-end-line="88" selection-end-column="42" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/collaborateApplyRequest.java">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairRecordMapper.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="46">
-              <caret line="15" column="13" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="13" />
+            <state relative-caret-position="759">
+              <caret line="53" column="81" selection-start-line="53" selection-start-column="81" selection-end-line="53" selection-end-column="81" />
             </state>
           </provider>
         </entry>
@@ -104,8 +89,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="222">
-              <caret line="75" column="62" selection-start-line="75" selection-start-column="39" selection-end-line="75" selection-end-column="62" />
+            <state relative-caret-position="264">
+              <caret line="178" column="82" selection-start-line="178" selection-start-column="62" selection-end-line="178" selection-end-column="82" />
             </state>
           </provider>
         </entry>
@@ -122,27 +107,6 @@
   </component>
   <component name="FindInProjectRecents">
     <findStrings>
-      <find>getRepairsByShiftIds</find>
-      <find>main</find>
-      <find>endWorkTime</find>
-      <find>\\</find>
-      <find>downloadRepairClassesSettingExcel</find>
-      <find>excelDownload</find>
-      <find>nowDate</find>
-      <find>close</find>
-      <find>退款记录</find>
-      <find>RefundRecord</find>
-      <find>repairClose&quot;</find>
-      <find>getRepairArticleTypes</find>
-      <find>join(</find>
-      <find>queryArticleTypeList</find>
-      <find>RepairArticleChildVo</find>
-      <find>queryConsumeMaterial</find>
-      <find>getRepairParentArticleTypes</find>
-      <find>repairAreaService</find>
-      <find>queryPendingOrder</find>
-      <find>repairRecord/getRepairRecordsByUserId</find>
-      <find>getRepairRecordsByUserId</find>
       <find>join</find>
       <find>My</find>
       <find>queryMyRepairRecordList</find>
@@ -152,6 +116,27 @@
       <find>queryCollaborateRecordList</find>
       <find>closeOrder</find>
       <find>repairCollaborateRecordService</find>
+      <find>insertRepairUserSetting</find>
+      <find>case</find>
+      <find>InsertRepairUser</find>
+      <find>不考核</find>
+      <find>queryCollaborator</find>
+      <find>通讯录</find>
+      <find>getRepairWorkTypes</find>
+      <find>deleteRepairUserById</find>
+      <find>queryPageRepairUsers</find>
+      <find>examine_count</find>
+      <find>maintenance_count</find>
+      <find>timeout_count</find>
+      <find>school_id</find>
+      <find>queryManageCount</find>
+      <find>dateNow</find>
+      <find>queryTeamWorkCount</find>
+      <find>rr1</find>
+      <find>finished_count</find>
+      <find>#</find>
+      <find>queryTeamWorkExamine</find>
+      <find>RepairTechnicianVo</find>
     </findStrings>
     <replaceStrings>
       <replace>Consume</replace>
@@ -192,24 +177,6 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/request/repairRecordRequest.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/enumModel/eUserStatu.java" />
-        <option value="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairUserMapper.xml" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/vo/UserDataVo.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/RepairShiftSettingsService.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairShiftSettingsServiceImpl.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairShiftSettingsController.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairClassesSettingsController.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/common/utils/ExcelUtils.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/request/timeVo.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/common/utils/DelayedUtils.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/AutoCode.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/RepairCloseService.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairCloseMapper.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairCloseServiceImpl.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRefundRecordServiceImpl.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/repair/api/RepairCloseControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairCloseController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/model/pojo/RepairClose.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/api/RepairArticleTypeControllerAPI.java" />
@@ -241,8 +208,26 @@
         <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumablesController.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/model/request/transferApplyRequest.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/model/request/collaborateApplyRequest.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/config/MyBatisPlusConfig.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairUserMapper.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/RepairUserService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairUserServiceImpl.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/vo/AddressBookListVo.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/vo/CollaboratorVo.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/vo/AddressBookVo.java" />
+        <option value="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairUserMapper.xml" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/request/updateAddressBookRequest.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/api/RepairUserControllerAPI.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairUserController.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/api/RepairWorkTypeControllerAPI.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairWorkTypeController.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/model/vo/teamWorkCountVo.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairRecordMapper.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/RepairRecordService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java" />
+        <option value="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml" />
       </list>
     </option>
   </component>
@@ -274,7 +259,7 @@
   <component name="MavenRunner">
     <option name="skipTests" value="true" />
   </component>
-  <component name="ProjectFrameBounds" extendedState="6">
+  <component name="ProjectFrameBounds">
     <option name="x" value="-7" />
     <option name="width" value="974" />
     <option name="height" value="1039" />
@@ -554,8 +539,8 @@
       <recent name="D:\Bingo\Desktop\工作内容\报修系统\BackRepairSystem\src\main\resources\excelFile" />
     </key>
     <key name="CopyClassDialog.RECENTS_KEY">
-      <recent name="com.repair.model.request" />
       <recent name="com.repair.model.vo" />
+      <recent name="com.repair.model.request" />
       <recent name="com.repair.api" />
       <recent name="com.repair.model.enumModel" />
       <recent name="com.repair.common.utils" />
@@ -686,12 +671,12 @@
       <workItem from="1689834821108" duration="40536000" />
       <workItem from="1690247776483" duration="78760000" />
       <workItem from="1690506045062" duration="61277000" />
-      <workItem from="1690850680543" duration="129391000" />
+      <workItem from="1690850680543" duration="153723000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="553969000" />
+    <option name="totallyTimeSpent" value="578301000" />
   </component>
   <component name="TodoView">
     <todo-panel id="selected-file">
@@ -703,10 +688,10 @@
     </todo-panel>
   </component>
   <component name="ToolWindowManager">
-    <frame x="-8" y="-8" width="1936" height="1048" extended-state="6" />
+    <frame x="-7" y="0" width="974" height="1039" extended-state="0" />
     <editor active="true" />
     <layout>
-      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.13006397" />
+      <window_info content_ui="combo" id="Project" order="0" weight="0.12260128" />
       <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" />
@@ -717,13 +702,13 @@
       <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" weight="0.32603937" />
-      <window_info anchor="bottom" id="Run" order="2" weight="0.5314917" />
+      <window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.520442" />
       <window_info anchor="bottom" id="Debug" order="3" weight="0.15469614" />
       <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" weight="0.32932165" />
       <window_info anchor="bottom" id="Spring" order="7" weight="0.32932165" />
-      <window_info anchor="bottom" id="Terminal" order="8" />
+      <window_info anchor="bottom" id="Terminal" order="8" weight="0.32928178" />
       <window_info anchor="bottom" id="Docker" order="9" />
       <window_info anchor="bottom" id="Messages" order="10" weight="0.30634573" />
       <window_info anchor="bottom" id="Java Enterprise" order="11" />
@@ -735,7 +720,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.61993605" />
+      <window_info anchor="right" id="Maven" order="3" weight="0.22538294" />
       <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" />
@@ -837,378 +822,356 @@
     <option name="FILTER_TARGETS" value="false" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/ConsumableExcelVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/pojo/RepairCollaborateRecord.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="19" column="13" selection-start-line="19" selection-start-column="13" selection-end-line="19" selection-end-column="13" />
+        <state relative-caret-position="248">
+          <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/repair/mapper/RepairArticleTypeMapper.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/CollaborateRecordVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="368">
-          <caret line="23" column="29" selection-start-line="23" selection-start-column="9" selection-end-line="23" selection-end-column="29" />
+        <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/repair/services/RepairArticleTypeService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/transferApplyRequest.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="493">
-          <caret line="31" column="29" selection-start-line="31" selection-start-column="9" selection-end-line="31" selection-end-column="29" />
+        <state relative-caret-position="162">
+          <caret line="13" column="13" selection-start-line="13" selection-start-column="13" selection-end-line="13" selection-end-column="13" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairUserController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/collaborateApplyRequest.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="295">
-          <caret line="63" column="42" selection-start-line="63" selection-start-column="25" selection-end-line="63" selection-end-column="42" />
+        <state relative-caret-position="46">
+          <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/resources/mapper/repair/RepairWorkTypeMapper.xml">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/WxAccessTokenMapper.xml">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairUserMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairCollaborateRecordServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="608">
-          <caret line="69" column="100" selection-start-line="69" selection-start-column="67" selection-end-line="69" selection-end-column="100" />
+        <state relative-caret-position="569">
+          <caret line="70" column="99" selection-start-line="70" selection-start-column="73" selection-end-line="70" selection-end-column="99" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairCloseMapper.xml">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/RepairConsumeService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/common/exception/EmsExceptionHandler.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="621">
-          <caret line="35" column="32" selection-start-line="35" selection-start-column="4" selection-end-line="35" selection-end-column="32" />
+        <state relative-caret-position="133">
+          <caret line="70" selection-start-line="70" selection-end-line="70" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairConsumeMapper.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairCollaborateRecordMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="414">
-          <caret line="27" column="4" lean-forward="true" selection-start-line="27" selection-start-column="4" selection-end-line="27" selection-end-column="32" />
+        <state relative-caret-position="222">
+          <caret line="10" column="42" selection-start-line="10" selection-start-column="16" selection-end-line="10" selection-end-column="42" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairArticleConsumeVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/config/WxOpenidConfig.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="460">
-          <caret line="24" column="15" selection-start-line="24" selection-start-column="15" selection-end-line="24" selection-end-column="15" />
+        <state relative-caret-position="299">
+          <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/repair/services/impl/RepairConsumeServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/config/MyBatisPlusConfig.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="608">
-          <caret line="84" column="60" selection-start-line="84" selection-start-column="40" selection-end-line="84" selection-end-column="60" />
+        <state relative-caret-position="166">
+          <caret line="25" column="11" lean-forward="true" selection-start-line="25" selection-start-column="11" selection-end-line="25" selection-end-column="11" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairConsumeMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/config/MySecurity.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="121">
-          <caret line="68" column="43" selection-start-line="68" selection-start-column="43" selection-end-line="68" selection-end-column="43" />
+        <state relative-caret-position="138">
+          <caret line="7" column="13" selection-start-line="7" selection-start-column="13" selection-end-line="7" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairArticleTypeControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/config/SmsConfig.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-13">
-          <caret line="11" column="41" lean-forward="true" selection-start-line="11" selection-start-column="41" selection-end-line="11" selection-end-column="41" />
+        <state relative-caret-position="272">
+          <caret line="16" column="13" selection-start-line="16" selection-start-column="13" selection-end-line="16" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairArticleTypeServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/ConsumableExcelVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="130">
-          <caret line="74" column="27" selection-start-line="74" selection-start-column="27" selection-end-line="74" selection-end-column="27" />
+        <state relative-caret-position="253">
+          <caret line="19" column="13" selection-start-line="19" selection-start-column="13" selection-end-line="19" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/5.3.22/spring-web-5.3.22-sources.jar!/org/springframework/web/method/support/InvocableHandlerMethod.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/ConsumablePageVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="332">
-          <caret line="213" selection-start-line="213" selection-end-line="213" />
+        <state relative-caret-position="253">
+          <caret line="16" column="13" selection-start-line="16" selection-start-column="13" selection-end-line="16" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairArticleTypeMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/EvaluateVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="375">
-          <caret line="27" column="71" selection-start-line="27" selection-start-column="71" selection-end-line="27" selection-end-column="71" />
+        <state relative-caret-position="253">
+          <caret line="16" column="13" selection-start-line="16" selection-start-column="13" selection-end-line="16" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairArticleChildVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/LoginVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="424">
-          <caret line="23" column="18" selection-start-line="23" selection-start-column="18" selection-end-line="23" selection-end-column="18" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="667">
+          <caret line="29" column="26" lean-forward="true" selection-start-line="14" selection-start-column="4" selection-end-line="29" selection-end-column="26" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairArticleTypeController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/WxAccessTokenMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairWorkTypeMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairTransferRecordMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairTrackRecordMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairShiftSettingsMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairSchoolMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRefundRecordMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairSystemMessagesMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-109">
-          <caret line="116" column="15" selection-start-line="116" selection-start-column="15" selection-end-line="116" selection-end-column="15" />
+        <state>
+          <caret column="3" selection-start-column="3" selection-end-column="3" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/insertRepairConsumeRequest.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairSystemSettingMapper.xml">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/DelayedUtils.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="41">
-          <caret line="18" column="13" selection-start-line="18" selection-start-column="13" selection-end-line="18" selection-end-column="13" />
+        <state relative-caret-position="1919">
+          <caret line="205" column="25" lean-forward="true" selection-start-line="205" selection-start-column="25" selection-end-line="205" selection-end-column="25" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairConsumeControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairUserServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="184">
-          <caret line="21" column="50" selection-start-line="21" selection-start-column="27" selection-end-line="21" selection-end-column="50" />
+        <state relative-caret-position="631">
+          <caret line="138" column="47" selection-start-line="138" selection-start-column="31" selection-end-line="138" selection-end-column="47" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairTechnicianVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/CollaboratorVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-660">
-          <caret line="19" column="11" selection-start-line="19" selection-start-column="11" selection-end-line="19" selection-end-column="11" />
+        <state relative-caret-position="685">
+          <caret line="45" column="5" selection-start-line="39" selection-start-column="4" selection-end-line="45" selection-end-column="5" />
           <folding>
             <element signature="imports" expanded="true" />
-            <element signature="e#1045#1046#0" expanded="true" />
-            <element signature="e#1136#1137#0" expanded="true" />
+            <element signature="e#562#563#0" expanded="true" />
+            <element signature="e#593#594#0" expanded="true" />
+            <element signature="e#641#642#0" expanded="true" />
+            <element signature="e#681#682#0" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/TimeExchange.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/AddressBookListVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="453">
-          <caret line="637" lean-forward="true" selection-start-line="637" selection-end-line="637" />
+        <state relative-caret-position="561">
+          <caret line="25" column="26" selection-start-line="25" selection-start-column="26" selection-end-line="25" selection-end-column="26" />
           <folding>
             <element signature="imports" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/insertRepairAssociationRequest.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="582">
-          <caret line="35" column="29" lean-forward="true" selection-start-line="19" selection-start-column="4" selection-end-line="35" selection-end-column="29" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumeController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairUserMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-1035">
-          <caret line="79" column="45" selection-start-line="79" selection-start-column="45" selection-end-line="79" selection-end-column="45" />
+        <state relative-caret-position="510">
+          <caret line="110" column="116" selection-start-line="110" selection-start-column="116" selection-end-line="110" selection-end-column="116" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairCollaborateRecordController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/updateUserDataRequest.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="248">
-          <caret line="26" column="32" selection-start-line="26" selection-start-column="32" selection-end-line="26" selection-end-column="32" />
+        <state relative-caret-position="-840">
+          <caret line="17" column="13" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/pojo/RepairConsumables.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/RepairUserService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="60" column="19" selection-start-line="60" selection-start-column="19" selection-end-line="60" selection-end-column="19" />
+        <state relative-caret-position="259">
+          <caret line="22" column="7" selection-start-line="22" selection-start-column="4" selection-end-line="22" selection-end-column="7" />
         </state>
       </provider>
     </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.0.5/mybatis-plus-extension-3.0.5.jar!/com/baomidou/mybatisplus/extension/service/IService.class">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/updateAddressBookRequest.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="207">
-          <caret line="17" column="19" selection-start-line="17" selection-start-column="12" selection-end-line="17" selection-end-column="19" />
+        <state relative-caret-position="621">
+          <caret line="39" column="35" selection-start-line="39" selection-start-column="20" selection-end-line="39" selection-end-column="35" />
           <folding>
-            <element signature="e#487#488#0" expanded="true" />
-            <element signature="e#540#541#0" expanded="true" />
+            <element signature="imports" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/RepairConsumablesService.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairUserControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="536">
-          <caret line="38" column="11" selection-start-line="38" selection-start-column="4" selection-end-line="38" selection-end-column="11" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairConsumablesServiceImpl.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="513">
-          <caret line="99" column="18" selection-start-line="99" selection-start-column="18" selection-end-line="99" selection-end-column="18" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/MaintenanceConsumeablesRequest.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="477">
-          <caret line="27" column="27" selection-start-line="27" selection-start-column="27" selection-end-line="27" selection-end-column="27" />
+        <state relative-caret-position="589">
+          <caret line="46" column="69" selection-start-line="46" selection-start-column="69" selection-end-line="46" selection-end-column="69" />
           <folding>
             <element signature="imports" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/changePasswordRequest.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="115">
-          <caret line="7" column="7" lean-forward="true" selection-start-line="7" selection-start-column="7" selection-end-line="7" selection-end-column="7" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/pojo/RepairRecord.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairWorkTypeVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="363">
-          <caret line="69" column="35" selection-start-line="69" selection-start-column="35" selection-end-line="69" selection-end-column="35" />
+        <state relative-caret-position="253">
+          <caret line="11" column="29" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="29" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/result/CommonResult.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairWorkTypeControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="245">
-          <caret line="17" column="13" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
+        <state relative-caret-position="474">
+          <caret line="32" column="38" lean-forward="true" selection-start-line="32" selection-start-column="38" selection-end-line="32" selection-end-column="38" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/insertConsumablesRequest.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairUserController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="491">
-          <caret line="28" column="19" selection-start-line="28" selection-start-column="19" selection-end-line="28" selection-end-column="19" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="543">
+          <caret line="225" column="80" selection-start-line="225" selection-start-column="80" selection-end-line="225" selection-end-column="80" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumablesController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairWorkTypeController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="594">
-          <caret line="167" column="28" selection-start-line="167" selection-start-column="28" selection-end-line="167" selection-end-column="28" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="2231">
+          <caret line="111" column="33" selection-start-line="111" selection-start-column="33" selection-end-line="111" selection-end-column="33" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/finishOrderRequest.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="446">
-          <caret line="30" column="7" lean-forward="true" selection-start-line="30" selection-start-column="7" selection-end-line="30" selection-end-column="7" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairConsumablesControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/enumModel/eRecordStatu.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="293">
-          <caret line="39" column="91" selection-start-line="39" selection-start-column="91" selection-end-line="39" selection-end-column="91" />
+        <state relative-caret-position="318">
+          <caret line="15" column="15" selection-start-line="15" selection-start-column="4" selection-end-line="15" selection-end-column="15" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/MaintenanceTechnicianVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="153">
-          <caret line="42" column="39" selection-start-line="42" selection-start-column="16" selection-end-line="42" selection-end-column="39" />
+        <state relative-caret-position="460">
+          <caret line="20" column="32" selection-start-line="20" selection-start-column="16" selection-end-line="20" selection-end-column="32" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairManageCountVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="222">
-          <caret line="75" column="62" selection-start-line="75" selection-start-column="39" selection-end-line="75" selection-end-column="62" />
+        <state relative-caret-position="529">
+          <caret line="50" column="27" selection-start-line="50" selection-start-column="16" selection-end-line="50" selection-end-column="27" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairLeaveMessageController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/AddressBookVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="346">
-          <caret line="115" column="50" selection-start-line="115" selection-start-column="50" selection-end-line="115" selection-end-column="50" />
+        <state relative-caret-position="23">
+          <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/repair/model/pojo/RepairCollaborateRecord.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairUserMapper.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="248">
-          <caret line="45" column="19" selection-start-line="45" selection-start-column="19" selection-end-line="45" selection-end-column="19" />
+        <state relative-caret-position="506">
+          <caret line="29" column="40" selection-start-line="29" selection-start-column="24" selection-end-line="29" selection-end-column="40" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/CollaborateRecordVo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/TeamWorkCountVo.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/repair/model/request/transferApplyRequest.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/mapper/RepairRecordMapper.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="162">
-          <caret line="13" column="13" selection-start-line="13" selection-start-column="13" selection-end-line="13" selection-end-column="13" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="759">
+          <caret line="53" column="81" selection-start-line="53" selection-start-column="81" selection-end-line="53" selection-end-column="81" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/collaborateApplyRequest.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairRecordPageVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="46">
-          <caret line="15" column="13" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="13" />
+        <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/repair/services/impl/RepairCollaborateRecordServiceImpl.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/RepairRecordService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="569">
-          <caret line="70" column="99" selection-start-line="70" selection-start-column="73" selection-end-line="70" selection-end-column="99" />
+        <state relative-caret-position="700">
+          <caret line="65" column="54" selection-start-line="65" selection-start-column="34" selection-end-line="65" selection-end-column="54" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/common/exception/EmsExceptionHandler.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairTechnicianVo.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="133">
-          <caret line="70" selection-start-line="70" selection-end-line="70" />
+        <state relative-caret-position="-188">
+          <caret line="17" column="13" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
+          <folding>
+            <element signature="imports" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairCollaborateRecordMapper.xml">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="222">
-          <caret line="10" column="42" selection-start-line="10" selection-start-column="16" selection-end-line="10" selection-end-column="42" />
+        <state relative-caret-position="264">
+          <caret line="178" column="82" selection-start-line="178" selection-start-column="62" selection-end-line="178" selection-end-column="82" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java">
+    <entry file="file://$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="555">
-          <caret line="92" column="43" selection-start-line="92" selection-start-column="27" selection-end-line="92" selection-end-column="43" />
+        <state relative-caret-position="1208">
+          <caret line="418" column="321" selection-start-line="418" selection-start-column="321" selection-end-line="418" selection-end-column="321" />
+          <folding>
+            <element signature="e#2405#2409#0" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/model/enumModel/eRecordStatu.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="318">
-          <caret line="15" column="15" selection-start-line="15" selection-start-column="4" selection-end-line="15" selection-end-column="15" />
+        <state relative-caret-position="-66">
+          <caret line="831" column="10" selection-start-line="831" selection-start-column="7" selection-end-line="831" selection-end-column="10" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairRecordController.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/repair/api/RepairRecordControllerAPI.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="242">
-          <caret line="784" column="50" selection-start-line="784" selection-start-column="50" selection-end-line="784" selection-end-column="50" />
+        <state relative-caret-position="22">
+          <caret line="88" column="42" lean-forward="true" selection-start-line="88" selection-start-column="42" selection-end-line="88" selection-end-column="42" />
         </state>
       </provider>
     </entry>

+ 8 - 0
src/main/java/com/repair/api/RepairRecordControllerAPI.java

@@ -93,4 +93,12 @@ public interface RepairRecordControllerAPI {
     @PostMapping(value = "/collaborateApply")
     @ApiOperation(value = "协作申请", notes = "协作申请", httpMethod = "POST")
     CommonResult collaborateApply(@Validated @RequestBody collaborateApplyRequest data, BindingResult bindingResult) throws Exception;
+
+    @GetMapping(value = "/queryTeamWorkCount")
+    @ApiOperation(value = "根据校区ID获取团队工单报修数量", notes = "根据校区ID获取团队工单报修数量", httpMethod = "GET")
+    CommonResult queryTeamWorkCount(@RequestParam int schoolId);
+
+    @GetMapping(value = "/queryTeamWorkPage")
+    @ApiOperation(value = "根据校区ID获取团队工单报修分页数据", notes = "根据校区ID获取团队工单报修分页数据", httpMethod = "GET")
+    CommonResult queryTeamWorkPage(@RequestParam int currentPage, @RequestParam int pageCount, @RequestParam int state, @RequestParam int schoolId);
 }

+ 13 - 4
src/main/java/com/repair/api/RepairUserControllerAPI.java

@@ -1,6 +1,7 @@
 package com.repair.api;
 
 import com.repair.model.request.insertRepairUserRequest;
+import com.repair.model.request.updateAddressBookRequest;
 import com.repair.model.request.updateUserDataRequest;
 import com.repair.model.result.CommonResult;
 import io.swagger.annotations.Api;
@@ -30,10 +31,18 @@ public interface RepairUserControllerAPI {
     CommonResult deleteRepairUserById(@RequestParam int id);
 
     @GetMapping(value = "/queryRepairUserByCardNumber")
-    @ApiOperation(value = "根据ID删除指定用户", notes = "根据ID删除指定用户", httpMethod = "GET")
+    @ApiOperation(value = "根据卡号删除指定用户", notes = "根据卡号删除指定用户", httpMethod = "GET")
     CommonResult queryRepairUserByCardNumber(@RequestParam String cardNumber);
 
-    @GetMapping(value = "/queryPageRepairUsers")
-    @ApiOperation(value = "获取添加人员分页数据", notes = "获取添加人员分页数据", httpMethod = "GET")
-    CommonResult queryPageRepairUsers(@RequestParam int currentPage, @RequestParam int pageCount, Integer schoolId, String phone, Integer workTypId);
+    @GetMapping(value = "/getCollaborator")
+    @ApiOperation(value = "获取除自己以外的协作人员分页数据", notes = "获取除自己以外的协作人员分页数据", httpMethod = "GET")
+    CommonResult getCollaborator(@RequestParam int currentPage, @RequestParam int pageCount, @RequestParam Integer schoolId,@RequestParam Integer userId, String keyWord);
+
+    @GetMapping(value = "/getAddressBook")
+    @ApiOperation(value = "获取通讯录列表数据", notes = "获取通讯录列表数据", httpMethod = "GET")
+    CommonResult getAddressBook(@RequestParam Integer schoolId,@RequestParam Integer userId, String keyWord);
+
+    @PostMapping(value = "/updateAddressBook")
+    @ApiOperation(value = "通讯录编辑数据", notes = "通讯录编辑数据", httpMethod = "POST")
+    CommonResult updateAddressBook(@Validated @RequestBody updateAddressBookRequest uabp, BindingResult bindingResult);
 }

+ 5 - 0
src/main/java/com/repair/api/RepairWorkTypeControllerAPI.java

@@ -32,7 +32,12 @@ public interface RepairWorkTypeControllerAPI {
     @ApiOperation(value = "查询工种列表", notes = "查询工种列表", httpMethod = "GET")
     CommonResult getRepairWorkTypes();
 
+    @GetMapping(value = "/getReceivingState")
+    @ApiOperation(value = "接单状态数据列表", notes = "接单状态数据列表", httpMethod = "GET")
+    CommonResult getReceivingState();
+
     @GetMapping(value = "/getRepaairIdentitys")
     @ApiOperation(value = "查询身份列表", notes = "查询身份列表", httpMethod = "GET")
     CommonResult getRepairIdentitys();
+
 }

+ 12 - 12
src/main/java/com/repair/config/MyBatisPlusConfig.java

@@ -36,17 +36,17 @@ public class MyBatisPlusConfig {
     }
 
 
-    /**
-     * SQL执行效率插件
-     * 在控制台显示sql语句
-     */
-    @Bean
-    @Profile({"dev","test"})// 设置 dev test 环境开启,保证我们的效率
-    public PerformanceInterceptor performanceInterceptor() {
-        PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
-        performanceInterceptor.setMaxTime(3000); //ms 设置sql执行的最大时间,如果超过了则不执行
-        performanceInterceptor.setFormat(true);
-        return performanceInterceptor;
-    }
+//    /**
+//     * SQL执行效率插件
+//     * 在控制台显示sql语句
+//     */
+//    @Bean
+//    @Profile({"dev","test"})// 设置 dev test 环境开启,保证我们的效率
+//    public PerformanceInterceptor performanceInterceptor() {
+//        PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
+//        performanceInterceptor.setMaxTime(3000); //ms 设置sql执行的最大时间,如果超过了则不执行
+//        performanceInterceptor.setFormat(true);
+//        return performanceInterceptor;
+//    }
 
 }

+ 49 - 4
src/main/java/com/repair/controller/RepairRecordController.java

@@ -732,7 +732,7 @@ public class RepairRecordController implements RepairRecordControllerAPI {
                 return CommonResult.fail("订单不存在,申请失败");
             }
 
-            if(recordData.getMaintenanceState() == eRecordStatu.Transfer.getValue()){
+            if (recordData.getMaintenanceState() == eRecordStatu.Transfer.getValue()) {
                 return CommonResult.fail("该订单已发起转单审核,请勿重复操作");
             }
 
@@ -781,7 +781,7 @@ public class RepairRecordController implements RepairRecordControllerAPI {
                 return CommonResult.fail("订单不存在,申请失败");
             }
 
-            if(recordData.getMaintenanceState() == eRecordStatu.Collaborate.getValue()){
+            if (recordData.getMaintenanceState() == eRecordStatu.Collaborate.getValue()) {
                 return CommonResult.fail("该订单已发起协作审核,请勿重复操作");
             }
 
@@ -791,7 +791,7 @@ public class RepairRecordController implements RepairRecordControllerAPI {
 
             //协作人中不能包含申请人
             long count = data.getCollaborator().stream().filter(e -> e.equals(data.getUserId())).count();
-            if(count > 0){
+            if (count > 0) {
                 return CommonResult.fail("协作人中不能包含当前申请人");
             }
 
@@ -801,7 +801,7 @@ public class RepairRecordController implements RepairRecordControllerAPI {
             rcr.setRemark(data.getRemark());
             rcr.setUserId(data.getUserId());
             rcr.setApprovalStatu(2);
-            rcr.setCollaborator(StringUtils.join(data.getCollaborator(),','));
+            rcr.setCollaborator(StringUtils.join(data.getCollaborator(), ','));
 
             int result = repairCollaborateRecordService.insertRepairCollaborateRecord(rcr);
             if (result <= 0) {
@@ -820,5 +820,50 @@ public class RepairRecordController implements RepairRecordControllerAPI {
 
         return CommonResult.ok("协作审核发起成功");
     }
+
+    @Override
+    public CommonResult queryTeamWorkCount(int schoolId) {
+        String dateNow = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
+        TeamWorkCountVo result = repairRecordService.queryTeamWorkCount(schoolId, dateNow);
+        return CommonResult.ok(result);
+    }
+
+    /**
+     * 待审核  1
+     * 待接单  2
+     * 维修中  3
+     * 已完成  4
+     * 已超时  5
+     * 已关单  6
+     */
+    @Override
+    public CommonResult queryTeamWorkPage(int currentPage, int pageCount, int state, int schoolId) {
+        PageUtils<RepairTechnicianVo> result = null;
+        String dateNow = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
+        switch (state) {
+            case 1:
+                result = repairRecordService.queryTeamWorkExamine(currentPage, pageCount, schoolId);
+                break;
+            case 2:
+                result = repairRecordService.queryTeamWorkPending(currentPage, pageCount, schoolId, dateNow);
+                break;
+            case 3:
+                result = repairRecordService.queryTeamWorkMaintenance(currentPage, pageCount, schoolId, dateNow);
+                break;
+            case 4:
+                result = repairRecordService.queryTeamWorkFinished(currentPage, pageCount, schoolId);
+                break;
+            case 5:
+                result = repairRecordService.queryTeamWorkTimeout(currentPage, pageCount, schoolId, dateNow);
+                break;
+            case 6:
+                result = repairRecordService.queryTeamWorkClosed(currentPage, pageCount, schoolId);
+                break;
+            default:
+                break;
+        }
+
+        return CommonResult.ok(result);
+    }
 }
 

+ 57 - 13
src/main/java/com/repair/controller/RepairUserController.java

@@ -5,9 +5,13 @@ import com.repair.common.utils.paramUtils;
 import com.repair.model.enumModel.eUserZZ;
 import com.repair.model.pojo.RepairUser;
 import com.repair.model.request.insertRepairUserRequest;
+import com.repair.model.request.updateAddressBookRequest;
 import com.repair.model.request.updateUserDataRequest;
 import com.repair.model.result.CommonResult;
 import com.repair.model.result.PageUtils;
+import com.repair.model.vo.AddressBookListVo;
+import com.repair.model.vo.AddressBookVo;
+import com.repair.model.vo.CollaboratorVo;
 import com.repair.model.vo.RepairUserVo;
 import com.repair.services.RepairUserService;
 import org.apache.commons.lang3.StringUtils;
@@ -16,7 +20,10 @@ import org.springframework.validation.BindingResult;
 
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -50,8 +57,7 @@ public class RepairUserController implements RepairUserControllerAPI {
         RepairUser ru = new RepairUser();
         if (data != null && !data.getUserZzid().equals(eUserZZ.User.getValue())) {
             return CommonResult.fail("该卡号已存在!");
-        }
-        else if(data != null){
+        } else if (data != null) {
             ru.setId(data.getId());
         }
         ru.setUserName(irur.getUserName());
@@ -61,16 +67,16 @@ public class RepairUserController implements RepairUserControllerAPI {
         ru.setUserPhone(irur.getUserPhone());
         ru.setSchoolId(irur.getSchoolId());
         ru.setWorkType(irur.getWorkType());
+        ru.setState(1);//设置大量接单
         ru.setArticle_id(StringUtils.join(irur.getArticleIds(), ','));
         ru.setBuildId(StringUtils.join(irur.getBuildIds(), ','));
         ru.setAcceptanceAssessTime(irur.getAcceptanceAssessTime());
         ru.setMaintenanceAssessTime(irur.getMaintenanceAssessTime());
 
-        int result =0;
-        if(data != null){
+        int result = 0;
+        if (data != null) {
             result = repairUserService.updateRepairUser(ru);
-        }
-        else{
+        } else {
             result = repairUserService.insertRepairUser(ru);
         }
 
@@ -127,17 +133,17 @@ public class RepairUserController implements RepairUserControllerAPI {
     public CommonResult queryPageRepairUser(int currentPage, int pageCount, String keyWord, Integer teamId, Integer schoolId) {
         PageUtils<RepairUserVo> result = repairUserService.queryPageRepairUser(currentPage, pageCount, keyWord, teamId, schoolId);
 
-        for (RepairUserVo r :result.getList()) {
-            if(r.getBuildId() != null){
+        for (RepairUserVo r : result.getList()) {
+            if (r.getBuildId() != null) {
                 r.setBuildIds(Arrays.asList(r.getBuildId().split(",")));
             }
-            if(r.getBuildName() != null){
+            if (r.getBuildName() != null) {
                 r.setBuildNames(Arrays.asList(r.getBuildName().split(",")));
             }
-            if(r.getArticleId() != null){
+            if (r.getArticleId() != null) {
                 r.setArticleIds(Arrays.asList(r.getArticleId().split(",")));
             }
-            if(r.getArticleName() != null){
+            if (r.getArticleName() != null) {
                 r.setArticleNames(Arrays.asList(r.getArticleName().split(",")));
             }
         }
@@ -177,9 +183,47 @@ public class RepairUserController implements RepairUserControllerAPI {
     }
 
     @Override
-    public CommonResult queryPageRepairUsers(int currentPage, int pageCount, Integer schoolId, String phone, Integer workTypId) {
+    public CommonResult getCollaborator(int currentPage, int pageCount, Integer schoolId, Integer userId, String keyWord) {
+        PageUtils<CollaboratorVo> result = repairUserService.queryCollaborator(currentPage, pageCount, userId, schoolId, keyWord);
+        return CommonResult.ok(result);
+    }
+
+    @Override
+    public CommonResult getAddressBook(Integer schoolId, Integer userId, String keyWord) {
+        List<AddressBookVo> abs = repairUserService.queryAddressBook(userId, schoolId, keyWord);
+
+        List<AddressBookListVo> result = new ArrayList<>();
+        for (int i = 1; i <= 2; i++) {
+            AddressBookListVo data = new AddressBookListVo();
+            data.setId(i);
+            data.setName(i == 1 ? "校方人员" : "第三方人员");
+            List<AddressBookVo> abDatas = abs.stream().filter(e -> e.getTeamId() == data.getId()).collect(Collectors.toList());
+            data.setList(abDatas);
+            result.add(data);
+        }
+
+        return CommonResult.ok(result);
+    }
+
+    @Override
+    public CommonResult updateAddressBook(updateAddressBookRequest uabp, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            String st = paramUtils.getParamError(bindingResult);
+            return CommonResult.fail(st);
+        }
+
+        RepairUser data = repairUserService.getRepairById(uabp.getId());
+        if (data == null) {
+            return CommonResult.fail("当前数据不存在,编辑失败!");
+        }
+
+        data.setState(uabp.getState());
+        data.setWorkType(uabp.getWorkType());
+        data.setAcceptanceAssessTime(uabp.getAcceptanceTime());
+        data.setMaintenanceAssessTime(uabp.getMaintenanceTime());
+        int result = repairUserService.updateRepairUser(data);
 
-        return null;
+        return result <= 0 ? CommonResult.fail("更新失败") : CommonResult.ok("更新成功");
     }
 }
 

+ 14 - 0
src/main/java/com/repair/controller/RepairWorkTypeController.java

@@ -99,6 +99,20 @@ public class RepairWorkTypeController implements RepairWorkTypeControllerAPI {
     }
 
     @Override
+    public CommonResult getReceivingState() {
+        List<RepairWorkTypeVo> rs = new ArrayList<>();
+        RepairWorkTypeVo r = new RepairWorkTypeVo();
+        r.setId(1);
+        r.setName("大量接单");
+        rs.add(r);
+        RepairWorkTypeVo r1 = new RepairWorkTypeVo();
+        r1.setId(2);
+        r1.setName("停止接单");
+        rs.add(r1);
+        return CommonResult.ok(rs);
+    }
+
+    @Override
     public CommonResult getRepairIdentitys() {
         List<RepairWorkTypeVo> result = new ArrayList<>();
         for(int i = 0;i<4;i++){

+ 15 - 0
src/main/java/com/repair/mapper/RepairRecordMapper.java

@@ -38,4 +38,19 @@ public interface RepairRecordMapper extends BaseMapper<RepairRecord> {
     IPage<RepairRecordPageVo> queryTimeout(IPage<RepairRecordPageVo> page, @Param("keyWord") String keyWord, @Param("startTime") String startTime, @Param("endTime") String endTime);
 
     IPage<pendingOrderVo> queryPendingOrder(IPage<pendingOrderVo> page, @Param("userId") Integer userId);
+
+    TeamWorkCountVo queryTeamWorkCount(@Param("schoolId") Integer schoolId, @Param("dateNow") String dateNow);
+
+    IPage<RepairTechnicianVo> queryTeamWorkExamine(IPage<RepairTechnicianVo> page,@Param("schoolId") Integer schoolId);
+
+    IPage<RepairTechnicianVo> queryTeamWorkPending(IPage<RepairTechnicianVo> page,@Param("schoolId") Integer schoolId, @Param("dateNow") String dateNow);
+
+    IPage<RepairTechnicianVo> queryTeamWorkMaintenance(IPage<RepairTechnicianVo> page,@Param("schoolId") Integer schoolId, @Param("dateNow") String dateNow);
+
+    IPage<RepairTechnicianVo> queryTeamWorkFinished(IPage<RepairTechnicianVo> page,@Param("schoolId") Integer schoolId);
+
+    IPage<RepairTechnicianVo> queryTeamWorkTimeout(IPage<RepairTechnicianVo> page,@Param("schoolId") Integer schoolId, @Param("dateNow") String dateNow);
+
+    IPage<RepairTechnicianVo> queryTeamWorkClosed(IPage<RepairTechnicianVo> page,@Param("schoolId") Integer schoolId);
+
 }

+ 5 - 4
src/main/java/com/repair/mapper/RepairUserMapper.java

@@ -3,10 +3,7 @@ package com.repair.mapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.repair.model.pojo.RepairUser;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.repair.model.vo.RepairConsumeVo;
-import com.repair.model.vo.RepairLogisticsVo;
-import com.repair.model.vo.RepairUserVo;
-import com.repair.model.vo.UserDataVo;
+import com.repair.model.vo.*;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
@@ -27,4 +24,8 @@ public interface RepairUserMapper extends BaseMapper<RepairUser> {
     List<RepairLogisticsVo> queryLogisticsList(@Param("recordId") Integer recordId);
 
     UserDataVo queryUserData(@Param("userId") Integer userId, @Param("dateNow") String dateNow);
+
+    IPage<CollaboratorVo> queryCollaborator(IPage<CollaboratorVo> page, @Param("userId") Integer userId, @Param("schoolId") Integer schoolId, @Param("keyWord") String keyWord);
+
+    List<AddressBookVo> queryAddressBook(@Param("userId") Integer userId, @Param("schoolId") Integer schoolId, @Param("keyWord") String keyWord);
 }

+ 42 - 0
src/main/java/com/repair/model/request/updateAddressBookRequest.java

@@ -0,0 +1,42 @@
+package com.repair.model.request;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * 通讯录编辑
+ */
+@Data
+public class updateAddressBookRequest {
+    /**
+     * 数据ID
+     */
+    @NotNull(message = "数据ID不能为空")
+    private Integer id;
+
+    /**
+     * 状态
+     */
+    @NotNull(message = "状态不能为空")
+    private Integer state;
+
+    /**
+     * 工种
+     */
+    @NotNull(message = "工种不能为空")
+    private Integer workType;
+
+    /**
+     * 接单考核时间
+     */
+    @NotNull(message = "接单考核时间不能为空")
+    private Integer acceptanceTime;
+
+    /**
+     * 维修考核时间
+     */
+    @NotNull(message = "维修考核时间不能为空")
+    private Integer maintenanceTime;
+
+}

+ 28 - 0
src/main/java/com/repair/model/vo/AddressBookListVo.java

@@ -0,0 +1,28 @@
+package com.repair.model.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/8/7 星期一 8:48
+ * @Description: com.repair.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class AddressBookListVo {
+    /**
+     * 维修班数据ID
+     */
+    private int id;
+    /**
+     * 维修班名称
+     */
+    private String name;
+    /**
+     * 通讯录数据集合
+     */
+    private List<AddressBookVo> list;
+
+}

+ 63 - 0
src/main/java/com/repair/model/vo/AddressBookVo.java

@@ -0,0 +1,63 @@
+package com.repair.model.vo;
+
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/8/7 星期一 8:48
+ * @Description: com.repair.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class AddressBookVo {
+    /**
+     * 数据ID
+     */
+    private int id;
+    /**
+     * 维修班
+     */
+    private int teamId;
+    /**
+     * 用户名称
+     */
+    private String userName;
+    /**
+     * 用户手机号
+     */
+    private String userPhone;
+    /**
+     * 工种ID
+     */
+    private Integer workType;
+    /**
+     * 工种名称
+     */
+    private String workTypeName;
+    /**
+     * 接单ID
+     */
+    private Integer state;
+    /**
+     * 接单状态
+     */
+    private String stateStr;
+
+    public String getStateStr() {
+        return state == 1 ? "大量接单" : "停止接单";
+    }
+
+    public void setStateStr(String stateStr) {
+        this.stateStr = stateStr;
+    }
+
+    /**
+     * 接单考核时间
+     */
+    private Integer acceptanceTime;
+    /**
+     * 维修考核时间
+     */
+    private Integer maintenanceTime;
+
+}

+ 47 - 0
src/main/java/com/repair/model/vo/CollaboratorVo.java

@@ -0,0 +1,47 @@
+package com.repair.model.vo;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/8/7 星期一 8:48
+ * @Description: com.repair.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class CollaboratorVo {
+    /**
+     * 数据ID
+     */
+    private int id;
+    /**
+     * 用户名称
+     */
+    private String userName;
+    /**
+     * 用户手机号
+     */
+    private String userPhone;
+    /**
+     * 工种名称
+     */
+    private String workTypeName;
+    /**
+     * 接单状态
+     */
+    @JsonIgnore
+    private int state;
+    /**
+     * 接单状态
+     */
+    private String stateStr;
+
+    public String getStateStr() {
+        return state == 1 ? "大量接单" : "停止接单";
+    }
+
+    public void setStateStr(String stateStr) {
+        this.stateStr = stateStr;
+    }
+}

+ 42 - 0
src/main/java/com/repair/model/vo/TeamWorkCountVo.java

@@ -0,0 +1,42 @@
+package com.repair.model.vo;
+
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/8/1 星期二 15:23
+ * @Description: com.repair.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class TeamWorkCountVo {
+    /**
+     * 待审核
+     */
+    private int examineCount;
+
+    /**
+     * 待接单
+     */
+    private int receivingCount;
+
+    /**
+     * 维修中
+     */
+    private int maintenanceCount;
+
+    /**
+     * 已完成
+     */
+    private int finishedCount;
+
+    /**
+     * 已超时
+     */
+    private int timeoutCount;
+
+    /**
+     * 已关单
+     */
+    private int closedCount;
+}

+ 15 - 0
src/main/java/com/repair/services/RepairRecordService.java

@@ -1,5 +1,6 @@
 package com.repair.services;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.repair.model.pojo.RepairRecord;
 import com.repair.model.pojo.RepairRecord;
 import com.baomidou.mybatisplus.extension.service.IService;
@@ -51,4 +52,18 @@ public interface RepairRecordService extends IService<RepairRecord> {
     PageUtils<RepairRecordPageVo> queryTimeout(int currentPage, int pageCount, String keyWord, String startTime, String endTime);
 
     PageUtils<pendingOrderVo> queryPendingOrder(int currentPage, int pageCount, Integer userId);
+
+    TeamWorkCountVo queryTeamWorkCount(Integer schoolId, String dateNow);
+
+    PageUtils<RepairTechnicianVo> queryTeamWorkExamine(int currentPage, int pageCount, Integer schoolId);
+
+    PageUtils<RepairTechnicianVo> queryTeamWorkPending(int currentPage, int pageCount, Integer schoolId, String dateNow);
+
+    PageUtils<RepairTechnicianVo> queryTeamWorkMaintenance(int currentPage, int pageCount, Integer schoolId, String dateNow);
+
+    PageUtils<RepairTechnicianVo> queryTeamWorkFinished(int currentPage, int pageCount, Integer schoolId);
+
+    PageUtils<RepairTechnicianVo> queryTeamWorkTimeout(int currentPage, int pageCount, Integer schoolId, String dateNow);
+
+    PageUtils<RepairTechnicianVo> queryTeamWorkClosed(int currentPage, int pageCount, Integer schoolId);
 }

+ 7 - 3
src/main/java/com/repair/services/RepairUserService.java

@@ -1,11 +1,11 @@
 package com.repair.services;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.repair.model.pojo.RepairUser;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.repair.model.result.PageUtils;
-import com.repair.model.vo.RepairLogisticsVo;
-import com.repair.model.vo.RepairUserVo;
-import com.repair.model.vo.UserDataVo;
+import com.repair.model.vo.*;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -41,5 +41,9 @@ public interface RepairUserService extends IService<RepairUser> {
     List<RepairLogisticsVo> queryLogisticsList(Integer recordId);
 
     UserDataVo queryUserData(Integer userId, String dateNow);
+
+    PageUtils<CollaboratorVo> queryCollaborator(int currentPage, int pageCount, Integer userId, Integer schoolId, String keyWord);
+
+    List<AddressBookVo> queryAddressBook(Integer userId, Integer schoolId, String keyWord);
 }
 

+ 60 - 0
src/main/java/com/repair/services/impl/RepairRecordServiceImpl.java

@@ -165,5 +165,65 @@ public class RepairRecordServiceImpl extends ServiceImpl<RepairRecordMapper, Rep
         return new PageUtils(result);
     }
 
+    @Override
+    public TeamWorkCountVo queryTeamWorkCount(Integer schoolId, String dateNow) {
+        TeamWorkCountVo result = repairRecordMapper.queryTeamWorkCount(schoolId, dateNow);
+        return result;
+    }
+
+    @Override
+    public PageUtils<RepairTechnicianVo> queryTeamWorkExamine(int currentPage, int pageCount, Integer schoolId) {
+        Page<RepairTechnicianVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<RepairTechnicianVo> result = repairRecordMapper.queryTeamWorkExamine(page, schoolId);
+        return new PageUtils(result);
+    }
+
+    @Override
+    public PageUtils<RepairTechnicianVo> queryTeamWorkPending(int currentPage, int pageCount, Integer schoolId, String dateNow) {
+        Page<RepairTechnicianVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<RepairTechnicianVo> result = repairRecordMapper.queryTeamWorkPending(page, schoolId, dateNow);
+        return new PageUtils(result);
+    }
+
+    @Override
+    public PageUtils<RepairTechnicianVo> queryTeamWorkMaintenance(int currentPage, int pageCount, Integer schoolId, String dateNow) {
+        Page<RepairTechnicianVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<RepairTechnicianVo> result = repairRecordMapper.queryTeamWorkMaintenance(page, schoolId, dateNow);
+        return new PageUtils(result);
+    }
+
+    @Override
+    public PageUtils<RepairTechnicianVo> queryTeamWorkFinished(int currentPage, int pageCount, Integer schoolId) {
+        Page<RepairTechnicianVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<RepairTechnicianVo> result = repairRecordMapper.queryTeamWorkFinished(page, schoolId);
+        return new PageUtils(result);
+    }
+
+    @Override
+    public PageUtils<RepairTechnicianVo> queryTeamWorkTimeout(int currentPage, int pageCount, Integer schoolId, String dateNow) {
+        Page<RepairTechnicianVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<RepairTechnicianVo> result = repairRecordMapper.queryTeamWorkTimeout(page, schoolId, dateNow);
+        return new PageUtils(result);
+    }
+
+    @Override
+    public PageUtils<RepairTechnicianVo> queryTeamWorkClosed(int currentPage, int pageCount, Integer schoolId) {
+        Page<RepairTechnicianVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<RepairTechnicianVo> result = repairRecordMapper.queryTeamWorkClosed(page, schoolId);
+        return new PageUtils(result);
+    }
+
 
 }

+ 17 - 5
src/main/java/com/repair/services/impl/RepairUserServiceImpl.java

@@ -7,10 +7,7 @@ import com.repair.model.pojo.RepairUser;
 import com.repair.mapper.RepairUserMapper;
 import com.repair.model.pojo.RepairWorkType;
 import com.repair.model.result.PageUtils;
-import com.repair.model.vo.RepairConsumeVo;
-import com.repair.model.vo.RepairLogisticsVo;
-import com.repair.model.vo.RepairUserVo;
-import com.repair.model.vo.UserDataVo;
+import com.repair.model.vo.*;
 import com.repair.services.RepairUserService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.ibatis.annotations.Param;
@@ -110,7 +107,7 @@ public class RepairUserServiceImpl extends ServiceImpl<RepairUserMapper, RepairU
     public List<RepairUser> getRepairByUserZZ(List<Integer> userZZId, Integer schoolId) {
         QueryWrapper<RepairUser> queryWrapper = new QueryWrapper<>();
         queryWrapper.in("user_zzid", userZZId);
-        if(schoolId != null){
+        if (schoolId != null) {
             queryWrapper.eq("school_id", schoolId);
         }
         List<RepairUser> result = repairUserMapper.selectList(queryWrapper);
@@ -128,4 +125,19 @@ public class RepairUserServiceImpl extends ServiceImpl<RepairUserMapper, RepairU
         UserDataVo result = repairUserMapper.queryUserData(userId, dateNow);
         return result;
     }
+
+    @Override
+    public PageUtils<CollaboratorVo> queryCollaborator(int currentPage, int pageCount, Integer userId, Integer schoolId, String keyWord) {
+        Page<CollaboratorVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<CollaboratorVo> result = repairUserMapper.queryCollaborator(page, userId, schoolId, keyWord);
+        return new PageUtils(result);
+    }
+
+    @Override
+    public List<AddressBookVo> queryAddressBook(Integer userId, Integer schoolId, String keyWord) {
+        List<AddressBookVo> result = repairUserMapper.queryAddressBook(userId, schoolId, keyWord);
+        return result;
+    }
 }

+ 125 - 2
src/main/resources/mapper/repair/RepairRecordMapper.xml

@@ -256,14 +256,16 @@
         <where>
             and rr3.maintenance_state = 1 and rr3.deleted = 0
             <if test="keyWord != null and keyWord != ''">
-                and (rr3.area_id like '%' #{keyWord} '%' or rr3.user_name like '%' #{keyWord} '%' or rr3.user_phone like '%' #{keyWord} '%')
+                and (rr3.area_id like '%' #{keyWord} '%' or rr3.user_name like '%' #{keyWord} '%' or rr3.user_phone like
+                '%' #{keyWord} '%')
             </if>
             <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
                 and rr3.report_time between #{startTime} and #{endTime}
             </if>
         </where>
         UNION ALL
-        select rr4.user_id,1 as details,rr4.id,rr4.record_no,rr4.area_id as area_name,rr4.user_name,rr4.user_phone,rat.name as
+        select rr4.user_id,1 as details,rr4.id,rr4.record_no,rr4.area_id as
+        area_name,rr4.user_name,rr4.user_phone,rat.name as
         article_name,
         rr4.description,rr4.report_time,rr4.maintenancer_name,rr4.maintenance_state
         from repair_record rr4
@@ -310,4 +312,125 @@
         order by t.report_time desc
     </select>
 
+
+    <!--郭师傅维修 团队工单 头部数量-->
+    <resultMap type="com.repair.model.vo.TeamWorkCountVo" id="teamWorkOrderMap">
+        <result property="examineCount" column="examine_count"/>
+        <result property="receivingCount" column="receiving_count"/>
+        <result property="maintenanceCount" column="maintenance_count"/>
+        <result property="finishedCount" column="finished_count"/>
+        <result property="timeoutCount" column="timeout_count"/>
+        <result property="closedCount" column="closed_count"/>
+    </resultMap>
+
+    <select id="queryTeamWorkCount" resultType="com.repair.model.vo.TeamWorkCountVo" resultMap="teamWorkOrderMap">
+        select
+        (select Count(*) as sh from (
+        select rr5.* from repair_record rr5
+        inner join repair_collaborate_record rcr on rcr.deleted = 0 and rcr.record_id = rr5.id and
+        rcr.approval_statu = 2
+        where rr5.maintenance_state = 6 and rr5.school_id = #{schoolId} and rr5.deleted = 0
+        UNION ALL
+        select rr.* from repair_record rr
+        inner join repair_transfer_record rtr on rtr.deleted = 0 and rtr.record_id = rr.id and
+        rtr.approval_statu = 2
+        where rr.maintenance_state = 5 and rr.school_id = #{schoolId} and rr.deleted = 0) a) as examine_count,
+        (select Count(*) from repair_record rr1
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr1.id and
+        rdr.is_lose_efficacy = 0
+        where rr1.maintenance_state = 1 and rr1.school_id = #{schoolId} and rr1.deleted = 0) as receiving_count,
+        (select Count(*) from repair_record rr2
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr2.id and
+        rdv.is_lose_efficacy = 0
+        where rr2.maintenance_state = 2 and rr2.school_id = #{schoolId} and rr2.deleted = 0) as maintenance_count,
+        (select Count(*) from repair_record rr7
+        where rr7.deleted = 0 and rr7.school_id = #{schoolId} and rr7.maintenance_state = 7) as finished_count,
+        (select Count(*) as cs from (select rr3.*
+        from repair_record rr3
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr3.id and
+        rdr.is_lose_efficacy = 0
+        and date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow}
+        where rr3.maintenance_state = 1 and rr3.deleted = 0 and rr3.school_id = #{schoolId}
+        UNION ALL
+        select rr4.* from repair_record rr4
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr4.id and
+        rdv.is_lose_efficacy = 0
+        and date_add(rdv.receiving_time , interval rdv.maintenance_assess_time minute) &lt;= #{dateNow}
+        where rr4.maintenance_state = 2 and rr4.deleted = 0 and rr4.school_id = #{schoolId}) c) as timeout_count,
+        (select Count(*) from repair_record rr8
+        where rr8.deleted = 0 and rr8.school_id = #{schoolId} and rr8.maintenance_state = 9) as closed_count
+    </select>
+
+    <!--待审核-->
+    <select id="queryTeamWorkExamine" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select rr5.id,rr5.record_no,rr5.report_time,rr5.user_name,rr5.user_phone,rr5.area_id as area_name,rr5.address,rat.name as article_name ,rr5.description,rr5.image,'协作审核' as state from repair_record rr5
+        inner join repair_collaborate_record rcr on rcr.deleted = 0 and rcr.record_id = rr5.id and rcr.approval_statu = 2
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr5.article_id
+        where rr5.maintenance_state = 6 and rr5.school_id = #{schoolId} and rr5.deleted = 0
+        UNION ALL
+        select rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'转单审核' as state from repair_record rr
+        inner join repair_transfer_record rtr on rtr.deleted = 0 and rtr.record_id = rr.id and rtr.approval_statu = 2
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.maintenance_state = 5 and rr.school_id = #{schoolId} and rr.deleted = 0
+    </select>
+
+    <!--待接单-->
+    <select id="queryTeamWorkPending" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select  case date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow} when true then '超时未接' else null end as timeout_str,rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name,rr.description,rr.image,'待接单' as state
+        from repair_record rr
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr.id and rdr.is_lose_efficacy = 0
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.maintenance_state = 1 and rr.school_id = #{schoolId} and rr.deleted = 0
+        order by rr.report_time DESC
+    </select>
+
+    <!--维修中-->
+    <select id="queryTeamWorkMaintenance" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select case date_add(rdv.receiving_time, interval rdv.maintenance_assess_time minute) &lt;= #{dateNow} when true then '维修超时' else null end as timeout_str,rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'维修中' as state
+        from repair_record rr
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr.id and rdv.is_lose_efficacy = 0
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.maintenance_state = 2 and rr.school_id = #{schoolId} and rr.deleted = 0
+        order by rr.report_time DESC
+    </select>
+
+    <!--已完成-->
+    <select id="queryTeamWorkFinished" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'已完成' as state from repair_record rr
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.deleted = 0 and rr.school_id = #{schoolId} and rr.maintenance_state = 7
+        order by rr.report_time DESC
+    </select>
+
+    <!--已超时-->
+    <select id="queryTeamWorkTimeout" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        SELECT * FROM (
+        select case date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow} when true then '超时未接' else null end as timeout_str,rr3.id,rr3.record_no,rr3.report_time,rr3.user_name,rr3.user_phone,rr3.area_id as area_name,rr3.address,rat.name as article_name ,rr3.description,rr3.image,'已超时' as state from repair_record rr3
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr3.id and rdr.is_lose_efficacy = 0
+        and date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow}
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr3.article_id
+        where rr3.maintenance_state = 1 and rr3.deleted = 0 and rr3.school_id = #{schoolId}
+        UNION ALL
+        select case date_add(rdv.receiving_time, interval rdv.maintenance_assess_time minute) &lt;= #{dateNow} when true then '维修超时' else null end as timeout_str,rr4.id,rr4.record_no,rr4.report_time,rr4.user_name,rr4.user_phone,rr4.area_id as area_name,rr4.address,rat.name as article_name ,rr4.description,rr4.image,'已超时' as state from repair_record rr4
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr4.id and
+        rdv.is_lose_efficacy = 0
+        and date_add(rdv.receiving_time , interval rdv.maintenance_assess_time minute) &lt;= #{dateNow}
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr4.article_id
+        where rr4.maintenance_state = 2 and rr4.deleted = 0 and rr4.school_id = #{schoolId}) t
+        order by t.report_time desc
+    </select>
+
+    <!--已关单-->
+    <select id="queryTeamWorkClosed" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'已关单' as state from repair_record rr
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.deleted = 0 and rr.school_id = #{schoolId} and rr.maintenance_state = 9
+        order by rr.report_time DESC
+    </select>
 </mapper>

+ 55 - 0
src/main/resources/mapper/repair/RepairUserMapper.xml

@@ -71,4 +71,59 @@
         where ru.id = #{userId} and ru.deleted = 0
     </select>
 
+    <resultMap type="com.repair.model.vo.CollaboratorVo" id="collaboratorMap">
+        <result property="id" column="id"/>
+        <result property="userName" column="user_name"/>
+        <result property="userPhone" column="user_phone"/>
+        <result property="workTypeName" column="work_type_name"/>
+        <result property="state" column="state"/>
+    </resultMap>
+    <select id="queryCollaborator" resultType="com.repair.model.vo.CollaboratorVo" resultMap="collaboratorMap">
+        select ru.id,ru.user_name,ru.user_phone,rwt.name as work_type_name,ru.state
+        from repair_user ru
+        left join repair_work_type rwt on rwt.deleted = 0 and rwt.id = ru.work_type
+        <where>
+            and ru.deleted = 0 and (ru.user_zzid = 1 or ru.user_zzid = 2)
+            <if test="userId != null and userId != ''">
+                and ru.id != #{userId}
+            </if>
+            <if test="schoolId != null and schoolId != ''">
+                and ru.school_id = #{schoolId}
+            </if>
+            <if test="keyWord != null and keyWord != ''">
+                and (ru.user_name like '%' #{keyWord} '%' or ru.user_phone like '%' #{keyWord} '%' or rwt.name like '%' #{keyWord} '%')
+            </if>
+        </where>
+    </select>
+
+    <resultMap type="com.repair.model.vo.AddressBookVo" id="addressBookMap">
+        <result property="id" column="id"/>
+        <result property="teamId" column="team_id"/>
+        <result property="userName" column="user_name"/>
+        <result property="userPhone" column="user_phone"/>
+        <result property="workType" column="work_type"/>
+        <result property="workTypeName" column="work_type_name"/>
+        <result property="state" column="state"/>
+        <result property="acceptanceTime" column="acceptance_assess_time"/>
+        <result property="maintenanceTime" column="maintenance_assess_time"/>
+    </resultMap>
+    <select id="queryAddressBook" resultType="com.repair.model.vo.AddressBookVo" resultMap="addressBookMap">
+        select ru.team_id,ru.id,ru.user_name,ru.user_phone,ru.work_type,rwt.name as work_type_name,ru.state,ru.state,ru.acceptance_assess_time,ru.maintenance_assess_time
+        from repair_user ru
+        left join repair_work_type rwt on rwt.deleted = 0 and rwt.id = ru.work_type
+        <where>
+            and ru.deleted = 0 and (ru.user_zzid = 1 or ru.user_zzid = 2)
+            <if test="userId != null and userId != ''">
+                and ru.id != #{userId}
+            </if>
+            <if test="schoolId != null and schoolId != ''">
+                and ru.school_id = #{schoolId}
+            </if>
+            <if test="keyWord != null and keyWord != ''">
+                and (ru.user_name like '%' #{keyWord} '%' or ru.user_phone like '%' #{keyWord} '%' or rwt.name like '%' #{keyWord} '%')
+            </if>
+        </where>
+    </select>
+
+
 </mapper>

+ 125 - 2
target/classes/mapper/repair/RepairRecordMapper.xml

@@ -256,14 +256,16 @@
         <where>
             and rr3.maintenance_state = 1 and rr3.deleted = 0
             <if test="keyWord != null and keyWord != ''">
-                and (rr3.area_id like '%' #{keyWord} '%' or rr3.user_name like '%' #{keyWord} '%' or rr3.user_phone like '%' #{keyWord} '%')
+                and (rr3.area_id like '%' #{keyWord} '%' or rr3.user_name like '%' #{keyWord} '%' or rr3.user_phone like
+                '%' #{keyWord} '%')
             </if>
             <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
                 and rr3.report_time between #{startTime} and #{endTime}
             </if>
         </where>
         UNION ALL
-        select rr4.user_id,1 as details,rr4.id,rr4.record_no,rr4.area_id as area_name,rr4.user_name,rr4.user_phone,rat.name as
+        select rr4.user_id,1 as details,rr4.id,rr4.record_no,rr4.area_id as
+        area_name,rr4.user_name,rr4.user_phone,rat.name as
         article_name,
         rr4.description,rr4.report_time,rr4.maintenancer_name,rr4.maintenance_state
         from repair_record rr4
@@ -310,4 +312,125 @@
         order by t.report_time desc
     </select>
 
+
+    <!--郭师傅维修 团队工单 头部数量-->
+    <resultMap type="com.repair.model.vo.TeamWorkCountVo" id="teamWorkOrderMap">
+        <result property="examineCount" column="examine_count"/>
+        <result property="receivingCount" column="receiving_count"/>
+        <result property="maintenanceCount" column="maintenance_count"/>
+        <result property="finishedCount" column="finished_count"/>
+        <result property="timeoutCount" column="timeout_count"/>
+        <result property="closedCount" column="closed_count"/>
+    </resultMap>
+
+    <select id="queryTeamWorkCount" resultType="com.repair.model.vo.TeamWorkCountVo" resultMap="teamWorkOrderMap">
+        select
+        (select Count(*) as sh from (
+        select rr5.* from repair_record rr5
+        inner join repair_collaborate_record rcr on rcr.deleted = 0 and rcr.record_id = rr5.id and
+        rcr.approval_statu = 2
+        where rr5.maintenance_state = 6 and rr5.school_id = #{schoolId} and rr5.deleted = 0
+        UNION ALL
+        select rr.* from repair_record rr
+        inner join repair_transfer_record rtr on rtr.deleted = 0 and rtr.record_id = rr.id and
+        rtr.approval_statu = 2
+        where rr.maintenance_state = 5 and rr.school_id = #{schoolId} and rr.deleted = 0) a) as examine_count,
+        (select Count(*) from repair_record rr1
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr1.id and
+        rdr.is_lose_efficacy = 0
+        where rr1.maintenance_state = 1 and rr1.school_id = #{schoolId} and rr1.deleted = 0) as receiving_count,
+        (select Count(*) from repair_record rr2
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr2.id and
+        rdv.is_lose_efficacy = 0
+        where rr2.maintenance_state = 2 and rr2.school_id = #{schoolId} and rr2.deleted = 0) as maintenance_count,
+        (select Count(*) from repair_record rr7
+        where rr7.deleted = 0 and rr7.school_id = #{schoolId} and rr7.maintenance_state = 7) as finished_count,
+        (select Count(*) as cs from (select rr3.*
+        from repair_record rr3
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr3.id and
+        rdr.is_lose_efficacy = 0
+        and date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow}
+        where rr3.maintenance_state = 1 and rr3.deleted = 0 and rr3.school_id = #{schoolId}
+        UNION ALL
+        select rr4.* from repair_record rr4
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr4.id and
+        rdv.is_lose_efficacy = 0
+        and date_add(rdv.receiving_time , interval rdv.maintenance_assess_time minute) &lt;= #{dateNow}
+        where rr4.maintenance_state = 2 and rr4.deleted = 0 and rr4.school_id = #{schoolId}) c) as timeout_count,
+        (select Count(*) from repair_record rr8
+        where rr8.deleted = 0 and rr8.school_id = #{schoolId} and rr8.maintenance_state = 9) as closed_count
+    </select>
+
+    <!--待审核-->
+    <select id="queryTeamWorkExamine" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select rr5.id,rr5.record_no,rr5.report_time,rr5.user_name,rr5.user_phone,rr5.area_id as area_name,rr5.address,rat.name as article_name ,rr5.description,rr5.image,'协作审核' as state from repair_record rr5
+        inner join repair_collaborate_record rcr on rcr.deleted = 0 and rcr.record_id = rr5.id and rcr.approval_statu = 2
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr5.article_id
+        where rr5.maintenance_state = 6 and rr5.school_id = #{schoolId} and rr5.deleted = 0
+        UNION ALL
+        select rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'转单审核' as state from repair_record rr
+        inner join repair_transfer_record rtr on rtr.deleted = 0 and rtr.record_id = rr.id and rtr.approval_statu = 2
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.maintenance_state = 5 and rr.school_id = #{schoolId} and rr.deleted = 0
+    </select>
+
+    <!--待接单-->
+    <select id="queryTeamWorkPending" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select  case date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow} when true then '超时未接' else null end as timeout_str,rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name,rr.description,rr.image,'待接单' as state
+        from repair_record rr
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr.id and rdr.is_lose_efficacy = 0
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.maintenance_state = 1 and rr.school_id = #{schoolId} and rr.deleted = 0
+        order by rr.report_time DESC
+    </select>
+
+    <!--维修中-->
+    <select id="queryTeamWorkMaintenance" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select case date_add(rdv.receiving_time, interval rdv.maintenance_assess_time minute) &lt;= #{dateNow} when true then '维修超时' else null end as timeout_str,rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'维修中' as state
+        from repair_record rr
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr.id and rdv.is_lose_efficacy = 0
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.maintenance_state = 2 and rr.school_id = #{schoolId} and rr.deleted = 0
+        order by rr.report_time DESC
+    </select>
+
+    <!--已完成-->
+    <select id="queryTeamWorkFinished" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'已完成' as state from repair_record rr
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.deleted = 0 and rr.school_id = #{schoolId} and rr.maintenance_state = 7
+        order by rr.report_time DESC
+    </select>
+
+    <!--已超时-->
+    <select id="queryTeamWorkTimeout" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        SELECT * FROM (
+        select case date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow} when true then '超时未接' else null end as timeout_str,rr3.id,rr3.record_no,rr3.report_time,rr3.user_name,rr3.user_phone,rr3.area_id as area_name,rr3.address,rat.name as article_name ,rr3.description,rr3.image,'已超时' as state from repair_record rr3
+        inner join repair_dispatch_record rdr on rdr.deleted = 0 and rdr.record_id = rr3.id and rdr.is_lose_efficacy = 0
+        and date_add(rdr.assigned_time , interval rdr.acceptance_assess_time minute) &lt;= #{dateNow}
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr3.article_id
+        where rr3.maintenance_state = 1 and rr3.deleted = 0 and rr3.school_id = #{schoolId}
+        UNION ALL
+        select case date_add(rdv.receiving_time, interval rdv.maintenance_assess_time minute) &lt;= #{dateNow} when true then '维修超时' else null end as timeout_str,rr4.id,rr4.record_no,rr4.report_time,rr4.user_name,rr4.user_phone,rr4.area_id as area_name,rr4.address,rat.name as article_name ,rr4.description,rr4.image,'已超时' as state from repair_record rr4
+        inner join repair_receiving rdv on rdv.deleted = 0 and rdv.record_id = rr4.id and
+        rdv.is_lose_efficacy = 0
+        and date_add(rdv.receiving_time , interval rdv.maintenance_assess_time minute) &lt;= #{dateNow}
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr4.article_id
+        where rr4.maintenance_state = 2 and rr4.deleted = 0 and rr4.school_id = #{schoolId}) t
+        order by t.report_time desc
+    </select>
+
+    <!--已关单-->
+    <select id="queryTeamWorkClosed" resultType="com.repair.model.vo.RepairTechnicianVo"
+            resultMap="repairRecordTechnicianDataMap">
+        select rr.id,rr.record_no,rr.report_time,rr.user_name,rr.user_phone,rr.area_id as area_name,rr.address,rat.name as article_name ,rr.description,rr.image,'已关单' as state from repair_record rr
+        left join repair_article_type rat on rat.deleted = 0 and rat.id = rr.article_id
+        where rr.deleted = 0 and rr.school_id = #{schoolId} and rr.maintenance_state = 9
+        order by rr.report_time DESC
+    </select>
 </mapper>

+ 55 - 0
target/classes/mapper/repair/RepairUserMapper.xml

@@ -71,4 +71,59 @@
         where ru.id = #{userId} and ru.deleted = 0
     </select>
 
+    <resultMap type="com.repair.model.vo.CollaboratorVo" id="collaboratorMap">
+        <result property="id" column="id"/>
+        <result property="userName" column="user_name"/>
+        <result property="userPhone" column="user_phone"/>
+        <result property="workTypeName" column="work_type_name"/>
+        <result property="state" column="state"/>
+    </resultMap>
+    <select id="queryCollaborator" resultType="com.repair.model.vo.CollaboratorVo" resultMap="collaboratorMap">
+        select ru.id,ru.user_name,ru.user_phone,rwt.name as work_type_name,ru.state
+        from repair_user ru
+        left join repair_work_type rwt on rwt.deleted = 0 and rwt.id = ru.work_type
+        <where>
+            and ru.deleted = 0 and (ru.user_zzid = 1 or ru.user_zzid = 2)
+            <if test="userId != null and userId != ''">
+                and ru.id != #{userId}
+            </if>
+            <if test="schoolId != null and schoolId != ''">
+                and ru.school_id = #{schoolId}
+            </if>
+            <if test="keyWord != null and keyWord != ''">
+                and (ru.user_name like '%' #{keyWord} '%' or ru.user_phone like '%' #{keyWord} '%' or rwt.name like '%' #{keyWord} '%')
+            </if>
+        </where>
+    </select>
+
+    <resultMap type="com.repair.model.vo.AddressBookVo" id="addressBookMap">
+        <result property="id" column="id"/>
+        <result property="teamId" column="team_id"/>
+        <result property="userName" column="user_name"/>
+        <result property="userPhone" column="user_phone"/>
+        <result property="workType" column="work_type"/>
+        <result property="workTypeName" column="work_type_name"/>
+        <result property="state" column="state"/>
+        <result property="acceptanceTime" column="acceptance_assess_time"/>
+        <result property="maintenanceTime" column="maintenance_assess_time"/>
+    </resultMap>
+    <select id="queryAddressBook" resultType="com.repair.model.vo.AddressBookVo" resultMap="addressBookMap">
+        select ru.team_id,ru.id,ru.user_name,ru.user_phone,ru.work_type,rwt.name as work_type_name,ru.state,ru.state,ru.acceptance_assess_time,ru.maintenance_assess_time
+        from repair_user ru
+        left join repair_work_type rwt on rwt.deleted = 0 and rwt.id = ru.work_type
+        <where>
+            and ru.deleted = 0 and (ru.user_zzid = 1 or ru.user_zzid = 2)
+            <if test="userId != null and userId != ''">
+                and ru.id != #{userId}
+            </if>
+            <if test="schoolId != null and schoolId != ''">
+                and ru.school_id = #{schoolId}
+            </if>
+            <if test="keyWord != null and keyWord != ''">
+                and (ru.user_name like '%' #{keyWord} '%' or ru.user_phone like '%' #{keyWord} '%' or rwt.name like '%' #{keyWord} '%')
+            </if>
+        </where>
+    </select>
+
+
 </mapper>

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