数据同步功能修改

master
白美平 3 months ago
parent 60317b725d
commit d0ce5007de

@ -10,29 +10,41 @@
<option name="autoReloadType" value="SELECTIVE" /> <option name="autoReloadType" value="SELECTIVE" />
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="29bcb86b-1634-41e0-a498-79481163cba8" name="Changes" comment="修改积分核销失败的问题"> <list default="true" id="29bcb86b-1634-41e0-a498-79481163cba8" name="Changes" comment="数据同步">
<change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/controller/SolveIntegralController.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/AtomikosConfig.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralRebatSolveServiceImpl.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/DBSrcBak.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/CopilotChatHistory.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/CopilotChatHistory.xml" afterDir="false" /> <change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/DBSrcPetrol.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/Mapper.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/Mapper.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/common/GlobalExceptionHandler.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/common/GlobalExceptionHandler.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/IntegralManagerApplication.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/IntegralManagerApplication.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/MyEnvironmentPostProcessor.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/MyEnvironmentPostProcessor.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/config/DataSourceConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/DataSourceConfig.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/config/DataSourceConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/DataSourceConfig.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/config/MybatisConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/MybatisConfig.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/config/MybatisConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/config/MybatisConfig.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/controller/UserController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/controller/UserController.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ApponintmentInfoServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ApponintmentInfoServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/controller/UserVehicleController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/controller/UserVehicleController.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/CommonServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/CommonServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/IntegrationListMyMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/IntegrationListMyMapper.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralAppServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralAppServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/IntegrationListMyMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/IntegrationListMyMapper.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralLevelMessageServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralLevelMessageServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/UserTableMysqlMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/UserTableMysqlMapper.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralRebatSolveServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralRebatSolveServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/UserTableMysqlMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/mysqlmapper/UserTableMysqlMapper.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralSeriveImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralSeriveImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/IntegrationListMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/IntegrationListMapper.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralSignServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralSignServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/IntegrationListMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/IntegrationListMapper.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralStarSetupServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegralStarSetupServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/UserTableMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/UserTableMapper.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegrationListServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/IntegrationListServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/UserTableMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/mapperset/oraclemapper/UserTableMapper.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/MessagePushServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/MessagePushServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/UserTableService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/UserTableService.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/OperatorsServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/OperatorsServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/QCodeInfoServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/QCodeInfoServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/RotationServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/RotationServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/SelectDataImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/SelectDataImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/SerivceAreaOperationMealServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/SerivceAreaOperationMealServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaPicServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaPicServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaSpecialServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/ServiceAreaSpecialServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/SolveUserAndVehcleServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/SolveUserAndVehcleServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserTableServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserTableServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserTableServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserTableServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserVehicleServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserVehicleServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserVehicleServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserVehicleServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/util/PubTools.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/util/PubTools.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/VehicleScoreServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/VehicleScoreServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/logback-spring.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/static/application.properties" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/static/application.properties" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/resources/static/application.properties" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/static/application.properties" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
@ -51,12 +63,14 @@
</component> </component>
<component name="FormatOnSaveOptions"> <component name="FormatOnSaveOptions">
<option name="myFormatOnlyChangedLines" value="true" /> <option name="myFormatOnlyChangedLines" value="true" />
<option name="myRunOnSave" value="true" />
</component> </component>
<component name="Git.Settings"> <component name="Git.Settings">
<option name="PUSH_AUTO_UPDATE" value="true" /> <option name="PUSH_AUTO_UPDATE" value="true" />
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" /> <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component> </component>
<component name="GoLibraries">
<option name="indexEntireGoPath" value="true" />
</component>
<component name="HighlightingSettingsPerFile"> <component name="HighlightingSettingsPerFile">
<setting file="file://$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserVehicleServiceImpl.java" root0="SKIP_INSPECTION" /> <setting file="file://$PROJECT_DIR$/src/main/java/com/nmgs/service/impl/UserVehicleServiceImpl.java" root0="SKIP_INSPECTION" />
</component> </component>
@ -96,71 +110,75 @@
<component name="ProjectViewState"> <component name="ProjectViewState">
<option name="showLibraryContents" value="true" /> <option name="showLibraryContents" value="true" />
</component> </component>
<component name="PropertiesComponent">{ <component name="PropertiesComponent"><![CDATA[{
&quot;keyToString&quot;: { "keyToString": {
&quot;ASKED_SHARE_PROJECT_CONFIGURATION_FILES&quot;: &quot;true&quot;, "ASKED_SHARE_PROJECT_CONFIGURATION_FILES": "true",
&quot;Application.DivPassDataImpl.executor&quot;: &quot;Run&quot;, "Application.DivPassDataImpl.executor": "Run",
&quot;Application.ImageUtils.executor&quot;: &quot;Run&quot;, "Application.ImageUtils.executor": "Run",
&quot;Application.OcrUtil.executor&quot;: &quot;Debug&quot;, "Application.OcrUtil.executor": "Debug",
&quot;Application.PubTools.executor&quot;: &quot;Run&quot;, "Application.PubTools.executor": "Run",
&quot;Application.QCodeInfoServiceImpl.executor&quot;: &quot;Debug&quot;, "Application.QCodeInfoServiceImpl.executor": "Debug",
&quot;Application.SensitiveFilter.executor&quot;: &quot;Run&quot;, "Application.SensitiveFilter.executor": "Run",
&quot;Application.main.executor&quot;: &quot;Run&quot;, "Application.main.executor": "Run",
&quot;Application.redisConfigUtil.executor&quot;: &quot;Debug&quot;, "Application.redisConfigUtil.executor": "Debug",
&quot;Maven.IntegraManager [clean].executor&quot;: &quot;Run&quot;, "Maven.IntegraManager [clean].executor": "Run",
&quot;Maven.IntegraManager [install].executor&quot;: &quot;Run&quot;, "Maven.IntegraManager [install].executor": "Run",
&quot;Maven.IntegralManager [clean].executor&quot;: &quot;Run&quot;, "Maven.IntegralManager [clean].executor": "Run",
&quot;Maven.IntegralManager [install].executor&quot;: &quot;Run&quot;, "Maven.IntegralManager [install].executor": "Run",
&quot;Maven.IntegralManager [site].executor&quot;: &quot;Run&quot;, "Maven.IntegralManager [site].executor": "Run",
&quot;Maven.IntegralManager [validate].executor&quot;: &quot;Run&quot;, "Maven.IntegralManager [validate].executor": "Run",
&quot;Maven.IntegralManagerSys [clean].executor&quot;: &quot;Run&quot;, "Maven.IntegralManager [verify].executor": "Run",
&quot;Maven.IntegralManagerSys [install].executor&quot;: &quot;Run&quot;, "Maven.IntegralManagerSys [clean].executor": "Run",
&quot;Maven.devProject [clean].executor&quot;: &quot;Run&quot;, "Maven.IntegralManagerSys [install].executor": "Run",
&quot;Maven.devProject [install].executor&quot;: &quot;Run&quot;, "Maven.devProject [clean].executor": "Run",
&quot;Maven.dev_project [clean].executor&quot;: &quot;Run&quot;, "Maven.devProject [install].executor": "Run",
&quot;Maven.dev_project [install].executor&quot;: &quot;Run&quot;, "Maven.dev_project [clean].executor": "Run",
&quot;Maven.special_event [clean].executor&quot;: &quot;Run&quot;, "Maven.dev_project [install].executor": "Run",
&quot;Maven.special_event [install].executor&quot;: &quot;Run&quot;, "Maven.special_event [clean].executor": "Run",
&quot;Maven.special_event [org.apache.maven.plugins:maven-assembly-plugin:3.3.0:single].executor&quot;: &quot;Run&quot;, "Maven.special_event [install].executor": "Run",
&quot;Maven.special_event [org.springframework.boot:spring-boot-maven-plugin:2.7.11:repackage].executor&quot;: &quot;Run&quot;, "Maven.special_event [org.apache.maven.plugins:maven-assembly-plugin:3.3.0:single].executor": "Run",
&quot;Maven.special_event [package].executor&quot;: &quot;Run&quot;, "Maven.special_event [org.springframework.boot:spring-boot-maven-plugin:2.7.11:repackage].executor": "Run",
&quot;Maven.special_event [validate].executor&quot;: &quot;Run&quot;, "Maven.special_event [package].executor": "Run",
&quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;, "Maven.special_event [validate].executor": "Run",
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;, "RunOnceActivity.OpenProjectViewOnStart": "true",
&quot;SHARE_PROJECT_CONFIGURATION_FILES&quot;: &quot;true&quot;, "RunOnceActivity.ShowReadmeOnStart": "true",
&quot;TomEE Server.special_event.executor&quot;: &quot;Debug&quot;, "RunOnceActivity.go.formatter.settings.were.checked": "true",
&quot;Tomcat Server.Tomcat 9.0.80.executor&quot;: &quot;Debug&quot;, "RunOnceActivity.go.migrated.go.modules.settings": "true",
&quot;deletionFromPopupRequiresConfirmation&quot;: &quot;false&quot;, "SHARE_PROJECT_CONFIGURATION_FILES": "true",
&quot;git-widget-placeholder&quot;: &quot;master&quot;, "TomEE Server.special_event.executor": "Debug",
&quot;kotlin-language-version-configured&quot;: &quot;true&quot;, "Tomcat Server.Tomcat 9.0.80.executor": "Debug",
&quot;last_opened_file_path&quot;: &quot;D:/workspace/IntegralManager&quot;, "deletionFromPopupRequiresConfirmation": "false",
&quot;node.js.detected.package.eslint&quot;: &quot;true&quot;, "git-widget-placeholder": "master",
&quot;node.js.detected.package.tslint&quot;: &quot;true&quot;, "go.import.settings.migrated": "true",
&quot;node.js.selected.package.eslint&quot;: &quot;(autodetect)&quot;, "kotlin-language-version-configured": "true",
&quot;node.js.selected.package.tslint&quot;: &quot;(autodetect)&quot;, "last_opened_file_path": "D:/workspace/DivDataProject",
&quot;nodejs_package_manager_path&quot;: &quot;npm&quot;, "node.js.detected.package.eslint": "true",
&quot;project.structure.last.edited&quot;: &quot;Artifacts&quot;, "node.js.detected.package.tslint": "true",
&quot;project.structure.proportion&quot;: &quot;0.15&quot;, "node.js.selected.package.eslint": "(autodetect)",
&quot;project.structure.side.proportion&quot;: &quot;0.37169158&quot;, "node.js.selected.package.tslint": "(autodetect)",
&quot;settings.editor.selected.configurable&quot;: &quot;reference.settings.project.maven.importing&quot;, "nodejs_package_manager_path": "npm",
&quot;vue.rearranger.settings.migration&quot;: &quot;true&quot; "project.structure.last.edited": "Artifacts",
"project.structure.proportion": "0.15",
"project.structure.side.proportion": "0.37169158",
"settings.editor.selected.configurable": "reference.settings.project.maven.importing",
"vue.rearranger.settings.migration": "true"
}, },
&quot;keyToStringList&quot;: { "keyToStringList": {
&quot;DatabaseDriversLRU&quot;: [ "DatabaseDriversLRU": [
&quot;oracle&quot; "oracle"
] ]
} }
}</component> }]]></component>
<component name="ReactorSettings"> <component name="ReactorSettings">
<option name="notificationShown" value="true" /> <option name="notificationShown" value="true" />
</component> </component>
<component name="RecentsManager"> <component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS"> <key name="CopyFile.RECENT_KEYS">
<recent name="D:\workspace\IntegralManager\src\main\java\com\nmgs\mapperset\mysqlmapper" /> <recent name="D:\workspace\IntegralManager\src\main\java\com\nmgs\config" />
<recent name="D:\workspace\IntegralManager\src\main\java\com\nmgs\mapperset\oraclemapper" /> <recent name="D:\workspace\IntegralManager\src\main\java\com\nmgs\mapperset\oraclemapper" />
<recent name="D:\workspace\IntegralManager\src\main\java\com\nmgs\mapperset\mysqlmapper" />
<recent name="D:\workspacebak\IntegralManager\src\main\java\com\nmgs\mapperset\mysqlmapper" /> <recent name="D:\workspacebak\IntegralManager\src\main\java\com\nmgs\mapperset\mysqlmapper" />
<recent name="D:\workspacebak\IntegralManager\src\main\java\com\nmgs\mapperset\oraclemapper" /> <recent name="D:\workspacebak\IntegralManager\src\main\java\com\nmgs\mapperset\oraclemapper" />
<recent name="D:\workspacebak\IntegralManager\src\main\java\com\nmgs\mapper\oraclemapper" />
</key> </key>
<key name="MoveFile.RECENT_KEYS"> <key name="MoveFile.RECENT_KEYS">
<recent name="E:\work\TGGLT-WorkSpace\dev_project\src\main\java\com\nmgs\mapper" /> <recent name="E:\work\TGGLT-WorkSpace\dev_project\src\main\java\com\nmgs\mapper" />
@ -649,7 +667,9 @@
<workItem from="1755564954257" duration="16711000" /> <workItem from="1755564954257" duration="16711000" />
<workItem from="1755760863043" duration="5702000" /> <workItem from="1755760863043" duration="5702000" />
<workItem from="1755767987191" duration="488000" /> <workItem from="1755767987191" duration="488000" />
<workItem from="1756173838376" duration="2903000" /> <workItem from="1756173838376" duration="4099000" />
<workItem from="1756363038283" duration="33354000" />
<workItem from="1756685986672" duration="20841000" />
</task> </task>
<task id="LOCAL-00001" summary="特请处理"> <task id="LOCAL-00001" summary="特请处理">
<option name="closed" value="true" /> <option name="closed" value="true" />
@ -891,7 +911,15 @@
<option name="project" value="LOCAL" /> <option name="project" value="LOCAL" />
<updated>1753759290530</updated> <updated>1753759290530</updated>
</task> </task>
<option name="localTasksCounter" value="31" /> <task id="LOCAL-00031" summary="数据同步">
<option name="closed" value="true" />
<created>1756191074573</created>
<option name="number" value="00031" />
<option name="presentableId" value="LOCAL-00031" />
<option name="project" value="LOCAL" />
<updated>1756191074573</updated>
</task>
<option name="localTasksCounter" value="32" />
<servers /> <servers />
</component> </component>
<component name="TypeScriptGeneratedFilesManager"> <component name="TypeScriptGeneratedFilesManager">
@ -930,7 +958,12 @@
<MESSAGE value="连接两个数据库进行同步数据,并且保持事务一致性" /> <MESSAGE value="连接两个数据库进行同步数据,并且保持事务一致性" />
<MESSAGE value="修改积分核销不显示核销的积分数" /> <MESSAGE value="修改积分核销不显示核销的积分数" />
<MESSAGE value="修改积分核销失败的问题" /> <MESSAGE value="修改积分核销失败的问题" />
<option name="LAST_COMMIT_MESSAGE" value="修改积分核销失败的问题" /> <MESSAGE value="数据同步" />
<option name="LAST_COMMIT_MESSAGE" value="数据同步" />
</component>
<component name="VgoProject">
<integration-enabled>false</integration-enabled>
<settings-migrated>true</settings-migrated>
</component> </component>
<component name="XDebuggerManager"> <component name="XDebuggerManager">
<breakpoint-manager> <breakpoint-manager>

@ -266,13 +266,14 @@
<resource> <resource>
<directory>src/main/resources</directory> <directory>src/main/resources</directory>
<excludes> <excludes>
<exclude>*.properties</exclude> <!--<exclude>*.properties</exclude>-->
<!-- <exclude>static/**</exclude> <!-- <exclude>static/**</exclude>
<exclude>excel/**</exclude> <exclude>excel/**</exclude>
<exclude>META-INF/spring.factories</exclude>--> <exclude>META-INF/spring.factories</exclude>-->
</excludes> </excludes>
<includes> <includes>
<include>logback-spring.xml</include> <include>logback-spring.xml</include>
<include>jta.properties</include>
<include>static/**</include> <include>static/**</include>
<include>excel/**</include> <include>excel/**</include>
<include>META-INF/spring.factories</include> <include>META-INF/spring.factories</include>

@ -5,9 +5,11 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@EnableAsync @EnableAsync
@SpringBootApplication @SpringBootApplication
@EnableTransactionManagement
public class IntegralManagerApplication extends SpringBootServletInitializer { public class IntegralManagerApplication extends SpringBootServletInitializer {
@Override @Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

@ -42,76 +42,67 @@ public class MyEnvironmentPostProcessor implements EnvironmentPostProcessor {
String DBType = properties.getProperty("DBType") == null ? "1" : properties.getProperty("DBType"); String DBType = properties.getProperty("DBType") == null ? "1" : properties.getProperty("DBType");
Newproperties.load(Files.newInputStream(Paths.get(NewPath))); Newproperties.load(Files.newInputStream(Paths.get(NewPath)));
properties.setProperty("spring.logback.logPath",PathUtil.TomcatPath+"/logs"); properties.setProperty("spring.logback.logPath",PathUtil.TomcatPath+"/logs");
properties.setProperty("spring.datasource.primary.jdbc-url", properties.getProperty("DBUrl")); properties.setProperty("spring.datasource.url",properties.getProperty("DBUrl"));
properties.setProperty("spring.datasource.primary.username", properties.getProperty("DBUserName")); properties.setProperty("spring.datasource.username",properties.getProperty("DBUserName"));
properties.setProperty("spring.datasource.primary.password", PassWordUtils.decrypt(properties.getProperty("DBPassWord"))); System.out.println(properties.getProperty("DBPassWord"));
properties.setProperty("spring.datasource.main.jdbc-url", properties.getProperty("DBUrl")); System.out.println(PassWordUtils.decrypt(properties.getProperty("DBPassWord")));
properties.setProperty("spring.datasource.main.username", properties.getProperty("DBUserName")); System.out.println(properties.getProperty("DBPassWord").toCharArray().length);
properties.setProperty("spring.datasource.main.password", PassWordUtils.decrypt(properties.getProperty("DBPassWord"))); properties.setProperty("spring.datasource.password",PassWordUtils.decrypt(properties.getProperty("DBPassWord")));
String BakDBType = properties.getProperty("BakDBType") == null ? "1" : properties.getProperty("BakDBType");
properties.setProperty("spring.datasource.db-petrol.jdbc-url",properties.getProperty("DBUrl"));
properties.setProperty("spring.datasource.db-petrol.username",properties.getProperty("DBUserName"));
properties.setProperty("spring.datasource.db-petrol.password",PassWordUtils.decrypt(properties.getProperty("DBPassWord")));
properties.setProperty("spring.datasource.db-bak.jdbc-url",properties.getProperty("BAKDBUrl"));
properties.setProperty("spring.datasource.db-bak.username",properties.getProperty("BAKDBUserName"));
properties.setProperty("spring.datasource.db-bak.password",PassWordUtils.decrypt(properties.getProperty("BAKDBPassWord")));
if(DBType.equals("1")){ if(DBType.equals("1")){
properties.setProperty("spring.datasource.primary.driver-class-name", Newproperties.getProperty("sqlClassName")); properties.setProperty("spring.datasource.db-petrol.driver-class-name",Newproperties.getProperty("sqlClassName"));
properties.setProperty("spring.datasource.primary.validationQuery", Newproperties.getProperty("sqlvalidationQuery")); properties.setProperty("spring.datasource.driver-class-name",Newproperties.getProperty("sqlClassName"));
properties.setProperty("spring.datasource.primary.hikari.connection-test-query", Newproperties.getProperty("sqlvalidationQuery")); properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("sqlvalidationQuery"));
properties.setProperty("spring.datasource.main.driver-class-name", Newproperties.getProperty("sqlClassName")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("sqlvalidationQuery"));
properties.setProperty("spring.datasource.main.validationQuery", Newproperties.getProperty("sqlvalidationQuery"));
properties.setProperty("spring.datasource.main.hikari.connection-test-query", Newproperties.getProperty("sqlvalidationQuery"));
}else if(DBType.equals("2")){ }else if(DBType.equals("2")){
properties.setProperty("spring.datasource.primary.driver-class-name", Newproperties.getProperty("OracleClassName")); properties.setProperty("spring.datasource.db-petrol.driver-class-name",Newproperties.getProperty("OracleClassName"));
properties.setProperty("spring.datasource.primary.validationQuery", Newproperties.getProperty("OraclevalidationQuery")); properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("OraclevalidationQuery"));
properties.setProperty("spring.datasource.primary.hikari.connection-test-query", Newproperties.getProperty("OraclevalidationQuery")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("OraclevalidationQuery"));
properties.setProperty("spring.datasource.main.driver-class-name", Newproperties.getProperty("OracleClassName"));
properties.setProperty("spring.datasource.main.validationQuery", Newproperties.getProperty("OraclevalidationQuery"));
properties.setProperty("spring.datasource.main.hikari.connection-test-query", Newproperties.getProperty("OraclevalidationQuery"));
}else if(DBType.equals("3")){ }else if(DBType.equals("3")){
properties.setProperty("spring.datasource.primary.driver-class-name", Newproperties.getProperty("DMClassName")); properties.setProperty("spring.datasource.db-petrol.driver-class-name",Newproperties.getProperty("DMClassName"));
properties.setProperty("spring.datasource.primary.validationQuery", Newproperties.getProperty("DMvalidationQuery")); properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("DMvalidationQuery"));
properties.setProperty("spring.datasource.primary.hikari.connection-test-query", Newproperties.getProperty("DMvalidationQuery")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("DMvalidationQuery"));
properties.setProperty("spring.datasource.main.driver-class-name", Newproperties.getProperty("DMClassName"));
properties.setProperty("spring.datasource.main.validationQuery", Newproperties.getProperty("DMvalidationQuery"));
properties.setProperty("spring.datasource.main.hikari.connection-test-query", Newproperties.getProperty("DMvalidationQuery"));
}else if(DBType.equals("4")){ }else if(DBType.equals("4")){
properties.setProperty("spring.datasource.primary.driver-class-name", Newproperties.getProperty("MySQLClassName")); properties.setProperty("spring.datasource.db-petrol.driver-class-name",Newproperties.getProperty("MySQLClassName"));
properties.setProperty("spring.datasource.primary.validationQuery", Newproperties.getProperty("MySQLvalidationQuery")); properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("MySQLvalidationQuery"));
properties.setProperty("spring.datasource.primary.hikari.connection-test-query", Newproperties.getProperty("MySQLvalidationQuery")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("MySQLvalidationQuery"));
properties.setProperty("spring.datasource.main.driver-class-name", Newproperties.getProperty("MySQLClassName"));
properties.setProperty("spring.datasource.main.validationQuery", Newproperties.getProperty("MySQLvalidationQuery"));
properties.setProperty("spring.datasource.main.hikari.connection-test-query", Newproperties.getProperty("MySQLvalidationQuery"));
} }
String BakDBType = properties.getProperty("BakDBType") == null ? "1" : properties.getProperty("BakDBType");
properties.setProperty("spring.datasource.bak.jdbc-url", properties.getProperty("BAKDBUrl")); if(BakDBType.equals("1")){
properties.setProperty("spring.datasource.bak.username", properties.getProperty("BAKDBUserName")); properties.setProperty("spring.datasource.db-bak.driver-class-name",Newproperties.getProperty("sqlClassName"));
properties.setProperty("spring.datasource.bak.password", PassWordUtils.decrypt(properties.getProperty("BAKDBPassWord"))); properties.setProperty("spring.datasource.driver-class-name",Newproperties.getProperty("sqlClassName"));
if (BakDBType.equals("1")) { properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("sqlvalidationQuery"));
properties.setProperty("spring.datasource.bak.driver-class-name", Newproperties.getProperty("sqlClassName")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("sqlvalidationQuery"));
properties.setProperty("spring.datasource.bak.validationQuery", Newproperties.getProperty("sqlvalidationQuery")); }else if(BakDBType.equals("2")){
properties.setProperty("spring.datasource.bak.hikari.connection-test-query", Newproperties.getProperty("sqlvalidationQuery")); properties.setProperty("spring.datasource.db-bak.driver-class-name",Newproperties.getProperty("OracleClassName"));
} else if (BakDBType.equals("2")) { properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("OraclevalidationQuery"));
properties.setProperty("spring.datasource.bak.driver-class-name", Newproperties.getProperty("OracleClassName")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("OraclevalidationQuery"));
properties.setProperty("spring.datasource.bak.validationQuery", Newproperties.getProperty("OraclevalidationQuery")); }else if(BakDBType.equals("3")){
properties.setProperty("spring.datasource.bak.hikari.connection-test-query", Newproperties.getProperty("OraclevalidationQuery")); properties.setProperty("spring.datasource.db-bak.driver-class-name",Newproperties.getProperty("DMClassName"));
} else if (BakDBType.equals("3")) { properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("DMvalidationQuery"));
properties.setProperty("spring.datasource.bak.driver-class-name", Newproperties.getProperty("DMClassName")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("DMvalidationQuery"));
properties.setProperty("spring.datasource.bak.validationQuery", Newproperties.getProperty("DMvalidationQuery")); }else if(BakDBType.equals("4")){
properties.setProperty("spring.datasource.bak.hikari.connection-test-query", Newproperties.getProperty("DMvalidationQuery")); properties.setProperty("spring.datasource.db-bak.driver-class-name",Newproperties.getProperty("MySQLClassName"));
} else if (BakDBType.equals("4")) { properties.setProperty("spring.datasource.validationQuery",Newproperties.getProperty("MySQLvalidationQuery"));
properties.setProperty("spring.datasource.bak.driver-class-name", Newproperties.getProperty("MySQLClassName")); properties.setProperty("spring.datasource.hikari.connection-test-query",Newproperties.getProperty("MySQLvalidationQuery"));
properties.setProperty("spring.datasource.bak.validationQuery", Newproperties.getProperty("MySQLvalidationQuery"));
properties.setProperty("spring.datasource.bak.hikari.connection-test-query", Newproperties.getProperty("MySQLvalidationQuery"));
} }
System.out.println("---------------------------IntegralManager本次载入数据库----------------------");
System.out.println(" url : " + properties.getProperty("spring.datasource.primary.jdbc-url")); System.out.println("---------------------------PetrolCafeteriaFee本次载入数据库----------------------");
System.out.println(" username : " + properties.getProperty("spring.datasource.primary.username")); System.out.println("server.port: " + properties.getProperty("server.port"));
System.out.println(" password : " + properties.getProperty("spring.datasource.primary.password")); System.out.println(" url : " + properties.getProperty("spring.datasource.url"));
System.out.println(" driver-class-name : " + properties.getProperty("spring.datasource.primary.driver-class-name")); System.out.println(" username : " + properties.getProperty("spring.datasource.username"));
System.out.println(" bakurl : " + properties.getProperty("spring.datasource.bak.jdbc-url")); System.out.println(" DBPassWord : " + properties.getProperty("spring.datasource.password"));
System.out.println(" bakusername : " + properties.getProperty("spring.datasource.bak.username")); System.out.println(" TimeZone : " + java.util.TimeZone.getDefault());
System.out.println(" bakpassword : " + properties.getProperty("spring.datasource.bak.password"));
System.out.println(" bakdriver-class-name : " + properties.getProperty("spring.datasource.bak.driver-class-name"));
System.out.println(" mainurl : " + properties.getProperty("spring.datasource.main.jdbc-url"));
System.out.println(" mainusername : " + properties.getProperty("spring.datasource.main.username"));
System.out.println(" mainpassword : " + properties.getProperty("spring.datasource.main.password"));
System.out.println(" maindriver-class-name : " + properties.getProperty("spring.datasource.main.driver-class-name"));
System.out.println("---------------------------IntegralManager本次载入数据库----------------------");
//环境名称随意取,但尽量不能和其他环境名称相同,避免不生效 //环境名称随意取,但尽量不能和其他环境名称相同,避免不生效
PropertiesPropertySource propertySource = new PropertiesPropertySource("environmentPostProcessor", properties); PropertiesPropertySource propertySource = new PropertiesPropertySource("environmentPostProcessor", properties);
PropertiesPropertySource newPropertySource = new PropertiesPropertySource("newEnvironmentPostProcessor", Newproperties); PropertiesPropertySource newPropertySource = new PropertiesPropertySource("newEnvironmentPostProcessor", Newproperties);

@ -0,0 +1,43 @@
package com.nmgs.config;
import com.atomikos.icatch.jta.UserTransactionImp;
import com.atomikos.icatch.jta.UserTransactionManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.DependsOn;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.jta.JtaTransactionManager;
import javax.transaction.TransactionManager;
import javax.transaction.UserTransaction;
/**
* JTA
*/
@Configuration
public class AtomikosConfig {
@Bean(name = "userTransaction")
public UserTransaction userTransaction() throws Throwable {
UserTransactionImp userTransactionImp = new UserTransactionImp();
userTransactionImp.setTransactionTimeout(600000);
return userTransactionImp;
}
@Bean(name = "atomikosTransactionManager")
public TransactionManager atomikosTransactionManager() throws Throwable {
UserTransactionManager userTransactionManager = new UserTransactionManager();
userTransactionManager.setForceShutdown(false);
userTransactionManager.setTransactionTimeout(600000);
return userTransactionManager;
}
@Bean(name = "transactionManager")
@DependsOn({ "userTransaction", "atomikosTransactionManager" })
public PlatformTransactionManager transactionManager() throws Throwable {
UserTransaction userTransaction = userTransaction();
TransactionManager atomikosTransactionManager = atomikosTransactionManager();
atomikosTransactionManager.setTransactionTimeout(600000);
return new JtaTransactionManager(userTransaction, atomikosTransactionManager);
}
}

@ -0,0 +1,45 @@
package com.nmgs.config;
import com.baomidou.mybatisplus.core.MybatisConfiguration;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import com.nmgs.util.PropertiesUtil;
import org.apache.ibatis.logging.stdout.StdOutImpl;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
@MapperScan(basePackages = {"com.nmgs.mapperset.mysqlmapper"}, sqlSessionFactoryRef = "sqlSessionFactoryBak")
public class DBSrcBak {
@Autowired
MybatisPlusInterceptor mybatisPlusInterceptor;
@Bean
public SqlSessionFactory sqlSessionFactoryBak(@Qualifier("db_bak") DataSource dataSource) throws Exception {
MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
sqlSessionFactory.setDataSource(dataSource);
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.addInterceptor(mybatisPlusInterceptor);
// 配置打印sql语句
if("Y".equals(PropertiesUtil.getValue("mybatislogImplEnabled"))){
configuration.setLogImpl(StdOutImpl.class);
}
sqlSessionFactory.setConfiguration(configuration);
// sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver()
// .getResources("classpath:mapper/check/**/*.xml"));
return sqlSessionFactory.getObject();
}
@Bean
public SqlSessionTemplate sqlSessionTemplateBak(@Qualifier("sqlSessionFactoryBak") SqlSessionFactory sqlSessionFactory) throws Exception {
return new SqlSessionTemplate(sqlSessionFactory);
}
}

@ -0,0 +1,53 @@
package com.nmgs.config;
import com.baomidou.mybatisplus.core.MybatisConfiguration;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import com.nmgs.util.PropertiesUtil;
import org.apache.ibatis.logging.stdout.StdOutImpl;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import javax.sql.DataSource;
@Configuration
@MapperScan(basePackages = {"com.nmgs.mapperset.oraclemapper"}, sqlSessionFactoryRef = "sqlSessionFactoryPetrol")
public class DBSrcPetrol {
@Autowired
MybatisPlusInterceptor mybatisPlusInterceptor;
@Bean
@Primary
public SqlSessionFactory sqlSessionFactoryPetrol(@Qualifier("db_petrol") DataSource dataSource) throws Exception {
MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
sqlSessionFactory.setDataSource(dataSource);
// 添加分页插件
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.addInterceptor(mybatisPlusInterceptor);
// 配置打印sql语句
if("Y".equals(PropertiesUtil.getValue("mybatislogImplEnabled"))){
configuration.setLogImpl(StdOutImpl.class);
}
sqlSessionFactory.setConfiguration(configuration);
// sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver()
// .getResources("classpath:mapper/petrol/**/*.xml"));
return sqlSessionFactory.getObject();
}
@Bean
@Primary
public SqlSessionTemplate sqlSessionTemplatePetrol(@Qualifier("sqlSessionFactoryPetrol") SqlSessionFactory sqlSessionFactory) throws Exception {
return new SqlSessionTemplate(sqlSessionFactory);
}
}

@ -1,178 +1,116 @@
package com.nmgs.config; package com.nmgs.config;
import com.atomikos.icatch.jta.UserTransactionImp;
import com.atomikos.icatch.jta.UserTransactionManager; import com.atomikos.jdbc.AtomikosDataSourceBean;
import com.mysql.cj.jdbc.MysqlXADataSource; import com.mysql.cj.jdbc.MysqlXADataSource;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;
import com.trkf.PasswordEncryption.PassWordUtils; import com.trkf.PasswordEncryption.PassWordUtils;
import com.zaxxer.hikari.HikariDataSource; import com.zaxxer.hikari.HikariConfig;
import oracle.jdbc.xa.client.OracleXADataSource; import oracle.jdbc.xa.client.OracleXADataSource;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.boot.jta.atomikos.AtomikosDataSourceBean;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.DependsOn; import org.springframework.context.annotation.DependsOn;
import org.springframework.transaction.annotation.EnableTransactionManagement; import org.springframework.context.annotation.Primary;
import org.springframework.transaction.jta.JtaTransactionManager;
import javax.sql.DataSource; import javax.sql.DataSource;
import javax.sql.XADataSource;
import javax.transaction.SystemException;
import javax.transaction.TransactionManager;
import javax.transaction.UserTransaction;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.Properties;
@Configuration @Configuration
@EnableTransactionManagement
public class DataSourceConfig { public class DataSourceConfig {
@Bean @Bean
public UserTransaction localuserTransaction() throws SystemException { @ConfigurationProperties(prefix = "spring.datasource.hikari")
UserTransactionImp userTransactionImp = new UserTransactionImp(); public HikariConfig hikariConfig(){
userTransactionImp.setTransactionTimeout(600); return new HikariConfig();
return userTransactionImp;
} }
@Bean @Primary
public TransactionManager localtransactionManager() throws SystemException { @Bean(name = "db_petrol")
UserTransactionManager userTransactionManager = new UserTransactionManager(); @ConfigurationProperties(prefix = "spring.datasource.db-petrol")
userTransactionManager.setForceShutdown(false); @DependsOn("transactionManager")
userTransactionManager.setTransactionTimeout(600); public DataSource dBSrcPetrol() throws SQLException {
return userTransactionManager; AtomikosDataSourceBean atomikosDataSourceBean = new AtomikosDataSourceBean();
} //HikariDataSource hikariDataSource = new HikariDataSource();
String DBType = PropertiesUtil.getValue("DBType");
@Bean if(DBType.equals("2")){
public JtaTransactionManager jtatransactionManager(
UserTransaction localuserTransaction,
TransactionManager localtransactionManager) {
JtaTransactionManager jtaTransactionManager = new JtaTransactionManager(localuserTransaction, localtransactionManager);
jtaTransactionManager.setDefaultTimeout(600);
return jtaTransactionManager;
}
/**
* springSpring
* @ConfigurationProperties
*/
@Bean
@ConfigurationProperties(prefix = "spring.datasource.primary")
public XADataSource getDataSourcePrimary() throws SQLException {
// 创建XA连接池
if("2".equals(PropertiesUtil.getValue("DBType"))){
OracleXADataSource oracleXADataSource = new OracleXADataSource(); OracleXADataSource oracleXADataSource = new OracleXADataSource();
oracleXADataSource.setURL(PropertiesUtil.getValue("DBUrl")); oracleXADataSource.setURL(PropertiesUtil.getValue("DBUrl"));
oracleXADataSource.setUser(PropertiesUtil.getValue("DBUserName")); oracleXADataSource.setUser(PropertiesUtil.getValue("DBUserName"));
oracleXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("DBPassWord"))); oracleXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("DBPassWord")));
return oracleXADataSource; atomikosDataSourceBean.setXaDataSource(oracleXADataSource);
}else if("4".equals(PropertiesUtil.getValue("DBType"))){ Properties properties = new Properties();
MysqlXADataSource oracleXADataSource = new MysqlXADataSource(); // properties.setProperty("v$session.osuser","GSY");
oracleXADataSource.setURL(PropertiesUtil.getValue("DBUrl")); properties.setProperty("v$session.program","IntegralManager");
oracleXADataSource.setUser(PropertiesUtil.getValue("DBUserName")); // 或者使用 Oracle 连接属性
oracleXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("DBPassWord"))); properties.setProperty("oracle.jdbc.programName", "IntegralManager");
return oracleXADataSource; properties.setProperty("oracle.jdbc.moduleName", "IntegralManager");
} properties.setProperty("oracle.jdbc.actionName", "IntegralManager");
return null; properties.setProperty("applicationName", "IntegralManagerG");
atomikosDataSourceBean.setXaProperties(properties);
//hikariDataSource.setDataSource(oracleXADataSource);
}else if(DBType.equals("4")){
MysqlXADataSource mysqlXADataSource = new MysqlXADataSource();
mysqlXADataSource.setURL(PropertiesUtil.getValue("DBUrl"));
mysqlXADataSource.setUser(PropertiesUtil.getValue("DBUserName"));
mysqlXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("DBPassWord")));
//mysqlXADataSource.setPinGlobalTxToPhysicalConnection(true);
atomikosDataSourceBean.setXaDataSource(mysqlXADataSource);
//hikariDataSource.setDataSource(mysqlXADataSource);
} }
Properties properties = new Properties();
@Bean(name = "primaryDataSource") properties.put("default_jta_timeout", "600000"); // 例如设置为60秒
@DependsOn({"getDataSourcePrimary","jtatransactionManager"}) properties.put("max_timeout", "600000"); // 例如设置为60秒
public DataSource primaryDataSource(@Qualifier("getDataSourcePrimary") XADataSource xaDataSource) { atomikosDataSourceBean.setXaProperties(properties);
AtomikosDataSourceBean atomikosDataSourceBean = new AtomikosDataSourceBean(); atomikosDataSourceBean.setUniqueResourceName("db_petrol");
//atomikosDataSourceBean.setXaDataSourceClassName("com.zaxxer.hikari.HikariXADataSource"); atomikosDataSourceBean.setMinPoolSize(3);
// 必须为数据源指定唯一标识 atomikosDataSourceBean.setMaxPoolSize(25);
atomikosDataSourceBean.setUniqueResourceName("oracleDataSource"); atomikosDataSourceBean.setMaxLifetime((int) hikariConfig().getMaxLifetime());
atomikosDataSourceBean.setMinPoolSize(1); atomikosDataSourceBean.setBorrowConnectionTimeout(60000);
atomikosDataSourceBean.setMaxPoolSize(10); atomikosDataSourceBean.setLoginTimeout(60000);
atomikosDataSourceBean.setMaxIdleTime(600000); atomikosDataSourceBean.setMaintenanceInterval(60000);
//获取连接的最大等待时间(单位:秒),超时抛出异常。默认 0无限等待建议设为 30 秒。 atomikosDataSourceBean.setMaxIdleTime(60000);
atomikosDataSourceBean.setBorrowConnectionTimeout(300); atomikosDataSourceBean.setReapTimeout(60000);
// 每分钟检查空闲连接(单位:秒)‌ atomikosDataSourceBean.setTestQuery("SELECT 1 FROM DUAL");
atomikosDataSourceBean.setMaintenanceInterval(60);
//事务超时后强制回收连接的等待时间(单位:秒),默认为 0不启用
atomikosDataSourceBean.setReapTimeout(20); // 事务超时20秒后回收:
atomikosDataSourceBean.setXaDataSource(xaDataSource);
return atomikosDataSourceBean; return atomikosDataSourceBean;
} }
/** @Primary
* springSpring @Bean(name = "db_bak")
* @ConfigurationProperties @ConfigurationProperties(prefix = "spring.datasource.db-bak")
*/ @DependsOn("transactionManager")
@Bean public DataSource dBSrcBak() throws SQLException {
@ConfigurationProperties(prefix = "spring.datasource.bak") AtomikosDataSourceBean atomikosDataSourceBean = new AtomikosDataSourceBean();
public XADataSource getDataSourceBak() throws SQLException { String DBType = PropertiesUtil.getValue("BakDBType");
// 创建XA连接池 if(DBType.equals("2")){
if("2".equals(PropertiesUtil.getValue("BakDBType"))){
OracleXADataSource oracleXADataSource = new OracleXADataSource(); OracleXADataSource oracleXADataSource = new OracleXADataSource();
oracleXADataSource.setURL(PropertiesUtil.getValue("BAKDBUrl")); oracleXADataSource.setURL(PropertiesUtil.getValue("BAKDBUrl"));
oracleXADataSource.setUser(PropertiesUtil.getValue("BAKDBUserName")); oracleXADataSource.setUser(PropertiesUtil.getValue("BAKDBUserName"));
oracleXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("BAKDBPassWord"))); oracleXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("BAKDBPassWord")));
return oracleXADataSource; atomikosDataSourceBean.setXaDataSource(oracleXADataSource);
}else if("4".equals(PropertiesUtil.getValue("BakDBType"))){ }else if(DBType.equals("4")){
MysqlXADataSource oracleXADataSource = new MysqlXADataSource(); MysqlXADataSource mysqlXADataSource = new MysqlXADataSource();
oracleXADataSource.setURL(PropertiesUtil.getValue("BAKDBUrl")); mysqlXADataSource.setURL(PropertiesUtil.getValue("BAKDBUrl"));
oracleXADataSource.setUser(PropertiesUtil.getValue("BAKDBUserName")); mysqlXADataSource.setUser(PropertiesUtil.getValue("BAKDBUserName"));
oracleXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("BAKDBPassWord"))); mysqlXADataSource.setPassword(PassWordUtils.decrypt(PropertiesUtil.getValue("BAKDBPassWord")));
return oracleXADataSource; atomikosDataSourceBean.setXaDataSource(mysqlXADataSource);
}
return null;
} }
@Bean(name = "bakDataSource") Properties properties = new Properties();
@DependsOn({"getDataSourceBak","jtatransactionManager"}) properties.put("default_jta_timeout", "600000"); // 例如设置为60秒
public DataSource bakDataSource(@Qualifier("getDataSourceBak") XADataSource xaDataSource) { properties.put("max_timeout", "600000"); // 例如设置为60秒
AtomikosDataSourceBean atomikosDataSourceBean = new AtomikosDataSourceBean(); atomikosDataSourceBean.setXaProperties(properties);
//atomikosDataSourceBean.setXaDataSourceClassName("com.zaxxer.hikari.HikariXADataSource"); atomikosDataSourceBean.setUniqueResourceName("db_bak");
// 必须为数据源指定唯一标识 atomikosDataSourceBean.setMinPoolSize(3);
atomikosDataSourceBean.setUniqueResourceName("mysqlDataSource"); atomikosDataSourceBean.setMaxPoolSize(25);
atomikosDataSourceBean.setMinPoolSize(1); atomikosDataSourceBean.setMaxLifetime((int) hikariConfig().getMaxLifetime());
atomikosDataSourceBean.setMaxPoolSize(10); atomikosDataSourceBean.setBorrowConnectionTimeout(60000);
// 空闲连接保留 300 秒5分钟 atomikosDataSourceBean.setLoginTimeout(60000);
atomikosDataSourceBean.setMaxIdleTime(600000); atomikosDataSourceBean.setMaintenanceInterval(60000);
atomikosDataSourceBean.setTestQuery("select 1"); atomikosDataSourceBean.setMaxIdleTime(60000);
//获取连接的最大等待时间(单位:秒),超时抛出异常。默认 0无限等待建议设为 30 秒。 atomikosDataSourceBean.setReapTimeout(60000);
atomikosDataSourceBean.setBorrowConnectionTimeout(300); atomikosDataSourceBean.setTestQuery("SELECT 1 FROM DUAL");
// 每分钟检查空闲连接(单位:秒)‌
atomikosDataSourceBean.setMaintenanceInterval(60);
//事务超时后强制回收连接的等待时间(单位:秒),默认为 0不启用
atomikosDataSourceBean.setReapTimeout(20); // 事务超时20秒后回收:
atomikosDataSourceBean.setXaDataSource(xaDataSource);
return atomikosDataSourceBean; return atomikosDataSourceBean;
}
@Bean(name = "commonDataSource")
@ConfigurationProperties(prefix = "spring.datasource.main")
public DataSource commonDataSource() {
HikariDataSource build = DataSourceBuilder.create().type(HikariDataSource.class).build();
build.setConnectionTimeout(600000);
build.setMinimumIdle(2);
build.setMaximumPoolSize(10);
build.setMaxLifetime(1800000);
build.setIdleTimeout(60000);
return build;
}
public static DataSource initSource(String sourceType){
DataSourceConfig dsc=new DataSourceConfig();
try{
if("PRIMARY".equals(sourceType)){
return (DataSource) dsc.getDataSourcePrimary();
}else if("BAK".equals(sourceType)){
return (DataSource)dsc.getDataSourcePrimary();
}else if("COMMON".equals(sourceType)){
// return dsc.commonDataSource();
return (DataSource) dsc.getDataSourcePrimary();
}
}catch (Exception e){
e.printStackTrace();
}
return null;
} }
} }

@ -8,11 +8,13 @@ import com.nmgs.util.PropertiesUtil;
import org.apache.ibatis.logging.stdout.StdOutImpl; import org.apache.ibatis.logging.stdout.StdOutImpl;
import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource; import javax.sql.DataSource;
@ -33,112 +35,4 @@ public class MybatisConfig {
} }
return interceptor; return interceptor;
} }
@Configuration
@MapperScan(
basePackages = "com.nmgs.mapperset.mysqlmapper",
sqlSessionFactoryRef = "mysqlSqlSessionFactory"
)
public static class MysqlMyBatisConfig {
@Autowired
@Qualifier("bakDataSource")
private DataSource bakDataSource;
@Autowired
@Qualifier("mybatisPlusInterceptor")
private MybatisPlusInterceptor mybatisPlusInterceptor;
@Bean
public SqlSessionFactory mysqlSqlSessionFactory() throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
if(bakDataSource==null){
bakDataSource=DataSourceConfig.initSource("BAK");
}
sessionFactory.setDataSource(bakDataSource);
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.addInterceptor(mybatisPlusInterceptor );
configuration.setCallSettersOnNulls(true);
// 配置打印sql语句
if("Y".equals(PropertiesUtil.getValue("mybatislogImplEnabled"))){
configuration.setLogImpl(StdOutImpl.class);
}
sessionFactory.setConfiguration(configuration);
sessionFactory.setMapperLocations(
new PathMatchingResourcePatternResolver()
.getResources("classpath:com/nmgs/mapperset/mysqlmapper/*.xml")
);
return sessionFactory.getObject();
}
}
@Configuration
@MapperScan(
basePackages = "com.nmgs.mapperset.oraclemapper",
sqlSessionFactoryRef = "oracleSqlSessionFactory"
)
public static class OracleMyBatisConfig {
@Autowired
@Qualifier("primaryDataSource")
private DataSource primaryDataSource;
@Autowired
@Qualifier("mybatisPlusInterceptor")
private MybatisPlusInterceptor mybatisPlusInterceptor;
@Bean
public SqlSessionFactory oracleSqlSessionFactory() throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(primaryDataSource);
if(primaryDataSource==null){
primaryDataSource=DataSourceConfig.initSource("PRIMARY");
}
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.addInterceptor(mybatisPlusInterceptor );
configuration.setCallSettersOnNulls(true);
// 配置打印sql语句
if("Y".equals(PropertiesUtil.getValue("mybatislogImplEnabled"))){
configuration.setLogImpl(StdOutImpl.class);
}
sessionFactory.setConfiguration(configuration);
sessionFactory.setMapperLocations(
new PathMatchingResourcePatternResolver()
.getResources("classpath:com/nmgs/mapperset/oraclemapper/*.xml")
);
return sessionFactory.getObject();
}
}
@Configuration
@MapperScan(
basePackages = "com.nmgs.mappercommon",
sqlSessionFactoryRef = "commonSqlSessionFactory"
)
public static class commonMyBatisConfig {
@Autowired
@Qualifier("primaryDataSource")
private DataSource commonDataSource;
@Autowired
@Qualifier("mybatisPlusInterceptor")
private MybatisPlusInterceptor mybatisPlusInterceptor;
@Bean
public SqlSessionFactory commonSqlSessionFactory() throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
if(commonDataSource==null){
commonDataSource=DataSourceConfig.initSource("COMMON");
}
sessionFactory.setDataSource(commonDataSource);
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.addInterceptor(mybatisPlusInterceptor );
configuration.setCallSettersOnNulls(true);
// 配置打印sql语句
if("Y".equals(PropertiesUtil.getValue("mybatislogImplEnabled"))){
configuration.setLogImpl(StdOutImpl.class);
}
sessionFactory.setConfiguration(configuration);
sessionFactory.setMapperLocations(
new PathMatchingResourcePatternResolver()
.getResources("classpath:com/nmgs/mappercommon/*.xml")
);
return sessionFactory.getObject();
}
}
} }

@ -0,0 +1,25 @@
package com.nmgs.mapperset.oraclemapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nmgs.entity.MyReturnMap;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
//@org.apache.ibatis.annotations.Mapper
public interface Mapper extends BaseMapper<MyReturnMap> {
Map<String, Object> select(@Param("sql") String sql);
List selectforlist(@Param("sql") String sql);
int update(@Param("sql") String sql);
IPage<Map<String,Object>> selectpage(@Param("sql") String sql, Page<Map<String, Object>> page);
Map<String, Object> selectlow(@Param("sql") String sql);
List selectforlistlow(@Param("sql") String sql);
int insert(@Param("sql") String sql);
}

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nmgs.mapperset.oraclemapper.Mapper">
<select id="select" parameterType="String" resultType="java.util.HashMap">
${sql}
</select>
<select id="selectforlist" parameterType="String" resultType="java.util.HashMap">
${sql}
</select>
<update id="update" parameterType="String">
${sql}
</update>
<insert id="insert" parameterType="String">
${sql}
</insert>
<select id="selectpage" parameterType="String" resultType="java.util.HashMap">
${sql}
</select>
<select id="selectlow" parameterType="String" resultType="java.util.HashMap">
${sql}
</select>
<select id="selectforlistlow" parameterType="String" resultType="java.util.HashMap">
${sql}
</select>
</mapper>

@ -3,23 +3,16 @@ package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.entity.Consistant; import com.nmgs.entity.Consistant;
import com.nmgs.mappercommon.Mapper;
import com.nmgs.mapperset.mysqlmapper.AppointmentInfoMyMapper; import com.nmgs.mapperset.mysqlmapper.AppointmentInfoMyMapper;
import com.nmgs.mapperset.mysqlmapper.CafterTableMyMapper; import com.nmgs.mapperset.mysqlmapper.CafterTableMyMapper;
import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper; import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper;
import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper; import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper;
import com.nmgs.mapperset.oraclemapper.AppointmentInfoMapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.oraclemapper.CafterTableMapper;
import com.nmgs.mapperset.oraclemapper.IntegrationListMapper;
import com.nmgs.mapperset.oraclemapper.UserTableMapper;
import com.nmgs.service.AppointmentInfoService; import com.nmgs.service.AppointmentInfoService;
import com.nmgs.service.UserTableService; import com.nmgs.service.UserTableService;
import com.nmgs.util.*; import com.nmgs.util.*;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -318,7 +311,7 @@ public class ApponintmentInfoServiceImpl implements AppointmentInfoService {
} }
@Override @Override
@Transactional(value = "jtatransactionManager",timeout = 100) @Transactional(value = "transactionManager",timeout = 100)
public JSONObject commit(String openId,String appointmentType, public JSONObject commit(String openId,String appointmentType,
String appointmentId,String aCarNo, String appointmentId,String aCarNo,
String serviceId,String operatorId, String serviceId,String operatorId,

@ -1,7 +1,7 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.mysqlmapper.IntegralLeavingMyMapper; import com.nmgs.mapperset.mysqlmapper.IntegralLeavingMyMapper;
import com.nmgs.mapperset.oraclemapper.IntegralLeavingMapper; import com.nmgs.mapperset.oraclemapper.IntegralLeavingMapper;
import com.nmgs.service.IntegralLevelMessageService; import com.nmgs.service.IntegralLevelMessageService;
@ -82,7 +82,7 @@ public class IntegralLevelMessageServiceImpl implements IntegralLevelMessageServ
} }
@Override @Override
@Transactional(value = "jtatransactionManager",timeout = 10) @Transactional(value = "transactionManager",timeout = 10)
public int commit(String userId, String positon, String message) { public int commit(String userId, String positon, String message) {
int ret=1; int ret=1;
String currentDate=PubTools.getCurrentDate(); String currentDate=PubTools.getCurrentDate();

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper; import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper;
import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper; import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper;
import com.nmgs.mapperset.oraclemapper.IntegrationListMapper; import com.nmgs.mapperset.oraclemapper.IntegrationListMapper;
@ -52,7 +52,7 @@ public class IntegralRebatSolveServiceImpl {
this.integrationListMyMapper = integrationListMyMapper; this.integrationListMyMapper = integrationListMyMapper;
} }
@Transactional(value = "jtatransactionManager", timeout = 100) @Transactional(value = "transactionManager", timeout = 100)
public int solveIntegralRebat(String userIdParam, String startTime) { public int solveIntegralRebat(String userIdParam, String startTime) {
int ret = -1; int ret = -1;
String sqlUserId = "select distinct USERID from integration_list_table " + String sqlUserId = "select distinct USERID from integration_list_table " +

@ -1,7 +1,7 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.service.UserTableService; import com.nmgs.service.UserTableService;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;

@ -2,7 +2,7 @@ package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.mysqlmapper.IntegralSignMyMapper; import com.nmgs.mapperset.mysqlmapper.IntegralSignMyMapper;
import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper; import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper;
import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper; import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper;
@ -138,7 +138,7 @@ public class IntegralSignServiceImpl implements IntegralSignService {
} }
@Override @Override
@Transactional(value = "jtatransactionManager",timeout = 50) @Transactional(value = "transactionManager",timeout = 300)
public int commit(String userId, String signDate) { public int commit(String userId, String signDate) {
int ret=-1; int ret=-1;
String currentDate = PubTools.getCurrentDate().substring(0,10); String currentDate = PubTools.getCurrentDate().substring(0,10);

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.Mapper;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.service.IntegrationListService; import com.nmgs.service.IntegrationListService;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;

@ -3,7 +3,7 @@ package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSON;
import com.nmgs.entity.HttpParamDto; import com.nmgs.entity.HttpParamDto;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.HttpClientUtil; import com.nmgs.util.HttpClientUtil;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;

@ -19,7 +19,7 @@ import java.util.Map;
@Service @Service
@Transactional(value = "jtatransactionManager", timeout = 100) @Transactional(value = "transactionManager", timeout = 100)
public class OperatorsServiceImpl implements IOperatorsService { public class OperatorsServiceImpl implements IOperatorsService {

@ -2,7 +2,7 @@ package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.entity.Consistant; import com.nmgs.entity.Consistant;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.mysqlmapper.AppointmentInfoMyMapper; import com.nmgs.mapperset.mysqlmapper.AppointmentInfoMyMapper;
import com.nmgs.mapperset.mysqlmapper.CafterTableMyMapper; import com.nmgs.mapperset.mysqlmapper.CafterTableMyMapper;
import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper; import com.nmgs.mapperset.mysqlmapper.IntegrationListMyMapper;
@ -219,7 +219,7 @@ public class QCodeInfoServiceImpl {
public int failBackMoney(String content, String serverOperationId,String orderId) throws Exception { public int failBackMoney(String content, String serverOperationId,String orderId) throws Exception {
return rollBackIntegral(content,serverOperationId,orderId); return rollBackIntegral(content,serverOperationId,orderId);
} }
@Transactional(value = "jtatransactionManager",timeout = 100) @Transactional(value = "transactionManager",timeout = 100)
public int rollBackIntegral(String content, String serverOperationId,String orderId) throws Exception { public int rollBackIntegral(String content, String serverOperationId,String orderId) throws Exception {
int ret=1;// -1 代表接口处理失败 1 处理成功 2 商户不存在 3订单已经退回 4 用户信息未找到 int ret=1;// -1 代表接口处理失败 1 处理成功 2 商户不存在 3订单已经退回 4 用户信息未找到
LogUtil.WriteLog_Info("调用红冲接口开始=====","QCodeInfoServiceImpl"); LogUtil.WriteLog_Info("调用红冲接口开始=====","QCodeInfoServiceImpl");
@ -583,7 +583,7 @@ public class QCodeInfoServiceImpl {
* @param payMoney * @param payMoney
* @return * @return
*/ */
@Transactional(value = "jtatransactionManager",timeout = 100) @Transactional(value = "transactionManager",timeout = 100)
public JSONObject solveQcodeRedis(String content, String serverOperationId,String orderId, Double payMoney,Double discountMoneyBefore,Double discountMoney){ public JSONObject solveQcodeRedis(String content, String serverOperationId,String orderId, Double payMoney,Double discountMoneyBefore,Double discountMoney){
String ret="-2";// -1 代表接口处理失败 1 处理成功 2 用户不存在 3 兑换积分大于用户可用积分 4 二维码信息过期 5 商户不存在 6 积分类型与消费方式不匹配 7 商户角色未设置 8 用户已冻结 9 折扣金额与消费积分不一致 10 请重新生成二维码 11 订单中商户与核销中的商户不匹配 12 订单已核销 String ret="-2";// -1 代表接口处理失败 1 处理成功 2 用户不存在 3 兑换积分大于用户可用积分 4 二维码信息过期 5 商户不存在 6 积分类型与消费方式不匹配 7 商户角色未设置 8 用户已冻结 9 折扣金额与消费积分不一致 10 请重新生成二维码 11 订单中商户与核销中的商户不匹配 12 订单已核销
JSONObject retJo=new JSONObject(); JSONObject retJo=new JSONObject();

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;

@ -1,7 +1,7 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;

@ -1,5 +1,5 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.*; import com.nmgs.mapperset.oraclemapper.Mapper;
import com.nmgs.service.IServiceAreaService; import com.nmgs.service.IServiceAreaService;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.service.IServiceAreaSpecialService; import com.nmgs.service.IServiceAreaSpecialService;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PubTools; import com.nmgs.util.PubTools;

@ -2,7 +2,7 @@ package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.util.*; import com.nmgs.util.*;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

@ -1,7 +1,7 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper; import com.nmgs.mapperset.mysqlmapper.UserTableMysqlMapper;
import com.nmgs.mapperset.oraclemapper.UserTableMapper; import com.nmgs.mapperset.oraclemapper.UserTableMapper;
import com.nmgs.service.UserTableService; import com.nmgs.service.UserTableService;
@ -91,7 +91,7 @@ public class UserTableServiceImpl implements UserTableService {
} }
@Override @Override
@Transactional(value = "jtatransactionManager", timeout = 40) @Transactional(value = "transactionManager", timeout = 40)
public int addUser(String openId, String userName) { public int addUser(String openId, String userName) {
int ret=-1; int ret=-1;
//查询全部人员给list赋值推荐码 //查询全部人员给list赋值推荐码
@ -156,7 +156,7 @@ public class UserTableServiceImpl implements UserTableService {
} }
@Override @Override
@Transactional(value = "jtatransactionManager", timeout = 40) @Transactional(value = "transactionManager", timeout = 40)
public int updateUser(String userId,String idNumber,String phone,String realName,String numberPic) { public int updateUser(String userId,String idNumber,String phone,String realName,String numberPic) {
int ret = 1; int ret = 1;
//图片加水印 //图片加水印

@ -2,7 +2,7 @@ package com.nmgs.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.nmgs.mappercommon.Mapper; import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mapperset.mysqlmapper.UserVehicleMyMapper; import com.nmgs.mapperset.mysqlmapper.UserVehicleMyMapper;
import com.nmgs.mapperset.oraclemapper.UserVehicleMapper; import com.nmgs.mapperset.oraclemapper.UserVehicleMapper;
import com.nmgs.service.UserVehicleService; import com.nmgs.service.UserVehicleService;
@ -83,7 +83,7 @@ public class UserVehicleServiceImpl implements UserVehicleService {
} }
@Override @Override
@Transactional(value = "jtatransactionManager") @Transactional(value = "transactionManager")
public int addUserVehicle(JSONArray jsonArray) { public int addUserVehicle(JSONArray jsonArray) {
int ret=1; int ret=1;
String currentDate=PubTools.getCurrentDate(); String currentDate=PubTools.getCurrentDate();
@ -153,7 +153,7 @@ public class UserVehicleServiceImpl implements UserVehicleService {
} }
@Override @Override
@Transactional(value = "jtatransactionManager") @Transactional(value = "transactionManager")
public int cancelUserVehicle(String userId, String aCarNo) { public int cancelUserVehicle(String userId, String aCarNo) {
int ret=1; int ret=1;
String CREATETIME=PubTools.getCurrentDate() ; String CREATETIME=PubTools.getCurrentDate() ;
@ -292,7 +292,7 @@ public class UserVehicleServiceImpl implements UserVehicleService {
return retlist; return retlist;
} }
@Override @Override
@Transactional(value = "jtatransactionManager") @Transactional(value = "transactionManager")
public int updateUserVehicle(String userId,String aCarNo,String checkName,String checkUserNumber,String licensepic, public int updateUserVehicle(String userId,String aCarNo,String checkName,String checkUserNumber,String licensepic,
String permitpic,String vehiclePic,String certification,String referrerCode) { String permitpic,String vehiclePic,String certification,String referrerCode) {
int ret=1; int ret=1;

@ -1,6 +1,6 @@
package com.nmgs.service.impl; package com.nmgs.service.impl;
import com.nmgs.mapperset.oraclemapper.*;
import com.nmgs.mappercommon.Mapper;
import com.nmgs.service.VehicleScoreService; import com.nmgs.service.VehicleScoreService;
import com.nmgs.util.LogUtil; import com.nmgs.util.LogUtil;
import com.nmgs.util.PropertiesUtil; import com.nmgs.util.PropertiesUtil;

@ -216,35 +216,6 @@
<appender-ref ref="INFO"/> <appender-ref ref="INFO"/>
</appender> </appender>
<!--异步输出-->
<!-- <appender name="SQL_ASYNC_LOG" class="ch.qos.logback.classic.AsyncAppender">-->
<!-- &lt;!&ndash; 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 &ndash;&gt;-->
<!-- <discardingThreshold>0</discardingThreshold>-->
<!-- &lt;!&ndash; 更改默认的队列的深度,该值会影响性能.默认值为256 &ndash;&gt;-->
<!-- <queueSize>2048</queueSize>-->
<!-- <includeCallerData>true</includeCallerData>-->
<!-- &lt;!&ndash; 添加附加的appender,最多只能添加一个 &ndash;&gt;-->
<!-- <appender-ref ref="SQL"/>-->
<!-- </appender>-->
<!--
<logger>用来设置某一个包或者具体的某一个类的日志打印级别、
以及指定<appender><logger>仅有一个name属性
一个可选的level和一个可选的addtivity属性。
name:用来指定受此logger约束的某一个包或者具体的某一个类。
level:用来设置打印级别大小写无关TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF
还有一个特俗值INHERITED或者同义词NULL代表强制执行上级的级别。
如果未设置此属性那么当前logger将会继承上级的级别。
addtivity:是否向上级logger传递打印信息。默认是true。
-->
<!-- <logger name="dao" level="ERROR">-->
<!-- <appender-ref ref="SQL"/>-->
<!-- <appender-ref ref="STDOUT"/>-->
<!-- </logger>-->
<root level="${logLevel}"> <root level="${logLevel}">
<appender-ref ref="STDOUT"/> <appender-ref ref="STDOUT"/>
<appender-ref ref="fileAppender"/> <appender-ref ref="fileAppender"/>

@ -100,6 +100,7 @@ mybatis.configuration.call-setters-on-nulls=true
Downfilepth= classpath:/static/tt.txt Downfilepth= classpath:/static/tt.txt
#??jta???? #??jta????
spring.jta.enabled=true spring.jta.enabled=true
spring.jta.transaction-manager-id=integralManager spring.jta.atomikos.properties.enable-logging=false
spring.jta.log-dir=classpath:/static/View/logs spring.jta.transaction-manager-id=integralManager-tmlog
spring.jta.atomikos.properties.log-base-name=IntegralManager.log spring.jta.log-base-dir=./logs
spring.jta.atomikos.properties.log-base-name=integral-atomikos

Loading…
Cancel
Save