liujie
2023-07-26 57a7c48cc4c81f7e9719c414e4abae942c93a21b
后台代码
17个文件已修改
6个文件已添加
2287 ■■■■■ 已修改文件
.idea/compiler.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/encodings.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/workspace.xml 624 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/mb-cloud-competition.iml 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/competition/entity/Competition.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/ListQuery.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/page/HttpKit.java 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/page/Order.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/page/PageFactory.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/page/WafKit.java 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-competition/src/main/java/com/dsh/page/WafRequestWrapper.java 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/mb-cloud-course.iml 216 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/CompetitionClient.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/Competition.java 235 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/ListQuery.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/SuccessTip.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/Tip.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TStore.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition.html 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html 220 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition.js 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/compiler.xml
@@ -2,17 +2,18 @@
<project version="4">
  <component name="CompilerConfiguration">
    <annotationProcessing>
      <profile default="true" name="Default" enabled="true" />
      <profile name="Maven default annotation processors profile" enabled="true">
        <sourceOutputDir name="target/generated-sources/annotations" />
        <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
        <outputRelativeToContentRoot value="true" />
        <module name="mb-cloud-account" />
        <module name="mb-cloud-activity" />
        <module name="mb-cloud-auth" />
        <module name="mb-cloud-competition" />
        <module name="mb-cloud-competition (1)" />
        <module name="mb-cloud-course" />
        <module name="mb-cloud-management" />
        <module name="mb-cloud-competition (1)" />
        <module name="mb-cloud-activity" />
        <module name="mb-cloud-competition" />
        <module name="mb-cloud-auth" />
      </profile>
    </annotationProcessing>
    <bytecodeTargetLevel>
.idea/encodings.xml
@@ -2,11 +2,22 @@
<project version="4">
  <component name="Encoding">
    <file url="file://$PROJECT_DIR$/cloud-server-account" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-account/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-account/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-activity" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-activity/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-activity/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-auth" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-auth/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-auth/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-competition" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-competition/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-competition/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-course" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-course/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-course/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-management" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-management/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/cloud-server-parent" charset="UTF-8" />
  </component>
</project>
.idea/workspace.xml
@@ -1,135 +1,73 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="BranchesTreeState">
    <expand>
      <path>
        <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" />
        <item name="LOCAL_ROOT" type="e8cecc67:BranchNodeDescriptor" />
      </path>
      <path>
        <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" />
        <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" />
      </path>
      <path>
        <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" />
        <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" />
        <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" />
      </path>
    </expand>
    <select />
  </component>
  <component name="ChangeListManager">
    <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="">
      <change beforePath="$PROJECT_DIR$/cloud-server-parent/mb-cloud-parent.iml" beforeDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-parent/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-parent/pom.xml" afterDir="false" />
    <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="后台代码删除">
      <change afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/ListQuery.java" afterDir="false" />
      <change afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/page/HttpKit.java" afterDir="false" />
      <change afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/page/Order.java" afterDir="false" />
      <change afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/page/PageFactory.java" afterDir="false" />
      <change afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/page/WafKit.java" afterDir="false" />
      <change afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/page/WafRequestWrapper.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/.idea/compiler.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/.idea/encodings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/encodings.xml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-account/mb-cloud-account.iml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/mb-cloud-account.iml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-activity/mb-cloud-activity.iml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-activity/mb-cloud-activity.iml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-auth/mb-cloud-auth.iml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-auth/mb-cloud-auth.iml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-competition/mb-cloud-competition.iml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/mb-cloud-competition.iml" 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/entity/Competition.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/competition/entity/Competition.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/mb-cloud-course.iml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/mb-cloud-course.iml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/CompetitionClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/CompetitionClient.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/Competition.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/Competition.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/ListQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/ListQuery.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/SuccessTip.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/SuccessTip.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/Tip.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/Tip.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TStore.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TStore.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition.html" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition.js" afterDir="false" />
    </list>
    <ignored path="$PROJECT_DIR$/cloud-server-account/target/" />
    <ignored path="$PROJECT_DIR$/cloud-server-management/target/" />
    <ignored path="$PROJECT_DIR$/cloud-server-parent/target/" />
    <ignored path="$PROJECT_DIR$/cloud-server-auth/target/" />
    <ignored path="$PROJECT_DIR$/cloud-server-activity/target/" />
    <ignored path="$PROJECT_DIR$/cloud-server-competition/target/" />
    <ignored path="$PROJECT_DIR$/cloud-server-course/target/" />
    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
    <option name="SHOW_DIALOG" value="false" />
    <option name="HIGHLIGHT_CONFLICTS" value="true" />
    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
    <option name="LAST_RESOLUTION" value="IGNORE" />
  </component>
  <component name="FUSProjectUsageTrigger">
    <session id="1283956588">
      <usages-collector id="statistics.lifecycle.project">
        <counts>
          <entry key="project.closed" value="1" />
          <entry key="project.open.time.1" value="1" />
          <entry key="project.opened" value="1" />
        </counts>
      </usages-collector>
      <usages-collector id="statistics.file.extensions.open">
        <counts>
          <entry key="java" value="12" />
          <entry key="properties" value="3" />
          <entry key="xml" value="13" />
        </counts>
      </usages-collector>
      <usages-collector id="statistics.file.types.open">
        <counts>
          <entry key="JAVA" value="12" />
          <entry key="Properties" value="3" />
          <entry key="XML" value="13" />
        </counts>
      </usages-collector>
      <usages-collector id="statistics.file.extensions.edit">
        <counts>
          <entry key="java" value="56" />
          <entry key="properties" value="8" />
          <entry key="xml" value="25" />
        </counts>
      </usages-collector>
      <usages-collector id="statistics.file.types.edit">
        <counts>
          <entry key="JAVA" value="56" />
          <entry key="Properties" value="8" />
          <entry key="XML" value="25" />
        </counts>
      </usages-collector>
    </session>
  </component>
  <component name="FileEditorManager">
    <leaf>
      <file pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/cloud-server-course/pom.xml">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="425">
              <caret line="17" column="20" lean-forward="true" selection-start-line="17" selection-start-column="20" selection-end-line="17" selection-end-column="20" />
            </state>
          </provider>
        </entry>
      </file>
      <file pinned="false" current-in-tab="true">
        <entry file="file://$PROJECT_DIR$/cloud-server-parent/pom.xml">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="500">
              <caret line="20" column="75" selection-start-line="20" selection-start-column="75" selection-end-line="20" selection-end-column="75" />
            </state>
          </provider>
        </entry>
      </file>
    </leaf>
  </component>
  <component name="FindInProjectRecents">
    <findStrings>
      <find>app</find>
      <find>GMT+</find>
      <find>GMT+7</find>
    </findStrings>
    <replaceStrings>
      <replace>GMT+8</replace>
    </replaceStrings>
    <dirStrings>
      <dir>E:\IDEA Workspaces\PlayPai\cloud-server-account\src\main\java</dir>
      <dir>E:\IDEA Workspaces\PlayPai</dir>
    </dirStrings>
  </component>
  <component name="Git.Settings">
    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/cloud-server-parent" />
  </component>
  <component name="IdeDocumentHistory">
    <option name="CHANGED_PATHS">
  <component name="FileTemplateManagerImpl">
    <option name="RECENT_TEMPLATES">
      <list>
        <option value="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/UserApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-account/src/main/resources/bootstrap.properties" />
        <option value="$PROJECT_DIR$/cloud-server-account/src/main/resources/redis.properties" />
        <option value="$PROJECT_DIR$/cloud-server-parent/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-activity/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/AccountApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/ActivityApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/ActivityApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/CompetitionApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-competition/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-account/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-auth/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-management/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/CompetitionApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/CourseApplication.java" />
        <option value="$PROJECT_DIR$/cloud-server-course/pom.xml" />
        <option value="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/AccountApplication.java" />
        <option value="Interface" />
        <option value="Class" />
      </list>
    </option>
  </component>
  <component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
  <component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
  <component name="Git.Settings">
    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
  </component>
  <component name="JsFlowSettings">
    <service-enabled>true</service-enabled>
    <exe-path />
    <other-services-enabled>true</other-services-enabled>
    <auto-save>true</auto-save>
  </component>
  <component name="JsGulpfileManager">
    <detection-done>true</detection-done>
    <sorting>DEFINITION_ORDER</sorting>
  </component>
  <component name="MavenImportPreferences">
    <option name="generalSettings">
@@ -139,92 +77,48 @@
      </MavenGeneralSettings>
    </option>
  </component>
  <component name="MavenProjectNavigator">
    <treeState>
      <expand />
      <select />
    </treeState>
  </component>
  <component name="ProjectFrameBounds" extendedState="6">
    <option name="x" value="-7" />
    <option name="width" value="1934" />
    <option name="height" value="1047" />
  </component>
  <component name="ProjectId" id="2T0poWYlZShlnPso29uxjn4gQQo" />
  <component name="ProjectLevelVcsManager" settingsEditedManually="true">
    <ConfirmationsSetting value="1" id="Add" />
  </component>
  <component name="ProjectView">
    <navigator proportions="" version="1">
      <foldersAlwaysOnTop value="true" />
    </navigator>
    <panes>
      <pane id="Scope" />
      <pane id="ProjectPane">
        <subPane>
          <expand>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-account" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-activity" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-auth" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-competition" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-course" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-management" type="462c0819:PsiDirectoryNode" />
            </path>
            <path>
              <item name="PlayPai" type="b2602c69:ProjectViewProjectNode" />
              <item name="PlayPai" type="462c0819:PsiDirectoryNode" />
              <item name="cloud-server-parent" type="462c0819:PsiDirectoryNode" />
            </path>
          </expand>
          <select />
        </subPane>
      </pane>
      <pane id="PackagesPane" />
      <pane id="AndroidView" />
    </panes>
  <component name="ProjectViewState">
    <option name="hideEmptyMiddlePackages" value="true" />
    <option name="showLibraryContents" value="true" />
  </component>
  <component name="PropertiesComponent">
    <property name="ExpandSpringBootJavaOptionsPanel" value="true" />
    <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="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1686656087610" />
    <property name="last_opened_file_path" value="$PROJECT_DIR$/cloud-server-course/pom.xml" />
    <property name="last_opened_file_path" value="$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh" />
    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
    <property name="nodejs_npm_path_reset_for_default_project" value="true" />
    <property name="project.structure.last.edited" value="Global Libraries" />
    <property name="project.structure.proportion" value="0.0" />
    <property name="project.structure.side.proportion" value="0.2" />
    <property name="settings.editor.selected.configurable" value="Settings.JavaScript" />
    <property name="settings.editor.selected.configurable" value="project.propVCSSupport.Mappings" />
  </component>
  <component name="ReactorSettings">
    <option name="notificationShown" value="true" />
  </component>
  <component name="RecentsManager">
    <key name="CopyClassDialog.RECENTS_KEY">
      <recent name="com.dsh.factory" />
      <recent name="com.dsh.course.feignClient.competition.model" />
      <recent name="com.dsh.competition.feignclient.model" />
      <recent name="com.dsh.course.mapper" />
      <recent name="com.dsh.guns.modular.system.mapper" />
    </key>
    <key name="CopyFile.RECENT_KEYS">
      <recent name="E:\IDEA Workspaces" />
      <recent name="E:\IDEA Workspaces\PlayPai" />
      <recent name="F:\code\PlayPai\cloud-server-competition\src\main\java\com\dsh" />
      <recent name="F:\code\PlayPai\cloud-server-management\src\main\resources\mapper" />
      <recent name="F:\code\PlayPai\cloud-server-management\src\main\webapp\static\modular\system" />
      <recent name="F:\code\PlayPai\cloud-server-management\src\main\webapp\WEB-INF\view\system" />
      <recent name="F:\code\PlayPai\cloud-server-management\src\main\java\com\dsh\course\feignClient" />
    </key>
  </component>
  <component name="RunDashboard">
@@ -233,18 +127,8 @@
        <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.AccountApplication">
  <component name="RunManager" selected="Spring Boot.CompetitionApplication">
    <configuration name="AccountApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
      <module name="mb-cloud-account" />
      <option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.AccountApplication" />
@@ -278,6 +162,8 @@
    <configuration name="CompetitionApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
      <module name="mb-cloud-competition" />
      <option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.CompetitionApplication" />
      <option name="ALTERNATIVE_JRE_PATH" />
      <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
      <method v="2">
        <option name="Make" enabled="true" />
      </method>
@@ -292,6 +178,9 @@
    <configuration name="ManagementApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
      <module name="mb-cloud-management" />
      <option name="SPRING_BOOT_MAIN_CLASS" value="com.dsh.ManagementApplication" />
      <option name="ENABLE_JMX_AGENT" value="false" />
      <option name="ALTERNATIVE_JRE_PATH" />
      <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
      <method v="2">
        <option name="Make" enabled="true" />
      </method>
@@ -324,185 +213,216 @@
      <option name="presentableId" value="Default" />
      <updated>1686653431962</updated>
      <workItem from="1686653433491" duration="2267000" />
      <workItem from="1690190039038" duration="16883000" />
      <workItem from="1690333209172" duration="15958000" />
    </task>
    <task id="LOCAL-00001" summary="后台代码删除">
      <created>1690249807612</created>
      <option name="number" value="00001" />
      <option name="presentableId" value="LOCAL-00001" />
      <option name="project" value="LOCAL" />
      <updated>1690249807612</updated>
    </task>
    <task id="LOCAL-00002" summary="后台代码删除">
      <created>1690254629455</created>
      <option name="number" value="00002" />
      <option name="presentableId" value="LOCAL-00002" />
      <option name="project" value="LOCAL" />
      <updated>1690254629455</updated>
    </task>
    <task id="LOCAL-00003" summary="后台代码删除">
      <created>1690254749862</created>
      <option name="number" value="00003" />
      <option name="presentableId" value="LOCAL-00003" />
      <option name="project" value="LOCAL" />
      <updated>1690254749862</updated>
    </task>
    <task id="LOCAL-00004" summary="后台代码">
      <created>1690334274202</created>
      <option name="number" value="00004" />
      <option name="presentableId" value="LOCAL-00004" />
      <option name="project" value="LOCAL" />
      <updated>1690334274203</updated>
    </task>
    <task id="LOCAL-00005" summary="后台代码">
      <created>1690335913450</created>
      <option name="number" value="00005" />
      <option name="presentableId" value="LOCAL-00005" />
      <option name="project" value="LOCAL" />
      <updated>1690335913450</updated>
    </task>
    <task id="LOCAL-00006" summary="后台代码">
      <created>1690338179876</created>
      <option name="number" value="00006" />
      <option name="presentableId" value="LOCAL-00006" />
      <option name="project" value="LOCAL" />
      <updated>1690338179876</updated>
    </task>
    <task id="LOCAL-00007" summary="后台代码">
      <created>1690338325966</created>
      <option name="number" value="00007" />
      <option name="presentableId" value="LOCAL-00007" />
      <option name="project" value="LOCAL" />
      <updated>1690338325966</updated>
    </task>
    <task id="LOCAL-00008" summary="后台代码">
      <created>1690341067099</created>
      <option name="number" value="00008" />
      <option name="presentableId" value="LOCAL-00008" />
      <option name="project" value="LOCAL" />
      <updated>1690341067099</updated>
    </task>
    <option name="localTasksCounter" value="9" />
    <servers />
  </component>
  <component name="TimeTrackingManager">
    <option name="totallyTimeSpent" value="2267000" />
  </component>
  <component name="ToolWindowManager">
    <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
    <editor active="true" />
    <layout>
      <window_info id="Designer" />
      <window_info id="Image Layers" />
      <window_info id="UI Designer" />
      <window_info id="Favorites" side_tool="true" />
      <window_info id="Capture Tool" />
      <window_info id="Web" side_tool="true" />
      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.25" />
      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
      <window_info anchor="bottom" id="Run Dashboard" weight="0.16938111" />
      <window_info anchor="bottom" id="Spring" />
      <window_info anchor="bottom" id="Terminal" />
      <window_info anchor="bottom" id="Event Log" side_tool="true" />
      <window_info anchor="bottom" id="Statistic" />
      <window_info anchor="bottom" id="Java Enterprise" />
      <window_info anchor="bottom" id="Database Changes" show_stripe_button="false" />
      <window_info anchor="bottom" id="Version Control" />
      <window_info anchor="bottom" id="Message" order="0" />
      <window_info anchor="bottom" id="Find" order="1" />
      <window_info anchor="bottom" id="Run" order="2" weight="0.32899022" />
      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
      <window_info anchor="bottom" id="TODO" order="6" />
      <window_info anchor="right" id="Palette" />
      <window_info anchor="right" id="Capture Analysis" />
      <window_info anchor="right" id="Maven Projects" visible="true" weight="0.21801706" />
      <window_info anchor="right" id="Database" />
      <window_info anchor="right" id="Palette&#9;" />
      <window_info anchor="right" id="Theme Preview" />
      <window_info anchor="right" id="Bean Validation" />
      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
    </layout>
  </component>
  <component name="TypeScriptGeneratedFilesManager">
    <option name="version" value="1" />
    <option name="version" value="2" />
  </component>
  <component name="VcsContentAnnotationSettings">
    <option name="myLimit" value="2678400000" />
  <component name="Vcs.Log.Tabs.Properties">
    <option name="TAB_STATES">
      <map>
        <entry key="MAIN">
          <value>
            <State />
          </value>
        </entry>
      </map>
    </option>
    <option name="oldMeFiltersMigrated" value="true" />
  </component>
  <component name="editorHistoryManager">
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/ImgController.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="-174">
          <caret line="21" column="13" selection-start-line="21" selection-start-column="13" selection-end-line="21" selection-end-column="13" />
  <component name="VcsManagerConfiguration">
    <MESSAGE value="后台代码删除" />
    <MESSAGE value="后台代码" />
    <option name="LAST_COMMIT_MESSAGE" value="后台代码" />
  </component>
  <component name="WindowStateProjectService">
    <state x="590" y="80" key="#&lt;template&gt;_of_Spring_Boot" timestamp="1690338437444">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/course/advice/ControllerException.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="-285">
          <caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
    <state x="590" y="80" key="#&lt;template&gt;_of_Spring_Boot/0.0.1920.1032@0.0.1920.1032" timestamp="1690338437444" />
    <state x="590" y="0" width="753" height="1032" key="#CompetitionApplication" timestamp="1690342021698">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/constant/AuthConstants.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="200">
          <caret line="8" column="17" selection-start-line="8" selection-start-column="17" selection-end-line="8" selection-end-column="17" />
    <state x="590" y="0" width="753" height="1032" key="#CompetitionApplication/0.0.1920.1032@0.0.1920.1032" timestamp="1690342021698" />
    <state x="590" y="109" width="753" height="813" key="#ManagementApplication" timestamp="1690338483958">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/resources/bootstrap.properties">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="675">
          <caret line="27" lean-forward="true" selection-start-line="27" selection-end-line="27" />
    <state x="590" y="109" width="753" height="813" key="#ManagementApplication/0.0.1920.1032@0.0.1920.1032" timestamp="1690338483958" />
    <state x="765" y="199" key="#com.intellij.ide.util.MemberChooser" timestamp="1690351593596">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/resources/logback-spring.xml">
      <provider selected="true" editor-type-id="text-editor" />
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/resources/redis.properties">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="300">
          <caret line="12" column="29" selection-start-line="12" selection-start-column="29" selection-end-line="12" selection-end-column="29" />
    <state x="765" y="199" key="#com.intellij.ide.util.MemberChooser/0.0.1920.1032@0.0.1920.1032" timestamp="1690351593596" />
    <state x="689" y="304" key="#com.intellij.ide.util.TreeClassChooserDialog" timestamp="1690338381045">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/config/RedisConfig.java">
      <provider selected="true" editor-type-id="text-editor" />
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/config/RedisConfig.java">
      <provider selected="true" editor-type-id="text-editor" />
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-competition/src/main/java/com/dsh/CompetitionApplication.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="215">
          <caret line="25" column="32" selection-start-line="25" selection-start-column="21" selection-end-line="25" selection-end-column="32" />
    <state x="689" y="304" key="#com.intellij.ide.util.TreeClassChooserDialog/0.0.1920.1032@0.0.1920.1032" timestamp="1690338381045" />
    <state x="504" y="438" key="#com.intellij.refactoring.move.MoveHandler.SelectRefactoringDialog" timestamp="1690337455729">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-competition/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="250">
          <caret line="10" column="36" selection-start-line="10" selection-start-column="36" selection-end-line="10" selection-end-column="36" />
    <state x="504" y="438" key="#com.intellij.refactoring.move.MoveHandler.SelectRefactoringDialog/0.0.1920.1032@0.0.1920.1032" timestamp="1690337455729" />
    <state x="674" y="382" width="571" height="274" key="#com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesDialog.classes" timestamp="1690338847091">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="325">
          <caret line="13" column="19" selection-start-line="13" selection-start-column="19" selection-end-line="13" selection-end-column="19" />
    <state x="674" y="382" width="571" height="274" key="#com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesDialog.classes/0.0.1920.1032@0.0.1920.1032" timestamp="1690338847091" />
    <state x="519" y="82" key="CommitChangelistDialog2" timestamp="1690341065602">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-activity/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="350">
          <caret line="14" column="19" selection-start-line="14" selection-start-column="19" selection-end-line="14" selection-end-column="19" />
    <state x="519" y="82" key="CommitChangelistDialog2/0.0.1920.1032@0.0.1920.1032" timestamp="1690341065602" />
    <state width="464" height="466" key="DebuggerActiveHint" timestamp="1690354723383">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-auth/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="325">
          <caret line="13" column="14" selection-start-line="13" selection-start-column="10" selection-end-line="13" selection-end-column="14" />
    <state width="464" height="466" key="DebuggerActiveHint/0.0.1920.1032@0.0.1920.1032" timestamp="1690354723383" />
    <state x="740" y="270" key="FileChooserDialogImpl" timestamp="1690249419357">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-management/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="325">
          <caret line="13" column="14" selection-start-line="13" selection-start-column="14" selection-end-line="13" selection-end-column="14" />
    <state x="740" y="270" key="FileChooserDialogImpl/0.0.1920.1032@0.0.1920.1032" timestamp="1690249419357" />
    <state width="1293" height="192" key="GridCell.Tab.0.bottom" timestamp="1690354845953">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/config/RedisConfig.java">
      <provider selected="true" editor-type-id="text-editor" />
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/CourseApplication.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="239">
          <caret line="25" column="27" selection-start-line="25" selection-start-column="21" selection-end-line="25" selection-end-column="27" />
    <state width="1293" height="192" key="GridCell.Tab.0.bottom/0.0.1920.1032@0.0.1920.1032" timestamp="1690354845953" />
    <state width="1293" height="192" key="GridCell.Tab.0.center" timestamp="1690354845953">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/AccountApplication.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="68">
          <caret line="7" selection-start-line="7" selection-end-line="7" />
    <state width="1293" height="192" key="GridCell.Tab.0.center/0.0.1920.1032@0.0.1920.1032" timestamp="1690354845953" />
    <state width="1293" height="192" key="GridCell.Tab.0.left" timestamp="1690354845952">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/ActivityApplication.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="650">
          <caret line="26" column="13" selection-start-line="26" selection-start-column="13" selection-end-line="26" selection-end-column="13" />
          <folding>
            <element signature="imports" expanded="true" />
          </folding>
    <state width="1293" height="192" key="GridCell.Tab.0.left/0.0.1920.1032@0.0.1920.1032" timestamp="1690354845952" />
    <state width="1293" height="192" key="GridCell.Tab.0.right" timestamp="1690354845953">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-course/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="425">
          <caret line="17" column="20" lean-forward="true" selection-start-line="17" selection-start-column="20" selection-end-line="17" selection-end-column="20" />
    <state width="1293" height="192" key="GridCell.Tab.0.right/0.0.1920.1032@0.0.1920.1032" timestamp="1690354845953" />
    <state width="1293" height="192" key="GridCell.Tab.1.bottom" timestamp="1690354960620">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/cloud-server-parent/pom.xml">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="500">
          <caret line="20" column="75" selection-start-line="20" selection-start-column="75" selection-end-line="20" selection-end-column="75" />
    <state width="1293" height="192" key="GridCell.Tab.1.bottom/0.0.1920.1032@0.0.1920.1032" timestamp="1690354960620" />
    <state width="1293" height="192" key="GridCell.Tab.1.center" timestamp="1690354960620">
      <screen x="0" y="0" width="1920" height="1032" />
        </state>
      </provider>
    </entry>
    <state width="1293" height="192" key="GridCell.Tab.1.center/0.0.1920.1032@0.0.1920.1032" timestamp="1690354960620" />
    <state width="1293" height="192" key="GridCell.Tab.1.left" timestamp="1690354960620">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state width="1293" height="192" key="GridCell.Tab.1.left/0.0.1920.1032@0.0.1920.1032" timestamp="1690354960620" />
    <state width="1293" height="192" key="GridCell.Tab.1.right" timestamp="1690354960620">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state width="1293" height="192" key="GridCell.Tab.1.right/0.0.1920.1032@0.0.1920.1032" timestamp="1690354960620" />
    <state width="1293" height="473" key="GridCell.Tab.2.bottom" timestamp="1690354799499">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state width="1293" height="473" key="GridCell.Tab.2.bottom/0.0.1920.1032@0.0.1920.1032" timestamp="1690354799499" />
    <state width="1293" height="473" key="GridCell.Tab.2.center" timestamp="1690354799499">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state width="1293" height="473" key="GridCell.Tab.2.center/0.0.1920.1032@0.0.1920.1032" timestamp="1690354799499" />
    <state width="1293" height="473" key="GridCell.Tab.2.left" timestamp="1690354799499">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state width="1293" height="473" key="GridCell.Tab.2.left/0.0.1920.1032@0.0.1920.1032" timestamp="1690354799499" />
    <state width="1293" height="473" key="GridCell.Tab.2.right" timestamp="1690354799499">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state width="1293" height="473" key="GridCell.Tab.2.right/0.0.1920.1032@0.0.1920.1032" timestamp="1690354799499" />
    <state x="461" y="160" key="SettingsEditor" timestamp="1690191509088">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="461" y="160" key="SettingsEditor/0.0.1920.1032@0.0.1920.1032" timestamp="1690191509088" />
    <state x="552" y="248" key="Vcs.Push.Dialog.v2" timestamp="1690341068571">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="552" y="248" key="Vcs.Push.Dialog.v2/0.0.1920.1032@0.0.1920.1032" timestamp="1690341068571" />
    <state x="92" y="92" width="1736" height="848" key="com.intellij.history.integration.ui.views.DirectoryHistoryDialog" timestamp="1690340014123">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="92" y="92" width="1736" height="848" key="com.intellij.history.integration.ui.views.DirectoryHistoryDialog/0.0.1920.1032@0.0.1920.1032" timestamp="1690340014123" />
    <state x="92" y="92" width="1736" height="848" key="com.intellij.history.integration.ui.views.FileHistoryDialog" timestamp="1690340014123">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="92" y="92" width="1736" height="848" key="com.intellij.history.integration.ui.views.FileHistoryDialog/0.0.1920.1032@0.0.1920.1032" timestamp="1690340014123" />
    <state x="754" y="428" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2" timestamp="1690354512274">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="754" y="428" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/0.0.1920.1032@0.0.1920.1032" timestamp="1690354512274" />
    <state x="661" y="224" width="598" height="584" key="find.popup" timestamp="1690275258905">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="661" y="224" width="598" height="584" key="find.popup/0.0.1920.1032@0.0.1920.1032" timestamp="1690275258905" />
    <state x="623" y="223" width="672" height="678" key="search.everywhere.popup" timestamp="1690338774328">
      <screen x="0" y="0" width="1920" height="1032" />
    </state>
    <state x="623" y="223" width="672" height="678" key="search.everywhere.popup/0.0.1920.1032@0.0.1920.1032" timestamp="1690338774328" />
  </component>
  <component name="XDebuggerManager">
    <breakpoint-manager>
      <breakpoints>
        <line-breakpoint enabled="true" type="java-line">
          <url>file://$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java</url>
          <line>145</line>
          <option name="timeStamp" value="1" />
        </line-breakpoint>
      </breakpoints>
    </breakpoint-manager>
  </component>
  <component name="masterDetails">
    <states>
cloud-server-competition/mb-cloud-competition.iml
@@ -133,6 +133,9 @@
    <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
    <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.20" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.20" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
@@ -147,17 +150,153 @@
    <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.22" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.22" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.13" level="project" />
    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.14" level="project" />
    <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.2" level="project" />
    <orderEntry type="library" name="Maven: org.gavaghan:geodesy:1.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-jdbc-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-transaction-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-transaction-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-executor:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: io.vertx:vertx-mysql-client:4.2.3" level="project" />
    <orderEntry type="library" name="Maven: io.vertx:vertx-core:4.2.3" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-handler-proxy:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-socks:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-http:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-http2:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-resolver-dns:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-dns:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.vertx:vertx-sql-client:4.2.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-sql92:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-engine:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-spi:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-statement:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.antlr:antlr4-runtime:4.9.2" level="project" />
    <orderEntry type="library" name="Maven: com.github.ben-manes.caffeine:caffeine:2.8.6" level="project" />
    <orderEntry type="library" name="Maven: org.checkerframework:checker-qual:3.7.0" level="project" />
    <orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.4.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-mysql:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-postgresql:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-oracle:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-sqlserver:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-opengauss:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-authority-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-authority-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-single-table-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-single-table-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-route:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-traffic-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-common:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-util:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.groovy:groovy:4.0.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-binder:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-dialect-exception-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-traffic-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-context:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-distsql-parser:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-distsql-statement:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-translator-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-translator-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-mode-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-schedule-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-lite-core:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-api:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-infra-common:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-registry-center:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-simple-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-executor-kernel:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-error-handler-general:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-error-handler-spi:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-dataflow-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-script-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-http-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-tracing-rdb:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-tracing-api:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.6" level="project" />
    <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.3.2" level="project" />
    <orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.15" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-lite-lifecycle:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-repository-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-repository-jdbc-h2:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-repository-jdbc-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-cluster-mode-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-cluster-mode-repository-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-data-pipeline-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-data-pipeline-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-cluster-mode-repository-zookeeper-curator:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.curator:curator-framework:4.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.curator:curator-client:5.1.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.zookeeper:zookeeper:3.6.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.zookeeper:zookeeper-jute:3.6.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.yetus:audience-annotations:0.5.0" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-transport-native-epoll:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-transport-native-unix-common:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: log4j:log4j:1.2.17" level="project" />
    <orderEntry type="library" name="Maven: org.apache.curator:curator-recipes:2.12.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-rewrite:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-translator-native-provider:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-merge:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite:calcite-linq4j:1.31.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite.avatica:avatica-core:1.22.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite.avatica:avatica-metrics:1.22.0" level="project" />
    <orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.5.1" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents.client5:httpclient5:5.1.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents.core5:httpcore5-h2:5.1.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents.core5:httpcore5:5.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-system-datetime:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-datetime-spi:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-cosid:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: me.ahoo.cosid:cosid-core:1.14.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-nanoid:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: com.aventrix.jnanoid:jnanoid:2.0.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-readwrite-splitting-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-readwrite-splitting-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-mysql:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-opengauss:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-encrypt-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-encrypt-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-encrypt-sm:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-shadow-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-shadow-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-federation-executor:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-federation-optimizer:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite:calcite-core:1.31.0" level="project" />
    <orderEntry type="library" name="Maven: com.esri.geometry:esri-geometry-api:2.2.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.11.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.google.uzaygezen:uzaygezen-core:0.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.yahoo.datasketches:sketches-core:0.9.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.yahoo.datasketches:memory:0.9.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: net.hydromatic:aggdesigner-algorithm:6.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.commons:commons-dbcp2:2.7.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.janino:commons-compiler:3.1.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.janino:janino:3.1.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-parser-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-parser-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-parser:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.4" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.h2database:h2:1.4.200" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:jcl-over-slf4j:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
    <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
    <orderEntry type="library" name="Maven: com.alipay.sdk:alipay-sdk-java:4.8.10.ALL" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.50" level="project" />
    <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.62" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:2.2.1.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-client:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-common:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.10" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-api:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.58" level="project" />
    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.14" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: io.prometheus:simpleclient:0.5.0" level="project" />
@@ -170,7 +309,6 @@
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.9.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.59" level="project" />
    <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.59" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-ribbon:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-archaius:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-archaius:2.2.6.RELEASE" level="project" />
@@ -186,8 +324,6 @@
    <orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty:0.4.9" level="project" />
    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-core:2.3.0" level="project" />
    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-httpclient:2.3.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents:httpcore:4.4.13" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-client:1.19.1" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-core:1.19.1" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: javax.ws.rs:jsr311-api:1.1.1" level="project" />
@@ -207,7 +343,6 @@
    <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.13.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator-autoconfigure:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator:2.3.6.RELEASE" level="project" />
@@ -222,10 +357,10 @@
    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: net.minidev:json-smart:2.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.16.1" level="project" />
@@ -237,7 +372,7 @@
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.vintage:junit-vintage-engine:5.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" />
    <orderEntry type="library" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.13.1" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:3.3.3" level="project" />
cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
@@ -1,11 +1,14 @@
package com.dsh.competition.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.competition.entity.Competition;
import com.dsh.competition.entity.PaymentCompetition;
import com.dsh.competition.entity.UserCompetition;
import com.dsh.competition.feignclient.model.GetStuSourseList;
import com.dsh.competition.feignclient.model.ListQuery;
import com.dsh.competition.feignclient.model.PurchaseRecordVo;
import com.dsh.competition.model.CompetitionInfo;
import com.dsh.competition.model.CompetitionListVo;
@@ -16,6 +19,7 @@
import com.dsh.competition.util.PayMoneyUtil;
import com.dsh.competition.util.ResultUtil;
import com.dsh.competition.util.TokenUtil;
import com.dsh.competition.util.ToolUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -366,5 +370,50 @@
            e.printStackTrace();
        }
    }
    @PostMapping("/base/competition/queryById")
    public  Competition queryById(Integer id){
        try {
            return cttService.getById(id);
        }catch (Exception e){
            e.printStackTrace();
            return null;
        }
    }
    @PostMapping("/base/competition/list")
    public Page<Competition> list(@RequestBody ListQuery listQuery){
        try {
            Page<Competition> competitionPage = new Page<>(listQuery.getOffset(),listQuery.getLimit());
            LambdaQueryWrapper<Competition> wrapper = new LambdaQueryWrapper<>();
            if(ToolUtil.isNotEmpty(listQuery.getProvinceCode())){
                wrapper.eq(Competition::getProvinceCode,listQuery.getProvinceCode());
            }
            if(ToolUtil.isNotEmpty(listQuery.getCityCode())){
                wrapper.eq(Competition::getProvinceCode,listQuery.getCityCode());
            }
            if(ToolUtil.isNotEmpty(listQuery.getEventName())){
                wrapper.like(Competition::getName,listQuery.getEventName());
            }
            if(ToolUtil.isNotEmpty(listQuery.getTime())){
                wrapper.gt(Competition::getStartTime,listQuery.getTime().split(" - ")[0]+" 00:00:00");
                wrapper.lt(Competition::getEndTime,listQuery.getTime().split(" - ")[1]+" 23:59:59");
            }
            if(ToolUtil.isNotEmpty(listQuery.getState())){
                wrapper.eq(Competition::getState,listQuery.getState());
            }
            if(ToolUtil.isNotEmpty(listQuery.getRegisterCondition())){
                wrapper.eq(Competition::getRegisterCondition,listQuery.getRegisterCondition());
            }
            wrapper.in(Competition::getStoreId,listQuery.getIds());
            Page<Competition> page = cttService.page(competitionPage, wrapper);
            return page;
        }catch (Exception e){
            e.printStackTrace();
            return new Page<Competition>();
        }
    }
}
cloud-server-competition/src/main/java/com/dsh/competition/entity/Competition.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@@ -68,11 +69,13 @@
     * 开始时间
     */
    @TableField("startTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    /**
     * 结束时间
     */
    @TableField("endTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    /**
     * 报名结束时间
cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/ListQuery.java
New file
@@ -0,0 +1,25 @@
package com.dsh.competition.feignclient.model;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ListQuery {
    private long limit;
    private long offset;
    private String provinceCode;
    private String cityCode;
    private String eventName;
    private String time;
    private Integer state;
    private Integer registerCondition;
    private List<Integer> ids;
}
cloud-server-competition/src/main/java/com/dsh/page/HttpKit.java
New file
@@ -0,0 +1,202 @@
/**
 * Copyright (c) 2015-2016, Chill Zhuang 庄骞 (smallchill@163.com).
 * <p>
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * <p>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.dsh.page;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class HttpKit {
    public static String getIp(){
       return HttpKit.getRequest().getRemoteHost();
    }
    /**
     * 获取所有请求的值
     */
    public static Map<String, String> getRequestParameters() {
        HashMap<String, String> values = new HashMap<>();
        HttpServletRequest request = HttpKit.getRequest();
        Enumeration enums = request.getParameterNames();
        while ( enums.hasMoreElements()){
            String paramName = (String) enums.nextElement();
            String paramValue = request.getParameter(paramName);
            values.put(paramName, paramValue);
        }
        return values;
    }
    /**
     * 获取 HttpServletRequest
     */
    public static HttpServletResponse getResponse() {
        HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
        return response;
    }
    /**
     * 获取 包装防Xss Sql注入的 HttpServletRequest
     * @return request
     */
    public static HttpServletRequest getRequest() {
        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
        return new WafRequestWrapper(request);
    }
    /**
     * 向指定URL发送GET方法的请求
     *
     * @param url 发送请求的URL
     * @param param 请求参数
     * @return URL 所代表远程资源的响应结果
     */
    public static String sendGet(String url, Map<String, String> param) {
        String result = "";
        BufferedReader in = null;
        try {
            StringBuffer query = new StringBuffer();
            for (Map.Entry<String, String> kv : param.entrySet()) {
                query.append(URLEncoder.encode(kv.getKey(), "UTF-8") + "=");
                query.append(URLEncoder.encode(kv.getValue(), "UTF-8") + "&");
            }
            if (query.lastIndexOf("&") > 0) {
                query.deleteCharAt(query.length() - 1);
            }
            String urlNameString = url + "?" + query.toString();
            URL realUrl = new URL(urlNameString);
            // 打开和URL之间的连接
            //Establish the connection between the open URL and other relevant components.
            URLConnection connection = realUrl.openConnection();
            // 设置通用的请求属性
            //Set universal request properties.
            connection.setRequestProperty("accept", "*/*");
            connection.setRequestProperty("connection", "Keep-Alive");
            connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
            // 建立实际的连接
            //Establishing a tangible connection
            connection.connect();
            // 获取所有响应头字段
            //Retrieve all response header fields.
            Map<String, List<String>> map = connection.getHeaderFields();
            // 遍历所有的响应头字段
            //Traverse all response header fields.
            for (String key : map.keySet()) {
                System.out.println(key + "--->" + map.get(key));
            }
            // 定义 BufferedReader输入流来读取URL的响应
            //Define a BufferedReader input stream to read the response of the URL.
            in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
            System.out.println("发送GET请求出现异常!" + e);
            e.printStackTrace();
        }
        // 使用finally块来关闭输入流
        //Use a 'finally' block to close the input stream.
        finally {
            try {
                if (in != null) {
                    in.close();
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
        return result;
    }
    /**
     * 向指定 URL 发送POST方法的请求
     *
     * @param url 发送请求的 URL
     * @param param  请求参数
     * @return 所代表远程资源的响应结果
     */
    public static String sendPost(String url, Map<String, String> param) {
        PrintWriter out = null;
        BufferedReader in = null;
        String result = "";
        try {
            String para = "";
            for (String key : param.keySet()) {
                para += (key + "=" + param.get(key) + "&");
            }
            if (para.lastIndexOf("&") > 0) {
                para = para.substring(0, para.length() - 1);
            }
            String urlNameString = url + "?" + para;
            URL realUrl = new URL(urlNameString);
            // 打开和URL之间的连接
            URLConnection conn = realUrl.openConnection();
            // 设置通用的请求属性
            conn.setRequestProperty("accept", "*/*");
            conn.setRequestProperty("connection", "Keep-Alive");
            conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
            // 发送POST请求必须设置如下两行
            conn.setDoOutput(true);
            conn.setDoInput(true);
            // 获取URLConnection对象对应的输出流
            out = new PrintWriter(conn.getOutputStream());
            // 发送请求参数
            out.print(param);
            // flush输出流的缓冲
            out.flush();
            // 定义BufferedReader输入流来读取URL的响应
            in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
            System.out.println("发送 POST 请求出现异常!" + e);
            e.printStackTrace();
        }
        // 使用finally块来关闭输出流、输入流
        finally {
            try {
                if (out != null) {
                    out.close();
                }
                if (in != null) {
                    in.close();
                }
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
        return result;
    }
}
cloud-server-competition/src/main/java/com/dsh/page/Order.java
New file
@@ -0,0 +1,26 @@
package com.dsh.page;
/**
 * 数据库排序
 *
 * @author fengshuonan
 * @Date 2017年5月31日20:48:41
 */
public enum Order {
    ASC("asc"), DESC("desc");
    private String des;
    Order(String des) {
        this.des = des;
    }
    public String getDes() {
        return des;
    }
    public void setDes(String des) {
        this.des = des;
    }
}
cloud-server-competition/src/main/java/com/dsh/page/PageFactory.java
New file
@@ -0,0 +1,31 @@
package com.dsh.page;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.util.StringUtils;
import javax.servlet.http.HttpServletRequest;
/**
 * BootStrap Table默认的分页参数创建
 *
 * @author fengshuonan
 * @date 2017-04-05 22:25
 */
public class PageFactory<T> {
    public Page<T> defaultPage(Integer limit ,Integer offset) {
        HttpServletRequest request = HttpKit.getRequest();
        String sort = request.getParameter("sort");         //排序字段名称
        String order = request.getParameter("order");       //asc或desc(升序或降序)
        if (StringUtils.isEmpty(sort)) {
            Page<T> page = new Page<>((offset / limit + 1), limit);
            return page;
        } else {
            Page<T> page = new Page<T>((offset / limit + 1), limit);
            if (Order.ASC.getDes().equals(order)) {
            } else {
            }
            return page;
        }
    }
}
cloud-server-competition/src/main/java/com/dsh/page/WafKit.java
New file
@@ -0,0 +1,118 @@
/**
 * Copyright (c) 2011-2014, hubin (jobob@qq.com).
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.dsh.page;
import java.util.regex.Pattern;
/**
 * Web防火墙工具类
 Web firewall tool category
 * <p>
 * @author   hubin
 * @Date     2014-5-8
 */
public class WafKit {
    /**
     * @Description 过滤XSS脚本内容
     Filtering XSS scripts content.
     * @param value
     *                 待处理内容
     * @return
     */
    public static String stripXSS(String value) {
        String rlt = null;
        if (null != value) {
            // NOTE: It's highly recommended to use the ESAPI library and uncomment the following line to
            // avoid encoded attacks.
            // value = ESAPI.encoder().canonicalize(value);
            // Avoid null characters
            rlt = value.replaceAll("", "");
            // Avoid anything between script tags
            Pattern scriptPattern = Pattern.compile("<script>(.*?)</script>", Pattern.CASE_INSENSITIVE);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Avoid anything in a src='...' type of expression
            /*scriptPattern = Pattern.compile("src[\r\n]*=[\r\n]*\\\'(.*?)\\\'", Pattern.CASE_INSENSITIVE
                    | Pattern.MULTILINE | Pattern.DOTALL);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            scriptPattern = Pattern.compile("src[\r\n]*=[\r\n]*\\\"(.*?)\\\"", Pattern.CASE_INSENSITIVE
                    | Pattern.MULTILINE | Pattern.DOTALL);
            rlt = scriptPattern.matcher(rlt).replaceAll("");*/
            // Remove any lonesome </script> tag
            scriptPattern = Pattern.compile("</script>", Pattern.CASE_INSENSITIVE);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Remove any lonesome <script ...> tag
            scriptPattern = Pattern.compile("<script(.*?)>", Pattern.CASE_INSENSITIVE
                    | Pattern.MULTILINE | Pattern.DOTALL);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Avoid eval(...) expressions
            scriptPattern = Pattern.compile("eval\\((.*?)\\)", Pattern.CASE_INSENSITIVE
                    | Pattern.MULTILINE | Pattern.DOTALL);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Avoid expression(...) expressions
            scriptPattern = Pattern.compile("expression\\((.*?)\\)", Pattern.CASE_INSENSITIVE
                    | Pattern.MULTILINE | Pattern.DOTALL);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Avoid javascript:... expressions
            scriptPattern = Pattern.compile("javascript:", Pattern.CASE_INSENSITIVE);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Avoid vbscript:... expressions
            scriptPattern = Pattern.compile("vbscript:", Pattern.CASE_INSENSITIVE);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
            // Avoid onload= expressions
            scriptPattern = Pattern.compile("onload(.*?)=", Pattern.CASE_INSENSITIVE
                    | Pattern.MULTILINE | Pattern.DOTALL);
            rlt = scriptPattern.matcher(rlt).replaceAll("");
        }
        return rlt;
    }
    /**
     * @Description 过滤SQL注入内容
     Filter SQL injection content.
     * @param value
     *                 待处理内容
     * @return
     */
    public static String stripSqlInjection(String value) {
        return (null == value) ? null : value.replaceAll("('.+--)|(--)|(%7C)", ""); //value.replaceAll("('.+--)|(--)|(\\|)|(%7C)", "");
    }
    /**
     * @Description 过滤SQL/XSS注入内容
     Filter SQL/XSS injection content.
     * @param value
     *                 待处理内容
     * @return
     */
    public static String stripSqlXSS(String value) {
        return stripXSS(stripSqlInjection(value));
    }
}
cloud-server-competition/src/main/java/com/dsh/page/WafRequestWrapper.java
New file
@@ -0,0 +1,150 @@
/**
 * Copyright (c) 2011-2014, hubin (jobob@qq.com).
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */
package com.dsh.page;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.util.HashMap;
import java.util.Map;
/**
 * Request请求过滤包装
 Request for packaging filtration.
 * <p>
 * @author   hubin
 * @Date     2014-5-8
 */
public class WafRequestWrapper extends HttpServletRequestWrapper {
    private boolean filterXSS = true;
    private boolean filterSQL = true;
    public WafRequestWrapper(HttpServletRequest request, boolean filterXSS, boolean filterSQL) {
        super(request);
        this.filterXSS = filterXSS;
        this.filterSQL = filterSQL;
    }
    public WafRequestWrapper(HttpServletRequest request) {
        this(request, true, true);
    }
    /**
     * @Description 数组参数过滤
     * @param parameter
     *                 过滤参数
     * @return
     */
    @Override
    public String[] getParameterValues(String parameter) {
        String[] values = super.getParameterValues(parameter);
        if ( values == null ) {
            return null;
        }
        int count = values.length;
        String[] encodedValues = new String[count];
        for ( int i = 0 ; i < count ; i++ ) {
            encodedValues[i] = filterParamString(values[i]);
        }
        return encodedValues;
    }
    @Override
    @SuppressWarnings({ "rawtypes", "unchecked" })
    public Map getParameterMap() {
        Map<String, String[]> primary = super.getParameterMap();
        Map<String, String[]> result = new HashMap<String, String[]>(primary.size());
        for ( Map.Entry<String, String[]> entry : primary.entrySet() ) {
            result.put(entry.getKey(), filterEntryString(entry.getValue()));
        }
        return result;
    }
    protected String[] filterEntryString(String[] rawValue) {
        for ( int i = 0 ; i < rawValue.length ; i++ ) {
            rawValue[i] = filterParamString(rawValue[i]);
        }
        return rawValue;
    }
    /**
     * @Description 参数过滤
     * @param parameter
     *                 过滤参数
     * @return
     */
    @Override
    public String getParameter(String parameter) {
        return filterParamString(super.getParameter(parameter));
    }
    /**
     * @Description 请求头过滤
     * @param name
     *                 过滤内容
     * @return
     */
    @Override
    public String getHeader(String name) {
        return filterParamString(super.getHeader(name));
    }
    /**
     * @Description Cookie内容过滤
     * @return
     */
    @Override
    public Cookie[] getCookies() {
        Cookie[] existingCookies = super.getCookies();
        if (existingCookies != null) {
            for (int i = 0 ; i < existingCookies.length ; ++i) {
                Cookie cookie = existingCookies[i];
                cookie.setValue(filterParamString(cookie.getValue()));
            }
        }
        return existingCookies;
    }
    /**
     * @Description 过滤字符串内容
     * @param rawValue
     *                 待处理内容
     * @return
     */
    protected String filterParamString(String rawValue) {
        if (null == rawValue) {
            return null;
        }
        String tmpStr = rawValue;
        if (this.filterXSS) {
            tmpStr = WafKit.stripXSS(rawValue);
        }
        if (this.filterSQL) {
            tmpStr = WafKit.stripSqlInjection(tmpStr);
        }
        return tmpStr;
    }
}
cloud-server-course/mb-cloud-course.iml
@@ -9,6 +9,16 @@
        <webroots />
      </configuration>
    </facet>
    <facet type="jpa" name="JPA">
      <configuration>
        <setting name="validation-enabled" value="true" />
        <setting name="provider-name" value="Hibernate" />
        <datasource-mapping>
          <factory-entry name="entityManagerFactory" />
        </datasource-mapping>
        <naming-strategy-map />
      </configuration>
    </facet>
  </component>
  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
    <output url="file://$MODULE_DIR$/target/classes" />
@@ -28,7 +38,6 @@
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba:transmittable-thread-local:2.10.1" level="project" />
    <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
    <orderEntry type="library" name="Maven: cn.mb.cloud:mb-cloud-common-data:1.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.3.6.RELEASE" level="project" />
@@ -37,7 +46,6 @@
    <orderEntry type="library" name="Maven: org.springframework:spring-expression:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-undertow:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: io.undertow:undertow-core:2.1.4.Final" level="project" />
    <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" />
    <orderEntry type="library" name="Maven: org.jboss.xnio:xnio-api:3.8.0.Final" level="project" />
    <orderEntry type="library" name="Maven: org.wildfly.common:wildfly-common:1.5.2.Final" level="project" />
    <orderEntry type="library" name="Maven: org.wildfly.client:wildfly-client-config:1.0.1.Final" level="project" />
@@ -55,7 +63,6 @@
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.3.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.3.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.3.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: io.lettuce:lettuce-core:5.3.5.RELEASE" level="project" />
@@ -69,7 +76,6 @@
    <orderEntry type="library" name="Maven: com.github.xiaoymin:knife4j-spring:2.0.3" level="project" />
    <orderEntry type="library" name="Maven: com.github.xiaoymin:knife4j-annotations:2.0.3" level="project" />
    <orderEntry type="library" name="Maven: com.github.xiaoymin:knife4j-core:2.0.3" level="project" />
    <orderEntry type="library" name="Maven: org.javassist:javassist:3.25.0-GA" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-bean-validators:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: com.github.xiaoymin:knife4j-spring-ui:2.0.3" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.3.6.RELEASE" level="project" />
@@ -90,12 +96,10 @@
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.5" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-tx:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: cn.mb.cloud:mb-cloud-common-api:1.1.3" level="project" />
    <orderEntry type="library" name="Maven: cn.mb.cloud:mb-cloud-common-feign:1.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-openfeign:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-openfeign-core:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form-spring:3.8.0" level="project" />
    <orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form:3.8.0" level="project" />
    <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.3" level="project" />
@@ -110,7 +114,6 @@
    <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-annotation-aspectj:1.7.1" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-core:1.7.1" level="project" />
    <orderEntry type="library" name="Maven: org.aspectj:aspectjrt:1.9.6" level="project" />
    <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.6" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-circuitbreaker-sentinel:2.2.1.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-reactor-adapter:1.7.1" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.csp:sentinel-spring-webflux-adapter:1.7.1" level="project" />
@@ -132,7 +135,38 @@
    <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.2" level="project" />
    <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
    <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.velocity:velocity:1.7" level="project" />
    <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.6" level="project" />
    <orderEntry type="library" name="Maven: jakarta.transaction:jakarta.transaction-api:1.3.3" level="project" />
    <orderEntry type="library" name="Maven: jakarta.persistence:jakarta.persistence-api:2.2.3" level="project" />
    <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.4.23.Final" level="project" />
    <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" />
    <orderEntry type="library" name="Maven: org.javassist:javassist:3.24.0-GA" level="project" />
    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.18" level="project" />
    <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
    <orderEntry type="library" name="Maven: org.jboss:jandex:2.1.3.Final" level="project" />
    <orderEntry type="library" name="Maven: org.dom4j:dom4j:2.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.1.2.Final" level="project" />
    <orderEntry type="library" name="Maven: org.glassfish.jaxb:jaxb-runtime:2.3.3" level="project" />
    <orderEntry type="library" name="Maven: org.glassfish.jaxb:txw2:2.3.3" level="project" />
    <orderEntry type="library" name="Maven: com.sun.istack:istack-commons-runtime:3.0.11" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.activation:jakarta.activation:1.2.2" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.3.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.3.5.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-orm:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-context:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-tx:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-beans:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.30" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.20" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.20" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
@@ -142,22 +176,155 @@
    <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-beans:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-context:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.11.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.22" level="project" />
    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.22" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.13" level="project" />
    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.14" level="project" />
    <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.2" level="project" />
    <orderEntry type="library" name="Maven: org.gavaghan:geodesy:1.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-jdbc-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-transaction-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-transaction-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-executor:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: io.vertx:vertx-mysql-client:4.2.3" level="project" />
    <orderEntry type="library" name="Maven: io.vertx:vertx-core:4.2.3" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-handler-proxy:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-socks:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-http:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-http2:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-resolver-dns:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-codec-dns:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.vertx:vertx-sql-client:4.2.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-sql92:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-engine:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-spi:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-statement:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.antlr:antlr4-runtime:4.9.2" level="project" />
    <orderEntry type="library" name="Maven: com.github.ben-manes.caffeine:caffeine:2.8.6" level="project" />
    <orderEntry type="library" name="Maven: org.checkerframework:checker-qual:3.7.0" level="project" />
    <orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.4.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-mysql:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-postgresql:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-oracle:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-sqlserver:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-parser-opengauss:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-authority-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-authority-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-single-table-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-single-table-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-route:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-traffic-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-common:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-util:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.groovy:groovy:4.0.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-binder:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-dialect-exception-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-traffic-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-context:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-distsql-parser:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-distsql-statement:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-translator-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-translator-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-mode-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-schedule-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-lite-core:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-api:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-infra-common:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-registry-center:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-simple-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-executor-kernel:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-error-handler-general:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-error-handler-spi:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-dataflow-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-script-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-exec:1.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-http-executor:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-tracing-rdb:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-tracing-api:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.6" level="project" />
    <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.3.2" level="project" />
    <orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.15" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere.elasticjob:elasticjob-lite-lifecycle:3.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-repository-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-repository-jdbc-h2:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-standalone-mode-repository-jdbc-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-cluster-mode-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-cluster-mode-repository-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-data-pipeline-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-data-pipeline-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-cluster-mode-repository-zookeeper-curator:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.curator:curator-framework:4.0.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.curator:curator-client:5.1.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.zookeeper:zookeeper:3.6.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.zookeeper:zookeeper-jute:3.6.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.yetus:audience-annotations:0.5.0" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-transport-native-epoll:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: io.netty:netty-transport-native-unix-common:4.1.54.Final" level="project" />
    <orderEntry type="library" name="Maven: log4j:log4j:1.2.17" level="project" />
    <orderEntry type="library" name="Maven: org.apache.curator:curator-recipes:2.12.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-rewrite:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sql-translator-native-provider:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-merge:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite:calcite-linq4j:1.31.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite.avatica:avatica-core:1.22.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite.avatica:avatica-metrics:1.22.0" level="project" />
    <orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.5.1" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents.client5:httpclient5:5.1.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents.core5:httpcore5-h2:5.1.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents.core5:httpcore5:5.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-system-datetime:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-datetime-spi:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-cosid:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: me.ahoo.cosid:cosid-core:1.14.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-sharding-nanoid:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: com.aventrix.jnanoid:jnanoid:2.0.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-readwrite-splitting-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-readwrite-splitting-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-mysql:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-db-discovery-opengauss:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-encrypt-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-encrypt-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-encrypt-sm:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-shadow-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-shadow-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-federation-executor:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-federation-optimizer:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.calcite:calcite-core:1.31.0" level="project" />
    <orderEntry type="library" name="Maven: com.esri.geometry:esri-geometry-api:2.2.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.11.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.google.uzaygezen:uzaygezen-core:0.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.yahoo.datasketches:sketches-core:0.9.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.yahoo.datasketches:memory:0.9.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: net.hydromatic:aggdesigner-algorithm:6.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.commons:commons-dbcp2:2.7.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.janino:commons-compiler:3.1.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.janino:janino:3.1.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-parser-core:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-parser-api:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.shardingsphere:shardingsphere-infra-parser:5.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.4" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.h2database:h2:1.4.200" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:jcl-over-slf4j:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
    <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
    <orderEntry type="library" name="Maven: com.alipay.sdk:alipay-sdk-java:4.8.10.ALL" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.50" level="project" />
    <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.62" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:2.2.1.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-client:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-common:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
    <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.10" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-api:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.58" level="project" />
    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.14" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.3" level="project" />
    <orderEntry type="library" name="Maven: io.prometheus:simpleclient:0.5.0" level="project" />
@@ -170,7 +337,6 @@
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.9.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.59" level="project" />
    <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.59" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-ribbon:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-archaius:2.2.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-archaius:2.2.6.RELEASE" level="project" />
@@ -186,8 +352,6 @@
    <orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty:0.4.9" level="project" />
    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-core:2.3.0" level="project" />
    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-httpclient:2.3.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.httpcomponents:httpcore:4.4.13" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-client:1.19.1" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-core:1.19.1" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: javax.ws.rs:jsr311-api:1.1.1" level="project" />
@@ -207,7 +371,6 @@
    <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.13.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" level="project" />
    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
    <orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator-autoconfigure:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator:2.3.6.RELEASE" level="project" />
@@ -222,12 +385,12 @@
    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.3.6.RELEASE" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: net.minidev:json-smart:2.3" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
    <orderEntry type="library" scope="RUNTIME" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
    <orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" />
    <orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.16.1" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest:2.2" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter:5.6.3" level="project" />
@@ -237,11 +400,10 @@
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.vintage:junit-vintage-engine:5.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" />
    <orderEntry type="library" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.6.3" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.13.1" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:3.3.3" level="project" />
    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.18" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy-agent:1.10.18" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:2.6" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-junit-jupiter:3.3.3" level="project" />
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/CompetitionClient.java
@@ -1,5 +1,6 @@
package com.dsh.course.feignClient.competition;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.course.feignClient.competition.model.Competition;
import com.dsh.course.feignClient.competition.model.ListQuery;
import org.springframework.cloud.openfeign.FeignClient;
@@ -15,7 +16,7 @@
    Competition queryById(Integer id);
    @PostMapping("/base/competition/list")
    List<Competition> list(ListQuery listQuery);
    Page<Competition> list(ListQuery listQuery);
}
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/Competition.java
@@ -1,7 +1,240 @@
package com.dsh.course.feignClient.competition.model;
public class Competition {
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * <p>
 *
 * </p>
 *
 * @author jqs
 * @since 2023-06-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_competition")
public class Competition extends Model<Competition> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 省
     */
    @TableField("province")
    private String province;
    /**
     * 省编号
     */
    @TableField("provinceCode")
    private String provinceCode;
    /**
     * 市
     */
    @TableField("city")
    private String city;
    /**
     * 市编号
     */
    @TableField("cityCode")
    private String cityCode;
    /**
     * 门店id
     */
    @TableField("storeId")
    private Integer storeId;
    /**
     * 赛事名称
     */
    @TableField("name")
    private String name;
    /**
     * 开始时间
     */
    @TableField("startTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    /**
     * 结束时间
     */
    @TableField("endTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    /**
     * 报名结束时间
     */
    @TableField("registerEndTime")
    private Date registerEndTime;
    /**
     * 报名条件(1=全部用户,2=仅限年度会员参与,3=仅限学员参与)
     */
    @TableField("registerCondition")
    private Integer registerCondition;
    /**
     * 报名开始年龄
     */
    @TableField("startAge")
    private Integer startAge;
    /**
     * 报名结束年龄
     */
    @TableField("endAge")
    private Integer endAge;
    /**
     * 现金支付价格
     */
    @TableField("cashPrice")
    private Double cashPrice;
    /**
     * 玩湃币支付价格
     */
    @TableField("playPaiCoin")
    private Integer playPaiCoin;
    /**
     * 课时支付价格
     */
    @TableField("classPrice")
    private Integer classPrice;
    /**
     * 参加地址
     */
    @TableField("address")
    private String address;
    /**
     * 经度
     */
    @TableField("longitude")
    private String longitude;
    /**
     * 纬度
     */
    @TableField("latitude")
    private String latitude;
    /**
     * 报名人数
     */
    @TableField("applicantsNumber")
    private Integer applicantsNumber;
    /**
     * 基础人数
     */
    @TableField("baseNumber")
    private Integer baseNumber;
    /**
     * 是否需要实名(0=否,1=是)
     */
    @TableField("realName")
    private Integer realName;
    /**
     * 赛事封面图
     */
    @TableField("coverDrawing")
    private String coverDrawing;
    /**
     * 赛事简介
     */
    @TableField("introduction")
    private String introduction;
    /**
     * 赛事图片
     */
    @TableField("imgs")
    private String imgs;
    /**
     * 报名须知
     */
    @TableField("registrationNotes")
    private String registrationNotes;
    /**
     * 参赛省
     */
    @TableField("entryProvince")
    private String entryProvince;
    /**
     * 参赛省编号
     */
    @TableField("entryProvinceCode")
    private String entryProvinceCode;
    /**
     * 参赛市
     */
    @TableField("entryCity")
    private String entryCity;
    /**
     * 参赛市编号
     */
    @TableField("entryCityCode")
    private String entryCityCode;
    /**
     * 参赛地址
     */
    @TableField("entryAddress")
    private String entryAddress;
    /**
     * 参赛经度
     */
    @TableField("entryLon")
    private String entryLon;
    /**
     * 参赛纬度
     */
    @TableField("entryLat")
    private String entryLat;
    /**
     * 审核状态(1=待审核,2=已通过,3=已拒绝)
     */
    @TableField("auditStatus")
    private Integer auditStatus;
    /**
     * 审核人id
     */
    @TableField("auditUserId")
    private Integer auditUserId;
    /**
     * 审核备注
     */
    @TableField("auditRemark")
    private String auditRemark;
    /**
     * 状态(1=未开始,2=已开始,3=已结束,4=已取消)
     */
    @TableField("status")
    private Integer status;
    /**
     * 状态(1=正常,2=冻结,3=删除)
     */
    @TableField("state")
    private Integer state;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    @TableField(exist = false)
    private String storeName;
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/ListQuery.java
@@ -11,6 +11,10 @@
@NoArgsConstructor
public class ListQuery {
    private long limit;
    private long offset;
    private String provinceCode;
    private String cityCode;
    private String eventName;
cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/SuccessTip.java
@@ -1,20 +1,33 @@
package com.dsh.guns.core.base.tips;
import com.dsh.course.feignClient.competition.model.Competition;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import org.apache.poi.ss.formula.functions.T;
import java.util.List;
/**
 * 返回给前台的成功提示
 *
 * @author fengshuonan
 * @date 2016年11月12日 下午5:05:22
 */
public class SuccessTip extends Tip {
public class SuccessTip<T> extends Tip {
    
    public SuccessTip(){
        super.code = 200;
        super.message = "操作成功";
    }
    public SuccessTip(T data){
        super.code = 200;
        super.message = "操作成功";
        super.data=data;
    }
    public SuccessTip(Integer code,String message){
        super.code = code;
        super.message = message;
    }
}
cloud-server-management/src/main/java/com/dsh/guns/core/base/tips/Tip.java
@@ -1,15 +1,26 @@
package com.dsh.guns.core.base.tips;
import org.apache.poi.ss.formula.functions.T;
/**
 * 返回给前台的提示(最终转化为json形式)
 *
 * @author fengshuonan
 * @Date 2017年1月11日 下午11:58:00
 */
public abstract class Tip {
public abstract class Tip<T> {
    protected int code;
    protected String message;
    protected T data;
    public T getData() {
        return data;
    }
    public void setData(T data) {
        this.data = data;
    }
    public int getCode() {
        return code;
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
@@ -5,28 +5,19 @@
import com.dsh.course.feignClient.competition.CompetitionClient;
import com.dsh.course.feignClient.competition.model.Competition;
import com.dsh.course.feignClient.competition.model.ListQuery;
import com.dsh.course.feignClient.course.CourseClient;
import com.dsh.guns.config.UserExt;
import com.dsh.guns.core.base.controller.BaseController;
import com.dsh.guns.core.base.tips.SuccessTip;
import com.dsh.guns.core.common.constant.factory.PageFactory;
import com.dsh.guns.core.util.SinataUtil;
import com.dsh.guns.core.support.HttpKit;
import com.dsh.guns.core.util.ToolUtil;
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.service.IStoreService;
import com.dsh.guns.modular.system.util.DateUtil;
import com.dsh.guns.modular.system.util.ExcelExportUtil;
import com.dsh.guns.modular.system.util.ResultUtil;
import com.dsh.guns.modular.system.warpper.RoleWarpper;
import org.apache.commons.lang.time.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -37,10 +28,10 @@
 * @Date 2020-06-05 17:25:12
 */
@Controller
@RequestMapping("/TCompetition")
@RequestMapping("/tCompetition")
public class TCompetitionController extends BaseController {
    private String PREFIX = "/system/TCompetition/";
    private String PREFIX = "/system/tCompetition/";
    @Autowired
    private CompetitionClient competitionClient;
@@ -62,7 +53,7 @@
     */
    @RequestMapping("/tCompetition_add")
    public String tCompetitionAdd(Model model) {
        return PREFIX + "tCompetition_add.html";
        return PREFIX + "TCompetition_add.html";
    }
@@ -81,19 +72,30 @@
    @ResponseBody
    public Object list(String provinceCode,String cityCode,String shopName,String eventName,String time,Integer state,Integer registerCondition) {
        List<Integer> ids = new ArrayList<>();
        List<TStore> list = null;
        // 获取门店id
        if(ToolUtil.isNotEmpty(shopName)){
            List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().like(TStore::getName, shopName));
             list = storeService.list(new LambdaQueryWrapper<TStore>().like(TStore::getName, shopName));
            ids = list.stream().map(TStore::getId).collect(Collectors.toList());
        }else {
            list = storeService.list();
            ids = storeService.list().stream().map(TStore::getId).collect(Collectors.toList());
        }
        if(ids.size()==0){
            ids.add(-1);
        }
        ListQuery listQuery = new ListQuery(provinceCode,cityCode,eventName,time,state,registerCondition,ids);
        List<Competition> competitions = competitionClient.list(listQuery);
        return super.warpObject(null);
        Page<Competition> page = new PageFactory<Competition>().defaultPage();
        ListQuery listQuery = new ListQuery(page.getSize(),page.getCurrent(),provinceCode,cityCode,eventName,time,state,registerCondition,ids);
        Page<Competition> competitions = competitionClient.list(listQuery);
        for (Competition competition : competitions.getRecords()) {
            for (TStore tStore : list) {
                if(competition.getStoreId().equals(tStore.getId())){
                    competition.setStoreName(tStore.getName());
                }
            }
        }
        return  super.packForBT(competitions);
    }
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TStore.java
@@ -1,5 +1,6 @@
package com.dsh.guns.modular.system.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@@ -10,21 +11,30 @@
public class TStore {
    private Integer id;
    private String name;
    @TableField("storeStaffId")
    private Integer storeStaffId;
    @TableField("cityManagerId")
    private Integer cityManagerId;
    private String province;
    @TableField("provinceCode")
    private String provinceCode;
    private String city;
    @TableField("cityCode")
    private String cityCode;
    private String phone;
    private String address;
    private String lat;
    private String lon;
    @TableField("startTime")
    private String startTime;
    @TableField("endTime")
    private String endTime;
    @TableField("coverDrawing")
    private String coverDrawing;
    @TableField("realPicture")
    private String realPicture;
    private String introduce;
    @TableField("welfarePicture")
    private String welfarePicture;
    private BigDecimal score;
    private Integer state;
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition.html
@@ -42,22 +42,19 @@
                        </#SelectCon>
                    </div>
                    <div class="col-sm-3">
                        <#button name="搜索" icon="fa-search" clickFun="TCar.search()"/>
                        <#button name="重置" icon="fa-trash" clickFun="TCar.resetSearch()" space="true"/>
                    </div>
                    <div class="col-sm-3">
                        <input type="file" name="file" style="width:0px;height:0px;" id="uploadEventFile" onchange="TCar.exportCar()">
                        <#button name="搜索" icon="fa-search" clickFun="TCompetition.search()"/>
                        <#button name="重置" icon="fa-trash" clickFun="TCompetition.resetSearch()" space="true"/>
                    </div>
                </div>
                <div class="hidden-xs" id="TCarTableToolbar" role="group">
                    <#button name="添加" icon="fa-plus" clickFun="TCar.openAddTCar()"/>
                    <#button name="编辑" icon="fa-edit" clickFun="TCar.openTCarDetail()" space="true"/>
                    <#button name="取消" icon="fa-remove" clickFun="TCar.delete()" space="true"/>
                    <#button name="查看详情" icon="fa-remove" clickFun="TCar.delete()" space="true"/>
                    <#button name="已报名人员" icon="fa-remove" clickFun="TCar.delete()" space="true"/>
                <div class="hidden-xs" id="TCompetitionTableToolbar" role="group">
                    <#button name="添加" icon="fa-plus" clickFun="TCompetition.openAddTCompetition()"/>
                    <#button name="编辑" icon="fa-edit" clickFun="TCompetition.openTCompetitionDetail()" space="true"/>
                    <#button name="取消" icon="fa-remove" clickFun="TCompetition.delete()" space="true"/>
                    <#button name="查看详情" icon="fa-remove" clickFun="TCompetition.delete()" space="true"/>
                    <#button name="已报名人员" icon="fa-remove" clickFun="TCompetition.delete()" space="true"/>
                </div>
                <#table id="TCarTable"/>
                <#table id="TCompetitionTable"/>
            </div>
        </div>
    </div>
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html
@@ -114,226 +114,6 @@
    </div>
</div>
            @}
            @if(language==2){
<div class="row">
    <div class="col-sm-11">
        <div class="form-group">
            <label class="col-sm-3 control-label">Affiliated organization:</label>
            <div class="col-sm-9"  style="display: flex;align-items: center;">
                @if(roleType == 1){
                <div class="radio radio-info radio-inline">
                    <input type="radio" id="companyType1" value="1" name="companyType" checked="" onclick="TCarInfoDlg.companyTypeClick(1)">
                    <label for="companyType1"> Platform vehicle </label>
                </div>
                <div class="radio radio-success radio-inline">
                    <input type="radio" id="companyTyp2" value="2" name="companyType" onclick="TCarInfoDlg.companyTypeClick(2)">
                    <label for="companyTyp2"> Franchised vehicles </label>
                </div>
                <select class="form-control companyDiv" id="oneId" onchange="TCarInfoDlg.oneChange(this)" style="width: 200px;display: none;">
                    <option value="">Select Branch</option>
                    @for(obj in companyList!){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
                <select class="form-control companyDiv" id="twoId"  style="width: 200px;margin-left: 30px;display: none;">
                    <option value="">Select the franchisee</option>
                </select>
                @}else if(roleType == 2){
                <span class="control-label">${objectName!}</span>
                <select class="form-control" id="franchiseeId"  style="width: 200px;margin-left: 30px;">
                    <option value="">Select the franchisee</option>
                    @for(obj in franchiseeList!){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
                @}else if(roleType == 3){
                <span class="control-label">${objectName!}</span>
                @}
            </div>
        </div>
        <div class="form-group">
            <fieldset>
                <label class="col-sm-3 control-label">Service mode:</label>
                <div class="col-sm-9">
                    <div class="checkbox checkbox-success  checkbox-inline">
                        <input type="checkbox" name="serverBox" id="serverBox1" value="1" onclick="TCarInfoDlg.zcServerClick()">
                        <label for="serverBox1"> motorcycle </label>
                    </div>
                    <div class="checkbox checkbox-success  checkbox-inline">
                        <input type="checkbox" name="serverBox" id="serverBox4" value="4">
                        <label for="serverBox4"> Intra-city express delivery </label>
                    </div>
                </div>
            </fieldset>
        </div>
        <div class="form-group" style="display: none;" id="zcModelDiv">
            <label class="col-sm-3 control-label">Motorcycle model:</label>
            <div class="col-sm-9">
                <select class="form-control" id="zcModel" name="zcModel">
                    <option value="">Select vehicle type</option>
                    @for(obj in zcModelList){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
            </div>
        </div>
        <div class="form-group" style="display: none;" id="kcModelDiv">
            <label class="col-sm-3 control-label">Local express delivery model:</label>
            <div class="col-sm-9">
                <select class="form-control" id="kcModel" name="kcModel">
                    <option value="">Select vehicle type</option>
                    @for(obj in kcModelList){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
            </div>
        </div>
        <#select id="carBrandId" name="Vehicle brand:" onchange="TCarInfoDlg.brandChange(this)">
        <option value="">Select vehicle brand</option>
        @for(obj in brandList){
        <option value="${obj.id}">${obj.name}</option>
        @}
    </#select>
    <#select id="carModelId" name="Vehicle type:">
    <option value="">Vehicle type</option>
</#select>
<#select id="carColor" name="Vehicle color:">
<option value="">Select vehicle color</option>
<option value="1">black</option>
<option value="2">silvery</option>
<option value="3">white</option>
<option value="4">red</option>
<option value="5">yellow</option>
<option value="6">orange</option>
<option value="7">blue</option>
</#select>
<#input id="carLicensePlate" name="License plate number" />
<#avatar id="carPhoto" name="Vehicle photos:" />
<#input id="drivingLicenseNumber" name="Driving license number" />
<#avatar id="drivingLicensePhoto" name="Photo of driving license:" />
<#input id="annualInspectionTime" name="Annual inspection expiration time" type="text"/>
<#input id="commercialInsuranceTime" name="Expiration time of commercial insurance" type="text"/>
</div>
</div>
<div class="row btn-group-m-t">
    <div class="col-sm-10 col-sm-offset-5">
        <#button btnCss="info" name="Submit" id="ensure" icon="fa-check" clickFun="TCarInfoDlg.addSubmit()"/>
        <#button btnCss="danger" name="Cancel" id="cancel" icon="fa-eraser" clickFun="TCarInfoDlg.close()"/>
    </div>
</div>
            @}
            @if(language==3){
<div class="row">
    <div class="col-sm-11">
        <div class="form-group">
            <label class="col-sm-3 control-label">Organisasi Afiliasi:</label>
            <div class="col-sm-9"  style="display: flex;align-items: center;">
                @if(roleType == 1){
                <div class="radio radio-info radio-inline">
                    <input type="radio" id="companyType1" value="1" name="companyType" checked="" onclick="TCarInfoDlg.companyTypeClick(1)">
                    <label for="companyType1"> Kendaraan platform </label>
                </div>
                <div class="radio radio-success radio-inline">
                    <input type="radio" id="companyTyp2" value="2" name="companyType" onclick="TCarInfoDlg.companyTypeClick(2)">
                    <label for="companyTyp2"> Kendaraan waralaba </label>
                </div>
                <select class="form-control companyDiv" id="oneId" onchange="TCarInfoDlg.oneChange(this)" style="width: 200px;display: none;">
                    <option value="">Pilih Branch</option>
                    @for(obj in companyList!){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
                <select class="form-control companyDiv" id="twoId"  style="width: 200px;margin-left: 30px;display: none;">
                    <option value="">Pilih pemilik franchise</option>
                </select>
                @}else if(roleType == 2){
                <span class="control-label">${objectName!}</span>
                <select class="form-control" id="franchiseeId"  style="width: 200px;margin-left: 30px;">
                    <option value="">Pilih pemilik franchise</option>
                    @for(obj in franchiseeList!){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
                @}else if(roleType == 3){
                <span class="control-label">${objectName!}</span>
                @}
            </div>
        </div>
        <div class="form-group">
            <fieldset>
                <label class="col-sm-3 control-label">Mode Layanan:</label>
                <div class="col-sm-9">
                    <div class="checkbox checkbox-success  checkbox-inline">
                        <input type="checkbox" name="serverBox" id="serverBox1" value="1" onclick="TCarInfoDlg.zcServerClick()">
                        <label for="serverBox1"> sepeda motor </label>
                    </div>
                    <div class="checkbox checkbox-success  checkbox-inline">
                        <input type="checkbox" name="serverBox" id="serverBox4" value="4">
                        <label for="serverBox4"> Pengiriman Ekspres Dalam Kota </label>
                    </div>
                </div>
            </fieldset>
        </div>
        <div class="form-group" style="display: none;" id="zcModelDiv">
            <label class="col-sm-3 control-label">Pengaturan model sepeda motor:</label>
            <div class="col-sm-9">
                <select class="form-control" id="zcModel" name="zcModel">
                    <option value="">Pilih Jenis Kendaraan</option>
                    @for(obj in zcModelList){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
            </div>
        </div>
        <div class="form-group" style="display: none;" id="kcModelDiv">
            <label class="col-sm-3 control-label">Model pengiriman ekspres lokal:</label>
            <div class="col-sm-9">
                <select class="form-control" id="kcModel" name="kcModel">
                    <option value="">Pilih Jenis Kendaraan</option>
                    @for(obj in kcModelList){
                    <option value="${obj.id}">${obj.name}</option>
                    @}
                </select>
            </div>
        </div>
        <#select id="carBrandId" name="Merek kendaraan:" onchange="TCarInfoDlg.brandChange(this)">
        <option value="">Pilih Merek Kendaraan</option>
        @for(obj in brandList){
        <option value="${obj.id}">${obj.name}</option>
        @}
    </#select>
    <#select id="carModelId" name="Jenis Kendaraan:">
    <option value="">Pilih Jenis Kendaraan</option>
</#select>
<#select id="carColor" name="Warna kendaraan:">
    <option value="">Pilih Warna Kendaraan</option>
    <option value="1">hitam</option>
    <option value="2">perak</option>
    <option value="3">putih</option>
    <option value="4">merah</option>
    <option value="5">kuning</option>
    <option value="6">oranye</option>
    <option value="7">biru</option>
</#select>
<#input id="carLicensePlate" name="车牌号" />
<#avatar id="carPhoto" name="Nomor SIM Mengemudi:" />
<#input id="drivingLicenseNumber" name="Nomor SIM Mengemudi" />
<#avatar id="drivingLicensePhoto" name="Foto SIM:" />
<#input id="annualInspectionTime" name="Waktu Kedaluwarsa Inspeksi Tahunan" type="text"/>
<#input id="commercialInsuranceTime" name="Waktu kedaluwarsa asuransi komersial" type="text"/>
</div>
</div>
<div class="row btn-group-m-t">
    <div class="col-sm-10 col-sm-offset-5">
        <#button btnCss="info" name="Kirim" id="ensure" icon="fa-check" clickFun="TCarInfoDlg.addSubmit()"/>
        <#button btnCss="danger" name="Batal" id="cancel" icon="fa-eraser" clickFun="TCarInfoDlg.close()"/>
    </div>
</div>
            @}
        </div>
cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition.js
@@ -1,8 +1,8 @@
/**
 * 车辆管理管理初始化
 */
var TCar = {
    id: "TCarTable",    //表格id
var TCompetition = {
    id: "TCompetitionTable",    //表格id
    seItem: null,        //选中的条目
    table: null,
    layerIndex: -1
@@ -11,23 +11,26 @@
/**
 * 初始化表格的列
 */
TCar.initColumn = function () {
TCompetition.initColumn = function () {
    return [
        {field: 'selectItem', radio: true},
        {title: '所在省', field: 'insertTime', visible: true, align: 'center', valign: 'middle',width:'8%',
        {title: '所在省', field: 'province', visible: true, align: 'center', valign: 'middle',width:'8%',
        },
        {title: '所在市', field: 'id', visible: true, align: 'center', valign: 'middle'},
        {title: '举办门店', field: 'companyName', visible: true, align: 'center', valign: 'middle',width:'8%',
        {title: '所在市', field: 'city', visible: true, align: 'center', valign: 'middle'},
        {title: '举办门店', field: 'storeName', visible: true, align: 'center', valign: 'middle',width:'8%',
        },
        {title:  '赛事名称', field: 'brandName', visible: true, align: 'center', valign: 'middle',width:'8%',
        {title:  '赛事名称', field: 'name', visible: true, align: 'center', valign: 'middle',width:'8%',
        },
        {title: '开始时间', field: 'modelName', visible: true, align: 'center', valign: 'middle',width:'8%',
        {title: '开始时间', field: 'startTime', visible: true, align: 'center', valign: 'middle',width:'8%',
        },
        {title: '结束时间', field: 'carColor', visible: true, align: 'center', valign: 'middle',width:'5%',
        {title: '结束时间', field: 'endTime', visible: true, align: 'center', valign: 'middle',width:'5%',
        },
        {title: '最大人数-已报名人数', field: 'serverStr', visible: true, align: 'center', valign: 'middle',width:'8%',
        {title: '最大人数-已报名人数', field: 'applicantsNumber', visible: true, align: 'center', valign: 'middle',width:'8%',
        },
        {title: '报名条件', field: 'carLicensePlate', visible: true, align: 'center', valign: 'middle',width:'8%',
        {title: '报名条件', field: 'registerCondition', visible: true, align: 'center', valign: 'middle',width:'8%',
            formatter:function (data) {
                return {1:"全部用户",2:"仅限年度会员参与",3:"仅限学员参与"}[data]
            }
        },
    ];
};
@@ -67,13 +70,13 @@
/**
 * 检查是否选中
 */
TCar.check = function () {
TCompetition.check = function () {
    var selected = $('#' + this.id).bootstrapTable('getSelections');
    if(selected.length == 0){
            Feng.info("请先选中表格中的某一记录!");
        return false;
    }else{
        TCar.seItem = selected[0];
        TCompetition.seItem = selected[0];
        return true;
    }
};
@@ -81,14 +84,14 @@
/**
 * 点击添加车辆管理
 */
TCar.openAddTCar = function () {
TCompetition.openAddTCompetition = function () {
    var index = layer.open({
        type: 2,
        title: '添加',
        area: ['100%', '100%'], //宽高
        fix: false, //不固定
        maxmin: true,
        content: Feng.ctxPath + '/tCar/tCar_add'
        content: Feng.ctxPath + '/tCompetition/tCompetition_add'
    });
    this.layerIndex = index;
};
@@ -96,7 +99,7 @@
/**
 * 打开查看车辆管理详情
 */
TCar.openTCarDetail = function () {
TCompetition.openTCompetitionDetail = function () {
    if (this.check()) {
        var index = layer.open({
            type: 2,
@@ -104,7 +107,7 @@
            area: ['100%', '100%'], //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/tCar/tCar_update/' + TCar.seItem.id
            content: Feng.ctxPath + '/TCompetition/TCompetition_update/' + TCompetition.seItem.id
        });
        this.layerIndex = index;
    }
@@ -113,9 +116,9 @@
/**
 * 删除车辆管理
 */
TCar.delete = function () {
TCompetition.delete = function () {
    if (this.check()) {
        var nickname = TCar.seItem.carLicensePlate;
        var nickname = TCompetition.seItem.carLicensePlate;
        if (nickname == "" || nickname == null || nickname == undefined){
                nickname = "该车辆";
        }else{
@@ -130,7 +133,7 @@
            confirmButtonText: language==1?"删除":(language==2?'Delete':'Hapus'),
            closeOnConfirm: true
        }, function () {
            var ajax = new $ax(Feng.ctxPath + "/tCar/delete", function (data) {
            var ajax = new $ax(Feng.ctxPath + "/TCompetition/delete", function (data) {
                  if(language==1){
                    swal("删除成功", "您已经成功删除了" + nickname + "。", "success");
                }else if(language==2){
@@ -138,7 +141,7 @@
                }else {
                    swal("Hapus berhasil!", "Anda berhasil menghapus" + nickname + "。", "success");
                }
                TCar.table.refresh();
                TCompetition.table.refresh();
            }, function (data) {
                if(language==1){
                    swal("删除失败", data.responseJSON.message + "!", "warning");
@@ -149,14 +152,14 @@
                }
            });
            ajax.set("tCarId",TCar.seItem.id);
            ajax.set("TCompetitionId",TCompetition.seItem.id);
            ajax.start();
        });
    }
};
TCar.carInsurance = function () {
TCompetition.carInsurance = function () {
    if (this.check()) {
        var index = layer.open({
            type: 2,
@@ -164,7 +167,7 @@
            area: ['100%', '100%'], //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/tCar/carInsurance?carId=' + TCar.seItem.id
            content: Feng.ctxPath + '/TCompetition/carInsurance?carId=' + TCompetition.seItem.id
        });
        this.layerIndex = index;
    }
@@ -175,47 +178,27 @@
/**
 * 查询车辆管理列表
 */
TCar.search = function () {
TCompetition.search = function () {
    var queryData = {};
    queryData['createTime'] = $("#createTime").val();
    queryData['id'] = $("#id").val();
    queryData['brandName'] = $("#brandName").val();
    queryData['modelName'] = $("#modelName").val();
    queryData['carColor'] = $("#carColor").val();
    queryData['serverStr'] = $("#serverStr").val();
    queryData['carLicensePlate'] = $("#carLicensePlate").val();
    queryData['driverName'] = $("#driverName").val();
    queryData['companyName'] = $("#companyName").val();
    queryData['franchiseeName'] = $("#franchiseeName").val();
    TCar.table.refresh({query: queryData});
    TCompetition.table.refresh({query: queryData});
};
TCar.resetSearch = function () {
    $("#createTime").val("");
    $("#id").val("");
    $("#brandName").val("");
    $("#modelName").val("");
    $("#carColor").val("");
    $("#serverStr").val("");
    $("#carLicensePlate").val("");
    $("#driverName").val("");
    $("#companyName").val("");
    $("#franchiseeName").val("");
    TCar.search();
TCompetition.resetSearch = function () {
    TCompetition.search();
};
$(function () {
    var defaultColunms = TCar.initColumn();
    var table = new BSTable(TCar.id, "/tCompetition/list", defaultColunms);
    var defaultColunms = TCompetition.initColumn();
    var table = new BSTable(TCompetition.id, "/tCompetition/list", defaultColunms);
    table.setPaginationType("server");
    TCar.table = table.init();
    TCompetition.table = table.init();
});
/**
 * 下载模板
 */
TCar.uploadCarModel = function () {
    window.location.href = Feng.ctxPath + "/tCar/uploadCarModel";
TCompetition.uploadCarModel = function () {
    window.location.href = Feng.ctxPath + "/TCompetition/uploadCarModel";
}
var agreement = function(){
@@ -229,7 +212,7 @@
/**
 * 导入合同
 */
TCar.exportCar = function () {
TCompetition.exporTCompetition = function () {
    var uploadEventFile = $("#uploadEventFile").val();
    if(uploadEventFile == ''){
        if(language==1){
@@ -248,7 +231,7 @@
            Feng.info("Hanya berkas Excel yang dapat diunggah");
        }
    }else{
        var url = Feng.ctxPath + '/tCar/exportCar';
        var url = Feng.ctxPath + '/TCompetition/exporTCompetition';
        var file = document.querySelector('input[name=file]').files[0];
        var reader = new FileReader();
        if (file) {
@@ -258,7 +241,7 @@
        }
    }
}
TCar.sendAjaxRequest = function(url,type,data){
TCompetition.sendAjaxRequest = function(url,type,data){
    $.ajax({
        url : url,
        type : type,
@@ -275,7 +258,7 @@
                    Feng.success("Import berhasil!");
                }
            }
            TCar.table.refresh();
            TCompetition.table.refresh();
        },
        error : function() {
            if(language==1){
@@ -301,9 +284,9 @@
/**
 * 导出车辆操作
 */
TCar.outCar = function () {
TCompetition.ouTCompetition = function () {
    var operation = function() {
        window.location.href = Feng.ctxPath + "/tCar/outCar";
        window.location.href = Feng.ctxPath + "/TCompetition/ouTCompetition";
    };
    if(language==1){
        Feng.confirm("是否确认导出车辆信息?", operation);