Browse Source

剥离common中的代码

weifanli 2 years ago
parent
commit
b2ad3a6578
100 changed files with 1230 additions and 363 deletions
  1. 5 3
      cooleshow-auth/auth-api/pom.xml
  2. 1 1
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/client/AuthTaskFeignService.java
  3. 1 1
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/client/SysUserFeignService.java
  4. 1 1
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/CertificateTypeEnum.java
  5. 1 2
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/SysUserType.java
  6. 2 2
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/UserLockFlag.java
  7. 1 1
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/YesOrNoEnum.java
  8. 8 2
      cooleshow-auth/auth-server/pom.xml
  9. 13 14
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/LocalFastJsonHttpMessageConverter.java
  10. 9 11
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/ParameterCheckServletRequestWrapper.java
  11. 0 1
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/WebMvcConfig.java
  12. 51 0
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/filters/EmojiEncodingFilter.java
  13. 2 2
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/dal/enums/UserGenderEnum.java
  14. 2 2
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/dal/enums/UserStatus.java
  15. 80 70
      cooleshow-cms/pom.xml
  16. 73 0
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/LocalFastJsonHttpMessageConverter.java
  17. 86 0
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/ParameterCheckServletRequestWrapper.java
  18. 0 1
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/WebMvcConfig.java
  19. 51 0
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/filters/EmojiEncodingFilter.java
  20. 1 1
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/dal/entity/NewsStatusEnum.java
  21. 6 15
      cooleshow-common/pom.xml
  22. 1 2
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/EnumConverter.java
  23. 1 2
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/EnumConverterFactory.java
  24. 0 128
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/RequestAttributeHystrixConcurrencyStrategy.java
  25. 1 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/controller/BaseController.java
  26. 1 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/entity/HttpResponseResult.java
  27. 3 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/AccessSource.java
  28. 0 14
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/BaseEnum.java
  29. 3 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/PlatformEnum.java
  30. 1 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/UserGenderEnum.java
  31. 1 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/exception/BizException.java
  32. 6 2
      cooleshow-mall/mall-admin/pom.xml
  33. 73 0
      cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/LocalFastJsonHttpMessageConverter.java
  34. 86 0
      cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/ParameterCheckServletRequestWrapper.java
  35. 0 3
      cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/WebMvcConfig.java
  36. 51 0
      cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/filters/EmojiEncodingFilter.java
  37. 1 1
      cooleshow-mall/mall-pay/src/main/java/com/yonge/cooleshow/enums/OrderStatusEnum.java
  38. 1 1
      cooleshow-mall/mall-pay/src/main/java/com/yonge/cooleshow/sdk/adapay/PaymentSdk.java
  39. 10 1
      cooleshow-mall/mall-portal/pom.xml
  40. 73 0
      cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/LocalFastJsonHttpMessageConverter.java
  41. 86 0
      cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/ParameterCheckServletRequestWrapper.java
  42. 0 1
      cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/WebMvcConfig.java
  43. 6 13
      cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/filters/EmojiEncodingFilter.java
  44. 6 0
      cooleshow-task/pom.xml
  45. 60 0
      cooleshow-task/src/main/java/com/yonge/cooleshow/task/config/LocalFastJsonHttpMessageConverter.java
  46. 84 0
      cooleshow-task/src/main/java/com/yonge/cooleshow/task/config/ParameterCheckServletRequestWrapper.java
  47. 0 1
      cooleshow-task/src/main/java/com/yonge/cooleshow/task/config/WebMvcConfig.java
  48. 1 2
      cooleshow-task/src/main/java/com/yonge/cooleshow/task/feign/MallPortalFeignService.java
  49. 1 1
      cooleshow-task/src/main/java/com/yonge/cooleshow/task/feign/StudentFeignService.java
  50. 1 1
      cooleshow-task/src/main/java/com/yonge/cooleshow/task/feign/TeacherFeignService.java
  51. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/config/WebMvcConfig.java
  52. 12 0
      cooleshow-user/user-biz/pom.xml
  53. 73 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/config/LocalFastJsonHttpMessageConverter.java
  54. 86 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/config/ParameterCheckServletRequestWrapper.java
  55. 51 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/config/filters/EmojiEncodingFilter.java
  56. 1 3
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ImGroup.java
  57. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ImGroupMember.java
  58. 1 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/SysUserContracts.java
  59. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AccountBizTypeEnum.java
  60. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AudioTypeEnum.java
  61. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuditEnum.java
  62. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuditStatusEnum.java
  63. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuthStatusEnum.java
  64. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CacheNameEnum.java
  65. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/ChargeTypeEnum.java
  66. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/ClientEnum.java
  67. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CourseGroupEnum.java
  68. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CourseScheduleEnum.java
  69. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/FrozenTypeEnum.java
  70. 1 5
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/GenderEnum.java
  71. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/GoodTypeEnum.java
  72. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/InOrOutEnum.java
  73. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/JobNatureEnum.java
  74. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageSendMode.java
  75. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageTypeEnum.java
  76. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/OrderStatusEnum.java
  77. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/OrderTypeEnum.java
  78. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/PayChannelEnum.java
  79. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/PeriodEnum.java
  80. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/SendStatusEnum.java
  81. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/SourceTypeEnum.java
  82. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/StudentCourseEnum.java
  83. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/SuggestionType.java
  84. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TeacherSalaryEnum.java
  85. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TeacherTypeEnum.java
  86. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TimeTypeEnum.java
  87. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TradeStatusEnum.java
  88. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/UserLockFlag.java
  89. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/YesOrNoEnum.java
  90. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/sdk/PaymentSdk.java
  91. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SysMessageServiceImpl.java
  92. 1 1
      cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/config/WebMvcConfig.java
  93. 1 1
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/config/WebMvcConfig.java
  94. 1 1
      pom.xml
  95. 4 1
      toolset/pom.xml
  96. 5 1
      toolset/thirdparty-component/pom.xml
  97. 2 1
      toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/eseal/ESealPluginContext.java
  98. 1 1
      toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/eseal/provider/BytedancePlugin.java
  99. 1 1
      toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/eseal/provider/TsignPlugin.java
  100. 2 1
      toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/lingxinpay/ContractSignService.java

+ 5 - 3
cooleshow-auth/auth-api/pom.xml

@@ -12,10 +12,11 @@
 	<artifactId>auth-api</artifactId>
 	<version>1.0</version>
 	<name>auth-api</name>
-	<url>http://maven.apache.org</url>
+
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 	</properties>
+
 	<dependencies>
 		<dependency>
 			<groupId>com.spring4all</groupId>
@@ -23,8 +24,9 @@
 		</dependency>
 
 		<dependency>
-			<groupId>org.springframework.cloud</groupId>
-			<artifactId>spring-cloud-starter-openfeign</artifactId>
+			<groupId>com.yonge.toolset</groupId>
+			<artifactId>toolset-feign</artifactId>
+			<version>1.0</version>
 		</dependency>
 
 		<dependency>

+ 1 - 1
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/client/AuthTaskFeignService.java

@@ -1,10 +1,10 @@
 package com.yonge.cooleshow.auth.api.client;
 
+import com.yonge.toolset.feign.config.FeignConfiguration;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 
 import com.yonge.cooleshow.auth.api.client.fallback.AuthTaskFeignServiceFallback;
-import com.yonge.cooleshow.common.config.FeignConfiguration;
 
 @FeignClient(contextId = "authTaskFeignService", name = "auth-server", configuration = { FeignConfiguration.class }, fallback = AuthTaskFeignServiceFallback.class)
 public interface AuthTaskFeignService {

+ 1 - 1
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/client/SysUserFeignService.java

@@ -4,8 +4,8 @@ import com.yonge.cooleshow.auth.api.client.fallback.SysUserFeignServiceFallback;
 import com.yonge.cooleshow.auth.api.dto.RealnameAuthReq;
 import com.yonge.cooleshow.auth.api.dto.SysUserQueryInfo;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
-import com.yonge.cooleshow.common.config.FeignConfiguration;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.toolset.feign.config.FeignConfiguration;
 import com.yonge.toolset.utils.idcard.IdcardInfoExtractor;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.cloud.openfeign.FeignClient;

+ 1 - 1
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/CertificateTypeEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.auth.api.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * @Author Joburgess

+ 1 - 2
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/SysUserType.java

@@ -1,9 +1,8 @@
 package com.yonge.cooleshow.auth.api.enums;
 
+import com.yonge.toolset.base.enums.BaseEnum;
 import org.apache.commons.lang3.StringUtils;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
-
 public enum SysUserType implements BaseEnum<String, SysUserType> {
 
 	STUDENT("学生"), TEACHER("指导老师"), SYSTEM("系统內置");

+ 2 - 2
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/UserLockFlag.java

@@ -1,8 +1,8 @@
 package com.yonge.cooleshow.auth.api.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
-/** 
+/**
  * 会员状态枚举类
  */
 public enum UserLockFlag implements BaseEnum<Integer, UserLockFlag> {

+ 1 - 1
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/enums/YesOrNoEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.auth.api.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum YesOrNoEnum implements BaseEnum<Integer, YesOrNoEnum> {
     NO(0,"否"),

+ 8 - 2
cooleshow-auth/auth-server/pom.xml

@@ -80,8 +80,8 @@
         </dependency>
 
         <dependency>
-			<groupId>com.yonge.toolset</groupId>
-			<artifactId>thirdparty-component</artifactId>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>thirdparty-component</artifactId>
         </dependency>
 
         <dependency>
@@ -90,6 +90,12 @@
             <version>3.2.17</version>
             <scope>compile</scope>
         </dependency>
+
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-emoji</artifactId>
+            <version>1.0</version>
+        </dependency>
     </dependencies>
 
     <build>

+ 13 - 14
cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/LocalFastJsonHttpMessageConverter.java → cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/LocalFastJsonHttpMessageConverter.java

@@ -1,16 +1,4 @@
-package com.yonge.cooleshow.common.config;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.lang.reflect.Type;
-import java.math.BigDecimal;
-import java.util.Date;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.http.HttpInputMessage;
-import org.springframework.http.HttpOutputMessage;
-import org.springframework.http.converter.HttpMessageNotReadableException;
-import org.springframework.http.converter.HttpMessageNotWritableException;
+package com.yonge.cooleshow.auth.config;
 
 import com.alibaba.fastjson.serializer.JSONSerializer;
 import com.alibaba.fastjson.serializer.ObjectSerializer;
@@ -18,8 +6,19 @@ import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
 import com.alibaba.fastjson.serializer.ValueFilter;
 import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
 import com.vdurmont.emoji.EmojiParser;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 import com.yonge.toolset.utils.json.JsonUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.reflect.Type;
+import java.math.BigDecimal;
+import java.util.Date;
 
 public class LocalFastJsonHttpMessageConverter extends FastJsonHttpMessageConverter {
 

+ 9 - 11
cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/ParameterCheckServletRequestWrapper.java → cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/ParameterCheckServletRequestWrapper.java

@@ -1,20 +1,18 @@
-package com.yonge.cooleshow.common.config;
+package com.yonge.cooleshow.auth.config;
 
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.nio.charset.Charset;
+import com.vdurmont.emoji.EmojiParser;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.util.StreamUtils;
 
 import javax.servlet.ReadListener;
 import javax.servlet.ServletInputStream;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequestWrapper;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.util.StreamUtils;
-
-import com.vdurmont.emoji.EmojiParser;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.nio.charset.Charset;
 
 public class ParameterCheckServletRequestWrapper extends HttpServletRequestWrapper {
 

+ 0 - 1
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/WebMvcConfig.java

@@ -14,7 +14,6 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 import com.yonge.cooleshow.auth.interceptor.OperationLogInterceptor;
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 
 @Configuration
 public class WebMvcConfig implements WebMvcConfigurer {

+ 51 - 0
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/config/filters/EmojiEncodingFilter.java

@@ -0,0 +1,51 @@
+package com.yonge.cooleshow.auth.config.filters;
+
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.cooleshow.auth.config.ParameterCheckServletRequestWrapper;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+
+public class EmojiEncodingFilter implements Filter {
+
+	@Override
+	public void init(FilterConfig filterConfig) throws ServletException {
+		Filter.super.init(filterConfig);
+	}
+
+	@Override
+	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
+		request = new ParameterCheckServletRequestWrapper((HttpServletRequest) request) {
+
+			@Override
+			public String getParameter(String name) {
+				// 参数名
+				String value = super.getParameter(name);
+				if (StringUtils.isNotBlank(value)) {
+					// 返回值之前 先进行 Emoji 转化
+					return EmojiParser.removeAllEmojis(value);
+				}
+				return value;
+			}
+
+			@Override
+			public String[] getParameterValues(String name) {
+				// 参数值
+				// 返回值之前 先进行 Emoji 转化
+				String[] values = super.getParameterValues(name);
+				if (values != null) {
+					for (int i = 0; i < values.length; i++) {
+						values[i] = EmojiParser.removeAllEmojis(values[i]);
+					}
+				}
+				return values;
+			}
+
+		};
+		
+		chain.doFilter(request, response);
+	}
+
+}

+ 2 - 2
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/dal/enums/UserGenderEnum.java

@@ -1,8 +1,8 @@
 package com.yonge.cooleshow.auth.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
-/** 
+/**
  * 会员性别枚举
  */
 public enum UserGenderEnum implements BaseEnum<Integer, UserGenderEnum> {

+ 2 - 2
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/dal/enums/UserStatus.java

@@ -1,8 +1,8 @@
 package com.yonge.cooleshow.auth.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
-/** 
+/**
  * 会员状态枚举类
  */
 public enum UserStatus implements BaseEnum<Integer, UserStatus> {

+ 80 - 70
cooleshow-cms/pom.xml

@@ -1,85 +1,95 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
 
-	<parent>
-		<groupId>com.yonge.cooleshow</groupId>
-		<artifactId>cooleshow</artifactId>
-		<version>1.0</version>
-	</parent>
+    <parent>
+        <groupId>com.yonge.cooleshow</groupId>
+        <artifactId>cooleshow</artifactId>
+        <version>1.0</version>
+    </parent>
 
-	<groupId>com.yonge.cooleshow</groupId>
-	<artifactId>cooleshow-cms</artifactId>
-	<version>1.0</version>
-	<packaging>jar</packaging>
+    <groupId>com.yonge.cooleshow</groupId>
+    <artifactId>cooleshow-cms</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
 
-	<name>cooleshow-cms</name>
-	<url>http://maven.apache.org</url>
+    <name>cooleshow-cms</name>
+    <url>http://maven.apache.org</url>
 
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-	</properties>
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    </properties>
 
-	<dependencies>
+    <dependencies>
 
-		<dependency>
-			<groupId>com.alibaba.cloud</groupId>
-			<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
-		</dependency>
+        <dependency>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
+        </dependency>
 
-		<dependency>
-			<groupId>com.alibaba.cloud</groupId>
-			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
-		</dependency>
+        <dependency>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+        </dependency>
 
-		<!-- swagger-spring-boot -->
-		<dependency>
-			<groupId>com.spring4all</groupId>
-			<artifactId>swagger-spring-boot-starter</artifactId>
-		</dependency>
+        <!-- swagger-spring-boot -->
+        <dependency>
+            <groupId>com.spring4all</groupId>
+            <artifactId>swagger-spring-boot-starter</artifactId>
+        </dependency>
 
-		<dependency>
-			<groupId>com.github.xiaoymin</groupId>
-			<artifactId>swagger-bootstrap-ui</artifactId>
-		</dependency>
+        <dependency>
+            <groupId>com.github.xiaoymin</groupId>
+            <artifactId>swagger-bootstrap-ui</artifactId>
+        </dependency>
 
-		<dependency>
-			<groupId>com.alibaba</groupId>
-			<artifactId>druid-spring-boot-starter</artifactId>
-		</dependency>
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid-spring-boot-starter</artifactId>
+        </dependency>
 
-		<dependency>
-			<groupId>mysql</groupId>
-			<artifactId>mysql-connector-java</artifactId>
-		</dependency>
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+        </dependency>
 
-		<dependency>
-			<groupId>com.yonge.cooleshow</groupId>
-			<artifactId>auth-api</artifactId>
-		</dependency>
+        <dependency>
+            <groupId>com.yonge.cooleshow</groupId>
+            <artifactId>auth-api</artifactId>
+        </dependency>
 
-		<dependency>
-			<groupId>com.yonge.toolset</groupId>
-			<artifactId>audit-log</artifactId>
-			<exclusions>
-				<exclusion>
-					<artifactId>freemarker</artifactId>
-					<groupId>org.freemarker</groupId>
-				</exclusion>
-			</exclusions>
-		</dependency>
-		<dependency>
-			<groupId>com.yonge.toolset</groupId>
-			<artifactId>utils</artifactId>
-		</dependency>
-	</dependencies>
-	
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.springframework.boot</groupId>
-				<artifactId>spring-boot-maven-plugin</artifactId>
-			</plugin>
-		</plugins>
-	</build>
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>audit-log</artifactId>
+            <exclusions>
+                <exclusion>
+                    <artifactId>freemarker</artifactId>
+                    <groupId>org.freemarker</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>utils</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-emoji</artifactId>
+            <version>1.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-feign</artifactId>
+            <version>1.0</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </build>
 </project>

+ 73 - 0
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/LocalFastJsonHttpMessageConverter.java

@@ -0,0 +1,73 @@
+package com.yonge.cooleshow.cms.config;
+
+import com.alibaba.fastjson.serializer.JSONSerializer;
+import com.alibaba.fastjson.serializer.ObjectSerializer;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import com.alibaba.fastjson.serializer.ValueFilter;
+import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.toolset.base.enums.BaseEnum;
+import com.yonge.toolset.utils.json.JsonUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.reflect.Type;
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class LocalFastJsonHttpMessageConverter extends FastJsonHttpMessageConverter {
+
+	private static final String FORMAT = "yyyy-MM-dd HH:mm:ss";
+
+	@Override
+	protected Object readInternal(Class<? extends Object> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+		return super.readInternal(clazz, inputMessage);
+	}
+
+	@Override
+	protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+
+		OutputStream out = outputMessage.getBody();
+		JsonUtil.getConfig().put(Date.class, new SimpleDateFormatSerializer(FORMAT));
+		//JsonUtil.getConfig().put(String.class, new EmojiSerializer());
+		String text = JsonUtil.toJSONString(obj, EnumFilter.instance, getFeatures());
+		byte[] bytes = text.getBytes(getCharset());
+		out.write(bytes);
+	}
+}
+
+class EmojiSerializer implements ObjectSerializer{
+
+	@Override
+	public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
+		serializer.write(EmojiParser.parseToUnicode(object.toString()));
+	}
+	
+}
+
+class EnumFilter implements ValueFilter {
+
+	public static EnumFilter instance = new EnumFilter();
+
+	public EnumFilter() {
+	}
+
+	@Override
+	public Object process(Object object, String name, Object value) {
+		if (value == null || StringUtils.isBlank(value.toString())) {
+			return value;
+		}
+		if (value instanceof BigDecimal || value instanceof Double || value instanceof Float) {
+			return new BigDecimal(value.toString());
+		}
+		if (BaseEnum.class.isAssignableFrom(value.getClass())) {
+			return ((BaseEnum<?, ?>) value).getCode();
+		}
+		return value;
+	}
+}

+ 86 - 0
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/ParameterCheckServletRequestWrapper.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.cms.config;
+
+import com.vdurmont.emoji.EmojiParser;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.util.StreamUtils;
+
+import javax.servlet.ReadListener;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.nio.charset.Charset;
+
+public class ParameterCheckServletRequestWrapper extends HttpServletRequestWrapper {
+
+	private byte[] requestBody;
+	private Charset charSet;
+
+	public ParameterCheckServletRequestWrapper(HttpServletRequest request) throws IOException {
+		super(request);
+
+		String requestBodyStr = getRequestPostStr(request);
+		if (StringUtils.isNotBlank(requestBodyStr)) {
+			requestBodyStr = EmojiParser.removeAllEmojis(requestBodyStr);
+			requestBody = requestBodyStr.getBytes(charSet);
+		} else {
+			requestBody = new byte[0];
+		}
+	}
+
+	public String getRequestPostStr(HttpServletRequest request) throws IOException {
+		String charSetStr = request.getCharacterEncoding();
+		if (charSetStr == null) {
+			charSetStr = "UTF-8";
+		}
+		charSet = Charset.forName(charSetStr);
+
+		return StreamUtils.copyToString(request.getInputStream(), charSet);
+	}
+
+	/**
+	 * 重写 getInputStream()
+	 */
+	@Override
+	public ServletInputStream getInputStream() {
+		if (requestBody == null) {
+			requestBody = new byte[0];
+		}
+
+		final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(requestBody);
+
+		return new ServletInputStream() {
+			@Override
+			public boolean isFinished() {
+				return false;
+			}
+
+			@Override
+			public boolean isReady() {
+				return false;
+			}
+
+			@Override
+			public void setReadListener(ReadListener readListener) {
+
+			}
+
+			@Override
+			public int read() {
+				return byteArrayInputStream.read();
+			}
+		};
+	}
+
+	/**
+	 * 重写 getReader()
+	 */
+	@Override
+	public BufferedReader getReader() {
+		return new BufferedReader(new InputStreamReader(getInputStream()));
+	}
+
+}

+ 0 - 1
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/WebMvcConfig.java

@@ -14,7 +14,6 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 import com.yonge.cooleshow.cms.interceptor.OperationLogInterceptor;
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 
 @Configuration
 public class WebMvcConfig implements WebMvcConfigurer {

+ 51 - 0
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/config/filters/EmojiEncodingFilter.java

@@ -0,0 +1,51 @@
+package com.yonge.cooleshow.cms.config.filters;
+
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.cooleshow.cms.config.ParameterCheckServletRequestWrapper;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+
+public class EmojiEncodingFilter implements Filter {
+
+	@Override
+	public void init(FilterConfig filterConfig) throws ServletException {
+		Filter.super.init(filterConfig);
+	}
+
+	@Override
+	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
+		request = new ParameterCheckServletRequestWrapper((HttpServletRequest) request) {
+
+			@Override
+			public String getParameter(String name) {
+				// 参数名
+				String value = super.getParameter(name);
+				if (StringUtils.isNotBlank(value)) {
+					// 返回值之前 先进行 Emoji 转化
+					return EmojiParser.removeAllEmojis(value);
+				}
+				return value;
+			}
+
+			@Override
+			public String[] getParameterValues(String name) {
+				// 参数值
+				// 返回值之前 先进行 Emoji 转化
+				String[] values = super.getParameterValues(name);
+				if (values != null) {
+					for (int i = 0; i < values.length; i++) {
+						values[i] = EmojiParser.removeAllEmojis(values[i]);
+					}
+				}
+				return values;
+			}
+
+		};
+		
+		chain.doFilter(request, response);
+	}
+
+}

+ 1 - 1
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/dal/entity/NewsStatusEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.cms.dal.entity;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum NewsStatusEnum implements BaseEnum<Integer, NewsStatusEnum> {
 

+ 6 - 15
cooleshow-common/pom.xml

@@ -14,19 +14,21 @@
 	<packaging>jar</packaging>
 
 	<name>cooleshow-common</name>
-	<url>http://maven.apache.org</url>
 
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 	</properties>
 
 	<dependencies>
-
 		<dependency>
 			<groupId>com.yonge.toolset</groupId>
-			<artifactId>thirdparty-component</artifactId>
+			<artifactId>toolset-base</artifactId>
+			<version>1.0</version>
+		</dependency>
+		<dependency>
+			<groupId>com.yonge.toolset</groupId>
+			<artifactId>utils</artifactId>
 		</dependency>
-
 		<!-- Redis缓存整合开始 -->
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
@@ -43,20 +45,9 @@
 			<artifactId>jedis</artifactId>
 		</dependency>
 		<!-- Redis缓存整合结束 -->
-
 		<dependency>
 			<groupId>org.springframework.cloud</groupId>
 			<artifactId>spring-cloud-starter-oauth2</artifactId>
 		</dependency>
-
-		<dependency>
-			<groupId>org.springframework.cloud</groupId>
-			<artifactId>spring-cloud-starter-openfeign</artifactId>
-		</dependency>
-
-		<dependency>
-			<groupId>com.vdurmont</groupId>
-			<artifactId>emoji-java</artifactId>
-		</dependency>
 	</dependencies>
 </project>

+ 1 - 2
cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/EnumConverter.java

@@ -1,9 +1,8 @@
 package com.yonge.cooleshow.common.config;
 
+import com.yonge.toolset.base.enums.BaseEnum;
 import org.springframework.core.convert.converter.Converter;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
-
 public class EnumConverter<T extends BaseEnum<?, ?>> implements Converter<String, T> {
 
 	private Class<T> enumType;

+ 1 - 2
cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/EnumConverterFactory.java

@@ -1,7 +1,6 @@
 package com.yonge.cooleshow.common.config;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
-
+import com.yonge.toolset.base.enums.BaseEnum;
 import org.springframework.core.convert.converter.Converter;
 import org.springframework.core.convert.converter.ConverterFactory;
 import org.springframework.stereotype.Component;

+ 0 - 128
cooleshow-common/src/main/java/com/yonge/cooleshow/common/config/RequestAttributeHystrixConcurrencyStrategy.java

@@ -1,128 +0,0 @@
-package com.yonge.cooleshow.common.config;
-
-import java.util.concurrent.BlockingQueue;
-import java.util.concurrent.Callable;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
-import org.springframework.web.context.request.RequestAttributes;
-import org.springframework.web.context.request.RequestContextHolder;
-
-import com.netflix.hystrix.HystrixThreadPoolKey;
-import com.netflix.hystrix.HystrixThreadPoolProperties;
-import com.netflix.hystrix.strategy.HystrixPlugins;
-import com.netflix.hystrix.strategy.concurrency.HystrixConcurrencyStrategy;
-import com.netflix.hystrix.strategy.concurrency.HystrixRequestVariable;
-import com.netflix.hystrix.strategy.concurrency.HystrixRequestVariableLifecycle;
-import com.netflix.hystrix.strategy.eventnotifier.HystrixEventNotifier;
-import com.netflix.hystrix.strategy.executionhook.HystrixCommandExecutionHook;
-import com.netflix.hystrix.strategy.metrics.HystrixMetricsPublisher;
-import com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy;
-import com.netflix.hystrix.strategy.properties.HystrixProperty;
-
-//@Component
-public class RequestAttributeHystrixConcurrencyStrategy extends HystrixConcurrencyStrategy {
-	private static final Logger log = LoggerFactory.getLogger(RequestAttributeHystrixConcurrencyStrategy.class);
-
-	private HystrixConcurrencyStrategy delegate;
-
-	public RequestAttributeHystrixConcurrencyStrategy() {
-		try {
-			this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
-			if (this.delegate instanceof RequestAttributeHystrixConcurrencyStrategy) {
-				// Welcome to singleton hell...
-				return;
-			}
-			HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins
-					.getInstance().getCommandExecutionHook();
-			HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance()
-					.getEventNotifier();
-			HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
-					.getMetricsPublisher();
-			HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
-					.getPropertiesStrategy();
-			this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher,
-					propertiesStrategy);
-			HystrixPlugins.reset();
-			HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
-			HystrixPlugins.getInstance()
-					.registerCommandExecutionHook(commandExecutionHook);
-			HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
-			HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
-			HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
-		}
-		catch (Exception e) {
-			log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
-		}
-	}
-
-	private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
-			HystrixMetricsPublisher metricsPublisher,
-			HystrixPropertiesStrategy propertiesStrategy) {
-		if (log.isDebugEnabled()) {
-			log.debug("Current Hystrix plugins configuration is ["
-					+ "concurrencyStrategy [" + this.delegate + "]," + "eventNotifier ["
-					+ eventNotifier + "]," + "metricPublisher [" + metricsPublisher + "],"
-					+ "propertiesStrategy [" + propertiesStrategy + "]," + "]");
-			log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
-		}
-	}
-
-	@Override
-	public <T> Callable<T> wrapCallable(Callable<T> callable) {
-		RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
-		return new WrappedCallable<>(callable, requestAttributes);
-	}
-
-	@Override
-	public ThreadPoolExecutor getThreadPool(HystrixThreadPoolKey threadPoolKey,
-			HystrixProperty<Integer> corePoolSize,
-			HystrixProperty<Integer> maximumPoolSize,
-			HystrixProperty<Integer> keepAliveTime, TimeUnit unit,
-			BlockingQueue<Runnable> workQueue) {
-		return this.delegate.getThreadPool(threadPoolKey, corePoolSize, maximumPoolSize,
-				keepAliveTime, unit, workQueue);
-	}
-
-	@Override
-	public ThreadPoolExecutor getThreadPool(HystrixThreadPoolKey threadPoolKey,
-			HystrixThreadPoolProperties threadPoolProperties) {
-		return this.delegate.getThreadPool(threadPoolKey, threadPoolProperties);
-	}
-
-	@Override
-	public BlockingQueue<Runnable> getBlockingQueue(int maxQueueSize) {
-		return this.delegate.getBlockingQueue(maxQueueSize);
-	}
-
-	@Override
-	public <T> HystrixRequestVariable<T> getRequestVariable(
-			HystrixRequestVariableLifecycle<T> rv) {
-		return this.delegate.getRequestVariable(rv);
-	}
-
-	static class WrappedCallable<T> implements Callable<T> {
-
-		private final Callable<T> target;
-		private final RequestAttributes requestAttributes;
-
-		public WrappedCallable(Callable<T> target, RequestAttributes requestAttributes) {
-			this.target = target;
-			this.requestAttributes = requestAttributes;
-		}
-
-		@Override
-		public T call() throws Exception {
-			try {
-				RequestContextHolder.setRequestAttributes(requestAttributes);
-				return target.call();
-			}
-			finally {
-				RequestContextHolder.resetRequestAttributes();
-			}
-		}
-	}
-}

+ 1 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/controller/BaseController.java

@@ -27,7 +27,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.exception.BizException;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import com.yonge.toolset.utils.http.HttpUtil;
 
 @ControllerAdvice

+ 1 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/entity/HttpResponseResult.java

@@ -4,7 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.yonge.cooleshow.common.exception.BizException;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import com.yonge.toolset.utils.http.HttpUtil;
 import com.yonge.toolset.utils.json.JsonUtil;
 import org.apache.commons.codec.binary.Base64;

+ 3 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/AccessSource.java

@@ -1,6 +1,8 @@
 package com.yonge.cooleshow.common.enums;
 
-/** 
+import com.yonge.toolset.base.enums.BaseEnum;
+
+/**
  * @author sunzl 
  * 2015年8月25日 下午4:19:00 
  * 会员状态枚举类

+ 0 - 14
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/BaseEnum.java

@@ -1,14 +0,0 @@
-package com.yonge.cooleshow.common.enums;
-
-/**
- * 枚举类基础类
- */
-public interface BaseEnum<T, E extends Enum<E>> {
-
-	/**
-	 * 获取枚举类的code值
-	 * @return
-	 */
-	public T getCode();
-
-}

+ 3 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/PlatformEnum.java

@@ -1,12 +1,14 @@
 package com.yonge.cooleshow.common.enums;
 
+import com.yonge.toolset.base.enums.BaseEnum;
+
 /**
  * Description
  *
  * @author liujunchi
  * @date 2022-04-24
  */
-public enum PlatformEnum implements BaseEnum<String,PlatformEnum>{
+public enum PlatformEnum implements BaseEnum<String,PlatformEnum> {
 
     STUDENT("STUDENT","STUDENT"),
     TEACHER("TEACHER","TEACHER");

+ 1 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/UserGenderEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.common.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * @author sunzl 

+ 1 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/exception/BizException.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.common.exception;
 
-import com.yonge.toolset.utils.string.MessageFormatter;
+import com.yonge.toolset.base.string.MessageFormatter;
 
 public class BizException extends RuntimeException {
 

+ 6 - 2
cooleshow-mall/mall-admin/pom.xml

@@ -60,12 +60,16 @@
             <scope>compile</scope>
         </dependency>
 
-
-
         <dependency>
             <groupId>com.yonge.cooleshow</groupId>
             <artifactId>mall-pay</artifactId>
         </dependency>
+
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-emoji</artifactId>
+            <version>1.0</version>
+        </dependency>
     </dependencies>
 
     <build>

+ 73 - 0
cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/LocalFastJsonHttpMessageConverter.java

@@ -0,0 +1,73 @@
+package com.yonge.cooleshow.admin.config;
+
+import com.alibaba.fastjson.serializer.JSONSerializer;
+import com.alibaba.fastjson.serializer.ObjectSerializer;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import com.alibaba.fastjson.serializer.ValueFilter;
+import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.toolset.base.enums.BaseEnum;
+import com.yonge.toolset.utils.json.JsonUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.reflect.Type;
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class LocalFastJsonHttpMessageConverter extends FastJsonHttpMessageConverter {
+
+	private static final String FORMAT = "yyyy-MM-dd HH:mm:ss";
+
+	@Override
+	protected Object readInternal(Class<? extends Object> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+		return super.readInternal(clazz, inputMessage);
+	}
+
+	@Override
+	protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+
+		OutputStream out = outputMessage.getBody();
+		JsonUtil.getConfig().put(Date.class, new SimpleDateFormatSerializer(FORMAT));
+		//JsonUtil.getConfig().put(String.class, new EmojiSerializer());
+		String text = JsonUtil.toJSONString(obj, EnumFilter.instance, getFeatures());
+		byte[] bytes = text.getBytes(getCharset());
+		out.write(bytes);
+	}
+}
+
+class EmojiSerializer implements ObjectSerializer{
+
+	@Override
+	public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
+		serializer.write(EmojiParser.parseToUnicode(object.toString()));
+	}
+	
+}
+
+class EnumFilter implements ValueFilter {
+
+	public static EnumFilter instance = new EnumFilter();
+
+	public EnumFilter() {
+	}
+
+	@Override
+	public Object process(Object object, String name, Object value) {
+		if (value == null || StringUtils.isBlank(value.toString())) {
+			return value;
+		}
+		if (value instanceof BigDecimal || value instanceof Double || value instanceof Float) {
+			return new BigDecimal(value.toString());
+		}
+		if (BaseEnum.class.isAssignableFrom(value.getClass())) {
+			return ((BaseEnum<?, ?>) value).getCode();
+		}
+		return value;
+	}
+}

+ 86 - 0
cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/ParameterCheckServletRequestWrapper.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.admin.config;
+
+import com.vdurmont.emoji.EmojiParser;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.util.StreamUtils;
+
+import javax.servlet.ReadListener;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.nio.charset.Charset;
+
+public class ParameterCheckServletRequestWrapper extends HttpServletRequestWrapper {
+
+	private byte[] requestBody;
+	private Charset charSet;
+
+	public ParameterCheckServletRequestWrapper(HttpServletRequest request) throws IOException {
+		super(request);
+
+		String requestBodyStr = getRequestPostStr(request);
+		if (StringUtils.isNotBlank(requestBodyStr)) {
+			requestBodyStr = EmojiParser.removeAllEmojis(requestBodyStr);
+			requestBody = requestBodyStr.getBytes(charSet);
+		} else {
+			requestBody = new byte[0];
+		}
+	}
+
+	public String getRequestPostStr(HttpServletRequest request) throws IOException {
+		String charSetStr = request.getCharacterEncoding();
+		if (charSetStr == null) {
+			charSetStr = "UTF-8";
+		}
+		charSet = Charset.forName(charSetStr);
+
+		return StreamUtils.copyToString(request.getInputStream(), charSet);
+	}
+
+	/**
+	 * 重写 getInputStream()
+	 */
+	@Override
+	public ServletInputStream getInputStream() {
+		if (requestBody == null) {
+			requestBody = new byte[0];
+		}
+
+		final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(requestBody);
+
+		return new ServletInputStream() {
+			@Override
+			public boolean isFinished() {
+				return false;
+			}
+
+			@Override
+			public boolean isReady() {
+				return false;
+			}
+
+			@Override
+			public void setReadListener(ReadListener readListener) {
+
+			}
+
+			@Override
+			public int read() {
+				return byteArrayInputStream.read();
+			}
+		};
+	}
+
+	/**
+	 * 重写 getReader()
+	 */
+	@Override
+	public BufferedReader getReader() {
+		return new BufferedReader(new InputStreamReader(getInputStream()));
+	}
+
+}

+ 0 - 3
cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/WebMvcConfig.java

@@ -1,14 +1,11 @@
 package com.yonge.cooleshow.admin.config;
 
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.format.FormatterRegistry;
 import org.springframework.http.MediaType;
-import org.springframework.web.servlet.config.annotation.CorsRegistry;
 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 

+ 51 - 0
cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/config/filters/EmojiEncodingFilter.java

@@ -0,0 +1,51 @@
+package com.yonge.cooleshow.admin.config.filters;
+
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.cooleshow.admin.config.ParameterCheckServletRequestWrapper;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+
+public class EmojiEncodingFilter implements Filter {
+
+	@Override
+	public void init(FilterConfig filterConfig) throws ServletException {
+		Filter.super.init(filterConfig);
+	}
+
+	@Override
+	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
+		request = new ParameterCheckServletRequestWrapper((HttpServletRequest) request) {
+
+			@Override
+			public String getParameter(String name) {
+				// 参数名
+				String value = super.getParameter(name);
+				if (StringUtils.isNotBlank(value)) {
+					// 返回值之前 先进行 Emoji 转化
+					return EmojiParser.removeAllEmojis(value);
+				}
+				return value;
+			}
+
+			@Override
+			public String[] getParameterValues(String name) {
+				// 参数值
+				// 返回值之前 先进行 Emoji 转化
+				String[] values = super.getParameterValues(name);
+				if (values != null) {
+					for (int i = 0; i < values.length; i++) {
+						values[i] = EmojiParser.removeAllEmojis(values[i]);
+					}
+				}
+				return values;
+			}
+
+		};
+		
+		chain.doFilter(request, response);
+	}
+
+}

+ 1 - 1
cooleshow-mall/mall-pay/src/main/java/com/yonge/cooleshow/enums/OrderStatusEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 订单状态 WAIT_PAY 待支付 PAYING 支付中  PAID 已付款 CLOSE 已关闭

+ 1 - 1
cooleshow-mall/mall-pay/src/main/java/com/yonge/cooleshow/sdk/adapay/PaymentSdk.java

@@ -11,7 +11,7 @@ import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.config.HuifuConfiguration;
 import com.yonge.cooleshow.sdk.adapay.dto.PaymentReq;
 import com.yonge.cooleshow.sdk.adapay.dto.RefundReq;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import com.yonge.toolset.utils.collection.MapUtil;
 import com.yonge.toolset.utils.http.HttpUtil;
 import com.yonge.toolset.utils.string.StringUtil;

+ 10 - 1
cooleshow-mall/mall-portal/pom.xml

@@ -69,7 +69,16 @@
             <version>20.0</version>
             <scope>compile</scope>
         </dependency>
-
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-emoji</artifactId>
+            <version>1.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-feign</artifactId>
+            <version>1.0</version>
+        </dependency>
     </dependencies>
 
     <build>

+ 73 - 0
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/LocalFastJsonHttpMessageConverter.java

@@ -0,0 +1,73 @@
+package com.yonge.cooleshow.portal.config;
+
+import com.alibaba.fastjson.serializer.JSONSerializer;
+import com.alibaba.fastjson.serializer.ObjectSerializer;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import com.alibaba.fastjson.serializer.ValueFilter;
+import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.toolset.base.enums.BaseEnum;
+import com.yonge.toolset.utils.json.JsonUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.reflect.Type;
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class LocalFastJsonHttpMessageConverter extends FastJsonHttpMessageConverter {
+
+	private static final String FORMAT = "yyyy-MM-dd HH:mm:ss";
+
+	@Override
+	protected Object readInternal(Class<? extends Object> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+		return super.readInternal(clazz, inputMessage);
+	}
+
+	@Override
+	protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+
+		OutputStream out = outputMessage.getBody();
+		JsonUtil.getConfig().put(Date.class, new SimpleDateFormatSerializer(FORMAT));
+		//JsonUtil.getConfig().put(String.class, new EmojiSerializer());
+		String text = JsonUtil.toJSONString(obj, EnumFilter.instance, getFeatures());
+		byte[] bytes = text.getBytes(getCharset());
+		out.write(bytes);
+	}
+}
+
+class EmojiSerializer implements ObjectSerializer{
+
+	@Override
+	public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
+		serializer.write(EmojiParser.parseToUnicode(object.toString()));
+	}
+	
+}
+
+class EnumFilter implements ValueFilter {
+
+	public static EnumFilter instance = new EnumFilter();
+
+	public EnumFilter() {
+	}
+
+	@Override
+	public Object process(Object object, String name, Object value) {
+		if (value == null || StringUtils.isBlank(value.toString())) {
+			return value;
+		}
+		if (value instanceof BigDecimal || value instanceof Double || value instanceof Float) {
+			return new BigDecimal(value.toString());
+		}
+		if (BaseEnum.class.isAssignableFrom(value.getClass())) {
+			return ((BaseEnum<?, ?>) value).getCode();
+		}
+		return value;
+	}
+}

+ 86 - 0
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/ParameterCheckServletRequestWrapper.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.portal.config;
+
+import com.vdurmont.emoji.EmojiParser;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.util.StreamUtils;
+
+import javax.servlet.ReadListener;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.nio.charset.Charset;
+
+public class ParameterCheckServletRequestWrapper extends HttpServletRequestWrapper {
+
+	private byte[] requestBody;
+	private Charset charSet;
+
+	public ParameterCheckServletRequestWrapper(HttpServletRequest request) throws IOException {
+		super(request);
+
+		String requestBodyStr = getRequestPostStr(request);
+		if (StringUtils.isNotBlank(requestBodyStr)) {
+			requestBodyStr = EmojiParser.removeAllEmojis(requestBodyStr);
+			requestBody = requestBodyStr.getBytes(charSet);
+		} else {
+			requestBody = new byte[0];
+		}
+	}
+
+	public String getRequestPostStr(HttpServletRequest request) throws IOException {
+		String charSetStr = request.getCharacterEncoding();
+		if (charSetStr == null) {
+			charSetStr = "UTF-8";
+		}
+		charSet = Charset.forName(charSetStr);
+
+		return StreamUtils.copyToString(request.getInputStream(), charSet);
+	}
+
+	/**
+	 * 重写 getInputStream()
+	 */
+	@Override
+	public ServletInputStream getInputStream() {
+		if (requestBody == null) {
+			requestBody = new byte[0];
+		}
+
+		final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(requestBody);
+
+		return new ServletInputStream() {
+			@Override
+			public boolean isFinished() {
+				return false;
+			}
+
+			@Override
+			public boolean isReady() {
+				return false;
+			}
+
+			@Override
+			public void setReadListener(ReadListener readListener) {
+
+			}
+
+			@Override
+			public int read() {
+				return byteArrayInputStream.read();
+			}
+		};
+	}
+
+	/**
+	 * 重写 getReader()
+	 */
+	@Override
+	public BufferedReader getReader() {
+		return new BufferedReader(new InputStreamReader(getInputStream()));
+	}
+
+}

+ 0 - 1
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/WebMvcConfig.java

@@ -1,7 +1,6 @@
 package com.yonge.cooleshow.portal.config;
 
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 import com.yonge.cooleshow.portal.interceptor.MDCInterceptor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.autoconfigure.http.HttpMessageConverters;

+ 6 - 13
cooleshow-common/src/main/java/com/yonge/cooleshow/common/filters/EmojiEncodingFilter.java → cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/config/filters/EmojiEncodingFilter.java

@@ -1,19 +1,12 @@
-package com.yonge.cooleshow.common.filters;
-
-import java.io.IOException;
-
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
+package com.yonge.cooleshow.portal.config.filters;
 
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.cooleshow.portal.config.ParameterCheckServletRequestWrapper;
 import org.apache.commons.lang3.StringUtils;
 
-import com.vdurmont.emoji.EmojiParser;
-import com.yonge.cooleshow.common.config.ParameterCheckServletRequestWrapper;
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 
 public class EmojiEncodingFilter implements Filter {
 

+ 6 - 0
cooleshow-task/pom.xml

@@ -57,6 +57,12 @@
 			<groupId>com.yonge.cooleshow</groupId>
 			<artifactId>auth-api</artifactId>
 		</dependency>
+
+		<dependency>
+			<groupId>com.yonge.toolset</groupId>
+			<artifactId>toolset-feign</artifactId>
+			<version>1.0</version>
+		</dependency>
 	</dependencies>
 
 	<build>

+ 60 - 0
cooleshow-task/src/main/java/com/yonge/cooleshow/task/config/LocalFastJsonHttpMessageConverter.java

@@ -0,0 +1,60 @@
+package com.yonge.cooleshow.task.config;
+
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import com.alibaba.fastjson.serializer.ValueFilter;
+import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
+import com.yonge.toolset.base.enums.BaseEnum;
+import com.yonge.toolset.utils.json.JsonUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class LocalFastJsonHttpMessageConverter extends FastJsonHttpMessageConverter {
+
+	private static final String FORMAT = "yyyy-MM-dd HH:mm:ss";
+
+	@Override
+	protected Object readInternal(Class<? extends Object> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+		return super.readInternal(clazz, inputMessage);
+	}
+
+	@Override
+	protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+
+		OutputStream out = outputMessage.getBody();
+		JsonUtil.getConfig().put(Date.class, new SimpleDateFormatSerializer(FORMAT));
+		//JsonUtil.getConfig().put(String.class, new EmojiSerializer());
+		String text = JsonUtil.toJSONString(obj, EnumFilter.instance, getFeatures());
+		byte[] bytes = text.getBytes(getCharset());
+		out.write(bytes);
+	}
+}
+
+class EnumFilter implements ValueFilter {
+
+	public static EnumFilter instance = new EnumFilter();
+
+	public EnumFilter() {
+	}
+
+	@Override
+	public Object process(Object object, String name, Object value) {
+		if (value == null || StringUtils.isBlank(value.toString())) {
+			return value;
+		}
+		if (value instanceof BigDecimal || value instanceof Double || value instanceof Float) {
+			return new BigDecimal(value.toString());
+		}
+		if (BaseEnum.class.isAssignableFrom(value.getClass())) {
+			return ((BaseEnum<?, ?>) value).getCode();
+		}
+		return value;
+	}
+}

+ 84 - 0
cooleshow-task/src/main/java/com/yonge/cooleshow/task/config/ParameterCheckServletRequestWrapper.java

@@ -0,0 +1,84 @@
+package com.yonge.cooleshow.task.config;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.util.StreamUtils;
+
+import javax.servlet.ReadListener;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.nio.charset.Charset;
+
+public class ParameterCheckServletRequestWrapper extends HttpServletRequestWrapper {
+
+	private byte[] requestBody;
+	private Charset charSet;
+
+	public ParameterCheckServletRequestWrapper(HttpServletRequest request) throws IOException {
+		super(request);
+
+		String requestBodyStr = getRequestPostStr(request);
+		if (StringUtils.isNotBlank(requestBodyStr)) {
+			requestBody = requestBodyStr.getBytes(charSet);
+		} else {
+			requestBody = new byte[0];
+		}
+	}
+
+	public String getRequestPostStr(HttpServletRequest request) throws IOException {
+		String charSetStr = request.getCharacterEncoding();
+		if (charSetStr == null) {
+			charSetStr = "UTF-8";
+		}
+		charSet = Charset.forName(charSetStr);
+
+		return StreamUtils.copyToString(request.getInputStream(), charSet);
+	}
+
+	/**
+	 * 重写 getInputStream()
+	 */
+	@Override
+	public ServletInputStream getInputStream() {
+		if (requestBody == null) {
+			requestBody = new byte[0];
+		}
+
+		final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(requestBody);
+
+		return new ServletInputStream() {
+			@Override
+			public boolean isFinished() {
+				return false;
+			}
+
+			@Override
+			public boolean isReady() {
+				return false;
+			}
+
+			@Override
+			public void setReadListener(ReadListener readListener) {
+
+			}
+
+			@Override
+			public int read() {
+				return byteArrayInputStream.read();
+			}
+		};
+	}
+
+	/**
+	 * 重写 getReader()
+	 */
+	@Override
+	public BufferedReader getReader() {
+		return new BufferedReader(new InputStreamReader(getInputStream()));
+	}
+
+}

+ 0 - 1
cooleshow-task/src/main/java/com/yonge/cooleshow/task/config/WebMvcConfig.java

@@ -11,7 +11,6 @@ import org.springframework.http.MediaType;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 
 @Configuration
 public class WebMvcConfig implements WebMvcConfigurer {

+ 1 - 2
cooleshow-task/src/main/java/com/yonge/cooleshow/task/feign/MallPortalFeignService.java

@@ -1,8 +1,7 @@
 package com.yonge.cooleshow.task.feign;
 
-import com.yonge.cooleshow.common.config.FeignConfiguration;
 import com.yonge.cooleshow.task.feign.fallback.MallPortalFeignServiceFallback;
-import com.yonge.cooleshow.task.feign.fallback.StudentFeignServiceFallback;
+import com.yonge.toolset.feign.config.FeignConfiguration;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 

+ 1 - 1
cooleshow-task/src/main/java/com/yonge/cooleshow/task/feign/StudentFeignService.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.task.feign;
 
-import com.yonge.cooleshow.common.config.FeignConfiguration;
 import com.yonge.cooleshow.task.feign.fallback.StudentFeignServiceFallback;
+import com.yonge.toolset.feign.config.FeignConfiguration;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 

+ 1 - 1
cooleshow-task/src/main/java/com/yonge/cooleshow/task/feign/TeacherFeignService.java

@@ -1,8 +1,8 @@
 package com.yonge.cooleshow.task.feign;
 
-import com.yonge.cooleshow.common.config.FeignConfiguration;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.task.feign.fallback.TeacherFeignServiceFallback;
+import com.yonge.toolset.feign.config.FeignConfiguration;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/config/WebMvcConfig.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.admin.config;
 import java.util.ArrayList;
 import java.util.List;
 
+import com.yonge.cooleshow.biz.dal.config.LocalFastJsonHttpMessageConverter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
 import org.springframework.context.annotation.Bean;
@@ -14,7 +15,6 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 import com.yonge.cooleshow.admin.interceptor.OperationLogInterceptor;
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 
 @Configuration
 public class WebMvcConfig implements WebMvcConfigurer {

+ 12 - 0
cooleshow-user/user-biz/pom.xml

@@ -26,11 +26,22 @@
 
         <dependency>
             <groupId>com.yonge.toolset</groupId>
+            <artifactId>thirdparty-component</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>com.yonge.toolset</groupId>
             <artifactId>toolset-mybatis</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
+            <groupId>com.yonge.toolset</groupId>
+            <artifactId>toolset-emoji</artifactId>
+            <version>1.0</version>
+        </dependency>
+
+        <dependency>
             <groupId>com.spring4all</groupId>
             <artifactId>swagger-spring-boot-starter</artifactId>
         </dependency>
@@ -67,6 +78,7 @@
             <artifactId>auth-api</artifactId>
             <version>${project.version}</version>
         </dependency>
+
         <dependency>
             <groupId>com.huifu.adapay</groupId>
             <artifactId>adapay-java-sdk</artifactId>

+ 73 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/config/LocalFastJsonHttpMessageConverter.java

@@ -0,0 +1,73 @@
+package com.yonge.cooleshow.biz.dal.config;
+
+import com.alibaba.fastjson.serializer.JSONSerializer;
+import com.alibaba.fastjson.serializer.ObjectSerializer;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import com.alibaba.fastjson.serializer.ValueFilter;
+import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.toolset.base.enums.BaseEnum;
+import com.yonge.toolset.utils.json.JsonUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.http.HttpInputMessage;
+import org.springframework.http.HttpOutputMessage;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.http.converter.HttpMessageNotWritableException;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.reflect.Type;
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class LocalFastJsonHttpMessageConverter extends FastJsonHttpMessageConverter {
+
+	private static final String FORMAT = "yyyy-MM-dd HH:mm:ss";
+
+	@Override
+	protected Object readInternal(Class<? extends Object> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
+		return super.readInternal(clazz, inputMessage);
+	}
+
+	@Override
+	protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
+
+		OutputStream out = outputMessage.getBody();
+		JsonUtil.getConfig().put(Date.class, new SimpleDateFormatSerializer(FORMAT));
+		//JsonUtil.getConfig().put(String.class, new EmojiSerializer());
+		String text = JsonUtil.toJSONString(obj, EnumFilter.instance, getFeatures());
+		byte[] bytes = text.getBytes(getCharset());
+		out.write(bytes);
+	}
+}
+
+class EmojiSerializer implements ObjectSerializer{
+
+	@Override
+	public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
+		serializer.write(EmojiParser.parseToUnicode(object.toString()));
+	}
+	
+}
+
+class EnumFilter implements ValueFilter {
+
+	public static EnumFilter instance = new EnumFilter();
+
+	public EnumFilter() {
+	}
+
+	@Override
+	public Object process(Object object, String name, Object value) {
+		if (value == null || StringUtils.isBlank(value.toString())) {
+			return value;
+		}
+		if (value instanceof BigDecimal || value instanceof Double || value instanceof Float) {
+			return new BigDecimal(value.toString());
+		}
+		if (BaseEnum.class.isAssignableFrom(value.getClass())) {
+			return ((BaseEnum<?, ?>) value).getCode();
+		}
+		return value;
+	}
+}

+ 86 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/config/ParameterCheckServletRequestWrapper.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.biz.dal.config;
+
+import com.vdurmont.emoji.EmojiParser;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.util.StreamUtils;
+
+import javax.servlet.ReadListener;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.nio.charset.Charset;
+
+public class ParameterCheckServletRequestWrapper extends HttpServletRequestWrapper {
+
+	private byte[] requestBody;
+	private Charset charSet;
+
+	public ParameterCheckServletRequestWrapper(HttpServletRequest request) throws IOException {
+		super(request);
+
+		String requestBodyStr = getRequestPostStr(request);
+		if (StringUtils.isNotBlank(requestBodyStr)) {
+			requestBodyStr = EmojiParser.removeAllEmojis(requestBodyStr);
+			requestBody = requestBodyStr.getBytes(charSet);
+		} else {
+			requestBody = new byte[0];
+		}
+	}
+
+	public String getRequestPostStr(HttpServletRequest request) throws IOException {
+		String charSetStr = request.getCharacterEncoding();
+		if (charSetStr == null) {
+			charSetStr = "UTF-8";
+		}
+		charSet = Charset.forName(charSetStr);
+
+		return StreamUtils.copyToString(request.getInputStream(), charSet);
+	}
+
+	/**
+	 * 重写 getInputStream()
+	 */
+	@Override
+	public ServletInputStream getInputStream() {
+		if (requestBody == null) {
+			requestBody = new byte[0];
+		}
+
+		final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(requestBody);
+
+		return new ServletInputStream() {
+			@Override
+			public boolean isFinished() {
+				return false;
+			}
+
+			@Override
+			public boolean isReady() {
+				return false;
+			}
+
+			@Override
+			public void setReadListener(ReadListener readListener) {
+
+			}
+
+			@Override
+			public int read() {
+				return byteArrayInputStream.read();
+			}
+		};
+	}
+
+	/**
+	 * 重写 getReader()
+	 */
+	@Override
+	public BufferedReader getReader() {
+		return new BufferedReader(new InputStreamReader(getInputStream()));
+	}
+
+}

+ 51 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/config/filters/EmojiEncodingFilter.java

@@ -0,0 +1,51 @@
+package com.yonge.cooleshow.biz.dal.config.filters;
+
+import com.vdurmont.emoji.EmojiParser;
+import com.yonge.cooleshow.biz.dal.config.ParameterCheckServletRequestWrapper;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+
+public class EmojiEncodingFilter implements Filter {
+
+	@Override
+	public void init(FilterConfig filterConfig) throws ServletException {
+		Filter.super.init(filterConfig);
+	}
+
+	@Override
+	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
+		request = new ParameterCheckServletRequestWrapper((HttpServletRequest) request) {
+
+			@Override
+			public String getParameter(String name) {
+				// 参数名
+				String value = super.getParameter(name);
+				if (StringUtils.isNotBlank(value)) {
+					// 返回值之前 先进行 Emoji 转化
+					return EmojiParser.removeAllEmojis(value);
+				}
+				return value;
+			}
+
+			@Override
+			public String[] getParameterValues(String name) {
+				// 参数值
+				// 返回值之前 先进行 Emoji 转化
+				String[] values = super.getParameterValues(name);
+				if (values != null) {
+					for (int i = 0; i < values.length; i++) {
+						values[i] = EmojiParser.removeAllEmojis(values[i]);
+					}
+				}
+				return values;
+			}
+
+		};
+		
+		chain.doFilter(request, response);
+	}
+
+}

+ 1 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ImGroup.java

@@ -1,15 +1,13 @@
 package com.yonge.cooleshow.biz.dal.entity;
 
 
-import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
 import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
 import java.io.Serializable;
 import java.util.Date;
 

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ImGroupMember.java

@@ -4,7 +4,7 @@ package com.yonge.cooleshow.biz.dal.entity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -67,7 +67,7 @@ public class ImGroupMember implements Serializable {
         this.roleType = roleType;
     }
 
-    public enum ImGroupMemberRoleType implements BaseEnum<String, ImGroupMember.ImGroupMemberRoleType> {
+    public enum ImGroupMemberRoleType implements BaseEnum<String, ImGroupMemberRoleType> {
         TEACHER("老师"),
         STUDENT("学生");
 

+ 1 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/SysUserContracts.java

@@ -1,9 +1,8 @@
 package com.yonge.cooleshow.biz.dal.entity;
 
+import com.yonge.toolset.base.enums.BaseEnum;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
-
 /**
  * 对应数据库表(sys_user_contracts):
  */

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AccountBizTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 账户流水枚举

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AudioTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * Description 曲目音频类型 1:mp3,2:midi,3:mp3_metronome

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuditEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * Description 审核状态(0:待审核;1:通过;2:未通过)

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuditStatusEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum AuditStatusEnum implements BaseEnum<String,AuditStatusEnum> {
     AUDITING("审核中"), REJECT("审核拒绝"), OPEN("审核通过");

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuthStatusEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 认证审核状态

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CacheNameEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.yonge.cooleshow.common.constant.CommonConstants;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 import org.apache.commons.lang3.StringUtils;
 
 import java.time.Duration;

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/ChargeTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * Description 收费类型(FREE:免费;VIP:会员;CHARGE:单曲收费)

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/ClientEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * Description

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CourseGroupEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum CourseGroupEnum implements BaseEnum<String,CourseGroupEnum> {
     ING("ING", "进行中"),//课程已开始进行中

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CourseScheduleEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 import java.util.Arrays;
 import java.util.List;

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/FrozenTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 账户变更冻结类型

+ 1 - 5
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/GenderEnum.java

@@ -1,11 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.stream.Collectors;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /***
  * 性别

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/GoodTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 商品类型

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/InOrOutEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 收入支出枚举

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/JobNatureEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 //工作性质(兼职、全职)
 public enum JobNatureEnum implements BaseEnum<String,JobNatureEnum> {

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageSendMode.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  状态,1,表示短信;2,表示邮件; 3,app推送消息

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageTypeEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     SMS_VERIFY_CODE_LOGIN("SMS_VERIFY_CODE_LOGIN", "验证码登录"),

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/OrderStatusEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 订单状态 WAIT_PAY 待支付 PAYING 支付中  PAID 已付款 CLOSE 已关闭

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/OrderTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 订单类型

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/PayChannelEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 支付渠道

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/PeriodEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 周期

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/SendStatusEnum.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  状态,-1,发送失败;0,待发送;1,发送中;2,发送完成

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/SourceTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * Description 数据类型  TEACHER 老师 PLATFORM 平台

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/StudentCourseEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * Description 学生上课状态

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/SuggestionType.java

@@ -1,6 +1,6 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum SuggestionType implements BaseEnum<String, SuggestionType> {
 	APP("APP", "软件反馈"),

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TeacherSalaryEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 课酬结算状态枚举

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TeacherTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 import com.yonge.toolset.utils.string.StringUtil;
 
 /***

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TimeTypeEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 时间枚举

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TradeStatusEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /**
  * 交易状态 pending 交易处理中 succeeded 交易成功 failed 交易失败

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/UserLockFlag.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 /** 
  * 会员状态枚举类

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/YesOrNoEnum.java

@@ -1,7 +1,7 @@
 package com.yonge.cooleshow.biz.dal.enums;
 
 import com.baomidou.mybatisplus.annotation.EnumValue;
-import com.yonge.cooleshow.common.enums.BaseEnum;
+import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum YesOrNoEnum implements BaseEnum<Integer, YesOrNoEnum> {
     NO(0,"否"),

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/sdk/PaymentSdk.java

@@ -11,7 +11,7 @@ import com.yonge.cooleshow.biz.dal.service.impl.ImGroupMemberServiceImpl;
 import com.yonge.cooleshow.common.constant.CommonConstants;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.exception.BizException;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import com.yonge.toolset.utils.collection.MapUtil;
 import com.yonge.toolset.utils.http.HttpUtil;
 import com.yonge.toolset.utils.string.StringUtil;

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SysMessageServiceImpl.java

@@ -10,6 +10,7 @@ import java.util.Map.Entry;
 import java.util.Random;
 import java.util.Set;
 
+import com.yonge.toolset.base.string.MessageFormatter;
 import com.yonge.toolset.mybatis.service.impl.BaseServiceImpl;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -39,7 +40,6 @@ import com.yonge.cooleshow.common.redis.service.RedisCache;
 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.yonge.toolset.utils.collection.MapUtil;
-import com.yonge.toolset.utils.string.MessageFormatter;
 
 @Service
 public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> implements SysMessageService {

+ 1 - 1
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/config/WebMvcConfig.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.student.config;
 import java.util.ArrayList;
 import java.util.List;
 
+import com.yonge.cooleshow.biz.dal.config.LocalFastJsonHttpMessageConverter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
 import org.springframework.context.annotation.Bean;
@@ -13,7 +14,6 @@ import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 import com.yonge.cooleshow.student.interceptor.MDCInterceptor;
 
 @Configuration

+ 1 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/config/WebMvcConfig.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.teacher.config;
 import java.util.ArrayList;
 import java.util.List;
 
+import com.yonge.cooleshow.biz.dal.config.LocalFastJsonHttpMessageConverter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
 import org.springframework.context.annotation.Bean;
@@ -13,7 +14,6 @@ import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 import com.yonge.cooleshow.common.config.EnumConverterFactory;
-import com.yonge.cooleshow.common.config.LocalFastJsonHttpMessageConverter;
 import com.yonge.cooleshow.teacher.interceptor.MDCInterceptor;
 import com.yonge.cooleshow.teacher.interceptor.OperationLogInterceptor;
 

+ 1 - 1
pom.xml

@@ -381,6 +381,6 @@
 		<module>cooleshow-mall</module>
         <module>cooleshow-websocket</module>
         <module>cooleshow-api</module>
-        <module>toolset-mybatis</module>
+
     </modules>
 </project>

+ 4 - 1
toolset/pom.xml

@@ -29,8 +29,11 @@
 		<module>codegen</module>
 		<module>dynamic-datasource</module>
 		<module>thirdparty-component</module>
+		<module>toolset-base</module>
+		<module>toolset-emoji</module>
+		<module>toolset-feign</module>
 		<module>toolset-mybatis</module>
 		<module>utils</module>
 		<module>mongo-db</module>
-	</modules>
+    </modules>
 </project>

+ 5 - 1
toolset/thirdparty-component/pom.xml

@@ -18,7 +18,11 @@
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 	</properties>
 	<dependencies>
-
+		<dependency>
+			<groupId>com.yonge.toolset</groupId>
+			<artifactId>toolset-base</artifactId>
+			<version>1.0</version>
+		</dependency>
 		<dependency>
 			<groupId>com.yonge.toolset</groupId>
 			<artifactId>utils</artifactId>

+ 2 - 1
toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/eseal/ESealPluginContext.java

@@ -3,6 +3,8 @@ package com.yonge.toolset.thirdparty.eseal;
 import java.util.HashMap;
 import java.util.Map;
 
+import com.yonge.toolset.base.exception.ThirdpartyException;
+
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeansException;
 import org.springframework.beans.factory.InitializingBean;
@@ -12,7 +14,6 @@ import org.springframework.context.ApplicationContextAware;
 import org.springframework.stereotype.Component;
 
 import com.yonge.toolset.thirdparty.eseal.provider.TsignPlugin;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
 
 @Component
 public class ESealPluginContext implements ApplicationContextAware, InitializingBean {

+ 1 - 1
toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/eseal/provider/BytedancePlugin.java

@@ -12,7 +12,7 @@ import org.springframework.beans.factory.annotation.Value;
 
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONPath;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import com.yonge.toolset.utils.http.HttpUtil;
 import com.yonge.toolset.utils.sort.SortUtil;
 import com.yonge.toolset.utils.string.ValueUtil;

+ 1 - 1
toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/eseal/provider/TsignPlugin.java

@@ -32,7 +32,7 @@ import com.timevale.esign.sdk.tech.v3.client.ServiceClient;
 import com.timevale.esign.sdk.tech.v3.client.ServiceClientManager;
 import com.timevale.tech.sdk.bean.ProjectConfig;
 import com.yonge.toolset.thirdparty.eseal.ESealPlugin;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 
 /**
  * 接口文档地址  https://open.esign.cn/doc/detail?id=opendoc%2Fpaas_sdk%2Fbzu9e8&namespace=opendoc%2Fpaas_sdk&searchText=

+ 2 - 1
toolset/thirdparty-component/src/main/java/com/yonge/toolset/thirdparty/lingxinpay/ContractSignService.java

@@ -4,6 +4,7 @@ import java.io.IOException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -12,7 +13,7 @@ import org.springframework.stereotype.Service;
 
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONPath;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
+import com.yonge.toolset.base.exception.ThirdpartyException;
 import com.yonge.toolset.utils.http.HttpUtil;
 
 @Service

Some files were not shown because too many files changed in this diff