luo
2023-10-08 ded7b20c06c16646a1f718c32a78e463844da6da
10.8
38个文件已修改
20个文件已添加
6337 ■■■■■ 已修改文件
.idea/modules.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/workspace.xml 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/entity/PacQueryDto.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/entity/dto/StudentQeryDto.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/service/impl/CourseCounsumServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/dto/JsDto.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/dto/StudentQeryDto.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/Competition.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CoursePackageClient.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/other/BallClient.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/feignClient/other/SiteClient.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionAuditController.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java 443 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/GameConfig.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/GameConfigDto.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/SiteBooking.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TGameConfig.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/BookingQuery.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/OrderDto.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/PacQueryDto.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/TimeDto.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/resources/mapper/TStoreMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball.html 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html 1049 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html 1309 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/jieshao.html 1163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/paike.html 410 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html 286 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/ball/ball.js 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/ball/ball_info.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js 532 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/entity/BookingQuery.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/entity/Game.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/entity/TGameConfig.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/mapper/GameMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/service/GameService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/service/impl/GameServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/resources/mapper/GameMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
logs/mb-cloud-management/2023-10/debug.2023-10-07.0.log117386460201400.tmp 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/modules.xml
@@ -3,7 +3,6 @@
  <component name="ProjectModuleManager">
    <modules>
      <module fileurl="file://$PROJECT_DIR$/.idea/PlayPai.iml" filepath="$PROJECT_DIR$/.idea/PlayPai.iml" />
      <module fileurl="file://$PROJECT_DIR$/cloud-server-course/mb-cloud-course.iml" filepath="$PROJECT_DIR$/cloud-server-course/mb-cloud-course.iml" />
    </modules>
  </component>
</project>
.idea/workspace.xml
@@ -26,10 +26,44 @@
  </component>
  <component name="ChangeListManager">
    <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="9.26。15">
      <change beforePath="$PROJECT_DIR$/.idea/modules.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/modules.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-course/src/main/java/com/dsh/course/controller/CourseStudentController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CourseCounsumServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CourseCounsumServiceImpl.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/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/course/CoursePackageClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CoursePackageClient.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/other/BallClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/other/BallClient.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/other/SiteClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/other/SiteClient.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionAuditController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionAuditController.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/controller/code/TCoursePackageController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/SiteBooking.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/SiteBooking.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball.html" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/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/ball/ball.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/ball.js" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/ball_info.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/ball_info.js" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/Game.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/Game.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/TGameConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/TGameConfig.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/mapper/GameMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/mapper/GameMapper.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/GameService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/GameService.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/impl/GameServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/impl/GameServiceImpl.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/GameMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/GameMapper.xml" afterDir="false" />
    </list>
    <option name="SHOW_DIALOG" value="false" />
    <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -89,7 +123,7 @@
    "WebServerToolWindowFactoryState": "false",
    "git-widget-placeholder": "master",
    "ignore.virus.scanning.warn.message": "true",
    "last_opened_file_path": "D:/ttt/java/PlayPai/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball",
    "last_opened_file_path": "D:/Javaproject/PlayPay/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball",
    "node.js.detected.package.eslint": "true",
    "node.js.detected.package.tslint": "true",
    "node.js.selected.package.eslint": "(autodetect)",
@@ -99,8 +133,8 @@
    "project.structure.proportion": "0.15",
    "project.structure.side.proportion": "0.54367816",
    "service.view.auto.scroll.to.source": "true",
    "settings.editor.selected.configurable": "MavenSettings",
    "spring.configuration.checksum": "7fb6c6ffe49cf7315145a28a96be3d8f",
    "settings.editor.selected.configurable": "preferences.pluginManager",
    "spring.configuration.checksum": "6e27eb92c8707375af194da5aa857bbc",
    "vue.rearranger.settings.migration": "true"
  }
}]]></component>
@@ -109,11 +143,11 @@
  </component>
  <component name="RecentsManager">
    <key name="CopyFile.RECENT_KEYS">
      <recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\WEB-INF\view\system\ball" />
      <recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\static\modular\system\ball" />
      <recent name="D:\Javaproject\PlayPay\cloud-server-course\src\main\resources\mapper" />
      <recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\webapp\WEB-INF\view\system\ball" />
      <recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\webapp\static\modular\system\ball" />
      <recent name="D:\ttt\java\PlayPai\cloud-server-other\src\main\resources\mapper" />
      <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\coursePackage" />
      <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\coursePackage" />
    </key>
    <key name="MoveFile.RECENT_KEYS">
      <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\tStudent" />
@@ -121,11 +155,11 @@
      <recent name="D:\ttt\java\PlayPai\cloud-server-parent" />
    </key>
    <key name="CopyClassDialog.RECENTS_KEY">
      <recent name="com.dsh.guns.modular.system.service.impl" />
      <recent name="com.dsh.guns.modular.system.service" />
      <recent name="com.dsh.other.mapper" />
      <recent name="com.dsh.other.service.impl" />
      <recent name="com.dsh.other.service" />
      <recent name="com.dsh.other.entity" />
      <recent name="com.dsh.other.controller" />
    </key>
  </component>
  <component name="RunDashboard">
@@ -305,6 +339,7 @@
      <workItem from="1696433675086" duration="2211000" />
      <workItem from="1696462020097" duration="481000" />
      <workItem from="1696465598653" duration="19850000" />
      <workItem from="1696639362946" duration="41725000" />
    </task>
    <task id="LOCAL-00001" summary="后台代码删除">
      <created>1690249807612</created>
@@ -663,6 +698,11 @@
          <line>1355</line>
          <option name="timeStamp" value="14" />
        </line-breakpoint>
        <line-breakpoint enabled="true" type="java-line">
          <url>file://$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionAuditController.java</url>
          <line>133</line>
          <option name="timeStamp" value="21" />
        </line-breakpoint>
      </breakpoints>
    </breakpoint-manager>
  </component>
cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java
@@ -53,6 +53,40 @@
    @Resource
    private CoursePackageSchedulingMapper coursePackageSchedulingService;
    @RequestMapping("/getStudentTotal")
    @ResponseBody
    public List<Map<String, Object>> get(@RequestBody StudentQeryDto studentQeryDto) {
        System.out.println("-====studentQeryDto========="+studentQeryDto);
        List<Map<String, Object>>  pays =  paymentService.getStudentTotal(studentQeryDto);
        System.out.println("=========pays======"+pays);
        return  pays;
    }
    @RequestMapping("/bypac")
    @ResponseBody
    public List<Map<String, Object>> bypac(@RequestBody PacQueryDto pacQueryDto) {
        System.out.println("-====studentQeryDto========="+pacQueryDto);
        List<Map<String, Object>>  pays =  paymentService.bypac(pacQueryDto);
        System.out.println("=========pays======"+pays);
        return  pays;
    }
    //获取学员课时数信息
    @RequestMapping("/getInfo")
    @ResponseBody
cloud-server-course/src/main/java/com/dsh/course/entity/PacQueryDto.java
New file
@@ -0,0 +1,16 @@
package com.dsh.course.entity;
import lombok.Data;
@Data
public class PacQueryDto {
    String cityCode;
    String store;
    String name;
    String times;
    String start;
    String end;
    String provinceCode;
}
cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java
@@ -164,4 +164,25 @@
     */
    @TableField("salesName")
    private String salesName;
    @TableField(exist = false)
    private String studentName;
    @TableField(exist = false)
    private String province;
    @TableField(exist = false)
    private String city;
    @TableField(exist = false)
    private String courseName;
    @TableField(exist = false)
    private Integer hasHours;
    @TableField(exist = false)
    private BigDecimal laveCashPayment;
    @TableField(exist = false)
    private BigDecimal cashPayment1;
}
cloud-server-course/src/main/java/com/dsh/course/entity/dto/StudentQeryDto.java
New file
@@ -0,0 +1,14 @@
package com.dsh.course.entity.dto;
import lombok.Data;
import java.util.Date;
@Data
public class StudentQeryDto {
    String cityCode;
    String start;
    String end;
    String studentName;
    String times;
}
cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java
@@ -2,7 +2,9 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.course.entity.PacQueryDto;
import com.dsh.course.entity.TCoursePackagePayment;
import com.dsh.course.entity.dto.StudentQeryDto;
import com.dsh.course.model.QueryRegistrationRecord;
import com.dsh.course.model.BillingRequest;
import io.swagger.models.auth.In;
@@ -67,4 +69,8 @@
    boolean updateHoursById(@Param("id") Long id, @Param("i") int i);
    void updateBytime(@Param("coursePackagePayment") TCoursePackagePayment coursePackagePayment);
    List<Map<String, Object>>  getStudentTotal(StudentQeryDto studentQeryDto);
    List<Map<String, Object>> pacQueryDto(PacQueryDto pacQueryDto);
}
cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java
@@ -3,7 +3,9 @@
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.course.entity.PacQueryDto;
import com.dsh.course.entity.TCoursePackagePayment;
import com.dsh.course.entity.dto.StudentQeryDto;
import com.dsh.course.feignclient.model.RecordAppoint;
import com.dsh.course.model.*;
import com.dsh.course.model.vo.RegisterCourseVo;
@@ -133,4 +135,7 @@
    List<RegisterOrderVO> listAllRegister(RegisterOrderQuery query);
    List<Map<String, Object>>  getStudentTotal(StudentQeryDto studentQeryDto);
    List<Map<String, Object>> bypac(PacQueryDto pacQueryDto);
}
cloud-server-course/src/main/java/com/dsh/course/service/impl/CourseCounsumServiceImpl.java
@@ -12,8 +12,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class CourseCounsumServiceImpl extends ServiceImpl<CourseCounsumMapper, CourseCounsum> implements CourseCounsumService {
    @Autowired
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
@@ -9,6 +9,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsh.course.entity.*;
import com.dsh.course.entity.TAppUser;
import com.dsh.course.entity.dto.StudentQeryDto;
import com.dsh.course.feignclient.account.AppUserClient;
import com.dsh.course.feignclient.account.CoachClient;
import com.dsh.course.feignclient.account.StudentClient;
@@ -46,6 +47,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -150,6 +152,103 @@
        return cpConfigMapper.listAllRegister(query,STime,ETime,query.getAmount());
    }
    @Override
    public List<Map<String, Object>> getStudentTotal(StudentQeryDto studentQeryDto) {
        List<Map<String, Object>> studentTotal = this.baseMapper.getStudentTotal(studentQeryDto);
        for (Map<String, Object> student : studentTotal) {
            BigDecimal cashPayment = (BigDecimal) student.get("cashPayment");
            BigDecimal totalClassHours = (BigDecimal) student.get("totalClassHours");
            BigDecimal hasHours = (BigDecimal) student.get("hasHours");
            BigDecimal hasPayment = cashPayment.divide(totalClassHours, 2, RoundingMode.HALF_UP)
                    .multiply(hasHours).setScale(2, RoundingMode.HALF_UP);
            student.put("hasPayment", hasPayment);
            Integer appUserId = (Integer) student.get("appUserId");
            AppUser appUser = appuClient.queryAppUser(appUserId);
            student.put("province", appUser.getProvince());
            student.put("provinceCode", appUser.getProvinceCode());
            student.put("city", appUser.getCity());
            student.put("cityCode", appUser.getCityCode());
            Student studentId = studentClient.queryStudentById((Integer) student.get("studentId"));
            student.put("studentName", studentId.getName());
        }
        if (studentQeryDto.getCityCode()!=null&&studentQeryDto.getCityCode()!="") {
            String value = studentQeryDto.getCityCode();
            boolean allZeros = value.substring(value.length() - 4).endsWith("0000");
            System.out.println(allZeros); // Output: true
            if (allZeros){
                Iterator<Map<String, Object>> iterator = studentTotal.iterator();
                while (iterator.hasNext()) {
                    Map<String, Object> student = iterator.next();
                    String cityCode = (String) student.get("provinceCode");
                    if (!cityCode.equals(studentQeryDto.getCityCode())) {
                        iterator.remove(); // Remove the element from the list
                    }
                }
            }else{
            Iterator<Map<String, Object>> iterator = studentTotal.iterator();
            while (iterator.hasNext()) {
                Map<String, Object> student = iterator.next();
                String cityCode = (String) student.get("cityCode");
                if (!cityCode.equals(studentQeryDto.getCityCode())) {
                    iterator.remove(); // Remove the element from the list
                }
            }}
        }
        if (studentQeryDto.getStudentName()!=null&&studentQeryDto.getStudentName()!=""){
            List<Map<String, Object>> totallike = new ArrayList<>();
            for (Map<String, Object> student : studentTotal) {
                String studentName = (String) student.get("studentName");
                if (studentName.contains(studentQeryDto.getStudentName())){
                    totallike.add(student);
                }
            }
            return totallike;
        }
        return studentTotal;
    }
    @Override
    public List<Map<String, Object>> bypac(PacQueryDto pacQueryDto) {
        if (pacQueryDto.getCityCode()!=null&&pacQueryDto.getCityCode()!=""){
            String value = pacQueryDto.getCityCode();
            boolean allZeros = value.substring(value.length() - 4).endsWith("0000");
            System.out.println(allZeros); // Output: true
            if (allZeros){
                pacQueryDto.setProvinceCode(pacQueryDto.getCityCode());
                pacQueryDto.setCityCode(null);
            }
        }
        List<Map<String, Object>> maps = this.baseMapper.pacQueryDto(pacQueryDto);
        if (pacQueryDto.getName()!=null&&pacQueryDto.getName()!=""){
            List<Map<String, Object>> totallike = new ArrayList<>();
            for (Map<String, Object> student : maps) {
                String studentName = (String) student.get("name");
                if (studentName.contains(pacQueryDto.getName())){
                    totallike.add(student);
                }
            }
            return totallike;
        }
        return maps;
    }
    /**
     * 获取课包购买人数
     * @param coursePackageId
cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
@@ -134,6 +134,74 @@
    </select>
    <select id="getStudentTotal" resultType="map">
        SELECT * from(
                         SELECT studentId, totalClassHours, name as courseName, laveClassHours,cashPayment as cashPayment,hasHours,appUserId,insertTime
                         FROM (
                                  SELECT studentId, totalClassHours, name, laveClassHours,cashPayment, (totalClassHours - laveClassHours) AS hasHours,py.appUserId,py.insertTime
                                  FROM t_course_package_payment py
                                           LEFT JOIN t_course_package cp ON py.coursePackageId = cp.id
                                  UNION ALL
                                  SELECT studentId, SUM(totalClassHours) AS totalClassHours,'总计' as name, SUM(laveClassHours) AS laveClassHours, SUM(cashPayment) AS cashPayment,
                                         (SUM(totalClassHours) - SUM(laveClassHours)) AS hasHours,py.appUserId,py.insertTime
                                  FROM t_course_package_payment py
                                           LEFT JOIN t_course_package cp ON py.coursePackageId = cp.id
                                  GROUP BY studentId
                                  ORDER BY studentId, totalClassHours
                              ) subquery
                     ) a
        <where>
            <if test="null != start and '' != start and null != end and '' != end">
                  a.insertTime between #{start} and #{end}
            </if>
        </where>
    </select>
    <select id="pacQueryDto" resultType="map">
        SELECT
            coursePackageId,
            SUM( cashPayment ) AS cashPayment,
            SUM( totalClassHours ) AS totalClassHours,
            SUM( totalClassHours - laveClassHours ) AS hasHours,
            ROUND( SUM(( totalClassHours - laveClassHours ) * ( cashPayment / totalClassHours )), 2 ) AS lavePay,
            cp.`name` ,
            cp.province,
            cp.city,
            cp.storeId,cp.cityCode,cp.provinceCode,py.insertTime
        FROM
            t_course_package_payment py
                LEFT JOIN t_course_package cp ON py.coursePackageId = cp.id
        <where>
            <if test="null != start and '' != start and null != end and '' != end">
                py.insertTime between #{start} and #{end}
            </if>
            <if test="null != cityCode and '' != cityCode">
               and cityCode =#{cityCode}
            </if>
            <if test="null != provinceCode and '' != provinceCode">
                and provinceCode =#{provinceCode}
            </if>
            <if test="null != name and '' != name">
                and name like CONCAT('%', #{name}, '%')
            </if>
        </where>
        GROUP BY
            coursePackageId
    </select>
    <update id="updateBytime">
        update  t_course_package_payment
cloud-server-management/src/main/java/com/dsh/course/dto/JsDto.java
New file
@@ -0,0 +1,10 @@
package com.dsh.course.dto;
import lombok.Data;
@Data
public class JsDto {
    Integer id;
    String vedio;
    String jieshao;
}
cloud-server-management/src/main/java/com/dsh/course/dto/StudentQeryDto.java
New file
@@ -0,0 +1,14 @@
package com.dsh.course.dto;
import lombok.Data;
import java.util.Date;
@Data
public class StudentQeryDto {
    String cityCode;
    String start;
    String end;
    String studentName;
    String times;
}
cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/Competition.java
@@ -59,7 +59,7 @@
     * 门店id
     */
    @TableField("storeId")
    private Integer storeId;
    private String storeId;
    /**
     * 赛事名称
     */
cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CoursePackageClient.java
@@ -1,10 +1,14 @@
package com.dsh.course.feignClient.course;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.course.dto.StudentQeryDto;
import com.dsh.course.feignClient.course.model.QueryCoursePackageLists;
import com.dsh.course.feignClient.course.model.QueryExamineCoursePackageLists;
import com.dsh.course.feignClient.course.model.QueryRegistrationRecord;
import com.dsh.course.feignClient.course.model.TCoursePackage;
import com.dsh.guns.modular.system.model.TCoursePackagePayment;
import com.dsh.guns.modular.system.model.dto.BallQueryDto;
import com.dsh.guns.modular.system.model.dto.PacQueryDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -73,4 +77,11 @@
    @PostMapping("/coursePackage/queryExamineCoursePackageLists")
    Page<Map<String, Object>> queryExamineCoursePackageLists(QueryExamineCoursePackageLists queryExamineCoursePackageLists);
    @PostMapping("/courdent/getStudentTotal")
    List<Map<String, Object>> getStudentTotal(StudentQeryDto studentQeryDto);
    @PostMapping("/courdent/bypac")
    List<Map<String, Object>> bypac(PacQueryDto pacQueryDto);
}
cloud-server-management/src/main/java/com/dsh/course/feignClient/other/BallClient.java
@@ -3,16 +3,19 @@
import com.dsh.course.dto.StudentSearch;
import com.dsh.course.dto.TStudentDto;
import com.dsh.course.feignClient.other.model.Banner;
import com.dsh.guns.modular.system.model.AdvertisementChangeStateDTO;
import com.dsh.guns.modular.system.model.AdvertisementQuery;
import com.dsh.guns.modular.system.model.Game;
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.model.dto.BallQueryDto;
import com.dsh.guns.modular.system.model.dto.BookingQuery;
import io.swagger.models.auth.In;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@FeignClient(value = "mb-cloud-other")
public interface BallClient {
@@ -20,5 +23,11 @@
    @PostMapping("/student/webStudentList")
    List<Game> list(@RequestBody BallQueryDto ballQueryDto);
    @PostMapping("/save")
    void save(@RequestBody Game game);
    Integer save(@RequestBody Game game);
    @PostMapping("/saveConfig")
    void saveConfig(@RequestBody List<TGameConfig> gameConfigList);
    @PostMapping("/queryGame")
    Game queryGame(@RequestParam("id") Integer id);
    @PostMapping("/listorder")
    List<Map<String, Object>> listorder(@RequestBody BookingQuery bookingQuery);
}
cloud-server-management/src/main/java/com/dsh/course/feignClient/other/SiteClient.java
@@ -8,6 +8,7 @@
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@@ -52,5 +53,11 @@
    @RequestMapping("/base/site/addSite")
    Object addSite(@RequestBody Site site);
    @RequestMapping("/base/site/listById")
    Site listById(@RequestParam("id") Integer id);
    @RequestMapping("/base/site/listBooks")
    List<SiteBooking> listBooks(@RequestParam("id") Integer id);
    @RequestMapping("/base/site/addSiteBooking")
    void addSiteBooking(@RequestBody SiteBooking siteBooking);
}
cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.course.dto.JsDto;
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.model.TStoreListVo;
import com.dsh.guns.modular.system.model.TTurn;
@@ -58,4 +59,8 @@
    List<TTurn> pageList();
    List<TTurn> getPage(@Param("ids") List<Integer> ids);
    void inset(JsDto jsDto);
    JsDto get(Integer id);
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionAuditController.java
@@ -134,9 +134,18 @@
        Page<Competition> competitions = competitionClient.listAudit(listQuery);
        for (Competition competition : competitions.getRecords()) {
            for (TStore tStore : list) {
                if(competition.getStoreId().equals(tStore.getId())){
                    competition.setStoreName(tStore.getName());
                String[] split = competition.getStoreId().split(",");
                for (String s : split) {
                    if(s.equals(String.valueOf(tStore.getId()))){
                        if (competition.getStoreName()==null){
                        competition.setStoreName(tStore.getName());
                        }else {
                            competition.setStoreName(competition.getStoreName()+","+tStore.getName());
                        }
                    }
                }
            }
        }
        return  super.packForBT(competitions);
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
@@ -131,8 +131,16 @@
        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());
                String[] split = competition.getStoreId().split(",");
                for (String s : split) {
                    if(s.equals(String.valueOf(tStore.getId()))){
                        if (competition.getStoreName()==null){
                            competition.setStoreName(tStore.getName());
                        }else {
                            competition.setStoreName(competition.getStoreName()+","+tStore.getName());
                        }
                    }
                }
            }
        }
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
@@ -547,6 +547,16 @@
    }
    @GetMapping("/queryProvince")
    @ResponseBody
    public List<Map<String, Object>> queryProvince(){
        List<Map<String, Object>> list = storeService.queryProvince(null);
        return list;
    }
    /**
     * 跳转到审核详情页
     * @param model
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TFinanceController.java
@@ -356,7 +356,7 @@
                        }
                        TAppUser tAppUser = appUserClient.queryById(competition.getAppUserId());
                        Competition competition1 = competitionClient.queryById(competition.getCompetitionId());
                        Store store = storeClient.getStoreById(competition1.getStoreId());
                        Store store = storeClient.getStoreById(Integer.valueOf(competition1.getStoreId()));
                        IncomeVO temp = new IncomeVO();
                        temp.setId(competition.getId().intValue());
                        temp.setProvince(tAppUser.getProvince());
@@ -535,7 +535,7 @@
                        }
                        TAppUser tAppUser = appUserClient.queryById(competition.getAppUserId());
                        Competition competition1 = competitionClient.queryById(competition.getCompetitionId());
                        Store store = storeClient.getStoreById(competition1.getStoreId());
                        Store store = storeClient.getStoreById(Integer.valueOf(competition1.getStoreId()));
                        IncomeVO temp = new IncomeVO();
                        temp.setId(competition.getId().intValue());
                        temp.setProvince(tAppUser.getProvince());
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
@@ -4,6 +4,8 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.course.dto.JsDto;
import com.dsh.course.dto.StudentQeryDto;
import com.dsh.course.feignClient.account.CityManagerClient;
import com.dsh.course.feignClient.account.CoachClient;
import com.dsh.course.feignClient.account.model.CityManager;
@@ -14,11 +16,12 @@
import com.dsh.course.feignClient.course.CoursePackageTypeClient;
import com.dsh.course.feignClient.course.model.TCoursePackageType;
import com.dsh.course.feignClient.other.BallClient;
import com.dsh.course.feignClient.other.SiteClient;
import com.dsh.course.feignClient.other.model.Site;
import com.dsh.guns.config.UserExt;
import com.dsh.guns.core.base.controller.BaseController;
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.model.dto.BallQueryDto;
import com.dsh.guns.modular.system.model.dto.ConsumeQuery;
import com.dsh.guns.modular.system.model.dto.*;
import com.dsh.guns.modular.system.service.ICityService;
import com.dsh.guns.modular.system.service.ICoursePackageService;
import com.dsh.guns.modular.system.service.IStoreService;
@@ -47,9 +50,13 @@
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.math.BigDecimal;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalTime;
import java.util.*;
@Controller
@@ -116,56 +123,405 @@
    @RequestMapping("/save")
    @ResponseBody
    public ResultUtil save(String red,String blue,String province,String city, Integer site,Integer store) {
//        JSONObject jsonObject = JSONObject.parseObject("111");
    public ResultUtil save(String red, String blue, String province, String city, Integer site, Integer store
    , String kuacheng, BigDecimal kuachengCoin, BigDecimal kuachengCash,String kuachengImage,BigDecimal kuachengInt,Integer kuachengId
            , String shequ, BigDecimal shequCoin, BigDecimal shequCash,String shequImage,BigDecimal shequInt,Integer shequId
            , String shemen, BigDecimal shemenCoin, BigDecimal shemenCash,String shemenImage,BigDecimal shemenInt,Integer shemenId
            , String sudu, BigDecimal suduCoin, BigDecimal suduCash,String suduImage,BigDecimal suduInt,Integer suduId
            , String fangkuai, BigDecimal fangkuaiCoin, BigDecimal fangkuaiCash,String fangkuaiImage,BigDecimal fangkuaiInt,Integer fangkuaiId
            , String jx, BigDecimal jxCoin, BigDecimal jxCash,String jxImage,BigDecimal jxInt,Integer jxId
            , String sq, BigDecimal sqCoin, BigDecimal sqCash,String sqImage,BigDecimal sqInt,Integer sqId
            , String zs, BigDecimal zsCoin, BigDecimal zsCash,String zsImage,BigDecimal zsInt,Integer zsId
            , String zs2, BigDecimal zs2Coin, BigDecimal zs2Cash,String zs2Image,BigDecimal zs2Int,Integer zs2Id
            , String ly, BigDecimal lyCoin, BigDecimal lyCash,String lyImage,BigDecimal lyInt,Integer lyId
    ) {
        Game game = new Game();
        game.setRed(red);
        game.setBlue(blue);
        game.setProvince(province);
        game.setCity(city);
        game.setProvinceCode(province);
        game.setCityCode(city);
        game.setSiteId(site);
        game.setStoreId(store);
        System.out.println("============"+game);
        ballClient.save(game);
        Integer gameId = ballClient.save(game);
List<TGameConfig> gameConfigList = new ArrayList<>();
//玩湃跨城赛
        TGameConfig gameConfigkuacheng = new TGameConfig();
        gameConfigkuacheng.setGameId(kuachengId);
        gameConfigkuacheng.setCash(kuachengCash);
        gameConfigkuacheng.setImg(kuachengImage);
        gameConfigkuacheng.setName(kuacheng);
        gameConfigkuacheng.setPlayCoin(kuachengCoin);
        gameConfigkuacheng.setIntegral(kuachengInt);
        gameConfigkuacheng.setOtherId(gameId);
        System.out.println("========gameConfig======"+gameConfigkuacheng);
        gameConfigList.add(gameConfigkuacheng);
System.out.println("======gameConfigList======="+gameConfigList);
        //社区冠军赛
        TGameConfig gameConfigshequ = new TGameConfig();
        gameConfigshequ.setGameId(shequId);
        gameConfigshequ.setCash(shequCash);
        gameConfigshequ.setImg(shequImage);
        gameConfigshequ.setName(shequ);
        gameConfigshequ.setPlayCoin(shequCoin);
        gameConfigshequ.setIntegral(shequInt);
        gameConfigshequ.setOtherId(shequId);
        gameConfigList.add(gameConfigshequ);
        //射门速度-玩湃熊之力
        TGameConfig gameConfigshemen = new TGameConfig();
        gameConfigshemen.setGameId(shemenId);
        gameConfigshemen.setCash(shemenCash);
        gameConfigshemen.setImg(shemenImage);
        gameConfigshemen.setName(shemen);
        gameConfigshemen.setPlayCoin(shemenCoin);
        gameConfigshemen.setIntegral(shemenInt);
        gameConfigshemen.setOtherId(shemenId);
        gameConfigList.add(gameConfigshemen);
        //玩湃熊之力-速度
        TGameConfig gameConfigsudu = new TGameConfig();
        gameConfigsudu.setGameId(suduId);
        gameConfigsudu.setCash(suduCash);
        gameConfigsudu.setImg(suduImage);
        gameConfigsudu.setName(sudu);
        gameConfigsudu.setPlayCoin(suduCoin);
        gameConfigsudu.setIntegral(suduInt);
        gameConfigsudu.setOtherId(suduId);
        gameConfigList.add(gameConfigsudu);
        //方块球王
        TGameConfig gameConfigfangkuai = new TGameConfig();
        gameConfigfangkuai.setGameId(fangkuaiId);
        gameConfigfangkuai.setCash(fangkuaiCash);
        gameConfigfangkuai.setImg(fangkuaiImage);
        gameConfigfangkuai.setName(fangkuai);
        gameConfigfangkuai.setPlayCoin(fangkuaiCoin);
        gameConfigfangkuai.setIntegral(fangkuaiInt);
        gameConfigfangkuai.setOtherId(fangkuaiId);
        gameConfigList.add(gameConfigfangkuai);
        //镜像阵容
        TGameConfig gameConfigjx = new TGameConfig();
        gameConfigjx.setGameId(jxId);
        gameConfigjx.setCash(jxCash);
        gameConfigjx.setImg(jxImage);
        gameConfigjx.setName(jx);
        gameConfigjx.setPlayCoin(jxCoin);
        gameConfigjx.setIntegral(jxInt);
        gameConfigjx.setOtherId(jxId);
        gameConfigList.add(gameConfigjx);
        //社区小球王
        TGameConfig gameConfigsq = new TGameConfig();
        gameConfigsq.setGameId(sqId);
        gameConfigsq.setCash(sqCash);
        gameConfigsq.setImg(sqImage);
        gameConfigsq.setName(sq);
        gameConfigsq.setPlayCoin(sqCoin);
        gameConfigsq.setIntegral(sqInt);
        gameConfigsq.setOtherId(sqId);
        gameConfigList.add(gameConfigsq);
        //涨姿势
        TGameConfig gameConfigzs = new TGameConfig();
        gameConfigzs.setGameId(zsId);
        gameConfigzs.setCash(zsCash);
        gameConfigzs.setImg(zsImage);
        gameConfigzs.setName(zs);
        gameConfigzs.setPlayCoin(zsCoin);
        gameConfigzs.setIntegral(zsInt);
        gameConfigzs.setOtherId(zsId);
        gameConfigList.add(gameConfigzs);
        //涨姿势2
        TGameConfig gameConfigzs2 = new TGameConfig();
        gameConfigzs2.setGameId(zs2Id);
        gameConfigzs2.setCash(zs2Cash);
        gameConfigzs2.setImg(zs2Image);
        gameConfigzs2.setName(zs2);
        gameConfigzs2.setPlayCoin(zs2Coin);
        gameConfigzs2.setIntegral(zs2Int);
        gameConfigzs2.setOtherId(zs2Id);
        gameConfigList.add(gameConfigzs2);
        //绿茵密码
        TGameConfig gameConfigly = new TGameConfig();
        gameConfigly.setGameId(lyId);
        gameConfigly.setCash(lyCash);
        gameConfigly.setImg(lyImage);
        gameConfigly.setName(ly);
        gameConfigly.setPlayCoin(lyCoin);
        gameConfigly.setIntegral(lyInt);
        gameConfigly.setOtherId(lyId);
        gameConfigList.add(gameConfigly);
System.out.println("---------------------------"+gameConfigList);
        ballClient.saveConfig( gameConfigList);
        return null;
    }
    @RequestMapping("/pre_add")
    public String add(Model model) {
//        Map<String,String> map = new HashMap<>();
//        map.put("sign","0DB011836143EEE2C2E072967C9F4E4B");
//        map.put("space_id","1001");
//        map.put("sutu_id","1001");
//
//        String request = HttpRequestUtil.getRequest("https://try.daowepark.com/v7/user_api/general/gameList", map);
//        System.out.println("=======request=========="+request);
////
////        return ballClient.list(ballQueryDto);
//    }
Map<String,String> map =new HashMap<>();
map.put("sign","0DB011836143EEE2C2E072967C9F4E4B");
        map.put("space_id","1001");
        map.put("sutu_id","1001");
        String req = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/gameList", map);
    System.out.println("================"+req);
//        AsciiString cached = AsciiString.cached(req);
        String convertedString = StringEscapeUtils.unescapeJava(req);
System.out.println("-------------"+convertedString);
        JSONObject parse = JSONObject.parseObject(convertedString);
        JSONArray data = JSONObject.parseArray(parse.getString("data"));
        JSONObject jsonObject =data.getJSONObject(0);
        //
        return PREFIX+"ball_pre_add.html";
    }
    @RequestMapping("/pre_edit/{id}")
    public String pre_edit(@PathVariable("id") Integer id,Model model) {
        Game game = ballClient.queryGame(id);
    System.out.println("---------game------"+game);
        model.addAttribute("game",game);
        return PREFIX+"ball_pre_edit.html";
    }
    @RequestMapping("/paike")
    public String paike(Model model) {
        return PREFIX+"paike.html";
    }
    @RequestMapping("/getStudentTotal")
    @ResponseBody
    public List<Map<String, Object>>getStudentTotal(@RequestBody StudentQeryDto studentQeryDto) {
System.out.println("========ballQueryDto======"+studentQeryDto);
        if (studentQeryDto.getTimes()!=null&& studentQeryDto.getTimes()!=""){
            String[] split = studentQeryDto.getTimes().split(",");
            studentQeryDto.setStart(split[0]);
            studentQeryDto.setEnd(split[1]);
        }
        List<Map<String, Object>>  pays = coursePackageClient.getStudentTotal(studentQeryDto);
        System.out.println("=========getStudentTotal======="+pays);
        return pays;
    }
    @RequestMapping("/bypac")
    @ResponseBody
    public List<Map<String, Object>>bypac(@RequestBody PacQueryDto pacQueryDto) {
        System.out.println("========ballQueryDto======"+pacQueryDto);
        if (pacQueryDto.getTimes()!=null&& pacQueryDto.getTimes()!=""){
            String[] split = pacQueryDto.getTimes().split(",");
            pacQueryDto.setStart(split[0]);
            pacQueryDto.setEnd(split[1]);
        }
        List<Map<String, Object>>  pays = coursePackageClient.bypac(pacQueryDto);
        System.out.println("=========getStudentTotal======="+pays);
        return pays;
    }
    @RequestMapping("/yuyue")
    public String yuyue(Model model) {
        List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
        model.addAttribute("list",list);
        String roleid = UserExt.getUser().getRoleid();
        model.addAttribute("role",roleid);
        return PREFIX+"yuyue.html";
    }
    @RequestMapping("/jieshao")
    public String jieshao(Model model) {
        List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
        model.addAttribute("list",list);
        String roleid = UserExt.getUser().getRoleid();
        model.addAttribute("role",roleid);
        return PREFIX+"jieshao.html";
    }
    /**
     * 获取有效期
     */
    @RequestMapping("/yuyuelist")
    @ResponseBody
    public List<Map<String,Object>> yuyuelist(BookingQuery bookingQuery) {
        List<Map<String,Object>> orders =   ballClient.listorder(bookingQuery);
        System.out.println("=======ballQueryDto=========="+bookingQuery);
        return orders;
    }
    @RequestMapping("/addjs")
    @ResponseBody
    public void addjs( @RequestBody JsDto jsDto) {
        System.out.println("=======jsDto========"+jsDto);
        storeService.insert(jsDto);
    }
    @RequestMapping("/get/{id}")
    @ResponseBody
    public JsDto getJs( @PathVariable("id") Integer id) {
        JsDto jsDto =   storeService.get(id);
        return jsDto;
    }
    @RequestMapping("/getMoney/{id}/{type}")
    @ResponseBody
    public List<Double> getMoney( @PathVariable("id") Integer id,@PathVariable("type") Integer type) {
        List<Double> doubles = new ArrayList<>();
        Site site = siteClient.listById(id);
        System.out.println("=====stie====="+site);
        System.out.println("=====type====="+type);
        if (type == 0 ){
            doubles.add(site.getCashPrice());
            doubles.add(Double.valueOf(site.getPlayPaiCoin()));
            return  doubles;
        }else {
            doubles.add(site.getCashPriceOne());
            doubles.add(site.getPlayPaiCoinOne());
            return  doubles;
        }
    }
    @Resource
   private SiteClient siteClient;
    @RequestMapping("/yuyuetimes/{id}")
    @ResponseBody
    public List<OrderDto> yuyuetimes(@PathVariable("id") Integer id) {
        List<String> strings = new ArrayList<>();
        List<SiteBooking> siteBookings = siteClient.listBooks(id);
System.out.println("=======siteBookings======"+siteBookings);
        for (SiteBooking siteBooking : siteBookings) {
            String[] split = siteBooking.getTimes().split(";");
            for (String s : split) {
                String convertedValue = s.substring(11);
                strings.add(convertedValue);
            }
        }
    System.out.println("======strings======="+strings);
        List<OrderDto> timeRanges = new ArrayList<>();
       Site site =  siteClient.listById(id);
System.out.println("================"+site);
        String appointmentStartTime = site.getAppointmentStartTime();
        String appointmentEndTime = site.getAppointmentEndTime();
        String currentTime = appointmentStartTime;
        while (currentTime.compareTo(appointmentEndTime) < 0) {
            String nextTime = getNextTime(currentTime);
            String timeRange = currentTime + "-" + nextTime;
            OrderDto orderDto = new OrderDto();
            orderDto.setTime(timeRange);
            LocalTime currentTime1 = LocalTime.now();
            LocalTime targetTime = LocalTime.parse(currentTime);
            boolean hasExceeded = currentTime1.isAfter(targetTime);
    if (hasExceeded){
        orderDto.setState(0);
    }
    if (strings.contains(timeRange)){
        orderDto.setState(0);
    }
            timeRanges.add(orderDto);
            currentTime = nextTime;
        }
        System.out.println("-------------"+timeRanges);
        return timeRanges;
    }
    public static String getNextTime(String currentTime) {
        String[] parts = currentTime.split(":");
        int hour = Integer.parseInt(parts[0]);
        int minute = Integer.parseInt(parts[1]);
        if (minute == 30) {
            hour++;
            minute = 0;
        } else {
            minute = 30;
        }
        return String.format("%02d:%02d", hour, minute);
    }
    @RequestMapping("/halfName/{id}")
    @ResponseBody
    public String[] halfName(@PathVariable("id") Integer id) {
        TSite byId =   siteService.getById(id);
        String[] split = byId.getHalfName().split(",");
        System.out.println("=-============"+split);
        return split;
    }
    @RequestMapping("/yuyue_add")
    public String yuyueadd(Model model) {
        Integer objectType = UserExt.getUser().getObjectType();
        Integer objectId = UserExt.getUser().getObjectId();
        List<TCoursePackageType> tCoursePackageTypes = coursePackageTypeClient.queryAllCoursePackageType();
        model.addAttribute("coursePackageType", tCoursePackageTypes);
        String cityCode = null;
        if(objectType == 2){//城市管理员
            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
@@ -182,7 +538,20 @@
        TStore store = list2.get(0);
        List<TSite> list3 = siteService.list(new QueryWrapper<TSite>().eq("storeId", store.getId()).eq("state", 1));
        model.addAttribute("site", list3);
        return PREFIX+"yuyue_add.html";
    }
        return PREFIX+"ball_pre_add.html";
    }}
    @RequestMapping("/ordersave")
    @ResponseBody
    public void ordersave(SiteBooking siteBooking){
        siteBooking.setInsertTime(new Date());
        siteBooking.setState(1);
        siteBooking.setStatus(0);
    siteClient.addSiteBooking(siteBooking);
        System.out.println("================="+siteBooking);
    }
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/GameConfig.java
New file
@@ -0,0 +1,93 @@
package com.dsh.guns.modular.system.model;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class GameConfig {
    private int id;
    private String name;
    private String img;
    private BigDecimal playCoin;
    private BigDecimal cash;
    private BigDecimal integral;
    private int gameId;
    private int otherId;
//    public GameConfig(int id, String name, String img, BigDecimal playCoin, BigDecimal cash, BigDecimal integral, int gameId, int otherId) {
//        this.id = id;
//        this.name = name;
//        this.img = img;
//        this.playCoin = playCoin;
//        this.cash = cash;
//        this.integral = integral;
//        this.gameId = gameId;
//        this.otherId = otherId;
//    }
    // Getters and Setters
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getImg() {
        return img;
    }
    public void setImg(String img) {
        this.img = img;
    }
    public BigDecimal getPlayCoin() {
        return playCoin;
    }
    public void setPlayCoin(BigDecimal playCoin) {
        this.playCoin = playCoin;
    }
    public BigDecimal getCash() {
        return cash;
    }
    public void setCash(BigDecimal cash) {
        this.cash = cash;
    }
    public BigDecimal getIntegral() {
        return integral;
    }
    public void setIntegral(BigDecimal integral) {
        this.integral = integral;
    }
    public int getGameId() {
        return gameId;
    }
    public void setGameId(int gameId) {
        this.gameId = gameId;
    }
    public int getOtherId() {
        return otherId;
    }
    public void setOtherId(int otherId) {
        this.otherId = otherId;
    }
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/GameConfigDto.java
New file
@@ -0,0 +1,9 @@
package com.dsh.guns.modular.system.model;
import lombok.Data;
import java.util.List;
@Data
public class GameConfigDto {
    List<TGameConfig> list;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/SiteBooking.java
@@ -176,4 +176,6 @@
    private String halfName;
    @TableField("goType")
    private Integer goType;
    private String money;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TCoursePackagePayment.java
@@ -164,4 +164,13 @@
     */
    @TableField("salesName")
    private String salesName;
    private String studentName;
    private String province;
    private String city;
    private String courseName;
    private Integer hasHours;
    private BigDecimal laveCashPayment;
    private BigDecimal cashPayment1;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TGameConfig.java
New file
@@ -0,0 +1,70 @@
package com.dsh.guns.modular.system.model;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 游戏配置
 * </p>
 *
 * @author administrator
 * @since 2023-09-18
 */
@Data
public class TGameConfig extends Model<TGameConfig> {
    private static final long serialVersionUID=1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 名称
     */
    private String name;
    /**
     * 图
     */
    private String img;
    /**
     * 玩湃币
     */
    @TableField("playCoin")
    private BigDecimal playCoin;
    /**
     * 现金
     */
    private BigDecimal cash;
    /**
     * 积分
     */
    private BigDecimal integral;
    /**
     * 游戏id
     */
    @TableField("gameId")
    private Integer gameId;
    private Integer otherId;
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/BookingQuery.java
New file
@@ -0,0 +1,19 @@
package com.dsh.guns.modular.system.model.dto;
import lombok.Data;
@Data
public class BookingQuery {
    String provinceCode;
    String cityCode;
    String store;
    String peopleName;
    String phone;
    String date;
    Integer state;
    Integer payMethod;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/OrderDto.java
New file
@@ -0,0 +1,9 @@
package com.dsh.guns.modular.system.model.dto;
import lombok.Data;
@Data
public class OrderDto {
    private  String time;
    private  Integer state;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/PacQueryDto.java
New file
@@ -0,0 +1,17 @@
package com.dsh.guns.modular.system.model.dto;
import lombok.Data;
@Data
public class PacQueryDto {
    String cityCode;
    String store;
    String name;
    String times;
    String start;
    String end;
    String provinceCode;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/TimeDto.java
New file
@@ -0,0 +1,7 @@
package com.dsh.guns.modular.system.model.dto;
public class TimeDto {
    private String time;
    private String time2;
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.course.dto.JsDto;
import com.dsh.guns.modular.system.model.Dict;
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.model.TStoreListVo;
@@ -59,4 +60,8 @@
    List<TTurn> pageList();
    List<TTurn> getPage(List<Integer> ids);
    void insert(JsDto jsDto);
    JsDto get(Integer id);
}
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsh.course.dto.JsDto;
import com.dsh.course.mapper.StoreMapper;
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.model.TStoreListVo;
@@ -90,4 +91,14 @@
    public List<TTurn> getPage(List<Integer> ids) {
        return this.baseMapper.getPage(ids);
    }
    @Override
    public void insert(JsDto jsDto) {
        this.baseMapper.inset(jsDto);
    }
    @Override
    public JsDto get(Integer id) {
        return this.baseMapper.get(id);
    }
}
cloud-server-management/src/main/resources/mapper/TStoreMapper.xml
@@ -12,6 +12,12 @@
                                        state,pageId,typeId
                                        ) value (null ,#{url},#{name},#{s},#{s1},#{turnId},#{sort},1,#{page},#{type})
    </insert>
    <update id="inset">
        update t_js
        set jieshao = #{jieshao} ,vedio = #{vedio}
        where id = #{id}
    </update>
    <delete id="delete1">
        delete from t_store_other_config where id =#{id}
    </delete>
@@ -102,4 +108,8 @@
    <select id="pageList" resultType="com.dsh.guns.modular.system.model.TTurn">
        select * from t_turn where pid = 0
    </select>
    <select id="get" resultType="com.dsh.course.dto.JsDto">
        select * from t_js where  id = #{id}
    </select>
</mapper>
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball.html
@@ -26,7 +26,7 @@
                                </div>
                            </div>
                            @}
                            @if(role=='1'){
                            <div class="col-sm-3">
                                <div class="input-group">
                                    <div class="input-group-btn open">
@@ -38,7 +38,6 @@
                                    </select>
                                </div>
                            </div>
                            @}
                            <div class="col-sm-3">
                                <#NameCon id="store" name="门店名称" />
@@ -57,7 +56,7 @@
                                <#button name="添加" icon="fa-plus" clickFun="TStudent.openAddTStudent()"/>
                                <#button name="修改" icon="fa-edit" clickFun="TStudent.openTStudentDetail()" space="true"/>
                            <#button name="查看详情" icon="fa-edit" clickFun="TStudent.openTStudentDetail1()" space="true"/>
                            <#button name="介绍管理" icon="fa-edit" clickFun="TStudent.openTStudentDetail1()" space="true"/>
                            @if(shiro.hasPermission("/tStudent/delete")){
                                <#button name="删除" icon="fa-remove" clickFun="TStudent.delete()" space="true"/>
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html
@@ -42,7 +42,7 @@
        {
          "type": "form",
          "id": "u:24af29be25d2",
          "title": "表单",
          "title": "111",
          "body": [
            {
              "label": "所属运营商:",
@@ -52,47 +52,58 @@
              "mode": "horizontal",
              "size": "lg",
              "multiple": false,
              "source": {
                "url": "/api/v1/rep/cus/",
                "method": "get",
                "messages": {
                }
              },
              "labelField": "customerName",
              "valueField": "id",
              "showInvalidMatch": false,
              "searchable": true,
              "clearable": true,
              "horizontal": {
                "leftFixed": "lg"
              }
              },
              "options": [
                {
                  "label": "等待沟通中",
                  "value": "等待沟通中"
                }
              ]
            },
            {
              "type": "input-city",
              "type": "select",
              "label": "所在省:",
              "name": "province",
              "id": "u:091b190331f6",
              "id": "u:63c85c19f3aa",
              "multiple": false,
              "mode": "horizontal",
              "allowCity": false,
              "allowDistrict": false,
              "size": "md",
              "horizontal": {
                "leftFixed": "lg"
              },
              "source": {
                "url": "/coursePackage/queryProvince",
                "method": "get",
                "messages": {
                },
                "sendOn": ""
              },
              "onEvent": {
                "change": {
                  "weight": 0,
                  "actions": [
                    {
                      "componentId": "u:63c85c19f3aa",
                      "componentId": "u:14bafe37d5f3",
                      "actionType": "reload",
                      "dataMergeMode": "merge"
                    }
                  ]
                }
              }
              },
              "labelField": "name",
              "valueField": "code",
              "required": true
            },
            {
              "type": "select",
              "label": "所在市:",
              "name": "city",
              "id": "u:63c85c19f3aa",
              "id": "u:14bafe37d5f3",
              "multiple": false,
              "mode": "horizontal",
              "size": "md",
@@ -119,7 +130,8 @@
                }
              },
              "labelField": "name",
              "valueField": "code"
              "valueField": "code",
              "required": true
            },
            {
              "type": "select",
@@ -149,17 +161,11 @@
                      "componentId": "u:0d288f4bdd8e",
                      "actionType": "reload",
                      "dataMergeMode": "merge"
                    },
                    {
                      "componentId": "u:0d288f4bdd8e",
                      "args": {
                        "value": " "
                      },
                      "actionType": "setValue"
                    }
                  ]
                }
              }
              },
              "required": true
            },
            {
              "type": "select",
@@ -183,11 +189,12 @@
                "dataType": "form"
              },
              "labelField": "name",
              "valueField": "id"
              "valueField": "id",
              "required": true
            },
            {
              "type": "tpl",
              "tpl": "设备ID:",
              "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp设备ID:",
              "inline": true,
              "wrapperComponent": "",
              "id": "u:587781d5d181",
@@ -201,25 +208,22 @@
              "name": "blue",
              "id": "u:a4dbdeb9165e",
              "mode": "inline",
              "size": "xs",
              "size": "sm",
              "horizontal": {
                "leftFixed": "sm"
              },
              "value": ""
              "value": "",
              "required": true
            },
            {
              "type": "input-text",
              "label": "红色方",
              "name": "red",
              "id": "u:b0544634a698",
              "mode": "inline"
            },
            {
              "type": "tpl",
              "tpl": "请编辑内容",
              "inline": true,
              "wrapperComponent": "",
              "id": "u:89c3a95a6721"
              "mode": "inline",
              "clearValueOnHidden": false,
              "hidden": false,
              "required": true
            },
            {
              "type": "button",
@@ -234,7 +238,8 @@
                  ]
                }
              },
              "id": "u:b96a47957f17"
              "id": "u:b96a47957f17",
              "hidden": true
            },
            {
              "type": "divider",
@@ -248,80 +253,909 @@
              "wrapperComponent": "h2"
            },
            {
              "type": "container",
              "body": [
              "type": "grid",
              "columns": [
                {
                  "type": "card",
                  "header": {
                    "title": "激战球场",
                    "subTitle": "副标题"
                  },
                  "body": [
                    {
                      "type": "input-image",
                      "label": "背景图:",
                      "name": "image",
                      "autoUpload": true,
                      "proxy": true,
                      "uploadType": "fileReceptor",
                      "imageClassName": "r w-full",
                      "receiver": {
                        "url": "object-upload://default",
                        "method": "post"
                      "type": "card",
                      "header": {
                        "title": "玩湃跨城赛",
                        "subTitle": ""
                      },
                      "id": "u:824383a8e878",
                      "labelClassName": "text-dark"
                    },
                    {
                      "type": "input-text",
                      "label": "游戏名称",
                      "name": "ciji",
                      "id": "u:a4dbdeb9115e",
                      "mode": "inline",
                      "labelClassName": "text-dark m-b",
                      "value": "激战球场"
                    },
                    {
                      "type": "input-text",
                      "label": "玩派币",
                      "name": "cijiCoin",
                      "id": "u:99015dfd4264",
                      "mode": "inline",
                      "labelClassName": "text-dark m-b text-lg"
                    },
                    {
                      "type": "input-text",
                      "label": "现金",
                      "name": "cijiCash",
                      "id": "u:31888fb92add",
                      "mode": "inline",
                      "labelClassName": "text-dark m-b text-lg"
                    },
                    {
                      "type": "input-text",
                      "label": "积分",
                      "name": "cijiInt",
                      "id": "u:c42ab4593d20",
                      "mode": "inline",
                      "labelClassName": "text-dark m-b text-lg"
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "kuachengImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "kuacheng",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "玩湃跨城赛"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "kuachengId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "14"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "kuachengCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "kuachengCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "kuachengInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "actions": [
                  "id": "u:a63f776f28ca",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "社区冠军赛",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "shequImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shequ",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "社区冠军赛"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shequId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "16"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "shequCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "shequCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "shequInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:8445330f451b"
                  "id": "u:882210cd7611"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "射门速度-玩湃熊之力",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "shemenImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shemen",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "射门速度-玩湃熊之力"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shemenId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "13"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "shemenCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "shemenCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "shemenInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:d191f24cb064"
                }
              ],
              "style": {
                "position": "static",
                "display": "block",
                "flexWrap": "nowrap",
                "maxWidth": "300px",
                "overflowX": "auto",
                "margin": "0"
              },
              "id": "u:08adb1dcf6b9",
              "isFixedHeight": false,
              "isFixedWidth": false
              "id": "u:676721d0a98a"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "玩湃熊之力-速度",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "suduImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:4abd099fd344",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "sudu",
                          "id": "u:825f01e97cf5",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "玩湃熊之力-速度"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "suduId",
                          "id": "u:f0f7e6028e17",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "15"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "suduCoin",
                          "id": "u:b6faed384d78",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "suduCash",
                          "id": "u:c7181c9b3ded",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "suduInt",
                          "id": "u:ee897e373acb",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:89bd6bd7e231",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:e49a95f9b2c8",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "方块球王",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "fangkuaiImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "fangkuai",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "方块球王"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "fangkuaiId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "1"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "fangkuaiCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "fangkuaiCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "fangkuaiInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:3aaf60604641"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "镜像阵容",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "jxImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "jx",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "镜像阵容"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "jxId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "7"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "jxCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "jxCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "jxInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:e80cbf026419"
                }
              ],
              "id": "u:a53000ecee93"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "社区小球王",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "sqImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:94fe22c43628",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "sq",
                          "id": "u:49202e62cd8f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "社区小球王"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "sqId",
                          "id": "u:49c300f663f6",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "8"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "sqCoin",
                          "id": "u:a58559426478",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "sqCash",
                          "id": "u:e563cc483458",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "sqInt",
                          "id": "u:688f4b7c3392",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:20efa0a87285",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:19d3a6b86a8d",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "涨姿势",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "zsImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:70a81ae5d75c",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zs",
                          "id": "u:fd19ffe45790",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "涨姿势"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zsId",
                          "id": "u:fe85cbcb2f69",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "10"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "zsCoin",
                          "id": "u:af69b1a1d9cb",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "zsCash",
                          "id": "u:8ba3c740b10c",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "zsInt",
                          "id": "u:6d91bb154939",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:4b37f6a2c067",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:848bad292c8c"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "涨姿势[2]",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "zs2Image",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:22f44cb955d7",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zs2",
                          "id": "u:97b8937d26a1",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "激战球场"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zs2Id",
                          "id": "u:49ad851a7bf9",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "11"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "zs2Coin",
                          "id": "u:b29c25f053d9",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "zs2Cash",
                          "id": "u:88a44c71abb0",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "zs2Int",
                          "id": "u:fb82b3cf486c",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:cd832349886c",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:68716b29d1cd"
                }
              ],
              "id": "u:0df19fcc8fc2"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "绿茵密码",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "lyImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:704c6970b70d",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "游戏名称",
                          "name": "ly",
                          "id": "u:c4a543b6cda0",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "社区小球王"
                        },
                        {
                          "type": "hidden",
                          "label": "游戏id",
                          "name": "lyId",
                          "id": "u:90d5f2fa406a",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "5"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "lyCoin",
                          "id": "u:d78d236c5f95",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "lyCash",
                          "id": "u:20b24611e53c",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "lyInt",
                          "id": "u:25e10253effb",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:fe79896823ad",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:b496c245ddf5",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                  ],
                  "id": "u:5a16b34e0128"
                },
                {
                  "body": [
                  ],
                  "id": "u:a49cf291b3fe"
                }
              ],
              "id": "u:4641470c31fd"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "id": "u:8254704349a2",
                      "type": "flex",
                      "className": "p-1",
                      "items": [
                        {
                          "type": "button",
                          "id": "u:6c0b8f917bf7",
                          "label": "关闭",
                          "onEvent": {
                            "click": {
                              "actions": [
                                {
                                  "args": {
                                  },
                                  "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
                                  "actionType": "custom"
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "button",
                          "id": "u:6c0b8f917bf7",
                          "label": "保存",
                          "level": "info",
                          "onEvent": {
                            "click": {
                              "actions": [
                                {
                                  "componentId": "u:24af29be25d2",
                                  "args": {
                                  },
                                  "outputVar": "responseResult",
                                  "actionType": "submit"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "style": {
                        "position": "relative"
                      }
                    }
                  ],
                  "id": "u:ebd322f2aab8"
                }
              ],
              "id": "u:1b16988908d9"
            }
          ],
          "api": {
@@ -329,11 +1163,14 @@
            "method": "post",
            "messages": {
            },
            "dataType": "json"
          }
            "dataType": "form-data"
          },
          "actions": [
          ]
        }
      ]
    };
    let amisScoped = amis.embed('#root', amisJSON);
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html
New file
@@ -0,0 +1,1309 @@
<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8" />
  <title>amis demo</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta
          name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1"
  />
  <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
  <link rel="stylesheet" href="${ctxPath}/sdk/sdk.css" />
  <link rel="stylesheet" href="${ctxPath}/sdk/helper.css" />
  <link rel="stylesheet" href="${ctxPath}/sdk/iconfont.css" />
  <!-- 这是默认主题所需的,如果是其他主题则不需要 -->
  <!-- 从 1.1.0 开始 sdk.css 将不支持 IE 11,如果要支持 IE11 请引用这个 css,并把前面那个删了 -->
  <!-- <link rel="stylesheet" href="sdk-ie11.css" /> -->
  <!-- 不过 amis 开发团队几乎没测试过 IE 11 下的效果,所以可能有细节功能用不了,如果发现请报 issue -->
  <style>
    html,
    body,
    .app-wrapper {
      position: relative;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
    }
  </style>
</head>
<body>
<div id="root" class="app-wrapper"></div>
<script src="${ctxPath}/sdk/sdk.js"></script>
<script type="text/javascript">
  (function () {
    let amis = amisRequire('amis/embed');
    // 通过替换下面这个配置来生成不同页面
    let amisJSON = {
      "type": "page",
      "id": "u:8c028a595aa6",
      "body": [
        {
          "type": "form",
          "id": "u:24af29be25d2",
          "title": "",
          "body": [
            {
              "label": "所属运营商:",
              "type": "select",
              "name": "operator",
              "id": "u:970f68a2c4ee",
              "mode": "horizontal",
              "size": "lg",
              "multiple": false,
              "showInvalidMatch": false,
              "searchable": true,
              "clearable": true,
              "horizontal": {
                "leftFixed": "lg"
              },
              "options": [
                {
                  "label": "等待沟通中",
                  "value": "等待沟通中"
                }
              ]
            },
            {
              "type": "select",
              "label": "所在省:",
              "name": "province",
              "id": "u:63c85c19f3aa",
              "multiple": false,
              "mode": "horizontal",
              "size": "md",
              "value":`${game.provinceCode}`,
              "horizontal": {
                "leftFixed": "lg"
              },
              "source": {
                "url": "/coursePackage/queryProvince",
                "method": "get",
                "messages": {
                },
                "sendOn": ""
              },
              "onEvent": {
                "change": {
                  "weight": 0,
                  "actions": [
                    {
                      "componentId": "u:14bafe37d5f3",
                      "actionType": "reload",
                      "dataMergeMode": "merge"
                    }
                  ]
                }
              },
              "labelField": "name",
              "valueField": "code",
              "required": true
            },
            {
              "type": "select",
              "label": "所在市:",
              "name": "city",
              "value":`${game.cityCode}`,
              "id": "u:14bafe37d5f3",
              "multiple": false,
              "mode": "horizontal",
              "size": "md",
              "horizontal": {
                "leftFixed": "lg"
              },
              "source": {
                "url": "/coursePackage/queryCity1/$province",
                "method": "post",
                "messages": {
                },
                "sendOn": "this.province != null &&this.province != ' '"
              },
              "onEvent": {
                "change": {
                  "weight": 0,
                  "actions": [
                    {
                      "componentId": "u:576899b1b531",
                      "actionType": "reload",
                      "dataMergeMode": "merge"
                    }
                  ]
                }
              },
              "labelField": "name",
              "valueField": "code",
              "required": true
            },
            {
              "type": "select",
              "label": "所属门店:",
              "name": "store",
              "value":`${game.storeId}`,
              "id": "u:576899b1b531",
              "multiple": false,
              "mode": "horizontal",
              "size": "md",
              "horizontal": {
                "leftFixed": "lg"
              },
              "source": {
                "method": "post",
                "url": "/coursePackage/queryStore1/$city",
                "messages": {
                },
                "sendOn": "this.city != null &&this.city != ' '"
              },
              "labelField": "name",
              "valueField": "id",
              "onEvent": {
                "change": {
                  "weight": 0,
                  "actions": [
                    {
                      "componentId": "u:0d288f4bdd8e",
                      "actionType": "reload",
                      "dataMergeMode": "merge"
                    }
                  ]
                }
              },
              "required": true
            },
            {
              "type": "select",
              "label": "所属场地:",
              "name": "site",
              "value":`${game.siteId}`,
              "id": "u:0d288f4bdd8e",
              "multiple": false,
              "mode": "horizontal",
              "size": "md",
              "horizontal": {
                "leftFixed": "lg"
              },
              "source": {
                "url": "/coursePackage/querySite",
                "method": "post",
                "messages": {
                },
                "data": {
                  "storeId": "$store"
                },
                "dataType": "form"
              },
              "labelField": "name",
              "valueField": "id",
              "required": true
            },
            {
              "type": "tpl",
              "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp设备ID:",
              "inline": true,
              "wrapperComponent": "",
              "id": "u:587781d5d181",
              "style": {
                "marginLeft": "0"
              }
            },
            {
              "type": "input-text",
              "label": "蓝色方",
              "name": "blue",
              "id": "u:a4dbdeb9165e",
              "mode": "inline",
              "size": "sm",
              "horizontal": {
                "leftFixed": "sm"
              },
              "value": "",
              "required": true
              ,
              "value":`${game.blue}`
            },
            {
              "type": "input-text",
              "label": "红色方",
              "name": "red",
              "id": "u:b0544634a698",
              "mode": "inline",
              "clearValueOnHidden": false,
              "hidden": false,
              "required": true
              ,
              "value":`${game.red}`
            },
            {
              "type": "button",
              "label": "按钮",
              "onEvent": {
                "click": {
                  "actions": [
                    {
                      "componentId": "u:24af29be25d2",
                      "actionType": "submit"
                    }
                  ]
                }
              },
              "id": "u:b96a47957f17",
              "hidden": true
            },
            {
              "type": "divider",
              "id": "u:cc7161244b32"
            },
            {
              "type": "tpl",
              "id": "u:89c3a95a6721",
              "tpl": "游戏配置:",
              "inline": true,
              "wrapperComponent": "h2"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "玩湃跨城赛",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "kuachengImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "kuacheng",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "玩湃跨城赛"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "kuachengId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "14"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "kuachengCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "kuachengCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "kuachengInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:a63f776f28ca",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "社区冠军赛",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "shequImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shequ",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "社区冠军赛"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shequId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "16"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "shequCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "shequCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "shequInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:882210cd7611"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "射门速度-玩湃熊之力",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "shemenImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shemen",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "射门速度-玩湃熊之力"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "shemenId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "13"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "shemenCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "shemenCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "shemenInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:d191f24cb064"
                }
              ],
              "id": "u:676721d0a98a"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "玩湃熊之力-速度",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "suduImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:4abd099fd344",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "sudu",
                          "id": "u:825f01e97cf5",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "玩湃熊之力-速度"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "suduId",
                          "id": "u:ca5a1fd9c191",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "15"
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "suduCoin",
                          "id": "u:b6faed384d78",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "suduCash",
                          "id": "u:c7181c9b3ded",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "suduInt",
                          "id": "u:ee897e373acb",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:89bd6bd7e231",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:e49a95f9b2c8",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "方块球王",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "fangkuaiImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "fangkuai",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "方块球王"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "fangkuaiId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "1"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "fangkuaiCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "fangkuaiCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "fangkuaiInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:3aaf60604641"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "镜像阵容",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "jxImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:824383a8e878",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "jx",
                          "id": "u:a4dbdeb9115e",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "镜像阵容"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "jxId",
                          "id": "u:89bccaf7242f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "7"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "jxCoin",
                          "id": "u:99015dfd4264",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "jxCash",
                          "id": "u:31888fb92add",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "jxInt",
                          "id": "u:c42ab4593d20",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:8445330f451b",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:e80cbf026419"
                }
              ],
              "id": "u:a53000ecee93"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "社区小球王",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "sqImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:94fe22c43628",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "sq",
                          "id": "u:49202e62cd8f",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "社区小球王"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "sqId",
                          "id": "u:49c300f663f6",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "8"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "sqCoin",
                          "id": "u:a58559426478",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "sqCash",
                          "id": "u:e563cc483458",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "sqInt",
                          "id": "u:688f4b7c3392",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:20efa0a87285",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:19d3a6b86a8d",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "涨姿势",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "zsImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:70a81ae5d75c",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zs",
                          "id": "u:fd19ffe45790",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "涨姿势"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zsId",
                          "id": "u:fe85cbcb2f69",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "10"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "zsCoin",
                          "id": "u:af69b1a1d9cb",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "zsCash",
                          "id": "u:8ba3c740b10c",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "zsInt",
                          "id": "u:6d91bb154939",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:4b37f6a2c067",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:848bad292c8c"
                },
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "涨姿势[2]",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "zs2Image",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:22f44cb955d7",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zs2",
                          "id": "u:97b8937d26a1",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "激战球场"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "zs2Id",
                          "id": "u:49ad851a7bf9",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "11"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "zs2Coin",
                          "id": "u:b29c25f053d9",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "zs2Cash",
                          "id": "u:88a44c71abb0",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "zs2Int",
                          "id": "u:fb82b3cf486c",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:cd832349886c",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:68716b29d1cd"
                }
              ],
              "id": "u:0df19fcc8fc2"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "type": "card",
                      "header": {
                        "title": "绿茵密码",
                        "subTitle": ""
                      },
                      "body": [
                        {
                          "type": "input-image",
                          "label": "背景图:",
                          "name": "lyImage",
                          "autoUpload": true,
                          "proxy": true,
                          "uploadType": "fileReceptor",
                          "imageClassName": "r w-full",
                          "receiver": {
                            "url": "/mgr/uploadImgAmis",
                            "method": "post"
                          },
                          "id": "u:704c6970b70d",
                          "labelClassName": "text-dark",
                          "mode": "inline",
                          "accept": ".jpeg, .jpg, .png, .gif",
                          "multiple": false,
                          "hideUploadButton": false,
                          "fixedSize": false
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "ly",
                          "id": "u:c4a543b6cda0",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "社区小球王"
                        },
                        {
                          "type": "hidden",
                          "label": "",
                          "name": "lyId",
                          "id": "u:90d5f2fa406a",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b",
                          "value": "5"
                        },
                        {
                          "type": "tpl",
                          "id": "u:587781d5d181",
                          "tpl": "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp",
                          "inline": true,
                          "wrapperComponent": "",
                          "style": {
                            "marginLeft": "0"
                          }
                        },
                        {
                          "type": "input-text",
                          "label": "玩派币",
                          "name": "lyCoin",
                          "id": "u:d78d236c5f95",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "现金",
                          "name": "lyCash",
                          "id": "u:20b24611e53c",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        },
                        {
                          "type": "input-text",
                          "label": "积分",
                          "name": "lyInt",
                          "id": "u:25e10253effb",
                          "mode": "inline",
                          "labelClassName": "text-dark m-b text-lg"
                        }
                      ],
                      "actions": [
                      ],
                      "id": "u:fe79896823ad",
                      "bodyClassName": "no-border b-light",
                      "className": "no-border"
                    }
                  ],
                  "id": "u:b496c245ddf5",
                  "columnClassName": "p-l-lg"
                },
                {
                  "body": [
                  ],
                  "id": "u:5a16b34e0128"
                },
                {
                  "body": [
                  ],
                  "id": "u:a49cf291b3fe"
                }
              ],
              "id": "u:4641470c31fd"
            },
            {
              "type": "grid",
              "columns": [
                {
                  "body": [
                    {
                      "id": "u:8254704349a2",
                      "type": "flex",
                      "className": "p-1",
                      "items": [
                        {
                          "type": "button",
                          "id": "u:6c0b8f917bf7",
                          "label": "关闭",
                          "onEvent": {
                            "click": {
                              "actions": [
                                {
                                  "args": {
                                  },
                                  "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
                                  "actionType": "custom"
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "button",
                          "id": "u:6c0b8f917bf7",
                          "label": "保存",
                          "level": "info",
                          "onEvent": {
                            "click": {
                              "actions": [
                                {
                                  "componentId": "u:24af29be25d2",
                                  "args": {
                                  },
                                  "outputVar": "responseResult",
                                  "actionType": "submit"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "style": {
                        "position": "relative"
                      }
                    }
                  ],
                  "id": "u:ebd322f2aab8"
                }
              ],
              "id": "u:1b16988908d9"
            }
          ],
          "api": {
            "url": "/ball/save",
            "method": "post",
            "messages": {
            },
            "dataType": "form-data"
          },
          "actions": [
          ],
          "onEvent": {
            "submitSucc": {
              "weight": 0,
              "actions": [
                {
                  "args": {
                  },
                  "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
                  "actionType": "custom"
                }
              ]
            }
          }
        }
      ]
    };
    let amisScoped = amis.embed('#root', amisJSON);
  })();
  function test(){
    console.log("测试成功")
  }
  var myButton = document.getElementById("ttt");
  myButton.addEventListener("click",test);
</script>
</body>
</html>
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/jieshao.html
New file
@@ -0,0 +1,1163 @@
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8" />
    <title>amis demo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta
            name="viewport"
            content="width=device-width, initial-scale=1, maximum-scale=1"
    />
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
    <link rel="stylesheet" href="${ctxPath}/sdk/sdk.css" />
    <link rel="stylesheet" href="${ctxPath}/sdk/helper.css" />
    <link rel="stylesheet" href="${ctxPath}/sdk/iconfont.css" />
    <!-- 这是默认主题所需的,如果是其他主题则不需要 -->
    <!-- 从 1.1.0 开始 sdk.css 将不支持 IE 11,如果要支持 IE11 请引用这个 css,并把前面那个删了 -->
    <!-- <link rel="stylesheet" href="sdk-ie11.css" /> -->
    <!-- 不过 amis 开发团队几乎没测试过 IE 11 下的效果,所以可能有细节功能用不了,如果发现请报 issue -->
    <style>
        html,
        body,
        .app-wrapper {
            position: relative;
            width: 100%;
            height: 100%;
            margin: 0;
            padding: 0;
        }
    </style>
</head>
<body>
<div id="root" class="app-wrapper"></div>
<script src="${ctxPath}/sdk/sdk.js"></script>
<script type="text/javascript">
    (function () {
        let amis = amisRequire('amis/embed');
        // 通过替换下面这个配置来生成不同页面
        let amisJSON = {
            "type": "page",
            "body": [
                {
                    "type": "tabs",
                    "tabsMode": "vertical",
                    "tabs": [
                        {
                            "title": "玩湃跨城赛",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5fea7",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Edit",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "14",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5fea7"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:91bfc503975f"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:dbc6f3c0e779"
                        },
                        {
                            "title": "社区冠军赛",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5fe22",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "16",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5fe22",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:82085178ce49"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:012e71a6b2f9"
                        },
                        {
                            "title": "射门速度-玩湃熊之力",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f333",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "13",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f333",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:60929d18d938"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:8ad650b97cb0"
                        },
                        {
                            "title": "玩湃熊之力-速度",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f444",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "15",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f444",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:95a6bc834dc5"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:544152a47373"
                        },
                        {
                            "title": "方块球王",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f555",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "1",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f555",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:f71511d042a8"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:755a96b3d27f"
                        },
                        {
                            "title": "镜像阵容",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f666",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "7",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f666",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:a37a95f8c2c6"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:e4815a5fccf1"
                        },
                        {
                            "title": "社区小球王",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f777",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "8",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f777",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:0c61e0e5b4f4"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:2bfa05b7cccb"
                        },
                        {
                            "title": "涨姿势",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f888",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "10",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f888",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:e04f1bcae4aa"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:2f4595ac11a7"
                        },
                        {
                            "title": "涨姿势[2]",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f999",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "11",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f999",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:6fbe66eae6e1"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:efb71048f771"
                        },
                        {
                            "title": "绿茵密码",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f50007",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "5",
                                            "hidden": true
                                        },
                                        {
                                            "type": "textarea",
                                            "label": "文字介绍",
                                            "name": "jieshao",
                                            "id": "u:aa105bcfd51b",
                                            "minRows": 10,
                                            "maxRows": 20,
                                            "required": true
                                        },
                                        {
                                            "type": "input-file",
                                            "label": "文件上传",
                                            "autoUpload": true,
                                            "proxy": true,
                                            "uploadType": "fileReceptor",
                                            "name": "vedio",
                                            "id": "u:d84964c25e87",
                                            "btnLabel": "文件上传",
                                            "multiple": false,
                                            "useChunk": false,
                                            "accept": "",
                                            "drag": false,
                                            "receiver": {
                                                "url": "/mgr/uploadImgAmis",
                                                "method": "post"
                                            },
                                            "required": true
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f50007",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:30fd93656c25"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:50cf027d8c62"
                        },
                        {
                            "title": "步骤说明",
                            "body": [
                                {
                                    "type": "form",
                                    "id": "u:bd64f7f5f000",
                                    "title": "",
                                    "mode": "horizontal",
                                    "dsType": "api",
                                    "feat": "Insert",
                                    "body": [
                                        {
                                            "type": "input-text",
                                            "label": "文本",
                                            "name": "id",
                                            "id": "u:4c0a1ededc47",
                                            "value": "100",
                                            "hidden": true
                                        },
                                        {
                                            "type": "input-rich-text",
                                            "label": "富文本",
                                            "name": "rich-text",
                                            "vendor": "tinymce",
                                            "id": "u:e67366a6ef31",
                                            "options": {
                                                "plugins": "advlist,autolink,link,image,lists,charmap,preview,anchor,pagebreak,searchreplace,wordcount,visualblocks,visualchars,code,fullscreen,insertdatetime,media,nonbreaking,table,emoticons,template,help",
                                                "toolbar": "undo redo formatselect bold italic backcolor alignleft aligncenter alignright alignjustify bullist numlist outdent indent removeformat help",
                                                "menubar": true
                                            },
                                            "mode": "normal"
                                        }
                                    ],
                                    "actions": [
                                        {
                                            "type": "button",
                                            "label": "关闭",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "custom",
                                                            "args": {
                                                            },
                                                            "script": "parent.layer.close(window.parent.TStudent.layerIndex);"
                                                        }
                                                    ]
                                                }
                                            },
                                            "id": "u:6c0b8f917bf7"
                                        },
                                        {
                                            "type": "button",
                                            "label": "提交",
                                            "onEvent": {
                                                "click": {
                                                    "actions": [
                                                        {
                                                            "actionType": "submit",
                                                            "componentId": "u:bd64f7f5f000",
                                                            "outputVar": "submitResult"
                                                        }
                                                    ]
                                                }
                                            },
                                            "level": "primary",
                                            "id": "u:c0684967ad04"
                                        }
                                    ],
                                    "resetAfterSubmit": false,
                                    "api": {
                                        "url": "/ball/addjs",
                                        "method": "post",
                                        "requestAdaptor": "",
                                        "adaptor": "",
                                        "messages": {
                                        }
                                    },
                                    "initApi": {
                                        "url": "/ball/get/$id",
                                        "method": "get"
                                    }
                                }
                            ],
                            "id": "u:254c9cdf53c1"
                        }
                    ],
                    "id": "u:56160148e468",
                    "toolbar": [
                    ]
                }
            ],
            "id": "u:899c8b49ca64"
        };
        let amisScoped = amis.embed('#root', amisJSON);
    })();
    function test(){
        console.log("测试成功")
    }
    var myButton = document.getElementById("ttt");
    myButton.addEventListener("click",test);
</script>
</body>
</html>
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/paike.html
New file
@@ -0,0 +1,410 @@
<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8" />
  <title>amis demo</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta
          name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1"
  />
  <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
  <link rel="stylesheet" href="${ctxPath}/sdk/sdk.css" />
  <link rel="stylesheet" href="${ctxPath}/sdk/helper.css" />
  <link rel="stylesheet" href="${ctxPath}/sdk/iconfont.css" />
  <!-- 这是默认主题所需的,如果是其他主题则不需要 -->
  <!-- 从 1.1.0 开始 sdk.css 将不支持 IE 11,如果要支持 IE11 请引用这个 css,并把前面那个删了 -->
  <!-- <link rel="stylesheet" href="sdk-ie11.css" /> -->
  <!-- 不过 amis 开发团队几乎没测试过 IE 11 下的效果,所以可能有细节功能用不了,如果发现请报 issue -->
  <style>
    html,
    body,
    .app-wrapper {
      position: relative;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
    }
  </style>
</head>
<body>
<div id="root" class="app-wrapper"></div>
<script src="${ctxPath}/sdk/sdk.js"></script>
<script type="text/javascript">
  (function () {
    let amis = amisRequire('amis/embed');
    // 通过替换下面这个配置来生成不同页面
    let amisJSON = {
      "type": "page",
      "title": "",
      "regions": [
        "body",
        "toolbar",
        "header"
      ],
      "body": [
        {
          "type": "tabs",
          "tabs": [
            {
              "title": "按学员查看",
              "body": [
                {
                  "type": "crud",
                  "syncLocation": false,
                  "api": {
                    "method": "post",
                    "url": "/ball/getStudentTotal",
                    "messages": {
                    }
                  },
                  "columns": [
                    {
                      "name": "studentName",
                      "label": "学院姓名",
                      "type": "text",
                      "id": "u:631a38f8ab8f"
                    },
                    {
                      "name": "province",
                      "label": "所在省",
                      "type": "text",
                      "id": "u:d1c9f94c453a"
                    },
                    {
                      "label": "所在市",
                      "type": "text",
                      "name": "city",
                      "id": "u:71aded278293"
                    },
                    {
                      "label": "课包名称",
                      "type": "text",
                      "name": "courseName",
                      "id": "u:22cab5368b85",
                      "classNameExpr": "<%= data.courseName === '总计' ? 'bg-danger' : '' %>"
                    },
                    {
                      "label": "应上课时数",
                      "type": "text",
                      "name": "totalClassHours",
                      "id": "u:9f3c838b4dce",
                      "placeholder": "-",
                      "classNameExpr": "<%= data.courseName === '总计' ? 'bg-danger' : '' %>"
                    },
                    {
                      "type": "text",
                      "name": "cashPayment",
                      "label": "应收总收益",
                      "id": "u:ad526537117c",
                      "classNameExpr": "<%= data.courseName === '总计' ? 'bg-danger' : '' %>"
                    },
                    {
                      "label": "实上课时数",
                      "type": "text",
                      "name": "hasHours",
                      "id": "u:14eb3c5fac85",
                      "classNameExpr": "<%= data.courseName === '总计' ? 'bg-danger' : '' %>"
                    },
                    {
                      "label": "实际总收益",
                      "type": "text",
                      "name": "hasPayment",
                      "id": "u:6c0e4a862b04",
                      "placeholder": "-",
                      "format": "YYYY-MM-DD",
                      "classNameExpr": "<%= data.courseName === '总计' ? 'bg-danger' : '' %>"
                    }
                  ],
                  "bulkActions": [
                  ],
                  "itemActions": [
                  ],
                  "id": "u:e103c7434df8",
                  "filterSettingSource": [
                    "id",
                    "customerName",
                    "simName",
                    "address",
                    "industryId",
                    "email",
                    "createBy",
                    "updateBy",
                    "remark",
                    "customerCode"
                  ],
                  "features": [
                    "create",
                    "filter",
                    "bulkDelete",
                    "view",
                    "delete",
                    "update",
                    "bulkUpdate"
                  ],
                  "filterColumnCount": 3,
                  "filterEnabledList": [
                  ],
                  "headerToolbar": [
                    "bulkActions"
                  ],
                  "filter": {
                    "title": "查询条件",
                    "columnCount": 3,
                    "mode": "horizontal",
                    "body": [
                      {
                        "type": "input-city",
                        "label": "城市选择",
                        "name": "cityCode",
                        "allowDistrict": false,
                        "id": "u:16db9fd9fe42",
                        "mode": "horizontal",
                        "horizontal": {
                          "left": 3,
                          "right": 9
                        },
                        "className": ""
                      },
                      // {
                      //   "type": "select",
                      //   "label": "客户简称",
                      //   "name": "simName",
                      //   "id": "u:1942896a0f61",
                      //   "multiple": false,
                      //   "source": {
                      //     "url": "/api/v1/rep/cus/getselect",
                      //     "method": "get",
                      //     "messages": {
                      //     }
                      //   },
                      //   "labelField": "simName",
                      //   "valueField": "simName",
                      //   "searchable": true
                      // },
                      {
                        "type": "input-date-range",
                        "label": "日期范围",
                        "name": "times",
                        "id": "u:5ea0ab341c9e",
                        "embed": false,
                        "format": "YYYY-MM-DD",
                        "inputFormat": "YYYY-MM-DD"
                      },
                      {
                        "type": "input-text",
                        "label": "学员姓名",
                        "name": "studentName",
                        "id": "u:528726820775"
                      }
                    ],
                    "id": "u:2c92f31a25d0",
                    "name": "select1",
                    "rules": [
                    ]
                  },
                  "perPageAvailable": [
                    10,
                    20,
                    50,
                    100
                  ],
                  "messages": {
                  },
                  "footerToolbar": [
                    {
                      "type": "statistics",
                      "align": "left"
                    },
                    {
                      "type": "pagination",
                      "align": "left"
                    },
                    {
                      "type": "switch-per-page",
                      "tpl": "内容",
                      "align": "left"
                    }
                  ],
                  "columnsTogglable": "auto",
                  "pageField": "",
                  "perPageField": "",
                  "alwaysShowPagination": true,
                  "loadDataOnce": true,
                  "perPage": 5,
                  "combineNum": 3
                }
              ],
              "id": "u:6e437c3e244f"
            },
            {
              "title": "按课包查看",
              "body": [
                {
                  "type": "crud",
                  "syncLocation": false,
                  "api": {
                    "method": "post",
                    "url": "/ball/bypac",
                    "messages": {
                    }
                  },
                  "columns": [
                    {
                      "name": "name",
                      "label": "课包名称",
                      "type": "text",
                      "id": "u:ee84f6f80722"
                    },
                    {
                      "name": "province",
                      "label": "所在省",
                      "type": "text",
                      "id": "u:d35930e735a8"
                    },
                    {
                      "type": "text",
                      "label": "所在市",
                      "name": "city",
                      "id": "u:d74f9dcfdb4e"
                    },
                    {
                      "type": "text",
                      "label": "所属门店",
                      "name": "store",
                      "id": "u:6fb45db2b3ef"
                    },
                    {
                      "type": "text",
                      "label": "应上课时数",
                      "name": "totalClassHours",
                      "id": "u:5c82dde5c22d"
                    },
                    {
                      "type": "text",
                      "label": "应收总收益",
                      "name": "cashPayment",
                      "id": "u:b915f72e72b0"
                    },
                    {
                      "type": "text",
                      "label": "实上课时数",
                      "name": "hasHours",
                      "id": "u:2fb55efdecab"
                    },
                    {
                      "type": "text",
                      "label": "实收总收益",
                      "name": "lavePay",
                      "id": "u:c46b9aeca543"
                    },
                    {
                      "type": "operation",
                      "label": "操作",
                      "buttons": [
                      ],
                      "id": "u:0c6ed863e6a8"
                    }
                  ],
                  "bulkActions": [
                  ],
                  "itemActions": [
                  ],
                  "id": "u:c765ccbe1f1a",
                  "features": [
                    "filter"
                  ],
                  "filterColumnCount": 3,
                  "filter": {
                    "title": "查询条件",
                    "columnCount": 3,
                    "mode": "horizontal",
                    "body": [
                      {
                        "type": "input-city",
                        "label": "城市选择",
                        "name": "cityCode",
                        "allowDistrict": false,
                        "id": "u:16db9fd9fe42",
                        "mode": "horizontal",
                        "horizontal": {
                          "left": 3,
                          "right": 9
                        },
                        "className": ""
                      },
                      // {
                      //   "type": "select",
                      //   "label": "客户简称",
                      //   "name": "simName",
                      //   "id": "u:1942896a0f61",
                      //   "multiple": false,
                      //   "source": {
                      //     "url": "/api/v1/rep/cus/getselect",
                      //     "method": "get",
                      //     "messages": {
                      //     }
                      //   },
                      //   "labelField": "simName",
                      //   "valueField": "simName",
                      //   "searchable": true
                      // },
                      {
                        "type": "input-text",
                        "label": "所属门店",
                        "name": "store",
                        "id": "u:528726820775"
                      },
                      {
                        "type": "input-text",
                        "label": "课包名称",
                        "name": "name",
                        "id": "u:3bce46aeafeb"
                      },
                      {
                        "type": "input-date-range",
                        "label": "日期范围",
                        "name": "times",
                        "id": "u:5ea0ab341c9e",
                        "embed": false,
                        "format": "YYYY-MM-DD",
                        "inputFormat": "YYYY-MM-DD"
                      }
                    ],
                    "id": "u:2c92f31a25d0",
                    "name": "select1",
                    "rules": [
                    ]
                  },
                  "perPageAvailable": [
                    10
                  ],
                  "messages": {
                  }
                }
              ],
              "id": "u:74421661b6be"
            }
          ],
          "id": "u:9687d5f89c52"
        }
      ],
      "id": "u:b14a93e2aeb3"
    };
    let amisScoped = amis.embed('#root', amisJSON);
  })();
  function test(){
    console.log("测试成功")
  }
  var myButton = document.getElementById("ttt");
  myButton.addEventListener("click",test);
</script>
</body>
</html>
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html
New file
@@ -0,0 +1,89 @@
@layout("/common/_container.html"){
<div class="row" id = "ttt">
    <div class="col-sm-12">
        <div class="ibox float-e-margins">
            <div class="ibox-title">
                <h5>管理</h5>
            </div>
            <div class="ibox-content">
                <div class="row row-lg">
                    <div class="col-sm-12">
                        <div class="row">
                            @if(role=='1'){
                            <div class="col-sm-3">
                                <div class="input-group">
                                    <div class="input-group-btn open">
                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button" aria-expanded="true">
                                            所在省
                                        </button>
                                    </div>
                                    <select class="form-control" id="pCode" onchange="TCompetition.oneChange(this)">
                                        <option value="">全部</option>
                                        @for(obj in list){
                                        <option value="${obj.code}">${obj.name}</option>
                                        @}
                                    </select>
                                </div>
                            </div>
                            @}
                            @if(role=='1'){
                            <div class="col-sm-3">
                                <div class="input-group">
                                    <div class="input-group-btn open">
                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button" aria-expanded="true">
                                            所在市
                                        </button>
                                    </div>
                                    <select class="form-control" id="cCode">
                                    </select>
                                </div>
                            </div>
                            @}
                            <div class="col-sm-3">
                                <#NameCon id="store" name="门店名称" />
                            </div>
                            <div class="col-sm-3">
                                <#NameCon id="peopleName" name="预约人" />
                            </div>
                            <div class="col-sm-3">
                                <#NameCon id="phone" name="联系方式" />
                            </div>
                            <div class="col-sm-3">
                                <#TimeCon id="date" name="报名时间" isTime="false"/>
                            </div>
                            <div class="col-sm-3">
                                <#button name="搜索" icon="fa-search" clickFun="TStudent.search()"/>
                            </div>
                        </div>
                        <div class="hidden-xs" id="TStudentTableToolbar" role="group">
                                <#button name="添加" icon="fa-plus" clickFun="TStudent.openAddTStudent()"/>
                                <#button name="修改" icon="fa-edit" clickFun="TStudent.openTStudentDetail()" space="true"/>
                            <#button name="查看详情" icon="fa-edit" clickFun="TStudent.openTStudentDetail1()" space="true"/>
                            @if(shiro.hasPermission("/tStudent/delete")){
                                <#button name="删除" icon="fa-remove" clickFun="TStudent.delete()" space="true"/>
                            @}
<!--                            <button id="exportButton">TTTTTTTTTT</button>-->
                        </div>
                        <#table id="TStudentTable"/>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<script src="${ctxPath}/modular/system/ball/yuyue.js"></script>
<script src="${ctxPath}/modular/system/tShop/tShop.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.4.0/jspdf.umd.min.js">
</script>
<script>
    laydate.render({
        elem: '#date'
        ,lang:"CN"
    });
</script>
@}
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html
New file
@@ -0,0 +1,286 @@
@layout("/common/_container.html"){
<style>
    .green-button {
        background-color: green;
    }
</style>
<div class="ibox float-e-margins">
    <div class="ibox-content">
        <div class="form-horizontal">
            <div class="row">
                <div class="form-group">
                    <label class="col-sm-3 control-label">*所在省:</label>
                    <div class="col-sm-4">
                        <select class="form-control" id="provinceCode" name="provinceCode">
                            @for(obj in province){
                            <option value="${obj.code}">${obj.name}</option>
                            @}
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">*所在市:</label>
                    <div class="col-sm-4">
                        <select class="form-control" id="cityCode" name="cityCode">
                            @for(obj in city){
                            <option value="${obj.code}">${obj.name}</option>
                            @}
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">*所属门店:</label>
                    <div class="col-sm-4">
                        <select class="form-control" id="storeId" name="storeId">
                            @for(obj in store){
                            <option value="${obj.id}">${obj.name}</option>
                            @}
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">*预约类型:</label>
                    <div class="col-sm-4">
                       <input type="radio" name="type" value="1"  checked="" onclick="updateType(1)"  > 全场
                        <input type="radio" name="type" value="2" onclick="updateType(2)" > 半场
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">*上课场地:</label>
                    <div class="col-sm-4">
                        <select class="form-control" id="siteId" name="siteId"  onchange="CoursePackageInfo.addTime(this.value)">
                            <option >请选择场地</option>
                            @for(obj in site){
                            <option value="${obj.id}"  data-custom-data="1">${obj.name}</option>
                            @}
                        </select>
                    </div>
                </div>
                <div class="form-group"  id="half1"  hidden="hidden">
                    <label class="col-sm-3 control-label">*选择半场:</label>
                    <div class="col-sm-4">
                        <select class="form-control"  name="half" id="half">
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">预约时间:</label>
                    <div class="col-sm-4">
                        <input class="form-control" id="time" name="time" type="text" >
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">*预约时间段:</label>
                    <div class="col-sm-5" id="ttt1">
                        <div class="layui-btn-group" id="ttt2">
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">现金价格:</label>
                    <div class="col-sm-4">
                        <input class="form-control" id="cash" name="cash" type="text" >
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">玩派币价格:</label>
                    <div class="col-sm-4">
                        <input class="form-control" id="play" name="play" type="text" >
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">预约人:</label>
                    <div class="col-sm-4">
                        <input class="form-control" id="booker" name="booker" type="text" >
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">预约人:</label>
                    <div class="col-sm-4">
                        <input class="form-control" id="phone" name="phone" type="text" >
                    </div>
                </div>
<!--                <input type="text" id = "counpons">-->
            </div>
            <div class="row btn-group-m-t">
                <div class="col-sm-10">
                    <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.addSubmit()"/>
                    <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="CoursePackageInfo.close()"/>
                </div>
            </div>
        </div>
    </div>
</div>
<script src="${ctxPath}/modular/system/ball/yuyue_info.js"></script>
<script type="text/javascript">
    function updateType(o) {
        if(o==1){
            var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
            var count = elements.length;
            console.log("Number of elements: " + count);
            $("#half1").hide()
            var radios = document.getElementsByName("type");
            var selectedValue;
            for (var i = 0; i < radios.length; i++) {
                if (radios[i].checked) {
                    selectedValue = radios[i].value;
                    break;
                }
            }
            var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
                console.log("===========3333====="+data)
                if(data!=null){
                    $("#cash").val(data[0] * count);
                    $("#play").val(data[1] * count);
                }
            })
            ajax3.start()
        }else {
            var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
            var count = elements.length;
            console.log("Number of elements: " + count);
            $("#half1").show()
            var radios = document.getElementsByName("type");
            var selectedValue;
            for (var i = 0; i < radios.length; i++) {
                if (radios[i].checked) {
                    selectedValue = radios[i].value;
                    break;
                }
            }
            var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
                console.log("===========3333====="+data)
                if(data!=null){
                    $("#cash").val(data[0] * count);
                    $("#play").val(data[1] * count);
                }
            })
            ajax3.start()
        }
    }
    function toggleColor(button) {
        button.classList.toggle("green-button");
        var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
        var count = elements.length;
        console.log("Number of elements: " + count);
        var radios = document.getElementsByName("type");
        var selectedValue;
        for (var i = 0; i < radios.length; i++) {
            if (radios[i].checked) {
                selectedValue = radios[i].value;
                break;
            }
        }
        var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
            console.log("===========3333====="+data)
            if(data!=null){
                $("#cash").val(data[0] * count);
                $("#play").val(data[1] * count);
            }
        })
        ajax3.start()
    }
    laydate.render({
        elem: '#time'
        ,lang:"CN",
        min:0,
        max:10
    });
    laydate.render({
        elem: '#holitime'
        ,range: true //或 range: '~' 来自定义分割字符
    });
    var avatarUp = new $WebUpload("coverDrawing");
    avatarUp.setUploadBarId("progressBar");
    avatarUp.init();
    var avatarUp1 = new $WebUpload("detailDrawing");
    avatarUp1.setUploadBarId("progressBar");
    avatarUp1.init();
    var avatarUp1 = new $WebUpload("introduceDrawing");
    avatarUp1.setUploadBarId("progressBar");
    avatarUp1.init();
    function addTime(){
        var i =  $('#dayTime > div').length
        let htmlStr ='           <div style="display:flex">\n' +
            '                                <input class="form-control" id="classStartTime'+i+'" name="classStartTime" placeholder="请选择" style="width: 200px;">\n' +
            '                                <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice1(this)"></i>\n' +
            '                            </div>'
        $('#dayTime').append(htmlStr);
        console.log("========="+i)
        laydate.render({
            elem: '#classStartTime'+i,
            type: 'time',
            range: true
        });
    }
</script>
@}
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html
@@ -28,7 +28,7 @@
            <div class="form-group" id="shop">
                <label class="col-sm-3 control-label">举办门店:</label>
                <div class="col-sm-9">
                    <select class="form-control" id="shopId" name="shopId">
                    <select class="form-control" id="shopId" name="shopId" multiple>
                        <option value="">选择门店</option>
                    </select>
                </div>
@@ -132,8 +132,16 @@
    </div>
</div>
<script src="${ctxPath}/modular/system/tCompetition/tCompetition_info.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/css/select2.min.css">
<!--<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/js/select2.min.js"></script>
<script>
    $(document).ready(function() {
        $('#shopId').select2({
            multiple: true,
            closeOnSelect: false
        });
    });
    laydate.render({
        elem: '#startTime'
cloud-server-management/src/main/webapp/static/modular/system/ball/ball.js
@@ -69,7 +69,7 @@
            area: ['100%', '100%'],  //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/tStudent/tStudent_update/' + TStudent.seItem.id
            content: Feng.ctxPath + '/ball/pre_edit/' + TStudent.seItem.id
        });
        this.layerIndex = index;
    }
@@ -80,17 +80,16 @@
 * 打开详情
 */
TStudent.openTStudentDetail1 = function () {
    if (this.check()) {
        var index = layer.open({
            type: 2,
            title: '详情',
            area: ['100%', '100%'],  //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/tStudent/tStudent_info/' + TStudent.seItem.id
            content: Feng.ctxPath + '/ball/jieshao'
        });
        this.layerIndex = index;
    }
};
cloud-server-management/src/main/webapp/static/modular/system/ball/ball_info.js
@@ -3,6 +3,7 @@
 */
var CoursePackageInfo = {
    userInfoData: {},
};
@@ -15,6 +16,7 @@
};
CoursePackageInfo.openDia = function (i) {
        let index = layer.open({
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js
New file
@@ -0,0 +1,135 @@
/**
 * 管理初始化
 */
var TStudent = {
    id: "TStudentTable",    //表格id
    seItem: null,        //选中的条目
    table: null,
    layerIndex: -1
};
/**
 * 初始化表格的列
 */
TStudent.initColumn = function () {
    return [
        {field: 'selectItem', radio: true},
            {title: '主键', field: 'id', visible: false, align: 'center', valign: 'middle'},
            {title: '所在省', field: 'operation', visible: true, align: 'center', valign: 'middle'},
            {title: '所在市', field: 'province', visible: true, align: 'center', valign: 'middle'},
            {title: '预约门店', field: 'city', visible: true, align: 'center', valign: 'middle'},
        { title: '预约场地', field: 'store', visible: true, align: 'center', valign: 'middle'},
        { title: '姓名', field: 'site', visible: true, align: 'center', valign: 'middle'},
        { title: '联系电话', field: 'blue', visible: true, align: 'center', valign: 'middle'},
        { title: '预约时间段', field: 'red', visible: true, align: 'center', valign: 'middle'},
        { title: '支付方式', field: 'red', visible: true, align: 'center', valign: 'middle'}
    ];
};
/**
 * 检查是否选中
 */
TStudent.check = function () {
    var selected = $('#' + this.id).bootstrapTable('getSelections');
    if(selected.length == 0){
        Feng.info("请先选中表格中的某一记录!");
        return false;
    }else{
        TStudent.seItem = selected[0];
        return true;
    }
};
/**
 * 点击添加
 */
TStudent.openAddTStudent = function () {
    var index = layer.open({
        type: 2,
        title: '添加',
        area: ['100%', '100%'], //宽高
        fix: false, //不固定
        maxmin: true,
        content: Feng.ctxPath + '/ball/yuyue_add'
    });
    this.layerIndex = index;
};
/**
 * 打开修改
 */
TStudent.openTStudentDetail = function () {
    if (this.check()) {
        var index = layer.open({
            type: 2,
            title: '详情',
            area: ['100%', '100%'],  //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/ball/pre_edit/' + TStudent.seItem.id
        });
        this.layerIndex = index;
    }
};
/**
 * 打开详情
 */
TStudent.openTStudentDetail1 = function () {
    if (this.check()) {
        var index = layer.open({
            type: 2,
            title: '详情',
            area: ['100%', '100%'],  //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/tStudent/tStudent_info/' + TStudent.seItem.id
        });
        this.layerIndex = index;
    }
};
/**
 * 删除
 */
TStudent.delete = function () {
    if (this.check()) {
        var ajax = new $ax(Feng.ctxPath + "/tStudent/delete", function (data) {
            Feng.success("删除成功!");
            TStudent.table.refresh();
        }, function (data) {
            Feng.error("删除失败!" + data.responseJSON.message + "!");
        });
        ajax.set("tStudentId",this.seItem.id);
        ajax.start();
    }
};
/**
 * 查询列表
 */
TStudent.search = function () {
    var queryData = {};
    queryData['provinceCode'] = $("#pCode").val();
    queryData['cityCode'] = $("#cCode").val();
    queryData['store'] = $("#store").val();
    queryData['peopleName'] = $("#peopleName").val();
    queryData['phone'] = $("#phone").val();
    queryData['date'] = $("#peopleName").val();
    TStudent.table.refresh({query: queryData});
};
$(function () {
    var defaultColunms = TStudent.initColumn();
    var table = new BSTable(TStudent.id, "/ball/yuyuelist", defaultColunms);
    table.setPaginationType("client");
    TStudent.table = table.init();
});
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
New file
@@ -0,0 +1,532 @@
/**
 * 用户详情对话框(可用于添加和修改对话框)
 */
var CoursePackageInfo = {
    userInfoData: {},
};
/**
 * 关闭此对话框
 */
CoursePackageInfo.close = function () {
    parent.layer.close(window.parent.CoursePackage.layerIndex);
};
CoursePackageInfo.openDia = function (i) {
        let index = layer.open({
            type: 2,
            title: '编辑',
            area: ['80%', '80%'], //宽高
            fix: false, //不固定
            maxmin: true,
            content: Feng.ctxPath + '/coursePackage/conpun/'+i
        });
        this.layerIndex = index;
};
CoursePackageInfo.openDia1 = function (i) {
    var ids = $("#counpons"+i).val()
        console.log($("#counpons"+i).val())
    let index = layer.open({
        type: 2,
        title: '编辑',
        area: ['80%', '80%'], //宽高
        fix: false, //不固定
        maxmin: true,
        content: Feng.ctxPath + '/coursePackage/conpun1'+'/'+i+'?conpunids='+ids
    });
    this.layerIndex = index;
};
CoursePackageInfo.addTime = function (a) {
    console.log("==========="+a)
    var ajax = new $ax(Feng.ctxPath + "/ball/yuyuetimes/"+ $('#siteId').val(), function(data){
        console.log("================"+data)
        if(data!=null){
            var content='';
            $.each(data, function(k, v) {
                var buttonClass = "layui-btn layui-btn-primary";
                var style = "";
                if (v.state === 0) {
                    style = "background-color: red;";
                }
                var disabledAttribute = v.state === 0 ? "disabled" : "";
                content += '<button type="button" class="' + buttonClass + '" ' + disabledAttribute + ' style="' + style + '" onclick="toggleColor(this)">' + v.time + '</button>';
            });
            $("#ttt2").empty().append(content);
        }
    })
    ajax.start()
    var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
        console.log("================"+data)
        if(data!=null){
            let htmlStr = '';
            for (let i = 0; i < data.length; i++) {
                htmlStr += '<option value="' + data[i] + '">' + data[i] + '</option>'
            }
            $("#half").empty().append(htmlStr);
        }
    })
    ajax1.start()
};
/**
 * 提交添加用户
 */
CoursePackageInfo.addSubmit = function () {
    let province = $('#provinceCode option:checked').text();
    let provinceCode = $('#provinceCode').val();
    let city = $('#cityCode option:checked').text();
    let cityCode = $('#cityCode').val();
    let storeId = $('#storeId').val();
    let siteId = $('#siteId').val();
    let site = $('#siteId option:checked').text();
    let type = $('#type').val();
    let half = $('#half').val();
    let date = $('#time').val();
    var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
    var values = "";
    for (var i = 0; i < elements.length; i++) {
        values += elements[i].innerText + ",";
    }
// 去除最后一个逗号
    values = values.slice(0, -1);
    console.log(values);
    var times = values;
    let cash = $('#cash').val();
    let play = $('#play').val();
    let booker = $('#booker').val();
    let phone = $('#phone').val();
    // if(null == provinceCode || '' == provinceCode){
    //     Feng.error("所在省不能为空");
    //     return
    // }
    // if(null == cityCode || '' == cityCode){
    //     Feng.error("所在市不能为空");
    //     return
    // }
    // if(null == storeId || '' == storeId){
    //     Feng.error("所属门店不能为空");
    //     return
    // }
    // if(null == coursePackageTypeId || '' == coursePackageTypeId){
    //     Feng.error("课程类型不能为空");
    //     return
    // }
    // if(null == name || '' == name){
    //     Feng.error("课包名称不能为空");
    //     return
    // }
    // if(null == siteId || '' == siteId){
    //     Feng.error("上课场地不能为空");
    //     return
    // }
    // if(null == coachId || '' == coachId){
    //     Feng.error("授课教师不能为空");
    //     return
    // }
    //
    // classWeeks = classWeeks.substring(0, classWeeks.length - 1);
    //
    // if(null == coverDrawing || '' == coverDrawing){
    //     Feng.error("课包封面不能为空");
    //     return
    // }
    // if(null == detailDrawing || '' == detailDrawing){
    //     Feng.error("详情页不能为空");
    //     return
    // }
    // if(null == introduceDrawing || '' == introduceDrawing){
    //     Feng.error("课包介绍不能为空");
    //     return
    // }
    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/ball/ordersave", function (data) {
        if(data.code == 200){
            Feng.success("添加成功!");
            CoursePackageInfo.close();
            window.parent.CoursePackage.table.refresh();
        }else{
            Feng.error(data.msg);
        }
    }, function (data) {
        Feng.error("添加失败!" + data.responseJSON.message + "!");
    });
    ajax.set("province",province)
    ajax.set("provinceCode",provinceCode);
    ajax.set("city",city);
    ajax.set("cityCode",cityCode);
    ajax.set("storeId",storeId);
    ajax.set("isHalf",type);
    ajax.set("siteId",siteId);
    ajax.set("nextName",site);
    ajax.set("halfName",half);
    ajax.set("date",date);
    ajax.set("times",times);
    ajax.set("money",cash+","+play);
    ajax.set("booker",booker);
    ajax.set("phone",phone);
    ajax.start();
};
/**
 * 提交修改
 */
CoursePackageInfo.editSubmit = function () {
    let id = $('#id').val();
    let province = $('#provinceCode option:checked').text();
    let provinceCode = $('#provinceCode').val();
    let city = $('#cityCode option:checked').text();
    let cityCode = $('#cityCode').val();
    let storeId = $('#storeId').val();
    let coursePackageTypeId = $('#coursePackageTypeId').val();
    let name = $('#name').val();
    let siteId = $('#siteId').val();
    let coachId = $('#coachId').val();
    let maxSubscribeNumber = $('#maxSubscribeNumber').val();
    let codeTime = $('#codeTime').val();
    let type = $('#type').val();
    let holitime = $('#holitime').val();
    var inputElements = document.querySelectorAll('input[name="classStartTime"]');
    let classStartTime =  JSON.stringify(Array.from(inputElements).map(function(element) {
        return element.value;
    }))
    // let classStartTime = $('#classStartTime').val();
    let classWeeks = '';
    $('input[name="classWeeks"]:checked').each(function (index, e) {
        classWeeks += $(e).val() + ";";
    })
    let coverDrawing = $('#coverDrawing').val();
    let detailDrawing = $('#detailDrawing').val();
    let introduceDrawing = $('#introduceDrawing').val();
    let sort = $('#sort').val();
    let validDays = $('#validDays').val();
    // let counpons = $($(e).find(".counpons")).val();
    let price = [];
    $('#price>.form-group').each(function (i, e) {
        let classHours = $($(e).find(".classNumber_span input[class='classNumber']")[0]).val();
        let cash = $($(e).find(".cash_span input[class='cash']")[0]).val();
        let paiCoin = $($(e).find(".paiCoin_span input[class='paiCoin']")[0]).val();
        let counpons = $($(e).find(".counpons")).val();
        price.push({
            classHours: classHours,
            cashPayment: typeof cash == "undefined" ? 0 : cash,
            playPaiCoin: typeof paiCoin == "undefined" ? 0 : paiCoin,
            couponIds: typeof counpons == "undefined" ? 0 : counpons
        })
    });
    if(null == provinceCode || '' == provinceCode){
        Feng.error("所在省不能为空");
        return
    }
    if(null == cityCode || '' == cityCode){
        Feng.error("所在市不能为空");
        return
    }
    if(null == storeId || '' == storeId){
        Feng.error("所属门店不能为空");
        return
    }
    if(null == coursePackageTypeId || '' == coursePackageTypeId){
        Feng.error("课程类型不能为空");
        return
    }
    if(null == name || '' == name){
        Feng.error("课包名称不能为空");
        return
    }
    if(null == siteId || '' == siteId){
        Feng.error("上课场地不能为空");
        return
    }
    if(null == coachId || '' == coachId){
        Feng.error("授课教师不能为空");
        return
    }
    // if(null == maxSubscribeNumber || '' == maxSubscribeNumber){
    //     Feng.error("最多预约人数不能为空");
    //     return
    // }
    // if(null == codeTime || '' == codeTime){
    //     Feng.error("扣除课时不能为空");
    //     return
    // }
    // if(null == classStartTime || '' == classStartTime){
    //     Feng.error("上课时间不能为空");
    //     return
    // }
    // if(null == classWeeks || '' == classWeeks){
    //     Feng.error("周不能为空");
    //     return
    // }
    classWeeks = classWeeks.substring(0, classWeeks.length - 1);
    if(null == coverDrawing || '' == coverDrawing){
        Feng.error("课包封面不能为空");
        return
    }
    if(null == detailDrawing || '' == detailDrawing){
        Feng.error("详情页不能为空");
        return
    }
    if(null == introduceDrawing || '' == introduceDrawing){
        Feng.error("课包介绍不能为空");
        return
    }
    // if(null == validDays || '' == validDays){
    //     Feng.error("课时有效期不能为空");
    //     return
    // }
    let obj = {
        id: id,
        province: province,
        provinceCode: provinceCode,
        city: city,
        cityCode: cityCode,
        storeId: storeId,
        coursePackageTypeId: coursePackageTypeId,
        name: name,
        siteId: siteId,
        coachId: coachId,
        maxSubscribeNumber: maxSubscribeNumber,
        codeTime: codeTime,
        type:type,
        classStartTime: classStartTime,
        // classEndTime: classStartTime.split(" - ")[1],
        classWeeks: classWeeks,
        coverDrawing: coverDrawing,
        detailDrawing: detailDrawing,
        introduceDrawing: introduceDrawing,
        sort: sort,
        validDays: validDays,
        coursePackagePaymentConfig: JSON.stringify(price),
        holitime:holitime
    }
    console.log("======="+obj)
    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/coursePackage/updateCoursePackage", function (data) {
        if(data.code == 200){
            Feng.success("编辑成功!");
            CoursePackageInfo.close();
            window.parent.CoursePackage.table.refresh();
        }else{
            Feng.error(data.msg);
        }
    }, function (data) {
        Feng.error("编辑失败!" + data.responseJSON.message + "!");
    });
    ajax.set(obj);
    ajax.start();
};
function queryStore() {
    let ajax = new $ax(Feng.ctxPath + "/coursePackage/queryStore", function (data) {
        let htmlStr = '';
        for (let i = 0; i < data.length; i++) {
            htmlStr += '<option value="' + data[i].id + '">' + data[i].name + '</option>'
        }
        $('#storeId').html(htmlStr);
        querySite();
    }, function (data) {
        Feng.error("获取失败!" + data.responseJSON.message + "!");
    });
    ajax.set("cityCode", $('#cityCode').val());
    ajax.start();
}
function querySite(){
    let ajax = new $ax(Feng.ctxPath + "/coursePackage/querySite", function (data) {
        let htmlStr = '';
        for (let i = 0; i < data.length; i++) {
            htmlStr += '<option value="' + data[i].id + '">' + data[i].name + '</option>'
        }
        $('#siteId').html(htmlStr);
    }, function (data) {
        Feng.error("获取失败!" + data.responseJSON.message + "!");
    });
    ajax.set("storeId", $('#storeId').val());
    ajax.start();
}
function queryCoach(){
    let ajax = new $ax(Feng.ctxPath + "/coursePackage/queryCoach", function (data) {
        let htmlStr = '';
        for (let i = 0; i < data.length; i++) {
            htmlStr += '<option value="' + data[i].id + '">' + data[i].name + '</option>'
        }
        $('#coachId').html(htmlStr);
    }, function (data) {
        Feng.error("获取失败!" + data.responseJSON.message + "!");
    });
    ajax.set("cityCode", $('#cityCode').val());
    ajax.start();
}
function addPrice(y){
    console.log("===="+y)
    let cash = false;
    let paiCoin = false;
    $('input[name="payType"]:checked').each(function (index, e) {
        let v = $(e).val();
        if(v == 1){
            cash = true;
        }
        if(v == 2){
            paiCoin = true;
        }
    })
    var i =  $('#price > div').length+1
    let htmlStr = ''
    if (y===1){
        htmlStr +=   '<div class="form-group">\n' +
            '                        <label class="col-sm-3 control-label">*课时数:</label>\n' +
            '                        <div class="col-sm-8">\n' +
            '                            <span class="classNumber_span"><input class="classNumber" type="number" min="0" placeholder="请输入" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;">&nbsp;&nbsp;&nbsp;&nbsp;</span> <span class="cash_span">\n';
    }
    if (y===2){
        htmlStr +=   '<div class="form-group">\n' +
            '                        <label class="col-sm-3 control-label"></label>\n' +
            '                        <div class="col-sm-8">\n' +
            '                            <span class="classNumber_span" hidden="hidden"><input class="classNumber" type="number" min="0" placeholder="请输入" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;">&nbsp;&nbsp;&nbsp;&nbsp;</span> <span class="cash_span">\n';
    }
        '<div class="form-group">\n' +
        '                        <label class="col-sm-3 control-label">*课时数:</label>\n' +
        '                        <div class="col-sm-8">\n' +
        '                            <span class="classNumber_span"><input class="classNumber" type="number" min="0" placeholder="请输入" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;">&nbsp;&nbsp;&nbsp;&nbsp;</span> <span class="cash_span">\n';
        if(cash){
            htmlStr += '现金支付:<input class="cash" type="number" min="0" placeholder="请输入金额" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> ¥&nbsp;&nbsp;&nbsp;&nbsp;\n';
        }
        htmlStr += '</span> <span class="paiCoin_span">';
        if(paiCoin){
            htmlStr += '玩湃币支付:<input class="paiCoin" type="number" min="0" placeholder="请输入金额" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> 币&nbsp;&nbsp;&nbsp;&nbsp;\n';
        }
    htmlStr += '<button type="button" class="btn btn-info " onclick="CoursePackageInfo.openDia('+i+')" id="ensure">\n' +
        '    <i class="fa fa-check"></i>&nbsp;优惠卷\n' +
        '</button>';
    htmlStr += '</span> <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice(this)"></i>\n' +
        '</div>\n' +'<input type="text" hidden="hidden" class = "counpons" id = "counpons'+i+'" >'+i+
        '</div>';
    $('#price').append(htmlStr);
}
function removePrice(e){
    $(e).parent('div').parent('div').remove();
}
function removePrice1(e){
    $(e).parent('div').remove();
}
$(function () {
    $('#provinceCode').change(function () {
        let ajax = new $ax(Feng.ctxPath + "/coursePackage/queryCity", function (data) {
            let htmlStr = '';
            for (let i = 0; i < data.length; i++) {
                htmlStr += '<option value="' + data[i].code + '">' + data[i].name + '</option>'
            }
            $('#cityCode').html(htmlStr);
            queryStore();
            queryCoach();
        }, function (data) {
            Feng.error("获取失败!" + data.responseJSON.message + "!");
        });
        ajax.set("code", $(this).val());
        ajax.start();
    })
    $('#cityCode').change(function () {
        queryStore();
    })
    $('#storeId').change(function () {
        querySite();
    })
    $('input[name="payType"]').click(function () {
        $('input[name="payType"]').each(function (index, e) {
            let v = $(e).val();
            if(v == 1) {
                if (e.checked) {
                    $('span[class="cash_span"]').each(function (index, e) {
                        $(e).html('现金支付:<input class="cash" type="number" min="0" placeholder="请输入金额" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> ¥&nbsp;&nbsp;&nbsp;&nbsp;');
                    })
                } else {
                    $('span[class="cash_span"]').each(function (index, e) {
                        $(e).html('');
                    })
                }
            }
            if(v == 2){
                if (e.checked) {
                    $('span[class="paiCoin_span"]').each(function (index, e) {
                        $(e).html('玩湃币支付:<input class="paiCoin" type="number" min="0" placeholder="请输入金额" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> 币&nbsp;&nbsp;&nbsp;&nbsp;')
                    })
                } else {
                    $('span[class="paiCoin_span"]').each(function (index, e) {
                        $(e).html('');
                    })
                }
            }
        })
    })
});
cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js
@@ -173,6 +173,7 @@
        return;
    }
    var shopId = $("#shopId").val();
    var shopIdString = shopId.join(",");
    var name = $("#name").val();
    if(name==""){
        Feng.info("请输入赛事名称");
@@ -242,7 +243,7 @@
    });
    ajax.set("provinceCode",pCode);
    ajax.set("cityCode",cCode);
    ajax.set("storeId",shopId);
    ajax.set("storeId",shopIdString);
    ajax.set("name",name);
    ajax.set("sTime",startTime);
    ajax.set("eTime",endTime);
cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java
@@ -7,10 +7,13 @@
import com.dsh.other.model.BannerVo;
import com.dsh.other.service.GameService;
import com.dsh.other.service.IBannerService;
import com.dsh.other.service.IRegionService;
import com.dsh.other.service.TGameConfigService;
import com.dsh.other.util.ResultUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.models.auth.In;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -18,6 +21,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * @author zhibing.pu
@@ -36,12 +40,51 @@
        return games;
    }
    @Autowired
    private IRegionService regionService;
    @ResponseBody
    @PostMapping("/save")
    public void save(@RequestBody Game game){
    public Integer save(@RequestBody Game game){
        Region city = regionService.getOne(new QueryWrapper<Region>().eq("code", game.getCityCode()));
        game.setCity(city.getName());
        Region province = regionService.getOne(new QueryWrapper<Region>().eq("code", game.getProvinceCode()));
        game.setProvince(province.getName());
        gameService.save(game);
         System.out.println("==========="+game);
         return  game.getId();
    }
    @Autowired
    private TGameConfigService config;
    @ResponseBody
    @PostMapping("/saveConfig")
    public void saveConfig(@RequestBody List<TGameConfig> gameConfigList){
        System.out.println("=======gameConfigList===="+gameConfigList);
        config.saveBatch(gameConfigList);
//        return  game.getId();
    }
    @ResponseBody
    @PostMapping("/queryGame")
    public Game queryGame(@RequestParam Integer id){
       return gameService.getById(id);
//        return  game.getId();
    }
    @ResponseBody
    @PostMapping("/listorder")
    public List<Map<String, Object>>  listorder(@RequestBody BookingQuery bookingQuery){
        return gameService.orderlist(bookingQuery);
//        return  game.getId();
    }
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
@@ -118,6 +118,33 @@
        }
    }
    /**
     * 添加场地管理
     * @return
     */
    @RequestMapping("/base/site/addSiteBooking")
    public Object addSiteBooking(@RequestBody SiteBooking siteBooking){
        if(siteBooking.getId()!= null ){
            return siteBookingService.updateById(siteBooking);
        }else {
            return siteBookingService.save(siteBooking);
        }
    }
    @RequestMapping("/base/site/listById")
    public Site listById(@RequestParam("id") Integer id){
        Site byId = siteService.getById(id);
        return byId;
    }
    @RequestMapping("/base/site/listBooks")
    public  List<SiteBooking> listBooks(@RequestParam("id") Integer id){
        List<SiteBooking> siteId = siteBookingService.list(new QueryWrapper<SiteBooking>().eq("siteId", id));
        return siteId;
    }
    @ResponseBody
    @PostMapping("/base/site/querySiteType")
    @ApiOperation(value = "获取场地类型", tags = {"用户—预约场地"})
cloud-server-other/src/main/java/com/dsh/other/entity/BookingQuery.java
New file
@@ -0,0 +1,19 @@
package com.dsh.other.entity;
import lombok.Data;
@Data
public class BookingQuery {
    String provinceCode;
    String cityCode;
    String store;
    String peopleName;
    String phone;
    String date;
    Integer state;
    Integer payMethod;
}
cloud-server-other/src/main/java/com/dsh/other/entity/Game.java
@@ -20,6 +20,7 @@
    private Integer id;
    @TableField("operationId")
    private Integer operationId;
    @TableField(exist = false)
    private String operation;
    @TableField("province")
    private String province;
@@ -31,10 +32,11 @@
    private String cityCode;
    @TableField("storeId")
    private Integer storeId;
    @TableField(exist = false)
    private String store;
    @TableField("siteId")
    private Integer siteId;
    @TableField(exist = false)
    private String site;
    @TableField("blue")
cloud-server-other/src/main/java/com/dsh/other/entity/TGameConfig.java
@@ -61,8 +61,8 @@
     */
    @TableField("gameId")
    private Integer gameId;
    @TableField("otherId")
    private Integer otherId;
    @Override
    protected Serializable pkVal() {
        return this.id;
cloud-server-other/src/main/java/com/dsh/other/mapper/GameMapper.java
@@ -2,10 +2,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dsh.other.entity.BallQueryDto;
import com.dsh.other.entity.BookingQuery;
import com.dsh.other.entity.Game;
import com.dsh.other.entity.Notice;
import java.util.List;
import java.util.Map;
/**
 * <p>
@@ -18,4 +20,6 @@
public interface GameMapper extends BaseMapper<Game> {
    List<Game> queryAll(BallQueryDto ballQueryDto);
    List<Map<String, Object>> orderlist(BookingQuery bookingQuery);
}
cloud-server-other/src/main/java/com/dsh/other/service/GameService.java
@@ -2,10 +2,12 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.other.entity.BallQueryDto;
import com.dsh.other.entity.BookingQuery;
import com.dsh.other.entity.Game;
import com.dsh.other.entity.Protocol;
import java.util.List;
import java.util.Map;
/**
 * @author zhibing.pu
@@ -13,4 +15,6 @@
 */
public interface GameService extends IService<Game> {
    List<Game> queryAll(BallQueryDto ballQueryDto);
    List<Map<String, Object>> orderlist(BookingQuery bookingQuery);
}
cloud-server-other/src/main/java/com/dsh/other/service/impl/GameServiceImpl.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsh.other.entity.BallQueryDto;
import com.dsh.other.entity.BookingQuery;
import com.dsh.other.entity.Game;
import com.dsh.other.entity.Notice;
import com.dsh.other.mapper.GameMapper;
@@ -11,6 +12,7 @@
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * <p>
@@ -27,4 +29,9 @@
    public List<Game> queryAll(BallQueryDto ballQueryDto) {
        return this.baseMapper.queryAll(ballQueryDto);
    }
    @Override
    public List<Map<String, Object>> orderlist(BookingQuery bookingQuery) {
        return this.baseMapper.orderlist(bookingQuery);
    }
}
cloud-server-other/src/main/resources/mapper/GameMapper.xml
@@ -31,4 +31,15 @@
    </select>
    <select id="orderlist" resultType="map">
        SELECT *,st.`name` as storeName,si.`name` as siteName,CONCAT(DATE_FORMAT(bk.startTime, '%Y-%m-%d %H:%i:%s'), ' - ', TIME_FORMAT(bk.endTime, '%H:%i:%s')) AS timeRange
        FROM t_site_booking bk
                 LEFT JOIN t_store st on bk.storeId = st.id
                 LEFT JOIN t_site si on bk.siteId = si.id
    </select>
</mapper>
logs/mb-cloud-management/2023-10/debug.2023-10-07.0.log117386460201400.tmp
New file
@@ -0,0 +1,79 @@
2023-10-07 10:04:22,469 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3234f74e, started on Sat Oct 07 08:49:39 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:05:53,995 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:04:33 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 10:07:24,264 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 10:06:03 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 10:22:23,717 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 10:07:28 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:24:10,440 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:22:45 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 10:26:19,281 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:24:14 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:30:41,568 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 10:26:26 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:31:52,915 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:30:48 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:34:33,275 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:31:58 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:57:27,183 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:34:36 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 10:58:13,976 [http-nio-5006-exec-2] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.other.BallClient.listorder] serviceId:[mb-cloud-other] message:[[500 Internal Server Error] during [POST] to [http://mb-cloud-other/listorder] [BallClient#listorder(BookingQuery)]: [{"code":"1","msg":"操作失败","data":null}]]
2023-10-07 10:58:18,246 [http-nio-5006-exec-3] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.other.BallClient.listorder] serviceId:[mb-cloud-other] message:[[500 Internal Server Error] during [POST] to [http://mb-cloud-other/listorder] [BallClient#listorder(BookingQuery)]: [{"code":"1","msg":"操作失败","data":null}]]
2023-10-07 10:58:33,368 [http-nio-5006-exec-4] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.other.BallClient.listorder] serviceId:[mb-cloud-other] message:[[500 Internal Server Error] during [POST] to [http://mb-cloud-other/listorder] [BallClient#listorder(BookingQuery)]: [{"code":"1","msg":"操作失败","data":null}]]
2023-10-07 10:59:02,597 [http-nio-5006-exec-5] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.other.BallClient.listorder] serviceId:[mb-cloud-other] message:[[500 Internal Server Error] during [POST] to [http://mb-cloud-other/listorder] [BallClient#listorder(BookingQuery)]: [{"code":"1","msg":"操作失败","data":null}]]
2023-10-07 10:59:51,368 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 10:57:35 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:22:05,394 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 10:59:58 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:23:50,215 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 15:22:13 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:25:10,547 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 15:23:54 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 15:26:33,318 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 15:25:14 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:28:17,566 [http-nio-5006-exec-5] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.activity.CouponClient.getCouponExamineListOfSearch] serviceId:[mb-cloud-activity] message:[Error while extracting response for type [java.util.List<java.util.Map<java.lang.String, java.lang.Object>>] and content type [application/json]; nested exception is org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize instance of `java.util.ArrayList<java.util.Map<java.lang.String,java.lang.Object>>` out of START_OBJECT token; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.util.ArrayList<java.util.Map<java.lang.String,java.lang.Object>>` out of START_OBJECT token
 at [Source: (PushbackInputStream); line: 1, column: 1]]
2023-10-07 15:29:23,546 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 15:26:40 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:32:36,756 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 15:29:27 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:36:12,483 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 15:32:40 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 15:39:18,640 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 15:36:16 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 16:02:56,756 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 15:39:23 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 16:05:01,636 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:03:03 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:11:18,273 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:05:05 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:14:10,192 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:11:22 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:14:31,810 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:14:13 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:17:02,515 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:14:35 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:17:18,494 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:17:06 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:18:40,704 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:17:22 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:19:44,311 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:18:44 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:21:49,158 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3234f74e, started on Sat Oct 07 16:19:48 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:22:33,610 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 16:21:54 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 16:23:24,059 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:22:37 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:24:40,590 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:23:27 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:25:34,814 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:24:44 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:26:37,875 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:25:38 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:27:52,826 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:26:41 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:30:52,615 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:27:56 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:33:00,881 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:30:56 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:34:47,898 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:33:07 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:36:06,645 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:34:51 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:40:07,849 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:36:11 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:41:27,309 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:40:24 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 16:43:05,729 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:41:30 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:52:04,274 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 16:43:18 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 16:54:07,502 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:52:11 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:54:59,117 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 16:54:11 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 16:56:04,700 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:55:02 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 17:34:02,105 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 16:56:08 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 17:35:48,103 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 17:34:12 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 17:36:42,918 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 17:35:54 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 17:38:09,147 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 17:36:46 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 17:56:43,048 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 17:47:41 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 17:58:44,509 [http-nio-5006-exec-2] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.course.CoursePackageClient.queryCoursePackageLists] serviceId:[mb-cloud-course] message:[Read timed out executing POST http://mb-cloud-course/coursePackage/queryCoursePackageLists]
2023-10-07 17:58:47,966 [http-nio-5006-exec-5] ERROR [c.m.c.c.sentinel.fallback.DefaultFeignFallback] DefaultFeignFallback.java:54 - FunFeignFallback:[com.dsh.course.feignClient.account.AppUserClient.queryWebUser] serviceId:[mb-cloud-account] message:[Read timed out executing POST http://mb-cloud-account/student/webStudentList]
2023-10-07 17:58:52,954 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 17:57:10 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 18:02:09,935 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 17:58:58 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:03:57,871 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@40e10ff8, started on Sat Oct 07 18:02:25 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 18:08:17,719 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:04:06 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:10:54,821 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 18:08:55 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 18:16:49,197 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 18:11:12 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 18:19:07,066 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 18:17:24 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 18:30:29,735 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 18:19:26 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:31:27,179 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:30:33 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:33:12,099 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 18:31:30 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:35:24,229 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:33:15 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:38:46,012 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 18:35:27 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:40:35,057 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@38be305c, started on Sat Oct 07 18:38:51 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@6e0f5f7f
2023-10-07 18:41:54,940 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:40:38 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:44:37,247 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:41:58 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:45:55,416 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 18:44:41 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:46:58,276 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:45:59 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:47:40,029 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3234f74e, started on Sat Oct 07 18:47:02 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:48:15,963 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@5ed731d0, started on Sat Oct 07 18:47:43 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709
2023-10-07 18:53:47,268 [SpringContextShutdownHook] DEBUG [cn.mb.cloud.common.core.util.SpringContextHolder] SpringContextHolder.java:59 - 清除SpringContextHolder中的ApplicationContext:org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@269f4bad, started on Sat Oct 07 18:48:19 GMT+08:00 2023, parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@2805d709