From 22e522c287bf39830ed6a375c275ad5f728933c5 Mon Sep 17 00:00:00 2001
From: xuwenbo <717567226@qq.com>
Date: Thu, 14 May 2020 13:15:25 +0800
Subject: [PATCH 1/6] =?UTF-8?q?=E5=8D=87=E7=BA=A7=E7=89=88=E6=9C=AC?=
=?UTF-8?q?=E5=8F=B7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 2 +-
yshop-api/pom.xml | 8 ++++----
yshop-common/pom.xml | 4 ++--
yshop-generator/pom.xml | 6 +++---
yshop-logging/pom.xml | 6 +++---
yshop-mp/pom.xml | 6 +++---
yshop-mproot/pom.xml | 2 +-
yshop-shop/pom.xml | 8 ++++----
yshop-system/pom.xml | 10 +++++-----
yshop-tools/pom.xml | 6 +++---
10 files changed, 29 insertions(+), 29 deletions(-)
diff --git a/pom.xml b/pom.xml
index f86a1daf..c932c3c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
co.yixiang
yshop
pom
- 2.1
+ 2.2
yshop-common
diff --git a/yshop-api/pom.xml b/yshop-api/pom.xml
index e113b267..1b3601e4 100644
--- a/yshop-api/pom.xml
+++ b/yshop-api/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -21,12 +21,12 @@
co.yixiang
yshop-tools
- 2.1
+ 2.2
co.yixiang
yshop-mp
- 2.1
+ 2.2
@@ -113,4 +113,4 @@
-
\ No newline at end of file
+
diff --git a/yshop-common/pom.xml b/yshop-common/pom.xml
index 8f80ed5f..2250a7df 100644
--- a/yshop-common/pom.xml
+++ b/yshop-common/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -37,7 +37,7 @@
co.yixiang
yshop-mproot
- 2.1
+ 2.2
org.apache.httpcomponents
diff --git a/yshop-generator/pom.xml b/yshop-generator/pom.xml
index 4d1c8cd3..5ff6a1a2 100644
--- a/yshop-generator/pom.xml
+++ b/yshop-generator/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -20,7 +20,7 @@
co.yixiang
yshop-common
- 2.1
+ 2.2
@@ -36,4 +36,4 @@
${configuration.version}
-
\ No newline at end of file
+
diff --git a/yshop-logging/pom.xml b/yshop-logging/pom.xml
index 779becd8..fd9c41c3 100644
--- a/yshop-logging/pom.xml
+++ b/yshop-logging/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -16,12 +16,12 @@
co.yixiang
yshop-common
- 2.1
+ 2.2
co.yixiang
yshop-mproot
- 2.1
+ 2.2
compile
diff --git a/yshop-mp/pom.xml b/yshop-mp/pom.xml
index 643f31ab..37b29d80 100644
--- a/yshop-mp/pom.xml
+++ b/yshop-mp/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -35,9 +35,9 @@
co.yixiang
yshop-common
- 2.1
+ 2.2
-
\ No newline at end of file
+
diff --git a/yshop-mproot/pom.xml b/yshop-mproot/pom.xml
index 3a011a65..5f02e377 100644
--- a/yshop-mproot/pom.xml
+++ b/yshop-mproot/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
MyBatisPlus模块
diff --git a/yshop-shop/pom.xml b/yshop-shop/pom.xml
index e84b1a17..1c7e1808 100644
--- a/yshop-shop/pom.xml
+++ b/yshop-shop/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -21,13 +21,13 @@
co.yixiang
yshop-tools
- 2.1
+ 2.2
co.yixiang
yshop-mp
- 2.1
+ 2.2
co.yixiang
@@ -38,4 +38,4 @@
-
\ No newline at end of file
+
diff --git a/yshop-system/pom.xml b/yshop-system/pom.xml
index 511ec612..9aacbc86 100644
--- a/yshop-system/pom.xml
+++ b/yshop-system/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -21,7 +21,7 @@
co.yixiang
yshop-generator
- 2.1
+ 2.2
co.yixiang
@@ -32,17 +32,17 @@
co.yixiang
yshop-shop
- 2.1
+ 2.2
co.yixiang
yshop-mproot
- 2.1
+ 2.2
co.yixiang
yshop-mp
- 2.1
+ 2.2
co.yixiang
diff --git a/yshop-tools/pom.xml b/yshop-tools/pom.xml
index 4330147e..8278a402 100644
--- a/yshop-tools/pom.xml
+++ b/yshop-tools/pom.xml
@@ -5,7 +5,7 @@
yshop
co.yixiang
- 2.1
+ 2.2
4.0.0
@@ -23,7 +23,7 @@
co.yixiang
yshop-logging
- 2.1
+ 2.2
@@ -47,4 +47,4 @@
${alipay.version}
-
\ No newline at end of file
+
From 4dfefab9070773746e8e9e1d1dd4309d1bf8490c Mon Sep 17 00:00:00 2001
From: xuwenbo <717567226@qq.com>
Date: Thu, 14 May 2020 14:30:51 +0800
Subject: [PATCH 2/6] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=85=AC=E4=BC=97?=
=?UTF-8?q?=E5=8F=B7=E4=B8=8E=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=8E=88=E6=9D=83?=
=?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=8B=E5=8A=A1=E6=8E=A7=E5=88=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../modules/security/rest/AuthController.java | 258 +--------------
.../modules/user/service/YxUserService.java | 5 +
.../user/service/impl/YxUserServiceImpl.java | 311 +++++++++++++++++-
3 files changed, 316 insertions(+), 258 deletions(-)
diff --git a/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java b/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java
index fe09a358..882b8f07 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java
@@ -101,7 +101,7 @@ public class AuthController {
private final YxUserService userService;
private final PasswordEncoder passwordEncoder;
private final YxWechatUserService wechatUserService;
- private final WxMaService wxMaService;
+
private final NotifyService notifyService;
private final YxSystemAttachmentService systemAttachmentService;
@@ -161,132 +161,7 @@ public class AuthController {
* 2、目前登陆授权打通方式适用于新项目(也就是你yx_user、yx_wechat_user都是空的)
* 3、如果你以前已经有数据请自行处理
*/
-
- try {
- WxMpService wxService = WxMpConfiguration.getWxMpService();
- WxMpOAuth2AccessToken wxMpOAuth2AccessToken = wxService.oauth2getAccessToken(code);
- WxMpUser wxMpUser = wxService.oauth2getUserInfo(wxMpOAuth2AccessToken, null);
- String openid = wxMpUser.getOpenId();
-
- //如果开启了UnionId
- if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
- openid = wxMpUser.getUnionId();
- }
- YxUser yxUser = userService.findByName(openid);
-
- String username = "";
- if(ObjectUtil.isNull(yxUser)){
- //过滤掉表情
- String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickname());
- log.info("昵称:{}", nickname);
- //用户保存
- YxUser user = new YxUser();
- user.setAccount(nickname);
- //如果开启了UnionId
- if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
- username = wxMpUser.getUnionId();
- user.setUsername(wxMpUser.getUnionId());
- }else{
- username = wxMpUser.getOpenId();
- user.setUsername(wxMpUser.getOpenId());
- }
- user.setPassword(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
- user.setPwd(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
- user.setPhone("");
- user.setUserType(AppFromEnum.WECHAT.getValue());
- user.setLoginType(AppFromEnum.WECHAT.getValue());
- user.setAddTime(OrderUtil.getSecondTimestampTwo());
- user.setLastTime(OrderUtil.getSecondTimestampTwo());
- user.setNickname(nickname);
- user.setAvatar(wxMpUser.getHeadImgUrl());
- user.setNowMoney(BigDecimal.ZERO);
- user.setBrokeragePrice(BigDecimal.ZERO);
- user.setIntegral(BigDecimal.ZERO);
-
- userService.save(user);
-
-
- //保存微信用户
- YxWechatUser yxWechatUser = new YxWechatUser();
- yxWechatUser.setAddTime(OrderUtil.getSecondTimestampTwo());
- yxWechatUser.setNickname(nickname);
- yxWechatUser.setOpenid(wxMpUser.getOpenId());
- int sub = 0;
- if (ObjectUtil.isNotNull(wxMpUser.getSubscribe()) && wxMpUser.getSubscribe()) sub = 1;
- yxWechatUser.setSubscribe(sub);
- yxWechatUser.setSex(wxMpUser.getSex());
- yxWechatUser.setLanguage(wxMpUser.getLanguage());
- yxWechatUser.setCity(wxMpUser.getCity());
- yxWechatUser.setProvince(wxMpUser.getProvince());
- yxWechatUser.setCountry(wxMpUser.getCountry());
- yxWechatUser.setHeadimgurl(wxMpUser.getHeadImgUrl());
- if (ObjectUtil.isNotNull(wxMpUser.getSubscribeTime())) {
- yxWechatUser.setSubscribeTime(wxMpUser.getSubscribeTime().intValue());
- }
- if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
- yxWechatUser.setUnionid(wxMpUser.getUnionId());
- }
- if (StrUtil.isNotEmpty(wxMpUser.getRemark())) {
- yxWechatUser.setUnionid(wxMpUser.getRemark());
- }
- if (ObjectUtil.isNotEmpty(wxMpUser.getGroupId())) {
- yxWechatUser.setGroupid(wxMpUser.getGroupId());
- }
- yxWechatUser.setUid(user.getUid());
-
- wechatUserService.save(yxWechatUser);
-
- }else{
- username = yxUser.getUsername();
- if(StrUtil.isNotBlank(wxMpUser.getOpenId()) || StrUtil.isNotBlank(wxMpUser.getUnionId())){
- YxWechatUser wechatUser = new YxWechatUser();
- wechatUser.setUid(yxUser.getUid());
- wechatUser.setUnionid(wxMpUser.getUnionId());
- wechatUser.setOpenid(wxMpUser.getOpenId());
-
- wechatUserService.updateById(wechatUser);
- }
- }
-
-
- UsernamePasswordAuthenticationToken authenticationToken =
- new UsernamePasswordAuthenticationToken(username,
- ShopConstants.YSHOP_DEFAULT_PWD);
-
- Authentication authentication = authenticationManagerBuilder.getObject().authenticate(authenticationToken);
- SecurityContextHolder.getContext().setAuthentication(authentication);
- // 生成令牌
- String token = tokenProvider.createToken(authentication);
- final JwtUser jwtUserT = (JwtUser) authentication.getPrincipal();
- // 保存在线信息
- onlineUserService.save(jwtUserT, token, request);
-
- Date expiresTime = tokenProvider.getExpirationDateFromToken(token);
- String expiresTimeStr = DateUtil.formatDateTime(expiresTime);
-
- Map map = new LinkedHashMap<>();
- map.put("token", token);
- map.put("expires_time", expiresTimeStr);
-
- if (singleLogin) {
- //踢掉之前已经登录的token
- onlineUserService.checkLoginOnUser(jwtUserT.getUsername(), token);
- }
-
- //设置推广关系
- if (StrUtil.isNotEmpty(spread) && !spread.equals("NaN")) {
- userService.setSpread(Integer.valueOf(spread),
- jwtUserT.getId().intValue());
- }
-
- // 返回 token
- return ApiResult.ok(map);
- } catch (WxErrorException e) {
- e.printStackTrace();
- log.error(e.getMessage());
- return ApiResult.fail("授权失败");
- }
-
+ return ApiResult.ok(userService.authLogin(code,spread,request));
}
@@ -304,135 +179,8 @@ public class AuthController {
* 2、目前登陆授权打通方式适用于新项目(也就是你yx_user、yx_wechat_user都是空的)
* 3、如果你以前已经有数据请自行处理
*/
- String code = loginParam.getCode();
- String encryptedData = loginParam.getEncryptedData();
- String iv = loginParam.getIv();
- String spread = loginParam.getSpread();
- try {
- //读取redis配置
- String appId = RedisUtil.get(RedisKeyEnum.WXAPP_APPID.getValue());
- String secret = RedisUtil.get(RedisKeyEnum.WXAPP_SECRET.getValue());
- if (StrUtil.isBlank(appId) || StrUtil.isBlank(secret)) {
- throw new ErrorRequestException("请先配置小程序");
- }
- WxMaDefaultConfigImpl wxMaConfig = new WxMaDefaultConfigImpl();
- wxMaConfig.setAppid(appId);
- wxMaConfig.setSecret(secret);
+ return ApiResult.ok(userService.wxappAuth(loginParam,request)) ;
- wxMaService.setWxMaConfig(wxMaConfig);
- WxMaJscode2SessionResult session = wxMaService.getUserService().getSessionInfo(code);
- String openid = session.getOpenid();
- //如果开启了UnionId
- if (StrUtil.isNotBlank(session.getUnionid())) {
- openid = session.getUnionid();
- }
-
- YxUser yxUser = userService.findByName(openid);
- String username = "";
- if(ObjectUtil.isNull(yxUser)){
-
- WxMaUserInfo wxMpUser = wxMaService.getUserService()
- .getUserInfo(session.getSessionKey(), encryptedData, iv);
- //过滤掉表情
- String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickName());
- //用户保存
- YxUser user = new YxUser();
- user.setAccount(nickname);
-
- //如果开启了UnionId
- if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
- username = wxMpUser.getUnionId();
- user.setUsername(wxMpUser.getUnionId());
- }else{
- username = wxMpUser.getOpenId();
- user.setUsername(wxMpUser.getOpenId());
- }
- user.setPassword(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
- user.setPwd(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
- user.setPhone("");
- user.setUserType(AppFromEnum.ROUNTINE.getValue());
- user.setAddTime(OrderUtil.getSecondTimestampTwo());
- user.setLastTime(OrderUtil.getSecondTimestampTwo());
- user.setNickname(nickname);
- user.setAvatar(wxMpUser.getAvatarUrl());
- user.setNowMoney(BigDecimal.ZERO);
- user.setBrokeragePrice(BigDecimal.ZERO);
- user.setIntegral(BigDecimal.ZERO);
-
- userService.save(user);
-
-
- //保存微信用户
- YxWechatUser yxWechatUser = new YxWechatUser();
- // System.out.println("wxMpUser:"+wxMpUser);
- yxWechatUser.setAddTime(OrderUtil.getSecondTimestampTwo());
- yxWechatUser.setNickname(nickname);
- yxWechatUser.setRoutineOpenid(wxMpUser.getOpenId());
- int sub = 0;
- yxWechatUser.setSubscribe(sub);
- yxWechatUser.setSex(Integer.valueOf(wxMpUser.getGender()));
- yxWechatUser.setLanguage(wxMpUser.getLanguage());
- yxWechatUser.setCity(wxMpUser.getCity());
- yxWechatUser.setProvince(wxMpUser.getProvince());
- yxWechatUser.setCountry(wxMpUser.getCountry());
- yxWechatUser.setHeadimgurl(wxMpUser.getAvatarUrl());
- if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
- yxWechatUser.setUnionid(wxMpUser.getUnionId());
- }
- yxWechatUser.setUid(user.getUid());
-
- wechatUserService.save(yxWechatUser);
-
- }else{
- username = yxUser.getUsername();
- if(StrUtil.isNotBlank(session.getOpenid()) || StrUtil.isNotBlank(session.getUnionid())){
- YxWechatUser wechatUser = new YxWechatUser();
- wechatUser.setUid(yxUser.getUid());
- wechatUser.setUnionid(session.getUnionid());
- wechatUser.setRoutineOpenid(session.getOpenid());
-
- wechatUserService.updateById(wechatUser);
- }
- }
-
-
- UsernamePasswordAuthenticationToken authenticationToken =
- new UsernamePasswordAuthenticationToken(username,
- ShopConstants.YSHOP_DEFAULT_PWD);
-
- Authentication authentication = authenticationManagerBuilder.getObject().authenticate(authenticationToken);
- SecurityContextHolder.getContext().setAuthentication(authentication);
- // 生成令牌
- String token = tokenProvider.createToken(authentication);
- final JwtUser jwtUserT = (JwtUser) authentication.getPrincipal();
- // 保存在线信息
- onlineUserService.save(jwtUserT, token, request);
-
- Date expiresTime = tokenProvider.getExpirationDateFromToken(token);
- String expiresTimeStr = DateUtil.formatDateTime(expiresTime);
-
-
- Map map = new LinkedHashMap<>();
- map.put("token", token);
- map.put("expires_time", expiresTimeStr);
-
- if (singleLogin) {
- //踢掉之前已经登录的token
- onlineUserService.checkLoginOnUser(jwtUserT.getUsername(), token);
- }
-
- //设置推广关系
- if (StrUtil.isNotEmpty(spread)) {
- userService.setSpread(Integer.valueOf(spread),
- jwtUserT.getId().intValue());
- }
-
- // 返回 token
- return ApiResult.ok(map);
- } catch (WxErrorException e) {
- log.error(e.getMessage(), e);
- return ApiResult.fail(e.toString());
- }
}
diff --git a/yshop-api/src/main/java/co/yixiang/modules/user/service/YxUserService.java b/yshop-api/src/main/java/co/yixiang/modules/user/service/YxUserService.java
index 48dbbe00..c69d2e0b 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/user/service/YxUserService.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/user/service/YxUserService.java
@@ -11,12 +11,14 @@ package co.yixiang.modules.user.service;
import co.yixiang.common.service.BaseService;
import co.yixiang.common.web.vo.Paging;
import co.yixiang.modules.order.web.vo.YxStoreOrderQueryVo;
+import co.yixiang.modules.security.rest.param.LoginParam;
import co.yixiang.modules.user.entity.YxUser;
import co.yixiang.modules.user.web.dto.PromUserDTO;
import co.yixiang.modules.user.web.param.PromParam;
import co.yixiang.modules.user.web.param.YxUserQueryParam;
import co.yixiang.modules.user.web.vo.YxUserQueryVo;
+import javax.servlet.http.HttpServletRequest;
import java.io.Serializable;
import java.util.List;
@@ -71,4 +73,7 @@ public interface YxUserService extends BaseService {
*/
Paging getYxUserPageList(YxUserQueryParam yxUserQueryParam) throws Exception;
+ Object authLogin(String code, String spread, HttpServletRequest request);
+
+ Object wxappAuth(LoginParam loginParam, HttpServletRequest request);
}
diff --git a/yshop-api/src/main/java/co/yixiang/modules/user/service/impl/YxUserServiceImpl.java b/yshop-api/src/main/java/co/yixiang/modules/user/service/impl/YxUserServiceImpl.java
index 27010c01..91fcd08e 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/user/service/impl/YxUserServiceImpl.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/user/service/impl/YxUserServiceImpl.java
@@ -8,42 +8,71 @@
*/
package co.yixiang.modules.user.service.impl;
+import cn.binarywang.wx.miniapp.api.WxMaService;
+import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
+import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
+import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl;
+import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
+import co.yixiang.common.api.ApiResult;
import co.yixiang.common.service.impl.BaseServiceImpl;
import co.yixiang.common.web.vo.Paging;
+import co.yixiang.constant.ShopConstants;
+import co.yixiang.enums.AppFromEnum;
+import co.yixiang.enums.RedisKeyEnum;
+import co.yixiang.exception.BadRequestException;
import co.yixiang.exception.ErrorRequestException;
import co.yixiang.modules.order.service.YxStoreOrderService;
import co.yixiang.modules.order.web.vo.YxStoreOrderQueryVo;
+import co.yixiang.modules.security.rest.param.LoginParam;
+import co.yixiang.modules.security.security.TokenProvider;
+import co.yixiang.modules.security.security.vo.JwtUser;
+import co.yixiang.modules.security.service.OnlineUserService;
import co.yixiang.modules.shop.service.YxStoreCouponUserService;
import co.yixiang.modules.shop.service.YxSystemConfigService;
import co.yixiang.modules.shop.service.YxSystemStoreStaffService;
import co.yixiang.modules.user.entity.YxUser;
import co.yixiang.modules.user.entity.YxUserBill;
import co.yixiang.modules.user.entity.YxUserLevel;
+import co.yixiang.modules.user.entity.YxWechatUser;
import co.yixiang.modules.user.mapper.YxUserMapper;
import co.yixiang.modules.user.service.YxUserBillService;
import co.yixiang.modules.user.service.YxUserLevelService;
import co.yixiang.modules.user.service.YxUserService;
+import co.yixiang.modules.user.service.YxWechatUserService;
import co.yixiang.modules.user.web.dto.PromUserDTO;
import co.yixiang.modules.user.web.param.PromParam;
import co.yixiang.modules.user.web.param.YxUserQueryParam;
import co.yixiang.modules.user.web.vo.YxUserQueryVo;
+import co.yixiang.mp.config.WxMpConfiguration;
import co.yixiang.utils.OrderUtil;
+import co.yixiang.utils.RedisUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.vdurmont.emoji.EmojiParser;
import lombok.extern.slf4j.Slf4j;
+import me.chanjar.weixin.common.error.WxErrorException;
+import me.chanjar.weixin.mp.api.WxMpService;
+import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken;
+import me.chanjar.weixin.mp.bean.result.WxMpUser;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
+import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
+import org.springframework.security.core.Authentication;
+import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import javax.servlet.http.HttpServletRequest;
import java.io.Serializable;
import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
import java.util.stream.Collectors;
@@ -75,7 +104,22 @@ public class YxUserServiceImpl extends BaseServiceImpl imp
private YxStoreCouponUserService storeCouponUserService;
@Autowired
private YxSystemStoreStaffService systemStoreStaffService;
-
+ @Autowired
+ private PasswordEncoder passwordEncoder;
+ @Autowired
+ private OnlineUserService onlineUserService;
+ @Autowired
+ private TokenProvider tokenProvider;
+ @Autowired
+ private AuthenticationManagerBuilder authenticationManagerBuilder;
+ @Autowired
+ private WxMaService wxMaService;
+ @Autowired
+ private YxWechatUserService wechatUserService;
+ @Value("${single.login:true}")
+ private Boolean singleLogin;
+ @Value("${yshop.notify.sms.enable}")
+ private Boolean enableSms;
/**
@@ -465,4 +509,265 @@ public class YxUserServiceImpl extends BaseServiceImpl imp
wrapper.eq("username",name);
return getOne(wrapper);
}
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Object authLogin(String code, String spread, HttpServletRequest request){
+ try {
+ WxMpService wxService = WxMpConfiguration.getWxMpService();
+ WxMpOAuth2AccessToken wxMpOAuth2AccessToken = wxService.oauth2getAccessToken(code);
+ WxMpUser wxMpUser = wxService.oauth2getUserInfo(wxMpOAuth2AccessToken, null);
+ String openid = wxMpUser.getOpenId();
+
+ //如果开启了UnionId
+ if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
+ openid = wxMpUser.getUnionId();
+ }
+ YxUser yxUser = this.findByName(openid);
+
+ String username = "";
+ if(ObjectUtil.isNull(yxUser)){
+ //过滤掉表情
+ String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickname());
+ log.info("昵称:{}", nickname);
+ //用户保存
+ YxUser user = new YxUser();
+ user.setAccount(nickname);
+ //如果开启了UnionId
+ if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
+ username = wxMpUser.getUnionId();
+ user.setUsername(wxMpUser.getUnionId());
+ }else{
+ username = wxMpUser.getOpenId();
+ user.setUsername(wxMpUser.getOpenId());
+ }
+ user.setPassword(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
+ user.setPwd(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
+ user.setPhone("");
+ user.setUserType(AppFromEnum.WECHAT.getValue());
+ user.setLoginType(AppFromEnum.WECHAT.getValue());
+ user.setAddTime(OrderUtil.getSecondTimestampTwo());
+ user.setLastTime(OrderUtil.getSecondTimestampTwo());
+ user.setNickname(nickname);
+ user.setAvatar(wxMpUser.getHeadImgUrl());
+ user.setNowMoney(BigDecimal.ZERO);
+ user.setBrokeragePrice(BigDecimal.ZERO);
+ user.setIntegral(BigDecimal.ZERO);
+
+ this.save(user);
+
+
+ //保存微信用户
+ YxWechatUser yxWechatUser = new YxWechatUser();
+ yxWechatUser.setAddTime(OrderUtil.getSecondTimestampTwo());
+ yxWechatUser.setNickname(nickname);
+ yxWechatUser.setOpenid(wxMpUser.getOpenId());
+ int sub = 0;
+ if (ObjectUtil.isNotNull(wxMpUser.getSubscribe()) && wxMpUser.getSubscribe()) sub = 1;
+ yxWechatUser.setSubscribe(sub);
+ yxWechatUser.setSex(wxMpUser.getSex());
+ yxWechatUser.setLanguage(wxMpUser.getLanguage());
+ yxWechatUser.setCity(wxMpUser.getCity());
+ yxWechatUser.setProvince(wxMpUser.getProvince());
+ yxWechatUser.setCountry(wxMpUser.getCountry());
+ yxWechatUser.setHeadimgurl(wxMpUser.getHeadImgUrl());
+ if (ObjectUtil.isNotNull(wxMpUser.getSubscribeTime())) {
+ yxWechatUser.setSubscribeTime(wxMpUser.getSubscribeTime().intValue());
+ }
+ if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
+ yxWechatUser.setUnionid(wxMpUser.getUnionId());
+ }
+ if (StrUtil.isNotEmpty(wxMpUser.getRemark())) {
+ yxWechatUser.setUnionid(wxMpUser.getRemark());
+ }
+ if (ObjectUtil.isNotEmpty(wxMpUser.getGroupId())) {
+ yxWechatUser.setGroupid(wxMpUser.getGroupId());
+ }
+ yxWechatUser.setUid(user.getUid());
+
+ wechatUserService.save(yxWechatUser);
+
+ }else{
+ username = yxUser.getUsername();
+ if(StrUtil.isNotBlank(wxMpUser.getOpenId()) || StrUtil.isNotBlank(wxMpUser.getUnionId())){
+ YxWechatUser wechatUser = new YxWechatUser();
+ wechatUser.setUid(yxUser.getUid());
+ wechatUser.setUnionid(wxMpUser.getUnionId());
+ wechatUser.setOpenid(wxMpUser.getOpenId());
+
+ wechatUserService.updateById(wechatUser);
+ }
+ }
+
+
+ UsernamePasswordAuthenticationToken authenticationToken =
+ new UsernamePasswordAuthenticationToken(username,
+ ShopConstants.YSHOP_DEFAULT_PWD);
+
+ Authentication authentication = authenticationManagerBuilder.getObject().authenticate(authenticationToken);
+ SecurityContextHolder.getContext().setAuthentication(authentication);
+ // 生成令牌
+ String token = tokenProvider.createToken(authentication);
+ final JwtUser jwtUserT = (JwtUser) authentication.getPrincipal();
+ // 保存在线信息
+ onlineUserService.save(jwtUserT, token, request);
+
+ Date expiresTime = tokenProvider.getExpirationDateFromToken(token);
+ String expiresTimeStr = DateUtil.formatDateTime(expiresTime);
+
+ Map map = new LinkedHashMap<>();
+ map.put("token", token);
+ map.put("expires_time", expiresTimeStr);
+
+ if (singleLogin) {
+ //踢掉之前已经登录的token
+ onlineUserService.checkLoginOnUser(jwtUserT.getUsername(), token);
+ }
+
+ //设置推广关系
+ if (StrUtil.isNotEmpty(spread) && !spread.equals("NaN")) {
+ this.setSpread(Integer.valueOf(spread),
+ jwtUserT.getId().intValue());
+ }
+
+ // 返回 token
+ return map;
+ } catch (WxErrorException e) {
+ e.printStackTrace();
+ log.error(e.getMessage());
+ throw new BadRequestException(e.toString());
+ }
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Object wxappAuth(LoginParam loginParam, HttpServletRequest request){
+ String code = loginParam.getCode();
+ String encryptedData = loginParam.getEncryptedData();
+ String iv = loginParam.getIv();
+ String spread = loginParam.getSpread();
+ try {
+ //读取redis配置
+ String appId = RedisUtil.get(RedisKeyEnum.WXAPP_APPID.getValue());
+ String secret = RedisUtil.get(RedisKeyEnum.WXAPP_SECRET.getValue());
+ if (StrUtil.isBlank(appId) || StrUtil.isBlank(secret)) {
+ throw new ErrorRequestException("请先配置小程序");
+ }
+ WxMaDefaultConfigImpl wxMaConfig = new WxMaDefaultConfigImpl();
+ wxMaConfig.setAppid(appId);
+ wxMaConfig.setSecret(secret);
+
+ wxMaService.setWxMaConfig(wxMaConfig);
+ WxMaJscode2SessionResult session = wxMaService.getUserService().getSessionInfo(code);
+ String openid = session.getOpenid();
+ //如果开启了UnionId
+ if (StrUtil.isNotBlank(session.getUnionid())) {
+ openid = session.getUnionid();
+ }
+
+ YxUser yxUser = this.findByName(openid);
+ String username = "";
+ if(ObjectUtil.isNull(yxUser)){
+
+ WxMaUserInfo wxMpUser = wxMaService.getUserService()
+ .getUserInfo(session.getSessionKey(), encryptedData, iv);
+ //过滤掉表情
+ String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickName());
+ //用户保存
+ YxUser user = new YxUser();
+ user.setAccount(nickname);
+
+ //如果开启了UnionId
+ if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
+ username = wxMpUser.getUnionId();
+ user.setUsername(wxMpUser.getUnionId());
+ }else{
+ username = wxMpUser.getOpenId();
+ user.setUsername(wxMpUser.getOpenId());
+ }
+ user.setPassword(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
+ user.setPwd(passwordEncoder.encode(ShopConstants.YSHOP_DEFAULT_PWD));
+ user.setPhone("");
+ user.setUserType(AppFromEnum.ROUNTINE.getValue());
+ user.setAddTime(OrderUtil.getSecondTimestampTwo());
+ user.setLastTime(OrderUtil.getSecondTimestampTwo());
+ user.setNickname(nickname);
+ user.setAvatar(wxMpUser.getAvatarUrl());
+ user.setNowMoney(BigDecimal.ZERO);
+ user.setBrokeragePrice(BigDecimal.ZERO);
+ user.setIntegral(BigDecimal.ZERO);
+
+ this.save(user);
+
+
+ //保存微信用户
+ YxWechatUser yxWechatUser = new YxWechatUser();
+ // System.out.println("wxMpUser:"+wxMpUser);
+ yxWechatUser.setAddTime(OrderUtil.getSecondTimestampTwo());
+ yxWechatUser.setNickname(nickname);
+ yxWechatUser.setRoutineOpenid(wxMpUser.getOpenId());
+ int sub = 0;
+ yxWechatUser.setSubscribe(sub);
+ yxWechatUser.setSex(Integer.valueOf(wxMpUser.getGender()));
+ yxWechatUser.setLanguage(wxMpUser.getLanguage());
+ yxWechatUser.setCity(wxMpUser.getCity());
+ yxWechatUser.setProvince(wxMpUser.getProvince());
+ yxWechatUser.setCountry(wxMpUser.getCountry());
+ yxWechatUser.setHeadimgurl(wxMpUser.getAvatarUrl());
+ if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
+ yxWechatUser.setUnionid(wxMpUser.getUnionId());
+ }
+ yxWechatUser.setUid(user.getUid());
+
+ wechatUserService.save(yxWechatUser);
+
+ }else{
+ username = yxUser.getUsername();
+ if(StrUtil.isNotBlank(session.getOpenid()) || StrUtil.isNotBlank(session.getUnionid())){
+ YxWechatUser wechatUser = new YxWechatUser();
+ wechatUser.setUid(yxUser.getUid());
+ wechatUser.setUnionid(session.getUnionid());
+ wechatUser.setRoutineOpenid(session.getOpenid());
+
+ wechatUserService.updateById(wechatUser);
+ }
+ }
+
+
+ UsernamePasswordAuthenticationToken authenticationToken =
+ new UsernamePasswordAuthenticationToken(username,
+ ShopConstants.YSHOP_DEFAULT_PWD);
+
+ Authentication authentication = authenticationManagerBuilder.getObject().authenticate(authenticationToken);
+ SecurityContextHolder.getContext().setAuthentication(authentication);
+ // 生成令牌
+ String token = tokenProvider.createToken(authentication);
+ final JwtUser jwtUserT = (JwtUser) authentication.getPrincipal();
+ // 保存在线信息
+ onlineUserService.save(jwtUserT, token, request);
+
+ Date expiresTime = tokenProvider.getExpirationDateFromToken(token);
+ String expiresTimeStr = DateUtil.formatDateTime(expiresTime);
+
+
+ Map map = new LinkedHashMap<>();
+ map.put("token", token);
+ map.put("expires_time", expiresTimeStr);
+
+ if (singleLogin) {
+ //踢掉之前已经登录的token
+ onlineUserService.checkLoginOnUser(jwtUserT.getUsername(), token);
+ }
+
+ //设置推广关系
+ if (StrUtil.isNotEmpty(spread)) {
+ this.setSpread(Integer.valueOf(spread),
+ jwtUserT.getId().intValue());
+ }
+ // 返回 token
+ return map;
+ } catch (WxErrorException e) {
+ log.error(e.getMessage(), e);
+ throw new BadRequestException(e.toString());
+ }
+ }
}
From e2fd708ee341161a0cc417555d11fa38e00f7d7c Mon Sep 17 00:00:00 2001
From: xuwenbo <717567226@qq.com>
Date: Thu, 14 May 2020 15:29:47 +0800
Subject: [PATCH 3/6] =?UTF-8?q?=E8=A7=84=E8=8C=83=E5=8C=85=E5=90=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/StoreBargainController.java | 2 +-
.../StoreCombinationController.java | 2 +-
.../service/impl/VisitsServiceImpl.java | 3 +-
.../web/controller/StoreOrderController.java | 2 +-
.../modules/security/rest/AuthController.java | 19 +--------
.../shop/web/controller/CouponController.java | 2 +-
.../web/controller/StoreCartController.java | 2 +-
.../controller/StoreProductController.java | 4 +-
.../web/controller/UserAddressController.java | 2 +-
.../web/controller/UserBillController.java | 2 +-
.../user/web/controller/UserController.java | 2 +-
.../web/controller/UserLevelController.java | 2 +-
.../dozer/config/DozerMapperConfig.java | 2 +-
.../{ => gen}/domain/ColumnConfig.java | 4 +-
.../yixiang/{ => gen}/domain/GenConfig.java | 2 +-
.../{ => gen}/domain/vo/ColumnInfo.java | 2 +-
.../{ => gen}/domain/vo/TableInfo.java | 2 +-
.../{ => gen}/rest/GenConfigController.java | 6 +--
.../{ => gen}/rest/GeneratorController.java | 8 ++--
.../{ => gen}/service/GenConfigService.java | 4 +-
.../{ => gen}/service/GeneratorService.java | 6 +--
.../service/impl/GenConfigServiceImpl.java | 8 ++--
.../service/impl/GeneratorServiceImpl.java | 14 +++----
.../service/mapper/ColumnInfoMapper.java | 4 +-
.../service/mapper/GenConfigMapper.java | 4 +-
.../co/yixiang/{ => gen}/utils/ColUtil.java | 2 +-
.../co/yixiang/{ => gen}/utils/GenUtil.java | 8 ++--
.../co/yixiang/{ => logging}/aop/log/Log.java | 2 +-
.../{ => logging}/aspect/LogAspect.java | 8 ++--
.../co/yixiang/{ => logging}/domain/Log.java | 2 +-
.../{ => logging}/rest/LogController.java | 8 ++--
.../{ => logging}/service/LogService.java | 6 +--
.../service/dto/LogErrorDTO.java | 2 +-
.../service/dto/LogQueryCriteria.java | 2 +-
.../service/dto/LogSmallDTO.java | 2 +-
.../service/impl/LogServiceImpl.java | 41 +++++++++----------
.../service/mapper/LogMapper.java | 4 +-
.../activity/rest/StoreBargainController.java | 2 +-
.../rest/StoreCombinationController.java | 4 +-
.../activity/rest/StoreCouponController.java | 4 +-
.../rest/StoreCouponIssueController.java | 4 +-
.../rest/StoreCouponIssueUserController.java | 4 +-
.../rest/StoreCouponUserController.java | 4 +-
.../activity/rest/StorePinkController.java | 4 +-
.../activity/rest/StoreSeckillController.java | 4 +-
.../activity/rest/UserExtractController.java | 2 +-
.../modules/shop/rest/ExpressController.java | 4 +-
.../modules/shop/rest/MaterialController.java | 2 +-
.../shop/rest/MaterialGroupController.java | 2 +-
.../modules/shop/rest/MemberController.java | 4 +-
.../shop/rest/StoreCategoryController.java | 2 +-
.../shop/rest/StoreOrderController.java | 2 +-
.../shop/rest/StoreProductController.java | 3 +-
.../rest/StoreProductReplyController.java | 4 +-
.../shop/rest/SystemConfigController.java | 4 +-
.../shop/rest/SystemGroupDataController.java | 3 +-
.../shop/rest/SystemStoreController.java | 2 +-
.../shop/rest/SystemStoreStaffController.java | 2 +-
.../shop/rest/SystemUserLevelController.java | 7 +---
.../shop/rest/SystemUserTaskController.java | 5 +--
.../modules/shop/rest/UserBillController.java | 2 +-
.../shop/rest/UserRechargeController.java | 2 +-
.../shop/rest/YxWechatUserController.java | 2 +-
.../quartz/rest/QuartzJobController.java | 4 +-
.../modules/security/rest/AuthController.java | 2 +-
.../security/rest/OnlineController.java | 4 +-
.../modules/system/rest/DeptController.java | 3 +-
.../modules/system/rest/DictController.java | 3 +-
.../system/rest/DictDetailController.java | 3 +-
.../modules/system/rest/JobController.java | 3 +-
.../modules/system/rest/MenuController.java | 3 +-
.../modules/system/rest/RoleController.java | 3 +-
.../modules/system/rest/UserController.java | 2 +-
.../yixiang/tools/rest/AliPayController.java | 2 +-
.../yixiang/tools/rest/EmailController.java | 2 +-
.../tools/rest/LocalStorageController.java | 2 +-
.../yixiang/tools/rest/PictureController.java | 2 +-
.../yixiang/tools/rest/QiniuController.java | 2 +-
78 files changed, 129 insertions(+), 192 deletions(-)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/domain/ColumnConfig.java (96%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/domain/GenConfig.java (97%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/domain/vo/ColumnInfo.java (97%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/domain/vo/TableInfo.java (96%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/rest/GenConfigController.java (92%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/rest/GeneratorController.java (96%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/service/GenConfigService.java (91%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/service/GeneratorService.java (94%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/service/impl/GenConfigServiceImpl.java (92%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/service/impl/GeneratorServiceImpl.java (96%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/service/mapper/ColumnInfoMapper.java (87%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/service/mapper/GenConfigMapper.java (88%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/utils/ColUtil.java (97%)
rename yshop-generator/src/main/java/co/yixiang/{ => gen}/utils/GenUtil.java (99%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/aop/log/Log.java (95%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/aspect/LogAspect.java (94%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/domain/Log.java (97%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/rest/LogController.java (96%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/service/LogService.java (94%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/service/dto/LogErrorDTO.java (95%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/service/dto/LogQueryCriteria.java (95%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/service/dto/LogSmallDTO.java (94%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/service/impl/LogServiceImpl.java (81%)
rename yshop-logging/src/main/java/co/yixiang/{ => logging}/service/mapper/LogMapper.java (95%)
diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreBargainController.java b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreBargainController.java
index be086eab..43c85e5a 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreBargainController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreBargainController.java
@@ -16,7 +16,7 @@ import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
import cn.hutool.http.HttpUtil;
import co.yixiang.annotation.AnonymousAccess;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.enums.AppFromEnum;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java
index afdb09d3..a476dbe5 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java
@@ -15,7 +15,7 @@ import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
import cn.hutool.http.HttpUtil;
import co.yixiang.annotation.AnonymousAccess;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.enums.AppFromEnum;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/monitor/service/impl/VisitsServiceImpl.java b/yshop-api/src/main/java/co/yixiang/modules/monitor/service/impl/VisitsServiceImpl.java
index 909f6c4e..6202889d 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/monitor/service/impl/VisitsServiceImpl.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/monitor/service/impl/VisitsServiceImpl.java
@@ -11,11 +11,10 @@ package co.yixiang.modules.monitor.service.impl;
import co.yixiang.modules.monitor.domain.Visits;
import co.yixiang.modules.monitor.repository.VisitsRepository;
import co.yixiang.modules.monitor.service.VisitsService;
-import co.yixiang.service.mapper.LogMapper;
+import co.yixiang.logging.service.mapper.LogMapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import co.yixiang.utils.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/order/web/controller/StoreOrderController.java b/yshop-api/src/main/java/co/yixiang/modules/order/web/controller/StoreOrderController.java
index 7a8b7a13..b7887b3f 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/order/web/controller/StoreOrderController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/order/web/controller/StoreOrderController.java
@@ -13,7 +13,7 @@ import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
import co.yixiang.annotation.AnonymousAccess;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.enums.OrderInfoEnum;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java b/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java
index 882b8f07..aa71d94a 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/security/rest/AuthController.java
@@ -8,22 +8,15 @@
*/
package co.yixiang.modules.security.rest;
-import cn.binarywang.wx.miniapp.api.WxMaService;
-import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
-import cn.binarywang.wx.miniapp.bean.WxMaUserInfo;
-import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import co.yixiang.annotation.AnonymousAccess;
-import co.yixiang.aop.log.Log;
-import co.yixiang.common.api.ApiCode;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.constant.ShopConstants;
import co.yixiang.enums.AppFromEnum;
-import co.yixiang.enums.RedisKeyEnum;
-import co.yixiang.exception.ErrorRequestException;
import co.yixiang.modules.notify.NotifyService;
import co.yixiang.modules.notify.NotifyType;
import co.yixiang.modules.notify.SmsResult;
@@ -37,28 +30,19 @@ import co.yixiang.modules.security.security.vo.JwtUser;
import co.yixiang.modules.security.service.OnlineUserService;
import co.yixiang.modules.user.entity.YxSystemAttachment;
import co.yixiang.modules.user.entity.YxUser;
-import co.yixiang.modules.user.entity.YxWechatUser;
import co.yixiang.modules.user.service.YxSystemAttachmentService;
import co.yixiang.modules.user.service.YxUserService;
import co.yixiang.modules.user.service.YxWechatUserService;
-import co.yixiang.modules.user.web.vo.YxUserQueryVo;
-import co.yixiang.mp.config.WxMpConfiguration;
import co.yixiang.utils.OrderUtil;
-import co.yixiang.utils.RedisUtil;
import co.yixiang.utils.RedisUtils;
import co.yixiang.utils.SecurityUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.CommonResponse;
-import com.vdurmont.emoji.EmojiParser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import me.chanjar.weixin.common.error.WxErrorException;
-import me.chanjar.weixin.mp.api.WxMpService;
-import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken;
-import me.chanjar.weixin.mp.bean.result.WxMpUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
@@ -74,7 +58,6 @@ import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
-import java.util.LinkedHashMap;
import java.util.Map;
/**
diff --git a/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/CouponController.java b/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/CouponController.java
index f6bb4cf7..e78db0a2 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/CouponController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/CouponController.java
@@ -9,7 +9,7 @@
package co.yixiang.modules.shop.web.controller;
import cn.hutool.core.util.ObjectUtil;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.enums.CouponEnum;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreCartController.java b/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreCartController.java
index 7e1e82fd..e1ecc323 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreCartController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreCartController.java
@@ -9,7 +9,7 @@
package co.yixiang.modules.shop.web.controller;
import cn.hutool.core.util.ObjectUtil;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.modules.shop.service.YxStoreCartService;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreProductController.java b/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreProductController.java
index fb63cff0..d282e6ae 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreProductController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/shop/web/controller/StoreProductController.java
@@ -12,9 +12,8 @@ import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
-import cn.hutool.http.HttpUtil;
import co.yixiang.annotation.AnonymousAccess;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.enums.AppFromEnum;
@@ -29,7 +28,6 @@ import co.yixiang.modules.user.entity.YxSystemAttachment;
import co.yixiang.modules.user.service.YxSystemAttachmentService;
import co.yixiang.modules.user.service.YxUserService;
import co.yixiang.modules.user.web.vo.YxUserQueryVo;
-import co.yixiang.utils.OrderUtil;
import co.yixiang.utils.SecurityUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserAddressController.java b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserAddressController.java
index 145c7cf9..5595f226 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserAddressController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserAddressController.java
@@ -9,7 +9,7 @@
package co.yixiang.modules.user.web.controller;
import cn.hutool.core.util.StrUtil;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.common.web.param.IdParam;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserBillController.java b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserBillController.java
index 4ce40fbf..65376c68 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserBillController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserBillController.java
@@ -14,7 +14,7 @@ import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.enums.AppFromEnum;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserController.java b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserController.java
index 74e80855..229ecb65 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserController.java
@@ -9,7 +9,7 @@
package co.yixiang.modules.user.web.controller;
import co.yixiang.annotation.AnonymousAccess;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.constant.ShopConstants;
diff --git a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserLevelController.java b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserLevelController.java
index 8bcca890..3d1377db 100644
--- a/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserLevelController.java
+++ b/yshop-api/src/main/java/co/yixiang/modules/user/web/controller/UserLevelController.java
@@ -8,7 +8,7 @@
*/
package co.yixiang.modules.user.web.controller;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import co.yixiang.common.api.ApiResult;
import co.yixiang.common.web.controller.BaseController;
import co.yixiang.modules.user.service.YxSystemUserLevelService;
diff --git a/yshop-common/src/main/java/co/yixiang/dozer/config/DozerMapperConfig.java b/yshop-common/src/main/java/co/yixiang/dozer/config/DozerMapperConfig.java
index acbb3f4b..33a9ada4 100644
--- a/yshop-common/src/main/java/co/yixiang/dozer/config/DozerMapperConfig.java
+++ b/yshop-common/src/main/java/co/yixiang/dozer/config/DozerMapperConfig.java
@@ -26,7 +26,7 @@ import org.springframework.core.io.Resource;
@Configuration
public class DozerMapperConfig {
@Bean
- public DozerBeanMapperFactoryBean dozerBeanMapperFactoryBean(@Value("classpath*:dozer/*.xml" ) Resource[] resources) throws Exception {
+ public DozerBeanMapperFactoryBean dozerBeanMapperFactoryBean(@Value("classpath*:dozer/dozerBeanMapping.xml" ) Resource[] resources) throws Exception {
final DozerBeanMapperFactoryBean dozerBeanMapperFactoryBean = new DozerBeanMapperFactoryBean();
dozerBeanMapperFactoryBean.setMappingFiles(resources);
return dozerBeanMapperFactoryBean;
diff --git a/yshop-generator/src/main/java/co/yixiang/domain/ColumnConfig.java b/yshop-generator/src/main/java/co/yixiang/gen/domain/ColumnConfig.java
similarity index 96%
rename from yshop-generator/src/main/java/co/yixiang/domain/ColumnConfig.java
rename to yshop-generator/src/main/java/co/yixiang/gen/domain/ColumnConfig.java
index 8642c698..3eea8417 100644
--- a/yshop-generator/src/main/java/co/yixiang/domain/ColumnConfig.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/domain/ColumnConfig.java
@@ -6,9 +6,9 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.domain;
+package co.yixiang.gen.domain;
-import co.yixiang.utils.GenUtil;
+import co.yixiang.gen.utils.GenUtil;
import lombok.Data;
import lombok.NoArgsConstructor;
diff --git a/yshop-generator/src/main/java/co/yixiang/domain/GenConfig.java b/yshop-generator/src/main/java/co/yixiang/gen/domain/GenConfig.java
similarity index 97%
rename from yshop-generator/src/main/java/co/yixiang/domain/GenConfig.java
rename to yshop-generator/src/main/java/co/yixiang/gen/domain/GenConfig.java
index cbd0361a..b7b0f915 100644
--- a/yshop-generator/src/main/java/co/yixiang/domain/GenConfig.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/domain/GenConfig.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.domain;
+package co.yixiang.gen.domain;
import lombok.Data;
import lombok.NoArgsConstructor;
diff --git a/yshop-generator/src/main/java/co/yixiang/domain/vo/ColumnInfo.java b/yshop-generator/src/main/java/co/yixiang/gen/domain/vo/ColumnInfo.java
similarity index 97%
rename from yshop-generator/src/main/java/co/yixiang/domain/vo/ColumnInfo.java
rename to yshop-generator/src/main/java/co/yixiang/gen/domain/vo/ColumnInfo.java
index 0d14084b..2d290618 100644
--- a/yshop-generator/src/main/java/co/yixiang/domain/vo/ColumnInfo.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/domain/vo/ColumnInfo.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.domain.vo;
+package co.yixiang.gen.domain.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/yshop-generator/src/main/java/co/yixiang/domain/vo/TableInfo.java b/yshop-generator/src/main/java/co/yixiang/gen/domain/vo/TableInfo.java
similarity index 96%
rename from yshop-generator/src/main/java/co/yixiang/domain/vo/TableInfo.java
rename to yshop-generator/src/main/java/co/yixiang/gen/domain/vo/TableInfo.java
index 9c002e02..2f57d761 100644
--- a/yshop-generator/src/main/java/co/yixiang/domain/vo/TableInfo.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/domain/vo/TableInfo.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.domain.vo;
+package co.yixiang.gen.domain.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/yshop-generator/src/main/java/co/yixiang/rest/GenConfigController.java b/yshop-generator/src/main/java/co/yixiang/gen/rest/GenConfigController.java
similarity index 92%
rename from yshop-generator/src/main/java/co/yixiang/rest/GenConfigController.java
rename to yshop-generator/src/main/java/co/yixiang/gen/rest/GenConfigController.java
index 6de9eb5e..37f26e79 100644
--- a/yshop-generator/src/main/java/co/yixiang/rest/GenConfigController.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/rest/GenConfigController.java
@@ -6,10 +6,10 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.rest;
+package co.yixiang.gen.rest;
-import co.yixiang.service.GenConfigService;
-import co.yixiang.domain.GenConfig;
+import co.yixiang.gen.service.GenConfigService;
+import co.yixiang.gen.domain.GenConfig;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.http.HttpStatus;
diff --git a/yshop-generator/src/main/java/co/yixiang/rest/GeneratorController.java b/yshop-generator/src/main/java/co/yixiang/gen/rest/GeneratorController.java
similarity index 96%
rename from yshop-generator/src/main/java/co/yixiang/rest/GeneratorController.java
rename to yshop-generator/src/main/java/co/yixiang/gen/rest/GeneratorController.java
index ae70e7da..83cb2973 100644
--- a/yshop-generator/src/main/java/co/yixiang/rest/GeneratorController.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/rest/GeneratorController.java
@@ -6,11 +6,11 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.rest;
+package co.yixiang.gen.rest;
-import co.yixiang.service.GenConfigService;
-import co.yixiang.service.GeneratorService;
-import co.yixiang.domain.ColumnConfig;
+import co.yixiang.gen.domain.ColumnConfig;
+import co.yixiang.gen.service.GenConfigService;
+import co.yixiang.gen.service.GeneratorService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import co.yixiang.exception.BadRequestException;
diff --git a/yshop-generator/src/main/java/co/yixiang/service/GenConfigService.java b/yshop-generator/src/main/java/co/yixiang/gen/service/GenConfigService.java
similarity index 91%
rename from yshop-generator/src/main/java/co/yixiang/service/GenConfigService.java
rename to yshop-generator/src/main/java/co/yixiang/gen/service/GenConfigService.java
index 884c554e..757244ed 100644
--- a/yshop-generator/src/main/java/co/yixiang/service/GenConfigService.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/service/GenConfigService.java
@@ -6,9 +6,9 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service;
+package co.yixiang.gen.service;
-import co.yixiang.domain.GenConfig;
+import co.yixiang.gen.domain.GenConfig;
/**
* @author Zheng Jie
diff --git a/yshop-generator/src/main/java/co/yixiang/service/GeneratorService.java b/yshop-generator/src/main/java/co/yixiang/gen/service/GeneratorService.java
similarity index 94%
rename from yshop-generator/src/main/java/co/yixiang/service/GeneratorService.java
rename to yshop-generator/src/main/java/co/yixiang/gen/service/GeneratorService.java
index 825ad46f..c1196029 100644
--- a/yshop-generator/src/main/java/co/yixiang/service/GeneratorService.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/service/GeneratorService.java
@@ -6,10 +6,10 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service;
+package co.yixiang.gen.service;
-import co.yixiang.domain.ColumnConfig;
-import co.yixiang.domain.GenConfig;
+import co.yixiang.gen.domain.ColumnConfig;
+import co.yixiang.gen.domain.GenConfig;
import org.springframework.http.ResponseEntity;
import org.springframework.scheduling.annotation.Async;
import javax.servlet.http.HttpServletRequest;
diff --git a/yshop-generator/src/main/java/co/yixiang/service/impl/GenConfigServiceImpl.java b/yshop-generator/src/main/java/co/yixiang/gen/service/impl/GenConfigServiceImpl.java
similarity index 92%
rename from yshop-generator/src/main/java/co/yixiang/service/impl/GenConfigServiceImpl.java
rename to yshop-generator/src/main/java/co/yixiang/gen/service/impl/GenConfigServiceImpl.java
index 67b1c714..b2583264 100644
--- a/yshop-generator/src/main/java/co/yixiang/service/impl/GenConfigServiceImpl.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/service/impl/GenConfigServiceImpl.java
@@ -6,12 +6,12 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.impl;
+package co.yixiang.gen.service.impl;
+import co.yixiang.gen.service.mapper.GenConfigMapper;
import co.yixiang.common.service.impl.BaseServiceImpl;
-import co.yixiang.domain.GenConfig;
-import co.yixiang.service.GenConfigService;
-import co.yixiang.service.mapper.GenConfigMapper;
+import co.yixiang.gen.domain.GenConfig;
+import co.yixiang.gen.service.GenConfigService;
import co.yixiang.utils.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.stereotype.Service;
diff --git a/yshop-generator/src/main/java/co/yixiang/service/impl/GeneratorServiceImpl.java b/yshop-generator/src/main/java/co/yixiang/gen/service/impl/GeneratorServiceImpl.java
similarity index 96%
rename from yshop-generator/src/main/java/co/yixiang/service/impl/GeneratorServiceImpl.java
rename to yshop-generator/src/main/java/co/yixiang/gen/service/impl/GeneratorServiceImpl.java
index 173acd2d..26dbeef4 100644
--- a/yshop-generator/src/main/java/co/yixiang/service/impl/GeneratorServiceImpl.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/service/impl/GeneratorServiceImpl.java
@@ -6,19 +6,19 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.impl;
+package co.yixiang.gen.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.ZipUtil;
+import co.yixiang.gen.domain.ColumnConfig;
+import co.yixiang.gen.service.mapper.ColumnInfoMapper;
+import co.yixiang.gen.utils.GenUtil;
import co.yixiang.common.service.impl.BaseServiceImpl;
-import co.yixiang.domain.ColumnConfig;
-import co.yixiang.domain.GenConfig;
-import co.yixiang.service.mapper.ColumnInfoMapper;
-import co.yixiang.utils.GenUtil;
-import co.yixiang.domain.vo.TableInfo;
+import co.yixiang.gen.domain.GenConfig;
+import co.yixiang.gen.domain.vo.TableInfo;
import co.yixiang.exception.BadRequestException;
-import co.yixiang.service.GeneratorService;
+import co.yixiang.gen.service.GeneratorService;
import co.yixiang.utils.FileUtil;
import co.yixiang.utils.PageUtil;
import co.yixiang.utils.StringUtils;
diff --git a/yshop-generator/src/main/java/co/yixiang/service/mapper/ColumnInfoMapper.java b/yshop-generator/src/main/java/co/yixiang/gen/service/mapper/ColumnInfoMapper.java
similarity index 87%
rename from yshop-generator/src/main/java/co/yixiang/service/mapper/ColumnInfoMapper.java
rename to yshop-generator/src/main/java/co/yixiang/gen/service/mapper/ColumnInfoMapper.java
index 6d3211ce..d0304f03 100644
--- a/yshop-generator/src/main/java/co/yixiang/service/mapper/ColumnInfoMapper.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/service/mapper/ColumnInfoMapper.java
@@ -6,9 +6,9 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.mapper;
+package co.yixiang.gen.service.mapper;
-import co.yixiang.domain.ColumnConfig;
+import co.yixiang.gen.domain.ColumnConfig;
import co.yixiang.common.mapper.CoreMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
diff --git a/yshop-generator/src/main/java/co/yixiang/service/mapper/GenConfigMapper.java b/yshop-generator/src/main/java/co/yixiang/gen/service/mapper/GenConfigMapper.java
similarity index 88%
rename from yshop-generator/src/main/java/co/yixiang/service/mapper/GenConfigMapper.java
rename to yshop-generator/src/main/java/co/yixiang/gen/service/mapper/GenConfigMapper.java
index ea5ce308..efa3f019 100644
--- a/yshop-generator/src/main/java/co/yixiang/service/mapper/GenConfigMapper.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/service/mapper/GenConfigMapper.java
@@ -6,9 +6,9 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.mapper;
+package co.yixiang.gen.service.mapper;
-import co.yixiang.domain.GenConfig;
+import co.yixiang.gen.domain.GenConfig;
import co.yixiang.common.mapper.CoreMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
diff --git a/yshop-generator/src/main/java/co/yixiang/utils/ColUtil.java b/yshop-generator/src/main/java/co/yixiang/gen/utils/ColUtil.java
similarity index 97%
rename from yshop-generator/src/main/java/co/yixiang/utils/ColUtil.java
rename to yshop-generator/src/main/java/co/yixiang/gen/utils/ColUtil.java
index c3de7b38..bbec627e 100644
--- a/yshop-generator/src/main/java/co/yixiang/utils/ColUtil.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/utils/ColUtil.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.utils;
+package co.yixiang.gen.utils;
import org.apache.commons.configuration.*;
diff --git a/yshop-generator/src/main/java/co/yixiang/utils/GenUtil.java b/yshop-generator/src/main/java/co/yixiang/gen/utils/GenUtil.java
similarity index 99%
rename from yshop-generator/src/main/java/co/yixiang/utils/GenUtil.java
rename to yshop-generator/src/main/java/co/yixiang/gen/utils/GenUtil.java
index 230981da..b7dadfc8 100644
--- a/yshop-generator/src/main/java/co/yixiang/utils/GenUtil.java
+++ b/yshop-generator/src/main/java/co/yixiang/gen/utils/GenUtil.java
@@ -6,13 +6,15 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.utils;
+package co.yixiang.gen.utils;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.template.*;
-import co.yixiang.domain.GenConfig;
+import co.yixiang.gen.domain.GenConfig;
+import co.yixiang.utils.FileUtil;
+import co.yixiang.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
-import co.yixiang.domain.ColumnConfig;
+import co.yixiang.gen.domain.ColumnConfig;
import org.springframework.util.ObjectUtils;
import java.io.File;
import java.io.FileWriter;
diff --git a/yshop-logging/src/main/java/co/yixiang/aop/log/Log.java b/yshop-logging/src/main/java/co/yixiang/logging/aop/log/Log.java
similarity index 95%
rename from yshop-logging/src/main/java/co/yixiang/aop/log/Log.java
rename to yshop-logging/src/main/java/co/yixiang/logging/aop/log/Log.java
index 21ce7984..708bd01f 100644
--- a/yshop-logging/src/main/java/co/yixiang/aop/log/Log.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/aop/log/Log.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.aop.log;
+package co.yixiang.logging.aop.log;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/yshop-logging/src/main/java/co/yixiang/aspect/LogAspect.java b/yshop-logging/src/main/java/co/yixiang/logging/aspect/LogAspect.java
similarity index 94%
rename from yshop-logging/src/main/java/co/yixiang/aspect/LogAspect.java
rename to yshop-logging/src/main/java/co/yixiang/logging/aspect/LogAspect.java
index eebe4afa..08a36371 100644
--- a/yshop-logging/src/main/java/co/yixiang/aspect/LogAspect.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/aspect/LogAspect.java
@@ -6,11 +6,11 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.aspect;
+package co.yixiang.logging.aspect;
import lombok.extern.slf4j.Slf4j;
-import co.yixiang.domain.Log;
-import co.yixiang.service.LogService;
+import co.yixiang.logging.domain.Log;
+import co.yixiang.logging.service.LogService;
import co.yixiang.utils.RequestHolder;
import co.yixiang.utils.SecurityUtils;
import co.yixiang.utils.StringUtils;
@@ -45,7 +45,7 @@ public class LogAspect {
/**
* 配置切入点
*/
- @Pointcut("@annotation(co.yixiang.aop.log.Log)")
+ @Pointcut("@annotation(co.yixiang.logging.aop.log.Log)")
public void logPointcut() {
// 该方法无方法体,主要为了让同类中其他方法使用此切入点
}
diff --git a/yshop-logging/src/main/java/co/yixiang/domain/Log.java b/yshop-logging/src/main/java/co/yixiang/logging/domain/Log.java
similarity index 97%
rename from yshop-logging/src/main/java/co/yixiang/domain/Log.java
rename to yshop-logging/src/main/java/co/yixiang/logging/domain/Log.java
index e4de2800..21a9f324 100644
--- a/yshop-logging/src/main/java/co/yixiang/domain/Log.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/domain/Log.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.domain;
+package co.yixiang.logging.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/yshop-logging/src/main/java/co/yixiang/rest/LogController.java b/yshop-logging/src/main/java/co/yixiang/logging/rest/LogController.java
similarity index 96%
rename from yshop-logging/src/main/java/co/yixiang/rest/LogController.java
rename to yshop-logging/src/main/java/co/yixiang/logging/rest/LogController.java
index 5b15443f..f664325f 100644
--- a/yshop-logging/src/main/java/co/yixiang/rest/LogController.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/rest/LogController.java
@@ -6,13 +6,13 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.rest;
+package co.yixiang.logging.rest;
-import co.yixiang.aop.log.Log;
+import co.yixiang.logging.aop.log.Log;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import co.yixiang.service.LogService;
-import co.yixiang.service.dto.LogQueryCriteria;
+import co.yixiang.logging.service.LogService;
+import co.yixiang.logging.service.dto.LogQueryCriteria;
import co.yixiang.utils.SecurityUtils;
import org.springframework.data.domain.Pageable;
import org.springframework.http.HttpStatus;
diff --git a/yshop-logging/src/main/java/co/yixiang/service/LogService.java b/yshop-logging/src/main/java/co/yixiang/logging/service/LogService.java
similarity index 94%
rename from yshop-logging/src/main/java/co/yixiang/service/LogService.java
rename to yshop-logging/src/main/java/co/yixiang/logging/service/LogService.java
index 28ee1241..48b970fc 100644
--- a/yshop-logging/src/main/java/co/yixiang/service/LogService.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/service/LogService.java
@@ -6,11 +6,11 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service;
+package co.yixiang.logging.service;
+import co.yixiang.logging.domain.Log;
import co.yixiang.common.service.BaseService;
-import co.yixiang.domain.Log;
-import co.yixiang.service.dto.LogQueryCriteria;
+import co.yixiang.logging.service.dto.LogQueryCriteria;
import org.aspectj.lang.ProceedingJoinPoint;
import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
diff --git a/yshop-logging/src/main/java/co/yixiang/service/dto/LogErrorDTO.java b/yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogErrorDTO.java
similarity index 95%
rename from yshop-logging/src/main/java/co/yixiang/service/dto/LogErrorDTO.java
rename to yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogErrorDTO.java
index 8c14b169..c3dd9ff8 100644
--- a/yshop-logging/src/main/java/co/yixiang/service/dto/LogErrorDTO.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogErrorDTO.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.dto;
+package co.yixiang.logging.service.dto;
import lombok.Data;
import java.io.Serializable;
diff --git a/yshop-logging/src/main/java/co/yixiang/service/dto/LogQueryCriteria.java b/yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogQueryCriteria.java
similarity index 95%
rename from yshop-logging/src/main/java/co/yixiang/service/dto/LogQueryCriteria.java
rename to yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogQueryCriteria.java
index bb17ff48..690d4fec 100644
--- a/yshop-logging/src/main/java/co/yixiang/service/dto/LogQueryCriteria.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogQueryCriteria.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.dto;
+package co.yixiang.logging.service.dto;
import co.yixiang.annotation.Query;
import lombok.Data;
diff --git a/yshop-logging/src/main/java/co/yixiang/service/dto/LogSmallDTO.java b/yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogSmallDTO.java
similarity index 94%
rename from yshop-logging/src/main/java/co/yixiang/service/dto/LogSmallDTO.java
rename to yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogSmallDTO.java
index 1168b746..baa8179a 100644
--- a/yshop-logging/src/main/java/co/yixiang/service/dto/LogSmallDTO.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/service/dto/LogSmallDTO.java
@@ -6,7 +6,7 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.dto;
+package co.yixiang.logging.service.dto;
import lombok.Data;
import java.io.Serializable;
diff --git a/yshop-logging/src/main/java/co/yixiang/service/impl/LogServiceImpl.java b/yshop-logging/src/main/java/co/yixiang/logging/service/impl/LogServiceImpl.java
similarity index 81%
rename from yshop-logging/src/main/java/co/yixiang/service/impl/LogServiceImpl.java
rename to yshop-logging/src/main/java/co/yixiang/logging/service/impl/LogServiceImpl.java
index 3fdee780..89bd9d0d 100644
--- a/yshop-logging/src/main/java/co/yixiang/service/impl/LogServiceImpl.java
+++ b/yshop-logging/src/main/java/co/yixiang/logging/service/impl/LogServiceImpl.java
@@ -6,27 +6,24 @@
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
-package co.yixiang.service.impl;
+package co.yixiang.logging.service.impl;
import cn.hutool.core.lang.Dict;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONObject;
+import co.yixiang.logging.aop.log.Log;
+import co.yixiang.logging.service.mapper.LogMapper;
import co.yixiang.common.service.impl.BaseServiceImpl;
import co.yixiang.common.utils.QueryHelpPlus;
-import co.yixiang.domain.Log;
import co.yixiang.dozer.service.IGenerator;
-import co.yixiang.service.LogService;
-import co.yixiang.service.dto.LogErrorDTO;
-import co.yixiang.service.dto.LogQueryCriteria;
-import co.yixiang.service.dto.LogSmallDTO;
-import co.yixiang.service.mapper.LogMapper;
+import co.yixiang.logging.service.LogService;
+import co.yixiang.logging.service.dto.LogErrorDTO;
+import co.yixiang.logging.service.dto.LogQueryCriteria;
+import co.yixiang.logging.service.dto.LogSmallDTO;
import co.yixiang.utils.*;
-import com.baomidou.mybatisplus.core.conditions.query.Query;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageInfo;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.reflect.MethodSignature;
-import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@@ -46,7 +43,7 @@ import java.util.Map;
*/
@Service
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
-public class LogServiceImpl extends BaseServiceImpl implements LogService {
+public class LogServiceImpl extends BaseServiceImpl implements LogService {
private final LogMapper logMapper;
@@ -61,8 +58,8 @@ public class LogServiceImpl extends BaseServiceImpl implements
@Override
public Object findAllByPageable(String nickname, Pageable pageable) {
getPage(pageable);
- List list = logMapper.findAllByPageable(nickname);
- PageInfo page = new PageInfo<>(list);
+ List list = logMapper.findAllByPageable(nickname);
+ PageInfo page = new PageInfo<>(list);
Map map = new LinkedHashMap<>(2);
map.put("content",page.getList());
@@ -75,7 +72,7 @@ public class LogServiceImpl extends BaseServiceImpl implements
public Object queryAll(LogQueryCriteria criteria, Pageable pageable){
getPage(pageable);
- PageInfo page = new PageInfo<>(queryAll(criteria));
+ PageInfo page = new PageInfo<>(queryAll(criteria));
Map map = new LinkedHashMap<>(2);
String status = "ERROR";
if(status.equals(criteria.getLogType())){
@@ -88,14 +85,14 @@ public class LogServiceImpl extends BaseServiceImpl implements
}
@Override
- public List queryAll(LogQueryCriteria criteria) {
- return baseMapper.selectList(QueryHelpPlus.getPredicate(Log.class, criteria));
+ public List queryAll(LogQueryCriteria criteria) {
+ return baseMapper.selectList(QueryHelpPlus.getPredicate(co.yixiang.logging.domain.Log.class, criteria));
}
@Override
public Object queryAllByUser(LogQueryCriteria criteria, Pageable pageable) {
getPage(pageable);
- PageInfo page = new PageInfo<>(queryAll(criteria));
+ PageInfo page = new PageInfo<>(queryAll(criteria));
Map map = new LinkedHashMap<>(2);
map.put("content", generator.convert(page.getList(), LogSmallDTO.class));
map.put("totalElements", page.getTotal());
@@ -106,11 +103,11 @@ public class LogServiceImpl extends BaseServiceImpl implements
@Override
@Transactional(rollbackFor = Exception.class)
public void save(String username, String ip, ProceedingJoinPoint joinPoint,
- Log log,Long uid){
+ co.yixiang.logging.domain.Log log, Long uid){
MethodSignature signature = (MethodSignature) joinPoint.getSignature();
Method method = signature.getMethod();
- co.yixiang.aop.log.Log aopLog = method.getAnnotation(co.yixiang.aop.log.Log.class);
+ Log aopLog = method.getAnnotation(Log.class);
// 方法路径
String methodName = joinPoint.getTarget().getClass().getName()+"."+signature.getName()+"()";
@@ -155,16 +152,16 @@ public class LogServiceImpl extends BaseServiceImpl implements
@Override
public Object findByErrDetail(Long id) {
- Log log = this.getById(id);
+ co.yixiang.logging.domain.Log log = this.getById(id);
ValidationUtil.isNull( log.getId(),"Log","id", id);
byte[] details = log.getExceptionDetail();
return Dict.create().set("exception",new String(ObjectUtil.isNotNull(details) ? details : "".getBytes()));
}
@Override
- public void download(List logs, HttpServletResponse response) throws IOException {
+ public void download(List logs, HttpServletResponse response) throws IOException {
List