夏文涛 2 vuotta sitten
vanhempi
commit
8c075dfb99

+ 13 - 0
.idea/encodings.xml

@@ -2,6 +2,19 @@
 <project version="4">
   <component name="Encoding" native2AsciiForPropertiesFiles="true" defaultCharsetForPropertiesFiles="UTF-8">
     <file url="file://$PROJECT_DIR$" charset="UTF-8" />
+<<<<<<< HEAD
+=======
+    <file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/HttpsClient.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/MyX509TrustManager.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/SHA1.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/TimeExchange.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/WxConstants.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/WxUtil.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/AlterPriceRequest.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/model/request/WxPayRequest.java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/src/main/java/com/repair/model/result/Wx_user.java" charset="UTF-8" />
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     <file url="PROJECT" charset="UTF-8" />
   </component>
 </project>

+ 20 - 0
.idea/jarRepositories.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="RemoteRepositoriesConfiguration">
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Central Repository" />
+      <option name="url" value="http://maven.aliyun.com/nexus/content/repositories/central/" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Maven Central repository" />
+      <option name="url" value="https://repo1.maven.org/maven2" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="jboss.community" />
+      <option name="name" value="JBoss Community repository" />
+      <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
+    </remote-repository>
+  </component>
+</project>

+ 134 - 24
.idea/workspace.xml

@@ -1,7 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
+  <component name="AutoImportSettings">
+    <option name="autoReloadType" value="SELECTIVE" />
+  </component>
   <component name="ChangeListManager">
     <list default="true" id="33456f28-da03-4d10-99dd-fd9bd193cf84" name="Default Changelist" comment="">
+<<<<<<< HEAD
       <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/TrackDetailsVo.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/api/LoginControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/api/LoginControllerAPI.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairAdminControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/api/RepairAdminControllerAPI.java" afterDir="false" />
@@ -188,11 +192,29 @@
       <change beforePath="$PROJECT_DIR$/target/classes/mapper/repair/RepairTrackRecordMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/mapper/repair/RepairTrackRecordMapper.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" afterDir="false" />
+=======
+      <change afterPath="$PROJECT_DIR$/.idea/jarRepositories.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairAnalysisVo.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairSummarizingVo.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/repair/model/vo/RepairTrendVo.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/.idea/encodings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/encodings.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" 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/common/utils/DateUtils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/common/utils/DateUtils.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairPayRecordController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/controller/RepairPayRecordController.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/core/JwtlnterceptorConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/repair/core/JwtlnterceptorConfig.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/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/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/resources/mapper/repair/RepairRecordMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/mapper/repair/RepairRecordMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/META-INF/spring-configuration-metadata.json" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/META-INF/spring-configuration-metadata.json" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/mapper/repair/RepairRecordMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/mapper/repair/RepairRecordMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst" afterDir="false" />
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
       <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/" />
-    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
     <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
@@ -215,6 +237,7 @@
   <component name="DefaultGradleProjectSettings">
     <option name="isMigrated" value="true" />
   </component>
+<<<<<<< HEAD
   <component name="FavoritesManager">
     <favorites_list name="repair_report" />
   </component>
@@ -282,6 +305,8 @@
       </file>
     </leaf>
   </component>
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
   <component name="FileTemplateManagerImpl">
     <option name="RECENT_TEMPLATES">
       <list>
@@ -416,12 +441,15 @@
       </list>
     </option>
   </component>
+  <component name="MarkdownSettingsMigration">
+    <option name="stateVersion" value="1" />
+  </component>
   <component name="MavenImportPreferences">
     <option name="generalSettings">
       <MavenGeneralSettings>
         <option name="localRepository" value="D:\Software\Develop\Maven\repository" />
-        <option name="mavenHome" value="D:/Software/Develop/Maven/apache-maven-3.3.9" />
-        <option name="userSettingsFile" value="D:\Software\Develop\Maven\apache-maven-3.3.9\conf\settings.xml" />
+        <option name="mavenHome" value="D:/soft/maven/apache-maven-3.8.6" />
+        <option name="userSettingsFile" value="D:/soft/maven/apache-maven-3.8.6\conf\settings.xml" />
       </MavenGeneralSettings>
     </option>
   </component>
@@ -449,6 +477,7 @@
     <option name="width" value="974" />
     <option name="height" value="1039" />
   </component>
+  <component name="ProjectId" id="2UKU884aEg3tGv5QPtIO7kgEzoG" />
   <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
   <component name="ProjectView">
     <navigator proportions="" version="1">
@@ -660,6 +689,7 @@
       </pane>
     </panes>
   </component>
+<<<<<<< HEAD
   <component name="PropertiesComponent">
     <property name="RequestMappingsPanelOrder0" value="0" />
     <property name="RequestMappingsPanelOrder1" value="1" />
@@ -674,7 +704,31 @@
     <property name="project.structure.proportion" value="0.15" />
     <property name="project.structure.side.proportion" value="0.0" />
     <property name="settings.editor.selected.configurable" value="File.Encoding" />
+=======
+  <component name="ProjectViewState">
+    <option name="showExcludedFiles" value="false" />
+    <option name="showLibraryContents" value="true" />
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
   </component>
+  <component name="PropertiesComponent"><![CDATA[{
+  "keyToString": {
+    "RequestMappingsPanelOrder0": "0",
+    "RequestMappingsPanelOrder1": "1",
+    "RequestMappingsPanelWidth0": "75",
+    "RequestMappingsPanelWidth1": "75",
+    "SHARE_PROJECT_CONFIGURATION_FILES": "true",
+    "WebServerToolWindowFactoryState": "false",
+    "node.js.detected.package.eslint": "true",
+    "node.js.detected.package.tslint": "true",
+    "node.js.selected.package.eslint": "(autodetect)",
+    "node.js.selected.package.tslint": "(autodetect)",
+    "project.structure.last.edited": "Project",
+    "project.structure.proportion": "0.0",
+    "project.structure.side.proportion": "0.0",
+    "settings.editor.selected.configurable": "MavenSettings",
+    "spring.configuration.checksum": "9194e5bdf12f70631e80a517ca4e09a3"
+  }
+}]]></component>
   <component name="RebelAgentSelection">
     <selection>jr</selection>
   </component>
@@ -701,18 +755,6 @@
       <recent name="D:\Bingo\Desktop\工作内容\报修系统\Back-endDevelopmentFramework\src\main\resources\mapper\video" />
     </key>
   </component>
-  <component name="RunDashboard">
-    <option name="ruleStates">
-      <list>
-        <RuleState>
-          <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
-        </RuleState>
-        <RuleState>
-          <option name="name" value="StatusDashboardGroupingRule" />
-        </RuleState>
-      </list>
-    </option>
-  </component>
   <component name="RunManager" selected="Spring Boot.MybatisPlusApplication">
     <configuration name="AutoCode" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
       <option name="MAIN_CLASS_NAME" value="com.repair.AutoCode" />
@@ -796,6 +838,10 @@
       </list>
     </recent_temporary>
   </component>
+  <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
+  <component name="SshConsoleOptionsProvider">
+    <option name="myEncoding" value="UTF-8" />
+  </component>
   <component name="SvnConfiguration">
     <configuration />
   </component>
@@ -836,7 +882,12 @@
       <workItem from="1692275638971" duration="254000" />
       <workItem from="1692276778311" duration="8094000" />
       <workItem from="1692328425694" duration="3410000" />
+<<<<<<< HEAD
       <workItem from="1692338996790" duration="52964000" />
+=======
+      <workItem from="1692338996790" duration="35057000" />
+      <workItem from="1692687608803" duration="1252000" />
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     </task>
     <servers />
   </component>
@@ -935,91 +986,140 @@
     </layout-to-restore>
   </component>
   <component name="TypeScriptGeneratedFilesManager">
-    <option name="version" value="1" />
+    <option name="version" value="3" />
+  </component>
+  <component name="Vcs.Log.Tabs.Properties">
+    <option name="TAB_STATES">
+      <map>
+        <entry key="MAIN">
+          <value>
+            <State />
+          </value>
+        </entry>
+      </map>
+    </option>
   </component>
   <component name="XDebuggerManager">
     <breakpoint-manager>
       <breakpoints>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/common/exception/EmsExceptionHandler.java</url>
+<<<<<<< HEAD
           <line>164</line>
           <properties />
+=======
+          <line>163</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="27" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>jar://C:/Program Files/Java/jdk1.8.0_181/src.zip!/java/lang/Class.java</url>
           <line>1781</line>
-          <properties />
           <option name="timeStamp" value="90" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumeController.java</url>
+<<<<<<< HEAD
           <line>179</line>
           <properties />
+=======
+          <line>183</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="137" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/DelayedUtils.java</url>
           <line>117</line>
-          <properties />
           <option name="timeStamp" value="218" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/common/utils/DelayedUtils.java</url>
           <line>128</line>
-          <properties />
           <option name="timeStamp" value="219" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumeController.java</url>
+<<<<<<< HEAD
           <line>94</line>
           <properties />
+=======
+          <line>98</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="229" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumablesController.java</url>
+<<<<<<< HEAD
           <line>315</line>
           <properties />
+=======
+          <line>302</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="242" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairLeaveMessageController.java</url>
+<<<<<<< HEAD
           <line>92</line>
           <properties />
+=======
+          <line>93</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="243" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairPayRecordController.java</url>
+<<<<<<< HEAD
           <line>117</line>
           <properties />
+=======
+          <line>120</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="244" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairPayRecordController.java</url>
+<<<<<<< HEAD
           <line>164</line>
           <properties />
+=======
+          <line>167</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="245" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairPayRecordController.java</url>
+<<<<<<< HEAD
           <line>103</line>
           <properties />
+=======
+          <line>106</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="246" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairClassesSettingsController.java</url>
+<<<<<<< HEAD
           <line>439</line>
           <properties />
+=======
+          <line>442</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="260" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairClassesSettingsController.java</url>
+<<<<<<< HEAD
           <line>555</line>
           <properties />
+=======
+          <line>558</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="261" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumeController.java</url>
+<<<<<<< HEAD
           <line>391</line>
           <properties />
           <option name="timeStamp" value="265" />
@@ -1028,24 +1128,34 @@
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairClassesSettingsController.java</url>
           <line>274</line>
           <properties />
+=======
+          <line>395</line>
+          <option name="timeStamp" value="265" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairConsumablesController.java</url>
+          <line>156</line>
+          <option name="timeStamp" value="269" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairClassesSettingsController.java</url>
+          <line>277</line>
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
           <option name="timeStamp" value="271" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/controller/RepairEvaluateController.java</url>
           <line>54</line>
-          <properties />
           <option name="timeStamp" value="288" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/scheduled/SystemScheduled.java</url>
           <line>73</line>
-          <properties />
           <option name="timeStamp" value="302" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/src/main/java/com/repair/scheduled/SystemScheduled.java</url>
           <line>84</line>
-          <properties />
           <option name="timeStamp" value="303" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">

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

@@ -224,4 +224,8 @@ public interface RepairRecordControllerAPI {
     CommonResult repairSummarizing() throws Exception;
 
 
+<<<<<<< HEAD
+=======
+
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
 }

+ 1 - 0
src/main/java/com/repair/common/utils/DateUtils.java

@@ -3,6 +3,7 @@ package com.repair.common.utils;
 import java.text.SimpleDateFormat;
 import java.time.Duration;
 import java.time.LocalDateTime;
+import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
 import java.util.Date;
 

+ 44 - 0
src/main/java/com/repair/controller/RepairPayRecordController.java

@@ -568,6 +568,8 @@ public class RepairPayRecordController implements RepairPayRecordControllerAPI {
         List<QueryExportVo> queryExportVoList=repairPayRecordService.queryExport(keyWord,startTime,endTime);
 
         List<QueryExportVo> vos = new ArrayList<>();
+<<<<<<< HEAD
+=======
 
 
         //        导出
@@ -590,6 +592,46 @@ public class RepairPayRecordController implements RepairPayRecordControllerAPI {
                 QueryExportVo vo = new QueryExportVo();
                 BeanUtils.copyProperties(queryExportVo, vo);
 //            退款金额
+            BigDecimal refundTotalPrice = queryExportVo.getRefundTotalPrice();
+            if (ObjectUtils.isEmpty(refundTotalPrice)) {
+                refundTotalPrice=new BigDecimal(0);
+                vo.setRefundTotalPrice(refundTotalPrice);
+            }
+            BigDecimal payPrice = queryExportVo.getPayPrice();
+//            退款金额=0
+            if (refundTotalPrice.compareTo(new BigDecimal(0))==0) {
+                vo.setStatus("已支付");
+            }else if (payPrice.compareTo(refundTotalPrice)==0){
+                vo.setStatus("已退款");
+            }else if (payPrice.compareTo(refundTotalPrice)==1&&refundTotalPrice.compareTo(new BigDecimal(0))==1){
+                vo.setStatus("部分退款");
+            }
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
+
+
+<<<<<<< HEAD
+        //        导出
+        Workbook workbook = new XSSFWorkbook();
+        Sheet sheet = workbook.createSheet("支付成功记录表");
+        Row headerRow = sheet.createRow(0);
+        headerRow.createCell(0).setCellValue("序号");
+        headerRow.createCell(1).setCellValue("交易时间");
+        headerRow.createCell(2).setCellValue("工单号");
+        headerRow.createCell(3).setCellValue("交易流水号");
+        headerRow.createCell(4).setCellValue("报修人");
+        headerRow.createCell(5).setCellValue("交易金额");
+        headerRow.createCell(6).setCellValue("退款金额");
+        headerRow.createCell(7).setCellValue("状态");
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
+
+
+        if (ObjectUtils.isNotEmpty(queryExportVoList)&&queryExportVoList.size()>0) {
+
+            for (QueryExportVo queryExportVo : queryExportVoList) {
+                QueryExportVo vo = new QueryExportVo();
+                BeanUtils.copyProperties(queryExportVo, vo);
+//            退款金额
                 BigDecimal refundTotalPrice = queryExportVo.getRefundTotalPrice();
                 if (ObjectUtils.isEmpty(refundTotalPrice)) {
                     refundTotalPrice = new BigDecimal(0);
@@ -622,6 +664,8 @@ public class RepairPayRecordController implements RepairPayRecordControllerAPI {
 
         }
 
+        }
+
         // 将工作簿写入文件
         ExcelUtils.excelDownload(workbook, "支付成功表.xlsx", response);
 

+ 306 - 0
src/main/java/com/repair/controller/RepairRecordController.java

@@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestHeader;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -2502,6 +2503,9 @@ public class RepairRecordController implements RepairRecordControllerAPI {
         IPage<MaintenanceWorkerVo> page = new Page();
         BeanUtils.copyProperties(repairReceivingListPage,page);
 
+        IPage<MaintenanceWorkerVo> page = new Page();
+        BeanUtils.copyProperties(repairReceivingListPage,page);
+
         LambdaQueryWrapper<RepairReceiving> wrapperReceiving2 = new LambdaQueryWrapper<>();
         wrapperReceiving2.between(ObjectUtils.isNotEmpty(startTime), RepairReceiving::getReceivingTime, startTime, endTime);
         wrapperReceiving2.isNotNull(RepairReceiving::getFinishTime);
@@ -2781,6 +2785,7 @@ public class RepairRecordController implements RepairRecordControllerAPI {
         String endTime = DateUtils.endTime();
 
         ArrayList<MaintenanceWorkerVo> vos = new ArrayList<>();
+<<<<<<< HEAD
 
         //        导出
         Workbook workbook = new XSSFWorkbook();
@@ -2880,6 +2885,299 @@ public class RepairRecordController implements RepairRecordControllerAPI {
                 }
 
             }
+=======
+
+        //        导出
+        Workbook workbook = new XSSFWorkbook();
+        Sheet sheet = workbook.createSheet("维修师傅效率统计");
+        Row headerRow = sheet.createRow(0);
+        headerRow.createCell(0).setCellValue("序号");
+        headerRow.createCell(1).setCellValue("校区");
+        headerRow.createCell(2).setCellValue("姓名");
+        headerRow.createCell(3).setCellValue("工单总数");
+        headerRow.createCell(4).setCellValue("好评率");
+        headerRow.createCell(5).setCellValue("超时率");
+        headerRow.createCell(6).setCellValue("平均响应时长(分)");
+        headerRow.createCell(7).setCellValue("平均维修时长(分)");
+        headerRow.createCell(8).setCellValue("耗材总费用(元)");
+
+
+        LambdaQueryWrapper<RepairReceiving> wrapperReceiving = new LambdaQueryWrapper<>();
+        wrapperReceiving.between(ObjectUtils.isNotEmpty(startTime), RepairReceiving::getReceivingTime, startTime, endTime);
+        wrapperReceiving.isNotNull(RepairReceiving::getFinishTime);
+        List<RepairReceiving> repairReceivingList = repairReceivingService.list(wrapperReceiving);
+
+        if (ObjectUtils.isNotEmpty(repairReceivingList)&&repairReceivingList.size()>0) {
+
+
+        ArrayList<Integer> userList = new ArrayList<>();
+
+        ArrayList<Integer> recordList = new ArrayList<>();
+
+//        接单总次数
+        HashMap<Integer, List<Integer>> receivingCountMap = new HashMap<>();
+
+//        维修超时次数
+        Map<Integer, Integer> maintainTimeOutMap = new HashMap<>();
+
+//        维修总时长
+        Map<Integer, Long> maintainMap = new HashMap<>();
+
+
+        for (RepairReceiving repairReceiving : repairReceivingList) {
+            Date finishTime = repairReceiving.getFinishTime();
+
+            if (ObjectUtils.isEmpty(finishTime)) {
+                break;
+            }
+
+            Integer userId = repairReceiving.getUserId();
+            userList.add(userId);
+
+            Integer recordId = repairReceiving.getRecordId();
+            recordList.add(recordId);
+
+            if (receivingCountMap.containsKey(userId)) {
+//                  总次数
+                List<Integer> list = receivingCountMap.get(userId);
+                list.add(recordId);
+                receivingCountMap.put(userId, list);
+            } else {
+                ArrayList<Integer> list = new ArrayList<>();
+                list.add(recordId);
+                receivingCountMap.put(userId, list);
+            }
+
+
+//            接单时间
+            long receivingTime = repairReceiving.getReceivingTime().getTime();
+//            考核时间(分)
+            Integer maintenanceAssessTime = repairReceiving.getMaintenanceAssessTime() * 1000 * 60;
+
+            long time = receivingTime + maintenanceAssessTime;
+
+//            完成时间
+            long finishTimeTime = finishTime.getTime();
+
+//              实际完成时间大于接单时间加考核时间为超时
+            if (finishTimeTime > time) {
+                if (maintainTimeOutMap.containsKey(userId)) {
+//                  次数
+                    Integer count = maintainTimeOutMap.get(userId);
+                    count = count + 1;
+                    maintainTimeOutMap.put(userId, count);
+                } else {
+                    maintainTimeOutMap.put(userId, 1);
+                }
+            }
+
+//            维修时长=完成时间-接单时间(分)
+            long maintainTime = finishTimeTime - receivingTime;
+            maintainTime = maintainTime / 1000 / 60;
+
+            if (maintainMap.containsKey(userId)) {
+//                  维修时长
+                Long maintainTotalTime = maintainMap.get(userId);
+                maintainTotalTime = maintainTotalTime + maintainTime;
+                maintainMap.put(userId, maintainTotalTime);
+            } else {
+                maintainMap.put(userId, maintainTime);
+            }
+
+        }
+
+
+        //        接单总次数
+        HashMap<Integer, List<Integer>> sendCountMap = new HashMap<>();
+
+//        接单超时次数
+        Map<Integer, Integer> sendTimeOutMap = new HashMap<>();
+
+//        接单总时长
+        Map<Integer, Long> sendMap = new HashMap<>();
+
+
+        LambdaQueryWrapper<RepairDispatchRecord> rdrsWrapper = new LambdaQueryWrapper<>();
+        rdrsWrapper.in(RepairDispatchRecord::getRecordId, recordList)
+                .isNotNull(RepairDispatchRecord::getReceivingTime);
+
+
+        List<RepairDispatchRecord> repairDispatchRecords = repairDispatchRecordService.list(rdrsWrapper);
+        for (RepairDispatchRecord repairDispatchRecord : repairDispatchRecords) {
+//                派单时间
+            long sendTime = repairDispatchRecord.getAssignedTime().getTime();
+//                接单考核时间
+            Integer acceptanceAssessTime = repairDispatchRecord.getAcceptanceAssessTime() * 1000 * 60;
+
+            long time = sendTime + acceptanceAssessTime;
+
+//                接单时间
+            long receivingTime = repairDispatchRecord.getReceivingTime().getTime();
+//            接单人
+            Integer usersId = repairDispatchRecord.getUsersId();
+            Integer recordId = repairDispatchRecord.getRecordId();
+
+            if (sendCountMap.containsKey(usersId)) {
+                List<Integer> integers = sendCountMap.get(usersId);
+                integers.add(recordId);
+                sendCountMap.put(usersId, integers);
+            } else {
+                ArrayList<Integer> integers = new ArrayList<>();
+                sendCountMap.put(usersId, integers);
+            }
+
+
+//              实际完成时间大于接单时间加考核时间为超时
+            if (receivingTime > time) {
+                if (sendTimeOutMap.containsKey(usersId)) {
+//                  次数
+                    Integer count = sendTimeOutMap.get(usersId);
+                    count = count + 1;
+                    sendTimeOutMap.put(usersId, count);
+                } else {
+                    sendTimeOutMap.put(usersId, 1);
+                }
+            }
+
+//            接单时长=接单时间-派单时间(分)
+            Long orderReceivingTime = receivingTime - sendTime;
+            orderReceivingTime = orderReceivingTime / 1000 / 60;
+
+            if (sendMap.containsKey(usersId)) {
+//                  接单总时长
+                Long sendTotalTime = sendMap.get(usersId);
+                sendTotalTime = sendTotalTime + orderReceivingTime;
+                sendMap.put(usersId, sendTotalTime);
+            } else {
+                sendMap.put(usersId, orderReceivingTime);
+            }
+
+
+        }
+
+
+        LambdaQueryWrapper<RepairUser> userWrapper = new LambdaQueryWrapper<>();
+        userWrapper.in(RepairUser::getId, userList);
+
+        List<RepairUser> users = repairUserService.list(userWrapper);
+
+
+        Wrapper<RepairSchool> schoolWrapper = new LambdaQueryWrapper<>();
+        List<RepairSchool> schoolList = repairSchoolService.list(schoolWrapper);
+
+
+        users.forEach(repairUser -> {
+            MaintenanceWorkerVo maintenanceWorkerVo = new MaintenanceWorkerVo();
+//            名字
+            maintenanceWorkerVo.setName(repairUser.getUserName());
+
+//            学校
+            Integer schoolId = repairUser.getSchoolId();
+            for (RepairSchool repairSchool : schoolList) {
+                Integer id = repairSchool.getId();
+                if (id.equals(schoolId)) {
+                    maintenanceWorkerVo.setSchoolName(repairSchool.getName());
+                }
+            }
+
+            Integer id = repairUser.getId();
+//            工单集合
+            List<Integer> recordsList = receivingCountMap.get(id);
+            int size = recordsList.size();
+            BigDecimal b = new BigDecimal(size);
+
+//            工单总数
+            maintenanceWorkerVo.setWorkOrderTotal(size);
+
+//            超时率
+            if (maintainTimeOutMap.containsKey(id)) {
+                Integer integer = maintainTimeOutMap.get(id);
+                BigDecimal a = new BigDecimal(integer);
+                BigDecimal c = b;
+//                接单
+                if (sendTimeOutMap.containsKey(id)) {
+                    Integer integer1 = sendTimeOutMap.get(id);
+                    BigDecimal bigDecimal = new BigDecimal(integer1);
+                    a = a.add(bigDecimal);
+                    List<Integer> integers = sendCountMap.get(id);
+                    c = c.add(new BigDecimal(integers.size()));
+                }
+
+                BigDecimal bigDecimal = a.divide(c, 2, BigDecimal.ROUND_HALF_UP);
+                BigDecimal multiply = bigDecimal.multiply(new BigDecimal(100));
+                maintenanceWorkerVo.setTimeOut(multiply + "%");
+            }
+
+//            平均维修时间
+            Long aLong = maintainMap.get(id);
+            BigDecimal bigDecimal = new BigDecimal(aLong);
+            BigDecimal maintain = bigDecimal.divide(b, 2, BigDecimal.ROUND_HALF_UP);
+            maintenanceWorkerVo.setMaintain(maintain);
+
+            //        平均响应时长
+            if (sendMap.containsKey(id)) {
+                Long aLong1 = sendMap.get(id);
+                BigDecimal bigDecimal1 = new BigDecimal(aLong1);
+                List<Integer> integers = sendCountMap.get(id);
+                BigDecimal bigDecimal2 = new BigDecimal(integers.size());
+                BigDecimal send = bigDecimal1.divide(bigDecimal2, 2, BigDecimal.ROUND_HALF_UP);
+                maintenanceWorkerVo.setAnswer(send);
+            }
+
+
+//            总费用
+            LambdaQueryWrapper<RepairRecord> recordWrapper = new LambdaQueryWrapper<>();
+            recordWrapper.in(RepairRecord::getId, recordsList);
+
+            List<RepairRecord> list = repairRecordService.list(recordWrapper);
+            BigDecimal totalPrice = new BigDecimal(0);
+            for (RepairRecord repairRecord : list) {
+                BigDecimal price = repairRecord.getPrice();
+                if (ObjectUtils.isNotEmpty(price)) {
+                    totalPrice = totalPrice.add(price);
+                }
+            }
+            maintenanceWorkerVo.setTotalPrice(totalPrice);
+
+//            好评率
+            LambdaQueryWrapper<RepairEvaluate> evaluateWrapper = new LambdaQueryWrapper<>();
+            evaluateWrapper.in(RepairEvaluate::getRecordId, recordsList);
+//      根据工单id来查询对应的评价
+            List<RepairEvaluate> repairEvaluates = repairEvaluateService.list(evaluateWrapper);
+            BigDecimal evaluatesDecimal = new BigDecimal(repairEvaluates.size());
+            BigDecimal satisfaction = new BigDecimal(0);
+            for (RepairEvaluate repairEvaluate : repairEvaluates) {
+                Integer star = repairEvaluate.getStar();
+                if (star > 3) {
+                    satisfaction = satisfaction.add(new BigDecimal(1));
+                }
+            }
+            BigDecimal degreePraise = satisfaction.divide(evaluatesDecimal, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
+            maintenanceWorkerVo.setDegreePraise(degreePraise + "%");
+
+
+            vos.add(maintenanceWorkerVo);
+        });
+
+            for (int i = 0; i < vos.size(); i++) {
+                MaintenanceWorkerVo vo = vos.get(i);
+                Row dataRow1 = sheet.createRow(i + 1);
+                dataRow1.createCell(0).setCellValue(i+1);
+                dataRow1.createCell(1).setCellValue(vo.getSchoolName());
+                dataRow1.createCell(2).setCellValue(vo.getName());
+                dataRow1.createCell(3).setCellValue(vo.getWorkOrderTotal());
+                dataRow1.createCell(4).setCellValue( vo.getDegreePraise());
+                dataRow1.createCell(5).setCellValue( vo.getTimeOut());
+                BigDecimal answer = vo.getAnswer();
+                if (ObjectUtils.isEmpty(answer)) {
+                    answer=new BigDecimal(0);
+                }
+                dataRow1.createCell(6).setCellValue(answer.toString());
+                BigDecimal maintain = vo.getMaintain();
+                if (ObjectUtils.isEmpty(maintain)) {
+                    maintain=new BigDecimal(0);
+                }
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
 
 
             //        接单总次数
@@ -2950,6 +3248,7 @@ public class RepairRecordController implements RepairRecordControllerAPI {
 
             }
 
+<<<<<<< HEAD
 
             LambdaQueryWrapper<RepairUser> userWrapper = new LambdaQueryWrapper<>();
             userWrapper.in(RepairUser::getId, userList);
@@ -3081,8 +3380,11 @@ public class RepairRecordController implements RepairRecordControllerAPI {
                 }
                 dataRow1.createCell(8).setCellValue( totalPrice.toString());
 
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
             }
         }
+
         // 将工作簿写入文件
         ExcelUtils.excelDownload(workbook, "维修师傅.xlsx", response);
 
@@ -3267,7 +3569,11 @@ public class RepairRecordController implements RepairRecordControllerAPI {
             }
             vos.add(vo);
         }
+<<<<<<< HEAD
 
+=======
+        
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
 
         return CommonResult.ok(vos);
     }

+ 1 - 1
src/main/java/com/repair/core/JwtlnterceptorConfig.java

@@ -14,7 +14,7 @@ public class JwtlnterceptorConfig implements WebMvcConfigurer {
         //目前测试下来 使用 /**所有的话,response.sendError浏览器获取不到响应的信息
         //默认拦截所有路径
         registry.addInterceptor(authenticationInterceptor())
-                .addPathPatterns("/api/**");
+                .addPathPatterns("/api0/**");
         //endregion
     }
 

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

@@ -81,8 +81,11 @@ public interface RepairRecordMapper extends BaseMapper<RepairRecord> {
 
     List<MaintenanceGoodsVo>  maintenanceGoodsExport(String startTime, String endTime);
 
+<<<<<<< HEAD
     DetailsVo queryDetailData(@Param("recordId") Integer recordId);
 	
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     RepairAnalysisVo repairAnalysis(@Param("startTime")String startTime,@Param("endTime") String endTime);
 
     Integer queryTimeOut(@Param("startTime")String startTime,@Param("endTime") String endTime);

+ 22 - 0
src/main/java/com/repair/model/vo/RepairAnalysisVo.java

@@ -5,6 +5,7 @@ import lombok.Data;
 @Data
 public class RepairAnalysisVo {
 
+<<<<<<< HEAD
     //    总单数
     private Integer totalCount;
     //    待审核
@@ -24,6 +25,27 @@ public class RepairAnalysisVo {
     //    待处理
     private Integer disposeCount;
     //    待确认
+=======
+    //
+    private Integer totalCount;
+    //
+    private Integer checkCount;
+    //
+    private Integer receivingCount;
+    //
+    private Integer maintainCount;
+    //
+    private Integer accomplishCount;
+    //
+    private Integer shutCount;
+    //
+    private Integer timeOutCount;
+    //
+    private Integer cancelCount;
+    //
+    private Integer disposeCount;
+    //
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     private Integer affirmCount;
 
 }

+ 22 - 0
src/main/java/com/repair/model/vo/RepairSummarizingVo.java

@@ -4,6 +4,7 @@ import lombok.Data;
 
 @Data
 public class RepairSummarizingVo {
+<<<<<<< HEAD
 //    时间
     private String dateName;
     //    总单数
@@ -23,5 +24,26 @@ public class RepairSummarizingVo {
     //    待处理
     private Integer disposeCount;
     //    待确认
+=======
+//
+    private String dateName;
+    //
+    private Integer totalCount;
+    //
+    private Integer checkCount;
+    //
+    private Integer receivingCount;
+    //
+    private Integer maintainCount;
+    //
+    private Integer accomplishCount;
+    //
+    private Integer shutCount;
+    //
+    private Integer cancelCount;
+    //
+    private Integer disposeCount;
+    //
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     private Integer affirmCount;
 }

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

@@ -98,6 +98,9 @@ public interface RepairRecordService extends IService<RepairRecord> {
     Integer queryTimeOut(String startTime, String endTime);
 
     RepairSummarizingVo repairSummarizing(String startTime, String endTime);
+<<<<<<< HEAD
 	
     DetailsVo queryDetailData(Integer recordId);
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
 }

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

@@ -339,6 +339,7 @@ public class RepairRecordServiceImpl extends ServiceImpl<RepairRecordMapper, Rep
         RepairSummarizingVo vo=repairRecordMapper.repairSummarizing(startTime,endTime);
         return vo;
     }
+<<<<<<< HEAD
 	
     @Override
     public DetailsVo queryDetailData(Integer recordId) {
@@ -347,4 +348,6 @@ public class RepairRecordServiceImpl extends ServiceImpl<RepairRecordMapper, Rep
     }
 
 
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
 }

+ 3 - 0
src/main/resources/mapper/repair/RepairRecordMapper.xml

@@ -941,6 +941,7 @@
         GROUP BY rr.article_id) wx
     </select>
 
+<<<<<<< HEAD
     <!--报修详情-->
     <resultMap type="com.repair.model.vo.DetailsVo" id="detailDatasMap">
         <result property="id" column="id"/>
@@ -972,6 +973,8 @@
 
     </select>
 
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     <select id="repairAnalysis" resultType="com.repair.model.vo.RepairAnalysisVo">
         SELECT
         COUNT(*) AS total_count,

+ 3 - 0
target/classes/mapper/repair/RepairRecordMapper.xml

@@ -941,6 +941,7 @@
         GROUP BY rr.article_id) wx
     </select>
 
+<<<<<<< HEAD
     <!--报修详情-->
     <resultMap type="com.repair.model.vo.DetailsVo" id="detailDatasMap">
         <result property="id" column="id"/>
@@ -972,6 +973,8 @@
 
     </select>
 
+=======
+>>>>>>> 50f552bf470c81eada92cf60360c8142077f19e6
     <select id="repairAnalysis" resultType="com.repair.model.vo.RepairAnalysisVo">
         SELECT
         COUNT(*) AS total_count,