Browse Source

优化加密

liu 3 years ago
parent
commit
d86349e460
33 changed files with 779 additions and 75 deletions
  1. 13 0
      .idea/libraries/Maven__com_alibaba_fastjson2_fastjson2_2_0_12.xml
  2. 13 0
      .idea/libraries/Maven__com_alibaba_fastjson2_fastjson2_extension_2_0_12.xml
  3. 13 0
      .idea/libraries/Maven__com_alibaba_fastjson_2_0_12.xml
  4. 90 39
      .idea/workspace.xml
  5. 7 0
      pom.xml
  6. 3 0
      share_video.iml
  7. 4 1
      src/main/java/com/video/api/VideoControllerAPI.java
  8. 40 0
      src/main/java/com/video/config/MySecurity.java
  9. 2 1
      src/main/java/com/video/config/smsConfig.java
  10. 5 2
      src/main/java/com/video/controller/VideoController.java
  11. 4 1
      src/main/java/com/video/services/VideoService.java
  12. 62 18
      src/main/java/com/video/services/impl/SmsCodeServiceImpl.java
  13. 24 0
      src/main/java/com/video/services/impl/SystemUserServiceImpl.java
  14. 77 3
      src/main/java/com/video/services/impl/VideoServiceImpl.java
  15. 45 0
      src/main/java/common/utils/EncryptionUtil.java
  16. 195 0
      src/main/java/common/utils/RSAUtils.java
  17. 11 3
      src/main/resources/application-dev.yml
  18. 5 0
      src/main/resources/application-prod.yml
  19. 6 1
      src/main/resources/application.yml
  20. 15 1
      src/test/java/com/videos/MybatisPlusApplicationTests.java
  21. 19 1
      src/test/java/com/videos/WrapperTest.java
  22. 11 3
      target/classes/application-dev.yml
  23. 5 0
      target/classes/application-prod.yml
  24. 6 1
      target/classes/application.yml
  25. BIN
      target/classes/com/video/api/VideoControllerAPI.class
  26. BIN
      target/classes/com/video/config/smsConfig.class
  27. BIN
      target/classes/com/video/controller/VideoController.class
  28. BIN
      target/classes/com/video/services/VideoService.class
  29. BIN
      target/classes/com/video/services/impl/SmsCodeServiceImpl.class
  30. BIN
      target/classes/com/video/services/impl/SystemUserServiceImpl.class
  31. BIN
      target/classes/com/video/services/impl/VideoServiceImpl.class
  32. 95 0
      target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  33. 9 0
      target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

+ 13 - 0
.idea/libraries/Maven__com_alibaba_fastjson2_fastjson2_2_0_12.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.alibaba.fastjson2:fastjson2:2.0.12">
+    <CLASSES>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson2/fastjson2/2.0.12/fastjson2-2.0.12.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson2/fastjson2/2.0.12/fastjson2-2.0.12-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson2/fastjson2/2.0.12/fastjson2-2.0.12-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_alibaba_fastjson2_fastjson2_extension_2_0_12.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.alibaba.fastjson2:fastjson2-extension:2.0.12">
+    <CLASSES>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson2/fastjson2-extension/2.0.12/fastjson2-extension-2.0.12.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson2/fastjson2-extension/2.0.12/fastjson2-extension-2.0.12-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson2/fastjson2-extension/2.0.12/fastjson2-extension-2.0.12-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_alibaba_fastjson_2_0_12.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.alibaba:fastjson:2.0.12">
+    <CLASSES>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson/2.0.12/fastjson-2.0.12.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson/2.0.12/fastjson-2.0.12-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://D:/soft/maven-repository/com/alibaba/fastjson/2.0.12/fastjson-2.0.12-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 90 - 39
.idea/workspace.xml

@@ -5,47 +5,39 @@
   </component>
   </component>
   <component name="ChangeListManager">
   <component name="ChangeListManager">
     <list default="true" id="3ff4794b-6964-480b-bcb6-ead103f7d762" name="Default Changelist" comment="登入">
     <list default="true" id="3ff4794b-6964-480b-bcb6-ead103f7d762" name="Default Changelist" comment="登入">
-      <change afterPath="$PROJECT_DIR$/.idea/libraries/Maven__com_auth0_java_jwt_3_10_0.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/libraries/Maven__io_jsonwebtoken_jjwt_api_0_10_7.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/libraries/Maven__io_jsonwebtoken_jjwt_0_9_1.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/libraries/Maven__io_jsonwebtoken_jjwt_impl_0_10_7.xml" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/libraries/Maven__io_jsonwebtoken_jjwt_jackson_0_10_7.xml" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/libraries/Maven__org_assertj_assertj_core_3_16_1.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/libraries/Maven__org_assertj_assertj_core_3_18_1.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/.idea/libraries/Maven__com_alibaba_fastjson2_fastjson2_2_0_12.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/.idea/libraries/Maven__com_alibaba_fastjson2_fastjson2_extension_2_0_12.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/.idea/libraries/Maven__com_alibaba_fastjson_2_0_12.xml" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/video/config/MySecurity.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/common/utils/EncryptionUtil.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/common/utils/RSAUtils.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/share_video.iml" beforeDir="false" afterPath="$PROJECT_DIR$/share_video.iml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/share_video.iml" beforeDir="false" afterPath="$PROJECT_DIR$/share_video.iml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/api/VideoControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/api/VideoControllerAPI.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/api/VideoControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/api/VideoControllerAPI.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/video/controller/LogInfoController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/controller/LogInfoController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/video/config/smsConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/config/smsConfig.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/controller/VideoController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/controller/VideoController.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/controller/VideoController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/controller/VideoController.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/video/core/JwtAuthenticationInterceptor.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/core/JwtAuthenticationInterceptor.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/video/handler/MyMetaObjectHandler.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/handler/MyMetaObjectHandler.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/video/model/pojo/Video.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/model/pojo/Video.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/video/model/vo/LoginVO.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/model/vo/LoginVO.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/VideoService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/VideoService.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/VideoService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/VideoService.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SmsCodeServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SmsCodeServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SmsCodeServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SmsCodeServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SystemUserServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SystemUserServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SystemUserServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/impl/SystemUserServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/impl/VideoServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/impl/VideoServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/video/services/impl/VideoServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/video/services/impl/VideoServiceImpl.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/common/result/ResponseStatusEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/common/result/ResponseStatusEnum.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/common/utils/JWTUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/common/utils/JWTUtil.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/MybatisPlusApplication.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/MybatisPlusApplication.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/api/LogInfoControllerAPI.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/api/LogInfoControllerAPI.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/api/PlaybackRecordControllerAPI.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/api/PlaybackRecordControllerAPI.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/api/SmsCodeControllerAPI.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/api/SmsCodeControllerAPI.class" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/resources/application-dev.yml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/application-dev.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/resources/application-prod.yml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/application-prod.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/resources/application.yml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/application.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/test/java/com/videos/MybatisPlusApplicationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/test/java/com/video/MybatisPlusApplicationTests.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/test/java/com/videos/WrapperTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/test/java/com/video/WrapperTest.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/application-dev.yml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/application-dev.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/application-prod.yml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/application-prod.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/application.yml" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/application.yml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/api/VideoControllerAPI.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/api/VideoControllerAPI.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/api/VideoControllerAPI.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/api/VideoControllerAPI.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/controller/LogInfoController.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/controller/LogInfoController.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/controller/PlaybackRecordController.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/controller/PlaybackRecordController.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/controller/SmsCodeController.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/controller/SmsCodeController.class" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/classes/com/video/config/smsConfig.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/config/smsConfig.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/controller/VideoController.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/controller/VideoController.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/controller/VideoController.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/controller/VideoController.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/core/JwtAuthenticationInterceptor.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/core/JwtAuthenticationInterceptor.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/handler/MyMetaObjectHandler.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/handler/MyMetaObjectHandler.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/model/pojo/Video.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/model/pojo/Video.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/model/utils/CommonResult.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/model/utils/CommonResult.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/SmsCodeService.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/SmsCodeService.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/VideoService.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/VideoService.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/VideoService.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/VideoService.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/impl/SmsCodeServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/impl/SmsCodeServiceImpl.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/impl/SmsCodeServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/impl/SmsCodeServiceImpl.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/impl/SystemUserServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/impl/SystemUserServiceImpl.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/impl/SystemUserServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/impl/SystemUserServiceImpl.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/impl/VideoServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/impl/VideoServiceImpl.class" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/target/classes/com/video/services/impl/VideoServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/video/services/impl/VideoServiceImpl.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/common/exception/EmsExceptionHandler.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/common/exception/EmsExceptionHandler.class" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/target/classes/common/result/ResponseStatusEnum.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/common/result/ResponseStatusEnum.class" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" afterDir="false" />
     </list>
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -59,8 +51,8 @@
     <option name="RECENT_TEMPLATES">
     <option name="RECENT_TEMPLATES">
       <list>
       <list>
         <option value="AnnotationType" />
         <option value="AnnotationType" />
-        <option value="Class" />
         <option value="Interface" />
         <option value="Interface" />
+        <option value="Class" />
       </list>
       </list>
     </option>
     </option>
   </component>
   </component>
@@ -364,7 +356,7 @@
     "RequestMappingsPanelWidth1": "75",
     "RequestMappingsPanelWidth1": "75",
     "SHARE_PROJECT_CONFIGURATION_FILES": "true",
     "SHARE_PROJECT_CONFIGURATION_FILES": "true",
     "WebServerToolWindowFactoryState": "false",
     "WebServerToolWindowFactoryState": "false",
-    "last_opened_file_path": "E:/company/video_share/Back-endDevelopmentFramework/src/main/java/com/video/model/utils",
+    "last_opened_file_path": "E:/company/carBooks",
     "node.js.detected.package.eslint": "true",
     "node.js.detected.package.eslint": "true",
     "node.js.detected.package.tslint": "true",
     "node.js.detected.package.tslint": "true",
     "node.js.selected.package.eslint": "(autodetect)",
     "node.js.selected.package.eslint": "(autodetect)",
@@ -390,16 +382,41 @@
       <recent name="D:\Bingo\Desktop\工作内容\视频系统\视频分享\src\test\java\com\videos" />
       <recent name="D:\Bingo\Desktop\工作内容\视频系统\视频分享\src\test\java\com\videos" />
     </key>
     </key>
     <key name="CopyClassDialog.RECENTS_KEY">
     <key name="CopyClassDialog.RECENTS_KEY">
-      <recent name="com.video.model.vo" />
       <recent name="common.utils" />
       <recent name="common.utils" />
+      <recent name="com.video.model.vo" />
       <recent name="common.result" />
       <recent name="common.result" />
       <recent name="com.video.api" />
       <recent name="com.video.api" />
       <recent name="com.video.services.annotation" />
       <recent name="com.video.services.annotation" />
     </key>
     </key>
   </component>
   </component>
   <component name="RunManager" selected="Spring Boot.MybatisPlusApplication">
   <component name="RunManager" selected="Spring Boot.MybatisPlusApplication">
-    <configuration name="AutoCode" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
-      <option name="MAIN_CLASS_NAME" value="com.video.AutoCode" />
+    <configuration name="RSAUtils" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
+      <option name="MAIN_CLASS_NAME" value="common.utils.RSAUtils" />
+      <module name="share_video" />
+      <extension name="coverage">
+        <pattern>
+          <option name="PATTERN" value="common.utils.*" />
+          <option name="ENABLED" value="true" />
+        </pattern>
+      </extension>
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
+    <configuration name="SystemUserServiceImpl" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
+      <option name="MAIN_CLASS_NAME" value="com.video.services.impl.SystemUserServiceImpl" />
+      <module name="share_video" />
+      <extension name="coverage">
+        <pattern>
+          <option name="PATTERN" value="com.video.services.impl.*" />
+          <option name="ENABLED" value="true" />
+        </pattern>
+      </extension>
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
+    <configuration name="MybatisPlusApplicationTests.contextLoads (1)" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
       <module name="share_video" />
       <module name="share_video" />
       <extension name="coverage">
       <extension name="coverage">
         <pattern>
         <pattern>
@@ -407,19 +424,42 @@
           <option name="ENABLED" value="true" />
           <option name="ENABLED" value="true" />
         </pattern>
         </pattern>
       </extension>
       </extension>
+      <option name="PACKAGE_NAME" value="com.video" />
+      <option name="MAIN_CLASS_NAME" value="com.video.MybatisPlusApplicationTests" />
+      <option name="METHOD_NAME" value="contextLoads" />
+      <option name="TEST_OBJECT" value="method" />
       <method v="2">
       <method v="2">
         <option name="Make" enabled="true" />
         <option name="Make" enabled="true" />
       </method>
       </method>
     </configuration>
     </configuration>
-    <configuration name="SendSms" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
-      <option name="MAIN_CLASS_NAME" value="common.utils.SendSms" />
+    <configuration name="MybatisPlusApplicationTests.contextLoads" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
       <module name="share_video" />
       <module name="share_video" />
       <extension name="coverage">
       <extension name="coverage">
         <pattern>
         <pattern>
-          <option name="PATTERN" value="common.utils.*" />
+          <option name="PATTERN" value="com.video.*" />
           <option name="ENABLED" value="true" />
           <option name="ENABLED" value="true" />
         </pattern>
         </pattern>
       </extension>
       </extension>
+      <option name="PACKAGE_NAME" value="com.videos" />
+      <option name="MAIN_CLASS_NAME" value="com.videos.MybatisPlusApplicationTests" />
+      <option name="METHOD_NAME" value="contextLoads" />
+      <option name="TEST_OBJECT" value="method" />
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
+    <configuration name="WrapperTest.contextLoads" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
+      <module name="share_video" />
+      <extension name="coverage">
+        <pattern>
+          <option name="PATTERN" value="com.video.*" />
+          <option name="ENABLED" value="true" />
+        </pattern>
+      </extension>
+      <option name="PACKAGE_NAME" value="com.videos" />
+      <option name="MAIN_CLASS_NAME" value="com.video.WrapperTest" />
+      <option name="METHOD_NAME" value="contextLoads" />
+      <option name="TEST_OBJECT" value="method" />
       <method v="2">
       <method v="2">
         <option name="Make" enabled="true" />
         <option name="Make" enabled="true" />
       </method>
       </method>
@@ -433,12 +473,18 @@
     </configuration>
     </configuration>
     <recent_temporary>
     <recent_temporary>
       <list>
       <list>
-        <item itemvalue="Application.SendSms" />
-        <item itemvalue="Application.AutoCode" />
+        <item itemvalue="Application.RSAUtils" />
+        <item itemvalue="JUnit.WrapperTest.contextLoads" />
+        <item itemvalue="JUnit.MybatisPlusApplicationTests.contextLoads (1)" />
+        <item itemvalue="JUnit.MybatisPlusApplicationTests.contextLoads" />
+        <item itemvalue="Application.SystemUserServiceImpl" />
       </list>
       </list>
     </recent_temporary>
     </recent_temporary>
   </component>
   </component>
   <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
   <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
+  <component name="SpringBootOptions">
+    <option name="showAdditionalConfigNotification" value="false" />
+  </component>
   <component name="SshConsoleOptionsProvider">
   <component name="SshConsoleOptionsProvider">
     <option name="myEncoding" value="UTF-8" />
     <option name="myEncoding" value="UTF-8" />
   </component>
   </component>
@@ -478,6 +524,10 @@
       <workItem from="1681950116855" duration="4933000" />
       <workItem from="1681950116855" duration="4933000" />
       <workItem from="1681955450600" duration="1193000" />
       <workItem from="1681955450600" duration="1193000" />
       <workItem from="1681956657556" duration="21257000" />
       <workItem from="1681956657556" duration="21257000" />
+      <workItem from="1682081993412" duration="23644000" />
+      <workItem from="1682304916834" duration="9000" />
+      <workItem from="1682304934570" duration="190000" />
+      <workItem from="1682305135175" duration="23691000" />
     </task>
     </task>
     <task id="LOCAL-00001" summary="add:添加腾讯云短信发送服务">
     <task id="LOCAL-00001" summary="add:添加腾讯云短信发送服务">
       <created>1681961682780</created>
       <created>1681961682780</created>
@@ -595,9 +645,9 @@
           <option name="timeStamp" value="19" />
           <option name="timeStamp" value="19" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" type="java-line">
         <line-breakpoint enabled="true" type="java-line">
-          <url>file://$PROJECT_DIR$/src/main/java/com/video/services/impl/SystemUserServiceImpl.java</url>
-          <line>42</line>
-          <option name="timeStamp" value="40" />
+          <url>file://$PROJECT_DIR$/src/main/java/com/video/services/impl/SmsCodeServiceImpl.java</url>
+          <line>94</line>
+          <option name="timeStamp" value="57" />
         </line-breakpoint>
         </line-breakpoint>
       </breakpoints>
       </breakpoints>
     </breakpoint-manager>
     </breakpoint-manager>
@@ -605,6 +655,7 @@
       <configuration name="SpringBootApplicationConfigurationType">
       <configuration name="SpringBootApplicationConfigurationType">
         <watch expression="data" />
         <watch expression="data" />
         <watch expression="req.customizedParams" />
         <watch expression="req.customizedParams" />
+        <watch expression="e" />
       </configuration>
       </configuration>
     </watches-manager>
     </watches-manager>
   </component>
   </component>

+ 7 - 0
pom.xml

@@ -21,6 +21,13 @@
 
 
     <dependencies>
     <dependencies>
 
 
+        <!-- fastjson -->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <version>2.0.12</version>
+        </dependency>
+
         <!--引入JWT-->
         <!--引入JWT-->
         <dependency>
         <dependency>
             <groupId>com.auth0</groupId>
             <groupId>com.auth0</groupId>

+ 3 - 0
share_video.iml

@@ -27,6 +27,9 @@
     </content>
     </content>
     <orderEntry type="inheritedJdk" />
     <orderEntry type="inheritedJdk" />
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="library" name="Maven: com.alibaba:fastjson:2.0.12" level="project" />
+    <orderEntry type="library" name="Maven: com.alibaba.fastjson2:fastjson2-extension:2.0.12" level="project" />
+    <orderEntry type="library" name="Maven: com.alibaba.fastjson2:fastjson2:2.0.12" level="project" />
     <orderEntry type="library" name="Maven: com.auth0:java-jwt:3.10.0" level="project" />
     <orderEntry type="library" name="Maven: com.auth0:java-jwt:3.10.0" level="project" />
     <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.3" level="project" />
     <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.3" level="project" />
     <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />
     <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.3" level="project" />

+ 4 - 1
src/main/java/com/video/api/VideoControllerAPI.java

@@ -4,6 +4,9 @@ import com.video.model.utils.CommonResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 /**
 /**
  * @Author: binguo
  * @Author: binguo
  * @Date: 2023/3/30 星期四 17:28
  * @Date: 2023/3/30 星期四 17:28
@@ -14,5 +17,5 @@ import org.springframework.web.bind.annotation.RequestMapping;
 @Api(tags = {"VideoController"}, value = "测试接口")
 @Api(tags = {"VideoController"}, value = "测试接口")
 public interface VideoControllerAPI {
 public interface VideoControllerAPI {
 
 
-    CommonResult list();
+    CommonResult list(HttpServletRequest request, HttpServletResponse response);
 }
 }

+ 40 - 0
src/main/java/com/video/config/MySecurity.java

@@ -0,0 +1,40 @@
+package com.video.config;
+
+import lombok.Data;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.stereotype.Component;
+
+@Component
+//@ConfigurationProperties(prefix = "my-security")
+public class MySecurity {
+    @Value("${my-security.privateKey}")
+    public String privateKey;
+    @Value("${my-security.publicKey}")
+    public String publicKey;
+
+    public String getPrivateKey() {
+        return privateKey;
+    }
+
+    public String getPublicKey() {
+        return publicKey;
+    }
+
+    @Override
+    public String toString() {
+        return "MySecurity{" +
+                "privateKey='" + privateKey + '\'' +
+                ", publicKey='" + publicKey + '\'' +
+                '}';
+    }
+
+    public void setPrivateKey(String privateKey) {
+        this.privateKey = privateKey;
+    }
+
+    public void setPublicKey(String publicKey) {
+        this.publicKey = publicKey;
+    }
+}

+ 2 - 1
src/main/java/com/video/config/smsConfig.java

@@ -3,6 +3,7 @@ package com.video.config;
 import lombok.Data;
 import lombok.Data;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.ComponentScan;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
@@ -13,7 +14,7 @@ import org.springframework.stereotype.Component;
  * @Version: 1.0
  * @Version: 1.0
  */
  */
 
 
-@Configuration
+@Component
 @ConfigurationProperties(prefix = "tencentcloud")
 @ConfigurationProperties(prefix = "tencentcloud")
 @Data
 @Data
 public class smsConfig {
 public class smsConfig {

+ 5 - 2
src/main/java/com/video/controller/VideoController.java

@@ -13,6 +13,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
 
 
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 /**
 /**
  * <p>
  * <p>
  *  前端控制器
  *  前端控制器
@@ -30,8 +33,8 @@ public class VideoController implements VideoControllerAPI {
     @Override
     @Override
     @GetMapping("/video")
     @GetMapping("/video")
     @ApiOperation(value = "查询视频",httpMethod = "GET")
     @ApiOperation(value = "查询视频",httpMethod = "GET")
-    public CommonResult list() {
-        return videoService.getVideo();
+    public CommonResult list(HttpServletRequest request, HttpServletResponse response) {
+        return videoService.getVideo(request, response);
     }
     }
 }
 }
 
 

+ 4 - 1
src/main/java/com/video/services/VideoService.java

@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.video.model.pojo.Video;
 import com.video.model.pojo.Video;
 import com.video.model.utils.CommonResult;
 import com.video.model.utils.CommonResult;
 
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 /**
 /**
  * <p>
  * <p>
  *  服务类
  *  服务类
@@ -14,6 +17,6 @@ import com.video.model.utils.CommonResult;
  */
  */
 public interface VideoService extends IService<Video> {
 public interface VideoService extends IService<Video> {
 
 
-    CommonResult getVideo();
+    CommonResult getVideo(HttpServletRequest request, HttpServletResponse response);
 
 
 }
 }

+ 62 - 18
src/main/java/com/video/services/impl/SmsCodeServiceImpl.java

@@ -1,8 +1,11 @@
 package com.video.services.impl;
 package com.video.services.impl;
 
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.video.config.MySecurity;
 import com.video.model.pojo.SmsCode;
 import com.video.model.pojo.SmsCode;
 import com.video.mapper.SmsCodeMapper;
 import com.video.mapper.SmsCodeMapper;
 import com.video.model.pojo.SystemUser;
 import com.video.model.pojo.SystemUser;
@@ -11,17 +14,21 @@ import com.video.model.vo.LoginVO;
 import com.video.services.SmsCodeService;
 import com.video.services.SmsCodeService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.video.services.SystemUserService;
 import com.video.services.SystemUserService;
+import common.utils.EncryptionUtil;
 import common.utils.JWTUtil;
 import common.utils.JWTUtil;
+import common.utils.RSAUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import java.util.Date;
 import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
 
 
 /**
 /**
  * <p>
  * <p>
- *  服务实现类
+ * 服务实现类
  * </p>
  * </p>
  *
  *
  * @author ceshi
  * @author ceshi
@@ -33,41 +40,78 @@ public class SmsCodeServiceImpl extends ServiceImpl<SmsCodeMapper, SmsCode> impl
     @Autowired
     @Autowired
     SystemUserService systemUserService;
     SystemUserService systemUserService;
 
 
+    @Autowired
+    MySecurity mySecurity;
+
+    private static final int MAX_JSON_STRING = 40;
+
     @Override
     @Override
     public CommonResult logIn(String phone, String code) {
     public CommonResult logIn(String phone, String code) {
-        if (ObjectUtils.isEmpty(phone)||ObjectUtils.isEmpty(code)) {
-            return CommonResult.fail("500","参数为空");
+        if (ObjectUtils.isEmpty(phone) || ObjectUtils.isEmpty(code)) {
+            return CommonResult.fail("500", "参数为空");
         }
         }
-        LambdaQueryWrapper<SmsCode> wrapper=new LambdaQueryWrapper<>();
-        wrapper.eq(SmsCode::getPhoneNumber,phone);
-        wrapper.ge(SmsCode::getExpirationTime,new Date());
-        wrapper.eq(SmsCode::getIsVerify,"0");
+//        获取私钥
+        String privateKey = mySecurity.getPrivateKey();
+//        postman传参会将+转换成空格
+        phone = phone.replace(" ", "+");
+        code = code.replace(" ", "+");
+        String decryptPhone;
+        String decryptCode;
+        try {
+            decryptPhone = RSAUtils.decrypt(phone, RSAUtils.getPrivateKey(privateKey));
+            decryptCode = RSAUtils.decrypt(code, RSAUtils.getPrivateKey(privateKey));
+        } catch (Exception e) {
+            return CommonResult.fail("500", "解密失败");
+        }
+        phone = decryptPhone;
+        code = decryptCode;
+
+        LambdaQueryWrapper<SmsCode> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(SmsCode::getPhoneNumber, phone);
+        wrapper.ge(SmsCode::getExpirationTime, new Date());
+        wrapper.eq(SmsCode::getIsVerify, "0");
         SmsCode one = this.getOne(wrapper);
         SmsCode one = this.getOne(wrapper);
         if (ObjectUtils.isEmpty(one)) {
         if (ObjectUtils.isEmpty(one)) {
-            return CommonResult.fail("500","验证码已过期");
+            return CommonResult.fail("500", "验证码已过期");
         }
         }
         String code1 = one.getCode();
         String code1 = one.getCode();
 //            验证
 //            验证
         if (!(code1.equals(code))) {
         if (!(code1.equals(code))) {
-            return CommonResult.fail("500","验证码错误");
+            return CommonResult.fail("500", "验证码错误");
         }
         }
 
 
         // 登录成功,生成token
         // 登录成功,生成token
-        LambdaQueryWrapper<SystemUser> wrapper2=new LambdaQueryWrapper<>();
-        wrapper2.eq(SystemUser::getPhoneNumber,phone);
+        LambdaQueryWrapper<SystemUser> wrapper2 = new LambdaQueryWrapper<>();
+        wrapper2.eq(SystemUser::getPhoneNumber, phone);
         SystemUser one1 = systemUserService.getOne(wrapper2);
         SystemUser one1 = systemUserService.getOne(wrapper2);
         String token = JWTUtil.getToken(one1);
         String token = JWTUtil.getToken(one1);
-        LoginVO loginVO =new LoginVO();
-       loginVO.setToken(token);
-         loginVO.setTokenTtl(JWTUtil.expiresDate().getTime());
-         loginVO.setUserName(one1.getAccountName());
-              loginVO.setTelPhone(phone);
+        LoginVO loginVO = new LoginVO();
+        loginVO.setToken(token);
+        loginVO.setTokenTtl(JWTUtil.expiresDate().getTime());
+        loginVO.setUserName(one1.getAccountName());
+        loginVO.setTelPhone(phone);
+
+//        将返回值转成json字符串并加密
+        String s = JSON.toJSONString(loginVO);
 
 
+        Map<Object, Object> encryption = new HashMap<>();
+        try {
+//        返回的加密字符串太长,无法解析,每次返回加密40长度的字符串
+            EncryptionUtil encryptionUtil = new EncryptionUtil();
+            encryption = encryptionUtil.encryption(s,mySecurity.getPublicKey());
+        } catch (Exception e) {
+            return CommonResult.fail("500", "加密失败");
+        }
 //        将未验证更改为已验证
 //        将未验证更改为已验证
 //        SmsCode smsCode = new SmsCode();
 //        SmsCode smsCode = new SmsCode();
-//        BeanUtils.copyProperties(one,smsCode);
+//        BeanUtils.copyProperties(one, smsCode);
 //        smsCode.setIsVerify("1");
 //        smsCode.setIsVerify("1");
 //        this.updateById(smsCode);
 //        this.updateById(smsCode);
-        return CommonResult.ok(loginVO);
+
+        return CommonResult.ok(encryption);
     }
     }
+
+
+
+
 }
 }

+ 24 - 0
src/main/java/com/video/services/impl/SystemUserServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.tencentcloudapi.sms.v20210111.models.SendStatus;
 import com.tencentcloudapi.sms.v20210111.models.SendStatus;
+import com.video.config.MySecurity;
 import com.video.mapper.SystemUserMapper;
 import com.video.mapper.SystemUserMapper;
 import com.video.model.pojo.SmsCode;
 import com.video.model.pojo.SmsCode;
 import com.video.model.pojo.SystemUser;
 import com.video.model.pojo.SystemUser;
@@ -11,9 +12,11 @@ import com.video.model.utils.CommonResult;
 import com.video.services.SystemUserService;
 import com.video.services.SystemUserService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import common.result.ResponseStatusEnum;
 import common.result.ResponseStatusEnum;
+import common.utils.RSAUtils;
 import common.utils.SendSms;
 import common.utils.SendSms;
 import common.utils.ValidateCode;
 import common.utils.ValidateCode;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 import redis.clients.jedis.Jedis;
 import redis.clients.jedis.Jedis;
@@ -34,9 +37,30 @@ public class SystemUserServiceImpl extends ServiceImpl<SystemUserMapper, SystemU
     @Autowired
     @Autowired
     SmsCodeServiceImpl smsCodeService;
     SmsCodeServiceImpl smsCodeService;
 
 
+    /**
+     * 密钥对象
+     */
+    @Autowired
+    MySecurity mySecurity;
+
+    /**
+     * 判断手机号是否符合发送验证码的要求
+     * @param phone
+     * @return
+     */
     @Override
     @Override
     @Transactional(rollbackFor=Exception.class )
     @Transactional(rollbackFor=Exception.class )
     public CommonResult verifyPhone(String phone) {
     public CommonResult verifyPhone(String phone) {
+        String privateKey = mySecurity.getPrivateKey();
+//        postman传参会将+转换成空格
+        phone=phone.replace(" ","+");
+        String decrypt;
+        try {
+             decrypt = RSAUtils.decrypt(phone, RSAUtils.getPrivateKey(privateKey));
+        } catch (Exception e) {
+            return CommonResult.fail("500","解密失败");
+        }
+        phone=decrypt;
         if (ObjectUtils.isEmpty(phone) || 11 != phone.length()) {
         if (ObjectUtils.isEmpty(phone) || 11 != phone.length()) {
             return CommonResult.resultValue(ResponseStatusEnum.SEND_PARAMS);
             return CommonResult.resultValue(ResponseStatusEnum.SEND_PARAMS);
         }
         }

+ 77 - 3
src/main/java/com/video/services/impl/VideoServiceImpl.java

@@ -1,15 +1,33 @@
 package com.video.services.impl;
 package com.video.services.impl;
 
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.video.config.MySecurity;
+import com.video.handle.NonStaticResourceHttpRequestHandler;
 import com.video.mapper.VideoMapper;
 import com.video.mapper.VideoMapper;
 import com.video.model.pojo.Video;
 import com.video.model.pojo.Video;
 import com.video.model.utils.CommonResult;
 import com.video.model.utils.CommonResult;
 import com.video.services.VideoService;
 import com.video.services.VideoService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import common.utils.EncryptionUtil;
+import common.utils.RSAUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.List;
+import java.util.Map;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -21,13 +39,69 @@ import java.util.List;
  */
  */
 @Service
 @Service
 public class VideoServiceImpl extends ServiceImpl<VideoMapper, Video> implements VideoService {
 public class VideoServiceImpl extends ServiceImpl<VideoMapper, Video> implements VideoService {
+    private String uri = "http://139.199.2.142:8081";
+//    private String uri = "http://139.199.2.142:8081/";
+    @Autowired
+    private NonStaticResourceHttpRequestHandler nonStaticResourceHttpRequestHandler;
+
+    @Autowired
+    MySecurity mySecurity;
 
 
     @Override
     @Override
-    public CommonResult getVideo() {
+    public CommonResult getVideo(HttpServletRequest request, HttpServletResponse response) {
+        ArrayList<Video> videos = new ArrayList<>();
         Wrapper<Video> wrapper=new LambdaQueryWrapper<>();
         Wrapper<Video> wrapper=new LambdaQueryWrapper<>();
         List<Video> list = this.list(wrapper);
         List<Video> list = this.list(wrapper);
-
-        return CommonResult.ok(list);
+        for (int i = 0; i < list.size(); i++) {
+            Video video = list.get(i);
+            String courseUrl = video.getCourseUrl();
+            courseUrl=uri+courseUrl;
+            video.setCourseUrl(courseUrl);
+            String pictureUrl = video.getPictureUrl();
+            pictureUrl=uri+pictureUrl;
+            video.setPictureUrl(pictureUrl);
+            String videoUrl = video.getVideoUrl();
+            videoUrl=uri+videoUrl;
+            video.setVideoUrl(videoUrl);
+//假如我把视频1.mp4放在了static下的video文件夹里面
+            //sourcePath 是获取resources文件夹的绝对地址
+            //realPath 即是视频所在的磁盘地址
+//            Path filePath = Paths.get("E:\\url/1.mp4");
+//            if (Files.exists(filePath)) {
+//                String mimeType = null;
+//                try {
+//                    mimeType = Files.probeContentType(filePath);
+//                } catch (IOException e) {
+//                    throw new RuntimeException(e);
+//                }
+//                if (!StringUtils.isEmpty(mimeType)) {
+//                    response.setContentType(mimeType);
+//                }
+//                request.setAttribute(NonStaticResourceHttpRequestHandler.ATTR_FILE, filePath);
+//                try {
+//                    nonStaticResourceHttpRequestHandler.handleRequest(request, response);
+//                } catch (ServletException e) {
+//                    throw new RuntimeException(e);
+//                } catch (IOException e) {
+//                    throw new RuntimeException(e);
+//                }
+//            } else {
+//                response.setStatus(HttpServletResponse.SC_NOT_FOUND);
+//                response.setCharacterEncoding(StandardCharsets.UTF_8.toString());
+//            }
+            videos.add(video);
+        }
+        //        将返回值转成json字符串并加密
+        String s = JSON.toJSONString(videos);
+        Map<Object, Object> encryption = new HashMap<>();
+        try {
+//        返回的加密字符串太长,无法解析,每次返回加密40长度的字符串
+            EncryptionUtil encryptionUtil = new EncryptionUtil();
+            encryption = encryptionUtil.encryption(s,mySecurity.getPublicKey());
+        } catch (Exception e) {
+            return CommonResult.fail("500", "加密失败");
+        }
+        return CommonResult.ok(encryption);
 
 
     }
     }
 }
 }

+ 45 - 0
src/main/java/common/utils/EncryptionUtil.java

@@ -0,0 +1,45 @@
+package common.utils;
+
+import com.video.config.MySecurity;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.Map;
+
+
+public class EncryptionUtil {
+
+
+    private static final int MAX_JSON_STRING = 40;
+
+    /**
+     * 将需要加密的字段分批加密
+     *
+     * @param jsonString
+     * @param publicKey
+     * @return
+     * @throws Exception
+     */
+    public Map<Object, Object> encryption(String jsonString, String publicKey) throws Exception {
+        int length = jsonString.length();
+        int offset = 0;
+        int i = 0;
+        HashMap<Object, Object> map = new HashMap<>();
+//        判断字符串长度是否大于40,大于就截取前40位,分批加密
+        while (length - offset > 0) {
+            if (length - offset > MAX_JSON_STRING) {
+                String substring = jsonString.substring(offset, offset + MAX_JSON_STRING);
+                String encrypt = RSAUtils.encrypt(substring, RSAUtils.getPublicKey(publicKey));
+                map.put(i, encrypt);
+            } else {
+                String substring = jsonString.substring(offset,length);
+                String encrypt = RSAUtils.encrypt(substring, RSAUtils.getPublicKey(publicKey));
+                map.put(i, encrypt);
+            }
+            i++;
+            offset = i * MAX_JSON_STRING;
+        }
+        return map;
+    }
+}

File diff suppressed because it is too large
+ 195 - 0
src/main/java/common/utils/RSAUtils.java


File diff suppressed because it is too large
+ 11 - 3
src/main/resources/application-dev.yml


File diff suppressed because it is too large
+ 5 - 0
src/main/resources/application-prod.yml


File diff suppressed because it is too large
+ 6 - 1
src/main/resources/application.yml


+ 15 - 1
src/test/java/com/videos/MybatisPlusApplicationTests.java

@@ -1,9 +1,23 @@
-package com.videos;
+package com.video;
 
 
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.boot.test.context.SpringBootTest;
 
 
 @SpringBootTest
 @SpringBootTest
 class MybatisPlusApplicationTests {
 class MybatisPlusApplicationTests {
+    @Value("${my-security.privateKey}")
+    String privateKey;
+    @Value("${my-security.publicKey}")
+    String publicKey;
+
+    @Test
+    void contextLoads() {
+//        System.out.println(mySecurity.toString());
+
+        System.out.println("privateKey = " + privateKey);
+        System.out.println("publicKey = " + publicKey);
+    }
 
 
 //    // 继承了BaseMapper,所有的方法都来自己父类
 //    // 继承了BaseMapper,所有的方法都来自己父类
 //    // 我们也可以编写自己的扩展方法!
 //    // 我们也可以编写自己的扩展方法!

+ 19 - 1
src/test/java/com/videos/WrapperTest.java

@@ -1,9 +1,27 @@
-package com.videos;
+package com.video;
 
 
+import com.video.config.MySecurity;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.boot.test.context.SpringBootTest;
 
 
 @SpringBootTest
 @SpringBootTest
 public class WrapperTest {
 public class WrapperTest {
+    @Value("${my-security.privateKey}")
+     String privateKey;
+    @Value("${my-security.publicKey}")
+     String publicKey;
+
+    @Autowired
+    MySecurity mySecurity;
+    @Test
+    void contextLoads() {
+        System.out.println(mySecurity.toString());
+        System.out.println("privateKey = " + privateKey);
+        System.out.println("publicKey = " + publicKey);
+    }
+
 
 
 //    @Autowired
 //    @Autowired
 //    private PlaybackRecordMapper playbackRecordMapper;
 //    private PlaybackRecordMapper playbackRecordMapper;

File diff suppressed because it is too large
+ 11 - 3
target/classes/application-dev.yml


File diff suppressed because it is too large
+ 5 - 0
target/classes/application-prod.yml


File diff suppressed because it is too large
+ 6 - 1
target/classes/application.yml


BIN
target/classes/com/video/api/VideoControllerAPI.class


BIN
target/classes/com/video/config/smsConfig.class


BIN
target/classes/com/video/controller/VideoController.class


BIN
target/classes/com/video/services/VideoService.class


BIN
target/classes/com/video/services/impl/SmsCodeServiceImpl.class


BIN
target/classes/com/video/services/impl/SystemUserServiceImpl.class


BIN
target/classes/com/video/services/impl/VideoServiceImpl.class


+ 95 - 0
target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -1 +1,96 @@
+com\video\mapper\SystemUserMapper.class
+com\video\services\SmsCodeService.class
+common\result\ResponseStatusEnum.class
+com\video\core\JwtlnterceptorConfig.class
+com\video\model\pojo\Video.class
+com\video\services\SystemMenuService.class
+com\video\services\VideoShareService.class
+com\video\model\pojo\VideoShare.class
 META-INF\spring-configuration-metadata.json
 META-INF\spring-configuration-metadata.json
+com\video\api\SystemAuthorityControllerAPI.class
+com\video\mapper\VideoPlayMapper.class
+com\video\services\impl\SmsCodeServiceImpl.class
+com\video\api\SystemUserControllerAPI.class
+com\video\services\impl\SystemUserServiceImpl.class
+com\video\controller\SystemAuthorityController.class
+com\video\config\MyBatisPlusConfig.class
+com\video\mapper\SystemAuthorityMapper.class
+com\video\services\PlaybackRecordService.class
+com\video\controller\VideoCategoryController.class
+common\result\Code.class
+com\video\mapper\SystemRoleMapper.class
+com\video\model\pojo\VideoPlay.class
+com\video\AutoCode.class
+com\video\services\SystemRoleService.class
+com\video\controller\SendController.class
+common\utils\smsUtil.class
+com\video\model\vo\LoginVO.class
+com\video\MybatisPlusApplication.class
+com\video\model\pojo\resultData.class
+com\video\api\LogInfoControllerAPI.class
+com\video\config\smsConfig.class
+common\utils\SendSms.class
+com\video\api\PlaybackRecordControllerAPI.class
+com\video\controller\LogInfoController.class
+com\video\handler\MyMetaObjectHandler.class
+common\exception\EmsException.class
+common\utils\JWTUtil.class
+common\exception\EmsExceptionHandler.class
+com\video\mapper\VideoCategoryMapper.class
+com\video\services\impl\SystemMenuServiceImpl.class
+com\video\annotation\ControllerIsShow.class
+com\video\services\SystemUserService.class
+com\video\model\utils\BaseResult.class
+com\video\api\SmsCodeControllerAPI.class
+com\video\model\vo\SystemMenuVo$SystemMenuVoBuilder.class
+com\video\controller\SystemRoleController.class
+com\video\services\SystemAuthorityService.class
+com\video\controller\PlaybackRecordController.class
+com\video\controller\VideoShareController.class
+com\video\model\pojo\SystemAuthority.class
+com\video\model\vo\SystemMenuTreeVo$SystemMenuTreeVoBuilder.class
+com\video\mapper\SmsCodeMapper.class
+com\video\services\impl\VideoPlayServiceImpl.class
+com\video\core\CORSConfiguration$1.class
+com\video\mapper\VideoShareMapper.class
+com\video\api\VideoPlayControllerAPI.class
+com\video\controller\SmsCodeController.class
+com\video\api\SystemMenuControllerAPI.class
+com\video\aop\LoginCheckAspect.class
+com\video\core\SwaggerConfiguration.class
+com\video\controller\VideoController.class
+com\video\model\vo\SystemMenuVo.class
+com\video\mapper\VideoMapper.class
+com\video\annotation\UserLoginCheck.class
+com\video\model\pojo\SystemMenu.class
+com\video\services\impl\VideoShareServiceImpl.class
+com\video\model\vo\SystemMenuTreeVo.class
+com\video\controller\VideoPlayController.class
+com\video\controller\SystemMenuController.class
+com\video\services\VideoService.class
+com\video\services\impl\VideoServiceImpl.class
+com\video\api\VideoShareControllerAPI.class
+com\video\core\CORSConfiguration.class
+com\video\services\impl\VideoCategoryServiceImpl.class
+com\video\api\VideoControllerAPI.class
+com\video\model\pojo\SystemRole.class
+com\video\model\pojo\SmsCode.class
+com\video\model\pojo\VideoCategory.class
+com\video\api\SystemRoleControllerAPI.class
+com\video\api\VideoCategoryControllerAPI.class
+com\video\model\utils\CommonResult.class
+com\video\services\impl\SystemRoleServiceImpl.class
+com\video\services\impl\PlaybackRecordImpl.class
+com\video\services\VideoCategoryService.class
+common\exception\MyCustomException.class
+com\video\mapper\SystemMenuMapper.class
+com\video\core\JwtAuthenticationInterceptor.class
+com\video\api\SendControllerAPI.class
+common\utils\ValidateCode.class
+com\video\services\VideoPlayService.class
+com\video\annotation\PassToken.class
+common\utils\CommonUtil.class
+com\video\services\impl\SystemAuthorityServiceImpl.class
+com\video\controller\SystemUserController.class
+com\video\handle\NonStaticResourceHttpRequestHandler.class
+com\video\model\pojo\SystemUser.class

+ 9 - 0
target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -15,13 +15,16 @@ E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\anno
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core\CORSConfiguration.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core\CORSConfiguration.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\SystemMenuServiceImpl.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\SystemMenuServiceImpl.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\exception\EmsExceptionHandler.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\exception\EmsExceptionHandler.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\SmsCodeController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\PlaybackRecordImpl.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\PlaybackRecordImpl.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\vo\LoginVO.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\vo\SystemMenuVo.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\vo\SystemMenuVo.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\VideoPlayControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\VideoPlayControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\utils\smsUtil.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\utils\smsUtil.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\aop\LoginCheckAspect.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\aop\LoginCheckAspect.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\utils\BaseResult.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\utils\BaseResult.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\PlaybackRecordController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\PlaybackRecordController.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\SmsCodeService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\SystemUserMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\SystemUserMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\utils\ValidateCode.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\utils\ValidateCode.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\annotation\PassToken.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\annotation\PassToken.java
@@ -44,7 +47,9 @@ E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core\JwtlnterceptorConfig.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core\JwtlnterceptorConfig.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\VideoControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\VideoControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\LogInfoControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\LogInfoControllerAPI.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\utils\CommonUtil.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\handle\NonStaticResourceHttpRequestHandler.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\handle\NonStaticResourceHttpRequestHandler.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SmsCodeControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core\JwtAuthenticationInterceptor.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\core\JwtAuthenticationInterceptor.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\SendController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\SendController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\MybatisPlusApplication.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\MybatisPlusApplication.java
@@ -53,6 +58,7 @@ E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\cont
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SystemAuthorityControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SystemAuthorityControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\exception\EmsException.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\exception\EmsException.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SystemUserControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SystemUserControllerAPI.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\pojo\SmsCode.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\VideoCategoryController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\VideoCategoryController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\SystemRoleMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\SystemRoleMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SystemMenuControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SystemMenuControllerAPI.java
@@ -63,6 +69,7 @@ E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\conf
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\VideoCategoryService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\VideoCategoryService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\SystemRoleService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\SystemRoleService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\result\ResponseStatusEnum.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\result\ResponseStatusEnum.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\common\utils\JWTUtil.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SendControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\SendControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\pojo\VideoCategory.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\pojo\VideoCategory.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\VideoPlayMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\VideoPlayMapper.java
@@ -70,7 +77,9 @@ E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\serv
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\LogInfoController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\controller\LogInfoController.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\pojo\VideoShare.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\model\pojo\VideoShare.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\VideoCategoryMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\VideoCategoryMapper.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\SmsCodeServiceImpl.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\AutoCode.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\AutoCode.java
+E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\mapper\SmsCodeMapper.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\VideoServiceImpl.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\impl\VideoServiceImpl.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\SystemUserService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\services\SystemUserService.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\VideoCategoryControllerAPI.java
 E:\company\video_share\Back-endDevelopmentFramework\src\main\java\com\video\api\VideoCategoryControllerAPI.java