瀏覽代碼

新增showlist功能

Jack 10 月之前
父節點
當前提交
4668d55a66
共有 100 個文件被更改,包括 3054 次插入157 次删除
  1. 0 1
      .idea/inspectionProfiles/Project_Default.xml
  2. 135 5
      .idea/workspace.xml
  3. 1 0
      jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java
  4. 0 5
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/service/IUploadService.java
  5. 0 53
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/service/impl/UploadServiceImpl.java
  6. 0 5
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/xml/OkkiSiteStatusChangeLogMapper.xml
  7. 3 3
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/controller/OkkiAccountApiController.java
  8. 3 3
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/controller/OkkiAccountController.java
  9. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/entity/OkkiAccount.java
  10. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/mapper/OkkiAccountMapper.java
  11. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/mapper/xml/OkkiAccountMapper.xml
  12. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/service/IOkkiAccountService.java
  13. 4 4
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/service/impl/OkkiAccountServiceImpl.java
  14. 3 3
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/controller/OkkiBlogController.java
  15. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/entity/OkkiBlog.java
  16. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/mapper/OkkiBlogMapper.java
  17. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/mapper/xml/OkkiBlogMapper.xml
  18. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/service/IOkkiBlogService.java
  19. 5 7
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/service/impl/OkkiBlogServiceImpl.java
  20. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/controller/UploadController.java
  21. 8 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/service/IUploadService.java
  22. 94 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/service/impl/UploadServiceImpl.java
  23. 3 3
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/controller/OkkiExternalLinkController.java
  24. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/entity/OkkiExternalLink.java
  25. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/mapper/OkkiExternalLinkMapper.java
  26. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/mapper/xml/OkkiExternalLinkMapper.xml
  27. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/service/IOkkiExternalLinkService.java
  28. 5 5
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/service/impl/OkkiExternalLinkServiceImpl.java
  29. 428 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/controller/OkkiShowlistController.java
  30. 72 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiAdvantage.java
  31. 60 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiFaq.java
  32. 72 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiHighlight.java
  33. 60 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiKeywords.java
  34. 72 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiKeywordsSeries.java
  35. 76 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiOverview.java
  36. 72 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiProductList.java
  37. 72 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiRecommendedProducts.java
  38. 64 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiReview.java
  39. 154 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiShowlist.java
  40. 68 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiShowlistBlog.java
  41. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiAdvantageMapper.java
  42. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiFaqMapper.java
  43. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiHighlightMapper.java
  44. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiKeywordsMapper.java
  45. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiKeywordsSeriesMapper.java
  46. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiOverviewMapper.java
  47. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiProductListMapper.java
  48. 31 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiRecommendedProductsMapper.java
  49. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiReviewMapper.java
  50. 32 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiShowlistBlogMapper.java
  51. 14 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiShowlistMapper.java
  52. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiAdvantageMapper.xml
  53. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiFaqMapper.xml
  54. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiHighlightMapper.xml
  55. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiKeywordsMapper.xml
  56. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiKeywordsSeriesMapper.xml
  57. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiOverviewMapper.xml
  58. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiProductListMapper.xml
  59. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiRecommendedProductsMapper.xml
  60. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiReviewMapper.xml
  61. 16 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiShowlistBlogMapper.xml
  62. 5 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiShowlistMapper.xml
  63. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiAdvantageService.java
  64. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiFaqService.java
  65. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiHighlightService.java
  66. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiKeywordsSeriesService.java
  67. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiKeywordsService.java
  68. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiOverviewService.java
  69. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiProductListService.java
  70. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiRecommendedProductsService.java
  71. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiReviewService.java
  72. 22 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiShowlistBlogService.java
  73. 76 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiShowlistService.java
  74. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiAdvantageServiceImpl.java
  75. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiFaqServiceImpl.java
  76. 28 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiHighlightServiceImpl.java
  77. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiKeywordsSeriesServiceImpl.java
  78. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiKeywordsServiceImpl.java
  79. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiOverviewServiceImpl.java
  80. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiProductListServiceImpl.java
  81. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiRecommendedProductsServiceImpl.java
  82. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiReviewServiceImpl.java
  83. 27 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiShowlistBlogServiceImpl.java
  84. 271 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiShowlistServiceImpl.java
  85. 116 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/vo/OkkiShowlistPage.java
  86. 3 3
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/controller/OkkiSiteController.java
  87. 4 4
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/controller/ShopApiController.java
  88. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/dto/ParamDto.java
  89. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/entity/OkkiSite.java
  90. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/entity/OkkiSiteStatusChangeLog.java
  91. 2 5
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/OkkiSiteMapper.java
  92. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/OkkiSiteStatusChangeLogMapper.java
  93. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/xml/OkkiSiteMapper.xml
  94. 5 0
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/xml/OkkiSiteStatusChangeLogMapper.xml
  95. 1 1
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/param/ChangeSiteStatusParam.java
  96. 3 3
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/IOkkiSiteService.java
  97. 2 2
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/IOkkiSiteStatusChangeLogService.java
  98. 8 8
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/impl/OkkiSiteServiceImpl.java
  99. 4 4
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/impl/OkkiSiteStatusChangeLogServiceImpl.java
  100. 11 5
      jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/utils/HttpClientUtils.java

+ 0 - 1
.idea/inspectionProfiles/Project_Default.xml

@@ -1,7 +1,6 @@
 <component name="InspectionProjectProfileManager">
   <profile version="1.0">
     <option name="myName" value="Project Default" />
-    <inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
     <inspection_tool class="JsonStandardCompliance" enabled="false" level="ERROR" enabled_by_default="false" />
     <inspection_tool class="Stylelint" enabled="true" level="ERROR" enabled_by_default="true" />
   </profile>

+ 135 - 5
.idea/workspace.xml

@@ -5,7 +5,126 @@
   </component>
   <component name="ChangeListManager">
     <list default="true" id="ed63665b-8c5d-41ac-a75b-7a0cfc2d6ec5" name="Default Changelist" comment="新增状态变更记录">
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/service/IUploadService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/service/impl/UploadServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/controller/OkkiShowlistController.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiAdvantage.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiFaq.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiHighlight.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiKeywords.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiKeywordsSeries.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiOverview.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiProductList.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiRecommendedProducts.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiReview.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiShowlist.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiShowlistBlog.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiAdvantageMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiFaqMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiHighlightMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiKeywordsMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiKeywordsSeriesMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiOverviewMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiProductListMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiRecommendedProductsMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiReviewMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiShowlistBlogMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiShowlistMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiAdvantageMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiFaqMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiHighlightMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiKeywordsMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiKeywordsSeriesMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiOverviewMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiProductListMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiRecommendedProductsMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiReviewMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiShowlistBlogMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiShowlistMapper.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiAdvantageService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiFaqService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiHighlightService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiKeywordsSeriesService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiKeywordsService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiOverviewService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiProductListService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiRecommendedProductsService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiReviewService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiShowlistBlogService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiShowlistService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiAdvantageServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiFaqServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiHighlightServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiKeywordsSeriesServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiKeywordsServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiOverviewServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiProductListServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiRecommendedProductsServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiReviewServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiShowlistBlogServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiShowlistServiceImpl.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/vo/OkkiShowlistPage.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/utils/UploadUtils.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/OkkiShowlist.api.ts" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/OkkiShowlist.data.ts" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/OkkiShowlistList.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/V20240514_1__menu_insert_OkkiShowlist.sql" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiBlockTable.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiFaqForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiHighlightForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiKeywordsForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiKeywordsSeriesForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiOverviewForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiProductListForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiRecommendedProductsForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiReviewForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiShowlistBlogForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiShowlistForm.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/jeecgboot-vue3/src/views/okki/showlist/components/OkkiShowlistModal.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/controller/OkkiAccountApiController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/controller/OkkiAccountApiController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/controller/OkkiAccountController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/controller/OkkiAccountController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/entity/OkkiAccount.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/entity/OkkiAccount.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/mapper/OkkiAccountMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/mapper/OkkiAccountMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/mapper/xml/OkkiAccountMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/mapper/xml/OkkiAccountMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/service/IOkkiAccountService.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/service/IOkkiAccountService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/service/impl/OkkiAccountServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/service/impl/OkkiAccountServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/controller/OkkiBlogController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/controller/OkkiBlogController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/entity/OkkiBlog.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/entity/OkkiBlog.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/mapper/OkkiBlogMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/mapper/OkkiBlogMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/mapper/xml/OkkiBlogMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/mapper/xml/OkkiBlogMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/service/IOkkiBlogService.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/service/IOkkiBlogService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/service/impl/OkkiBlogServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/service/impl/OkkiBlogServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/controller/UploadController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/controller/UploadController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/service/IUploadService.java" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/service/impl/UploadServiceImpl.java" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/controller/OkkiExternalLinkController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/controller/OkkiExternalLinkController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/entity/OkkiExternalLink.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/entity/OkkiExternalLink.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/mapper/OkkiExternalLinkMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/mapper/OkkiExternalLinkMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/mapper/xml/OkkiExternalLinkMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/mapper/xml/OkkiExternalLinkMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/service/IOkkiExternalLinkService.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/service/IOkkiExternalLinkService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/service/impl/OkkiExternalLinkServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/service/impl/OkkiExternalLinkServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/controller/OkkiSiteController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/controller/OkkiSiteController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/controller/ShopApiController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/controller/ShopApiController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/dto/ParamDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/dto/ParamDto.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/entity/OkkiSite.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/entity/OkkiSite.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/entity/OkkiSiteStatusChangeLog.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/entity/OkkiSiteStatusChangeLog.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/OkkiSiteMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/OkkiSiteMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/OkkiSiteStatusChangeLogMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/OkkiSiteStatusChangeLogMapper.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/xml/OkkiSiteMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/xml/OkkiSiteMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/xml/OkkiSiteStatusChangeLogMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/xml/OkkiSiteStatusChangeLogMapper.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/param/ChangeSiteStatusParam.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/param/ChangeSiteStatusParam.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/IOkkiSiteService.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/IOkkiSiteService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/IOkkiSiteStatusChangeLogService.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/IOkkiSiteStatusChangeLogService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/impl/OkkiSiteServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/impl/OkkiSiteServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/impl/OkkiSiteStatusChangeLogServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/impl/OkkiSiteStatusChangeLogServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/utils/HttpClientUtils.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/utils/HttpClientUtils.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/utils/SignUtils.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/utils/SignUtils.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/CommonController.java" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/CommonController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml" beforeDir="false" afterPath="$PROJECT_DIR$/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -22,6 +141,7 @@
     <option name="RECENT_TEMPLATES">
       <list>
         <option value="Class" />
+        <option value="Vue Composition API Component" />
       </list>
     </option>
   </component>
@@ -51,6 +171,8 @@
   <component name="PropertiesComponent"><![CDATA[{
   "keyToString": {
     "Application.AESUtils.executor": "Run",
+    "Maven.jeecg-boot-base-core [clean].executor": "Run",
+    "Maven.jeecg-boot-base-core [install].executor": "Run",
     "Maven.jeecg-boot-parent [install].executor": "Run",
     "Maven.jeecg-module-system [clean].executor": "Run",
     "Maven.jeecg-module-system [install].executor": "Run",
@@ -64,7 +186,7 @@
     "Spring Boot.JeecgSystemApplication.executor": "Run",
     "git-widget-placeholder": "master",
     "kotlin-language-version-configured": "true",
-    "last_opened_file_path": "D:/ProjectsCode/okki-oms/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/xml",
+    "last_opened_file_path": "D:/ProjectsCode/okki-oms/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist",
     "node.js.detected.package.eslint": "true",
     "node.js.detected.package.stylelint": "true",
     "node.js.detected.package.tslint": "true",
@@ -75,9 +197,14 @@
     "project.structure.last.edited": "Modules",
     "project.structure.proportion": "0.15",
     "project.structure.side.proportion": "0.2",
-    "settings.editor.selected.configurable": "editor.preferences.import",
+    "settings.editor.selected.configurable": "preferences.pluginManager",
     "ts.external.directory.path": "D:\\ProjectsCode\\okki-oms\\jeecgboot-vue3\\node_modules\\typescript\\lib",
     "vue.rearranger.settings.migration": "true"
+  },
+  "keyToStringList": {
+    "vue.recent.templates": [
+      "Vue Composition API Component"
+    ]
   }
 }]]></component>
   <component name="ReactorSettings">
@@ -85,11 +212,11 @@
   </component>
   <component name="RecentsManager">
     <key name="CopyFile.RECENT_KEYS">
+      <recent name="D:\ProjectsCode\okki-oms\jeecg-boot\jeecg-module-system\jeecg-system-biz\src\main\java\org\jeecg\modules\okki\showlist" />
+      <recent name="D:\ProjectsCode\okki-oms\jeecgboot-vue3\src\views\okki\showlist" />
+      <recent name="D:\ProjectsCode\okki-oms\jeecg-boot\jeecg-module-system\jeecg-system-biz\src\main\java\org\jeecg\modules\api\okki\showlist" />
       <recent name="D:\ProjectsCode\okki-oms\jeecg-boot\jeecg-module-system\jeecg-system-biz\src\main\java\org\jeecg\modules\api\okki\site\mapper\xml" />
       <recent name="D:\ProjectsCode\okki-oms\jeecgboot-vue3\src\views\okki\site" />
-      <recent name="D:\ProjectsCode\okki-oms\jeecgboot-vue3\src\views\okki\site\components" />
-      <recent name="D:\ProjectsCode\okki-oms\jeecgboot-vue3\public\resource\img" />
-      <recent name="D:\ProjectsCode\okki-oms\jeecgboot-vue3\src\assets\images" />
     </key>
     <key name="CopyClassDialog.RECENTS_KEY">
       <recent name="org.jeecg.modules.api.okki.site.service" />
@@ -149,6 +276,9 @@
       <workItem from="1714369560719" duration="12569000" />
       <workItem from="1714438904130" duration="33587000" />
       <workItem from="1714957905106" duration="25834000" />
+      <workItem from="1715333910993" duration="2376000" />
+      <workItem from="1715391022847" duration="21115000" />
+      <workItem from="1715648405916" duration="9789000" />
     </task>
     <task id="LOCAL-00001" summary="增加添加站点对外接口">
       <option name="closed" value="true" />

+ 1 - 0
jeecg-boot/jeecg-boot-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java

@@ -218,6 +218,7 @@ public interface CommonConstant {
     String UPLOAD_TYPE_LOCAL = "local";
     String UPLOAD_TYPE_MINIO = "minio";
     String UPLOAD_TYPE_OSS = "alioss";
+    String UPLOAD_TYPE_THIRD = "third";
 
     /**
      * 文档上传自定义桶名称

+ 0 - 5
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/service/IUploadService.java

@@ -1,5 +0,0 @@
-package org.jeecg.modules.api.okki.common.service;
-
-public interface IUploadService {
-
-}

+ 0 - 53
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/service/impl/UploadServiceImpl.java

@@ -1,53 +0,0 @@
-package org.jeecg.modules.api.okki.common.service.impl;
-
-import com.alibaba.fastjson.JSONObject;
-import lombok.extern.slf4j.Slf4j;
-import org.jeecg.common.api.vo.Result;
-import org.jeecg.modules.api.okki.common.service.IUploadService;
-import org.jeecg.modules.api.okki.utils.HttpClientUtils;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Service;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.TreeMap;
-
-@Slf4j
-@Service
-public class UploadServiceImpl implements IUploadService {
-
-    @Value("${OKKI.BASE_URL}")
-    private String URL;
-
-    @Value("${OKKI.CLIENT_SECRET}")
-    private String CLIENT_SECRET;
-
-    public Result upload(Integer siteId, MultipartFile file) {
-        // 请求okki平台接口
-        Map<String, String> query = new TreeMap<>();
-        query.put("sign_method", "hmac-md5");
-        query.put("timestamp", String.valueOf(System.currentTimeMillis()));
-        query.put("site_id", String.valueOf(siteId));
-        query.put("method", "upload_file");
-        Map<String, Object> postData = new HashMap<>();
-        try {
-            String queryStr = HttpClientUtils.buildQueryString(query);
-            String body = HttpClientUtils.toJsonString(postData);
-            String signStr = queryStr + body;
-            query.put("signature", HttpClientUtils.generateHmacMD5(signStr, CLIENT_SECRET));
-            String okkiUrl = URL + "?" + HttpClientUtils.buildQueryString(query);
-            log.info("url:" + okkiUrl + ",body:" + body);
-            String res = HttpClientUtils.doPost(okkiUrl, body);
-            log.info(res);
-            JSONObject jsonObject= JSONObject.parseObject(res);
-            if (jsonObject.get("code").equals(0)) {
-                return Result.ok(jsonObject.get("msg"));
-            }else {
-                throw new RuntimeException(jsonObject.get("msg").toString());
-            }
-        } catch (Exception e) {
-            throw new RuntimeException(e);
-        }
-    }
-}

+ 0 - 5
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/xml/OkkiSiteStatusChangeLogMapper.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.jeecg.modules.api.okki.site.mapper.OkkiSiteStatusChangeLogMapper">
-
-</mapper>

+ 3 - 3
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/controller/OkkiAccountApiController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/controller/OkkiAccountApiController.java

@@ -1,10 +1,10 @@
-package org.jeecg.modules.api.okki.account.controller;
+package org.jeecg.modules.okki.account.controller;
 
 import lombok.extern.slf4j.Slf4j;
 import org.apache.http.HttpHeaders;
 import org.jeecg.common.api.vo.Result;
-import org.jeecg.modules.api.okki.account.entity.OkkiAccount;
-import org.jeecg.modules.api.okki.account.service.IOkkiAccountService;
+import org.jeecg.modules.okki.account.service.IOkkiAccountService;
+import org.jeecg.modules.okki.account.entity.OkkiAccount;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;

+ 3 - 3
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/controller/OkkiAccountController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/controller/OkkiAccountController.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.account.controller;
+package org.jeecg.modules.okki.account.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -11,8 +11,8 @@ import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.modules.api.okki.account.entity.OkkiAccount;
-import org.jeecg.modules.api.okki.account.service.IOkkiAccountService;
+import org.jeecg.modules.okki.account.service.IOkkiAccountService;
+import org.jeecg.modules.okki.account.entity.OkkiAccount;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/entity/OkkiAccount.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/entity/OkkiAccount.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.account.entity;
+package org.jeecg.modules.okki.account.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/mapper/OkkiAccountMapper.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/mapper/OkkiAccountMapper.java

@@ -1,7 +1,7 @@
-package org.jeecg.modules.api.okki.account.mapper;
+package org.jeecg.modules.okki.account.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.jeecg.modules.api.okki.account.entity.OkkiAccount;
+import org.jeecg.modules.okki.account.entity.OkkiAccount;
 
 /**
  * @Description: 小二账号

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/mapper/xml/OkkiAccountMapper.xml → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/mapper/xml/OkkiAccountMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.jeecg.modules.demo.account.mapper.OkkiAccountMapper">
+<mapper namespace="org.jeecg.modules.okki.account.mapper.OkkiAccountMapper">
 
 </mapper>

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/service/IOkkiAccountService.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/service/IOkkiAccountService.java

@@ -1,6 +1,6 @@
-package org.jeecg.modules.api.okki.account.service;
+package org.jeecg.modules.okki.account.service;
 
-import org.jeecg.modules.api.okki.account.entity.OkkiAccount;
+import org.jeecg.modules.okki.account.entity.OkkiAccount;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 /**

+ 4 - 4
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/account/service/impl/OkkiAccountServiceImpl.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/account/service/impl/OkkiAccountServiceImpl.java

@@ -1,9 +1,9 @@
-package org.jeecg.modules.api.okki.account.service.impl;
+package org.jeecg.modules.okki.account.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.jeecg.modules.api.okki.account.entity.OkkiAccount;
-import org.jeecg.modules.api.okki.account.mapper.OkkiAccountMapper;
-import org.jeecg.modules.api.okki.account.service.IOkkiAccountService;
+import org.jeecg.modules.okki.account.service.IOkkiAccountService;
+import org.jeecg.modules.okki.account.entity.OkkiAccount;
+import org.jeecg.modules.okki.account.mapper.OkkiAccountMapper;
 import org.springframework.stereotype.Service;
 
 

+ 3 - 3
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/controller/OkkiBlogController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/controller/OkkiBlogController.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.blog.controller;
+package org.jeecg.modules.okki.blog.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -11,8 +11,8 @@ import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.modules.api.okki.blog.entity.OkkiBlog;
-import org.jeecg.modules.api.okki.blog.service.IOkkiBlogService;
+import org.jeecg.modules.okki.blog.service.IOkkiBlogService;
+import org.jeecg.modules.okki.blog.entity.OkkiBlog;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/entity/OkkiBlog.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/entity/OkkiBlog.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.blog.entity;
+package org.jeecg.modules.okki.blog.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/mapper/OkkiBlogMapper.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/mapper/OkkiBlogMapper.java

@@ -1,7 +1,7 @@
-package org.jeecg.modules.api.okki.blog.mapper;
+package org.jeecg.modules.okki.blog.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.jeecg.modules.api.okki.blog.entity.OkkiBlog;
+import org.jeecg.modules.okki.blog.entity.OkkiBlog;
 
 /**
  * @Description: 博客

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/mapper/xml/OkkiBlogMapper.xml → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/mapper/xml/OkkiBlogMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.jeecg.modules.demo.blog.mapper.OkkiBlogMapper">
+<mapper namespace="org.jeecg.modules.okki.blog.mapper.OkkiBlogMapper">
 
 </mapper>

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/service/IOkkiBlogService.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/service/IOkkiBlogService.java

@@ -1,6 +1,6 @@
-package org.jeecg.modules.api.okki.blog.service;
+package org.jeecg.modules.okki.blog.service;
 
-import org.jeecg.modules.api.okki.blog.entity.OkkiBlog;
+import org.jeecg.modules.okki.blog.entity.OkkiBlog;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 /**

+ 5 - 7
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/blog/service/impl/OkkiBlogServiceImpl.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/blog/service/impl/OkkiBlogServiceImpl.java

@@ -1,12 +1,12 @@
-package org.jeecg.modules.api.okki.blog.service.impl;
+package org.jeecg.modules.okki.blog.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.jeecg.modules.api.okki.blog.entity.OkkiBlog;
-import org.jeecg.modules.api.okki.blog.mapper.OkkiBlogMapper;
-import org.jeecg.modules.api.okki.blog.service.IOkkiBlogService;
-import org.jeecg.modules.api.okki.utils.HttpClientUtils;
+import org.jeecg.modules.okki.blog.entity.OkkiBlog;
+import org.jeecg.modules.okki.blog.mapper.OkkiBlogMapper;
+import org.jeecg.modules.okki.blog.service.IOkkiBlogService;
+import org.jeecg.modules.okki.utils.HttpClientUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
@@ -50,8 +50,6 @@ public class OkkiBlogServiceImpl extends ServiceImpl<OkkiBlogMapper, OkkiBlog> i
             String queryStr = HttpClientUtils.buildQueryString(query);
             postData.put("title", okkiBlog1.getTitle());
             postData.put("pic", okkiBlog1.getPic());
-            // 图片处理
-
             postData.put("url", okkiBlog1.getUrl());
             postData.put("content", okkiBlog1.getContent());
             // 时间转换

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/common/controller/UploadController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/controller/UploadController.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.common.controller;
+package org.jeecg.modules.okki.common.controller;
 
 import org.jeecg.common.system.base.controller.JeecgController;
 

+ 8 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/service/IUploadService.java

@@ -0,0 +1,8 @@
+package org.jeecg.modules.okki.common.service;
+
+import org.springframework.web.multipart.MultipartFile;
+
+public interface IUploadService {
+
+    String upload(MultipartFile file) throws Exception;
+}

+ 94 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/common/service/impl/UploadServiceImpl.java

@@ -0,0 +1,94 @@
+package org.jeecg.modules.okki.common.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.modules.okki.utils.HttpClientUtils;
+import org.jeecg.modules.okki.common.service.IUploadService;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.BufferedReader;
+import java.io.DataOutputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Map;
+
+@Slf4j
+@Service
+public class UploadServiceImpl implements IUploadService {
+
+    @Value("${OKKI.CLIENT_SECRET}")
+    private String CLIENT_SECRET;
+
+    @Value("${OKKI.BASE_URL}")
+    private String BASE_URL;
+
+    @Override
+    public String upload(MultipartFile mf) throws Exception {
+        Map<String, String> query = new HashMap<>();
+        query.put("sign_method", "hmac-md5"); // 签名方式
+        query.put("timestamp", String.valueOf(System.currentTimeMillis())); // 时间戳
+        query.put("site_id", "1000147"); // 小满站点id
+        query.put("method", "upload_file"); // 上传文件
+        String queryStr = HttpClientUtils.buildQueryString(query);
+        query.put("signature", HttpClientUtils.generateHmacMD5(queryStr, CLIENT_SECRET)); // 签名
+        String okkiUrl = BASE_URL + "?" + HttpClientUtils.buildQueryString(query);
+//        // 第一步
+//        String encoder = URLEncoder(url, "UTF-8");
+////第二步
+//        String decoder = URLDecoder(encoder, "UTF-8");
+//
+//        URL url = new URL (decoder);
+
+//        String tmpName = mf.getName(); // 从$_FILE['file']['tmp_name']读取文件路径
+//        File file = new File(tmpName);
+        String fileName = mf.getOriginalFilename(); // 从$_FILE['file']['name']获取
+        String fileType = mf.getContentType(); // 从$_FILE['file']['type']获取
+        byte[] fileContent = mf.getBytes();
+        String delimiter = "-------------" + System.currentTimeMillis();
+        String boundary = delimiter;
+        String crlf = "\r\n";
+        String twoHyphens = "--";
+        System.out.println(okkiUrl);
+        HttpURLConnection connection = (HttpURLConnection) new URL(okkiUrl).openConnection();
+        connection.setDoOutput(true);
+        connection.setRequestMethod("POST");
+        connection.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary);
+
+        OutputStream outputStream = connection.getOutputStream();
+        DataOutputStream dataOutputStream = new DataOutputStream(outputStream);
+        dataOutputStream.writeBytes(twoHyphens + boundary + crlf);
+        dataOutputStream
+                .writeBytes("Content-Disposition: form-data; name=\"file\"; filename=\"" + fileName + "\"" + crlf);
+        dataOutputStream.writeBytes("Content-Type: " + fileType + crlf);
+        dataOutputStream.writeBytes(crlf);
+        dataOutputStream.write(fileContent);
+        dataOutputStream.writeBytes(crlf);
+        dataOutputStream.writeBytes(twoHyphens + boundary + twoHyphens);
+        dataOutputStream.flush();
+        dataOutputStream.close();
+        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
+        StringBuilder response = new StringBuilder();
+        String line;
+        while ((line = bufferedReader.readLine()) != null) {
+            response.append(line);
+        }
+        bufferedReader.close();
+        JSONObject jsonObject = JSONObject.parseObject(response.toString());
+        if ("0".equals(jsonObject.get("code").toString())) {
+            return JSONObject.parseObject(jsonObject.get("data").toString()).get("url").toString();
+        }else {
+            throw new RuntimeException(jsonObject.get("msg").toString());
+        }
+
+//        System.out.println(response.toString());
+//        return response.toString();
+//        String res = HttpClientUtils.doPost(okkiUrl, body);
+    }
+
+
+}

+ 3 - 3
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/controller/OkkiExternalLinkController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/controller/OkkiExternalLinkController.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.externallink.controller;
+package org.jeecg.modules.okki.externallink.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -11,8 +11,8 @@ import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.modules.api.okki.externallink.entity.OkkiExternalLink;
-import org.jeecg.modules.api.okki.externallink.service.IOkkiExternalLinkService;
+import org.jeecg.modules.okki.externallink.service.IOkkiExternalLinkService;
+import org.jeecg.modules.okki.externallink.entity.OkkiExternalLink;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/entity/OkkiExternalLink.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/entity/OkkiExternalLink.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.externallink.entity;
+package org.jeecg.modules.okki.externallink.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/mapper/OkkiExternalLinkMapper.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/mapper/OkkiExternalLinkMapper.java

@@ -1,7 +1,7 @@
-package org.jeecg.modules.api.okki.externallink.mapper;
+package org.jeecg.modules.okki.externallink.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.jeecg.modules.api.okki.externallink.entity.OkkiExternalLink;
+import org.jeecg.modules.okki.externallink.entity.OkkiExternalLink;
 
 /**
  * @Description: SEO数据外链

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/mapper/xml/OkkiExternalLinkMapper.xml → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/mapper/xml/OkkiExternalLinkMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.jeecg.modules.demo.externallink.mapper.OkkiExternalLinkMapper">
+<mapper namespace="org.jeecg.modules.okki.externallink.mapper.OkkiExternalLinkMapper">
 
 </mapper>

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/service/IOkkiExternalLinkService.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/service/IOkkiExternalLinkService.java

@@ -1,6 +1,6 @@
-package org.jeecg.modules.api.okki.externallink.service;
+package org.jeecg.modules.okki.externallink.service;
 
-import org.jeecg.modules.api.okki.externallink.entity.OkkiExternalLink;
+import org.jeecg.modules.okki.externallink.entity.OkkiExternalLink;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 /**

+ 5 - 5
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/externallink/service/impl/OkkiExternalLinkServiceImpl.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/externallink/service/impl/OkkiExternalLinkServiceImpl.java

@@ -1,12 +1,12 @@
-package org.jeecg.modules.api.okki.externallink.service.impl;
+package org.jeecg.modules.okki.externallink.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.jeecg.modules.api.okki.externallink.entity.OkkiExternalLink;
-import org.jeecg.modules.api.okki.externallink.mapper.OkkiExternalLinkMapper;
-import org.jeecg.modules.api.okki.externallink.service.IOkkiExternalLinkService;
-import org.jeecg.modules.api.okki.utils.HttpClientUtils;
+import org.jeecg.modules.okki.externallink.service.IOkkiExternalLinkService;
+import org.jeecg.modules.okki.utils.HttpClientUtils;
+import org.jeecg.modules.okki.externallink.entity.OkkiExternalLink;
+import org.jeecg.modules.okki.externallink.mapper.OkkiExternalLinkMapper;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 

+ 428 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/controller/OkkiShowlistController.java

@@ -0,0 +1,428 @@
+package org.jeecg.modules.okki.showlist.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.okki.blog.entity.OkkiBlog;
+import org.jeecg.modules.okki.showlist.entity.*;
+import org.jeecg.modules.okki.showlist.service.*;
+import org.jeecg.modules.okki.showlist.vo.OkkiShowlistPage;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+
+ /**
+ * @Description: showlist
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Api(tags="showlist")
+@RestController
+@RequestMapping("/showlist/okkiShowlist")
+@Slf4j
+public class OkkiShowlistController {
+	@Autowired
+	private IOkkiShowlistService okkiShowlistService;
+	@Autowired
+	private IOkkiOverviewService okkiOverviewService;
+	@Autowired
+	private IOkkiProductListService okkiProductListService;
+	@Autowired
+	private IOkkiHighlightService okkiHighlightService;
+	@Autowired
+	private IOkkiAdvantageService okkiAdvantageService;
+	@Autowired
+	private IOkkiRecommendedProductsService okkiRecommendedProductsService;
+	@Autowired
+	private IOkkiKeywordsService okkiKeywordsService;
+	@Autowired
+	private IOkkiKeywordsSeriesService okkiKeywordsSeriesService;
+	@Autowired
+	private IOkkiReviewService okkiReviewService;
+	@Autowired
+	private IOkkiFaqService okkiFaqService;
+	@Autowired
+	private IOkkiShowlistBlogService okkiShowlistBlogService;
+	
+	/**
+	 * 分页列表查询
+	 *
+	 * @param okkiShowlist
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "showlist-分页列表查询")
+	@ApiOperation(value="showlist-分页列表查询", notes="showlist-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<OkkiShowlist>> queryPageList(OkkiShowlist okkiShowlist,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<OkkiShowlist> queryWrapper = QueryGenerator.initQueryWrapper(okkiShowlist, req.getParameterMap());
+		Page<OkkiShowlist> page = new Page<OkkiShowlist>(pageNo, pageSize);
+		IPage<OkkiShowlist> pageList = okkiShowlistService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 *   添加
+	 *
+	 * @param okkiShowlistPage
+	 * @return
+	 */
+	@AutoLog(value = "showlist-添加")
+	@ApiOperation(value="showlist-添加", notes="showlist-添加")
+    @RequiresPermissions("showlist:okki_showlist:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody OkkiShowlistPage okkiShowlistPage) {
+		OkkiShowlist okkiShowlist = new OkkiShowlist();
+		BeanUtils.copyProperties(okkiShowlistPage, okkiShowlist);
+		okkiShowlistService.saveMain(okkiShowlist, okkiShowlistPage.getOkkiOverviewList(),okkiShowlistPage.getOkkiProductListList(),okkiShowlistPage.getOkkiHighlightList(),okkiShowlistPage.getOkkiAdvantageList(),okkiShowlistPage.getOkkiRecommendedProductsList(),okkiShowlistPage.getOkkiKeywordsList(),okkiShowlistPage.getOkkiKeywordsSeriesList(),okkiShowlistPage.getOkkiReviewList(),okkiShowlistPage.getOkkiFaqList(),okkiShowlistPage.getOkkiShowlistBlogList());
+		return Result.OK("添加成功!");
+	}
+	
+	/**
+	 *  编辑
+	 *
+	 * @param okkiShowlistPage
+	 * @return
+	 */
+	@AutoLog(value = "showlist-编辑")
+	@ApiOperation(value="showlist-编辑", notes="showlist-编辑")
+    @RequiresPermissions("showlist:okki_showlist:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody OkkiShowlistPage okkiShowlistPage) {
+		OkkiShowlist okkiShowlist = new OkkiShowlist();
+		BeanUtils.copyProperties(okkiShowlistPage, okkiShowlist);
+		OkkiShowlist okkiShowlistEntity = okkiShowlistService.getById(okkiShowlist.getId());
+		if(okkiShowlistEntity==null) {
+			return Result.error("未找到对应数据");
+		}
+		okkiShowlistService.updateMain(okkiShowlist, okkiShowlistPage.getOkkiOverviewList(),okkiShowlistPage.getOkkiProductListList(),okkiShowlistPage.getOkkiHighlightList(),okkiShowlistPage.getOkkiAdvantageList(),okkiShowlistPage.getOkkiRecommendedProductsList(),okkiShowlistPage.getOkkiKeywordsList(),okkiShowlistPage.getOkkiKeywordsSeriesList(),okkiShowlistPage.getOkkiReviewList(),okkiShowlistPage.getOkkiFaqList(),okkiShowlistPage.getOkkiShowlistBlogList());
+		return Result.OK("编辑成功!");
+	}
+	
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "showlist-通过id删除")
+	@ApiOperation(value="showlist-通过id删除", notes="showlist-通过id删除")
+    @RequiresPermissions("showlist:okki_showlist:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		okkiShowlistService.delMain(id);
+		return Result.OK("删除成功!");
+	}
+	
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "showlist-批量删除")
+	@ApiOperation(value="showlist-批量删除", notes="showlist-批量删除")
+    @RequiresPermissions("showlist:okki_showlist:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.okkiShowlistService.delBatchMain(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "showlist-通过id查询")
+	@ApiOperation(value="showlist-通过id查询", notes="showlist-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<OkkiShowlist> queryById(@RequestParam(name="id",required=true) String id) {
+		OkkiShowlist okkiShowlist = okkiShowlistService.getById(id);
+		if(okkiShowlist==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(okkiShowlist);
+
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "概览通过主表ID查询")
+	@ApiOperation(value="概览主表ID查询", notes="概览-通主表ID查询")
+	@GetMapping(value = "/queryOkkiOverviewByMainId")
+	public Result<List<OkkiOverview>> queryOkkiOverviewListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiOverview> okkiOverviewList = okkiOverviewService.selectByMainId(id);
+		return Result.OK(okkiOverviewList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "产品通过主表ID查询")
+	@ApiOperation(value="产品主表ID查询", notes="产品-通主表ID查询")
+	@GetMapping(value = "/queryOkkiProductListByMainId")
+	public Result<List<OkkiProductList>> queryOkkiProductListListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiProductList> okkiProductListList = okkiProductListService.selectByMainId(id);
+		return Result.OK(okkiProductListList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "亮点通过主表ID查询")
+	@ApiOperation(value="亮点主表ID查询", notes="亮点-通主表ID查询")
+	@GetMapping(value = "/queryOkkiHighlightByMainId")
+	public Result<List<OkkiHighlight>> queryOkkiHighlightListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiHighlight> okkiHighlightList = okkiHighlightService.selectByMainId(id);
+		return Result.OK(okkiHighlightList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "优势通过主表ID查询")
+	@ApiOperation(value="优势主表ID查询", notes="优势-通主表ID查询")
+	@GetMapping(value = "/queryOkkiAdvantageByMainId")
+	public Result<List<OkkiAdvantage>> queryOkkiAdvantageListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiAdvantage> okkiAdvantageList = okkiAdvantageService.selectByMainId(id);
+		return Result.OK(okkiAdvantageList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "推荐商品列表通过主表ID查询")
+	@ApiOperation(value="推荐商品列表主表ID查询", notes="推荐商品列表-通主表ID查询")
+	@GetMapping(value = "/queryOkkiRecommendedProductsByMainId")
+	public Result<List<OkkiRecommendedProducts>> queryOkkiRecommendedProductsListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiRecommendedProducts> okkiRecommendedProductsList = okkiRecommendedProductsService.selectByMainId(id);
+		return Result.OK(okkiRecommendedProductsList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "关键词通过主表ID查询")
+	@ApiOperation(value="关键词主表ID查询", notes="关键词-通主表ID查询")
+	@GetMapping(value = "/queryOkkiKeywordsByMainId")
+	public Result<List<OkkiKeywords>> queryOkkiKeywordsListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiKeywords> okkiKeywordsList = okkiKeywordsService.selectByMainId(id);
+		return Result.OK(okkiKeywordsList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "关键词系列通过主表ID查询")
+	@ApiOperation(value="关键词系列主表ID查询", notes="关键词系列-通主表ID查询")
+	@GetMapping(value = "/queryOkkiKeywordsSeriesByMainId")
+	public Result<List<OkkiKeywordsSeries>> queryOkkiKeywordsSeriesListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiKeywordsSeries> okkiKeywordsSeriesList = okkiKeywordsSeriesService.selectByMainId(id);
+		return Result.OK(okkiKeywordsSeriesList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "评价通过主表ID查询")
+	@ApiOperation(value="评价主表ID查询", notes="评价-通主表ID查询")
+	@GetMapping(value = "/queryOkkiReviewByMainId")
+	public Result<List<OkkiReview>> queryOkkiReviewListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiReview> okkiReviewList = okkiReviewService.selectByMainId(id);
+		return Result.OK(okkiReviewList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "常见问题通过主表ID查询")
+	@ApiOperation(value="常见问题主表ID查询", notes="常见问题-通主表ID查询")
+	@GetMapping(value = "/queryOkkiFaqByMainId")
+	public Result<List<OkkiFaq>> queryOkkiFaqListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiFaq> okkiFaqList = okkiFaqService.selectByMainId(id);
+		return Result.OK(okkiFaqList);
+	}
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "博客通过主表ID查询")
+	@ApiOperation(value="博客主表ID查询", notes="博客-通主表ID查询")
+	@GetMapping(value = "/queryOkkiShowlistBlogByMainId")
+	public Result<List<OkkiShowlistBlog>> queryOkkiShowlistBlogListByMainId(@RequestParam(name="id",required=true) String id) {
+		List<OkkiShowlistBlog> okkiShowlistBlogList = okkiShowlistBlogService.selectByMainId(id);
+		return Result.OK(okkiShowlistBlogList);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param okkiShowlist
+    */
+    @RequiresPermissions("showlist:okki_showlist:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, OkkiShowlist okkiShowlist) {
+      // Step.1 组装查询条件查询数据
+      QueryWrapper<OkkiShowlist> queryWrapper = QueryGenerator.initQueryWrapper(okkiShowlist, request.getParameterMap());
+      LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+
+      //配置选中数据查询条件
+       String selections = request.getParameter("selections");
+       if(oConvertUtils.isNotEmpty(selections)) {
+            List<String> selectionList = Arrays.asList(selections.split(","));
+            queryWrapper.in("id",selectionList);
+       }
+       //Step.2 获取导出数据
+       List<OkkiShowlist> okkiShowlistList = okkiShowlistService.list(queryWrapper);
+
+      // Step.3 组装pageList
+      List<OkkiShowlistPage> pageList = new ArrayList<OkkiShowlistPage>();
+      for (OkkiShowlist main : okkiShowlistList) {
+          OkkiShowlistPage vo = new OkkiShowlistPage();
+          BeanUtils.copyProperties(main, vo);
+          List<OkkiOverview> okkiOverviewList = okkiOverviewService.selectByMainId(main.getId());
+          vo.setOkkiOverviewList(okkiOverviewList);
+          List<OkkiProductList> okkiProductListList = okkiProductListService.selectByMainId(main.getId());
+          vo.setOkkiProductListList(okkiProductListList);
+          List<OkkiHighlight> okkiHighlightList = okkiHighlightService.selectByMainId(main.getId());
+          vo.setOkkiHighlightList(okkiHighlightList);
+          List<OkkiAdvantage> okkiAdvantageList = okkiAdvantageService.selectByMainId(main.getId());
+          vo.setOkkiAdvantageList(okkiAdvantageList);
+          List<OkkiRecommendedProducts> okkiRecommendedProductsList = okkiRecommendedProductsService.selectByMainId(main.getId());
+          vo.setOkkiRecommendedProductsList(okkiRecommendedProductsList);
+          List<OkkiKeywords> okkiKeywordsList = okkiKeywordsService.selectByMainId(main.getId());
+          vo.setOkkiKeywordsList(okkiKeywordsList);
+          List<OkkiKeywordsSeries> okkiKeywordsSeriesList = okkiKeywordsSeriesService.selectByMainId(main.getId());
+          vo.setOkkiKeywordsSeriesList(okkiKeywordsSeriesList);
+          List<OkkiReview> okkiReviewList = okkiReviewService.selectByMainId(main.getId());
+          vo.setOkkiReviewList(okkiReviewList);
+          List<OkkiFaq> okkiFaqList = okkiFaqService.selectByMainId(main.getId());
+          vo.setOkkiFaqList(okkiFaqList);
+          List<OkkiShowlistBlog> okkiShowlistBlogList = okkiShowlistBlogService.selectByMainId(main.getId());
+          vo.setOkkiShowlistBlogList(okkiShowlistBlogList);
+          pageList.add(vo);
+      }
+
+      // Step.4 AutoPoi 导出Excel
+      ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+      mv.addObject(NormalExcelConstants.FILE_NAME, "showlist列表");
+      mv.addObject(NormalExcelConstants.CLASS, OkkiShowlistPage.class);
+      mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("showlist数据", "导出人:"+sysUser.getRealname(), "showlist"));
+      mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
+      return mv;
+    }
+
+    /**
+    * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    @RequiresPermissions("showlist:okki_showlist:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+      Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+      for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+          // 获取上传文件对象
+          MultipartFile file = entity.getValue();
+          ImportParams params = new ImportParams();
+          params.setTitleRows(2);
+          params.setHeadRows(1);
+          params.setNeedSave(true);
+          try {
+              List<OkkiShowlistPage> list = ExcelImportUtil.importExcel(file.getInputStream(), OkkiShowlistPage.class, params);
+              for (OkkiShowlistPage page : list) {
+                  OkkiShowlist po = new OkkiShowlist();
+                  BeanUtils.copyProperties(page, po);
+                  okkiShowlistService.saveMain(po, page.getOkkiOverviewList(),page.getOkkiProductListList(),page.getOkkiHighlightList(),page.getOkkiAdvantageList(),page.getOkkiRecommendedProductsList(),page.getOkkiKeywordsList(),page.getOkkiKeywordsSeriesList(),page.getOkkiReviewList(),page.getOkkiFaqList(),page.getOkkiShowlistBlogList());
+              }
+              return Result.OK("文件导入成功!数据行数:" + list.size());
+          } catch (Exception e) {
+              log.error(e.getMessage(),e);
+              return Result.error("文件导入失败:"+e.getMessage());
+          } finally {
+              try {
+                  file.getInputStream().close();
+              } catch (IOException e) {
+                  e.printStackTrace();
+              }
+          }
+      }
+      return Result.OK("文件导入失败!");
+    }
+
+
+	 /**
+	  * 变更状态
+	  * @param okkiShowlist
+	  * @return
+	  */
+	 @PostMapping(value = "/status")
+	 public Result<String> changeStatus(@RequestBody OkkiShowlist okkiShowlist) throws Exception {
+		 boolean result = okkiShowlistService.changeStatus(okkiShowlist);
+		 if (result) {
+			 return Result.OK("操作成功");
+		 }else {
+			 return Result.error("操作失败");
+		 }
+	 }
+}

+ 72 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiAdvantage.java

@@ -0,0 +1,72 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 优势
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_advantage对象", description="优势")
+@Data
+@TableName("okki_advantage")
+public class OkkiAdvantage implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**组件标题*/
+	@Excel(name = "组件标题", width = 15)
+    @ApiModelProperty(value = "组件标题")
+    private String blockTitle;
+	/**组件内容*/
+	@Excel(name = "组件内容", width = 15)
+    @ApiModelProperty(value = "组件内容")
+    private String blockContent;
+	/**组件图片*/
+	@Excel(name = "组件图片", width = 15)
+    @ApiModelProperty(value = "组件图片")
+    private String blockPic;
+	/**按钮文字*/
+	@Excel(name = "按钮文字", width = 15)
+    @ApiModelProperty(value = "按钮文字")
+    private String buttonName;
+	/**按钮跳转链接*/
+	@Excel(name = "按钮跳转链接", width = 15)
+    @ApiModelProperty(value = "按钮跳转链接")
+    private String buttonUrl;
+}

+ 60 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiFaq.java

@@ -0,0 +1,60 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 常见问题
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_faq对象", description="常见问题")
+@Data
+@TableName("okki_faq")
+public class OkkiFaq implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**问题*/
+	@Excel(name = "问题", width = 15)
+    @ApiModelProperty(value = "问题")
+    private String question;
+	/**答案*/
+	@Excel(name = "答案", width = 15)
+    @ApiModelProperty(value = "答案")
+    private String answer;
+}

+ 72 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiHighlight.java

@@ -0,0 +1,72 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 亮点
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_highlight对象", description="亮点")
+@Data
+@TableName("okki_highlight")
+public class OkkiHighlight implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**组件标题*/
+	@Excel(name = "组件标题", width = 15)
+    @ApiModelProperty(value = "组件标题")
+    private String blockTitle;
+	/**组件内容*/
+	@Excel(name = "组件内容", width = 15)
+    @ApiModelProperty(value = "组件内容")
+    private String blockContent;
+	/**组件图片*/
+	@Excel(name = "组件图片", width = 15)
+    @ApiModelProperty(value = "组件图片")
+    private String blockPic;
+	/**按钮文字*/
+	@Excel(name = "按钮文字", width = 15)
+    @ApiModelProperty(value = "按钮文字")
+    private String buttonName;
+	/**按钮跳转链接*/
+	@Excel(name = "按钮跳转链接", width = 15)
+    @ApiModelProperty(value = "按钮跳转链接")
+    private String buttonUrl;
+}

+ 60 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiKeywords.java

@@ -0,0 +1,60 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 关键词
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_keywords对象", description="关键词")
+@Data
+@TableName("okki_keywords")
+public class OkkiKeywords implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**关键词名*/
+	@Excel(name = "关键词名", width = 15)
+    @ApiModelProperty(value = "关键词名")
+    private String keywordListName;
+	/**关键词链接*/
+	@Excel(name = "关键词链接", width = 15)
+    @ApiModelProperty(value = "关键词链接")
+    private String keywordListLinkUrl;
+}

+ 72 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiKeywordsSeries.java

@@ -0,0 +1,72 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 关键词系列
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_keywords_series对象", description="关键词系列")
+@Data
+@TableName("okki_keywords_series")
+public class OkkiKeywordsSeries implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**关键词标题*/
+	@Excel(name = "关键词标题", width = 15)
+    @ApiModelProperty(value = "关键词标题")
+    private String keywordsTitle;
+	/**关键词名1*/
+	@Excel(name = "关键词名1", width = 15)
+    @ApiModelProperty(value = "关键词名1")
+    private String keywordListName1;
+	/**关键词链接1*/
+	@Excel(name = "关键词链接1", width = 15)
+    @ApiModelProperty(value = "关键词链接1")
+    private String keywordListLinkUrl1;
+	/**关键词名2*/
+	@Excel(name = "关键词名2", width = 15)
+    @ApiModelProperty(value = "关键词名2")
+    private String keywordListName2;
+	/**关键词链接2*/
+	@Excel(name = "关键词链接2", width = 15)
+    @ApiModelProperty(value = "关键词链接2")
+    private String keywordListLinkUrl2;
+}

+ 76 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiOverview.java

@@ -0,0 +1,76 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 概览
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_overview对象", description="概览")
+@Data
+@TableName("okki_overview")
+public class OkkiOverview implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**概览类型*/
+	@Excel(name = "概览类型", width = 15, dicCode = "overview_type")
+    @ApiModelProperty(value = "概览类型")
+    private Integer overviewType;
+	/**概览标题*/
+	@Excel(name = "概览标题", width = 15)
+    @ApiModelProperty(value = "概览标题")
+    private String title;
+	/**概览内容*/
+	@Excel(name = "概览内容", width = 15)
+    @ApiModelProperty(value = "概览内容")
+    private String content;
+	/**概览图片链接*/
+	@Excel(name = "概览图片链接", width = 15)
+    @ApiModelProperty(value = "概览图片链接")
+    private String pic;
+	/**按钮文字*/
+	@Excel(name = "按钮文字", width = 15)
+    @ApiModelProperty(value = "按钮文字")
+    private String buttonName;
+	/**按钮跳转链接*/
+	@Excel(name = "按钮跳转链接", width = 15)
+    @ApiModelProperty(value = "按钮跳转链接")
+    private String buttonUrl;
+}

+ 72 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiProductList.java

@@ -0,0 +1,72 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 产品
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_product_list对象", description="产品")
+@Data
+@TableName("okki_product_list")
+public class OkkiProductList implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**产品列表类型*/
+	@Excel(name = "产品列表类型", width = 15, dicCode = "product_list_type")
+    @ApiModelProperty(value = "产品列表类型")
+    private Integer productListType;
+	/**标题*/
+	@Excel(name = "标题", width = 15)
+    @ApiModelProperty(value = "标题")
+    private String title;
+	/**字幕*/
+	@Excel(name = "字幕", width = 15)
+    @ApiModelProperty(value = "字幕")
+    private String subtitles;
+	/**商品pid*/
+	@Excel(name = "商品pid", width = 15)
+    @ApiModelProperty(value = "商品pid")
+    private String pidList;
+	/**商品分类sid*/
+	@Excel(name = "商品分类sid", width = 15)
+    @ApiModelProperty(value = "商品分类sid")
+    private Integer sid;
+}

+ 72 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiRecommendedProducts.java

@@ -0,0 +1,72 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 推荐商品列表
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_recommended_products对象", description="推荐商品列表")
+@Data
+@TableName("okki_recommended_products")
+public class OkkiRecommendedProducts implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属shouwlist*/
+    @ApiModelProperty(value = "所属shouwlist")
+    private String okkiShowlistId;
+	/**类型*/
+	@Excel(name = "类型", width = 15, dicCode = "product_list_type")
+    @ApiModelProperty(value = "类型")
+    private Integer productListType;
+	/**标题*/
+	@Excel(name = "标题", width = 15)
+    @ApiModelProperty(value = "标题")
+    private String title;
+	/**字幕*/
+	@Excel(name = "字幕", width = 15)
+    @ApiModelProperty(value = "字幕")
+    private String subtitles;
+	/**商品pid*/
+	@Excel(name = "商品pid", width = 15)
+    @ApiModelProperty(value = "商品pid")
+    private String pidList;
+	/**商品分类sid*/
+	@Excel(name = "商品分类sid", width = 15)
+    @ApiModelProperty(value = "商品分类sid")
+    private Integer sid;
+}

+ 64 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiReview.java

@@ -0,0 +1,64 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 评价
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_review对象", description="评价")
+@Data
+@TableName("okki_review")
+public class OkkiReview implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**评价内容*/
+	@Excel(name = "评价内容", width = 15)
+    @ApiModelProperty(value = "评价内容")
+    private String reviewListContent;
+	/**头像*/
+	@Excel(name = "头像", width = 15)
+    @ApiModelProperty(value = "头像")
+    private String reviewListAvatarUrl;
+	/**评价人*/
+	@Excel(name = "评价人", width = 15)
+    @ApiModelProperty(value = "评价人")
+    private String reviewListName;
+}

+ 154 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiShowlist.java

@@ -0,0 +1,154 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: showlist
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_showlist对象", description="showlist")
+@Data
+@TableName("okki_showlist")
+public class OkkiShowlist implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**站点id*/
+	@Excel(name = "站点id", width = 15)
+    @ApiModelProperty(value = "站点id")
+    private Integer siteId;
+	/**页面路径*/
+	@Excel(name = "页面路径", width = 15)
+    @ApiModelProperty(value = "页面路径")
+    private String url;
+	/**结构化数据*/
+	@Excel(name = "结构化数据", width = 15)
+    @ApiModelProperty(value = "结构化数据")
+    private String jsonLd;
+	/**询盘的板式*/
+	@Excel(name = "询盘的板式", width = 15, dicCode = "inquiry_type")
+    @Dict(dicCode = "inquiry_type")
+    @ApiModelProperty(value = "询盘的板式")
+    private Integer inquiryType;
+	/**ai检测分数*/
+	@Excel(name = "ai检测分数", width = 15)
+    @ApiModelProperty(value = "ai检测分数")
+    private Integer reportScore;
+	/**ai检测报告地址*/
+	@Excel(name = "ai检测报告地址", width = 15)
+    @ApiModelProperty(value = "ai检测报告地址")
+    private Integer reportLink;
+	/**亮点标题*/
+	@Excel(name = "亮点标题", width = 15)
+    @ApiModelProperty(value = "亮点标题")
+    private String highlightTitle;
+	/**亮点简介*/
+	@Excel(name = "亮点简介", width = 15)
+    @ApiModelProperty(value = "亮点简介")
+    private String highlightContent;
+	/**亮点布局文字对齐方式*/
+	@Excel(name = "亮点布局文字对齐方式", width = 15, dicCode = "layout_alignment")
+    @Dict(dicCode = "layout_alignment")
+    @ApiModelProperty(value = "亮点布局文字对齐方式")
+    private Integer highlightLayoutAlignment;
+	/**亮点布局每行列数*/
+	@Excel(name = "亮点布局每行列数", width = 15, dicCode = "layout_columns_per_row")
+    @Dict(dicCode = "layout_columns_per_row")
+    @ApiModelProperty(value = "亮点布局每行列数")
+    private Integer highlightLayoutColumnsPerRow;
+	/**优势标题*/
+	@Excel(name = "优势标题", width = 15)
+    @ApiModelProperty(value = "优势标题")
+    private String advantageTitle;
+	/**优势内容*/
+	@Excel(name = "优势内容", width = 15)
+    @ApiModelProperty(value = "优势内容")
+    private String advantageContent;
+	/**优势布局文字对齐方式*/
+	@Excel(name = "优势布局文字对齐方式", width = 15, dicCode = "layout_alignment")
+    @Dict(dicCode = "layout_alignment")
+    @ApiModelProperty(value = "优势布局文字对齐方式")
+    private Integer advantageLayoutAlignment;
+	/**优势布局每行列数*/
+	@Excel(name = "优势布局每行列数", width = 15, dicCode = "layout_columns_per_row")
+    @Dict(dicCode = "layout_columns_per_row")
+    @ApiModelProperty(value = "优势布局每行列数")
+    private Integer advantageLayoutColumnsPerRow;
+	/**关键词标题*/
+	@Excel(name = "关键词标题", width = 15)
+    @ApiModelProperty(value = "关键词标题")
+    private String keywordsTitle;
+	/**关键词系列标题*/
+	@Excel(name = "关键词系列标题", width = 15)
+    @ApiModelProperty(value = "关键词系列标题")
+    private String keywordsSeriesTitle;
+	/**关键词系列排版结构*/
+	@Excel(name = "关键词系列排版结构", width = 15, dicCode = "layout_type")
+    @Dict(dicCode = "layout_type")
+    @ApiModelProperty(value = "关键词系列排版结构")
+    private Integer keywordsSeriesLayoutType;
+	/**评价标题*/
+	@Excel(name = "评价标题", width = 15)
+    @ApiModelProperty(value = "评价标题")
+    private String reviewTitle;
+	/**评价字幕*/
+	@Excel(name = "评价字幕", width = 15)
+    @ApiModelProperty(value = "评价字幕")
+    private String reviewSubtitles;
+	/**评价布局文字对齐方式*/
+	@Excel(name = "评价布局文字对齐方式", width = 15, dicCode = "layout_alignment")
+    @Dict(dicCode = "layout_alignment")
+    @ApiModelProperty(value = "评价布局文字对齐方式")
+    private Integer reviewLayoutAlignment;
+	/**评价布局每行列数*/
+	@Excel(name = "评价布局每行列数", width = 15, dicCode = "layout_columns_per_row")
+    @Dict(dicCode = "layout_columns_per_row")
+    @ApiModelProperty(value = "评价布局每行列数")
+    private Integer reviewLayoutColumnsPerRow;
+	/**faq标题*/
+	@Excel(name = "faq标题", width = 15)
+    @ApiModelProperty(value = "faq标题")
+    private String faqTitle;
+	/**faq字幕*/
+	@Excel(name = "faq字幕", width = 15)
+    @ApiModelProperty(value = "faq字幕")
+    private String faqSubtitles;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**同步状态*/
+	@Excel(name = "同步状态", width = 15, dicCode = "blog_status")
+    @Dict(dicCode = "blog_status")
+    @ApiModelProperty(value = "同步状态")
+    private Integer status;
+}

+ 68 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/entity/OkkiShowlistBlog.java

@@ -0,0 +1,68 @@
+package org.jeecg.modules.okki.showlist.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 博客
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@ApiModel(value="okki_showlist_blog对象", description="博客")
+@Data
+@TableName("okki_showlist_blog")
+public class OkkiShowlistBlog implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建日期")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "更新日期")
+    private Date updateTime;
+	/**所属showlist*/
+    @ApiModelProperty(value = "所属showlist")
+    private String okkiShowlistId;
+	/**标题*/
+	@Excel(name = "标题", width = 15)
+    @ApiModelProperty(value = "标题")
+    private String title;
+	/**文字对齐方式*/
+	@Excel(name = "文字对齐方式", width = 15, dicCode = "layout_alignment")
+    @ApiModelProperty(value = "文字对齐方式")
+    private Integer layoutAlignment;
+	/**每行列数*/
+	@Excel(name = "每行列数", width = 15, dicCode = "layout_columns_per_row")
+    @ApiModelProperty(value = "每行列数")
+    private Integer layoutColumnsPerRow;
+	/**博客列表*/
+	@Excel(name = "博客列表", width = 15)
+    @ApiModelProperty(value = "博客列表")
+    private String blogList;
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiAdvantageMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiAdvantage;
+
+import java.util.List;
+
+/**
+ * @Description: 优势
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiAdvantageMapper extends BaseMapper<OkkiAdvantage> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiAdvantage>
+   */
+	public List<OkkiAdvantage> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiFaqMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiFaq;
+
+import java.util.List;
+
+/**
+ * @Description: 常见问题
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiFaqMapper extends BaseMapper<OkkiFaq> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiFaq>
+   */
+	public List<OkkiFaq> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiHighlightMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiHighlight;
+
+import java.util.List;
+
+/**
+ * @Description: 亮点
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiHighlightMapper extends BaseMapper<OkkiHighlight> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiHighlight>
+   */
+	public List<OkkiHighlight> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiKeywordsMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywords;
+
+import java.util.List;
+
+/**
+ * @Description: 关键词
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiKeywordsMapper extends BaseMapper<OkkiKeywords> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiKeywords>
+   */
+	public List<OkkiKeywords> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiKeywordsSeriesMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries;
+
+import java.util.List;
+
+/**
+ * @Description: 关键词系列
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiKeywordsSeriesMapper extends BaseMapper<OkkiKeywordsSeries> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiKeywordsSeries>
+   */
+	public List<OkkiKeywordsSeries> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiOverviewMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiOverview;
+
+import java.util.List;
+
+/**
+ * @Description: 概览
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiOverviewMapper extends BaseMapper<OkkiOverview> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiOverview>
+   */
+	public List<OkkiOverview> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiProductListMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiProductList;
+
+import java.util.List;
+
+/**
+ * @Description: 产品
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiProductListMapper extends BaseMapper<OkkiProductList> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiProductList>
+   */
+	public List<OkkiProductList> selectByMainId(@Param("mainId") String mainId);
+}

+ 31 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiRecommendedProductsMapper.java

@@ -0,0 +1,31 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import java.util.List;
+import org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * @Description: 推荐商品列表
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiRecommendedProductsMapper extends BaseMapper<OkkiRecommendedProducts> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiRecommendedProducts>
+   */
+	public List<OkkiRecommendedProducts> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiReviewMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiReview;
+
+import java.util.List;
+
+/**
+ * @Description: 评价
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiReviewMapper extends BaseMapper<OkkiReview> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiReview>
+   */
+	public List<OkkiReview> selectByMainId(@Param("mainId") String mainId);
+}

+ 32 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiShowlistBlogMapper.java

@@ -0,0 +1,32 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog;
+
+import java.util.List;
+
+/**
+ * @Description: 博客
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiShowlistBlogMapper extends BaseMapper<OkkiShowlistBlog> {
+
+	/**
+	 * 通过主表id删除子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+  /**
+   * 通过主表id查询子表数据
+   *
+   * @param mainId 主表id
+   * @return List<OkkiShowlistBlog>
+   */
+	public List<OkkiShowlistBlog> selectByMainId(@Param("mainId") String mainId);
+}

+ 14 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/OkkiShowlistMapper.java

@@ -0,0 +1,14 @@
+package org.jeecg.modules.okki.showlist.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlist;
+
+/**
+ * @Description: showlist
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface OkkiShowlistMapper extends BaseMapper<OkkiShowlist> {
+
+}

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiAdvantageMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiAdvantageMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_advantage 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiAdvantage">
+		SELECT * 
+		FROM  okki_advantage
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiFaqMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiFaqMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_faq 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiFaq">
+		SELECT * 
+		FROM  okki_faq
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiHighlightMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiHighlightMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_highlight 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiHighlight">
+		SELECT * 
+		FROM  okki_highlight
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiKeywordsMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiKeywordsMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_keywords 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiKeywords">
+		SELECT * 
+		FROM  okki_keywords
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiKeywordsSeriesMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiKeywordsSeriesMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_keywords_series 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries">
+		SELECT * 
+		FROM  okki_keywords_series
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiOverviewMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiOverviewMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_overview 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiOverview">
+		SELECT * 
+		FROM  okki_overview
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiProductListMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiProductListMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_product_list 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiProductList">
+		SELECT * 
+		FROM  okki_product_list
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiRecommendedProductsMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiRecommendedProductsMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_recommended_products 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts">
+		SELECT * 
+		FROM  okki_recommended_products
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiReviewMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiReviewMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_review 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiReview">
+		SELECT * 
+		FROM  okki_review
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 16 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiShowlistBlogMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiShowlistBlogMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE 
+		FROM  okki_showlist_blog 
+		WHERE
+			 okki_showlist_id = #{mainId} 	</delete>
+	
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog">
+		SELECT * 
+		FROM  okki_showlist_blog
+		WHERE
+			 okki_showlist_id = #{mainId} 	</select>
+</mapper>

+ 5 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/mapper/xml/OkkiShowlistMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.showlist.mapper.OkkiShowlistMapper">
+
+</mapper>

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiAdvantageService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiAdvantage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 优势
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiAdvantageService extends IService<OkkiAdvantage> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiAdvantage>
+	 */
+	public List<OkkiAdvantage> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiFaqService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiFaq;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 常见问题
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiFaqService extends IService<OkkiFaq> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiFaq>
+	 */
+	public List<OkkiFaq> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiHighlightService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiHighlight;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 亮点
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiHighlightService extends IService<OkkiHighlight> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiHighlight>
+	 */
+	public List<OkkiHighlight> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiKeywordsSeriesService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 关键词系列
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiKeywordsSeriesService extends IService<OkkiKeywordsSeries> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiKeywordsSeries>
+	 */
+	public List<OkkiKeywordsSeries> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiKeywordsService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywords;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 关键词
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiKeywordsService extends IService<OkkiKeywords> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiKeywords>
+	 */
+	public List<OkkiKeywords> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiOverviewService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiOverview;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 概览
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiOverviewService extends IService<OkkiOverview> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiOverview>
+	 */
+	public List<OkkiOverview> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiProductListService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiProductList;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 产品
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiProductListService extends IService<OkkiProductList> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiProductList>
+	 */
+	public List<OkkiProductList> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiRecommendedProductsService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 推荐商品列表
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiRecommendedProductsService extends IService<OkkiRecommendedProducts> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiRecommendedProducts>
+	 */
+	public List<OkkiRecommendedProducts> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiReviewService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiReview;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 评价
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiReviewService extends IService<OkkiReview> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiReview>
+	 */
+	public List<OkkiReview> selectByMainId(String mainId);
+}

+ 22 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiShowlistBlogService.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 博客
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiShowlistBlogService extends IService<OkkiShowlistBlog> {
+
+	/**
+	 * 通过主表id查询子表数据
+	 *
+	 * @param mainId 主表id
+	 * @return List<OkkiShowlistBlog>
+	 */
+	public List<OkkiShowlistBlog> selectByMainId(String mainId);
+}

+ 76 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/IOkkiShowlistService.java

@@ -0,0 +1,76 @@
+package org.jeecg.modules.okki.showlist.service;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiOverview;
+import org.jeecg.modules.okki.showlist.entity.OkkiProductList;
+import org.jeecg.modules.okki.showlist.entity.OkkiHighlight;
+import org.jeecg.modules.okki.showlist.entity.OkkiAdvantage;
+import org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywords;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries;
+import org.jeecg.modules.okki.showlist.entity.OkkiReview;
+import org.jeecg.modules.okki.showlist.entity.OkkiFaq;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlist;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @Description: showlist
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+public interface IOkkiShowlistService extends IService<OkkiShowlist> {
+
+	/**
+	 * 添加一对多
+	 *
+	 * @param okkiShowlist
+	 * @param okkiOverviewList
+	 * @param okkiProductListList
+	 * @param okkiHighlightList
+	 * @param okkiAdvantageList
+	 * @param okkiRecommendedProductsList
+	 * @param okkiKeywordsList
+	 * @param okkiKeywordsSeriesList
+	 * @param okkiReviewList
+	 * @param okkiFaqList
+	 * @param okkiShowlistBlogList
+	 */
+	public void saveMain(OkkiShowlist okkiShowlist,List<OkkiOverview> okkiOverviewList,List<OkkiProductList> okkiProductListList,List<OkkiHighlight> okkiHighlightList,List<OkkiAdvantage> okkiAdvantageList,List<OkkiRecommendedProducts> okkiRecommendedProductsList,List<OkkiKeywords> okkiKeywordsList,List<OkkiKeywordsSeries> okkiKeywordsSeriesList,List<OkkiReview> okkiReviewList,List<OkkiFaq> okkiFaqList,List<OkkiShowlistBlog> okkiShowlistBlogList) ;
+	
+	/**
+	 * 修改一对多
+	 *
+	 * @param okkiShowlist
+	 * @param okkiOverviewList
+	 * @param okkiProductListList
+	 * @param okkiHighlightList
+	 * @param okkiAdvantageList
+	 * @param okkiRecommendedProductsList
+	 * @param okkiKeywordsList
+	 * @param okkiKeywordsSeriesList
+	 * @param okkiReviewList
+	 * @param okkiFaqList
+	 * @param okkiShowlistBlogList
+	 */
+	public void updateMain(OkkiShowlist okkiShowlist,List<OkkiOverview> okkiOverviewList,List<OkkiProductList> okkiProductListList,List<OkkiHighlight> okkiHighlightList,List<OkkiAdvantage> okkiAdvantageList,List<OkkiRecommendedProducts> okkiRecommendedProductsList,List<OkkiKeywords> okkiKeywordsList,List<OkkiKeywordsSeries> okkiKeywordsSeriesList,List<OkkiReview> okkiReviewList,List<OkkiFaq> okkiFaqList,List<OkkiShowlistBlog> okkiShowlistBlogList);
+	
+	/**
+	 * 删除一对多
+	 *
+	 * @param id
+	 */
+	public void delMain (String id);
+	
+	/**
+	 * 批量删除一对多
+	 *
+	 * @param idList
+	 */
+	public void delBatchMain (Collection<? extends Serializable> idList);
+
+	boolean changeStatus(OkkiShowlist okkiShowlist);
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiAdvantageServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiAdvantage;
+import org.jeecg.modules.okki.showlist.mapper.OkkiAdvantageMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiAdvantageService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 优势
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiAdvantageServiceImpl extends ServiceImpl<OkkiAdvantageMapper, OkkiAdvantage> implements IOkkiAdvantageService {
+	
+	@Autowired
+	private OkkiAdvantageMapper okkiAdvantageMapper;
+	
+	@Override
+	public List<OkkiAdvantage> selectByMainId(String mainId) {
+		return okkiAdvantageMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiFaqServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiFaq;
+import org.jeecg.modules.okki.showlist.mapper.OkkiFaqMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiFaqService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 常见问题
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiFaqServiceImpl extends ServiceImpl<OkkiFaqMapper, OkkiFaq> implements IOkkiFaqService {
+	
+	@Autowired
+	private OkkiFaqMapper okkiFaqMapper;
+	
+	@Override
+	public List<OkkiFaq> selectByMainId(String mainId) {
+		return okkiFaqMapper.selectByMainId(mainId);
+	}
+}

+ 28 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiHighlightServiceImpl.java

@@ -0,0 +1,28 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.okki.showlist.entity.OkkiHighlight;
+import org.jeecg.modules.okki.showlist.mapper.OkkiHighlightMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiHighlightService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @Description: 亮点
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiHighlightServiceImpl extends ServiceImpl<OkkiHighlightMapper, OkkiHighlight> implements IOkkiHighlightService {
+	
+	@Autowired
+	private OkkiHighlightMapper okkiHighlightMapper;
+	
+	@Override
+	public List<OkkiHighlight> selectByMainId(String mainId) {
+		return okkiHighlightMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiKeywordsSeriesServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries;
+import org.jeecg.modules.okki.showlist.mapper.OkkiKeywordsSeriesMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiKeywordsSeriesService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 关键词系列
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiKeywordsSeriesServiceImpl extends ServiceImpl<OkkiKeywordsSeriesMapper, OkkiKeywordsSeries> implements IOkkiKeywordsSeriesService {
+	
+	@Autowired
+	private OkkiKeywordsSeriesMapper okkiKeywordsSeriesMapper;
+	
+	@Override
+	public List<OkkiKeywordsSeries> selectByMainId(String mainId) {
+		return okkiKeywordsSeriesMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiKeywordsServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywords;
+import org.jeecg.modules.okki.showlist.mapper.OkkiKeywordsMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiKeywordsService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 关键词
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiKeywordsServiceImpl extends ServiceImpl<OkkiKeywordsMapper, OkkiKeywords> implements IOkkiKeywordsService {
+	
+	@Autowired
+	private OkkiKeywordsMapper okkiKeywordsMapper;
+	
+	@Override
+	public List<OkkiKeywords> selectByMainId(String mainId) {
+		return okkiKeywordsMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiOverviewServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiOverview;
+import org.jeecg.modules.okki.showlist.mapper.OkkiOverviewMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiOverviewService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 概览
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiOverviewServiceImpl extends ServiceImpl<OkkiOverviewMapper, OkkiOverview> implements IOkkiOverviewService {
+	
+	@Autowired
+	private OkkiOverviewMapper okkiOverviewMapper;
+	
+	@Override
+	public List<OkkiOverview> selectByMainId(String mainId) {
+		return okkiOverviewMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiProductListServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiProductList;
+import org.jeecg.modules.okki.showlist.mapper.OkkiProductListMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiProductListService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 产品
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiProductListServiceImpl extends ServiceImpl<OkkiProductListMapper, OkkiProductList> implements IOkkiProductListService {
+	
+	@Autowired
+	private OkkiProductListMapper okkiProductListMapper;
+	
+	@Override
+	public List<OkkiProductList> selectByMainId(String mainId) {
+		return okkiProductListMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiRecommendedProductsServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts;
+import org.jeecg.modules.okki.showlist.mapper.OkkiRecommendedProductsMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiRecommendedProductsService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 推荐商品列表
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiRecommendedProductsServiceImpl extends ServiceImpl<OkkiRecommendedProductsMapper, OkkiRecommendedProducts> implements IOkkiRecommendedProductsService {
+	
+	@Autowired
+	private OkkiRecommendedProductsMapper okkiRecommendedProductsMapper;
+	
+	@Override
+	public List<OkkiRecommendedProducts> selectByMainId(String mainId) {
+		return okkiRecommendedProductsMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiReviewServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiReview;
+import org.jeecg.modules.okki.showlist.mapper.OkkiReviewMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiReviewService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 评价
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiReviewServiceImpl extends ServiceImpl<OkkiReviewMapper, OkkiReview> implements IOkkiReviewService {
+	
+	@Autowired
+	private OkkiReviewMapper okkiReviewMapper;
+	
+	@Override
+	public List<OkkiReview> selectByMainId(String mainId) {
+		return okkiReviewMapper.selectByMainId(mainId);
+	}
+}

+ 27 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiShowlistBlogServiceImpl.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog;
+import org.jeecg.modules.okki.showlist.mapper.OkkiShowlistBlogMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiShowlistBlogService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 博客
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiShowlistBlogServiceImpl extends ServiceImpl<OkkiShowlistBlogMapper, OkkiShowlistBlog> implements IOkkiShowlistBlogService {
+	
+	@Autowired
+	private OkkiShowlistBlogMapper okkiShowlistBlogMapper;
+	
+	@Override
+	public List<OkkiShowlistBlog> selectByMainId(String mainId) {
+		return okkiShowlistBlogMapper.selectByMainId(mainId);
+	}
+}

+ 271 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/service/impl/OkkiShowlistServiceImpl.java

@@ -0,0 +1,271 @@
+package org.jeecg.modules.okki.showlist.service.impl;
+
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlist;
+import org.jeecg.modules.okki.showlist.entity.OkkiOverview;
+import org.jeecg.modules.okki.showlist.entity.OkkiProductList;
+import org.jeecg.modules.okki.showlist.entity.OkkiHighlight;
+import org.jeecg.modules.okki.showlist.entity.OkkiAdvantage;
+import org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywords;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries;
+import org.jeecg.modules.okki.showlist.entity.OkkiReview;
+import org.jeecg.modules.okki.showlist.entity.OkkiFaq;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog;
+import org.jeecg.modules.okki.showlist.mapper.OkkiOverviewMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiProductListMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiHighlightMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiAdvantageMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiRecommendedProductsMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiKeywordsMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiKeywordsSeriesMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiReviewMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiFaqMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiShowlistBlogMapper;
+import org.jeecg.modules.okki.showlist.mapper.OkkiShowlistMapper;
+import org.jeecg.modules.okki.showlist.service.IOkkiShowlistService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import java.io.Serializable;
+import java.util.List;
+import java.util.Collection;
+
+/**
+ * @Description: showlist
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Service
+public class OkkiShowlistServiceImpl extends ServiceImpl<OkkiShowlistMapper, OkkiShowlist> implements IOkkiShowlistService {
+
+	@Autowired
+	private OkkiShowlistMapper okkiShowlistMapper;
+	@Autowired
+	private OkkiOverviewMapper okkiOverviewMapper;
+	@Autowired
+	private OkkiProductListMapper okkiProductListMapper;
+	@Autowired
+	private OkkiHighlightMapper okkiHighlightMapper;
+	@Autowired
+	private OkkiAdvantageMapper okkiAdvantageMapper;
+	@Autowired
+	private OkkiRecommendedProductsMapper okkiRecommendedProductsMapper;
+	@Autowired
+	private OkkiKeywordsMapper okkiKeywordsMapper;
+	@Autowired
+	private OkkiKeywordsSeriesMapper okkiKeywordsSeriesMapper;
+	@Autowired
+	private OkkiReviewMapper okkiReviewMapper;
+	@Autowired
+	private OkkiFaqMapper okkiFaqMapper;
+	@Autowired
+	private OkkiShowlistBlogMapper okkiShowlistBlogMapper;
+	
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void saveMain(OkkiShowlist okkiShowlist, List<OkkiOverview> okkiOverviewList,List<OkkiProductList> okkiProductListList,List<OkkiHighlight> okkiHighlightList,List<OkkiAdvantage> okkiAdvantageList,List<OkkiRecommendedProducts> okkiRecommendedProductsList,List<OkkiKeywords> okkiKeywordsList,List<OkkiKeywordsSeries> okkiKeywordsSeriesList,List<OkkiReview> okkiReviewList,List<OkkiFaq> okkiFaqList,List<OkkiShowlistBlog> okkiShowlistBlogList) {
+		okkiShowlistMapper.insert(okkiShowlist);
+		if(okkiOverviewList!=null && okkiOverviewList.size()>0) {
+			for(OkkiOverview entity:okkiOverviewList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiOverviewMapper.insert(entity);
+			}
+		}
+		if(okkiProductListList!=null && okkiProductListList.size()>0) {
+			for(OkkiProductList entity:okkiProductListList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiProductListMapper.insert(entity);
+			}
+		}
+		if(okkiHighlightList!=null && okkiHighlightList.size()>0) {
+			for(OkkiHighlight entity:okkiHighlightList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiHighlightMapper.insert(entity);
+			}
+		}
+		if(okkiAdvantageList!=null && okkiAdvantageList.size()>0) {
+			for(OkkiAdvantage entity:okkiAdvantageList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiAdvantageMapper.insert(entity);
+			}
+		}
+		if(okkiRecommendedProductsList!=null && okkiRecommendedProductsList.size()>0) {
+			for(OkkiRecommendedProducts entity:okkiRecommendedProductsList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiRecommendedProductsMapper.insert(entity);
+			}
+		}
+		if(okkiKeywordsList!=null && okkiKeywordsList.size()>0) {
+			for(OkkiKeywords entity:okkiKeywordsList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiKeywordsMapper.insert(entity);
+			}
+		}
+		if(okkiKeywordsSeriesList!=null && okkiKeywordsSeriesList.size()>0) {
+			for(OkkiKeywordsSeries entity:okkiKeywordsSeriesList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiKeywordsSeriesMapper.insert(entity);
+			}
+		}
+		if(okkiReviewList!=null && okkiReviewList.size()>0) {
+			for(OkkiReview entity:okkiReviewList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiReviewMapper.insert(entity);
+			}
+		}
+		if(okkiFaqList!=null && okkiFaqList.size()>0) {
+			for(OkkiFaq entity:okkiFaqList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiFaqMapper.insert(entity);
+			}
+		}
+		if(okkiShowlistBlogList!=null && okkiShowlistBlogList.size()>0) {
+			for(OkkiShowlistBlog entity:okkiShowlistBlogList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiShowlistBlogMapper.insert(entity);
+			}
+		}
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void updateMain(OkkiShowlist okkiShowlist,List<OkkiOverview> okkiOverviewList,List<OkkiProductList> okkiProductListList,List<OkkiHighlight> okkiHighlightList,List<OkkiAdvantage> okkiAdvantageList,List<OkkiRecommendedProducts> okkiRecommendedProductsList,List<OkkiKeywords> okkiKeywordsList,List<OkkiKeywordsSeries> okkiKeywordsSeriesList,List<OkkiReview> okkiReviewList,List<OkkiFaq> okkiFaqList,List<OkkiShowlistBlog> okkiShowlistBlogList) {
+		okkiShowlistMapper.updateById(okkiShowlist);
+		
+		//1.先删除子表数据
+		okkiOverviewMapper.deleteByMainId(okkiShowlist.getId());
+		okkiProductListMapper.deleteByMainId(okkiShowlist.getId());
+		okkiHighlightMapper.deleteByMainId(okkiShowlist.getId());
+		okkiAdvantageMapper.deleteByMainId(okkiShowlist.getId());
+		okkiRecommendedProductsMapper.deleteByMainId(okkiShowlist.getId());
+		okkiKeywordsMapper.deleteByMainId(okkiShowlist.getId());
+		okkiKeywordsSeriesMapper.deleteByMainId(okkiShowlist.getId());
+		okkiReviewMapper.deleteByMainId(okkiShowlist.getId());
+		okkiFaqMapper.deleteByMainId(okkiShowlist.getId());
+		okkiShowlistBlogMapper.deleteByMainId(okkiShowlist.getId());
+		
+		//2.子表数据重新插入
+		if(okkiOverviewList!=null && okkiOverviewList.size()>0) {
+			for(OkkiOverview entity:okkiOverviewList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiOverviewMapper.insert(entity);
+			}
+		}
+		if(okkiProductListList!=null && okkiProductListList.size()>0) {
+			for(OkkiProductList entity:okkiProductListList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiProductListMapper.insert(entity);
+			}
+		}
+		if(okkiHighlightList!=null && okkiHighlightList.size()>0) {
+			for(OkkiHighlight entity:okkiHighlightList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiHighlightMapper.insert(entity);
+			}
+		}
+		if(okkiAdvantageList!=null && okkiAdvantageList.size()>0) {
+			for(OkkiAdvantage entity:okkiAdvantageList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiAdvantageMapper.insert(entity);
+			}
+		}
+		if(okkiRecommendedProductsList!=null && okkiRecommendedProductsList.size()>0) {
+			for(OkkiRecommendedProducts entity:okkiRecommendedProductsList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiRecommendedProductsMapper.insert(entity);
+			}
+		}
+		if(okkiKeywordsList!=null && okkiKeywordsList.size()>0) {
+			for(OkkiKeywords entity:okkiKeywordsList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiKeywordsMapper.insert(entity);
+			}
+		}
+		if(okkiKeywordsSeriesList!=null && okkiKeywordsSeriesList.size()>0) {
+			for(OkkiKeywordsSeries entity:okkiKeywordsSeriesList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiKeywordsSeriesMapper.insert(entity);
+			}
+		}
+		if(okkiReviewList!=null && okkiReviewList.size()>0) {
+			for(OkkiReview entity:okkiReviewList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiReviewMapper.insert(entity);
+			}
+		}
+		if(okkiFaqList!=null && okkiFaqList.size()>0) {
+			for(OkkiFaq entity:okkiFaqList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiFaqMapper.insert(entity);
+			}
+		}
+		if(okkiShowlistBlogList!=null && okkiShowlistBlogList.size()>0) {
+			for(OkkiShowlistBlog entity:okkiShowlistBlogList) {
+				//外键设置
+				entity.setOkkiShowlistId(okkiShowlist.getId());
+				okkiShowlistBlogMapper.insert(entity);
+			}
+		}
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void delMain(String id) {
+		okkiOverviewMapper.deleteByMainId(id);
+		okkiProductListMapper.deleteByMainId(id);
+		okkiHighlightMapper.deleteByMainId(id);
+		okkiAdvantageMapper.deleteByMainId(id);
+		okkiRecommendedProductsMapper.deleteByMainId(id);
+		okkiKeywordsMapper.deleteByMainId(id);
+		okkiKeywordsSeriesMapper.deleteByMainId(id);
+		okkiReviewMapper.deleteByMainId(id);
+		okkiFaqMapper.deleteByMainId(id);
+		okkiShowlistBlogMapper.deleteByMainId(id);
+		okkiShowlistMapper.deleteById(id);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void delBatchMain(Collection<? extends Serializable> idList) {
+		for(Serializable id:idList) {
+			okkiOverviewMapper.deleteByMainId(id.toString());
+			okkiProductListMapper.deleteByMainId(id.toString());
+			okkiHighlightMapper.deleteByMainId(id.toString());
+			okkiAdvantageMapper.deleteByMainId(id.toString());
+			okkiRecommendedProductsMapper.deleteByMainId(id.toString());
+			okkiKeywordsMapper.deleteByMainId(id.toString());
+			okkiKeywordsSeriesMapper.deleteByMainId(id.toString());
+			okkiReviewMapper.deleteByMainId(id.toString());
+			okkiFaqMapper.deleteByMainId(id.toString());
+			okkiShowlistBlogMapper.deleteByMainId(id.toString());
+			okkiShowlistMapper.deleteById(id);
+		}
+	}
+
+	@Override
+	public boolean changeStatus(OkkiShowlist okkiShowlist) {
+		return false;
+	}
+
+}

+ 116 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/showlist/vo/OkkiShowlistPage.java

@@ -0,0 +1,116 @@
+package org.jeecg.modules.okki.showlist.vo;
+
+import java.util.List;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlist;
+import org.jeecg.modules.okki.showlist.entity.OkkiOverview;
+import org.jeecg.modules.okki.showlist.entity.OkkiProductList;
+import org.jeecg.modules.okki.showlist.entity.OkkiHighlight;
+import org.jeecg.modules.okki.showlist.entity.OkkiAdvantage;
+import org.jeecg.modules.okki.showlist.entity.OkkiRecommendedProducts;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywords;
+import org.jeecg.modules.okki.showlist.entity.OkkiKeywordsSeries;
+import org.jeecg.modules.okki.showlist.entity.OkkiReview;
+import org.jeecg.modules.okki.showlist.entity.OkkiFaq;
+import org.jeecg.modules.okki.showlist.entity.OkkiShowlistBlog;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.jeecgframework.poi.excel.annotation.ExcelEntity;
+import org.jeecgframework.poi.excel.annotation.ExcelCollection;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.util.Date;
+import org.jeecg.common.aspect.annotation.Dict;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @Description: showlist
+ * @Author: jeecg-boot
+ * @Date:   2024-05-14
+ * @Version: V1.0
+ */
+@Data
+@ApiModel(value="okki_showlistPage对象", description="showlist")
+public class OkkiShowlistPage {
+
+	/**主键*/
+	@ApiModelProperty(value = "主键")
+    private java.lang.String id;
+	/**创建人*/
+	@ApiModelProperty(value = "创建人")
+    private java.lang.String createBy;
+	/**更新人*/
+	@ApiModelProperty(value = "更新人")
+    private java.lang.String updateBy;
+	/**站点id*/
+	@Excel(name = "站点id", width = 15)
+	@ApiModelProperty(value = "站点id")
+    private java.lang.Integer siteId;
+	/**页面路径*/
+	@Excel(name = "页面路径", width = 15)
+	@ApiModelProperty(value = "页面路径")
+    private java.lang.String url;
+	/**结构化数据*/
+	@Excel(name = "结构化数据", width = 15)
+	@ApiModelProperty(value = "结构化数据")
+    private java.lang.String jsonLd;
+	/**询盘的板式*/
+	@Excel(name = "询盘的板式", width = 15, dicCode = "inquiry_type")
+    @Dict(dicCode = "inquiry_type")
+	@ApiModelProperty(value = "询盘的板式")
+    private java.lang.Integer inquiryType;
+	/**ai检测分数*/
+	@Excel(name = "ai检测分数", width = 15)
+	@ApiModelProperty(value = "ai检测分数")
+    private java.lang.Integer reportScore;
+	/**ai检测报告地址*/
+	@Excel(name = "ai检测报告地址", width = 15)
+	@ApiModelProperty(value = "ai检测报告地址")
+    private java.lang.Integer reportLink;
+	/**同步状态*/
+	@Excel(name = "同步状态", width = 15)
+	@ApiModelProperty(value = "同步状态")
+    private java.lang.Integer status;
+	/**创建日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+	@ApiModelProperty(value = "创建日期")
+    private java.util.Date createTime;
+	/**更新日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+	@ApiModelProperty(value = "更新日期")
+    private java.util.Date updateTime;
+
+	@ExcelCollection(name="概览")
+	@ApiModelProperty(value = "概览")
+	private List<OkkiOverview> okkiOverviewList;
+	@ExcelCollection(name="产品")
+	@ApiModelProperty(value = "产品")
+	private List<OkkiProductList> okkiProductListList;
+	@ExcelCollection(name="亮点")
+	@ApiModelProperty(value = "亮点")
+	private List<OkkiHighlight> okkiHighlightList;
+	@ExcelCollection(name="优势")
+	@ApiModelProperty(value = "优势")
+	private List<OkkiAdvantage> okkiAdvantageList;
+	@ExcelCollection(name="推荐商品列表")
+	@ApiModelProperty(value = "推荐商品列表")
+	private List<OkkiRecommendedProducts> okkiRecommendedProductsList;
+	@ExcelCollection(name="关键词")
+	@ApiModelProperty(value = "关键词")
+	private List<OkkiKeywords> okkiKeywordsList;
+	@ExcelCollection(name="关键词系列")
+	@ApiModelProperty(value = "关键词系列")
+	private List<OkkiKeywordsSeries> okkiKeywordsSeriesList;
+	@ExcelCollection(name="评价")
+	@ApiModelProperty(value = "评价")
+	private List<OkkiReview> okkiReviewList;
+	@ExcelCollection(name="常见问题")
+	@ApiModelProperty(value = "常见问题")
+	private List<OkkiFaq> okkiFaqList;
+	@ExcelCollection(name="博客")
+	@ApiModelProperty(value = "博客")
+	private List<OkkiShowlistBlog> okkiShowlistBlogList;
+
+}

+ 3 - 3
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/controller/OkkiSiteController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/controller/OkkiSiteController.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.site.controller;
+package org.jeecg.modules.okki.site.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -11,8 +11,8 @@ import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.modules.api.okki.site.entity.OkkiSite;
-import org.jeecg.modules.api.okki.site.service.IOkkiSiteService;
+import org.jeecg.modules.okki.site.entity.OkkiSite;
+import org.jeecg.modules.okki.site.service.IOkkiSiteService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;

+ 4 - 4
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/controller/ShopApiController.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/controller/ShopApiController.java

@@ -1,11 +1,11 @@
-package org.jeecg.modules.api.okki.site.controller;
+package org.jeecg.modules.okki.site.controller;
 
 import lombok.extern.slf4j.Slf4j;
 import org.apache.http.HttpHeaders;
 import org.jeecg.common.api.vo.Result;
-import org.jeecg.modules.api.okki.site.entity.OkkiSite;
-import org.jeecg.modules.api.okki.site.param.ChangeSiteStatusParam;
-import org.jeecg.modules.api.okki.site.service.IOkkiSiteService;
+import org.jeecg.modules.okki.site.service.IOkkiSiteService;
+import org.jeecg.modules.okki.site.entity.OkkiSite;
+import org.jeecg.modules.okki.site.param.ChangeSiteStatusParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 /**

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/dto/ParamDto.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/dto/ParamDto.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.site.dto;
+package org.jeecg.modules.okki.site.dto;
 
 import lombok.Data;
 

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/entity/OkkiSite.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/entity/OkkiSite.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.site.entity;
+package org.jeecg.modules.okki.site.entity;
 
 import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonFormat;

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/entity/OkkiSiteStatusChangeLog.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/entity/OkkiSiteStatusChangeLog.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.site.entity;
+package org.jeecg.modules.okki.site.entity;
 
 import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonFormat;

+ 2 - 5
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/OkkiSiteMapper.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/OkkiSiteMapper.java

@@ -1,9 +1,6 @@
-package org.jeecg.modules.api.okki.site.mapper;
+package org.jeecg.modules.okki.site.mapper;
 
-import java.util.List;
-
-import org.apache.ibatis.annotations.Param;
-import org.jeecg.modules.api.okki.site.entity.OkkiSite;
+import org.jeecg.modules.okki.site.entity.OkkiSite;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
 /**

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/OkkiSiteStatusChangeLogMapper.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/OkkiSiteStatusChangeLogMapper.java

@@ -1,7 +1,7 @@
-package org.jeecg.modules.api.okki.site.mapper;
+package org.jeecg.modules.okki.site.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.jeecg.modules.api.okki.site.entity.OkkiSiteStatusChangeLog;
+import org.jeecg.modules.okki.site.entity.OkkiSiteStatusChangeLog;
 
 /**
  * @Description: 站点

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/mapper/xml/OkkiSiteMapper.xml → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/xml/OkkiSiteMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.jeecg.modules.api.okki.site.mapper.OkkiSiteMapper">
+<mapper namespace="org.jeecg.modules.okki.site.mapper.OkkiSiteMapper">
 
 </mapper>

+ 5 - 0
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/mapper/xml/OkkiSiteStatusChangeLogMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.okki.site.mapper.OkkiSiteStatusChangeLogMapper">
+
+</mapper>

+ 1 - 1
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/param/ChangeSiteStatusParam.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/param/ChangeSiteStatusParam.java

@@ -1,4 +1,4 @@
-package org.jeecg.modules.api.okki.site.param;
+package org.jeecg.modules.okki.site.param;
 
 import lombok.Data;
 

+ 3 - 3
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/IOkkiSiteService.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/IOkkiSiteService.java

@@ -1,8 +1,8 @@
-package org.jeecg.modules.api.okki.site.service;
+package org.jeecg.modules.okki.site.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import org.jeecg.modules.api.okki.site.entity.OkkiSite;
-import org.jeecg.modules.api.okki.site.param.ChangeSiteStatusParam;
+import org.jeecg.modules.okki.site.entity.OkkiSite;
+import org.jeecg.modules.okki.site.param.ChangeSiteStatusParam;
 
 /**
  * @Description: 站点

+ 2 - 2
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/IOkkiSiteStatusChangeLogService.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/IOkkiSiteStatusChangeLogService.java

@@ -1,7 +1,7 @@
-package org.jeecg.modules.api.okki.site.service;
+package org.jeecg.modules.okki.site.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import org.jeecg.modules.api.okki.site.entity.OkkiSiteStatusChangeLog;
+import org.jeecg.modules.okki.site.entity.OkkiSiteStatusChangeLog;
 
 /**
  * @Description: 站点

+ 8 - 8
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/impl/OkkiSiteServiceImpl.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/impl/OkkiSiteServiceImpl.java

@@ -1,17 +1,17 @@
-package org.jeecg.modules.api.okki.site.service.impl;
+package org.jeecg.modules.okki.site.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.jeecg.modules.api.okki.site.entity.OkkiSite;
-import org.jeecg.modules.api.okki.site.entity.OkkiSiteStatusChangeLog;
-import org.jeecg.modules.api.okki.site.mapper.OkkiSiteMapper;
-import org.jeecg.modules.api.okki.site.param.ChangeSiteStatusParam;
-import org.jeecg.modules.api.okki.site.service.IOkkiSiteService;
-import org.jeecg.modules.api.okki.site.service.IOkkiSiteStatusChangeLogService;
-import org.jeecg.modules.api.okki.utils.HttpClientUtils;
+import org.jeecg.modules.okki.site.mapper.OkkiSiteMapper;
+import org.jeecg.modules.okki.site.entity.OkkiSite;
+import org.jeecg.modules.okki.site.entity.OkkiSiteStatusChangeLog;
+import org.jeecg.modules.okki.site.param.ChangeSiteStatusParam;
+import org.jeecg.modules.okki.site.service.IOkkiSiteService;
+import org.jeecg.modules.okki.site.service.IOkkiSiteStatusChangeLogService;
+import org.jeecg.modules.okki.utils.HttpClientUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 

+ 4 - 4
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/site/service/impl/OkkiSiteStatusChangeLogServiceImpl.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/site/service/impl/OkkiSiteStatusChangeLogServiceImpl.java

@@ -1,10 +1,10 @@
-package org.jeecg.modules.api.okki.site.service.impl;
+package org.jeecg.modules.okki.site.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.jeecg.modules.api.okki.site.entity.OkkiSiteStatusChangeLog;
-import org.jeecg.modules.api.okki.site.mapper.OkkiSiteStatusChangeLogMapper;
-import org.jeecg.modules.api.okki.site.service.IOkkiSiteStatusChangeLogService;
+import org.jeecg.modules.okki.site.mapper.OkkiSiteStatusChangeLogMapper;
+import org.jeecg.modules.okki.site.service.IOkkiSiteStatusChangeLogService;
+import org.jeecg.modules.okki.site.entity.OkkiSiteStatusChangeLog;
 import org.springframework.stereotype.Service;
 
 @Slf4j

+ 11 - 5
jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/okki/utils/HttpClientUtils.java → jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/okki/utils/HttpClientUtils.java

@@ -1,10 +1,8 @@
-package org.jeecg.modules.api.okki.utils;
+package org.jeecg.modules.okki.utils;
 
 import javax.crypto.Mac;
 import javax.crypto.spec.SecretKeySpec;
-import java.io.BufferedReader;
-import java.io.DataOutputStream;
-import java.io.InputStreamReader;
+import java.io.*;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.nio.charset.StandardCharsets;
@@ -45,7 +43,7 @@ public class HttpClientUtils {
     }
 
     public static String doPost(String url, String data) throws Exception {
-        java.net.URL apiUrl = new URL(url);
+        URL apiUrl = new URL(url);
         System.out.println(url);
         HttpURLConnection connection = (HttpURLConnection) apiUrl.openConnection();
         connection.setRequestMethod("POST");
@@ -69,4 +67,12 @@ public class HttpClientUtils {
         }
         throw new Exception("HTTP request failed with response code: " + responseCode);
     }
+
+    public static byte[] readBytesFromFile(File file) throws Exception {
+        FileInputStream fileInputStream = new FileInputStream(file);
+        byte[] fileBytes = new byte[(int) file.length()];
+        fileInputStream.read(fileBytes);
+        fileInputStream.close();
+        return fileBytes;
+    }
 }

部分文件因文件數量過多而無法顯示