.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> 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(); } 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; }