From c24e0ee16637cd04781dd2317b63491c9ffa7eb9 Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Mon, 18 Aug 2025 14:58:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A7java17?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 85 ++++--- .../java/com/baidu/ueditor/ActionEnter.java | 127 ---------- .../java/com/baidu/ueditor/ConfigManager.java | 230 ------------------ src/main/java/com/baidu/ueditor/Encoder.java | 24 -- .../java/com/baidu/ueditor/PathFormat.java | 157 ------------ .../com/baidu/ueditor/define/ActionMap.java | 42 ---- .../com/baidu/ueditor/define/ActionState.java | 5 - .../com/baidu/ueditor/define/AppInfo.java | 77 ------ .../com/baidu/ueditor/define/BaseState.java | 90 ------- .../com/baidu/ueditor/define/FileType.java | 31 --- .../com/baidu/ueditor/define/MIMEType.java | 20 -- .../com/baidu/ueditor/define/MultiState.java | 112 --------- .../java/com/baidu/ueditor/define/State.java | 18 -- .../com/baidu/ueditor/hunter/FileManager.java | 112 --------- .../com/baidu/ueditor/hunter/ImageHunter.java | 144 ----------- .../baidu/ueditor/upload/Base64Uploader.java | 52 ---- .../baidu/ueditor/upload/BinaryUploader.java | 98 -------- .../baidu/ueditor/upload/StorageManager.java | 155 ------------ .../com/baidu/ueditor/upload/Uploader.java | 29 --- .../peanut/common/aspect/SysLogAspect.java | 2 +- .../common/service/HlsDecryptService.java | 7 - .../peanut/common/utils/FileDownloadUtil.java | 2 +- .../peanut/common/utils/HttpContextUtil.java | 2 +- .../peanut/common/utils/HttpContextUtils.java | 2 +- .../java/com/peanut/common/utils/IPUtils.java | 2 +- .../java/com/peanut/common/utils/KdUtils.java | 3 +- .../java/com/peanut/common/utils/SmsUtil.java | 98 ++++++++ .../peanut/common/utils/UEditorUpload.java | 38 --- .../common/validator/ValidatorUtils.java | 6 +- .../peanut/common/validator/group/Group.java | 2 +- .../java/com/peanut/common/xss/XssFilter.java | 4 +- .../xss/XssHttpServletRequestWrapper.java | 8 +- .../java/com/peanut/config/FilterConfig.java | 2 +- .../com/peanut/config/MybatisPlusConfig.java | 14 +- .../java/com/peanut/config/ShiroConfig.java | 2 +- .../java/com/peanut/config/SwaggerConfig.java | 61 ----- .../peanut/modules/app/annotation/Login.java | 22 -- .../modules/app/annotation/LoginUser.java | 25 -- .../peanut/modules/app/config/SMSConfig.java | 18 -- .../com/peanut/modules/app/config/Sample.java | 17 -- .../modules/app/config/WebMvcConfig.java | 42 ---- .../app/controller/AppLoginController.java | 55 ----- .../app/controller/AppRegisterController.java | 45 ---- .../app/controller/AppTestController.java | 53 ---- .../app/controller/UeditorController.java | 56 ----- .../modules/app/entity/UEditorFile.java | 31 --- .../peanut/modules/app/form/LoginForm.java | 33 --- .../peanut/modules/app/form/RegisterForm.java | 33 --- .../interceptor/AuthorizationInterceptor.java | 72 ------ ...oginUserHandlerMethodArgumentResolver.java | 53 ---- .../peanut/modules/app/utils/JwtUtils.java | 97 -------- .../book/controller/BookController.java | 9 +- .../book/controller/BookShelfController.java | 3 +- .../BookTeachLikeAndCommentController.java | 2 +- .../book/controller/ExpressController.java | 4 +- .../book/controller/MyUserController.java | 34 +-- .../modules/book/service/MyUserService.java | 9 +- .../impl/BookForumArticlesServiceImpl.java | 2 +- .../impl/BookForumCommenServiceImpl.java | 4 +- .../service/impl/BuyOrderServiceImpl.java | 4 +- .../book/service/impl/MyUserServiceImpl.java | 169 +------------ .../service/impl/UserAddressServiceImpl.java | 2 +- .../peanut/modules/book/to/UserRecordDto.java | 4 +- .../controller/BookAbroadController.java | 10 +- .../bookAbroad/controller/HomeController.java | 18 +- .../controller/OrderController.java | 2 +- .../controller/VisitorController.java | 6 +- .../common/controller/CouponController.java | 6 +- .../common/controller/ExpressController.java | 2 +- .../common/controller/UserController.java | 3 +- .../common/controller/UserVipController.java | 2 +- .../common/entity/PayWechatOrderEntity.java | 4 - .../common/entity/UserAppAuthorEntity.java | 4 +- .../common/entity/UserFeedbackEntity.java | 4 +- .../common/entity/UserFollowUpEntity.java | 4 +- .../modules/common/entity/UserRecord.java | 4 +- .../modules/common/service/MyUserService.java | 3 +- .../service/impl/ClassEntityServiceImpl.java | 46 ++-- .../service/impl/CouponServiceImpl.java | 2 +- .../impl/CourseGuestbookServiceImpl.java | 4 +- .../service/impl/MyUserServiceImpl.java | 48 +--- .../impl/UserInviteRegisterServiceImpl.java | 2 +- .../modules/job/entity/ScheduleJobEntity.java | 2 +- .../service/impl/ScheduleJobServiceImpl.java | 2 +- .../controller/BookAbroadController.java | 6 +- .../controller/BuyConfigController.java | 2 +- .../CourseMedicineMarketController.java | 6 +- .../CourseSociologyMarketController.java | 6 +- .../controller/OfflineActivityController.java | 4 +- .../master/controller/UserVipController.java | 8 +- ...ourseCatalogueChapterVideoServiceImpl.java | 11 +- .../impl/CourseCatalogueServiceImpl.java | 8 +- .../impl/CourseMedicineServiceImpl.java | 6 +- .../service/impl/CourseServiceImpl.java | 3 +- .../impl/CourseSociologyServiceImpl.java | 4 +- .../service/impl/ShopProductServiceImpl.java | 18 +- .../service/impl/ShopStoreServiceImpl.java | 2 +- .../impl/CourseMedicalServiceImpl.java | 2 +- .../service/impl/CourseServiceImpl.java | 6 +- .../service/impl/VipBuyConfigServiceImpl.java | 4 +- .../modules/mq/Consumer/CommonConsumer.java | 2 +- .../modules/oss/cloud/CloudStorageConfig.java | 4 +- .../modules/oss/controller/OssController.java | 5 - .../pay/IOSPay/model/dto/IapRequestDTO.java | 4 +- .../model/entities/IosPayOrderEntity.java | 4 +- .../alipay/controller/AliPayController.java | 2 +- .../pay/alipay/service/AliPayService.java | 2 +- .../service/impl/AliPayServiceImpl.java | 2 +- .../controller/ApplePayController.java | 150 ------------ .../applePay/controller/IapController.java | 134 ---------- .../pay/applePay/service/ApplePayService.java | 36 --- .../service/impl/ApplePayServiceImpl.java | 191 --------------- .../pay/applePay/utils/AddIosOrderPM.java | 116 --------- .../pay/applePay/utils/ApplePayUtil.java | 159 ------------ .../pay/applePay/utils/IPayNotifyPo.java | 21 -- .../modules/pay/applePay/utils/TsBill.java | 79 ------ .../pay/applePay/utils/TsBillMapper.java | 13 - .../paypal/controller/PaypalController.java | 4 +- .../modules/pay/stripe/StripeConfig.java | 2 +- .../modules/pay/stripe/StripeController.java | 4 +- .../controller/WeChatPayController.java | 4 +- .../pay/weChatPay/service/WxpayService.java | 2 +- .../service/impl/WxpayServiceImpl.java | 2 +- .../modules/pay/weChatPay/util/HttpUtils.java | 2 +- .../weChatPay/util/WechatPayValidator.java | 2 +- .../util/WechatPayValidatorForRequest.java | 2 +- .../controller/CourseController.java | 2 +- .../CourseCatalogueChapterServiceImpl.java | 2 +- .../service/impl/CourseServiceImpl.java | 8 +- .../service/impl/VipBuyConfigServiceImpl.java | 4 +- .../sys/controller/SysLoginController.java | 4 +- .../modules/sys/entity/SysConfigEntity.java | 2 +- .../modules/sys/entity/SysRoleEntity.java | 2 +- .../modules/sys/entity/SysUserEntity.java | 4 +- .../modules/sys/oauth2/OAuth2Filter.java | 8 +- .../service/impl/SysUserTokenServiceImpl.java | 2 +- src/main/resources/application-dev.yml | 30 +-- src/main/resources/application-prod.yml | 27 +- src/main/resources/application.yml | 11 + 139 files changed, 400 insertions(+), 3689 deletions(-) delete mode 100644 src/main/java/com/baidu/ueditor/ActionEnter.java delete mode 100644 src/main/java/com/baidu/ueditor/ConfigManager.java delete mode 100644 src/main/java/com/baidu/ueditor/Encoder.java delete mode 100644 src/main/java/com/baidu/ueditor/PathFormat.java delete mode 100644 src/main/java/com/baidu/ueditor/define/ActionMap.java delete mode 100644 src/main/java/com/baidu/ueditor/define/ActionState.java delete mode 100644 src/main/java/com/baidu/ueditor/define/AppInfo.java delete mode 100644 src/main/java/com/baidu/ueditor/define/BaseState.java delete mode 100644 src/main/java/com/baidu/ueditor/define/FileType.java delete mode 100644 src/main/java/com/baidu/ueditor/define/MIMEType.java delete mode 100644 src/main/java/com/baidu/ueditor/define/MultiState.java delete mode 100644 src/main/java/com/baidu/ueditor/define/State.java delete mode 100644 src/main/java/com/baidu/ueditor/hunter/FileManager.java delete mode 100644 src/main/java/com/baidu/ueditor/hunter/ImageHunter.java delete mode 100644 src/main/java/com/baidu/ueditor/upload/Base64Uploader.java delete mode 100644 src/main/java/com/baidu/ueditor/upload/BinaryUploader.java delete mode 100644 src/main/java/com/baidu/ueditor/upload/StorageManager.java delete mode 100644 src/main/java/com/baidu/ueditor/upload/Uploader.java create mode 100644 src/main/java/com/peanut/common/utils/SmsUtil.java delete mode 100644 src/main/java/com/peanut/common/utils/UEditorUpload.java delete mode 100644 src/main/java/com/peanut/config/SwaggerConfig.java delete mode 100644 src/main/java/com/peanut/modules/app/annotation/Login.java delete mode 100644 src/main/java/com/peanut/modules/app/annotation/LoginUser.java delete mode 100644 src/main/java/com/peanut/modules/app/config/SMSConfig.java delete mode 100644 src/main/java/com/peanut/modules/app/config/Sample.java delete mode 100644 src/main/java/com/peanut/modules/app/config/WebMvcConfig.java delete mode 100644 src/main/java/com/peanut/modules/app/controller/AppLoginController.java delete mode 100644 src/main/java/com/peanut/modules/app/controller/AppRegisterController.java delete mode 100644 src/main/java/com/peanut/modules/app/controller/AppTestController.java delete mode 100644 src/main/java/com/peanut/modules/app/controller/UeditorController.java delete mode 100644 src/main/java/com/peanut/modules/app/entity/UEditorFile.java delete mode 100644 src/main/java/com/peanut/modules/app/form/LoginForm.java delete mode 100644 src/main/java/com/peanut/modules/app/form/RegisterForm.java delete mode 100644 src/main/java/com/peanut/modules/app/interceptor/AuthorizationInterceptor.java delete mode 100644 src/main/java/com/peanut/modules/app/resolver/LoginUserHandlerMethodArgumentResolver.java delete mode 100644 src/main/java/com/peanut/modules/app/utils/JwtUtils.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/controller/ApplePayController.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/controller/IapController.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/service/ApplePayService.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/service/impl/ApplePayServiceImpl.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/utils/AddIosOrderPM.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/utils/ApplePayUtil.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/utils/IPayNotifyPo.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/utils/TsBill.java delete mode 100644 src/main/java/com/peanut/modules/pay/applePay/utils/TsBillMapper.java diff --git a/pom.xml b/pom.xml index cd0ba79..88c8b66 100644 --- a/pom.xml +++ b/pom.xml @@ -11,26 +11,25 @@ org.springframework.boot spring-boot-starter-parent - 2.6.6 + 3.3.9 UTF-8 UTF-8 - 1.8 - 3.3.1 - 8.0.28 + 17 + 3.5.9 + 8.0.33 4.0 11.2.0.3 - 1.2.1 + 1.2.18 2.3.0 2.6 1.2.2 2.5 1.10 1.10 - 1.9.0 0.7.0 0.0.9 7.2.23 @@ -41,7 +40,7 @@ 2.10.1 1.2.79 5.7.22 - 1.18.4 + 1.18.24 0.5.10 1.9.4 @@ -56,6 +55,17 @@ + + + com.google.guava + guava + 32.0.1-android + + + org.springframework.plugin + spring-plugin-core + 3.0.0 + com.stripe @@ -136,7 +146,7 @@ com.baomidou - mybatis-plus-boot-starter + mybatis-plus-spring-boot3-starter ${mybatisplus.version} @@ -145,7 +155,12 @@ - + + + com.baomidou + mybatis-plus-jsqlparser + ${mybatisplus.version} + mysql mysql-connector-java @@ -155,7 +170,7 @@ org.redisson redisson - 3.12.5 + 3.22.0 @@ -268,12 +283,6 @@ postgresql - - - - org.apache.httpcomponents - httpclient - com.alibaba @@ -316,15 +325,41 @@ commons-configuration ${commons.configuration.version} + + org.apache.shiro + shiro-spring + jakarta + 1.12.0 + + + + org.apache.shiro + shiro-core + + + org.apache.shiro + shiro-web + + + + org.apache.shiro shiro-core - ${shiro.version} + jakarta + 1.12.0 org.apache.shiro - shiro-spring - ${shiro.version} + shiro-web + jakarta + 1.12.0 + + + org.apache.shiro + shiro-core + + io.jsonwebtoken @@ -336,21 +371,11 @@ kaptcha ${kaptcha.version} - - io.springfox - springfox-swagger2 - ${swagger.version} - com.aliyun vod20170321 2.20.0 - - io.springfox - springfox-swagger-ui - ${swagger.version} - com.qiniu qiniu-java-sdk @@ -446,7 +471,7 @@ org.springframework.boot spring-boot-maven-plugin - true + diff --git a/src/main/java/com/baidu/ueditor/ActionEnter.java b/src/main/java/com/baidu/ueditor/ActionEnter.java deleted file mode 100644 index 33a3dc7..0000000 --- a/src/main/java/com/baidu/ueditor/ActionEnter.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.baidu.ueditor; - -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; - -import com.baidu.ueditor.define.ActionMap; -import com.baidu.ueditor.define.AppInfo; -import com.baidu.ueditor.define.BaseState; -import com.baidu.ueditor.define.State; -import com.baidu.ueditor.hunter.FileManager; -import com.baidu.ueditor.hunter.ImageHunter; -import com.baidu.ueditor.upload.Uploader; - -public class ActionEnter { - - private HttpServletRequest request = null; - - private String rootPath = null; - private String contextPath = null; - - private String actionType = null; - - private ConfigManager configManager = null; - - public ActionEnter ( HttpServletRequest request, String rootPath ) { - - this.request = request; - this.rootPath = rootPath; - this.actionType = request.getParameter( "action" ); - this.contextPath = request.getContextPath(); - this.configManager = ConfigManager.getInstance( this.rootPath, this.contextPath, request.getRequestURI() ); - - } - - public String exec () { - - String callbackName = this.request.getParameter("callback"); - - if ( callbackName != null ) { - - if ( !validCallbackName( callbackName ) ) { - return new BaseState( false, AppInfo.ILLEGAL ).toJSONString(); - } - - return callbackName+"("+this.invoke()+");"; - - } else { - return this.invoke(); - } - - } - - public String invoke() { - - if ( actionType == null || !ActionMap.mapping.containsKey( actionType ) ) { - return new BaseState( false, AppInfo.INVALID_ACTION ).toJSONString(); - } - - if ( this.configManager == null || !this.configManager.valid() ) { - return new BaseState( false, AppInfo.CONFIG_ERROR ).toJSONString(); - } - - State state = null; - - int actionCode = ActionMap.getType( this.actionType ); - - Map conf = null; - - switch ( actionCode ) { - - case ActionMap.CONFIG: - return this.configManager.getAllConfig().toString(); - - case ActionMap.UPLOAD_IMAGE: - case ActionMap.UPLOAD_SCRAWL: - case ActionMap.UPLOAD_VIDEO: - case ActionMap.UPLOAD_FILE: - conf = this.configManager.getConfig( actionCode ); - state = new Uploader( request, conf ).doExec(); - break; - - case ActionMap.CATCH_IMAGE: - conf = configManager.getConfig( actionCode ); - String[] list = this.request.getParameterValues( (String)conf.get( "fieldName" ) ); - state = new ImageHunter( conf ).capture( list ); - break; - - case ActionMap.LIST_IMAGE: - case ActionMap.LIST_FILE: - conf = configManager.getConfig( actionCode ); - int start = this.getStartIndex(); - state = new FileManager( conf ).listFile( start ); - break; - - } - - return state.toJSONString(); - - } - - public int getStartIndex () { - - String start = this.request.getParameter( "start" ); - - try { - return Integer.parseInt( start ); - } catch ( Exception e ) { - return 0; - } - - } - - /** - * callback参数验证 - */ - public boolean validCallbackName ( String name ) { - - if ( name.matches( "^[a-zA-Z_]+[\\w0-9_]*$" ) ) { - return true; - } - - return false; - - } - -} \ No newline at end of file diff --git a/src/main/java/com/baidu/ueditor/ConfigManager.java b/src/main/java/com/baidu/ueditor/ConfigManager.java deleted file mode 100644 index a444dd2..0000000 --- a/src/main/java/com/baidu/ueditor/ConfigManager.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.baidu.ueditor; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.UnsupportedEncodingException; -import java.net.URISyntaxException; -import java.util.HashMap; -import java.util.Map; - -import org.json.JSONArray; -import org.json.JSONObject; - -import com.baidu.ueditor.define.ActionMap; - -/** - * 配置管理器 - * @author hancong03@baidu.com - * - */ -public final class ConfigManager { - - private final String rootPath; - private final String originalPath; - private final String contextPath; - private static final String configFileName = "uedit-config.json"; - private String parentPath = null; - private JSONObject jsonConfig = null; - // 涂鸦上传filename定义 - private final static String SCRAWL_FILE_NAME = "scrawl"; - // 远程图片抓取filename定义 - private final static String REMOTE_FILE_NAME = "remote"; - - /* - * 通过一个给定的路径构建一个配置管理器, 该管理器要求地址路径所在目录下必须存在config.properties文件 - */ - private ConfigManager ( String rootPath, String contextPath, String uri ) throws FileNotFoundException, IOException { - - rootPath = rootPath.replace( "\\", "/" ); - - this.rootPath = rootPath; - this.contextPath = contextPath; - - if ( contextPath.length() > 0 ) { - this.originalPath = this.rootPath + uri.substring( contextPath.length() ); - } else { - this.originalPath = this.rootPath + uri; - } - - this.initEnv(); - - } - - /** - * 配置管理器构造工厂 - * @param rootPath 服务器根路径 - * @param contextPath 服务器所在项目路径 - * @param uri 当前访问的uri - * @return 配置管理器实例或者null - */ - public static ConfigManager getInstance ( String rootPath, String contextPath, String uri ) { - - try { - return new ConfigManager(rootPath, contextPath, uri); - } catch ( Exception e ) { - return null; - } - - } - - // 验证配置文件加载是否正确 - public boolean valid () { - return this.jsonConfig != null; - } - - public JSONObject getAllConfig () { - - return this.jsonConfig; - - } - - public Map getConfig ( int type ) { - - Map conf = new HashMap(); - String savePath = null; - - switch ( type ) { - - case ActionMap.UPLOAD_FILE: - conf.put( "isBase64", "false" ); - conf.put( "maxSize", this.jsonConfig.getLong( "fileMaxSize" ) ); - conf.put( "allowFiles", this.getArray( "fileAllowFiles" ) ); - conf.put( "fieldName", this.jsonConfig.getString( "fileFieldName" ) ); - savePath = this.jsonConfig.getString( "filePathFormat" ); - break; - - case ActionMap.UPLOAD_IMAGE: - conf.put( "isBase64", "false" ); - conf.put( "maxSize", this.jsonConfig.getLong( "imageMaxSize" ) ); - conf.put( "allowFiles", this.getArray( "imageAllowFiles" ) ); - conf.put( "fieldName", this.jsonConfig.getString( "imageFieldName" ) ); - savePath = this.jsonConfig.getString( "imagePathFormat" ); - break; - - case ActionMap.UPLOAD_VIDEO: - conf.put( "maxSize", this.jsonConfig.getLong( "videoMaxSize" ) ); - conf.put( "allowFiles", this.getArray( "videoAllowFiles" ) ); - conf.put( "fieldName", this.jsonConfig.getString( "videoFieldName" ) ); - savePath = this.jsonConfig.getString( "videoPathFormat" ); - break; - - case ActionMap.UPLOAD_SCRAWL: - conf.put( "filename", ConfigManager.SCRAWL_FILE_NAME ); - conf.put( "maxSize", this.jsonConfig.getLong( "scrawlMaxSize" ) ); - conf.put( "fieldName", this.jsonConfig.getString( "scrawlFieldName" ) ); - conf.put( "isBase64", "true" ); - savePath = this.jsonConfig.getString( "scrawlPathFormat" ); - break; - - case ActionMap.CATCH_IMAGE: - conf.put( "filename", ConfigManager.REMOTE_FILE_NAME ); - conf.put( "filter", this.getArray( "catcherLocalDomain" ) ); - conf.put( "maxSize", this.jsonConfig.getLong( "catcherMaxSize" ) ); - conf.put( "allowFiles", this.getArray( "catcherAllowFiles" ) ); - conf.put( "fieldName", this.jsonConfig.getString( "catcherFieldName" ) + "[]" ); - savePath = this.jsonConfig.getString( "catcherPathFormat" ); - break; - - case ActionMap.LIST_IMAGE: - conf.put( "allowFiles", this.getArray( "imageManagerAllowFiles" ) ); - conf.put( "dir", this.jsonConfig.getString( "imageManagerListPath" ) ); - conf.put( "count", this.jsonConfig.getInt( "imageManagerListSize" ) ); - break; - - case ActionMap.LIST_FILE: - conf.put( "allowFiles", this.getArray( "fileManagerAllowFiles" ) ); - conf.put( "dir", this.jsonConfig.getString( "fileManagerListPath" ) ); - conf.put( "count", this.jsonConfig.getInt( "fileManagerListSize" ) ); - break; - - } - - conf.put( "savePath", savePath ); - conf.put( "rootPath", this.rootPath ); - - return conf; - - } - - private void initEnv () throws FileNotFoundException, IOException { - - File file = new File( this.originalPath ); - - if ( !file.isAbsolute() ) { - file = new File( file.getAbsolutePath() ); - } - - this.parentPath = file.getParent(); - - String configContent = this.readFile( this.getConfigPath() ); - - try{ - JSONObject jsonConfig = new JSONObject( configContent ); - this.jsonConfig = jsonConfig; - } catch ( Exception e ) { - this.jsonConfig = null; - } - - } - - private String getConfigPath () { -// return this.parentPath + File.separator + ConfigManager.configFileName; - // 修改源码 - try{ - return this.getClass().getClassLoader().getResource("uedit-config.json").toURI().getPath(); - } catch (URISyntaxException e) { - e.printStackTrace(); - return null; - } - } - - private String[] getArray ( String key ) { - - JSONArray jsonArray = this.jsonConfig.getJSONArray( key ); - String[] result = new String[ jsonArray.length() ]; - - for ( int i = 0, len = jsonArray.length(); i < len; i++ ) { - result[i] = jsonArray.getString( i ); - } - - return result; - - } - - private String readFile ( String path ) throws IOException { - - StringBuilder builder = new StringBuilder(); - - try { - - InputStreamReader reader = new InputStreamReader( new FileInputStream( path ), "UTF-8" ); - BufferedReader bfReader = new BufferedReader( reader ); - - String tmpContent = null; - - while ( ( tmpContent = bfReader.readLine() ) != null ) { - builder.append( tmpContent ); - } - - bfReader.close(); - - } catch ( UnsupportedEncodingException e ) { - // 忽略 - } - - return this.filter( builder.toString() ); - - } - - // 过滤输入字符串, 剔除多行注释以及替换掉反斜杠 - private String filter ( String input ) { - - return input.replaceAll( "/\\*[\\s\\S]*?\\*/", "" ); - - } - -} diff --git a/src/main/java/com/baidu/ueditor/Encoder.java b/src/main/java/com/baidu/ueditor/Encoder.java deleted file mode 100644 index 00bce19..0000000 --- a/src/main/java/com/baidu/ueditor/Encoder.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.baidu.ueditor; - -public class Encoder { - - public static String toUnicode ( String input ) { - - StringBuilder builder = new StringBuilder(); - char[] chars = input.toCharArray(); - - for ( char ch : chars ) { - - if ( ch < 256 ) { - builder.append( ch ); - } else { - builder.append( "\\u" + Integer.toHexString( ch& 0xffff ) ); - } - - } - - return builder.toString(); - - } - -} \ No newline at end of file diff --git a/src/main/java/com/baidu/ueditor/PathFormat.java b/src/main/java/com/baidu/ueditor/PathFormat.java deleted file mode 100644 index 080ea48..0000000 --- a/src/main/java/com/baidu/ueditor/PathFormat.java +++ /dev/null @@ -1,157 +0,0 @@ -package com.baidu.ueditor; - -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class PathFormat { - - private static final String TIME = "time"; - private static final String FULL_YEAR = "yyyy"; - private static final String YEAR = "yy"; - private static final String MONTH = "mm"; - private static final String DAY = "dd"; - private static final String HOUR = "hh"; - private static final String MINUTE = "ii"; - private static final String SECOND = "ss"; - private static final String RAND = "rand"; - - private static Date currentDate = null; - - public static String parse ( String input ) { - - Pattern pattern = Pattern.compile( "\\{([^\\}]+)\\}", Pattern.CASE_INSENSITIVE ); - Matcher matcher = pattern.matcher(input); - - PathFormat.currentDate = new Date(); - - StringBuffer sb = new StringBuffer(); - - while ( matcher.find() ) { - - matcher.appendReplacement(sb, PathFormat.getString( matcher.group( 1 ) ) ); - - } - - matcher.appendTail(sb); - - return sb.toString(); - } - - /** - * 格式化路径, 把windows路径替换成标准路径 - * @param input 待格式化的路径 - * @return 格式化后的路径 - */ - public static String format ( String input ) { - - return input.replace( "\\", "/" ); - - } - - public static String parse ( String input, String filename ) { - - Pattern pattern = Pattern.compile( "\\{([^\\}]+)\\}", Pattern.CASE_INSENSITIVE ); - Matcher matcher = pattern.matcher(input); - String matchStr = null; - - PathFormat.currentDate = new Date(); - - StringBuffer sb = new StringBuffer(); - - while ( matcher.find() ) { - - matchStr = matcher.group( 1 ); - if ( matchStr.indexOf( "filename" ) != -1 ) { - filename = filename.replace( "$", "\\$" ).replaceAll( "[\\/:*?\"<>|]", "" ); - matcher.appendReplacement(sb, filename ); - } else { - matcher.appendReplacement(sb, PathFormat.getString( matchStr ) ); - } - - } - - matcher.appendTail(sb); - - return sb.toString(); - } - - private static String getString ( String pattern ) { - - pattern = pattern.toLowerCase(); - - // time 处理 - if ( pattern.indexOf( PathFormat.TIME ) != -1 ) { - return PathFormat.getTimestamp(); - } else if ( pattern.indexOf( PathFormat.FULL_YEAR ) != -1 ) { - return PathFormat.getFullYear(); - } else if ( pattern.indexOf( PathFormat.YEAR ) != -1 ) { - return PathFormat.getYear(); - } else if ( pattern.indexOf( PathFormat.MONTH ) != -1 ) { - return PathFormat.getMonth(); - } else if ( pattern.indexOf( PathFormat.DAY ) != -1 ) { - return PathFormat.getDay(); - } else if ( pattern.indexOf( PathFormat.HOUR ) != -1 ) { - return PathFormat.getHour(); - } else if ( pattern.indexOf( PathFormat.MINUTE ) != -1 ) { - return PathFormat.getMinute(); - } else if ( pattern.indexOf( PathFormat.SECOND ) != -1 ) { - return PathFormat.getSecond(); - } else if ( pattern.indexOf( PathFormat.RAND ) != -1 ) { - return PathFormat.getRandom( pattern ); - } - - return pattern; - - } - - private static String getTimestamp () { - return System.currentTimeMillis() + ""; - } - - private static String getFullYear () { - return new SimpleDateFormat( "yyyy" ).format( PathFormat.currentDate ); - } - - private static String getYear () { - return new SimpleDateFormat( "yy" ).format( PathFormat.currentDate ); - } - - private static String getMonth () { - return new SimpleDateFormat( "MM" ).format( PathFormat.currentDate ); - } - - private static String getDay () { - return new SimpleDateFormat( "dd" ).format( PathFormat.currentDate ); - } - - private static String getHour () { - return new SimpleDateFormat( "HH" ).format( PathFormat.currentDate ); - } - - private static String getMinute () { - return new SimpleDateFormat( "mm" ).format( PathFormat.currentDate ); - } - - private static String getSecond () { - return new SimpleDateFormat( "ss" ).format( PathFormat.currentDate ); - } - - private static String getRandom ( String pattern ) { - - int length = 0; - pattern = pattern.split( ":" )[ 1 ].trim(); - - length = Integer.parseInt( pattern ); - - return ( Math.random() + "" ).replace( ".", "" ).substring( 0, length ); - - } - - public static void main(String[] args) { - // TODO Auto-generated method stub - - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/ActionMap.java b/src/main/java/com/baidu/ueditor/define/ActionMap.java deleted file mode 100644 index 88f4f32..0000000 --- a/src/main/java/com/baidu/ueditor/define/ActionMap.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.baidu.ueditor.define; - -import java.util.Map; -import java.util.HashMap; - -/** - * 定义请求action类型 - * @author hancong03@baidu.com - * - */ -@SuppressWarnings("serial") -public final class ActionMap { - - public static final Map mapping; - // 获取配置请求 - public static final int CONFIG = 0; - public static final int UPLOAD_IMAGE = 1; - public static final int UPLOAD_SCRAWL = 2; - public static final int UPLOAD_VIDEO = 3; - public static final int UPLOAD_FILE = 4; - public static final int CATCH_IMAGE = 5; - public static final int LIST_FILE = 6; - public static final int LIST_IMAGE = 7; - - static { - mapping = new HashMap(){{ - put( "config", ActionMap.CONFIG ); - put( "uploadimage", ActionMap.UPLOAD_IMAGE ); - put( "uploadscrawl", ActionMap.UPLOAD_SCRAWL ); - put( "uploadvideo", ActionMap.UPLOAD_VIDEO ); - put( "uploadfile", ActionMap.UPLOAD_FILE ); - put( "catchimage", ActionMap.CATCH_IMAGE ); - put( "listfile", ActionMap.LIST_FILE ); - put( "listimage", ActionMap.LIST_IMAGE ); - }}; - } - - public static int getType ( String key ) { - return ActionMap.mapping.get( key ); - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/ActionState.java b/src/main/java/com/baidu/ueditor/define/ActionState.java deleted file mode 100644 index b0fad34..0000000 --- a/src/main/java/com/baidu/ueditor/define/ActionState.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.baidu.ueditor.define; - -public enum ActionState { - UNKNOW_ERROR -} diff --git a/src/main/java/com/baidu/ueditor/define/AppInfo.java b/src/main/java/com/baidu/ueditor/define/AppInfo.java deleted file mode 100644 index b869f2a..0000000 --- a/src/main/java/com/baidu/ueditor/define/AppInfo.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.baidu.ueditor.define; - -import java.util.HashMap; -import java.util.Map; - -public final class AppInfo { - - public static final int SUCCESS = 0; - public static final int MAX_SIZE = 1; - public static final int PERMISSION_DENIED = 2; - public static final int FAILED_CREATE_FILE = 3; - public static final int IO_ERROR = 4; - public static final int NOT_MULTIPART_CONTENT = 5; - public static final int PARSE_REQUEST_ERROR = 6; - public static final int NOTFOUND_UPLOAD_DATA = 7; - public static final int NOT_ALLOW_FILE_TYPE = 8; - - public static final int INVALID_ACTION = 101; - public static final int CONFIG_ERROR = 102; - - public static final int PREVENT_HOST = 201; - public static final int CONNECTION_ERROR = 202; - public static final int REMOTE_FAIL = 203; - - public static final int NOT_DIRECTORY = 301; - public static final int NOT_EXIST = 302; - - public static final int ILLEGAL = 401; - - public static Map info = new HashMap(){{ - - put( AppInfo.SUCCESS, "SUCCESS" ); - - // 无效的Action - put( AppInfo.INVALID_ACTION, "\u65E0\u6548\u7684Action" ); - // 配置文件初始化失败 - put( AppInfo.CONFIG_ERROR, "\u914D\u7F6E\u6587\u4EF6\u521D\u59CB\u5316\u5931\u8D25" ); - // 抓取远程图片失败 - put( AppInfo.REMOTE_FAIL, "\u6293\u53D6\u8FDC\u7A0B\u56FE\u7247\u5931\u8D25" ); - - // 被阻止的远程主机 - put( AppInfo.PREVENT_HOST, "\u88AB\u963B\u6B62\u7684\u8FDC\u7A0B\u4E3B\u673A" ); - // 远程连接出错 - put( AppInfo.CONNECTION_ERROR, "\u8FDC\u7A0B\u8FDE\u63A5\u51FA\u9519" ); - - // "文件大小超出限制" - put( AppInfo.MAX_SIZE, "\u6587\u4ef6\u5927\u5c0f\u8d85\u51fa\u9650\u5236" ); - // 权限不足, 多指写权限 - put( AppInfo.PERMISSION_DENIED, "\u6743\u9650\u4E0D\u8DB3" ); - // 创建文件失败 - put( AppInfo.FAILED_CREATE_FILE, "\u521B\u5EFA\u6587\u4EF6\u5931\u8D25" ); - // IO错误 - put( AppInfo.IO_ERROR, "IO\u9519\u8BEF" ); - // 上传表单不是multipart/form-data类型 - put( AppInfo.NOT_MULTIPART_CONTENT, "\u4E0A\u4F20\u8868\u5355\u4E0D\u662Fmultipart/form-data\u7C7B\u578B" ); - // 解析上传表单错误 - put( AppInfo.PARSE_REQUEST_ERROR, "\u89E3\u6790\u4E0A\u4F20\u8868\u5355\u9519\u8BEF" ); - // 未找到上传数据 - put( AppInfo.NOTFOUND_UPLOAD_DATA, "\u672A\u627E\u5230\u4E0A\u4F20\u6570\u636E" ); - // 不允许的文件类型 - put( AppInfo.NOT_ALLOW_FILE_TYPE, "\u4E0D\u5141\u8BB8\u7684\u6587\u4EF6\u7C7B\u578B" ); - - // 指定路径不是目录 - put( AppInfo.NOT_DIRECTORY, "\u6307\u5B9A\u8DEF\u5F84\u4E0D\u662F\u76EE\u5F55" ); - // 指定路径并不存在 - put( AppInfo.NOT_EXIST, "\u6307\u5B9A\u8DEF\u5F84\u5E76\u4E0D\u5B58\u5728" ); - - // callback参数名不合法 - put( AppInfo.ILLEGAL, "Callback\u53C2\u6570\u540D\u4E0D\u5408\u6CD5" ); - - }}; - - public static String getStateInfo ( int key ) { - return AppInfo.info.get( key ); - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/BaseState.java b/src/main/java/com/baidu/ueditor/define/BaseState.java deleted file mode 100644 index dcc881b..0000000 --- a/src/main/java/com/baidu/ueditor/define/BaseState.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.baidu.ueditor.define; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -import com.baidu.ueditor.Encoder; - -public class BaseState implements State { - - private boolean state = false; - private String info = null; - - private Map infoMap = new HashMap(); - - public BaseState () { - this.state = true; - } - - public BaseState ( boolean state ) { - this.setState( state ); - } - - public BaseState ( boolean state, String info ) { - this.setState( state ); - this.info = info; - } - - public BaseState ( boolean state, int infoCode ) { - this.setState( state ); - this.info = AppInfo.getStateInfo( infoCode ); - } - - public boolean isSuccess () { - return this.state; - } - - public void setState ( boolean state ) { - this.state = state; - } - - public void setInfo ( String info ) { - this.info = info; - } - - public void setInfo ( int infoCode ) { - this.info = AppInfo.getStateInfo( infoCode ); - } - - @Override - public String toJSONString() { - return this.toString(); - } - - public String toString () { - - String key = null; - String stateVal = this.isSuccess() ? AppInfo.getStateInfo( AppInfo.SUCCESS ) : this.info; - - StringBuilder builder = new StringBuilder(); - - builder.append( "{\"state\": \"" + stateVal + "\"" ); - - Iterator iterator = this.infoMap.keySet().iterator(); - - while ( iterator.hasNext() ) { - - key = iterator.next(); - - builder.append( ",\"" + key + "\": \"" + this.infoMap.get(key) + "\"" ); - - } - - builder.append( "}" ); - - return Encoder.toUnicode( builder.toString() ); - - } - - @Override - public void putInfo(String name, String val) { - this.infoMap.put(name, val); - } - - @Override - public void putInfo(String name, long val) { - this.putInfo(name, val+""); - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/FileType.java b/src/main/java/com/baidu/ueditor/define/FileType.java deleted file mode 100644 index 9195b85..0000000 --- a/src/main/java/com/baidu/ueditor/define/FileType.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.baidu.ueditor.define; - -import java.util.HashMap; -import java.util.Map; - -public class FileType { - - public static final String JPG = "JPG"; - - private static final Map types = new HashMap(){{ - - put( FileType.JPG, ".jpg" ); - - }}; - - public static String getSuffix ( String key ) { - return FileType.types.get( key ); - } - - /** - * 根据给定的文件名,获取其后缀信息 - * @param filename - * @return - */ - public static String getSuffixByFilename ( String filename ) { - - return filename.substring( filename.lastIndexOf( "." ) ).toLowerCase(); - - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/MIMEType.java b/src/main/java/com/baidu/ueditor/define/MIMEType.java deleted file mode 100644 index 77c6cdd..0000000 --- a/src/main/java/com/baidu/ueditor/define/MIMEType.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.baidu.ueditor.define; - -import java.util.HashMap; -import java.util.Map; - -public class MIMEType { - - public static final Map types = new HashMap(){{ - put( "image/gif", ".gif" ); - put( "image/jpeg", ".jpg" ); - put( "image/jpg", ".jpg" ); - put( "image/png", ".png" ); - put( "image/bmp", ".bmp" ); - }}; - - public static String getSuffix ( String mime ) { - return MIMEType.types.get( mime ); - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/MultiState.java b/src/main/java/com/baidu/ueditor/define/MultiState.java deleted file mode 100644 index 26caefb..0000000 --- a/src/main/java/com/baidu/ueditor/define/MultiState.java +++ /dev/null @@ -1,112 +0,0 @@ -package com.baidu.ueditor.define; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import com.baidu.ueditor.Encoder; - -/** - * 多状态集合状态 - * 其包含了多个状态的集合, 其本身自己也是一个状态 - * @author hancong03@baidu.com - * - */ -public class MultiState implements State { - - private boolean state = false; - private String info = null; - private Map intMap = new HashMap(); - private Map infoMap = new HashMap(); - private List stateList = new ArrayList(); - - public MultiState ( boolean state ) { - this.state = state; - } - - public MultiState ( boolean state, String info ) { - this.state = state; - this.info = info; - } - - public MultiState ( boolean state, int infoKey ) { - this.state = state; - this.info = AppInfo.getStateInfo( infoKey ); - } - - @Override - public boolean isSuccess() { - return this.state; - } - - public void addState ( State state ) { - stateList.add( state.toJSONString() ); - } - - /** - * 该方法调用无效果 - */ - @Override - public void putInfo(String name, String val) { - this.infoMap.put(name, val); - } - - @Override - public String toJSONString() { - - String stateVal = this.isSuccess() ? AppInfo.getStateInfo( AppInfo.SUCCESS ) : this.info; - - StringBuilder builder = new StringBuilder(); - - builder.append( "{\"state\": \"" + stateVal + "\"" ); - - // 数字转换 - Iterator iterator = this.intMap.keySet().iterator(); - - while ( iterator.hasNext() ) { - - stateVal = iterator.next(); - - builder.append( ",\""+ stateVal +"\": " + this.intMap.get( stateVal ) ); - - } - - iterator = this.infoMap.keySet().iterator(); - - while ( iterator.hasNext() ) { - - stateVal = iterator.next(); - - builder.append( ",\""+ stateVal +"\": \"" + this.infoMap.get( stateVal ) + "\"" ); - - } - - builder.append( ", list: [" ); - - - iterator = this.stateList.iterator(); - - while ( iterator.hasNext() ) { - - builder.append( iterator.next() + "," ); - - } - - if ( this.stateList.size() > 0 ) { - builder.deleteCharAt( builder.length() - 1 ); - } - - builder.append( " ]}" ); - - return Encoder.toUnicode( builder.toString() ); - - } - - @Override - public void putInfo(String name, long val) { - this.intMap.put( name, val ); - } - -} diff --git a/src/main/java/com/baidu/ueditor/define/State.java b/src/main/java/com/baidu/ueditor/define/State.java deleted file mode 100644 index 7addad6..0000000 --- a/src/main/java/com/baidu/ueditor/define/State.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.baidu.ueditor.define; - -/** - * 处理状态接口 - * @author hancong03@baidu.com - * - */ -public interface State { - - public boolean isSuccess(); - - public void putInfo(String name, String val); - - public void putInfo(String name, long val); - - public String toJSONString(); - -} diff --git a/src/main/java/com/baidu/ueditor/hunter/FileManager.java b/src/main/java/com/baidu/ueditor/hunter/FileManager.java deleted file mode 100644 index 5a8c1a0..0000000 --- a/src/main/java/com/baidu/ueditor/hunter/FileManager.java +++ /dev/null @@ -1,112 +0,0 @@ -package com.baidu.ueditor.hunter; - -import java.io.File; -import java.util.Arrays; -import java.util.Collection; -import java.util.Map; - -import org.apache.commons.io.FileUtils; - -import com.baidu.ueditor.PathFormat; -import com.baidu.ueditor.define.AppInfo; -import com.baidu.ueditor.define.BaseState; -import com.baidu.ueditor.define.MultiState; -import com.baidu.ueditor.define.State; - -public class FileManager { - - private String dir = null; - private String rootPath = null; - private String[] allowFiles = null; - private int count = 0; - - public FileManager ( Map conf ) { - - this.rootPath = (String)conf.get( "rootPath" ); - this.dir = this.rootPath + (String)conf.get( "dir" ); - this.allowFiles = this.getAllowFiles( conf.get("allowFiles") ); - this.count = (Integer)conf.get( "count" ); - - } - - public State listFile ( int index ) { - - File dir = new File( this.dir ); - State state = null; - - if ( !dir.exists() ) { - return new BaseState( false, AppInfo.NOT_EXIST ); - } - - if ( !dir.isDirectory() ) { - return new BaseState( false, AppInfo.NOT_DIRECTORY ); - } - - Collection list = FileUtils.listFiles( dir, this.allowFiles, true ); - - if ( index < 0 || index > list.size() ) { - state = new MultiState( true ); - } else { - Object[] fileList = Arrays.copyOfRange( list.toArray(), index, index + this.count ); - state = this.getState( fileList ); - } - - state.putInfo( "start", index ); - state.putInfo( "total", list.size() ); - - return state; - - } - - private State getState ( Object[] files ) { - - MultiState state = new MultiState( true ); - BaseState fileState = null; - - File file = null; - - for ( Object obj : files ) { - if ( obj == null ) { - break; - } - file = (File)obj; - fileState = new BaseState( true ); - fileState.putInfo( "url", PathFormat.format( this.getPath( file ) ) ); - state.addState( fileState ); - } - - return state; - - } - - private String getPath ( File file ) { - - String path = file.getAbsolutePath(); - - return path.replace( this.rootPath, "/" ); - - } - - private String[] getAllowFiles ( Object fileExt ) { - - String[] exts = null; - String ext = null; - - if ( fileExt == null ) { - return new String[ 0 ]; - } - - exts = (String[])fileExt; - - for ( int i = 0, len = exts.length; i < len; i++ ) { - - ext = exts[ i ]; - exts[ i ] = ext.replace( ".", "" ); - - } - - return exts; - - } - -} diff --git a/src/main/java/com/baidu/ueditor/hunter/ImageHunter.java b/src/main/java/com/baidu/ueditor/hunter/ImageHunter.java deleted file mode 100644 index 265bfed..0000000 --- a/src/main/java/com/baidu/ueditor/hunter/ImageHunter.java +++ /dev/null @@ -1,144 +0,0 @@ -package com.baidu.ueditor.hunter; - -import java.net.HttpURLConnection; -import java.net.InetAddress; -import java.net.URL; -import java.net.UnknownHostException; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import com.baidu.ueditor.PathFormat; -import com.baidu.ueditor.define.AppInfo; -import com.baidu.ueditor.define.BaseState; -import com.baidu.ueditor.define.MIMEType; -import com.baidu.ueditor.define.MultiState; -import com.baidu.ueditor.define.State; -import com.baidu.ueditor.upload.StorageManager; - -/** - * 图片抓取器 - * @author hancong03@baidu.com - * - */ -public class ImageHunter { - - private String filename = null; - private String savePath = null; - private String rootPath = null; - private List allowTypes = null; - private long maxSize = -1; - - private List filters = null; - - public ImageHunter ( Map conf ) { - - this.filename = (String)conf.get( "filename" ); - this.savePath = (String)conf.get( "savePath" ); - this.rootPath = (String)conf.get( "rootPath" ); - this.maxSize = (Long)conf.get( "maxSize" ); - this.allowTypes = Arrays.asList( (String[])conf.get( "allowFiles" ) ); - this.filters = Arrays.asList( (String[])conf.get( "filter" ) ); - - } - - public State capture ( String[] list ) { - - MultiState state = new MultiState( true ); - - for ( String source : list ) { - state.addState( captureRemoteData( source ) ); - } - - return state; - - } - - public State captureRemoteData ( String urlStr ) { - - HttpURLConnection connection = null; - URL url = null; - String suffix = null; - - try { - url = new URL( urlStr ); - - if ( !validHost( url.getHost() ) ) { - return new BaseState( false, AppInfo.PREVENT_HOST ); - } - - connection = (HttpURLConnection) url.openConnection(); - - connection.setInstanceFollowRedirects( true ); - connection.setUseCaches( true ); - - if ( !validContentState( connection.getResponseCode() ) ) { - return new BaseState( false, AppInfo.CONNECTION_ERROR ); - } - - suffix = MIMEType.getSuffix( connection.getContentType() ); - - if ( !validFileType( suffix ) ) { - return new BaseState( false, AppInfo.NOT_ALLOW_FILE_TYPE ); - } - - if ( !validFileSize( connection.getContentLength() ) ) { - return new BaseState( false, AppInfo.MAX_SIZE ); - } - - String savePath = this.getPath( this.savePath, this.filename, suffix ); - String physicalPath = this.rootPath + savePath; - - State state = StorageManager.saveFileByInputStream( connection.getInputStream(), physicalPath ); - - if ( state.isSuccess() ) { - state.putInfo( "url", PathFormat.format( savePath ) ); - state.putInfo( "source", urlStr ); - } - - return state; - - } catch ( Exception e ) { - return new BaseState( false, AppInfo.REMOTE_FAIL ); - } - - } - - private String getPath ( String savePath, String filename, String suffix ) { - - return PathFormat.parse( savePath + suffix, filename ); - - } - - private boolean validHost ( String hostname ) { - try { - InetAddress ip = InetAddress.getByName(hostname); - - if (ip.isSiteLocalAddress()) { - return false; - } - } catch (UnknownHostException e) { - return false; - } - - return !filters.contains( hostname ); - - } - - private boolean validContentState ( int code ) { - - return HttpURLConnection.HTTP_OK == code; - - } - - private boolean validFileType ( String type ) { - - return this.allowTypes.contains( type ); - - } - - private boolean validFileSize ( int size ) { - return size < this.maxSize; - } - -} diff --git a/src/main/java/com/baidu/ueditor/upload/Base64Uploader.java b/src/main/java/com/baidu/ueditor/upload/Base64Uploader.java deleted file mode 100644 index 2f81076..0000000 --- a/src/main/java/com/baidu/ueditor/upload/Base64Uploader.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.baidu.ueditor.upload; - -import com.baidu.ueditor.PathFormat; -import com.baidu.ueditor.define.AppInfo; -import com.baidu.ueditor.define.BaseState; -import com.baidu.ueditor.define.FileType; -import com.baidu.ueditor.define.State; - -import java.util.Map; - -import org.apache.commons.codec.binary.Base64; - -public final class Base64Uploader { - - public static State save(String content, Map conf) { - - byte[] data = decode(content); - - long maxSize = ((Long) conf.get("maxSize")).longValue(); - - if (!validSize(data, maxSize)) { - return new BaseState(false, AppInfo.MAX_SIZE); - } - - String suffix = FileType.getSuffix("JPG"); - - String savePath = PathFormat.parse((String) conf.get("savePath"), - (String) conf.get("filename")); - - savePath = savePath + suffix; - String physicalPath = (String) conf.get("rootPath") + savePath; - - State storageState = StorageManager.saveBinaryFile(data, physicalPath); - - if (storageState.isSuccess()) { - storageState.putInfo("url", PathFormat.format(savePath)); - storageState.putInfo("type", suffix); - storageState.putInfo("original", ""); - } - - return storageState; - } - - private static byte[] decode(String content) { - return Base64.decodeBase64(content); - } - - private static boolean validSize(byte[] data, long length) { - return data.length <= length; - } - -} \ No newline at end of file diff --git a/src/main/java/com/baidu/ueditor/upload/BinaryUploader.java b/src/main/java/com/baidu/ueditor/upload/BinaryUploader.java deleted file mode 100644 index c69f9dd..0000000 --- a/src/main/java/com/baidu/ueditor/upload/BinaryUploader.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.baidu.ueditor.upload; - -import com.baidu.ueditor.PathFormat; -import com.baidu.ueditor.define.AppInfo; -import com.baidu.ueditor.define.BaseState; -import com.baidu.ueditor.define.FileType; -import com.baidu.ueditor.define.State; - -import java.io.IOException; -import java.io.InputStream; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.fileupload.FileItemIterator; -import org.apache.commons.fileupload.FileItemStream; -import org.apache.commons.fileupload.FileUploadException; -import org.apache.commons.fileupload.disk.DiskFileItemFactory; -import org.apache.commons.fileupload.servlet.ServletFileUpload; - -public class BinaryUploader { - - public static final State save(HttpServletRequest request, - Map conf) { - FileItemStream fileStream = null; - boolean isAjaxUpload = request.getHeader( "X_Requested_With" ) != null; - - if (!ServletFileUpload.isMultipartContent(request)) { - return new BaseState(false, AppInfo.NOT_MULTIPART_CONTENT); - } - - ServletFileUpload upload = new ServletFileUpload( - new DiskFileItemFactory()); - - if ( isAjaxUpload ) { - upload.setHeaderEncoding( "UTF-8" ); - } - - try { - FileItemIterator iterator = upload.getItemIterator(request); - - while (iterator.hasNext()) { - fileStream = iterator.next(); - - if (!fileStream.isFormField()) - break; - fileStream = null; - } - - if (fileStream == null) { - return new BaseState(false, AppInfo.NOTFOUND_UPLOAD_DATA); - } - - String savePath = (String) conf.get("savePath"); - String originFileName = fileStream.getName(); - String suffix = FileType.getSuffixByFilename(originFileName); - - originFileName = originFileName.substring(0, - originFileName.length() - suffix.length()); - savePath = savePath + suffix; - - long maxSize = ((Long) conf.get("maxSize")).longValue(); - - if (!validType(suffix, (String[]) conf.get("allowFiles"))) { - return new BaseState(false, AppInfo.NOT_ALLOW_FILE_TYPE); - } - - savePath = PathFormat.parse(savePath, originFileName); - - String physicalPath = (String) conf.get("rootPath") + savePath; - - InputStream is = fileStream.openStream(); - State storageState = StorageManager.saveFileByInputStream(is, - physicalPath, maxSize); - is.close(); - - if (storageState.isSuccess()) { - storageState.putInfo("url", PathFormat.format(savePath)); - storageState.putInfo("type", suffix); - storageState.putInfo("original", originFileName + suffix); - } - - return storageState; - } catch (FileUploadException e) { - return new BaseState(false, AppInfo.PARSE_REQUEST_ERROR); - } catch (IOException e) { - } - return new BaseState(false, AppInfo.IO_ERROR); - } - - private static boolean validType(String type, String[] allowTypes) { - List list = Arrays.asList(allowTypes); - - return list.contains(type); - } -} diff --git a/src/main/java/com/baidu/ueditor/upload/StorageManager.java b/src/main/java/com/baidu/ueditor/upload/StorageManager.java deleted file mode 100644 index 33911c6..0000000 --- a/src/main/java/com/baidu/ueditor/upload/StorageManager.java +++ /dev/null @@ -1,155 +0,0 @@ -package com.baidu.ueditor.upload; - -import com.baidu.ueditor.define.AppInfo; -import com.baidu.ueditor.define.BaseState; -import com.baidu.ueditor.define.State; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; - -import org.apache.commons.io.FileUtils; - -public class StorageManager { - public static final int BUFFER_SIZE = 8192; - - public StorageManager() { - } - - public static State saveBinaryFile(byte[] data, String path) { - File file = new File(path); - - State state = valid(file); - - if (!state.isSuccess()) { - return state; - } - - try { - BufferedOutputStream bos = new BufferedOutputStream( - new FileOutputStream(file)); - bos.write(data); - bos.flush(); - bos.close(); - } catch (IOException ioe) { - return new BaseState(false, AppInfo.IO_ERROR); - } - - state = new BaseState(true, file.getAbsolutePath()); - state.putInfo( "size", data.length ); - state.putInfo( "title", file.getName() ); - return state; - } - - public static State saveFileByInputStream(InputStream is, String path, - long maxSize) { - State state = null; - - File tmpFile = getTmpFile(); - - byte[] dataBuf = new byte[ 2048 ]; - BufferedInputStream bis = new BufferedInputStream(is, StorageManager.BUFFER_SIZE); - - try { - BufferedOutputStream bos = new BufferedOutputStream( - new FileOutputStream(tmpFile), StorageManager.BUFFER_SIZE); - - int count = 0; - while ((count = bis.read(dataBuf)) != -1) { - bos.write(dataBuf, 0, count); - } - bos.flush(); - bos.close(); - - if (tmpFile.length() > maxSize) { - tmpFile.delete(); - return new BaseState(false, AppInfo.MAX_SIZE); - } - - state = saveTmpFile(tmpFile, path); - - if (!state.isSuccess()) { - tmpFile.delete(); - } - - return state; - - } catch (IOException e) { - } - return new BaseState(false, AppInfo.IO_ERROR); - } - - public static State saveFileByInputStream(InputStream is, String path) { - State state = null; - - File tmpFile = getTmpFile(); - - byte[] dataBuf = new byte[ 2048 ]; - BufferedInputStream bis = new BufferedInputStream(is, StorageManager.BUFFER_SIZE); - - try { - BufferedOutputStream bos = new BufferedOutputStream( - new FileOutputStream(tmpFile), StorageManager.BUFFER_SIZE); - - int count = 0; - while ((count = bis.read(dataBuf)) != -1) { - bos.write(dataBuf, 0, count); - } - bos.flush(); - bos.close(); - - state = saveTmpFile(tmpFile, path); - - if (!state.isSuccess()) { - tmpFile.delete(); - } - - return state; - } catch (IOException e) { - } - return new BaseState(false, AppInfo.IO_ERROR); - } - - private static File getTmpFile() { - File tmpDir = FileUtils.getTempDirectory(); - String tmpFileName = (Math.random() * 10000 + "").replace(".", ""); - return new File(tmpDir, tmpFileName); - } - - private static State saveTmpFile(File tmpFile, String path) { - State state = null; - File targetFile = new File(path); - - if (targetFile.canWrite()) { - return new BaseState(false, AppInfo.PERMISSION_DENIED); - } - try { - FileUtils.moveFile(tmpFile, targetFile); - } catch (IOException e) { - return new BaseState(false, AppInfo.IO_ERROR); - } - - state = new BaseState(true); - state.putInfo( "size", targetFile.length() ); - state.putInfo( "title", targetFile.getName() ); - - return state; - } - - private static State valid(File file) { - File parentPath = file.getParentFile(); - - if ((!parentPath.exists()) && (!parentPath.mkdirs())) { - return new BaseState(false, AppInfo.FAILED_CREATE_FILE); - } - - if (!parentPath.canWrite()) { - return new BaseState(false, AppInfo.PERMISSION_DENIED); - } - - return new BaseState(true); - } -} diff --git a/src/main/java/com/baidu/ueditor/upload/Uploader.java b/src/main/java/com/baidu/ueditor/upload/Uploader.java deleted file mode 100644 index 2312d1b..0000000 --- a/src/main/java/com/baidu/ueditor/upload/Uploader.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.baidu.ueditor.upload; - -import com.baidu.ueditor.define.State; -import java.util.Map; -import javax.servlet.http.HttpServletRequest; - -public class Uploader { - private HttpServletRequest request = null; - private Map conf = null; - - public Uploader(HttpServletRequest request, Map conf) { - this.request = request; - this.conf = conf; - } - - public final State doExec() { - String filedName = (String) this.conf.get("fieldName"); - State state = null; - - if ("true".equals(this.conf.get("isBase64"))) { - state = Base64Uploader.save(this.request.getParameter(filedName), - this.conf); - } else { - state = BinaryUploader.save(this.request, this.conf); - } - - return state; - } -} diff --git a/src/main/java/com/peanut/common/aspect/SysLogAspect.java b/src/main/java/com/peanut/common/aspect/SysLogAspect.java index 785be35..b044ca0 100644 --- a/src/main/java/com/peanut/common/aspect/SysLogAspect.java +++ b/src/main/java/com/peanut/common/aspect/SysLogAspect.java @@ -24,7 +24,7 @@ import org.aspectj.lang.reflect.MethodSignature; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.lang.reflect.Method; import java.util.Date; diff --git a/src/main/java/com/peanut/common/service/HlsDecryptService.java b/src/main/java/com/peanut/common/service/HlsDecryptService.java index 0fcb064..5ba34d9 100644 --- a/src/main/java/com/peanut/common/service/HlsDecryptService.java +++ b/src/main/java/com/peanut/common/service/HlsDecryptService.java @@ -3,20 +3,13 @@ package com.peanut.common.service; import com.aliyun.vod20170321.models.DecryptKMSDataKeyResponseBody; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.profile.DefaultProfile; -import com.peanut.common.utils.PlayToken; import com.peanut.common.utils.SpdbUtil; import com.sun.net.httpserver.Headers; import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; import com.sun.net.httpserver.spi.HttpServerProvider; -import lombok.extern.slf4j.Slf4j; import org.apache.commons.codec.binary.Base64; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.SpringApplication; -import org.springframework.stereotype.Service; - -import javax.annotation.PostConstruct; import java.io.IOException; import java.io.OutputStream; import java.net.HttpURLConnection; diff --git a/src/main/java/com/peanut/common/utils/FileDownloadUtil.java b/src/main/java/com/peanut/common/utils/FileDownloadUtil.java index 91b58c5..e74a0cf 100644 --- a/src/main/java/com/peanut/common/utils/FileDownloadUtil.java +++ b/src/main/java/com/peanut/common/utils/FileDownloadUtil.java @@ -1,6 +1,6 @@ package com.peanut.common.utils; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; diff --git a/src/main/java/com/peanut/common/utils/HttpContextUtil.java b/src/main/java/com/peanut/common/utils/HttpContextUtil.java index 7a73ac8..0bea78e 100644 --- a/src/main/java/com/peanut/common/utils/HttpContextUtil.java +++ b/src/main/java/com/peanut/common/utils/HttpContextUtil.java @@ -3,7 +3,7 @@ package com.peanut.common.utils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Objects; public class HttpContextUtil { diff --git a/src/main/java/com/peanut/common/utils/HttpContextUtils.java b/src/main/java/com/peanut/common/utils/HttpContextUtils.java index d9f4d7a..986a2b3 100644 --- a/src/main/java/com/peanut/common/utils/HttpContextUtils.java +++ b/src/main/java/com/peanut/common/utils/HttpContextUtils.java @@ -11,7 +11,7 @@ package com.peanut.common.utils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; public class HttpContextUtils { diff --git a/src/main/java/com/peanut/common/utils/IPUtils.java b/src/main/java/com/peanut/common/utils/IPUtils.java index 8dce45e..54cb29c 100644 --- a/src/main/java/com/peanut/common/utils/IPUtils.java +++ b/src/main/java/com/peanut/common/utils/IPUtils.java @@ -12,7 +12,7 @@ import com.alibaba.druid.util.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; /** * IP地址 diff --git a/src/main/java/com/peanut/common/utils/KdUtils.java b/src/main/java/com/peanut/common/utils/KdUtils.java index 252e1da..f05dce1 100644 --- a/src/main/java/com/peanut/common/utils/KdUtils.java +++ b/src/main/java/com/peanut/common/utils/KdUtils.java @@ -1,7 +1,6 @@ package com.peanut.common.utils; -import com.sun.org.apache.xerces.internal.impl.dv.util.Base64; - +import cn.hutool.core.codec.Base64; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.security.MessageDigest; diff --git a/src/main/java/com/peanut/common/utils/SmsUtil.java b/src/main/java/com/peanut/common/utils/SmsUtil.java new file mode 100644 index 0000000..7f76352 --- /dev/null +++ b/src/main/java/com/peanut/common/utils/SmsUtil.java @@ -0,0 +1,98 @@ +package com.peanut.common.utils; + +import com.alibaba.fastjson.JSONObject; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; + +import java.net.URLEncoder; + +@Component +public class SmsUtil { + + @Value("${sms.domestic.url}") + private String url; + @Value("${sms.domestic.account}") + private String account; + @Value("${sms.domestic.pswd}") + private String pswd; + @Value("${sms.domestic.content}") + private String content; + @Value("${sms.abroad.url}") + private String abroadUrl; + @Value("${sms.abroad.account}") + private String abroadAccount; + @Value("${sms.abroad.pswd}") + private String abroadPswd; + @Value("${sms.abroad.content}") + private String abroadContent; + + public R sendSmsCode(String phone, String code) { + try { + CloseableHttpClient client = HttpClients.createDefault(); + HttpPost httpPost = new HttpPost(url); + StringEntity entity = new StringEntity("" + + "account="+account+ + "&pswd="+pswd+ + "&mobile="+phone+ + "&msg="+ URLEncoder.encode(content.replace("XXXXXX",code), "UTF-8")+ + "&needstatus=false"); + httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded"); + httpPost.setEntity(entity); + String returnString = EntityUtils.toString(client.execute(httpPost).getEntity()); + //20250416115415,0 + String[] res = returnString.split(","); + if ("0".equals(res[1])){ + return R.ok(); + }else if ("104".equals(res[1])){ + return R.error("短信平台系统忙,请稍后重试。"); + }else if ("107".equals(res[1])){ + return R.error("错误的手机号码。"); + }else { + return R.error("系统错误,请联系管理员"); + } + } catch (Exception e) { + e.printStackTrace(); + return R.error("系统错误,请联系管理员"); + } + } + + public R sendSmsAbroad(String phone, String code){ + try { + CloseableHttpClient client = HttpClients.createDefault(); + HttpPost httpPost = new HttpPost(abroadUrl); + StringEntity entity = new StringEntity("" + + "sp_id="+abroadAccount+ + "&password="+MD5Utils.getStrrMD5(abroadPswd)+ + "&mobile="+phone+ + "&content="+abroadContent.replace("XXXXXX",code)); + httpPost.setEntity(entity); + httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded"); + String responseBody = EntityUtils.toString(client.execute(httpPost).getEntity()); + System.out.println(responseBody); + JSONObject object = JSONObject.parseObject(responseBody); + if ("0".equals(object.get("code").toString())){ + return R.ok(); + }else if ("10000".equals(object.get("code").toString())){ + return R.error("短信平台系统忙,请稍后重试。"); + }else { + if ("WL:CDQC".equals(object.get("data").toString())){ + return R.error("地区不支持。"); + }else if ("WL:CWHM".equals(object.get("data").toString())){ + return R.error("错误的手机号码。"); + }else { + return R.error("系统错误,请联系管理员"); + } + } + } catch (Exception e) { + e.printStackTrace(); + return R.error("系统错误,请联系管理员"); + } + } + + +} diff --git a/src/main/java/com/peanut/common/utils/UEditorUpload.java b/src/main/java/com/peanut/common/utils/UEditorUpload.java deleted file mode 100644 index 00cb103..0000000 --- a/src/main/java/com/peanut/common/utils/UEditorUpload.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.peanut.common.utils; - -import com.peanut.modules.app.entity.UEditorFile; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Component; -import org.springframework.util.ClassUtils; -import org.springframework.web.multipart.MultipartFile; - -import java.io.File; -import java.io.IOException; -import java.util.Date; - -@Component -public class UEditorUpload { - private Logger log = LoggerFactory.getLogger(UEditorUpload.class); - private String path = ClassUtils.getDefaultClassLoader().getResource("").getPath(); - - public UEditorFile uploadImage(MultipartFile file) throws IOException { - log.info("UEditor开始上传文件"); - String fileName = file.getOriginalFilename(); //获取文件名 - //Ueditor的config.json规定的返回路径格式 - String returnPath = "/image/upload/ueditor/"+new Date().getTime()+"/"+fileName; - File saveFile = new File(path+"static"+returnPath); - if (!saveFile.exists()){ - saveFile.mkdirs(); - } - file.transferTo(saveFile); //将临时文件移动到保存路径 - log.info("UEditor上传文件成功,保存路径:"+saveFile.getAbsolutePath()); - UEditorFile uEditorFile = new UEditorFile(); - uEditorFile.setState("SUCCESS"); - uEditorFile.setUrl(returnPath); //访问URL - uEditorFile.setTitle(fileName); - uEditorFile.setOriginal(fileName); - return uEditorFile; - } - -} diff --git a/src/main/java/com/peanut/common/validator/ValidatorUtils.java b/src/main/java/com/peanut/common/validator/ValidatorUtils.java index b4856f0..094dd20 100644 --- a/src/main/java/com/peanut/common/validator/ValidatorUtils.java +++ b/src/main/java/com/peanut/common/validator/ValidatorUtils.java @@ -11,9 +11,9 @@ package com.peanut.common.validator; import com.peanut.common.exception.RRException; import com.peanut.common.utils.Constant; -import javax.validation.ConstraintViolation; -import javax.validation.Validation; -import javax.validation.Validator; +import jakarta.validation.ConstraintViolation; +import jakarta.validation.Validation; +import jakarta.validation.Validator; import java.util.Set; /** diff --git a/src/main/java/com/peanut/common/validator/group/Group.java b/src/main/java/com/peanut/common/validator/group/Group.java index e9d0b56..225a269 100644 --- a/src/main/java/com/peanut/common/validator/group/Group.java +++ b/src/main/java/com/peanut/common/validator/group/Group.java @@ -8,7 +8,7 @@ package com.peanut.common.validator.group; -import javax.validation.GroupSequence; +import jakarta.validation.GroupSequence; /** * 定义校验顺序,如果AddGroup组失败,则UpdateGroup组不会再校验 diff --git a/src/main/java/com/peanut/common/xss/XssFilter.java b/src/main/java/com/peanut/common/xss/XssFilter.java index 13eabac..2041d6f 100644 --- a/src/main/java/com/peanut/common/xss/XssFilter.java +++ b/src/main/java/com/peanut/common/xss/XssFilter.java @@ -8,8 +8,8 @@ package com.peanut.common.xss; -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.*; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; /** diff --git a/src/main/java/com/peanut/common/xss/XssHttpServletRequestWrapper.java b/src/main/java/com/peanut/common/xss/XssHttpServletRequestWrapper.java index 5d15d76..f799dfe 100644 --- a/src/main/java/com/peanut/common/xss/XssHttpServletRequestWrapper.java +++ b/src/main/java/com/peanut/common/xss/XssHttpServletRequestWrapper.java @@ -13,10 +13,10 @@ import org.apache.commons.lang.StringUtils; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; -import javax.servlet.ReadListener; -import javax.servlet.ServletInputStream; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; +import jakarta.servlet.ReadListener; +import jakarta.servlet.ServletInputStream; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; import java.io.ByteArrayInputStream; import java.io.IOException; import java.util.LinkedHashMap; diff --git a/src/main/java/com/peanut/config/FilterConfig.java b/src/main/java/com/peanut/config/FilterConfig.java index 90ec7cb..826ca06 100644 --- a/src/main/java/com/peanut/config/FilterConfig.java +++ b/src/main/java/com/peanut/config/FilterConfig.java @@ -14,7 +14,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.filter.DelegatingFilterProxy; -import javax.servlet.DispatcherType; +import jakarta.servlet.DispatcherType; /** * Filter配置 diff --git a/src/main/java/com/peanut/config/MybatisPlusConfig.java b/src/main/java/com/peanut/config/MybatisPlusConfig.java index 85741f7..351f463 100644 --- a/src/main/java/com/peanut/config/MybatisPlusConfig.java +++ b/src/main/java/com/peanut/config/MybatisPlusConfig.java @@ -8,7 +8,8 @@ package com.peanut.config; -import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -20,11 +21,12 @@ import org.springframework.context.annotation.Configuration; @Configuration public class MybatisPlusConfig { - /** - * 分页插件 - */ @Bean - public PaginationInterceptor paginationInterceptor() { - return new PaginationInterceptor(); + public MybatisPlusInterceptor mybatisPlusInterceptor() { + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + // 添加分页插件 + interceptor.addInnerInterceptor(new PaginationInnerInterceptor()); + return interceptor; } + } diff --git a/src/main/java/com/peanut/config/ShiroConfig.java b/src/main/java/com/peanut/config/ShiroConfig.java index 8773ed5..235a38d 100644 --- a/src/main/java/com/peanut/config/ShiroConfig.java +++ b/src/main/java/com/peanut/config/ShiroConfig.java @@ -18,7 +18,7 @@ import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; diff --git a/src/main/java/com/peanut/config/SwaggerConfig.java b/src/main/java/com/peanut/config/SwaggerConfig.java deleted file mode 100644 index 7ac80e2..0000000 --- a/src/main/java/com/peanut/config/SwaggerConfig.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.config; - -import io.swagger.annotations.ApiOperation; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; -import springfox.documentation.builders.ApiInfoBuilder; -import springfox.documentation.builders.PathSelectors; -import springfox.documentation.builders.RequestHandlerSelectors; -import springfox.documentation.service.ApiInfo; -import springfox.documentation.service.ApiKey; -import springfox.documentation.spi.DocumentationType; -import springfox.documentation.spring.web.plugins.Docket; -import springfox.documentation.swagger2.annotations.EnableSwagger2; - -import java.util.List; - -import static com.google.common.collect.Lists.newArrayList; - -@Configuration -@EnableSwagger2 -public class SwaggerConfig implements WebMvcConfigurer { - - @Bean - public Docket createRestApi() { - return new Docket(DocumentationType.SWAGGER_2) - .apiInfo(apiInfo()) - .select() - //加了ApiOperation注解的类,才生成接口文档 - .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) - //包下的类,才生成接口文档 - //.apis(RequestHandlerSelectors.basePackage("io.renren.controller")) - .paths(PathSelectors.any()) - .build() - .securitySchemes(security()); - } - - private ApiInfo apiInfo() { - return new ApiInfoBuilder() - .title("人人开源") - .description("renren-fast文档") - .termsOfServiceUrl("https://www.renren.io") - .version("3.0.0") - .build(); - } - - private List security() { - return newArrayList( - new ApiKey("token", "token", "header") - ); - } - -} \ No newline at end of file diff --git a/src/main/java/com/peanut/modules/app/annotation/Login.java b/src/main/java/com/peanut/modules/app/annotation/Login.java deleted file mode 100644 index 9f0ccb6..0000000 --- a/src/main/java/com/peanut/modules/app/annotation/Login.java +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.annotation; - -import java.lang.annotation.*; - -/** - * app登录效验 - * - * @author Mark sunlightcs@gmail.com - */ -@Target(ElementType.METHOD) -@Retention(RetentionPolicy.RUNTIME) -@Documented -public @interface Login { -} diff --git a/src/main/java/com/peanut/modules/app/annotation/LoginUser.java b/src/main/java/com/peanut/modules/app/annotation/LoginUser.java deleted file mode 100644 index 6410b9d..0000000 --- a/src/main/java/com/peanut/modules/app/annotation/LoginUser.java +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.annotation; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * 登录用户信息 - * - * @author Mark sunlightcs@gmail.com - */ -@Target(ElementType.PARAMETER) -@Retention(RetentionPolicy.RUNTIME) -public @interface LoginUser { - -} diff --git a/src/main/java/com/peanut/modules/app/config/SMSConfig.java b/src/main/java/com/peanut/modules/app/config/SMSConfig.java deleted file mode 100644 index 42c9f36..0000000 --- a/src/main/java/com/peanut/modules/app/config/SMSConfig.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.peanut.modules.app.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -@ConfigurationProperties(prefix = "aliyun.sms") -@Component -@Data -public class SMSConfig { - - private String accessKeyId; - private String accessKeySecret; - private String singName; - private String templateCode; - private String sTemplateCode;//国际短信模版 - -} diff --git a/src/main/java/com/peanut/modules/app/config/Sample.java b/src/main/java/com/peanut/modules/app/config/Sample.java deleted file mode 100644 index 6fa7bdf..0000000 --- a/src/main/java/com/peanut/modules/app/config/Sample.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.peanut.modules.app.config; - -import com.aliyun.teaopenapi.models.*; - - -public class Sample { - public static com.aliyun.dysmsapi20170525.Client createClient(String accessKeyId, String accessKeySecret) throws Exception { - Config config = new Config() - // 您的 AccessKey ID - .setAccessKeyId(accessKeyId) - // 您的 AccessKey Secret - .setAccessKeySecret(accessKeySecret); - // 访问的域名 - config.endpoint = "dysmsapi.aliyuncs.com"; - return new com.aliyun.dysmsapi20170525.Client(config); - } -} diff --git a/src/main/java/com/peanut/modules/app/config/WebMvcConfig.java b/src/main/java/com/peanut/modules/app/config/WebMvcConfig.java deleted file mode 100644 index bb763a3..0000000 --- a/src/main/java/com/peanut/modules/app/config/WebMvcConfig.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.config; - -import com.peanut.modules.app.interceptor.AuthorizationInterceptor; -import com.peanut.modules.app.resolver.LoginUserHandlerMethodArgumentResolver; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.method.support.HandlerMethodArgumentResolver; -import org.springframework.web.servlet.config.annotation.InterceptorRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; - -import java.util.List; - -/** - * MVC配置 - * - * @author Mark sunlightcs@gmail.com - */ -@Configuration -public class WebMvcConfig implements WebMvcConfigurer { - @Autowired - private AuthorizationInterceptor authorizationInterceptor; - @Autowired - private LoginUserHandlerMethodArgumentResolver loginUserHandlerMethodArgumentResolver; - - @Override - public void addInterceptors(InterceptorRegistry registry) { - registry.addInterceptor(authorizationInterceptor).addPathPatterns("/app/**"); - } - - @Override - public void addArgumentResolvers(List argumentResolvers) { - argumentResolvers.add(loginUserHandlerMethodArgumentResolver); - } -} \ No newline at end of file diff --git a/src/main/java/com/peanut/modules/app/controller/AppLoginController.java b/src/main/java/com/peanut/modules/app/controller/AppLoginController.java deleted file mode 100644 index eb3db18..0000000 --- a/src/main/java/com/peanut/modules/app/controller/AppLoginController.java +++ /dev/null @@ -1,55 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.controller; - - -import com.peanut.modules.app.utils.JwtUtils; -import com.peanut.modules.book.service.MyUserService; -import io.swagger.annotations.Api; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * APP登录授权 - * - * @author Mark sunlightcs@gmail.com - */ -@RestController -@RequestMapping("/app") -@Api("APP登录接口") -public class AppLoginController { - @Autowired - private MyUserService userService; - @Autowired - private JwtUtils jwtUtils; - - /** - * 登录 - */ -// @PostMapping("login") -// @ApiOperation("登录") -// public R login(@RequestBody LoginForm form){ -// //表单校验 -// ValidatorUtils.validateEntity(form); -// -// //用户登录 -// long userId = userService.login(form); -// -// //生成token -// String token = jwtUtils.generateToken(userId); -// -// Map map = new HashMap<>(); -// map.put("token", token); -// map.put("expire", jwtUtils.getExpire()); -// -// return R.ok(map); -// } - -} diff --git a/src/main/java/com/peanut/modules/app/controller/AppRegisterController.java b/src/main/java/com/peanut/modules/app/controller/AppRegisterController.java deleted file mode 100644 index 8fda6a9..0000000 --- a/src/main/java/com/peanut/modules/app/controller/AppRegisterController.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.controller; - - -import com.peanut.modules.book.service.MyUserService; -import io.swagger.annotations.Api; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 注册 - * - * @author Mark sunlightcs@gmail.com - */ -@RestController -@RequestMapping("/app") -@Api("APP注册接口") -public class AppRegisterController { - @Autowired - private MyUserService userService; - -// @PostMapping("register") -// @ApiOperation("注册") -// public R register(@RequestBody RegisterForm form){ -// //表单校验 -// ValidatorUtils.validateEntity(form); -// -// UserEntity user = new UserEntity(); -// user.setMobile(form.getMobile()); -// user.setUsername(form.getMobile()); -// user.setPassword(DigestUtils.sha256Hex(form.getPassword())); -// user.setCreateTime(new Date()); -// userService.save(user); -// -// return R.ok(); -// } -} diff --git a/src/main/java/com/peanut/modules/app/controller/AppTestController.java b/src/main/java/com/peanut/modules/app/controller/AppTestController.java deleted file mode 100644 index 2ff214d..0000000 --- a/src/main/java/com/peanut/modules/app/controller/AppTestController.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.controller; - - -import com.peanut.common.utils.R; -import com.peanut.modules.app.annotation.Login; -import com.peanut.modules.app.annotation.LoginUser; -import com.peanut.modules.common.entity.MyUserEntity; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestAttribute; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * APP测试接口 - * - * @author Mark sunlightcs@gmail.com - */ -@RestController -@RequestMapping("/app") -@Api("APP测试接口") -public class AppTestController { - - @Login - @GetMapping("userInfo") - @ApiOperation("获取用户信息") - public R userInfo(@LoginUser MyUserEntity user){ - return R.ok().put("user", user); - } - - @Login - @GetMapping("userId") - @ApiOperation("获取用户ID") - public R userInfo(@RequestAttribute("userId") Integer userId){ - return R.ok().put("userId", userId); - } - - @GetMapping("notToken") - @ApiOperation("忽略Token验证测试") - public R notToken(){ - return R.ok().put("msg", "无需token也能访问。。。"); - } - -} diff --git a/src/main/java/com/peanut/modules/app/controller/UeditorController.java b/src/main/java/com/peanut/modules/app/controller/UeditorController.java deleted file mode 100644 index 1f473c7..0000000 --- a/src/main/java/com/peanut/modules/app/controller/UeditorController.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.peanut.modules.app.controller; - -import com.alibaba.fastjson.JSONObject; -import com.baidu.ueditor.ActionEnter; -import com.peanut.common.utils.UEditorUpload; -import com.peanut.modules.app.entity.UEditorFile; -import com.peanut.modules.oss.service.OssService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.io.ResourceLoader; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.InputStream; -import java.util.Map; - -@Controller -@RequestMapping("/ueditor") -public class UeditorController { - - @Autowired - ResourceLoader resourceLoader; - @Autowired - UEditorUpload ueditorUpload; - - @RequestMapping("/config") - @ResponseBody - public String exec(HttpServletRequest request, - HttpServletResponse response, - @RequestParam(value = "action") String action, - @RequestParam(value = "upfile", required = false) MultipartFile upfile) throws Exception { - if (action.equals("config")) { - request.setCharacterEncoding("utf-8"); - response.setContentType("text/html"); - String rootPath = request.getSession().getServletContext().getRealPath("/"); - return new ActionEnter(request, rootPath).exec(); - } else if (action.equals("uploadimage")) { - UEditorFile uEditorFile = ueditorUpload.uploadImage(upfile); - String jsonString = JSONObject.toJSONString(uEditorFile); - - return jsonString; - } else if (action.equals("uploadfile")) { - UEditorFile uEditorFile = ueditorUpload.uploadImage(upfile); - String jsonString = JSONObject.toJSONString(uEditorFile); - - return jsonString; - } - return "无效Action"; - } - -} - diff --git a/src/main/java/com/peanut/modules/app/entity/UEditorFile.java b/src/main/java/com/peanut/modules/app/entity/UEditorFile.java deleted file mode 100644 index afed300..0000000 --- a/src/main/java/com/peanut/modules/app/entity/UEditorFile.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.peanut.modules.app.entity; - -import lombok.Data; -import lombok.NoArgsConstructor; -import lombok.experimental.Accessors; - -@Data -@NoArgsConstructor -@Accessors(chain = true) -public class UEditorFile { - - private static final long serialVersionUID=1L; - - private String state; - - private String url; - - private String title; - - private String original; - - @Override - public String toString() { - return "{" + - "state='" + state + '\'' + - ", url='" + url + '\'' + - ", title='" + title + '\'' + - ", original='" + original + '\'' + - '}'; - } -} diff --git a/src/main/java/com/peanut/modules/app/form/LoginForm.java b/src/main/java/com/peanut/modules/app/form/LoginForm.java deleted file mode 100644 index 5af83f4..0000000 --- a/src/main/java/com/peanut/modules/app/form/LoginForm.java +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.form; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import javax.validation.constraints.NotBlank; - -/** - * 登录表单 - * - * @author Mark sunlightcs@gmail.com - */ -@Data -@ApiModel(value = "登录表单") -public class LoginForm { - @ApiModelProperty(value = "手机号") - @NotBlank(message="手机号不能为空") - private String mobile; - - @ApiModelProperty(value = "密码") - @NotBlank(message="密码不能为空") - private String password; - -} diff --git a/src/main/java/com/peanut/modules/app/form/RegisterForm.java b/src/main/java/com/peanut/modules/app/form/RegisterForm.java deleted file mode 100644 index ba9fd01..0000000 --- a/src/main/java/com/peanut/modules/app/form/RegisterForm.java +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.form; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import javax.validation.constraints.NotBlank; - -/** - * 注册表单 - * - * @author Mark sunlightcs@gmail.com - */ -@Data -@ApiModel(value = "注册表单") -public class RegisterForm { - @ApiModelProperty(value = "手机号") - @NotBlank(message="手机号不能为空") - private String mobile; - - @ApiModelProperty(value = "密码") - @NotBlank(message="密码不能为空") - private String password; - -} diff --git a/src/main/java/com/peanut/modules/app/interceptor/AuthorizationInterceptor.java b/src/main/java/com/peanut/modules/app/interceptor/AuthorizationInterceptor.java deleted file mode 100644 index bee1cdc..0000000 --- a/src/main/java/com/peanut/modules/app/interceptor/AuthorizationInterceptor.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.interceptor; - - -import com.peanut.common.exception.RRException; -import com.peanut.modules.app.annotation.Login; -import com.peanut.modules.app.utils.JwtUtils; -import io.jsonwebtoken.Claims; -import org.apache.commons.lang.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.stereotype.Component; -import org.springframework.web.method.HandlerMethod; -import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -/** - * 权限(Token)验证 - * - * @author Mark sunlightcs@gmail.com - */ -@Component -public class AuthorizationInterceptor extends HandlerInterceptorAdapter { - @Autowired - private JwtUtils jwtUtils; - - public static final String USER_KEY = "userId"; - - @Override - public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { - Login annotation; - if(handler instanceof HandlerMethod) { - annotation = ((HandlerMethod) handler).getMethodAnnotation(Login.class); - }else{ - return true; - } - - if(annotation == null){ - return true; - } - - //获取用户凭证 - String token = request.getHeader(jwtUtils.getHeader()); - if(StringUtils.isBlank(token)){ - token = request.getParameter(jwtUtils.getHeader()); - } - - //凭证为空 - if(StringUtils.isBlank(token)){ - throw new RRException(jwtUtils.getHeader() + "不能为空", HttpStatus.UNAUTHORIZED.value()); - } - - Claims claims = jwtUtils.getClaimByToken(token); - if(claims == null || jwtUtils.isTokenExpired(claims.getExpiration())){ - throw new RRException(jwtUtils.getHeader() + "失效,请重新登录", HttpStatus.UNAUTHORIZED.value()); - } - - //设置userId到request里,后续根据userId,获取用户信息 - request.setAttribute(USER_KEY, Long.parseLong(claims.getSubject())); - - return true; - } -} diff --git a/src/main/java/com/peanut/modules/app/resolver/LoginUserHandlerMethodArgumentResolver.java b/src/main/java/com/peanut/modules/app/resolver/LoginUserHandlerMethodArgumentResolver.java deleted file mode 100644 index c1662fa..0000000 --- a/src/main/java/com/peanut/modules/app/resolver/LoginUserHandlerMethodArgumentResolver.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.resolver; - -import com.peanut.modules.app.annotation.LoginUser; -import com.peanut.modules.app.interceptor.AuthorizationInterceptor; -import com.peanut.modules.common.entity.MyUserEntity; -import com.peanut.modules.book.service.MyUserService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.MethodParameter; -import org.springframework.stereotype.Component; -import org.springframework.web.bind.support.WebDataBinderFactory; -import org.springframework.web.context.request.NativeWebRequest; -import org.springframework.web.context.request.RequestAttributes; -import org.springframework.web.method.support.HandlerMethodArgumentResolver; -import org.springframework.web.method.support.ModelAndViewContainer; - -/** - * 有@LoginUser注解的方法参数,注入当前登录用户 - * - * @author Mark sunlightcs@gmail.com - */ -@Component -public class LoginUserHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver { - @Autowired - private MyUserService userService; - - @Override - public boolean supportsParameter(MethodParameter parameter) { - return parameter.getParameterType().isAssignableFrom(MyUserEntity.class) && parameter.hasParameterAnnotation(LoginUser.class); - } - - @Override - public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer container, - NativeWebRequest request, WebDataBinderFactory factory) throws Exception { - //获取用户ID - Object object = request.getAttribute(AuthorizationInterceptor.USER_KEY, RequestAttributes.SCOPE_REQUEST); - if(object == null){ - return null; - } - - //获取用户信息 - MyUserEntity user = userService.getById((Long)object); - - return user; - } -} diff --git a/src/main/java/com/peanut/modules/app/utils/JwtUtils.java b/src/main/java/com/peanut/modules/app/utils/JwtUtils.java deleted file mode 100644 index 35a1f5e..0000000 --- a/src/main/java/com/peanut/modules/app/utils/JwtUtils.java +++ /dev/null @@ -1,97 +0,0 @@ -/** - * Copyright (c) 2016-2019 人人开源 All rights reserved. - * - * https://www.renren.io - * - * 版权所有,侵权必究! - */ - -package com.peanut.modules.app.utils; - -import io.jsonwebtoken.Claims; -import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.SignatureAlgorithm; -import lombok.extern.slf4j.Slf4j; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -import java.util.Date; - -/** - * jwt工具类 - * - * @author Mark sunlightcs@gmail.com - */ -@Slf4j -@ConfigurationProperties(prefix = "renren.jwt") -@Component -public class JwtUtils { - private Logger logger = LoggerFactory.getLogger(getClass()); - - private String secret; - private long expire; - private String header; - - /** - * 生成jwt token - */ - public String generateToken(long userId) { - Date nowDate = new Date(); - //过期时间 - Date expireDate = new Date(nowDate.getTime() + expire * 1000); - - return Jwts.builder() - .setHeaderParam("typ", "JWT") - .setSubject(userId+"") - .setIssuedAt(nowDate) - .setExpiration(expireDate) - .signWith(SignatureAlgorithm.HS512, secret) - .compact(); - } - - public Claims getClaimByToken(String token) { - try { - return Jwts.parser() - .setSigningKey(secret) - .parseClaimsJws(token) - .getBody(); - }catch (Exception e){ - logger.debug("validate is token error ", e); - return null; - } - } - - /** - * token是否过期 - * @return true:过期 - */ - public boolean isTokenExpired(Date expiration) { - return expiration.before(new Date()); - } - - public String getSecret() { - return secret; - } - - public void setSecret(String secret) { - this.secret = secret; - } - - public long getExpire() { - return expire; - } - - public void setExpire(long expire) { - this.expire = expire; - } - - public String getHeader() { - return header; - } - - public void setHeader(String header) { - this.header = header; - } -} diff --git a/src/main/java/com/peanut/modules/book/controller/BookController.java b/src/main/java/com/peanut/modules/book/controller/BookController.java index 6f2247d..57ae85c 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookController.java @@ -226,19 +226,14 @@ public class BookController { } - - //查询书籍是否加入书架 - Integer integer = bookShelfService.getBaseMapper().selectCount(new QueryWrapper() + long integer = bookShelfService.getBaseMapper().selectCount(new QueryWrapper() .eq("book_id", id) .eq("user_id", userId)); - boolean flag = false; - if (integer > 0) { flag = true; } - book.setAuthorName(authorName); book.setPublisherName(publisherName); book.setFlag(flag); @@ -908,7 +903,7 @@ public class BookController { for (BookEntity b:bookEntityPage.getRecords()){ LambdaQueryWrapper bookForumArticlesEntityLambdaQueryWrapper = new LambdaQueryWrapper<>(); bookForumArticlesEntityLambdaQueryWrapper.eq(BookForumArticlesEntity::getBookid,b.getId()); - Integer integer = bookForumArticlesDao.selectCount(bookForumArticlesEntityLambdaQueryWrapper); + Integer integer = bookForumArticlesDao.selectCount(bookForumArticlesEntityLambdaQueryWrapper).intValue(); b.setForumNum(integer); } diff --git a/src/main/java/com/peanut/modules/book/controller/BookShelfController.java b/src/main/java/com/peanut/modules/book/controller/BookShelfController.java index 6729cc0..d494d12 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookShelfController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookShelfController.java @@ -70,8 +70,7 @@ public class BookShelfController { public R save(@RequestBody BookShelfEntity bookShelf){ // 加入前判断数据库是否加入过 这本书 - Integer integer = bookShelfService.getBaseMapper().selectCount(new QueryWrapper() - + long integer = bookShelfService.getBaseMapper().selectCount(new QueryWrapper() .eq("book_id", bookShelf.getBookId()) .eq("user_id", bookShelf.getUserId())); System.out.println("bookShelf"+bookShelf); diff --git a/src/main/java/com/peanut/modules/book/controller/BookTeachLikeAndCommentController.java b/src/main/java/com/peanut/modules/book/controller/BookTeachLikeAndCommentController.java index 8b90b0a..f42fd29 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookTeachLikeAndCommentController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookTeachLikeAndCommentController.java @@ -45,7 +45,7 @@ public class BookTeachLikeAndCommentController { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BookTeachLikeEntity::getDelFlag,0); wrapper.eq(BookTeachLikeEntity::getTeachId,teachId); - int count = likeService.count(wrapper); + long count = likeService.count(wrapper); return R.ok().put("count", count); } diff --git a/src/main/java/com/peanut/modules/book/controller/ExpressController.java b/src/main/java/com/peanut/modules/book/controller/ExpressController.java index 9758c1b..48e9f35 100644 --- a/src/main/java/com/peanut/modules/book/controller/ExpressController.java +++ b/src/main/java/com/peanut/modules/book/controller/ExpressController.java @@ -88,8 +88,8 @@ public class ExpressController { Page expressOrderPage = new Page<>(currentPage, pageSize); QueryWrapper expressOrderQueryWrapper = new QueryWrapper<>(); - int totalDataSize = expressOrderService.count(expressOrderQueryWrapper); - int totalPage = totalDataSize / pageSize + 1; + long totalDataSize = expressOrderService.count(expressOrderQueryWrapper); + int totalPage = Math.toIntExact(totalDataSize / pageSize + 1); Page page = expressOrderService.page(expressOrderPage, expressOrderQueryWrapper); List expressOrderList = page.getRecords(); List data = new ArrayList<>(); diff --git a/src/main/java/com/peanut/modules/book/controller/MyUserController.java b/src/main/java/com/peanut/modules/book/controller/MyUserController.java index 9e69294..ec966e5 100644 --- a/src/main/java/com/peanut/modules/book/controller/MyUserController.java +++ b/src/main/java/com/peanut/modules/book/controller/MyUserController.java @@ -215,14 +215,10 @@ public class MyUserController { } i = sb.toString() + i; String code = i + "_"+System.currentTimeMillis(); - //redis 缓存验证码 redisTemplate.opsForValue().set("RegistCode"+phone,code,5, TimeUnit.MINUTES); - //发送 - userService.sendCodeForRegister(phone,code,areacode); - - return R.ok(); + return userService.sendCodeForRegister(phone,code,areacode); } /** @@ -601,34 +597,6 @@ public class MyUserController { return R.ok(); } - /** - * 电子书购买 - */ - @RequestMapping("/buyEbook") - public R buyEbook(@RequestParam Map params){ - String msg = ""; - String bookId = (String) params.get("bookId"); - String userId = (String) params.get("userId"); - String couponId = (String) params.get("couponId"); - BookEntity book = this.bookService.getById(bookId); - MyUserEntity user = this.userService.getById(userId); - if(1 == book.getIsVip()){ - if(!"1".equals(user.getVip())){ - msg ="当前书籍为VIP书籍,请开通VIP后购买!"; - return R.ok().put("msg", msg).put("status","error"); - } - } - msg = userService.buyEbook(userId, bookId,couponId); - - if (msg.equals("当前书籍以购买,请勿重复购买!")) { - return R.ok().put("msg",msg).put("status","error"); - }else if (msg.equals("余额不足,请充值!")) { - return R.ok().put("msg",msg).put("status","error"); - }else { - return R.ok().put("msg",msg).put("status","success"); - } - } - /** * 花生币充扣 */ diff --git a/src/main/java/com/peanut/modules/book/service/MyUserService.java b/src/main/java/com/peanut/modules/book/service/MyUserService.java index a2b80d0..13a7c47 100644 --- a/src/main/java/com/peanut/modules/book/service/MyUserService.java +++ b/src/main/java/com/peanut/modules/book/service/MyUserService.java @@ -22,26 +22,19 @@ public interface MyUserService extends IService { PageUtils queryPage(Map params); - void sendCodeForRegister(String phone, String code,Integer areaCode) throws Exception; + R sendCodeForRegister(String phone, String code,Integer areaCode) throws Exception; //电子书鉴权 boolean bookAuthenticate(Integer bookId,Integer userId); - //电子书针对听书鉴权 boolean bookAuthen(Integer bookId,Integer userId); List getForumsLimit(Integer book_id, Integer limit); - //会员开通 电话 开通 期限 boolean openMember(Integer customerId,Integer openMonth); //充值花生币 boolean rechargeHSPoint(MyUserEntity userEntity,Integer HSPoint); - //电子书购买 - String buyEbook(String userId, String bookId,String couponId); - - //第三方微信登录 - R getUserInfoByApp(UserAppAuthorEntity userAppAuthorEntity); boolean checkUserBook(Integer userId,Integer bookId); diff --git a/src/main/java/com/peanut/modules/book/service/impl/BookForumArticlesServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BookForumArticlesServiceImpl.java index 0b8bb99..d123645 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BookForumArticlesServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BookForumArticlesServiceImpl.java @@ -57,7 +57,7 @@ public class BookForumArticlesServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BookForumArticlesEntity::getDelflag,0); wrapper.eq(BookForumArticlesEntity::getBookid,book_id); - int count = this.count(wrapper); + int count = (int)this.count(wrapper); return count; } } diff --git a/src/main/java/com/peanut/modules/book/service/impl/BookForumCommenServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BookForumCommenServiceImpl.java index 4656a07..e1948ac 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BookForumCommenServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BookForumCommenServiceImpl.java @@ -69,7 +69,7 @@ public class BookForumCommenServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BookForumCommentEntity::getBfaid,forum_id); wrapper.eq(BookForumCommentEntity::getDelflag,0); - int count = this.count(wrapper); + int count = (int)this.count(wrapper); return count; } @@ -93,7 +93,7 @@ public class BookForumCommenServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BookForumCommentEntity::getPid,comment_id); wrapper.eq(BookForumCommentEntity::getDelflag,0); - Integer integer = this.getBaseMapper().selectCount(wrapper); + Integer integer = this.getBaseMapper().selectCount(wrapper).intValue(); return integer; } } diff --git a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java index e0d27a2..6f3d387 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java @@ -280,7 +280,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl queryWrapper.eq("user_id", userId); queryWrapper.eq("address_id", addressId); queryWrapper.eq("address_modified", 0); - Integer totalSize = count(queryWrapper); + Integer totalSize = (int)count(queryWrapper); Integer totalPage = totalSize / requestVo.getPageSize() + 1; Page page = page(buyOrderPage, queryWrapper); List buyOrderList = page.getRecords(); @@ -593,7 +593,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl QueryWrapper buyOrderProductQueryWrapper = new QueryWrapper<>(); buyOrderProductQueryWrapper.eq("order_id", buyorder.getOrderId()); buyOrderProductQueryWrapper.eq("express_order_id", 0); - int count = buyOrderProductService.count(buyOrderProductQueryWrapper); + long count = buyOrderProductService.count(buyOrderProductQueryWrapper); if (count == 0) { buyorder.setOrderStatus(Constants.ORDER_STATUS_SHIPPED); } diff --git a/src/main/java/com/peanut/modules/book/service/impl/MyUserServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/MyUserServiceImpl.java index 2e35b3f..d774bd8 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/MyUserServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/MyUserServiceImpl.java @@ -1,37 +1,23 @@ package com.peanut.modules.book.service.impl; import com.alibaba.fastjson.JSONObject; -import com.alipay.api.domain.Member; -import com.aliyun.dysmsapi20170525.models.SendSmsRequest; -import com.aliyun.dysmsapi20170525.models.SendSmsResponse; -import com.aliyun.dysmsapi20170525.models.SendSmsResponseBody; -import com.aliyun.tea.TeaException; -import com.aliyun.teautil.Common; -import com.aliyun.teautil.models.RuntimeOptions; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.google.common.collect.Maps; import com.peanut.common.utils.*; import com.peanut.config.DelayQueueConfig; -import com.peanut.modules.app.config.SMSConfig; -import com.peanut.modules.app.config.Sample; import com.peanut.modules.book.service.*; import com.peanut.modules.common.entity.*; import com.peanut.modules.mq.service.RabbitMqService; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.beanutils.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; - import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.*; - import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - import com.peanut.modules.common.dao.MyUserDao; @Slf4j @@ -40,7 +26,7 @@ public class MyUserServiceImpl extends ServiceImpl impl @Autowired - private SMSConfig smsConfig; + private SmsUtil smsUtil; @Autowired private BookService bookService; @Autowired @@ -67,9 +53,13 @@ public class MyUserServiceImpl extends ServiceImpl impl } @Override - public void sendCodeForRegister(String phone, String code,Integer areaCode) throws Exception { + public R sendCodeForRegister(String phone, String code,Integer areaCode) throws Exception { String scode = code.split("_")[0]; - sendCode(phone,scode,areaCode); + if (areaCode!=null&&areaCode>0&&areaCode!=86){ + return smsUtil.sendSmsAbroad(""+areaCode+phone,scode); + }else { + return smsUtil.sendSmsCode(phone,scode); + } } @Override @@ -254,120 +244,6 @@ public class MyUserServiceImpl extends ServiceImpl impl this.updateById(user); return true; } - @Override - public String buyEbook(String userId, String bookId,String couponId) { - - String authorName = ""; - - //避免重复购买 - TransactionDetailsEntity entity = transactionDetailsService.getBaseMapper().selectOne(new QueryWrapper().eq("user_id", userId) - .eq("relation_id", bookId)); - - if (entity != null) { - return "余额不足,请充值!"; - } - - - BigDecimal salePrice = new BigDecimal(0); - - - // 查询书籍 价格 - BookEntity book = bookService.getById(Integer.valueOf(bookId)); - - // 是否为秒杀 - Integer isSale = book.getIsSale(); - if (isSale == 1) { - salePrice = book.getSalePrice(); - }else { - salePrice = book.getPrice(); - } - - //查询用户 - MyUserEntity user = this.getById(Integer.valueOf(userId)); - Double peanutCoin = user.getPeanutCoin().doubleValue() - salePrice.doubleValue(); - if (peanutCoin < 0) { - return "当前书籍已购买,请勿重复购买!"; - } - user.setPeanutCoin(new BigDecimal(peanutCoin)); - this.updateById(user); - - - TransactionDetailsEntity detailsEntity = new TransactionDetailsEntity(); - detailsEntity.setUserId(Integer.valueOf(userId)); - detailsEntity.setChangeAmount(salePrice.negate()); - detailsEntity.setUserBalance(user.getPeanutCoin()); - detailsEntity.setRemark("购买:"+book.getName()); - detailsEntity.setOrderType("购买电子书"); - detailsEntity.setRelationId(Integer.valueOf(bookId)); - detailsEntity.setUserName(user.getNickname()); - detailsEntity.setTel(user.getTel()); - transactionDetailsService.save(detailsEntity); - - // 插入购买记录 - UserEbookBuyEntity userEbookBuyEntity = new UserEbookBuyEntity(); - userEbookBuyEntity.setUserId(Integer.valueOf(userId)); - userEbookBuyEntity.setBookId(Integer.valueOf(bookId)); - userEbookBuyEntity.setBookName(book.getName()); - String authorId = book.getAuthorId(); - - String[] authorIds = authorId.split(","); - List authorList = Arrays.asList(authorIds); - List authorEntities = authorService.getBaseMapper().selectList(new QueryWrapper().in("id", authorList)); - - for (AuthorEntity authorEntity : authorEntities) { - authorName += "," + authorEntity.getAuthorName(); - } - - authorName = authorName.startsWith(",") ? authorName.substring(1) : authorName; - - - userEbookBuyEntity.setAuthor(authorName); - userEbookBuyEntity.setImage(book.getImages()); - userEbookBuyEntity.setPayStatus("支付成功"); - userEbookBuyEntity.setPayType("point"); - userEbookBuyEntity.setPayTime(new Date()); - userEbookBuyService.save(userEbookBuyEntity); - return "购买成功!"; - } - - - /** - * 微信授权登录 - * - * @param userAppAuthorEntity - */ - @Override - public R getUserInfoByApp(UserAppAuthorEntity userAppAuthorEntity) { - - // todo CommConfig WeiXinParam 表未建 - try { - Member member = new Member(); - BeanUtils.copyProperties(userAppAuthorEntity, member); - - CommConfig commConfig = new CommConfig(); - //调用微信授权 -// WeixinLoginUtils appWeiXinUserInfo1 = weixinLoginUtils1.getAppWeiXinUserInfo(commConfig.); - WeixinLoginUtils weixinLoginUtils = new WeixinLoginUtils(); - StringBuilder stringBuilder = weixinLoginUtils.getAccessTokenBycode(commConfig.getUserAppID(), commConfig.getUserAppSecret(), userAppAuthorEntity.getCode()); - if (stringBuilder != null) { - if (stringBuilder.toString().trim().contains("errcode")) { - return R.error(); - } - JSONObject object = JSONObject.parseObject(stringBuilder.toString().trim()); - String accessToken = object.getString("access_token"); //接口调用凭证 - String openID = object.getString("openid"); //授权用户唯一标识 - //获取微信用户基本信息 - WeiXinParam appWeiXinUserInfo = weixinLoginUtils.getAppWeiXinUserInfo(accessToken, openID, WeiXinParam.class); - // TODO 业务逻辑 - - return R.ok().put("member",member); - } - } catch (Exception e) { - e.printStackTrace(); - } - - return R.ok("sec"); - } @Override public boolean checkUserBook(Integer userId, Integer bookId) { @@ -378,37 +254,6 @@ public class MyUserServiceImpl extends ServiceImpl impl return userEbookBuyEntity != null; } - private void sendCode(String phone, String code, Integer areaCode) throws Exception { - com.aliyun.dysmsapi20170525.Client client = Sample.createClient(smsConfig.getAccessKeyId(),smsConfig.getAccessKeySecret()); - String tem; - if(areaCode!=null&&areaCode>0&&areaCode!=86){ - tem = smsConfig.getSTemplateCode(); - phone = areaCode+phone; - }else{ - tem = smsConfig.getTemplateCode(); - } - SendSmsRequest sendSmsRequest = new SendSmsRequest() - .setSignName(smsConfig.getSingName()) - .setTemplateCode(tem) - .setPhoneNumbers(phone) - .setTemplateParam("{\"code\":\""+ code +"\"}"); - RuntimeOptions runtime = new RuntimeOptions(); - try { - // 复制代码运行请自行打印 API 的返回值 - SendSmsResponse sendSmsResponse = client.sendSmsWithOptions(sendSmsRequest, runtime); - SendSmsResponseBody body = sendSmsResponse.getBody(); - System.out.println(body.getMessage()); - - } catch (TeaException error) { - // 如有需要,请打印 error - Common.assertAsString(error.message); - } catch (Exception _error) { - TeaException error = new TeaException(_error.getMessage(), _error); - // 如有需要,请打印 error - com.aliyun.teautil.Common.assertAsString(error.message); - } - } - @Override public boolean checkUserTelOrEmail(MyUserEntity user) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); diff --git a/src/main/java/com/peanut/modules/book/service/impl/UserAddressServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/UserAddressServiceImpl.java index af5b2f0..28db509 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/UserAddressServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/UserAddressServiceImpl.java @@ -86,6 +86,6 @@ public class UserAddressServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.eq("user_id", userId); queryWrapper.eq("is_default", 1); - return this.count(queryWrapper); + return (int)this.count(queryWrapper); } } \ No newline at end of file diff --git a/src/main/java/com/peanut/modules/book/to/UserRecordDto.java b/src/main/java/com/peanut/modules/book/to/UserRecordDto.java index e94c537..fdb0ecf 100644 --- a/src/main/java/com/peanut/modules/book/to/UserRecordDto.java +++ b/src/main/java/com/peanut/modules/book/to/UserRecordDto.java @@ -4,8 +4,8 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableLogic; import lombok.Data; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import java.io.Serializable; import java.util.Date; import java.util.List; diff --git a/src/main/java/com/peanut/modules/bookAbroad/controller/BookAbroadController.java b/src/main/java/com/peanut/modules/bookAbroad/controller/BookAbroadController.java index 9b1ab0a..7780737 100644 --- a/src/main/java/com/peanut/modules/bookAbroad/controller/BookAbroadController.java +++ b/src/main/java/com/peanut/modules/bookAbroad/controller/BookAbroadController.java @@ -51,10 +51,10 @@ public class BookAbroadController { List commentsTree = comments.stream() .filter((bookAbroadComment) -> bookAbroadComment.getPid() == 0) .map((comment)->{ - comment.setIsLike(bookAbroadCommentLikeService.count(new LambdaQueryWrapper() + comment.setIsLike((int) bookAbroadCommentLikeService.count(new LambdaQueryWrapper() .eq(BookAbroadCommentLike::getCommentId,comment.getId()) .eq(BookAbroadCommentLike::getUserId,ShiroUtils.getUId()))); - comment.setLikeCount(bookAbroadCommentLikeService.count(new LambdaQueryWrapper() + comment.setLikeCount((int)bookAbroadCommentLikeService.count(new LambdaQueryWrapper() .eq(BookAbroadCommentLike::getCommentId,comment.getId()))); comment.setUserEntity(userService.getOne(new LambdaQueryWrapper() .select(MyUserEntity::getId,MyUserEntity::getName,MyUserEntity::getNickname,MyUserEntity::getAvatar) @@ -72,10 +72,10 @@ public class BookAbroadController { List children = all.stream().filter(bookAbroadComment -> { return root.getId().equals(bookAbroadComment.getPid()); }).map(bookAbroadComment -> { - bookAbroadComment.setIsLike(bookAbroadCommentLikeService.count(new LambdaQueryWrapper() + bookAbroadComment.setIsLike((int)bookAbroadCommentLikeService.count(new LambdaQueryWrapper() .eq(BookAbroadCommentLike::getCommentId,bookAbroadComment.getId()) .eq(BookAbroadCommentLike::getUserId,ShiroUtils.getUId()))); - bookAbroadComment.setLikeCount(bookAbroadCommentLikeService.count(new LambdaQueryWrapper() + bookAbroadComment.setLikeCount((int)bookAbroadCommentLikeService.count(new LambdaQueryWrapper() .eq(BookAbroadCommentLike::getCommentId,bookAbroadComment.getId()))); bookAbroadComment.setUserEntity(userService.getOne(new LambdaQueryWrapper() .select(MyUserEntity::getId,MyUserEntity::getName,MyUserEntity::getNickname,MyUserEntity::getAvatar) @@ -94,7 +94,7 @@ public class BookAbroadController { //点赞 @RequestMapping("/insertBookAbroadCommentLike") public R insertBookAbroadCommentLike(@RequestBody BookAbroadCommentLike commentLike){ - int count = bookAbroadCommentLikeService.count(new LambdaQueryWrapper() + long count = bookAbroadCommentLikeService.count(new LambdaQueryWrapper() .eq(BookAbroadCommentLike::getCommentId,commentLike.getCommentId()) .eq(BookAbroadCommentLike::getUserId,ShiroUtils.getUId())); if (count > 0) { diff --git a/src/main/java/com/peanut/modules/bookAbroad/controller/HomeController.java b/src/main/java/com/peanut/modules/bookAbroad/controller/HomeController.java index 017154c..ceb177a 100644 --- a/src/main/java/com/peanut/modules/bookAbroad/controller/HomeController.java +++ b/src/main/java/com/peanut/modules/bookAbroad/controller/HomeController.java @@ -159,11 +159,11 @@ public class HomeController { wrapper.orderByAsc(BookAbroadToLable::getSort); List> list = toLableService.listMaps(wrapper); for (Map map : list) { - int readCount = bookReadRateService.count(new LambdaQueryWrapper() + long readCount = bookReadRateService.count(new LambdaQueryWrapper() .eq(BookReadRateEntity::getBookId,map.get("bookId"))); - int buyCount = userEbookBuyService.count(new LambdaQueryWrapper() + long buyCount = userEbookBuyService.count(new LambdaQueryWrapper() .eq(UserEbookBuyEntity::getBookId,map.get("bookId"))); - int listenCount = bookListeningService.count(new LambdaQueryWrapper() + long listenCount = bookListeningService.count(new LambdaQueryWrapper() .eq(BookListeningEntity::getBookId,map.get("bookId"))); map.put("readCount",readCount); map.put("buyCount",buyCount); @@ -178,7 +178,7 @@ public class HomeController { BookEntity bookEntity = bookService.getById(params.get("bookId").toString()); bookEntity.setAuthor(authorService.getById(bookEntity.getAuthorId())); bookEntity.setIsBuy(false); - int count = userEbookBuyService.count(new LambdaQueryWrapper() + long count = userEbookBuyService.count(new LambdaQueryWrapper() .eq(UserEbookBuyEntity::getUserId,ShiroUtils.getUId()) .eq(UserEbookBuyEntity::getBookId,params.get("bookId"))); if (count > 0) { @@ -227,11 +227,11 @@ public class HomeController { //已读\已买人数 @RequestMapping("/getBookReadCount") public R getBookReadCount(@RequestBody Map params){ - int readCount = bookReadRateService.count(new LambdaQueryWrapper() + long readCount = bookReadRateService.count(new LambdaQueryWrapper() .eq(BookReadRateEntity::getBookId,params.get("bookId"))); - int buyCount = userEbookBuyService.count(new LambdaQueryWrapper() + long buyCount = userEbookBuyService.count(new LambdaQueryWrapper() .eq(UserEbookBuyEntity::getBookId,params.get("bookId"))); - int listenCount = bookListeningService.count(new LambdaQueryWrapper() + long listenCount = bookListeningService.count(new LambdaQueryWrapper() .eq(BookListeningEntity::getBookId,params.get("bookId"))); return R.ok().put("readCount",readCount).put("buyCount",buyCount).put("listenCount",listenCount); } @@ -254,13 +254,13 @@ public class HomeController { @RequestMapping("/insertBookReadRate") public R insertBookReadRate(@RequestBody BookReadRateEntity bookReadRate){ //计算百分比 - int count = bookChapterContentService.count(new LambdaQueryWrapper() + long count = bookChapterContentService.count(new LambdaQueryWrapper() .eq(BookChapterContentEntity::getBookId,bookReadRate.getBookId()) .eq(BookChapterContentEntity::getLanguage,bookReadRate.getLanguage())); if (count>0){ BookChapterContentEntity bcc = bookChapterContentService.getById(bookReadRate.getContentId()); if (bcc != null) { - int pre = bcc.getNumber()*100/count; + int pre = bcc.getNumber()*100/ (int) count; bookReadRate.setPrecent(pre); } } diff --git a/src/main/java/com/peanut/modules/bookAbroad/controller/OrderController.java b/src/main/java/com/peanut/modules/bookAbroad/controller/OrderController.java index 1601296..982b7b4 100644 --- a/src/main/java/com/peanut/modules/bookAbroad/controller/OrderController.java +++ b/src/main/java/com/peanut/modules/bookAbroad/controller/OrderController.java @@ -50,7 +50,7 @@ public class OrderController { @RequestMapping("/placeOrder") @Transactional public R createOrder(@RequestBody BuyOrder buyOrder){ - int count = userEbookBuyService.count(new LambdaQueryWrapper() + long count = userEbookBuyService.count(new LambdaQueryWrapper() .eq(UserEbookBuyEntity::getUserId,ShiroUtils.getUId()) .eq(UserEbookBuyEntity::getBookId,buyOrder.getAbroadBookId())); if (count>0){ diff --git a/src/main/java/com/peanut/modules/bookAbroad/controller/VisitorController.java b/src/main/java/com/peanut/modules/bookAbroad/controller/VisitorController.java index 9f3993b..f4bc123 100644 --- a/src/main/java/com/peanut/modules/bookAbroad/controller/VisitorController.java +++ b/src/main/java/com/peanut/modules/bookAbroad/controller/VisitorController.java @@ -84,11 +84,11 @@ public class VisitorController { wrapper.orderByAsc(BookAbroadToLable::getSort); List> list = toLableService.listMaps(wrapper); for (Map map : list) { - int readCount = bookReadRateService.count(new LambdaQueryWrapper() + long readCount = bookReadRateService.count(new LambdaQueryWrapper() .eq(BookReadRateEntity::getBookId,map.get("bookId"))); - int buyCount = userEbookBuyService.count(new LambdaQueryWrapper() + long buyCount = userEbookBuyService.count(new LambdaQueryWrapper() .eq(UserEbookBuyEntity::getBookId,map.get("bookId"))); - int listenCount = bookListeningService.count(new LambdaQueryWrapper() + long listenCount = bookListeningService.count(new LambdaQueryWrapper() .eq(BookListeningEntity::getBookId,map.get("bookId"))); map.put("readCount",readCount); map.put("buyCount",buyCount); diff --git a/src/main/java/com/peanut/modules/common/controller/CouponController.java b/src/main/java/com/peanut/modules/common/controller/CouponController.java index 935c6f1..17b1ef9 100644 --- a/src/main/java/com/peanut/modules/common/controller/CouponController.java +++ b/src/main/java/com/peanut/modules/common/controller/CouponController.java @@ -59,7 +59,7 @@ public class CouponController { Page couponPage = couponService.page(new Page<>(page, limit), wrapper); for (CouponEntity couponEntity : couponPage.getRecords()) { couponService.setRangeList(couponEntity); - couponEntity.setGrantCount(couponHistoryService.count(new LambdaQueryWrapper() + couponEntity.setGrantCount((int) couponHistoryService.count(new LambdaQueryWrapper() .eq(CouponHistory::getCouponId,couponEntity.getId()))); } return R.ok().put("couponPage",couponPage); @@ -110,7 +110,7 @@ public class CouponController { public R getCouponInfo(@RequestBody Map params){ CouponEntity couponEntity = couponService.getByIdSetRange(Integer.parseInt(params.get("id").toString())); couponService.setRangeList(couponEntity); - couponEntity.setGrantCount(couponHistoryService.count(new LambdaQueryWrapper() + couponEntity.setGrantCount((int) couponHistoryService.count(new LambdaQueryWrapper() .eq(CouponHistory::getCouponId,couponEntity.getId()))); return R.ok().put("couponEntity",couponEntity); } @@ -136,7 +136,7 @@ public class CouponController { @Transactional public R delCoupon(@RequestBody Map params){ int couponId = Integer.parseInt(params.get("id").toString()); - int count = couponHistoryService.count(new LambdaQueryWrapper() + long count = couponHistoryService.count(new LambdaQueryWrapper() .eq(CouponHistory::getCouponId,couponId)); if (count>0){ return R.error("已有用户拥有优惠券"); diff --git a/src/main/java/com/peanut/modules/common/controller/ExpressController.java b/src/main/java/com/peanut/modules/common/controller/ExpressController.java index 4190852..d7bbfcc 100644 --- a/src/main/java/com/peanut/modules/common/controller/ExpressController.java +++ b/src/main/java/com/peanut/modules/common/controller/ExpressController.java @@ -85,7 +85,7 @@ public class ExpressController { Page expressOrderPage = new Page<>(currentPage, pageSize); QueryWrapper expressOrderQueryWrapper = new QueryWrapper<>(); - int totalDataSize = expressOrderService.count(expressOrderQueryWrapper); + int totalDataSize = (int) expressOrderService.count(expressOrderQueryWrapper); int totalPage = totalDataSize / pageSize + 1; Page page = expressOrderService.page(expressOrderPage, expressOrderQueryWrapper); List expressOrderList = page.getRecords(); diff --git a/src/main/java/com/peanut/modules/common/controller/UserController.java b/src/main/java/com/peanut/modules/common/controller/UserController.java index 3b4fe94..fcd15f3 100644 --- a/src/main/java/com/peanut/modules/common/controller/UserController.java +++ b/src/main/java/com/peanut/modules/common/controller/UserController.java @@ -80,8 +80,7 @@ public class UserController { //redis 缓存验证码 redisTemplate.opsForValue().set("RegistCode"+phone,code,5, TimeUnit.MINUTES); //发送 - userService.sendCodeForRegister(phone,code,areacode); - return R.ok(); + return userService.sendCodeForRegister(phone,code,areacode); } /** diff --git a/src/main/java/com/peanut/modules/common/controller/UserVipController.java b/src/main/java/com/peanut/modules/common/controller/UserVipController.java index 167335b..4757667 100644 --- a/src/main/java/com/peanut/modules/common/controller/UserVipController.java +++ b/src/main/java/com/peanut/modules/common/controller/UserVipController.java @@ -23,7 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; import java.math.BigDecimal; import java.time.LocalDate; import java.time.Period; diff --git a/src/main/java/com/peanut/modules/common/entity/PayWechatOrderEntity.java b/src/main/java/com/peanut/modules/common/entity/PayWechatOrderEntity.java index 66484e1..20ecb5f 100644 --- a/src/main/java/com/peanut/modules/common/entity/PayWechatOrderEntity.java +++ b/src/main/java/com/peanut/modules/common/entity/PayWechatOrderEntity.java @@ -3,10 +3,6 @@ package com.peanut.modules.common.entity; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import org.joda.time.DateTime; - -import javax.persistence.Column; -import javax.xml.soap.Text; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; diff --git a/src/main/java/com/peanut/modules/common/entity/UserAppAuthorEntity.java b/src/main/java/com/peanut/modules/common/entity/UserAppAuthorEntity.java index 8988a38..15a3cd6 100644 --- a/src/main/java/com/peanut/modules/common/entity/UserAppAuthorEntity.java +++ b/src/main/java/com/peanut/modules/common/entity/UserAppAuthorEntity.java @@ -2,8 +2,8 @@ package com.peanut.modules.common.entity; import lombok.Data; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; @Data public class UserAppAuthorEntity { diff --git a/src/main/java/com/peanut/modules/common/entity/UserFeedbackEntity.java b/src/main/java/com/peanut/modules/common/entity/UserFeedbackEntity.java index b4e1e61..754bb03 100644 --- a/src/main/java/com/peanut/modules/common/entity/UserFeedbackEntity.java +++ b/src/main/java/com/peanut/modules/common/entity/UserFeedbackEntity.java @@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import java.util.Date; /** diff --git a/src/main/java/com/peanut/modules/common/entity/UserFollowUpEntity.java b/src/main/java/com/peanut/modules/common/entity/UserFollowUpEntity.java index 1b9eb17..72264ec 100644 --- a/src/main/java/com/peanut/modules/common/entity/UserFollowUpEntity.java +++ b/src/main/java/com/peanut/modules/common/entity/UserFollowUpEntity.java @@ -6,8 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import java.util.Date; /** diff --git a/src/main/java/com/peanut/modules/common/entity/UserRecord.java b/src/main/java/com/peanut/modules/common/entity/UserRecord.java index 6d36f0f..f57cddf 100644 --- a/src/main/java/com/peanut/modules/common/entity/UserRecord.java +++ b/src/main/java/com/peanut/modules/common/entity/UserRecord.java @@ -6,8 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; +import jakarta.persistence.Temporal; +import jakarta.persistence.TemporalType; import java.util.Date; @Data diff --git a/src/main/java/com/peanut/modules/common/service/MyUserService.java b/src/main/java/com/peanut/modules/common/service/MyUserService.java index 3bdf05f..a7c5338 100644 --- a/src/main/java/com/peanut/modules/common/service/MyUserService.java +++ b/src/main/java/com/peanut/modules/common/service/MyUserService.java @@ -1,10 +1,11 @@ package com.peanut.modules.common.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.common.utils.R; import com.peanut.modules.common.entity.MyUserEntity; public interface MyUserService extends IService { - void sendCodeForRegister(String phone, String code,Integer areaCode) throws Exception; + R sendCodeForRegister(String phone, String code, Integer areaCode) throws Exception; } diff --git a/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java index b031d1e..9c122e8 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/ClassEntityServiceImpl.java @@ -244,29 +244,29 @@ public class ClassEntityServiceImpl extends ServiceImpl() + long monitorCount = classUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"1")); if (monitorCount<1){ return R.error("请先设置班长"); } - int dmonitorCount = classUserDao.selectCount(new LambdaQueryWrapper() + long dmonitorCount = classUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"2")); if (dmonitorCount<1){ return R.error("请先设置副班长"); } - int studyCount = classUserDao.selectCount(new LambdaQueryWrapper() + long studyCount = classUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"3")); if (studyCount<1){ return R.error("请先设置学习委员"); } - int commentCount = classUserDao.selectCount(new LambdaQueryWrapper() + long commentCount = classUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"4")); if (commentCount<3){ return R.error("请先设置3位评分员"); } if (classModel.getIsTask()==1){ - int taskCount = classTaskDao.selectCount(new LambdaQueryWrapper() + long taskCount = classTaskDao.selectCount(new LambdaQueryWrapper() .eq(ClassTask::getClassId,classEntity.getId()).eq(ClassTask::getType,"0")); double allWeek = Math.ceil((classModel.getDays()-classModel.getExamDays())/7.0)-2; if (taskCount() + long studentCount = classUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"0")); if (studentCount() - .eq(ClassExamSubject::getCourseId,classCourse.getCourseId()).eq(ClassExamSubject::getType,"0")); + .eq(ClassExamSubject::getCourseId,classCourse.getCourseId()).eq(ClassExamSubject::getType,"0")).intValue(); if (singleCount() - .eq(ClassExamSubject::getCourseId,classCourse.getCourseId()).eq(ClassExamSubject::getType,"1")); + .eq(ClassExamSubject::getCourseId,classCourse.getCourseId()).eq(ClassExamSubject::getType,"1")).intValue(); if (multipleCount catalogues = courseCatalogueDao.selectList(new LambdaQueryWrapper() .eq(CourseCatalogueEntity::getCourseId,classCourse.getCourseId())); for (CourseCatalogueEntity catalog:catalogues){ - int ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() + long ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseBuyEntity::getUserId,classUser.getUserId()) .eq(UserCourseBuyEntity::getCatalogueId,catalog.getId())); if (ucbCount == 0){ @@ -526,7 +526,7 @@ public class ClassEntityServiceImpl extends ServiceImpl params) { ClassEntity classEntity = this.getBaseMapper().selectById(params.get("classId").toString()); - int count = classUserDao.selectCount( + long count = classUserDao.selectCount( new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()) .eq(ClassUser::getRole,0)); @@ -584,7 +584,7 @@ public class ClassEntityServiceImpl extends ServiceImpl catalogues = courseCatalogueDao.selectList(new LambdaQueryWrapper() .eq(CourseCatalogueEntity::getCourseId,course.getId())); for (CourseCatalogueEntity catalog:catalogues){ - int ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() + long ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseBuyEntity::getUserId,user.getId()) .eq(UserCourseBuyEntity::getCatalogueId,catalog.getId())); if (ucbCount > 0){ @@ -708,7 +708,7 @@ public class ClassEntityServiceImpl extends ServiceImpl catalogues = courseCatalogueDao.selectList(new LambdaQueryWrapper() .eq(CourseCatalogueEntity::getCourseId,classCourse.getCourseId())); for (CourseCatalogueEntity catalog:catalogues){ - int ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() + long ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseBuyEntity::getUserId,user.getId()) .eq(UserCourseBuyEntity::getCatalogueId,catalog.getId())); if (ucbCount == 0){ @@ -738,7 +738,7 @@ public class ClassEntityServiceImpl extends ServiceImpl 0){ for (ClassCourse classCourse:courseList){ //是否有拿过该课程证书 - int count = userCertificateDao.selectCount(new LambdaQueryWrapper() + long count = userCertificateDao.selectCount(new LambdaQueryWrapper() .and(t->t.eq(UserCertificate::getType,"A").or().eq(UserCertificate::getType,"B")) .eq(UserCertificate::getCourseId,classCourse.getCourseId()) .eq(UserCertificate::getUserId,ShiroUtils.getUId())); @@ -759,7 +759,7 @@ public class ClassEntityServiceImpl extends ServiceImpl() + long count = classUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassUser::getClassId,classEntity.getId()) .eq(ClassUser::getRole,"0")); if (count classTaskPage = classTaskDao.selectPage(new Page<>(page, limit), wrapper); for (ClassTask classTask:classTaskPage.getRecords()){ - int alreadyReply = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() + long alreadyReply = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() .eq(ClassTaskAndQuesReply::getRelationId,classTask.getId())); - int userNoCount = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() + long userNoCount = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() .eq(ClassTaskAndQuesReply::getRelationId,classTask.getId()) .lt(ClassTaskAndQuesReply::getScoreSuccess,2) .notLike(ClassTaskAndQuesReply::getScoreInfo,"\""+ShiroUtils.getUId()+"\"")); @@ -971,7 +971,7 @@ public class ClassEntityServiceImpl extends ServiceImpl params) { ClassTask classTask = classTaskDao.selectById(params.get("taskId").toString()); classTask.setCreateUser(myUserDao.selectById(classTask.getUserId().toString())); - int count = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() + long count = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() .eq(ClassTaskAndQuesReply::getRelationId,classTask.getId()) .eq(ClassTaskAndQuesReply::getUserId,ShiroUtils.getUId())); if (count > 0) { @@ -1281,7 +1281,7 @@ public class ClassEntityServiceImpl extends ServiceImpl wrapper = new MPJLambdaWrapper(); wrapper.eq(ClassTask::getClassId,classEntity.getId()); wrapper.eq(ClassTask::getType,"0"); - int count = classTaskDao.selectCount(wrapper); + long count = classTaskDao.selectCount(wrapper); BigDecimal totalScore = new BigDecimal(staticScore*count); task0Score = task0Score.divide(totalScore,2, RoundingMode.HALF_UP); task0Score = task0Score.multiply(new BigDecimal(classModel.getTaskScore())); @@ -1313,7 +1313,7 @@ public class ClassEntityServiceImpl extends ServiceImpl wrapper = new MPJLambdaWrapper(); wrapper.eq(ClassTask::getClassId,classEntity.getId()); wrapper.eq(ClassTask::getType,"1"); - int count = classTaskDao.selectCount(wrapper); + long count = classTaskDao.selectCount(wrapper); BigDecimal totalScore = new BigDecimal(staticScore*count); task1Score = task1Score.divide(totalScore,2, RoundingMode.HALF_UP); task1Score = task1Score.multiply(new BigDecimal(classModel.getMedicalcaseScore())); @@ -1402,17 +1402,17 @@ public class ClassEntityServiceImpl extends ServiceImpl() + long classExamUsers = classExamUserDao.selectCount(new LambdaQueryWrapper() .eq(ClassExamUser::getRelationId,classEntity.getId()) .eq(ClassExamUser::getScoreSuccess,0)); if (classExamUsers>0){ return R.error("有学员正在考试,请稍后再试"); } - int taskReplys = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() + long taskReplys = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() .eq(ClassTaskAndQuesReply::getClassId,classEntity.getId()) .eq(ClassTaskAndQuesReply::getType,0) .ne(ClassTaskAndQuesReply::getScoreSuccess,2)); - int questionReplys = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() + long questionReplys = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper() .eq(ClassTaskAndQuesReply::getClassId,classEntity.getId()) .eq(ClassTaskAndQuesReply::getType,1) .eq(ClassTaskAndQuesReply::getScoreSuccess,0)); diff --git a/src/main/java/com/peanut/modules/common/service/impl/CouponServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/CouponServiceImpl.java index 93678d0..c0cd62f 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/CouponServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/CouponServiceImpl.java @@ -79,7 +79,7 @@ public class CouponServiceImpl extends ServiceImpl impl public R insertCouponHistory(int couponId, int userId,int getType,String remark) { CouponEntity couponEntity = couponDao.selectById(couponId); if (couponEntity.getCurrentState()==0){ - int historyCount = couponHistoryDao.selectCount(new LambdaQueryWrapper() + long historyCount = couponHistoryDao.selectCount(new LambdaQueryWrapper() .eq(CouponHistory::getCouponId,couponId)); //是否超出总发行量 if (historyCount wrapper = new LambdaQueryWrapper<>(); wrapper.eq(CourseGuestbookSupport::getGuestbookId,guestbookId); - return supportDao.selectCount(wrapper); + return supportDao.selectCount(wrapper).intValue(); } public boolean getUserSupport(int guestbookId,int userId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(CourseGuestbookSupport::getGuestbookId,guestbookId); wrapper.eq(CourseGuestbookSupport::getUserId,userId); - int c = supportDao.selectCount(wrapper); + int c = supportDao.selectCount(wrapper).intValue(); if (c>0){ return true; }else { diff --git a/src/main/java/com/peanut/modules/common/service/impl/MyUserServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/MyUserServiceImpl.java index 9b56727..9bd4bf3 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/MyUserServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/MyUserServiceImpl.java @@ -1,14 +1,8 @@ package com.peanut.modules.common.service.impl; -import com.aliyun.dysmsapi20170525.models.SendSmsRequest; -import com.aliyun.dysmsapi20170525.models.SendSmsResponse; -import com.aliyun.dysmsapi20170525.models.SendSmsResponseBody; -import com.aliyun.tea.TeaException; -import com.aliyun.teautil.Common; -import com.aliyun.teautil.models.RuntimeOptions; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.peanut.modules.app.config.SMSConfig; -import com.peanut.modules.app.config.Sample; +import com.peanut.common.utils.R; +import com.peanut.common.utils.SmsUtil; import com.peanut.modules.common.dao.MyUserDao; import com.peanut.modules.common.entity.MyUserEntity; import com.peanut.modules.common.service.MyUserService; @@ -21,41 +15,15 @@ import org.springframework.stereotype.Service; public class MyUserServiceImpl extends ServiceImpl implements MyUserService { @Autowired - private SMSConfig smsConfig; + private SmsUtil smsUtil; @Override - public void sendCodeForRegister(String phone, String code, Integer areaCode) throws Exception { + public R sendCodeForRegister(String phone, String code, Integer areaCode){ String scode = code.split("_")[0]; - sendCode(phone,scode,areaCode); - } - - private void sendCode(String phone, String code, Integer areaCode) throws Exception { - com.aliyun.dysmsapi20170525.Client client = Sample.createClient(smsConfig.getAccessKeyId(),smsConfig.getAccessKeySecret()); - String tem; - if(areaCode!=null&&areaCode>0&&areaCode!=86){ - tem = smsConfig.getSTemplateCode(); - phone = areaCode+phone; - }else{ - tem = smsConfig.getTemplateCode(); - } - SendSmsRequest sendSmsRequest = new SendSmsRequest() - .setSignName(smsConfig.getSingName()) - .setTemplateCode(tem) - .setPhoneNumbers(phone) - .setTemplateParam("{\"code\":\""+ code +"\"}"); - RuntimeOptions runtime = new RuntimeOptions(); - try { - // 复制代码运行请自行打印 API 的返回值 - SendSmsResponse sendSmsResponse = client.sendSmsWithOptions(sendSmsRequest, runtime); - SendSmsResponseBody body = sendSmsResponse.getBody(); - System.out.println(body.getMessage()); - } catch (TeaException error) { - // 如有需要,请打印 error - Common.assertAsString(error.message); - } catch (Exception _error) { - TeaException error = new TeaException(_error.getMessage(), _error); - // 如有需要,请打印 error - com.aliyun.teautil.Common.assertAsString(error.message); + if (areaCode!=null&&areaCode>0&&areaCode!=86){ + return smsUtil.sendSmsAbroad(""+areaCode+phone,scode); + }else { + return smsUtil.sendSmsCode(phone,scode); } } diff --git a/src/main/java/com/peanut/modules/common/service/impl/UserInviteRegisterServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/UserInviteRegisterServiceImpl.java index b0e3b19..d0cf338 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/UserInviteRegisterServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/UserInviteRegisterServiceImpl.java @@ -55,7 +55,7 @@ public class UserInviteRegisterServiceImpl extends ServiceImpl() + long count = myUserDao.selectCount(new LambdaQueryWrapper() .eq(MyUserEntity::getInviteCode,inviteCode.toString())); if (count > 0) { code = generateInviteCode(); diff --git a/src/main/java/com/peanut/modules/job/entity/ScheduleJobEntity.java b/src/main/java/com/peanut/modules/job/entity/ScheduleJobEntity.java index ec2eb56..a86d954 100644 --- a/src/main/java/com/peanut/modules/job/entity/ScheduleJobEntity.java +++ b/src/main/java/com/peanut/modules/job/entity/ScheduleJobEntity.java @@ -13,7 +13,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; -import javax.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotBlank; import java.io.Serializable; import java.util.Date; diff --git a/src/main/java/com/peanut/modules/job/service/impl/ScheduleJobServiceImpl.java b/src/main/java/com/peanut/modules/job/service/impl/ScheduleJobServiceImpl.java index 51e6ed1..c4aff04 100644 --- a/src/main/java/com/peanut/modules/job/service/impl/ScheduleJobServiceImpl.java +++ b/src/main/java/com/peanut/modules/job/service/impl/ScheduleJobServiceImpl.java @@ -25,7 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import java.util.*; @Service("scheduleJobService") diff --git a/src/main/java/com/peanut/modules/master/controller/BookAbroadController.java b/src/main/java/com/peanut/modules/master/controller/BookAbroadController.java index ce42c2c..ceae0de 100644 --- a/src/main/java/com/peanut/modules/master/controller/BookAbroadController.java +++ b/src/main/java/com/peanut/modules/master/controller/BookAbroadController.java @@ -66,7 +66,7 @@ public class BookAbroadController { public R updateBookAbroadLable(@RequestBody BookAbroadLable lable){ BookAbroadLable oldLable = labelService.getById(lable.getId()); if (oldLable.getIsLast()!=lable.getIsLast()) { - int count = toLableService.count(new LambdaQueryWrapper() + long count = toLableService.count(new LambdaQueryWrapper() .eq(BookAbroadToLable::getLableId,lable.getId())); if (count > 0){ return R.error("存在绑定书籍,删除后再操作"); @@ -83,7 +83,7 @@ public class BookAbroadController { if (oldLable.getIsLast()!=1){ return R.error("不是最下级,禁止删除"); } - int count = toLableService.count(new LambdaQueryWrapper() + long count = toLableService.count(new LambdaQueryWrapper() .eq(BookAbroadToLable::getLableId,params.get("id").toString())); if (count > 0){ return R.error("存在绑定书籍,删除后再操作"); @@ -99,7 +99,7 @@ public class BookAbroadController { if (oldLable.getIsLast()!=1){ return R.error("不是最下级,禁止绑定"); } - int count = toLableService.count(new LambdaQueryWrapper() + long count = toLableService.count(new LambdaQueryWrapper() .eq(BookAbroadToLable::getBookId,toLable.getBookId()) .eq(BookAbroadToLable::getLableId,toLable.getLableId())); if (count > 0) { diff --git a/src/main/java/com/peanut/modules/master/controller/BuyConfigController.java b/src/main/java/com/peanut/modules/master/controller/BuyConfigController.java index bce9b25..e0fabeb 100644 --- a/src/main/java/com/peanut/modules/master/controller/BuyConfigController.java +++ b/src/main/java/com/peanut/modules/master/controller/BuyConfigController.java @@ -59,7 +59,7 @@ public class BuyConfigController { @RequestMapping("/delBookBuyConfig") public R delBookBuyConfig(@RequestBody Map params) { - int count = buyOrderService.count(new LambdaQueryWrapper() + long count = buyOrderService.count(new LambdaQueryWrapper() .eq(BuyOrder::getOrderStatus,3) .eq(BuyOrder::getProductId,params.get("id").toString())); if (count > 0) { diff --git a/src/main/java/com/peanut/modules/master/controller/CourseMedicineMarketController.java b/src/main/java/com/peanut/modules/master/controller/CourseMedicineMarketController.java index 1bc0671..54b6f32 100644 --- a/src/main/java/com/peanut/modules/master/controller/CourseMedicineMarketController.java +++ b/src/main/java/com/peanut/modules/master/controller/CourseMedicineMarketController.java @@ -57,14 +57,14 @@ public class CourseMedicineMarketController { public R editSociologyMarket(@RequestBody CourseMedicineMarketEntity courseMedicineMarketEntity){ CourseMedicineMarketEntity old = marketService.getById(courseMedicineMarketEntity.getId()); if(courseMedicineMarketEntity.getIsLast()==1&&old.getIsLast()==0){//非终节点到终结点,要排除是否存在子集 - Integer integer = marketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseMedicineMarketEntity::getPid, courseMedicineMarketEntity.getId())); + long integer = marketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseMedicineMarketEntity::getPid, courseMedicineMarketEntity.getId())); if(integer>0){ return R.error("请先清空子集再操作!"); } } if(courseMedicineMarketEntity.getIsLast()==0&&old.getIsLast()==1){ - Integer integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToMedicineMarketEntity::getMedicineMarketId, courseMedicineMarketEntity.getId())); + long integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToMedicineMarketEntity::getMedicineMarketId, courseMedicineMarketEntity.getId())); if(integer>0){ return R.error("请先清空绑定的课程后,再操作"); } @@ -130,7 +130,7 @@ public class CourseMedicineMarketController { public R bindCourseAndMedicineMarket(@RequestBody Map map){ int marketId = map.get("marketId"); int courseId = map.get("courseId"); - Integer integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToMedicineMarketEntity::getMedicineMarketId, marketId).eq(CourseToMedicineMarketEntity::getCourseId, courseId)); + long integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToMedicineMarketEntity::getMedicineMarketId, marketId).eq(CourseToMedicineMarketEntity::getCourseId, courseId)); if(integer>0){ return R.error("不可重复绑定"); } diff --git a/src/main/java/com/peanut/modules/master/controller/CourseSociologyMarketController.java b/src/main/java/com/peanut/modules/master/controller/CourseSociologyMarketController.java index 4c15936..ef5bd4a 100644 --- a/src/main/java/com/peanut/modules/master/controller/CourseSociologyMarketController.java +++ b/src/main/java/com/peanut/modules/master/controller/CourseSociologyMarketController.java @@ -56,14 +56,14 @@ public class CourseSociologyMarketController { public R editSociologyMarket(@RequestBody CourseSociologyMarketEntity courseSociologyMarketEntity){ CourseSociologyMarketEntity old = marketService.getById(courseSociologyMarketEntity.getId()); if(courseSociologyMarketEntity.getIsLast()==1&&old.getIsLast()==0){//非终节点到终结点,要排除是否存在子集 - Integer integer = marketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseSociologyMarketEntity::getPid, courseSociologyMarketEntity.getId())); + long integer = marketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseSociologyMarketEntity::getPid, courseSociologyMarketEntity.getId())); if(integer>0){ return R.error("请先清空子集再操作!"); } } if(courseSociologyMarketEntity.getIsLast()==0&&old.getIsLast()==1){ - Integer integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToSociologyMarketEntity::getSociologyMarketId, courseSociologyMarketEntity.getId())); + long integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToSociologyMarketEntity::getSociologyMarketId, courseSociologyMarketEntity.getId())); if(integer>0){ return R.error("请先清空绑定的课程后,再操作"); } @@ -158,7 +158,7 @@ public class CourseSociologyMarketController { public R bindCourseAndSociologyMarket(@RequestBody Map map){ int marketId = map.get("marketId"); int courseId = map.get("courseId"); - Integer integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToSociologyMarketEntity::getSociologyMarketId, marketId).eq(CourseToSociologyMarketEntity::getCourseId, courseId)); + long integer = toMarketService.getBaseMapper().selectCount(new LambdaQueryWrapper().eq(CourseToSociologyMarketEntity::getSociologyMarketId, marketId).eq(CourseToSociologyMarketEntity::getCourseId, courseId)); if(integer>0){ return R.error("不可重复绑定"); } diff --git a/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java b/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java index f3253ec..1658046 100644 --- a/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java +++ b/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java @@ -76,7 +76,7 @@ public class OfflineActivityController { @RequestMapping("/updateOfflineActivity") public R updateOfflineActivity(@RequestBody OfflineActivity offlineActivity) { - int count = toUserService.count(new LambdaQueryWrapper() + long count = toUserService.count(new LambdaQueryWrapper() .eq(OfflineActivityToUser::getActivityId,offlineActivity.getId())); if (count > 0) { return R.error("已有人报名禁止修改"); @@ -87,7 +87,7 @@ public class OfflineActivityController { @RequestMapping("/delOfflineActivity") public R delOfflineActivity(@RequestBody Map params) { - int count = toUserService.count(new LambdaQueryWrapper() + long count = toUserService.count(new LambdaQueryWrapper() .eq(OfflineActivityToUser::getActivityId,params.get("id").toString())); if (count > 0) { return R.error("已有人报名禁止删除"); diff --git a/src/main/java/com/peanut/modules/master/controller/UserVipController.java b/src/main/java/com/peanut/modules/master/controller/UserVipController.java index 902ea76..c318861 100644 --- a/src/main/java/com/peanut/modules/master/controller/UserVipController.java +++ b/src/main/java/com/peanut/modules/master/controller/UserVipController.java @@ -18,7 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.transaction.Transactional; +import jakarta.transaction.Transactional; import java.math.BigDecimal; import java.util.*; import java.util.concurrent.TimeUnit; @@ -44,9 +44,9 @@ public class UserVipController { public R getVipProductForUser(@RequestBody Map params){ int uid = Integer.parseInt(params.get("uid").toString()); MyUserEntity userEntity = userService.getById(uid); - Integer chaoCount = vipService.count(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 1).gt(UserVip::getEndTime,new Date()).eq(UserVip::getState,0)); - Integer medicalCount = vipService.count(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 2).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); - Integer sociologyCount = vipService.count(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 3).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); + long chaoCount = vipService.count(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 1).gt(UserVip::getEndTime,new Date()).eq(UserVip::getState,0)); + long medicalCount = vipService.count(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 2).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); + long sociologyCount = vipService.count(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 3).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); //获取超v列表 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.in(VipBuyConfigEntity::getType,userEntity.getVip().equals("1")||userEntity.getVip().equals("2")||userEntity.getVip().equals("3")? Collections.singletonList(1): Arrays.asList(1,2,3)); diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueChapterVideoServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueChapterVideoServiceImpl.java index 1093193..060db92 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueChapterVideoServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueChapterVideoServiceImpl.java @@ -17,12 +17,9 @@ import com.peanut.modules.master.service.CourseCatalogueChapterVideoService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; - -import javax.xml.ws.soap.Addressing; import java.util.Calendar; import java.util.Date; import java.util.List; -import java.util.Map; @Slf4j @Service("masterCourseCatalogueChapterVideoService") @@ -111,7 +108,7 @@ public class CourseCatalogueChapterVideoServiceImpl extends ServiceImpl().eq(VideoM3u8Entity::getVid, video.getVideo())); + long integer = videoM3u8Dao.selectCount(new LambdaQueryWrapper().eq(VideoM3u8Entity::getVid, video.getVideo())); if(integer>0){ String s = playToken.generateToken(); GetPlayInfoResponseBody urlBody = SpdbUtil.getUrl(video.getVideo()); @@ -190,13 +187,13 @@ public class CourseCatalogueChapterVideoServiceImpl extends ServiceImpl().eq(CourseToSociologyEntity::getCourseId, courseId)); + long integer = courseToSociologyDao.selectCount(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getCourseId, courseId)); if(integer>0){ return true; } } if(u.getVip().equals("2")){ - Integer integer = courseToMedicineDao.selectCount(new LambdaQueryWrapper().eq(CourseToMedicine::getCourseId, courseId)); + long integer = courseToMedicineDao.selectCount(new LambdaQueryWrapper().eq(CourseToMedicine::getCourseId, courseId)); if(integer>0){ return true; } @@ -210,7 +207,7 @@ public class CourseCatalogueChapterVideoServiceImpl extends ServiceImpl i.apply("end_time IS NULL OR end_time > {0}", new Date())); // wrapper.and(r->r.isNull(UserCourseBuyEntity::getEndTime).or().gt(UserCourseBuyEntity::getEndTime,new Date())); - Integer integer = userCourseBuyDao.selectCount(wrapper); + long integer = userCourseBuyDao.selectCount(wrapper); return integer>0; } } diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueServiceImpl.java index 862486b..505f2b4 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseCatalogueServiceImpl.java @@ -54,19 +54,19 @@ public class CourseCatalogueServiceImpl extends ServiceImpl().eq(CourseCatalogueChapterEntity::getCatalogueId, id)); + long integer = courseCatalogueChapterDao.selectCount(new LambdaQueryWrapper().eq(CourseCatalogueChapterEntity::getCatalogueId, id)); if(integer>0){ return R.error(502,"删除失败,请先清空章节"); } LambdaQueryWrapper userCourseBuyEntityLambdaQueryWrapper = new LambdaQueryWrapper<>(); userCourseBuyEntityLambdaQueryWrapper.eq(UserCourseBuyEntity::getCatalogueId,id); userCourseBuyEntityLambdaQueryWrapper.gt(UserCourseBuyEntity::getEndTime,new Date()); - Integer integer1 = userCourseBuyDao.selectCount(userCourseBuyEntityLambdaQueryWrapper); + long integer1 = userCourseBuyDao.selectCount(userCourseBuyEntityLambdaQueryWrapper); if(integer1>0){ return R.error(502,"删除失败,有人已购买此课程"); } - Integer integer2 = shopProductCourseDao.selectCount(new LambdaQueryWrapper().eq(ShopProductCourseEntity::getCatalogueId, id)); + long integer2 = shopProductCourseDao.selectCount(new LambdaQueryWrapper().eq(ShopProductCourseEntity::getCatalogueId, id)); if(integer2>0){ return R.error(503,"删除失败,有商品已绑定此课程,请解绑或删除后再操作"); } @@ -95,7 +95,7 @@ public class CourseCatalogueServiceImpl extends ServiceImpl() + long integer = shopProductCourseDao.selectCount(new LambdaQueryWrapper() .eq(ShopProductCourseEntity::getCatalogueId, byId.getId())); if(integer>1){ return R.error("生成失败!已存在商品数量大于等于2,快捷生成商品不可用"); diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseMedicineServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseMedicineServiceImpl.java index d3e0755..def6f66 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseMedicineServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseMedicineServiceImpl.java @@ -29,12 +29,12 @@ public class CourseMedicineServiceImpl extends ServiceImpl().eq(CourseMedicine::getPid, id)); + long count = this.count(new LambdaQueryWrapper().eq(CourseMedicine::getPid, id)); if(count>0){ return R.error(501,"删除失败,请先删除子项目后再尝试"); } //查看绑定关系是否存在 - Integer integer = toMedicalDao.selectCount(new LambdaQueryWrapper().eq(CourseToMedicine::getMedicalId, id)); + long integer = toMedicalDao.selectCount(new LambdaQueryWrapper().eq(CourseToMedicine::getMedicalId, id)); if(integer>0){ return R.error(502,"删除失败,请先解绑课程与国学标签的绑定关系"); } @@ -52,7 +52,7 @@ public class CourseMedicineServiceImpl extends ServiceImpl().eq(CourseToMedicine::getMedicalId, courseMedicine.getId())); + long integer = toMedicalDao.selectCount(new LambdaQueryWrapper().eq(CourseToMedicine::getMedicalId, courseMedicine.getId())); if(integer>0){ return R.error(502,"更新失败,请先把此项与课程的关联关系清空后才可把此标签变成普通标签"); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java index abb2c33..f8d1f18 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java @@ -11,7 +11,6 @@ import com.peanut.modules.common.dao.*; import com.peanut.modules.common.entity.*; import com.peanut.modules.common.to.ParamTo; import com.peanut.modules.master.service.CourseService; -import io.swagger.models.auth.In; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -95,7 +94,7 @@ public class CourseServiceImpl extends ServiceImpl impl @Override public R delCourse(int id) { - Integer integer = courseCatalogueDao.selectCount(new LambdaQueryWrapper().eq(CourseCatalogueEntity::getCourseId, id)); + long integer = courseCatalogueDao.selectCount(new LambdaQueryWrapper().eq(CourseCatalogueEntity::getCourseId, id)); if (integer>0){ return R.error(501,"请先删除目录后再删除!"); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java index 2b2f02b..d33a649 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java @@ -29,12 +29,12 @@ public class CourseSociologyServiceImpl extends ServiceImpl().eq(CourseSociologyEntity::getPid, id)); + long count = this.count(new LambdaQueryWrapper().eq(CourseSociologyEntity::getPid, id)); if(count>0){ return R.error(501,"删除失败,请先删除子项目后再尝试"); } //查看绑定关系是否存在 - Integer integer = courseToSociologyDao.selectCount(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getSociologyId, id)); + long integer = courseToSociologyDao.selectCount(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getSociologyId, id)); if(integer>0){ return R.error(502,"删除失败,请先解绑课程与国学标签的绑定关系"); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopProductServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopProductServiceImpl.java index 2120e70..644552f 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopProductServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopProductServiceImpl.java @@ -75,7 +75,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductToBookLabel::getProductId, Integer.valueOf(id)).eq(ShopProductToBookLabel::getBookLabelId, labelId)); + long integer = shopProductToBookLabelDao.selectCount(new LambdaQueryWrapper().eq(ShopProductToBookLabel::getProductId, Integer.valueOf(id)).eq(ShopProductToBookLabel::getBookLabelId, labelId)); if(integer>0){ continue; } @@ -94,7 +94,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductToBookMarket::getProductId, Integer.valueOf(p)).eq(ShopProductToBookMarket::getBookMarketId, marketId)); + long integer = shopProductToBookMarketDao.selectCount(new LambdaQueryWrapper().eq(ShopProductToBookMarket::getProductId, Integer.valueOf(p)).eq(ShopProductToBookMarket::getBookMarketId, marketId)); if(integer>0){ continue; } @@ -113,7 +113,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductToSociologyLabel::getProductId, Integer.valueOf(p)).eq(ShopProductToSociologyLabel::getSociologyLabelId, labelId)); + long integer = shopProductToSociologyLabelDao.selectCount(new LambdaQueryWrapper().eq(ShopProductToSociologyLabel::getProductId, Integer.valueOf(p)).eq(ShopProductToSociologyLabel::getSociologyLabelId, labelId)); if(integer>0){ continue; } @@ -132,7 +132,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductToSociologyMarket::getProductId, Integer.valueOf(p)).eq(ShopProductToSociologyMarket::getSociologyMarketId, marketId)); + long integer = shopProductToSociologyMarketDao.selectCount(new LambdaQueryWrapper().eq(ShopProductToSociologyMarket::getProductId, Integer.valueOf(p)).eq(ShopProductToSociologyMarket::getSociologyMarketId, marketId)); if(integer>0){ continue; } @@ -152,7 +152,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductToMedicineLabel::getProductId, Integer.valueOf(p)).eq(ShopProductToMedicineLabel::getMedicineLabelId, labelId)); + long integer = shopProductToMedicineLabelDao.selectCount(new LambdaQueryWrapper().eq(ShopProductToMedicineLabel::getProductId, Integer.valueOf(p)).eq(ShopProductToMedicineLabel::getMedicineLabelId, labelId)); if(integer>0){ continue; } @@ -171,7 +171,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductToMedicineMarket::getProductId, Integer.valueOf(p)).eq(ShopProductToMedicineMarket::getMedicineMarketId, marketId)); + long integer = shopProductToMedicineMarketDao.selectCount(new LambdaQueryWrapper().eq(ShopProductToMedicineMarket::getProductId, Integer.valueOf(p)).eq(ShopProductToMedicineMarket::getMedicineMarketId, marketId)); if(integer>0){ continue; } @@ -210,7 +210,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductBookEntity::getProductId, productId).eq(ShopProductBookEntity::getBookId, bookId)); + long integer = shopProductBookDao.selectCount(new LambdaQueryWrapper().eq(ShopProductBookEntity::getProductId, productId).eq(ShopProductBookEntity::getBookId, bookId)); if(integer>0){ return R.error("重复绑定"); } @@ -260,7 +260,7 @@ public class ShopProductServiceImpl extends ServiceImpl().eq(ShopProductCourseEntity::getProductId, shopProductCourseEntity.getProductId()).eq(ShopProductCourseEntity::getCourseId, shopProductCourseEntity.getCourseId())); + long integer = shopProductCourseDao.selectCount(new LambdaQueryWrapper().eq(ShopProductCourseEntity::getProductId, shopProductCourseEntity.getProductId()).eq(ShopProductCourseEntity::getCourseId, shopProductCourseEntity.getCourseId())); if(integer>0){ return R.error("不可重复绑定"); } @@ -283,7 +283,7 @@ public class ShopProductServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BuyOrder::getProductId,productId); wrapper.in(BuyOrder::getOrderType,Arrays.asList(0,1,2)); - Integer integer = buyOrderDao.selectCount(wrapper); + long integer = buyOrderDao.selectCount(wrapper); if(integer>0){ return R.error(505,"删除失败,有人下单,且订单未完成"); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/ShopStoreServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/ShopStoreServiceImpl.java index 37d415e..810b681 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/ShopStoreServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/ShopStoreServiceImpl.java @@ -20,7 +20,7 @@ public class ShopStoreServiceImpl extends ServiceImpl i @Override public R delStore(int id) { - Integer integer = shopStoreToProductDao.selectCount(new LambdaQueryWrapper().eq(ShopStoreToProductEntity::getStoreId, id)); + long integer = shopStoreToProductDao.selectCount(new LambdaQueryWrapper().eq(ShopStoreToProductEntity::getStoreId, id)); if(integer>0){ return R.error("请先清空后,再操作"); } diff --git a/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java b/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java index 80d8150..37902a4 100644 --- a/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java +++ b/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java @@ -119,7 +119,7 @@ public class CourseMedicalServiceImpl extends ServiceImpl 0){ for (CourseCatalogueEntity cc:courseCatalogueEntities){ if ("0".equals(vip)||"3".equals(vip)){ - Integer i = userCourseBuyDao.selectCount(new LambdaQueryWrapper() + long i = userCourseBuyDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseBuyEntity::getCatalogueId, cc.getId()) .eq(UserCourseBuyEntity::getUserId, ShiroUtils.getUId())); cc.setIsBuy(i>0?1:0); diff --git a/src/main/java/com/peanut/modules/medical/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/medical/service/impl/CourseServiceImpl.java index d4e420d..79a4d37 100644 --- a/src/main/java/com/peanut/modules/medical/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/medical/service/impl/CourseServiceImpl.java @@ -86,7 +86,7 @@ public class CourseServiceImpl extends ServiceImpl impl @Override public R addUserCourseStudying(UserCourseStudying userCourseStudying) { - int isExist = studyingDao.selectCount(new LambdaQueryWrapper() + long isExist = studyingDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseStudying::getUserId,userCourseStudying.getUserId()) .eq(UserCourseStudying::getCourseId,userCourseStudying.getCourseId())); if (isExist>0){ @@ -209,7 +209,7 @@ public class CourseServiceImpl extends ServiceImpl impl List courseEntities = courseEntityPage.getRecords(); if(courseEntities!=null&&courseEntities.size()>0){ for (CourseEntity co:courseEntities){ - int i = studyingDao.selectCount(new LambdaQueryWrapper().eq(UserCourseStudying::getCourseId,co.getId()).eq(UserCourseStudying::getUserId,user.getId())); + long i = studyingDao.selectCount(new LambdaQueryWrapper().eq(UserCourseStudying::getCourseId,co.getId()).eq(UserCourseStudying::getUserId,user.getId())); co.setIsStudying(i>0?1:0); MPJLambdaWrapper catalogueWrapper = new MPJLambdaWrapper(); catalogueWrapper.eq(CourseCatalogueEntity::getCourseId, co.getId()); @@ -322,7 +322,7 @@ public class CourseServiceImpl extends ServiceImpl impl HashMap userVip = new HashMap<>(); userVip.put("vip",userEntity.getVip()); if (userEntity.getVip().equals("3")){ - Integer integer = courseToSociologyDao.selectCount(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getCourseId, id)); + long integer = courseToSociologyDao.selectCount(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getCourseId, id)); userVip.put("vipCan",integer>0?"1":"0"); } flag.put("vip",userVip); diff --git a/src/main/java/com/peanut/modules/medical/service/impl/VipBuyConfigServiceImpl.java b/src/main/java/com/peanut/modules/medical/service/impl/VipBuyConfigServiceImpl.java index 4f6e5cd..0bbbe4d 100644 --- a/src/main/java/com/peanut/modules/medical/service/impl/VipBuyConfigServiceImpl.java +++ b/src/main/java/com/peanut/modules/medical/service/impl/VipBuyConfigServiceImpl.java @@ -33,8 +33,8 @@ public class VipBuyConfigServiceImpl extends ServiceImpl().eq(UserVip::getUserId, uid).eq(UserVip::getType, 1).gt(UserVip::getEndTime,new Date()).eq(UserVip::getState,0)); - Integer medicalCount = userVipDao.selectCount(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 2).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); + long chaoCount = userVipDao.selectCount(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 1).gt(UserVip::getEndTime,new Date()).eq(UserVip::getState,0)); + long medicalCount = userVipDao.selectCount(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 2).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); //获取超v列表 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.in(VipBuyConfigEntity::getType,userEntity.getVip().equals("1")||userEntity.getVip().equals("3")? Collections.singletonList(1): Arrays.asList(1,2)); diff --git a/src/main/java/com/peanut/modules/mq/Consumer/CommonConsumer.java b/src/main/java/com/peanut/modules/mq/Consumer/CommonConsumer.java index 7d235a4..4ae68ea 100644 --- a/src/main/java/com/peanut/modules/mq/Consumer/CommonConsumer.java +++ b/src/main/java/com/peanut/modules/mq/Consumer/CommonConsumer.java @@ -79,7 +79,7 @@ public class CommonConsumer { List catalogues = courseCatalogueDao.selectList(new LambdaQueryWrapper() .eq(CourseCatalogueEntity::getCourseId,classCourse.getCourseId())); for (CourseCatalogueEntity catalog:catalogues){ - int ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() + long ucbCount = userCourseBuyDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseBuyEntity::getUserId,user.getId()) .eq(UserCourseBuyEntity::getCatalogueId,catalog.getId())); if (ucbCount == 0){ diff --git a/src/main/java/com/peanut/modules/oss/cloud/CloudStorageConfig.java b/src/main/java/com/peanut/modules/oss/cloud/CloudStorageConfig.java index a044e76..5b3bfdc 100644 --- a/src/main/java/com/peanut/modules/oss/cloud/CloudStorageConfig.java +++ b/src/main/java/com/peanut/modules/oss/cloud/CloudStorageConfig.java @@ -16,8 +16,8 @@ import lombok.Data; import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.URL; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import java.io.Serializable; /** diff --git a/src/main/java/com/peanut/modules/oss/controller/OssController.java b/src/main/java/com/peanut/modules/oss/controller/OssController.java index 374a645..3b0e79b 100644 --- a/src/main/java/com/peanut/modules/oss/controller/OssController.java +++ b/src/main/java/com/peanut/modules/oss/controller/OssController.java @@ -3,8 +3,6 @@ package com.peanut.modules.oss.controller; import com.peanut.common.utils.R; import com.peanut.modules.oss.service.OssService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -16,7 +14,6 @@ import java.util.UUID; @RestController @RequestMapping("/oss/fileoss") @CrossOrigin -@Api("oss") public class OssController { @Autowired @@ -24,7 +21,6 @@ public class OssController { //上传头像的方法 @PostMapping - @ApiOperation("上传") public R uploadOssFile(MultipartFile file) { //获取上传文件 MultipartFile @@ -34,7 +30,6 @@ public class OssController { } @PostMapping("/uploadFileSchedule") - @ApiOperation("上传带进度条") public R uploadFileSchedule(@RequestParam("file") MultipartFile file,@RequestParam("uid") String uid) { String url = ossService.uploadFileSchedule(file,uid); return R.ok().put("url",url); diff --git a/src/main/java/com/peanut/modules/pay/IOSPay/model/dto/IapRequestDTO.java b/src/main/java/com/peanut/modules/pay/IOSPay/model/dto/IapRequestDTO.java index 7c9d5ea..03273c3 100644 --- a/src/main/java/com/peanut/modules/pay/IOSPay/model/dto/IapRequestDTO.java +++ b/src/main/java/com/peanut/modules/pay/IOSPay/model/dto/IapRequestDTO.java @@ -2,10 +2,8 @@ package com.peanut.modules.pay.IOSPay.model.dto; import com.fasterxml.jackson.annotation.JsonProperty; -import io.swagger.models.auth.In; import lombok.Data; - -import javax.persistence.Column; +import jakarta.persistence.Column; import java.io.Serializable; @Data diff --git a/src/main/java/com/peanut/modules/pay/IOSPay/model/entities/IosPayOrderEntity.java b/src/main/java/com/peanut/modules/pay/IOSPay/model/entities/IosPayOrderEntity.java index 29bdc5d..7b314bb 100644 --- a/src/main/java/com/peanut/modules/pay/IOSPay/model/entities/IosPayOrderEntity.java +++ b/src/main/java/com/peanut/modules/pay/IOSPay/model/entities/IosPayOrderEntity.java @@ -7,8 +7,8 @@ import lombok.Setter; import lombok.Value; import org.joda.time.DateTime; -import javax.persistence.Column; -import javax.persistence.Id; +import jakarta.persistence.Column; +import jakarta.persistence.Id; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; diff --git a/src/main/java/com/peanut/modules/pay/alipay/controller/AliPayController.java b/src/main/java/com/peanut/modules/pay/alipay/controller/AliPayController.java index 5ef31b2..235d66e 100644 --- a/src/main/java/com/peanut/modules/pay/alipay/controller/AliPayController.java +++ b/src/main/java/com/peanut/modules/pay/alipay/controller/AliPayController.java @@ -10,7 +10,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Map; diff --git a/src/main/java/com/peanut/modules/pay/alipay/service/AliPayService.java b/src/main/java/com/peanut/modules/pay/alipay/service/AliPayService.java index ed9a470..4ac7330 100644 --- a/src/main/java/com/peanut/modules/pay/alipay/service/AliPayService.java +++ b/src/main/java/com/peanut/modules/pay/alipay/service/AliPayService.java @@ -4,7 +4,7 @@ package com.peanut.modules.pay.alipay.service; import com.peanut.modules.pay.alipay.dto.AlipayDTO; import com.peanut.modules.pay.alipay.dto.ReFundDTO; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Map; diff --git a/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java b/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java index 8b9daf4..c24607a 100644 --- a/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java +++ b/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java @@ -28,7 +28,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.time.LocalDate; import java.time.Period; diff --git a/src/main/java/com/peanut/modules/pay/applePay/controller/ApplePayController.java b/src/main/java/com/peanut/modules/pay/applePay/controller/ApplePayController.java deleted file mode 100644 index bb13bd6..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/controller/ApplePayController.java +++ /dev/null @@ -1,150 +0,0 @@ -package com.peanut.modules.pay.applePay.controller; - - -import cn.hutool.crypto.SecureUtil; -import cn.hutool.json.JSONArray; -import cn.hutool.json.JSONObject; -import cn.hutool.json.JSONUtil; -import com.peanut.common.utils.R; -import com.peanut.modules.pay.applePay.service.ApplePayService; -import com.peanut.modules.pay.applePay.utils.ApplePayUtil; -import com.peanut.modules.pay.applePay.utils.IPayNotifyPo; -import com.peanut.modules.pay.IOSPay.Result; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -@Slf4j -@RestController -@Api(tags = {"苹果内购"}) -@RequestMapping(value = "/apple") -public class ApplePayController { - @Autowired - ApplePayService applePayService; - @Autowired - ApplePayUtil applePayUtil; - - /** - * @param :TransactionID订单号 - * @param :receipt订单加密收据 - * @Description: Ios客户端内购支付 - */ -// @PostMapping 文档显示都是post请求 - @RequestMapping("/applePay") - - public R doIosRequest(@RequestParam("receipt") String receipt, @RequestParam("TransactionID") String TransactionID) { - String verifyResult = applePayUtil.buyAppVerify(receipt, 0); - //苹果服务器没有返回验证结果 - if (verifyResult == null) { - return R.error(500,"服务器未接收到验证结果!"); -// return Result.failed(ResultCode.APPLE_NULL); - } else { - // - return applePayService.getAppPay(verifyResult, TransactionID); - -// return applePayService.doIosRequest(TransactionID,receipt,userId); - - } - } - - - /** - * IOS支付成功后通过APP回调服务器 - * - * @param iPayNotifyPo - * @return - */ - @ApiOperation("ios支付成功后验证结果") - @RequestMapping(value = "iPayNotify/", method = RequestMethod.POST) - @ResponseBody - public Result iPayNotify(@RequestBody IPayNotifyPo iPayNotifyPo) { - log.info("ios支付成功后验证结果[前端传递的ios支付参数:{}]", iPayNotifyPo.toString()); - System.out.println("支付"); - String receipt = iPayNotifyPo.getTransactionReceipt(); - // 拿到收据的MD5 - String receiptMd5 = SecureUtil.md5(receipt); - // 查询数据库,看是否是己经验证过的该支付收据 -// boolean existsIOSReceipt = paymentService.isExistsIOSReceipt(receiptMd5); -// if (existsIOSReceipt) { -// return Result.error("该充值已完成"); -// } - - // 1.先线上测试 发送平台验证 - - - String verifyResult = ApplePayUtil.buyAppVerify(receipt, 0); - - - log.info("1,苹果返回的参数:{}]", verifyResult); - if (verifyResult == null) { - // 苹果服务器没有返回验证结果 - log.info("苹果服务器没有返回验证结果"); - return Result.error("订单没有找到"); - } else { - // 苹果验证有返回结果 - JSONObject job = JSONUtil.parseObj(verifyResult); - log.info("2,[苹果验证返回的json串:{}]", job.toString()); - String states = job.getStr("status"); - - if ("21007".equals(states)) { - log.debug("是沙盒环境,应沙盒测试,否则执行下面"); - // 是沙盒环境,应沙盒测试,否则执行下面 - // 2.再沙盒测试 发送平台验证 - verifyResult = ApplePayUtil.buyAppVerify(receipt, 0); - job = JSONUtil.parseObj(verifyResult); - log.debug("3,沙盒环境验证返回的json字符串=" + job.toString()); - states = job.getStr("status"); - } - if ("0".equals(states)) { // 前端所提供的收据是有效的 验证成功 - log.debug("前端所提供的收据是有效的 验证成功"); - String r_receipt = job.getStr("receipt"); - JSONObject returnJson = JSONUtil.parseObj(r_receipt); - String in_app = returnJson.getStr("in_app"); - - /** - * in_app说明: - * 验证票据返回的receipt里面的in_app字段,这个字段包含了所有你未完成交易的票据信息。也就是在上面说到的APP完成交易之后,这个票据信息,就会从in_app中消失。 - * 如果APP不完成交易,这个票据信息就会在in_app中一直保留。(这个情况可能仅限于你的商品类型为消耗型) - * - * 知道了事件的原委,就很好优化解决了,方案有2个 - * 1.对票据返回的in_app数据全部进行处理,没有充值的全部进行充值 - * 2.仅对最新的充值信息进行处理(我们采取的方案) - * - * 因为采用一方案: - * 如果用户仅进行了一次充值,该充值未到账,他不再进行充值了,那么会无法导致。 - * 如果他通过客服的途径已经进行了补充充值,那么他在下一次充值的时候依旧会把之前的产品票据带回,这时候有可能出现重复充值的情况 - * - * 以上说明是我在网上找到的,可以查看原文 - * https://www.cnblogs.com/widgetbox/p/8241333.html - */ - - JSONArray jsonArray = JSONUtil.parseArray(in_app); - if (jsonArray.size() > 0) { - int index = 0; - JSONObject o = JSONUtil.parseObj(jsonArray.get(index)); - String transaction_id = o.getStr("transaction_id"); // 订单号 - String product_id = o.getStr("product_id"); // 产品id,也就是支付金额 - String purchase_date_ms = o.getStr("purchase_date_ms"); // 支付时间 -// -// // 添加支付金额 -// Result iosChargeSuccess = paymentService.iosChargeSuccess(transaction_id, product_id, purchase_date_ms, receiptMd5, iPayNotifyPo.getMoneyId(), iPayNotifyPo.getUserId()); -// int i =0; -// int a = 0; -// if (iosChargeSuccess.getCode().equals(200)){ -// i = paymentService.updateCurrentState(iPayNotifyPo.getPayId(),iPayNotifyPo.getUserId(),a); -// }else { -// a = 1; -// i = paymentService.updateCurrentState(iPayNotifyPo.getPayId(),iPayNotifyPo.getUserId(),a); -// } -// -// return iosChargeSuccess; - } - } else { - return Result.error("收到数据有误"); - } - } - return Result.ok(); - } -} diff --git a/src/main/java/com/peanut/modules/pay/applePay/controller/IapController.java b/src/main/java/com/peanut/modules/pay/applePay/controller/IapController.java deleted file mode 100644 index 9a8b24a..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/controller/IapController.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.peanut.modules.pay.applePay.controller; - -import java.io.BufferedOutputStream; -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.net.URL; -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; - -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; - -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang.StringUtils; -import org.springframework.web.bind.annotation.RequestMapping; - -import com.alibaba.fastjson.JSONObject; -import org.springframework.web.bind.annotation.RestController; - -/** - * @author : - * @date : - * @Version: 1.0 - * @Desc : 苹果支付 参考地址:https://www.cnblogs.com/shoshana-kong/p/10991753.html - * sendHttpsCoon 方法里面包含了增加的业务逻辑 - * 本类引入多种的Json序列化工具,选择了Hutool - */ - - - -@Slf4j -@RestController -@RequestMapping("iap") -public class IapController { - - //购买凭证验证地址 - private static final String certificateUrl = "https://buy.itunes.apple.com/verifyReceipt"; - - //测试的购买凭证验证地址 - private static final String certificateUrlTest = "https://sandbox.itunes.apple.com/verifyReceipt"; - - /** - * 重写X509TrustManager - */ - private static TrustManager myX509TrustManager = new X509TrustManager() { - - @Override - public X509Certificate[] getAcceptedIssuers() { - return null; - } - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException { - - } - - @Override - public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException { - - } - }; - - /** - * 接收iOS端发过来的购买凭证 - * @param userId - * @param receipt - * @param chooseEnv - */ - @RequestMapping("/setIapCertificate") - public String setIapCertificate(String userId, String receiptData, boolean chooseEnv){ - if(StringUtils.isEmpty(userId) || StringUtils.isEmpty(receiptData)){ - return null; - - } - String url = null; - url = chooseEnv == true? certificateUrl:certificateUrlTest; - final String certificateCode = receiptData; - if(StringUtils.isNotEmpty(certificateCode)){ - return sendHttpsCoon(url, certificateCode); - }else{ - return null; - } - } - - /** - * 发送请求 - * @param url - * @param strings - * @return - */ - private String sendHttpsCoon(String url, String code){ - if(url.isEmpty()){ - return null; - } - try { - //设置SSLContext - SSLContext ssl = SSLContext.getInstance("SSL"); - ssl.init(null, new TrustManager[]{myX509TrustManager}, null); - - //打开连接 - HttpsURLConnection conn = (HttpsURLConnection) new URL(url).openConnection(); - //设置套接工厂 - conn.setSSLSocketFactory(ssl.getSocketFactory()); - //加入数据 - conn.setRequestMethod("POST"); - conn.setDoOutput(true); - conn.setRequestProperty("Content-type","application/json"); - - JSONObject obj = new JSONObject(); - obj.put("receipt-data", code); - - BufferedOutputStream buffOutStr = new BufferedOutputStream(conn.getOutputStream()); - buffOutStr.write(obj.toString().getBytes()); - buffOutStr.flush(); - buffOutStr.close(); - - //获取输入流 - BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); - - String line = null; - StringBuffer sb = new StringBuffer(); - while((line = reader.readLine())!= null){ - sb.append(line); - } - return sb.toString(); - - } catch (Exception e) { - return null; - } - } -} - diff --git a/src/main/java/com/peanut/modules/pay/applePay/service/ApplePayService.java b/src/main/java/com/peanut/modules/pay/applePay/service/ApplePayService.java deleted file mode 100644 index e341466..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/service/ApplePayService.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.peanut.modules.pay.applePay.service; - -import com.peanut.common.utils.R; -import com.peanut.modules.pay.IOSPay.Result; -import org.springframework.stereotype.Service; - -@Service -public interface ApplePayService { - - /** - * 看是否是己经验证过的该支付收据 - * @param receiptMd5 - * @return - */ - - public boolean isExistsIOSReceipt(String receiptMd5); - - - int updateCurrentState(String payId, String userId, int a); - - /** - * IOS支付 - * @param transaction_id 订单号 - * @param product_id 产品id,也就是支付金额 - * @param purchase_date_ms 支付时间 - * @param receiptMd5 拿到收据的MD5 - * @param moneyId 金额id - */ - Result iosChargeSuccess(String transaction_id, String product_id, String purchase_date_ms, String receiptMd5, String moneyId, String userId); - - - - R getAppPay(String verifyResult, String transactionID); - - -} diff --git a/src/main/java/com/peanut/modules/pay/applePay/service/impl/ApplePayServiceImpl.java b/src/main/java/com/peanut/modules/pay/applePay/service/impl/ApplePayServiceImpl.java deleted file mode 100644 index 9034afb..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/service/impl/ApplePayServiceImpl.java +++ /dev/null @@ -1,191 +0,0 @@ -package com.peanut.modules.pay.applePay.service.impl; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.peanut.common.utils.DateUtils; -import com.peanut.common.utils.R; -import com.peanut.modules.book.service.*; -import com.peanut.modules.common.entity.*; -import com.peanut.modules.pay.IOSPay.Result; -import com.peanut.modules.pay.applePay.service.ApplePayService; -import com.peanut.modules.pay.applePay.utils.*; -import lombok.AllArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.jdbc.core.JdbcTemplate; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import javax.annotation.Resource; -import java.math.BigDecimal; -import java.util.*; - - -@Service("ApplePayService") -@Slf4j -@AllArgsConstructor -public class ApplePayServiceImpl implements ApplePayService { - -// 日志记录,系统支付模块记录日志信息输出到sys-pay - private static final Logger logger = LoggerFactory.getLogger("sys-pay"); - - @Autowired - private MyUserService userService; - @Autowired - private BuyOrderService buyOrderService; - @Autowired - private TransactionDetailsService transactionDetailsService; - @Autowired - private ApplePayUtil applePayUtil; - @Autowired - private BookBuyConfigService bookBuyConfigService; - @Autowired - private PayPaymentOrderService payPaymentOrderService; - @Autowired - public static final String TRADE_TYPE_APP = "APP"; - @Autowired - private JdbcTemplate jdbcTemplate; - - @Override - public boolean isExistsIOSReceipt(String receiptMd5) { - return false; - } - - - @Resource - private TsBillMapper tsBillMapper; - /** - * 支付成功之后将当前订单的状态改为1 - * - * @param payId - * @param userId - * @param a - * @return - */ - @Override - public int updateCurrentState(String payId, String userId, int a) { - return 0; - } - - - /** - * IOS支付 - * @param transaction_id 订单号 - * @param product_id 产品id,也就是支付金额 - * @param purchase_date_ms 支付时间 - * @param receiptMd5 拿到收据的MD5 - * @param moneyId 金额id - */ - @Override - public Result iosChargeSuccess(String transaction_id, String product_id, String purchase_date_ms, String receiptMd5, String moneyId, String userId) { - /** - * IOS支付 - * @param transaction_id 订单号 - * @param product_id 产品id,也就是支付金额 - * @param purchase_date_ms 支付时间 - * @param receiptMd5 拿到收据的MD5 - * @param moneyId 金额id - */ - - try { - List> queryForList = jdbcTemplate.queryForList("SELECT id,showcoin_num,give_showcoin_num,rmb_price from tsm_payment_config_ios where product_id =? ", - moneyId); - - if (queryForList.size() > 0) { - String bill_content = "充值";//账单产生方式 - int bill_state = 1;// 充值 - int current_state = 1;// 支付成功 - int payment_method = 3;// IOS - String date = DateUtils.DATE_TIME_PATTERN;// 当前时间 - BigDecimal amountofmoney = new BigDecimal(queryForList.get(0).get("rmb_price").toString());// 金额 - String uuid = UUID.randomUUID().toString().replaceAll("-", ""); - // 生成消费订单 - //String sql = "insert into ts_bill (id,users_id,payment_config_id,bill_num,bill_content,bill_sumofmoney,bill_state,current_state,payment_method,receipt,createtdate) value(?,?,?,?,?,?,?,?,?,?,?);"; - //jdbcTemplate.update(sql, uuid,userId,moneyId,transaction_id,bill_content,amountofmoney,bill_state,current_state,payment_method,receiptMd5,date); - - String type = "1";// 加 - long showcoin_num = Long.parseLong(queryForList.get(0).get("showcoin_num").toString()) + Long.parseLong(queryForList.get(0).get("give_showcoin_num").toString()); - - - // 此操作为需求实际场景可根据用户产品需求更改 - //commonServiceI.updShowcoinNum(type, userId, showcoin_num); - - return Result.ok("支付成功"); - } else { - return Result.error("操作异常,所选金额不存在"); - } - } catch (Exception e) { - return Result.error("ios支付异常"); - } - - - } - - @Override - @Transactional - public R getAppPay(String verifyResult, String transactionID) { - log.info("##########################苹果支付验证!########################"); - JSONObject jsonObject = JSONObject.parseObject(verifyResult); - String status = jsonObject.getString("status"); - //判断是否验证成功 - if ("0".equals(status)) { - //app端所提供的收据是有效的,验证成功 - String receipt = jsonObject.getString("receipt"); - JSONObject returnJson = JSONObject.parseObject(receipt); - String in_app = returnJson.getString("in_app"); - JSONObject in_appJson = JSONObject.parseObject(in_app.substring(1, in_app.length() - 1)); - String transactionId = in_appJson.getString("transaction_id"); - String in_app_ownership_type = in_appJson.getString("in_app_ownership_type"); - //如果验证后的订单号与app端传来的订单号一致并且状态为已支付状态则处理自己的业务 - if (transactionID.equals(transactionId) && "PURCHASED".equals(in_app_ownership_type)) { - //===================处理自己的业务 ============================ - BuyOrder order = this.buyOrderService.getOne(new QueryWrapper().eq("order_sn", transactionId )); - PayWechatOrderEntity wechat = new PayWechatOrderEntity(); - - - - - if ("vip".equals(order.getOrderType())) { - //会员记录 - BookBuyConfigEntity bookBuyConfigEntity = bookBuyConfigService.getById(wechat.getBuyOrderId()); - String month = bookBuyConfigEntity.getMonth(); - userService.openMember(Integer.valueOf(transactionId),Integer.valueOf(month)); - buyOrderService.updateOrderStatus(Integer.valueOf(transactionId),order.getOrderSn(),"2"); - - - - } - if ("order".equals(order.getOrderType())) { - - BuyOrder orderEntity = buyOrderService.getBaseMapper().selectOne(new QueryWrapper().eq("order_sn", wechat.getOrderId())); - BigDecimal realMoney = orderEntity.getRealMoney(); - //更新 订单 记录 - - } - if ("point".equals(order.getOrderType())) { - BookBuyConfigEntity bookBuyConfigEntity = bookBuyConfigService.getById(wechat.getBuyOrderId()); - MyUserEntity userEntity = userService.getById(Integer.valueOf(order.getUserId())); - String realMoney = bookBuyConfigEntity.getRealMoney(); - userService.rechargeHSPoint(userEntity,Integer.valueOf(realMoney)); - //插入虚拟币消费记录 - transactionDetailsService.rechargeRecord(userEntity,realMoney,wechat.getId().intValue(),"苹果支付",order.getOrderSn()); - //插入花生币充值记录 - payPaymentOrderService.insertDetail(userEntity,bookBuyConfigEntity,wechat.getId().toString()); - buyOrderService.updateOrderStatus(Integer.valueOf(order.getUserId()),order.getOrderSn(),"2"); - } - } - return R.ok(); - } - return R.error("苹果内购验证失败"); - }} - - - - - - - - - - diff --git a/src/main/java/com/peanut/modules/pay/applePay/utils/AddIosOrderPM.java b/src/main/java/com/peanut/modules/pay/applePay/utils/AddIosOrderPM.java deleted file mode 100644 index 6a4f4c2..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/utils/AddIosOrderPM.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.peanut.modules.pay.applePay.utils; - - -import io.swagger.annotations.ApiModel; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; - -//购买所需参数类 -@ApiModel(value = "支付数据字段对比") -@Data -@AllArgsConstructor //有参数的构造方法 -@NoArgsConstructor //无参构造方法 -public class AddIosOrderPM implements Serializable { - -// -// /** -// * ios支付所需参数 -// */ -// private String receipt; -// -// /** -// * 用户id -// */ -// private Integer userId; -// - - - - /** - * 交易编号 - * eg:1000000852134037 交易唯一标识符; - */ - private String transaction_id; - /** - * APP所有权类型 eg: PURCHASED为沙箱环境 - * eg:PURCHASED - */ - private String in_app_ownership_type; - /** - * 原来的交易编号 原始购买标识符 - * eg:1000000852108057 - */ - private String original_transaction_id; - /** - * 数量 - * eg:1 购买消耗品的数量 - */ - private String quantity; - /** - * 唯一标识符 - * eg:1e10a9ec617549f986765b8546eddd0a9f349f15 - */ - private String unique_identifier; - /** - * item_id - * eg:1578853844 - */ - private String item_id; - /** - * 处于介绍报价期 - * eg:false - */ - private String is_in_intro_offer_period; - /** - * 购买日期 - * eg:2021-08-02 03:57:56 America/Los_Angeles - */ - private String purchase_date_pst; - /** - * 原始购买日期 ms - * eg:1627900203000 - */ - private String original_purchase_date_ms; - /** - * 原始购买日期 - * eg:2021-08-02 03:30:03 America/Los_Angeles 太平洋时区 - */ - private String original_purchase_date_pst; - /** - * 是试用期 - * eg:false - */ - private String is_trial_period; - /** - * 原始购买日期 - * eg:2021-08-02 10:30:03 Etc/GMT 原始购买时间 ISO 8601日期格式 - */ - private String original_purchase_date; - /** - * 购买日期ms 时间日期 - */ - private String purchase_date_ms; - /** - * 产品id 购买产品唯一标识符 - * eg:2 - */ - private String product_id; - private String bvrs; - /** - * 购买日期 - * eg:2021-08-02 10:57:56 Etc/GMT 时间日期 - */ - private String purchase_date; - private String bid; - /** - * 唯一供应商标识符 - * eg:A1D7647F-019C-4D15-A23C-3A48CFBFF4E3 - */ - private String unique_vendor_identifier; - - - -} diff --git a/src/main/java/com/peanut/modules/pay/applePay/utils/ApplePayUtil.java b/src/main/java/com/peanut/modules/pay/applePay/utils/ApplePayUtil.java deleted file mode 100644 index 1e2b41d..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/utils/ApplePayUtil.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.peanut.modules.pay.applePay.utils; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; -import sun.misc.BASE64Decoder; - -import javax.net.ssl.*; -import java.io.BufferedOutputStream; -import java.io.BufferedReader; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.net.URL; -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; -import java.util.Locale; - -@Component -public class ApplePayUtil { - - - private static class TrustAnyTrustManager implements X509TrustManager { - - - @Override - public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException { - } - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException { - } - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[]{}; - } - } - - private static class TrustAnyHostnameVerifier implements HostnameVerifier { - @Override - public boolean verify(String hostname, SSLSession session) { - return true; - } - } - - private static String url_apple_pay = "https://buy.itunes.apple.com/verifyReceipt"; - - - - private static String test_url_apple_pay = "https://sandbox.itunes.apple.com/verifyReceipt"; - - - /** - * 苹果服务器验证 - * - * @param receipt 账单 - * @return null 或返回结果 - * @url 要验证的地址 沙盒 https://sandbox.itunes.apple.com/verifyReceipt - */ - public static String buyAppVerify(String receipt, int type) { - //环境判断 线上/开发环境用不同的请求链接 - try { - String url = null; - if (type == 0) { - url = test_url_apple_pay; //沙盒环境,测试 - } else { - url = url_apple_pay; //线上环境 - } - - //String url = EnvUtils.isOnline() ?url_verify : url_sandbox; - SSLContext sc = SSLContext.getInstance("SSL"); - sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom()); - URL console = new URL(url); - HttpsURLConnection conn = (HttpsURLConnection) console.openConnection(); - conn.setSSLSocketFactory(sc.getSocketFactory()); - conn.setHostnameVerifier(new TrustAnyHostnameVerifier()); - conn.setRequestMethod("POST"); - conn.setRequestProperty("content-type", "text/json"); - conn.setRequestProperty("Proxy-Connection", "Keep-Alive"); - conn.setDoInput(true); - conn.setDoOutput(true); - //r如果有错误就注释 - conn.setConnectTimeout(3000); - BufferedOutputStream hurlBufOus = new BufferedOutputStream(conn.getOutputStream()); - //拼成固定的格式传给平台 - String str = String.format(Locale.CHINA, "{\"receipt-data\":\"" + receipt + "\"}"); - // 直接将receipt当参数发到苹果验证就行,不用拼格 - String str1 = String.format(Locale.CHINA, receipt); - hurlBufOus.write(str.getBytes()); - hurlBufOus.flush(); - - - InputStream is = conn.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(is)); - String line = null; - StringBuilder sb = new StringBuilder(); - while ((line = reader.readLine()) != null) { - sb.append(line); - } - return sb.toString(); - } catch (Exception ex) { - System.out.println("苹果服务器异常"); - ex.printStackTrace(); - } - return null; - - } - - - - - - - - - - - //视情况而定,苹果app进行支付,然后收到苹果的收据(一串很长的BASE64编码的字符串) - /** - * 用BASE64加密 - * - * @param str - * @return - */ - public static String getBASE64(String str) { - byte[] b = str.getBytes(); - String s = null; - if (b != null) { - s = new sun.misc.BASE64Encoder().encode(b); - } - return s; - } - - - /** - * 解密BASE64字窜 - * @param s - * @return - */ - public static String getFromBASE64(String s) { - byte[] b = null; - if (s != null) { - BASE64Decoder decoder = new BASE64Decoder(); - try { - b = decoder.decodeBuffer(s); - return new String(b); - } catch (Exception e) { - e.printStackTrace(); - } - } - return new String(b); - } - - - - - - - -} diff --git a/src/main/java/com/peanut/modules/pay/applePay/utils/IPayNotifyPo.java b/src/main/java/com/peanut/modules/pay/applePay/utils/IPayNotifyPo.java deleted file mode 100644 index 1d5cb35..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/utils/IPayNotifyPo.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.peanut.modules.pay.applePay.utils; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@Data -public class IPayNotifyPo { - @ApiModelProperty("苹果支付凭证") - private String transactionReceipt; - - @ApiModelProperty("苹果支付单号") - private String payId; - - @ApiModelProperty("用户id") - private String userId; - - @ApiModelProperty("金额id") - private String moneyId; - - -} diff --git a/src/main/java/com/peanut/modules/pay/applePay/utils/TsBill.java b/src/main/java/com/peanut/modules/pay/applePay/utils/TsBill.java deleted file mode 100644 index 8e5a671..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/utils/TsBill.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.peanut.modules.pay.applePay.utils; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import lombok.experimental.Accessors; - -import java.io.Serializable; - -@Data -@AllArgsConstructor -@NoArgsConstructor -@Accessors(chain = true) -@ApiModel("订单号") -public class TsBill implements Serializable { - private static final long serialVersionUID = 1L; -// @ApiModelProperty("苹果支付凭证") -// private String transactionReceipt; -// -// @ApiModelProperty("苹果支付单号") -// private String payId; -// iOS端支付完成,苹果返回给iOS端的那个receiptData app返回的数据 -// @ApiModelProperty("用户id") -// private String userId; -// -// @ApiModelProperty("金额id") -// private String moneyId; -// @ApiModelProperty("") -// private String currentState; -// @ApiModelProperty("IOS内购商品Id") -// private String product_id; // IOS内购商品Id -// @ApiModelProperty("应用内购买的时间") -// private String purchase_date_pst; // 应用内购买的时间 -// @ApiModelProperty("购买的消费品数量") -// private String quantity; // 购买的消费品数量 -// @ApiModelProperty("交易的唯一标识符") -// private String transaction_id; // -// -// @ApiModelProperty("支付时间") -// private String purchase_date_ms; // -// @ApiModelProperty("拿到收据的MD5") -// private String receiptMd5; // -// @ApiModelProperty("拿到收据的MD5") -// private String BillNum; // - - - - @ApiModelProperty("主键ID") - private String id; - @ApiModelProperty("用户ID") - private String usersId; - @ApiModelProperty("充值配置ID") - private String paymentConfigId; - @ApiModelProperty("交易单号,根据当前的28位当前时间加上11位随机数字对上的") - private String billNum; - @ApiModelProperty("交易号") - private String tradeNo; - @ApiModelProperty("账单生成方式,比如充值,说说币之类的") - private String billContent; - @ApiModelProperty("账单对应的金额id") - private String billSumofmoney; - @ApiModelProperty("账单类型还是充值") - private Integer billState; - @ApiModelProperty(" 当前状态,0是支付失败,1是支付成功,10是待支付") - private Integer currentState; - @ApiModelProperty("支付方式,0是虚拟币,1是支付宝,2是微信,3是ios") - private Integer paymentMethod; - @ApiModelProperty("收据MD5,仅ios可用") - private String receipt; - @ApiModelProperty("创集时间") - private String createtdate; - @ApiModelProperty("修改时间") - private String updatedate; - - - -} diff --git a/src/main/java/com/peanut/modules/pay/applePay/utils/TsBillMapper.java b/src/main/java/com/peanut/modules/pay/applePay/utils/TsBillMapper.java deleted file mode 100644 index 13266c7..0000000 --- a/src/main/java/com/peanut/modules/pay/applePay/utils/TsBillMapper.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.peanut.modules.pay.applePay.utils; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -import org.apache.ibatis.annotations.Mapper; - -/** - * @author talkmate - */ -@Mapper -public interface TsBillMapper extends BaseMapper{ - -} diff --git a/src/main/java/com/peanut/modules/pay/paypal/controller/PaypalController.java b/src/main/java/com/peanut/modules/pay/paypal/controller/PaypalController.java index 213beec..9041883 100644 --- a/src/main/java/com/peanut/modules/pay/paypal/controller/PaypalController.java +++ b/src/main/java/com/peanut/modules/pay/paypal/controller/PaypalController.java @@ -14,8 +14,8 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.*; /** diff --git a/src/main/java/com/peanut/modules/pay/stripe/StripeConfig.java b/src/main/java/com/peanut/modules/pay/stripe/StripeConfig.java index 2d7a19b..8bb4ca2 100644 --- a/src/main/java/com/peanut/modules/pay/stripe/StripeConfig.java +++ b/src/main/java/com/peanut/modules/pay/stripe/StripeConfig.java @@ -13,7 +13,7 @@ import com.stripe.param.checkout.SessionCreateParams; import lombok.extern.slf4j.Slf4j; import org.apache.poi.util.IOUtils; import org.springframework.stereotype.Component; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.io.InputStream; import java.math.BigDecimal; import java.nio.charset.StandardCharsets; diff --git a/src/main/java/com/peanut/modules/pay/stripe/StripeController.java b/src/main/java/com/peanut/modules/pay/stripe/StripeController.java index 0a684d6..d30af6c 100644 --- a/src/main/java/com/peanut/modules/pay/stripe/StripeController.java +++ b/src/main/java/com/peanut/modules/pay/stripe/StripeController.java @@ -18,7 +18,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Arrays; import java.util.Date; import java.util.Map; @@ -49,7 +49,7 @@ public class StripeController { @RequestMapping("/createOrder") public R createOrder(@RequestBody Map params){ - int pso = payStripeOrderService.count(new LambdaQueryWrapper() + long pso = payStripeOrderService.count(new LambdaQueryWrapper() .eq(PayStripeOrder::getOrderSn,params.get("orderSn"))); if (pso > 0) { return R.error("An order already exists, please place a new order."); diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java b/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java index d802dae..5dc4fb7 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/controller/WeChatPayController.java @@ -16,8 +16,8 @@ import org.springframework.context.annotation.Lazy; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.*; @Slf4j diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/service/WxpayService.java b/src/main/java/com/peanut/modules/pay/weChatPay/service/WxpayService.java index fb29550..662d230 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/service/WxpayService.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/service/WxpayService.java @@ -5,7 +5,7 @@ import com.peanut.modules.common.entity.PayWechatOrderEntity; import com.peanut.modules.pay.weChatPay.dto.WechatPaymentInfo; import org.springframework.stereotype.Service; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Map; @Service diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java b/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java index 896b201..96930d6 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java @@ -28,7 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.time.LocalDate; import java.time.Period; diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/util/HttpUtils.java b/src/main/java/com/peanut/modules/pay/weChatPay/util/HttpUtils.java index e315712..5490f04 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/util/HttpUtils.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/util/HttpUtils.java @@ -4,7 +4,7 @@ import org.junit.rules.Verifier; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.io.BufferedReader; import java.io.IOException; diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidator.java b/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidator.java index 1d1eebd..b0bcd2a 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidator.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidator.java @@ -9,7 +9,7 @@ import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.util.EntityUtils; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.time.DateTimeException; diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidatorForRequest.java b/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidatorForRequest.java index a4df855..98a82c1 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidatorForRequest.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/util/WechatPayValidatorForRequest.java @@ -5,7 +5,7 @@ import com.wechat.pay.contrib.apache.httpclient.auth.Verifier; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.time.DateTimeException; diff --git a/src/main/java/com/peanut/modules/sociology/controller/CourseController.java b/src/main/java/com/peanut/modules/sociology/controller/CourseController.java index 0a369e6..c14218e 100644 --- a/src/main/java/com/peanut/modules/sociology/controller/CourseController.java +++ b/src/main/java/com/peanut/modules/sociology/controller/CourseController.java @@ -111,7 +111,7 @@ public class CourseController { */ @RequestMapping("/addUserCourseStudying") public R addUserCourseStudying(@RequestBody Map map){ - int isExist = userCourseStudyingDao.selectCount(new LambdaQueryWrapper() + long isExist = userCourseStudyingDao.selectCount(new LambdaQueryWrapper() .eq(UserCourseStudying::getUserId,ShiroUtils.getUId()) .eq(UserCourseStudying::getCourseId,map.get("courseId"))); if (isExist>0){ diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java index a49645a..04d17c5 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java @@ -43,7 +43,7 @@ public class CourseCatalogueChapterServiceImpl extends ServiceImpl0?1:0); } } diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java index 6db3756..9afc6b6 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java @@ -70,13 +70,13 @@ public class CourseServiceImpl extends ServiceImpl impl wrapper.orderByAsc(CourseToSociologyEntity::getSort); Page courseEntityPage = this.getBaseMapper().selectJoinPage(new Page<>(param.getPage(), param.getLimit()),CourseEntity.class, wrapper); for (CourseEntity c:courseEntityPage.getRecords()){ - Integer integer = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCourseId, c.getId()).eq(UserCourseBuyEntity::getUserId,uId).and(i -> i.apply("end_time IS NULL OR end_time > {0}", new Date()))); + long integer = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCourseId, c.getId()).eq(UserCourseBuyEntity::getUserId,uId).and(i -> i.apply("end_time IS NULL OR end_time > {0}", new Date()))); c.setIsBuy(integer>0?1:0); List courseCatalogueEntities = courseCatalogueDao.selectList(new LambdaQueryWrapper().eq(CourseCatalogueEntity::getCourseId, c.getId())); if (courseCatalogueEntities != null && courseCatalogueEntities.size() > 0){ for (CourseCatalogueEntity cc : courseCatalogueEntities) { if ("0".equals(user.getVip())||"2".equals(user.getVip())){ - Integer cou = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCatalogueId, cc.getId()).eq(UserCourseBuyEntity::getUserId,uId).and(i -> i.apply("end_time IS NULL OR end_time > {0}", new Date()))); + long cou = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCatalogueId, cc.getId()).eq(UserCourseBuyEntity::getUserId,uId).and(i -> i.apply("end_time IS NULL OR end_time > {0}", new Date()))); cc.setIsBuy(cou>0?1:0); }else { cc.setIsBuy(1); @@ -212,7 +212,7 @@ public class CourseServiceImpl extends ServiceImpl impl wrapper.eq(UserCourseBuyEntity::getUserId,uId); wrapper.eq(UserCourseBuyEntity::getCatalogueId,catalogueId); wrapper.lt(UserCourseBuyEntity::getEndTime,new Date()); - Integer integer = userCourseBuyDao.selectCount(wrapper); + long integer = userCourseBuyDao.selectCount(wrapper); if(integer>0){ return R.error("您已拥有本门课程,无需领取"); } @@ -423,7 +423,7 @@ public class CourseServiceImpl extends ServiceImpl impl if(courseEntities!=null&&courseEntities.size()>0){ for (CourseEntity co:courseEntities){ //添加是否加入正在学习 - int i = studyingDao.selectCount(new LambdaQueryWrapper().eq(UserCourseStudying::getCourseId,co.getId()).eq(UserCourseStudying::getUserId,user.getId())); + long i = studyingDao.selectCount(new LambdaQueryWrapper().eq(UserCourseStudying::getCourseId,co.getId()).eq(UserCourseStudying::getUserId,user.getId())); co.setIsStudying(i>0?1:0); List courseCatalogueEntities = courseCatalogueDao.selectList(new MPJLambdaWrapper().eq(CourseCatalogueEntity::getCourseId, co.getId()).orderByAsc(CourseCatalogueEntity::getSort)); if (courseCatalogueEntities.size() > 0) { diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/VipBuyConfigServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/VipBuyConfigServiceImpl.java index 52afe15..53e3db8 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/VipBuyConfigServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/VipBuyConfigServiceImpl.java @@ -37,8 +37,8 @@ public class VipBuyConfigServiceImpl extends ServiceImpl().eq(UserVip::getUserId, uid).eq(UserVip::getType, 1).gt(UserVip::getEndTime,new Date()).eq(UserVip::getState,0)); - Integer sociologyCount = userVipDao.selectCount(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 3).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); + long chaoCount = userVipDao.selectCount(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 1).gt(UserVip::getEndTime,new Date()).eq(UserVip::getState,0)); + long sociologyCount = userVipDao.selectCount(new LambdaQueryWrapper().eq(UserVip::getUserId, uid).eq(UserVip::getType, 3).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); //获取超v列表 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.in(VipBuyConfigEntity::getType,userEntity.getVip().equals("1")||userEntity.getVip().equals("2")? Collections.singletonList(1):Arrays.asList(1,3)); diff --git a/src/main/java/com/peanut/modules/sys/controller/SysLoginController.java b/src/main/java/com/peanut/modules/sys/controller/SysLoginController.java index 226170f..d1114d0 100644 --- a/src/main/java/com/peanut/modules/sys/controller/SysLoginController.java +++ b/src/main/java/com/peanut/modules/sys/controller/SysLoginController.java @@ -24,8 +24,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.imageio.ImageIO; -import javax.servlet.ServletOutputStream; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletOutputStream; +import jakarta.servlet.http.HttpServletResponse; import java.awt.image.BufferedImage; import java.io.IOException; import java.util.Map; diff --git a/src/main/java/com/peanut/modules/sys/entity/SysConfigEntity.java b/src/main/java/com/peanut/modules/sys/entity/SysConfigEntity.java index 0710806..8631147 100644 --- a/src/main/java/com/peanut/modules/sys/entity/SysConfigEntity.java +++ b/src/main/java/com/peanut/modules/sys/entity/SysConfigEntity.java @@ -12,7 +12,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import javax.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotBlank; /** * 系统配置信息 diff --git a/src/main/java/com/peanut/modules/sys/entity/SysRoleEntity.java b/src/main/java/com/peanut/modules/sys/entity/SysRoleEntity.java index e563b97..a26bb98 100644 --- a/src/main/java/com/peanut/modules/sys/entity/SysRoleEntity.java +++ b/src/main/java/com/peanut/modules/sys/entity/SysRoleEntity.java @@ -13,7 +13,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import javax.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotBlank; import java.io.Serializable; import java.util.Date; import java.util.List; diff --git a/src/main/java/com/peanut/modules/sys/entity/SysUserEntity.java b/src/main/java/com/peanut/modules/sys/entity/SysUserEntity.java index ecc420b..ba2c9d0 100644 --- a/src/main/java/com/peanut/modules/sys/entity/SysUserEntity.java +++ b/src/main/java/com/peanut/modules/sys/entity/SysUserEntity.java @@ -15,8 +15,8 @@ import com.peanut.common.validator.group.AddGroup; import com.peanut.common.validator.group.UpdateGroup; import lombok.Data; -import javax.validation.constraints.Email; -import javax.validation.constraints.NotBlank; +import jakarta.validation.constraints.Email; +import jakarta.validation.constraints.NotBlank; import java.io.Serializable; import java.util.Date; import java.util.List; diff --git a/src/main/java/com/peanut/modules/sys/oauth2/OAuth2Filter.java b/src/main/java/com/peanut/modules/sys/oauth2/OAuth2Filter.java index 5ed24eb..6f5f125 100644 --- a/src/main/java/com/peanut/modules/sys/oauth2/OAuth2Filter.java +++ b/src/main/java/com/peanut/modules/sys/oauth2/OAuth2Filter.java @@ -18,10 +18,10 @@ import org.apache.shiro.authc.AuthenticationToken; import org.apache.shiro.web.filter.authc.AuthenticatingFilter; import org.springframework.web.bind.annotation.RequestMethod; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; /** diff --git a/src/main/java/com/peanut/modules/sys/service/impl/SysUserTokenServiceImpl.java b/src/main/java/com/peanut/modules/sys/service/impl/SysUserTokenServiceImpl.java index 0850ed2..95bb49b 100644 --- a/src/main/java/com/peanut/modules/sys/service/impl/SysUserTokenServiceImpl.java +++ b/src/main/java/com/peanut/modules/sys/service/impl/SysUserTokenServiceImpl.java @@ -18,7 +18,7 @@ import com.peanut.modules.sys.service.SysUserTokenService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Date; @Slf4j diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 4a9ec57..45b5301 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -1,17 +1,18 @@ spring: - redis: - open: false # 是否开启redis缓存 true开启 false关闭 - database: 0 - host: 13.215.57.194 - port: 6379 - password: Jgll2015 # 密码(默认为空) - timeout: 6000000ms # 连接超时时长(毫秒) - jedis: - pool: - max-active: 1000 # 连接池最大连接数(使用负值表示没有限制) - max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) - max-idle: 10 # 连接池中的最大空闲连接 - min-idle: 5 # 连接池中的最小空闲连接 + data: + redis: +# open: false # 是否开启redis缓存 true开启 false关闭 + database: 0 + host: 13.215.57.194 + port: 6379 + password: Jgll2015 # 密码(默认为空) + timeout: 6000000ms # 连接超时时长(毫秒) + jedis: + pool: + max-active: 1000 # 连接池最大连接数(使用负值表示没有限制) + max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) + max-idle: 10 # 连接池中的最大空闲连接 + min-idle: 5 # 连接池中的最小空闲连接 datasource: type: com.alibaba.druid.pool.DruidDataSource druid: @@ -99,4 +100,5 @@ paypal: #sb-mxgwy36612722@personal.example.com # M%4i^oTJ #sb-p3v5x36446290@business.example.com -# +wW95Hi_ \ No newline at end of file +# +wW95Hi_ + diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index fdf97fe..a6a88f6 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -1,17 +1,18 @@ spring: - redis: - open: false # 是否开启redis缓存 true开启 false关闭 - database: 0 - host: 13.215.57.194 - port: 6379 - password: Jgll2015 # 密码(默认为空) - timeout: 6000000ms # 连接超时时长(毫秒) - jedis: - pool: - max-active: 1000 # 连接池最大连接数(使用负值表示没有限制) - max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) - max-idle: 10 # 连接池中的最大空闲连接 - min-idle: 5 # 连接池中的最小空闲连接 + data: + redis: +# open: false # 是否开启redis缓存 true开启 false关闭 + database: 0 + host: 13.215.57.194 + port: 6379 + password: Jgll2015 # 密码(默认为空) + timeout: 6000000ms # 连接超时时长(毫秒) + jedis: + pool: + max-active: 1000 # 连接池最大连接数(使用负值表示没有限制) + max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) + max-idle: 10 # 连接池中的最大空闲连接 + min-idle: 5 # 连接池中的最小空闲连接 datasource: type: com.alibaba.druid.pool.DruidDataSource druid: diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 7157023..129ae1b 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -86,3 +86,14 @@ express: expAreaName: 南开 address: 融创中心中南广场东区2号楼605 +sms: + domestic: + url: http://116.62.212.142/msg/HttpBatchSendSM + account: MXT802795 + pswd: Zm802795 + content: 【天津众妙之门科技】,你的验证码为:XXXXXX,您正在进行身份验证,请勿泄露于他人! + abroad: + url: http://www.onesnok.net:9511/api/send-sms-single + account: 921689 + pswd: 9de2a579 + content: Tianjin Zhongmiao Gate Technology:Your verification code is:XXXXXX.