From 794546783a941be444319d98b1947dac23d65c2b Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期二, 10 十月 2023 16:22:56 +0800
Subject: [PATCH] 后台代码
---
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java | 568 +++++++++++++++++++------------------
.idea/workspace.xml | 265 +++++++---------
cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java | 8
3 files changed, 411 insertions(+), 430 deletions(-)
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 8080553..2808ca5 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -25,29 +25,51 @@
<select />
</component>
<component name="ChangeListManager">
- <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="10.8。1">
+ <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="10.8">
<change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePackageClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePackageClient.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/util/httpClinet/HttpClientUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/util/httpClinet/HttpClientUtil.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/mapper/PaymentCompetitionMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/mapper/PaymentCompetitionMapper.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/service/IPaymentCompetitionService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/service/IPaymentCompetitionService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackageController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackageController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TSiteController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TSiteController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TGameConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TGameConfig.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java" afterDir="false" />
@@ -55,6 +77,7 @@
<change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteBookingServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteBookingServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml" afterDir="false" />
</list>
+ <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" />
@@ -84,7 +107,7 @@
<option name="generalSettings">
<MavenGeneralSettings>
<option name="localRepository" value="C:\Users\45438\.m2\repository" />
- <option name="mavenHome" value="$PROJECT_DIR$/../../apache-maven-3.9.3" />
+ <option name="mavenHome" value="E:/apache-maven-3.9.3" />
<option name="userSettingsFile" value="C:\Users\45438\.m2\settings.xml" />
</MavenGeneralSettings>
</option>
@@ -95,66 +118,52 @@
<component name="ProblemsViewState">
<option name="selectedTabId" value="ProjectErrors" />
</component>
- <component name="ProjectColorInfo">{
- "associatedIndex": 2
-}</component>
<component name="ProjectId" id="2T0poWYlZShlnPso29uxjn4gQQo" />
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
- <ConfirmationsSetting value="1" id="Add" />
+ <ConfirmationsSetting value="2" id="Add" />
</component>
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
- <component name="PropertiesComponent">{
- "keyToString": {
- "DefaultHtmlFileTemplate": "HTML File",
- "RequestMappingsPanelOrder0": "0",
- "RequestMappingsPanelOrder1": "1",
- "RequestMappingsPanelWidth0": "75",
- "RequestMappingsPanelWidth1": "75",
- "RunOnceActivity.OpenProjectViewOnStart": "true",
- "RunOnceActivity.ShowReadmeOnStart": "true",
- "WebServerToolWindowFactoryState": "false",
- "git-widget-placeholder": "master",
- "ignore.virus.scanning.warn.message": "true",
- "last_opened_file_path": "D:/jdk",
- "node.js.detected.package.eslint": "true",
- "node.js.detected.package.tslint": "true",
- "node.js.selected.package.eslint": "(autodetect)",
- "node.js.selected.package.tslint": "(autodetect)",
- "nodejs_package_manager_path": "npm",
- "project.structure.last.edited": "项目",
- "project.structure.proportion": "0.15",
- "project.structure.side.proportion": "0.54367816",
- "service.view.auto.scroll.to.source": "true",
- "settings.editor.selected.configurable": "preferences.pluginManager",
- "spring.configuration.checksum": "6e27eb92c8707375af194da5aa857bbc",
- "vue.rearranger.settings.migration": "true"
- }
-}</component>
+ <component name="PropertiesComponent">
+ <property name="RequestMappingsPanelOrder0" value="0" />
+ <property name="RequestMappingsPanelOrder1" value="1" />
+ <property name="RequestMappingsPanelWidth0" value="75" />
+ <property name="RequestMappingsPanelWidth1" value="75" />
+ <property name="WebServerToolWindowFactoryState" value="false" />
+ <property name="aspect.path.notification.shown" value="true" />
+ <property name="nodejs_package_manager_path" value="npm" />
+ <property name="project.structure.last.edited" value="Project" />
+ <property name="project.structure.proportion" value="0.0" />
+ <property name="project.structure.side.proportion" value="0.2" />
+ <property name="settings.editor.selected.configurable" value="project.propVCSSupport.Confirmation" />
+ </component>
<component name="ReactorSettings">
<option name="notificationShown" value="true" />
</component>
<component name="RecentsManager">
- <key name="CopyFile.RECENT_KEYS">
- <recent name="D:\javaproject\play\cloud-server-parent" />
- <recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\WEB-INF\view\system\ball" />
- <recent name="D:\Javaproject\PlayPay\cloud-server-account\src\test\java\com\dsh" />
- <recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\static\modular\system\ball" />
- <recent name="D:\Javaproject\PlayPay\cloud-server-course\src\main\resources\mapper" />
- </key>
<key name="MoveFile.RECENT_KEYS">
<recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\tStudent" />
<recent name="D:\JavaTool\PlayPai1\cloud-server-parent" />
<recent name="D:\ttt\java\PlayPai\cloud-server-parent" />
</key>
<key name="CopyClassDialog.RECENTS_KEY">
+ <recent name="com.dsh.course.feignClient.account.model" />
+ <recent name="com.dsh.guns.modular.system.model.dto" />
<recent name="com.dsh.course.mapper" />
<recent name="com.dsh.course.service.impl" />
<recent name="com.dsh.course.service" />
<recent name="com.dsh.guns.modular.system.service.impl" />
<recent name="com.dsh.guns.modular.system.service" />
+ <recent name="com.dsh.other.mapper" />
+ </key>
+ <key name="CopyFile.RECENT_KEYS">
+ <recent name="D:\javaproject\play\cloud-server-parent" />
+ <recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\WEB-INF\view\system\ball" />
+ <recent name="D:\Javaproject\PlayPay\cloud-server-account\src\test\java\com\dsh" />
+ <recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\static\modular\system\ball" />
+ <recent name="D:\Javaproject\PlayPay\cloud-server-course\src\main\resources\mapper" />
</key>
</component>
<component name="RunDashboard">
@@ -163,8 +172,18 @@
<option value="SpringBootApplicationConfigurationType" />
</set>
</option>
+ <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.ManagementApplication">
+ <component name="RunManager" selected="Spring Boot.GatewayApplication">
<configuration name="BigDecimalToChineseWords" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="com.dsh.guns.modular.system.util.BigDecimalToChineseWords" />
<module name="mb-cloud-management" />
@@ -204,8 +223,8 @@
</configuration>
<configuration name="AccountApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<module name="mb-cloud-account" />
- <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.AccountApplication" />
+ <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@@ -220,8 +239,8 @@
</configuration>
<configuration name="ActivityApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<module name="mb-cloud-activity" />
- <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.ActivityApplication" />
+ <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@@ -235,16 +254,16 @@
</configuration>
<configuration name="CompetitionApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<module name="mb-cloud-competition" />
- <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.CompetitionApplication" />
+ <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="CourseApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<module name="mb-cloud-course" />
- <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.CourseApplication" />
+ <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@@ -257,10 +276,10 @@
</method>
</configuration>
<configuration name="ManagementApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
- <option name="ENABLE_JMX_AGENT" value="false" />
<module name="mb-cloud-management" />
- <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.ManagementApplication" />
+ <option name="ENABLE_JMX_AGENT" value="false" />
+ <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@@ -272,13 +291,6 @@
<option name="Make" enabled="true" />
</method>
</configuration>
- <configuration name="UserApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
- <module name="mb-cloud-user" />
- <option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.UserApplication" />
- <method v="2">
- <option name="Make" enabled="true" />
- </method>
- </configuration>
<configuration default="true" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<method v="2">
@@ -286,26 +298,45 @@
</method>
</configuration>
<list>
+ <item itemvalue="Application.BigDecimalToChineseWords" />
<item itemvalue="JUnit.AccountApplicationTests.contextLoads" />
<item itemvalue="Spring Boot.ManagementApplication" />
<item itemvalue="Spring Boot.GatewayApplication" />
<item itemvalue="Spring Boot.OtherApplication" />
- <item itemvalue="Spring Boot.UserApplication" />
<item itemvalue="Spring Boot.AccountApplication" />
<item itemvalue="Spring Boot.ActivityApplication" />
<item itemvalue="Spring Boot.AuthApplication" />
<item itemvalue="Spring Boot.CourseApplication" />
<item itemvalue="Spring Boot.CompetitionApplication" />
- <item itemvalue="应用程序.BigDecimalToChineseWords" />
</list>
<recent_temporary>
<list>
<item itemvalue="JUnit.AccountApplicationTests.contextLoads" />
- <item itemvalue="应用程序.BigDecimalToChineseWords" />
</list>
</recent_temporary>
</component>
- <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="应用程序级" UseSingleDictionary="true" transferred="true" />
+ <component name="ServiceViewManager">
+ <option name="allServicesViewState">
+ <serviceView>
+ <option name="contentProportion" value="0.21049784" />
+ <treeState>
+ <expand>
+ <path>
+ <item name="services root" type="e789fda9:ObjectUtils$Sentinel" />
+ <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@a01c4d91" type="7427dc5b:ServiceModel$ServiceGroupNode" />
+ </path>
+ <path>
+ <item name="services root" type="e789fda9:ObjectUtils$Sentinel" />
+ <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@a01c4d91" type="7427dc5b:ServiceModel$ServiceGroupNode" />
+ <item name="com.intellij.execution.services.ServiceModel$ServiceGroupNode@a16e2409" type="7427dc5b:ServiceModel$ServiceGroupNode" />
+ </path>
+ </expand>
+ <select />
+ </treeState>
+ </serviceView>
+ </option>
+ </component>
+ <component name="SpellCheckerSettings" BundledDictionaries="0" Folders="0" CustomDictionaries="0" Dictionaries="0" CorrectionsLimit="5" DefaultDictionary="应用程序级" UseSingleDictionary="true" />
<component name="SvnConfiguration">
<configuration>C:\Users\luo\AppData\Roaming\Subversion</configuration>
</component>
@@ -368,6 +399,8 @@
<workItem from="1696903826401" duration="164000" />
<workItem from="1696904129011" duration="6673000" />
<workItem from="1696917635013" duration="5121000" />
+ <workItem from="1696847977356" duration="7435000" />
+ <workItem from="1696898972818" duration="19012000" />
</task>
<task id="LOCAL-00001" summary="后台代码删除">
<created>1690249807612</created>
@@ -680,14 +713,22 @@
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
- <option name="version" value="3" />
+ <option name="version" value="1" />
+ <option name="exactExcludedFiles">
+ <list>
+ <option value="$PROJECT_DIR$/cloud-server-management/node_modules/zrender/index.js" />
+ <option value="$PROJECT_DIR$/cloud-server-management/node_modules/zrender/index.d.ts" />
+ </list>
+ </option>
</component>
<component name="Vcs.Log.Tabs.Properties">
<option name="TAB_STATES">
<map>
<entry key="MAIN">
<value>
- <State />
+ <State>
+ <option name="COLUMN_ORDER" />
+ </State>
</value>
</entry>
</map>
@@ -741,8 +782,23 @@
</line-breakpoint>
<line-breakpoint type="java-line">
<url>file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java</url>
- <line>1360</line>
+ <line>1365</line>
<option name="timeStamp" value="14" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java</url>
+ <line>472</line>
+ <option name="timeStamp" value="26" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageDiscountServiceImpl.java</url>
+ <line>389</line>
+ <option name="timeStamp" value="27" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java</url>
+ <line>251</line>
+ <option name="timeStamp" value="50" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
@@ -750,92 +806,5 @@
<component name="XSLT-Support.FileAssociations.UIState">
<expand />
<select />
- </component>
- <component name="masterDetails">
- <states>
- <state key="ArtifactsStructureConfigurable.UI">
- <settings>
- <artifact-editor />
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- <state key="FacetStructureConfigurable.UI">
- <settings>
- <last-edited>No facets are configured</last-edited>
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- <state key="GlobalLibrariesConfigurable.UI">
- <settings>
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- <state key="JdkListConfigurable.UI">
- <settings>
- <last-edited>1.8</last-edited>
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- <state key="ModuleStructureConfigurable.UI">
- <settings>
- <last-edited>PlayPai</last-edited>
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- <option value="0.6" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- <state key="ProjectJDKs.UI">
- <settings>
- <last-edited>1.8</last-edited>
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- <state key="ProjectLibrariesConfigurable.UI">
- <settings>
- <splitter-proportions>
- <option name="proportions">
- <list>
- <option value="0.2" />
- </list>
- </option>
- </splitter-proportions>
- </settings>
- </state>
- </states>
</component>
</project>
\ No newline at end of file
diff --git a/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java b/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
index 664a52c..551c246 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
@@ -457,9 +457,9 @@
- Integer coursePackagePayments = coursePackageClient.queryByCode(code);
- Integer paymentCompetitions = competitionsClient.queryByCode(code);
- Integer siteBookings = siteClient.queryByCode(code);
+// Integer coursePackagePayments = coursePackageClient.queryByCode(code);
+// Integer paymentCompetitions = competitionsClient.queryByCode(code);
+// Integer siteBookings = siteClient.queryByCode(code);
@@ -487,7 +487,7 @@
-
+ return ResultUtil.success();
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java
index ecf2190..ee240cb 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java
@@ -128,79 +128,77 @@
competitionQuery.setInsertType(roleType);
incomeQuery.setInsertType(roleType);
incomeQuery.setInsertType(roleType);
-
IncomeVO incomeVO = new IncomeVO();
List<IncomeVO> incomeVOS = new ArrayList<>();
- // 会员支付记录
- List<VipPayment> vipPayments = vipPaymentClient.registrationList(incomeQuery);
- for (VipPayment vipPayment : vipPayments) {
- IncomeVO temp = new IncomeVO();
- if (vipPayment.getPayStatus()==1){
- temp.setInsertTime(vipPayment.getInsertTime());
- incomeVOS.add(temp);
- }
- if (vipPayment.getAmount() != null) {
- temp.setAmount(new BigDecimal(vipPayment.getAmount().toString()));
- }
- }
- // 充值记录
- List<RechargeRecordsVO> rechargeRecordsVOS = financeClient.rechargeList(rechargeRecordsQuery);
- List<RechargeRecords> rechargeRecords = financeClient.rechargeList1(rechargeRecordsQuery);
- for (RechargeRecordsVO rechargeRecordsVO : rechargeRecordsVOS) {
- IncomeVO temp = new IncomeVO();
- temp.setInsertTime(rechargeRecordsVO.getInsertTime());
- if (rechargeRecordsVO.getAmount() != null) {
- temp.setAmount(rechargeRecordsVO.getAmount());
- }
- if (rechargeRecordsVO.getPayStatus() ==1){
- incomeVOS.add(temp);
- }
+ // 会员支付记录
+ List<VipPayment> vipPayments = vipPaymentClient.registrationList(incomeQuery);
+ for (VipPayment vipPayment : vipPayments) {
+ IncomeVO temp = new IncomeVO();
+ if (vipPayment.getPayStatus()==1){
+ temp.setInsertTime(vipPayment.getInsertTime());
+ incomeVOS.add(temp);
+ }
+ if (vipPayment.getAmount() != null) {
+ temp.setAmount(new BigDecimal(vipPayment.getAmount().toString()));
+ }
+ }
+ // 充值记录
+ List<RechargeRecordsVO> rechargeRecordsVOS = financeClient.rechargeList(rechargeRecordsQuery);
+ for (RechargeRecordsVO rechargeRecordsVO : rechargeRecordsVOS) {
+ IncomeVO temp = new IncomeVO();
+ temp.setInsertTime(rechargeRecordsVO.getInsertTime());
+ if (rechargeRecordsVO.getAmount() != null) {
+ temp.setAmount(rechargeRecordsVO.getAmount());
+ }
+ if (rechargeRecordsVO.getPayStatus() ==1){
+ incomeVOS.add(temp);
+ }
- }
- // 报名课程记录
- List<RegisterOrderVO> registerOrderVOS = coursePackagePaymentClient.listAllRegister(query);
- for (RegisterOrderVO registerOrderVO : registerOrderVOS) {
- if (registerOrderVO.getMoney() == null) {
- continue;
- }
- IncomeVO temp = new IncomeVO();
- temp.setInsertTime(registerOrderVO.getInsertTime());
- if (registerOrderVO.getMoney() != null) {
- temp.setAmount(registerOrderVO.getMoney());
- }
- if (registerOrderVO.getPayStatus()==2){
- incomeVOS.add(temp);
- }
- }
- // 报名活动
- List<PaymentCompetition> competitions = competitionClient.listAllPayment(competitionQuery);
- for (PaymentCompetition competition : competitions) {
- if (competition.getPayStatus() != 2) {
- continue;
- }
- if (competition.getPayType()==3 || competition.getPayType()==4){
- continue;
- }
- IncomeVO temp = new IncomeVO();
- temp.setInsertTime(competition.getInsertTime());
- if (competition.getAmount() != null) {
- temp.setAmount(new BigDecimal(competition.getAmount().toString()));
- }
- incomeVOS.add(temp);
- }
- // 预约场地
- List<SiteBooking> siteBookings = siteClient.listAll(siteBookingQuery);
- for (SiteBooking siteBooking : siteBookings) {
- IncomeVO temp = new IncomeVO();
- if(siteBooking.getStatus()!=3){
- continue;
- }
- temp.setInsertTime(siteBooking.getPayTime());
- if (siteBooking.getPayMoney() != null) {
- temp.setAmount(new BigDecimal(siteBooking.getPayMoney().toString()));
- }
- incomeVOS.add(temp);
- }
+ }
+ // 报名课程记录
+ List<RegisterOrderVO> registerOrderVOS = coursePackagePaymentClient.listAllRegister(query);
+ for (RegisterOrderVO registerOrderVO : registerOrderVOS) {
+ if (registerOrderVO.getMoney() == null) {
+ continue;
+ }
+ IncomeVO temp = new IncomeVO();
+ temp.setInsertTime(registerOrderVO.getInsertTime());
+ if (registerOrderVO.getMoney() != null) {
+ temp.setAmount(registerOrderVO.getMoney());
+ }
+ if (registerOrderVO.getPayStatus()==2){
+ incomeVOS.add(temp);
+ }
+ }
+ // 报名活动
+ List<PaymentCompetition> competitions = competitionClient.listAllPayment(competitionQuery);
+ for (PaymentCompetition competition : competitions) {
+ if (competition.getPayStatus() != 2) {
+ continue;
+ }
+ if (competition.getPayType()==3 || competition.getPayType()==4){
+ continue;
+ }
+ IncomeVO temp = new IncomeVO();
+ temp.setInsertTime(competition.getInsertTime());
+ if (competition.getAmount() != null) {
+ temp.setAmount(new BigDecimal(competition.getAmount().toString()));
+ }
+ incomeVOS.add(temp);
+ }
+ // 预约场地
+ List<SiteBooking> siteBookings = siteClient.listAll(siteBookingQuery);
+ for (SiteBooking siteBooking : siteBookings) {
+ IncomeVO temp = new IncomeVO();
+ if(siteBooking.getStatus()!=3){
+ continue;
+ }
+ temp.setInsertTime(siteBooking.getPayTime());
+ if (siteBooking.getPayMoney() != null) {
+ temp.setAmount(new BigDecimal(siteBooking.getPayMoney().toString()));
+ }
+ incomeVOS.add(temp);
+ }
// 积分商品
List<PointMerchandiseIncomeVo> amount = pointMercharsClient.getAmount();
for (PointMerchandiseIncomeVo pointMerchandiseIncomeVo : amount) {
@@ -211,7 +209,6 @@
incomeVOS.add(temp);
}
}
-
// 最终返回的数据
Map<String, List<Object>> monthlyData = new HashMap<>();
// 创建一个 Map 用于存储每年的累计 amount
@@ -252,216 +249,231 @@
for (int i = 0; i < 10; i++) {
integers1.add(years-i);
}
- for (int year = integers1.get(0); year >= integers1.get(integers1.size()-1); year++) {
- BigDecimal totalAmount = yearToTotalAmountMap.getOrDefault(year, BigDecimal.ZERO);
- // 创建一个新的 IncomeVO 对象,并设置年份和累计金额
- IncomeVO resultIncomeVO = new IncomeVO();
- resultIncomeVO.setAmount(totalAmount);
- resultIncomeVOS.add(resultIncomeVO);
- }
- monthlyData.put("yearIncome",resultIncomeVOS);
-
- // 创建一个 Map 用于存储今年每个月的累计 amount
- Map<Integer, BigDecimal> monthToTotalAmountMap = new HashMap<>();
- Calendar calendar = Calendar.getInstance();
- int currentYear = calendar.get(Calendar.YEAR);
- List<BigDecimal> monthlyAmountList = new ArrayList<>(Collections.nCopies(12, BigDecimal.ZERO));
-
- for (IncomeVO incomeVO1 : incomeVOS) {
- Calendar calendar1 = Calendar.getInstance();
- calendar1.setTime(incomeVO1.getInsertTime());
- int year = calendar1.get(Calendar.YEAR);
- int month = calendar1.get(Calendar.MONTH) + 1; // 月份从0开始,所以需要加1
- if (year == currentYear) {
- BigDecimal totalAmount = monthlyAmountList.get(month - 1);
- totalAmount = totalAmount.add(incomeVO1.getAmount());
- monthlyAmountList.set(month - 1, totalAmount);
- }
- }
- monthlyData.put("monthIncome", Collections.singletonList(monthlyAmountList));
-
- // 获取当前月份
- LocalDate currentDate = LocalDate.now();
- int currentMonth = currentDate.getMonthValue();
- // 初始化一个长度为当前月份的天数的列表,并将每一天的金额初始化为零
- int daysInCurrentMonth = currentDate.lengthOfMonth();
- List<BigDecimal> weekAmount = new ArrayList<>();
-
- // 获取最近四周
- LocalDateTime minNow = LocalDateTime.now().with(LocalTime.MIN);
- LocalDateTime maxNow = LocalDateTime.now().with(LocalTime.MAX);
- // 周度数据
- LocalDateTime week1Start = minNow.minusDays(6);
- LocalDateTime week1End = maxNow;
-
- LocalDateTime week2Start = minNow.minusDays(13);
- LocalDateTime week2End = minNow.minusDays(7);
-
- LocalDateTime week3Start = minNow.minusDays(20);
- LocalDateTime week3End = minNow.minusDays(14);
-
- LocalDateTime week4Start = minNow.minusDays(27);
- LocalDateTime week4End = minNow.minusDays(21);
- // 用于存放四个周的数据
+ List<Object> collect = integers1.stream().sorted().collect(Collectors.toList());
List<Object> objects1 = new ArrayList<>();
- // 计算每个周的amount总和
- BigDecimal tAmount1 = BigDecimal.ZERO;
- BigDecimal tAmount2 = BigDecimal.ZERO;
- BigDecimal tAmount3 = BigDecimal.ZERO;
- BigDecimal tAmount4 = BigDecimal.ZERO;
- for (IncomeVO incomeVO1 : incomeVOS) {
- Date insertTime = incomeVO1.getInsertTime();
- // 将Date转换为LocalDateTime
- Instant instant = insertTime.toInstant();
- ZoneId zoneId = ZoneId.systemDefault();
- LocalDateTime dateTime = instant.atZone(zoneId).toLocalDateTime();
- // 判断该数据属于哪个周
- if (dateTime.isAfter(week1Start) && dateTime.isBefore(week1End)) {
- BigDecimal amount1 = incomeVO1.getAmount();
- tAmount1=tAmount1.add(amount1);
- } else if (dateTime.isAfter(week2Start) && dateTime.isBefore(week2End)) {
- BigDecimal amount1 = incomeVO1.getAmount();
- tAmount2=tAmount2.add(amount1);
- } else if (dateTime.isAfter(week3Start) && dateTime.isBefore(week3End)) {
- BigDecimal amount1 = incomeVO1.getAmount();
- tAmount4=tAmount3.add(amount1);
- } else if (dateTime.isAfter(week4Start) && dateTime.isBefore(week4End)) {
- BigDecimal amount1 = incomeVO1.getAmount();
- tAmount4=tAmount4.add(amount1);
- }
+ for (Object o : collect) {
+ BigDecimal orDefault = yearToTotalAmountMap.getOrDefault(Integer.valueOf(o.toString()), BigDecimal.ZERO);
+ objects1.add(orDefault);
}
- weekAmount.add(tAmount1);
- weekAmount.add(tAmount2);
- weekAmount.add(tAmount3);
- weekAmount.add(tAmount4);
- monthlyData.put("weekIncome", Collections.singletonList(weekAmount));
-
- LocalDateTime currentDateTime = LocalDateTime.now();
- List<BigDecimal> amountByDay = new ArrayList<>(Collections.nCopies(7, BigDecimal.ZERO));
- for (IncomeVO incomeVO3 : incomeVOS) {
- Date insertTime = incomeVO3.getInsertTime();
- // 将 Date 转换为 LocalDateTime
- LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
- // 计算日期与当前日期的差距
- long daysDifference = ChronoUnit.DAYS.between(insertDateTime.toLocalDate(), currentDateTime.toLocalDate());
- // 如果日期在七天内,累加金额
- if (daysDifference >= 0 && daysDifference < 7) {
- int index = (int) (6 - daysDifference); // 计算对应的索引位置
- BigDecimal amount3 = incomeVO3.getAmount();
- BigDecimal updatedAmount = amountByDay.get(index).add(amount3);
- amountByDay.set(index, updatedAmount);
-
- }
- }
-
- monthlyData.put("dayIncome", Collections.singletonList(amountByDay));
- // 获取当前日期和时间
- LocalDateTime now = LocalDateTime.now();
- // 今年的起始日期和结束日期
- LocalDateTime startOfYear = now.with(TemporalAdjusters.firstDayOfYear()).with(LocalTime.MIN);
- LocalDateTime endOfYear = now.with(TemporalAdjusters.lastDayOfYear()).with(LocalTime.MAX);
- // 本月的起始日期和结束日期
- LocalDateTime startOfMonth = now.with(TemporalAdjusters.firstDayOfMonth()).with(LocalTime.MIN);
- LocalDateTime endOfMonth = now.with(TemporalAdjusters.lastDayOfMonth()).with(LocalTime.MAX);
- // 本周的起始日期和结束日期
- LocalDateTime startOfWeek = now.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY)).with(LocalTime.MIN);
- LocalDateTime endOfWeek = now.with(TemporalAdjusters.nextOrSame(DayOfWeek.SUNDAY)).with(LocalTime.MAX);
- // 今天的起始日期和结束日期
- LocalDateTime startOfDay = now.with(LocalTime.MIN);
- LocalDateTime endOfDay = now.with(LocalTime.MAX);
- // 创建日期格式化器
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- // 筛选符合条件的IncomeVO对象
- List<IncomeVO> thisYearIncome = incomeVOS.stream()
- .filter(income -> {
- Date insertTime = income.getInsertTime();
- try {
- LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
- return insertDateTime.isAfter(startOfYear) && insertDateTime.isBefore(endOfYear);
- } catch (Exception e) {
- e.printStackTrace();
- return false;
- }
- })
- .collect(Collectors.toList());
- // 使用 map 方法将 IncomeVO 转换为 BigDecimal,提取出 amount 字段
- List<BigDecimal> amounts = thisYearIncome.stream()
- .map(IncomeVO::getAmount)
- .collect(Collectors.toList());
- //本年总收入
- BigDecimal totalAmount = amounts.stream()
- .reduce(BigDecimal.ZERO, BigDecimal::add);
- // 用于展示总营收 本年度营收 本月营收 本周营收 本日营收
- objects.add(totalAmount);
- List<IncomeVO> thisMonthIncome = incomeVOS.stream()
- .filter(income -> {
- Date insertTime = income.getInsertTime();
- try {
- LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
- return insertDateTime.isAfter(startOfMonth) && insertDateTime.isBefore(endOfMonth);
- } catch (Exception e) {
- e.printStackTrace();
- return false;
- }
- })
- .collect(Collectors.toList());
- List<BigDecimal> amountMonth = thisMonthIncome.stream()
- .map(IncomeVO::getAmount)
- .collect(Collectors.toList());
- // 使用 本月总收入
- BigDecimal totalMonth = amountMonth.stream()
- .reduce(BigDecimal.ZERO, BigDecimal::add);
-
- objects.add(totalMonth);
- List<IncomeVO> thisWeekIncome = incomeVOS.stream()
- .filter(income -> {
- Date insertTime = income.getInsertTime();
- try {
- LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
- return insertDateTime.isAfter(startOfWeek) && insertDateTime.isBefore(endOfWeek);
- } catch (Exception e) {
- e.printStackTrace();
- return false;
- }
- })
- .collect(Collectors.toList());
- List<BigDecimal> amountWeek = thisWeekIncome.stream()
- .map(IncomeVO::getAmount)
- .collect(Collectors.toList());
- // 使用 本月总收入
- BigDecimal totalWeek = amountWeek.stream()
- .reduce(BigDecimal.ZERO, BigDecimal::add);
- objects.add(totalWeek);
- List<IncomeVO> todayIncome = incomeVOS.stream()
- .filter(income -> {
- Date insertTime = income.getInsertTime();
- try {
- LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
- return insertDateTime.isAfter(startOfDay) && insertDateTime.isBefore(endOfDay);
- } catch (Exception e) {
- e.printStackTrace();
- return false;
- }
- })
- .collect(Collectors.toList());
- List<BigDecimal> amountToday = todayIncome.stream()
- .map(IncomeVO::getAmount)
- .collect(Collectors.toList());
- // 使用 本月总收入
- BigDecimal totalToday = amountToday.stream()
- .reduce(BigDecimal.ZERO, BigDecimal::add);
- objects.add(totalToday);
- // 最后put
- monthlyData.put("yearMount",objects);
-
- ArrayList<Object> integers = new ArrayList<>();
- int year = DateUtil.year(new Date());
- for (int i = 0; i < 10; i++) {
- integers.add(year-i);
- }
- List<Object> collect = integers.stream().sorted().collect(Collectors.toList());
- monthlyData.put("year",collect);
+// for (int year = integers1.get(0); year >= integers1.get(integers1.size()-1); year++) {
+// BigDecimal totalAmount = yearToTotalAmountMap.getOrDefault(year, BigDecimal.ZERO);
+// // 创建一个新的 IncomeVO 对象,并设置年份和累计金额
+// IncomeVO resultIncomeVO = new IncomeVO();
+// resultIncomeVO.setAmount(totalAmount);
+// resultIncomeVOS.add(resultIncomeVO);
+// }
+ monthlyData.put("yearIncome",objects1);
return monthlyData;
+
+
+
+
+
+
+
+
+//
+// // 创建一个 Map 用于存储今年每个月的累计 amount
+// Map<Integer, BigDecimal> monthToTotalAmountMap = new HashMap<>();
+// Calendar calendar = Calendar.getInstance();
+// int currentYear = calendar.get(Calendar.YEAR);
+// List<BigDecimal> monthlyAmountList = new ArrayList<>(Collections.nCopies(12, BigDecimal.ZERO));
+//
+// for (IncomeVO incomeVO1 : incomeVOS) {
+// Calendar calendar1 = Calendar.getInstance();
+// calendar1.setTime(incomeVO1.getInsertTime());
+// int year = calendar1.get(Calendar.YEAR);
+// int month = calendar1.get(Calendar.MONTH) + 1; // 月份从0开始,所以需要加1
+// if (year == currentYear) {
+// BigDecimal totalAmount = monthlyAmountList.get(month - 1);
+// totalAmount = totalAmount.add(incomeVO1.getAmount());
+// monthlyAmountList.set(month - 1, totalAmount);
+// }
+// }
+// monthlyData.put("monthIncome", Collections.singletonList(monthlyAmountList));
+//
+// // 获取当前月份
+// LocalDate currentDate = LocalDate.now();
+// int currentMonth = currentDate.getMonthValue();
+// // 初始化一个长度为当前月份的天数的列表,并将每一天的金额初始化为零
+// int daysInCurrentMonth = currentDate.lengthOfMonth();
+// List<BigDecimal> weekAmount = new ArrayList<>();
+//
+// // 获取最近四周
+// LocalDateTime minNow = LocalDateTime.now().with(LocalTime.MIN);
+// LocalDateTime maxNow = LocalDateTime.now().with(LocalTime.MAX);
+// // 周度数据
+// LocalDateTime week1Start = minNow.minusDays(6);
+// LocalDateTime week1End = maxNow;
+//
+// LocalDateTime week2Start = minNow.minusDays(13);
+// LocalDateTime week2End = minNow.minusDays(7);
+//
+// LocalDateTime week3Start = minNow.minusDays(20);
+// LocalDateTime week3End = minNow.minusDays(14);
+//
+// LocalDateTime week4Start = minNow.minusDays(27);
+// LocalDateTime week4End = minNow.minusDays(21);
+// // 用于存放四个周的数据
+// List<Object> objects1 = new ArrayList<>();
+// // 计算每个周的amount总和
+// BigDecimal tAmount1 = BigDecimal.ZERO;
+// BigDecimal tAmount2 = BigDecimal.ZERO;
+// BigDecimal tAmount3 = BigDecimal.ZERO;
+// BigDecimal tAmount4 = BigDecimal.ZERO;
+// for (IncomeVO incomeVO1 : incomeVOS) {
+// Date insertTime = incomeVO1.getInsertTime();
+// // 将Date转换为LocalDateTime
+// Instant instant = insertTime.toInstant();
+// ZoneId zoneId = ZoneId.systemDefault();
+// LocalDateTime dateTime = instant.atZone(zoneId).toLocalDateTime();
+// // 判断该数据属于哪个周
+// if (dateTime.isAfter(week1Start) && dateTime.isBefore(week1End)) {
+// BigDecimal amount1 = incomeVO1.getAmount();
+// tAmount1=tAmount1.add(amount1);
+// } else if (dateTime.isAfter(week2Start) && dateTime.isBefore(week2End)) {
+// BigDecimal amount1 = incomeVO1.getAmount();
+// tAmount2=tAmount2.add(amount1);
+// } else if (dateTime.isAfter(week3Start) && dateTime.isBefore(week3End)) {
+// BigDecimal amount1 = incomeVO1.getAmount();
+// tAmount4=tAmount3.add(amount1);
+// } else if (dateTime.isAfter(week4Start) && dateTime.isBefore(week4End)) {
+// BigDecimal amount1 = incomeVO1.getAmount();
+// tAmount4=tAmount4.add(amount1);
+// }
+// }
+// weekAmount.add(tAmount1);
+// weekAmount.add(tAmount2);
+// weekAmount.add(tAmount3);
+// weekAmount.add(tAmount4);
+// monthlyData.put("weekIncome", Collections.singletonList(weekAmount));
+//
+// LocalDateTime currentDateTime = LocalDateTime.now();
+// List<BigDecimal> amountByDay = new ArrayList<>(Collections.nCopies(7, BigDecimal.ZERO));
+// for (IncomeVO incomeVO3 : incomeVOS) {
+// Date insertTime = incomeVO3.getInsertTime();
+// // 将 Date 转换为 LocalDateTime
+// LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
+// // 计算日期与当前日期的差距
+// long daysDifference = ChronoUnit.DAYS.between(insertDateTime.toLocalDate(), currentDateTime.toLocalDate());
+// // 如果日期在七天内,累加金额
+// if (daysDifference >= 0 && daysDifference < 7) {
+// int index = (int) (6 - daysDifference); // 计算对应的索引位置
+// BigDecimal amount3 = incomeVO3.getAmount();
+// BigDecimal updatedAmount = amountByDay.get(index).add(amount3);
+// amountByDay.set(index, updatedAmount);
+//
+// }
+// }
+//
+// monthlyData.put("dayIncome", Collections.singletonList(amountByDay));
+// // 获取当前日期和时间
+// LocalDateTime now = LocalDateTime.now();
+// // 今年的起始日期和结束日期
+// LocalDateTime startOfYear = now.with(TemporalAdjusters.firstDayOfYear()).with(LocalTime.MIN);
+// LocalDateTime endOfYear = now.with(TemporalAdjusters.lastDayOfYear()).with(LocalTime.MAX);
+// // 本月的起始日期和结束日期
+// LocalDateTime startOfMonth = now.with(TemporalAdjusters.firstDayOfMonth()).with(LocalTime.MIN);
+// LocalDateTime endOfMonth = now.with(TemporalAdjusters.lastDayOfMonth()).with(LocalTime.MAX);
+// // 本周的起始日期和结束日期
+// LocalDateTime startOfWeek = now.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY)).with(LocalTime.MIN);
+// LocalDateTime endOfWeek = now.with(TemporalAdjusters.nextOrSame(DayOfWeek.SUNDAY)).with(LocalTime.MAX);
+// // 今天的起始日期和结束日期
+// LocalDateTime startOfDay = now.with(LocalTime.MIN);
+// LocalDateTime endOfDay = now.with(LocalTime.MAX);
+// // 创建日期格式化器
+// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// // 筛选符合条件的IncomeVO对象
+// List<IncomeVO> thisYearIncome = incomeVOS.stream()
+// .filter(income -> {
+// Date insertTime = income.getInsertTime();
+// try {
+// LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
+// return insertDateTime.isAfter(startOfYear) && insertDateTime.isBefore(endOfYear);
+// } catch (Exception e) {
+// e.printStackTrace();
+// return false;
+// }
+// })
+// .collect(Collectors.toList());
+// // 使用 map 方法将 IncomeVO 转换为 BigDecimal,提取出 amount 字段
+// List<BigDecimal> amounts = thisYearIncome.stream()
+// .map(IncomeVO::getAmount)
+// .collect(Collectors.toList());
+// //本年总收入
+// BigDecimal totalAmount = amounts.stream()
+// .reduce(BigDecimal.ZERO, BigDecimal::add);
+// // 用于展示总营收 本年度营收 本月营收 本周营收 本日营收
+// objects.add(totalAmount);
+// List<IncomeVO> thisMonthIncome = incomeVOS.stream()
+// .filter(income -> {
+// Date insertTime = income.getInsertTime();
+// try {
+// LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
+// return insertDateTime.isAfter(startOfMonth) && insertDateTime.isBefore(endOfMonth);
+// } catch (Exception e) {
+// e.printStackTrace();
+// return false;
+// }
+// })
+// .collect(Collectors.toList());
+// List<BigDecimal> amountMonth = thisMonthIncome.stream()
+// .map(IncomeVO::getAmount)
+// .collect(Collectors.toList());
+// // 使用 本月总收入
+// BigDecimal totalMonth = amountMonth.stream()
+// .reduce(BigDecimal.ZERO, BigDecimal::add);
+//
+// objects.add(totalMonth);
+// List<IncomeVO> thisWeekIncome = incomeVOS.stream()
+// .filter(income -> {
+// Date insertTime = income.getInsertTime();
+// try {
+// LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
+// return insertDateTime.isAfter(startOfWeek) && insertDateTime.isBefore(endOfWeek);
+// } catch (Exception e) {
+// e.printStackTrace();
+// return false;
+// }
+// })
+// .collect(Collectors.toList());
+// List<BigDecimal> amountWeek = thisWeekIncome.stream()
+// .map(IncomeVO::getAmount)
+// .collect(Collectors.toList());
+// // 使用 本月总收入
+// BigDecimal totalWeek = amountWeek.stream()
+// .reduce(BigDecimal.ZERO, BigDecimal::add);
+// objects.add(totalWeek);
+// List<IncomeVO> todayIncome = incomeVOS.stream()
+// .filter(income -> {
+// Date insertTime = income.getInsertTime();
+// try {
+// LocalDateTime insertDateTime = LocalDateTime.ofInstant(insertTime.toInstant(), ZoneId.systemDefault());
+// return insertDateTime.isAfter(startOfDay) && insertDateTime.isBefore(endOfDay);
+// } catch (Exception e) {
+// e.printStackTrace();
+// return false;
+// }
+// })
+// .collect(Collectors.toList());
+// List<BigDecimal> amountToday = todayIncome.stream()
+// .map(IncomeVO::getAmount)
+// .collect(Collectors.toList());
+// // 使用 本月总收入
+// BigDecimal totalToday = amountToday.stream()
+// .reduce(BigDecimal.ZERO, BigDecimal::add);
+// objects.add(totalToday);
+// // 最后put
+// monthlyData.put("yearMount",objects);
+//
+// ArrayList<Object> integers = new ArrayList<>();
+// int year = DateUtil.year(new Date());
+// for (int i = 0; i < 10; i++) {
+// integers.add(year-i);
+// }
+// List<Object> collect = integers.stream().sorted().collect(Collectors.toList());
+// monthlyData.put("year",collect);
+// return monthlyData;
}
--
Gitblit v1.7.1