From d4f57c94d8f7540ed245a2403b8cf36285b94f1a Mon Sep 17 00:00:00 2001 From: xuwenbo <717567226@qq.com> Date: Tue, 8 Sep 2020 14:50:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=A8=A1=E5=9D=97=E6=95=B4?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yixiang/modules/services/AuthService.java | 5 +- .../modules/services/OrderSupplyService.java | 2 +- .../modules/shop/rest/ArticleController.java | 4 +- .../user/rest/UserRechargeController.java | 2 +- .../rest/controller/WechatController.java | 6 +- .../rest/controller/WechatLiveController.java | 17 +- .../rest/controller/WxMaUserController.java | 2 +- .../impl/YxStoreCombinationServiceImpl.java | 4 +- .../impl/YxStoreSeckillServiceImpl.java | 4 +- .../impl/YxStoreProductServiceImpl.java | 7 +- .../services/WechatArticleService.java | 6 +- .../shop/rest/SystemConfigController.java | 6 +- .../wechat/rest/WechatArticleController.java | 8 +- .../wechat/rest/WechatMenuController.java | 6 +- .../wechat/rest/WechatReplyController.java | 4 +- .../wechat/rest/WechatTemplateController.java | 8 +- .../wechat/rest/YxWechatLiveController.java | 8 +- .../rest/YxWechatLiveGoodsController.java | 8 +- .../mp/builder/AbstractBuilder.java | 2 +- .../mp/builder/ImageBuilder.java | 2 +- .../{ => modules}/mp/builder/TextBuilder.java | 2 +- .../modules/mp}/config/WxMaConfiguration.java | 2 +- .../mp/config/WxMpConfiguration.java | 22 +- .../mp/config/WxPayConfiguration.java | 2 +- .../yixiang/modules/mp}/domain/YxArticle.java | 2 +- .../modules/mp}/domain/YxWechatLive.java | 2 +- .../modules/mp}/domain/YxWechatLiveGoods.java | 2 +- .../modules/mp}/domain/YxWechatMenu.java | 2 +- .../modules/mp}/domain/YxWechatReply.java | 2 +- .../modules/mp}/domain/YxWechatTemplate.java | 112 ++--- .../mp/enums/WechatTempateEnum.java | 56 +-- .../mp/error/ErrorController.java | 2 +- .../mp/error/ErrorPageConfiguration.java | 2 +- .../mp/handler/AbstractHandler.java | 2 +- .../mp/handler/KfSessionHandler.java | 2 +- .../mp/handler/LocationHandler.java | 4 +- .../{ => modules}/mp/handler/LogHandler.java | 2 +- .../{ => modules}/mp/handler/MenuHandler.java | 2 +- .../{ => modules}/mp/handler/MsgHandler.java | 4 +- .../{ => modules}/mp/handler/NullHandler.java | 2 +- .../mp/handler/RedisHandler.java | 2 +- .../{ => modules}/mp/handler/ScanHandler.java | 2 +- .../mp/handler/StoreCheckNotifyHandler.java | 2 +- .../mp/handler/SubscribeHandler.java | 6 +- .../mp/handler/UnsubscribeHandler.java | 2 +- .../mp/listener/TemplateListener.java | 8 +- .../mp/service/WeiXinSubscribeService.java | 10 +- .../mp/service/WeixinPayService.java | 448 ++++++++--------- .../mp/service/WeixinTemplateService.java | 459 +++++++++--------- .../modules/mp}/service/YxArticleService.java | 10 +- .../mp}/service/YxWechatLiveGoodsService.java | 8 +- .../mp}/service/YxWechatLiveService.java | 11 +- .../mp}/service/YxWechatMenuService.java | 8 +- .../mp}/service/YxWechatReplyService.java | 8 +- .../mp}/service/YxWechatTemplateService.java | 98 ++-- .../modules/mp}/service/dto/YxArticleDto.java | 2 +- .../service/dto/YxArticleQueryCriteria.java | 2 +- .../mp}/service/dto/YxWechatLiveDto.java | 2 +- .../mp}/service/dto/YxWechatLiveGoodsDto.java | 2 +- .../dto/YxWechatLiveGoodsQueryCriteria.java | 2 +- .../dto/YxWechatLiveQueryCriteria.java | 2 +- .../mp}/service/dto/YxWechatMenuDto.java | 2 +- .../dto/YxWechatMenuQueryCriteria.java | 2 +- .../mp}/service/dto/YxWechatReplyDto.java | 2 +- .../dto/YxWechatReplyQueryCriteria.java | 2 +- .../mp}/service/dto/YxWechatTemplateDto.java | 82 ++-- .../dto/YxWechatTemplateQueryCriteria.java | 32 +- .../service/impl/YxArticleServiceImpl.java | 14 +- .../impl/YxWechatLiveGoodsServiceImpl.java | 14 +- .../service/impl/YxWechatLiveServiceImpl.java | 22 +- .../service/impl/YxWechatMenuServiceImpl.java | 12 +- .../impl/YxWechatReplyServiceImpl.java | 12 +- .../impl/YxWechatTemplateServiceImpl.java | 178 +++---- .../mp}/service/mapper/ArticleMapper.java | 4 +- .../mp}/service/mapper/WechatMenuMapper.java | 4 +- .../mp}/service/mapper/WechatReplyMapper.java | 4 +- .../service/mapper/WechatTemplateMapper.java | 4 +- .../mapper/YxWechatLiveGoodsMapper.java | 4 +- .../service/mapper/YxWechatLiveMapper.java | 4 +- .../{ => modules}/mp/utils/JsonUtils.java | 2 +- .../{ => modules}/mp/utils/URLUtils.java | 162 +++---- .../{ => modules}/mp/utils/YshopUtils.java | 48 +- .../yixiang/modules/mp}/vo/WechatLiveVo.java | 4 +- .../modules/mp}/vo/YxArticleQueryVo.java | 2 +- 84 files changed, 1019 insertions(+), 1030 deletions(-) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/builder/AbstractBuilder.java (94%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/builder/ImageBuilder.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/builder/TextBuilder.java (95%) rename {yshop-tools/src/main/java/co/yixiang/tools => yshop-weixin/src/main/java/co/yixiang/modules/mp}/config/WxMaConfiguration.java (98%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/config/WxMpConfiguration.java (92%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/config/WxPayConfiguration.java (99%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/domain/YxArticle.java (97%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/domain/YxWechatLive.java (98%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/domain/YxWechatLiveGoods.java (98%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/domain/YxWechatMenu.java (95%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/domain/YxWechatReply.java (96%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/domain/YxWechatTemplate.java (91%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/enums/WechatTempateEnum.java (93%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/error/ErrorController.java (93%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/error/ErrorPageConfiguration.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/AbstractHandler.java (89%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/KfSessionHandler.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/LocationHandler.java (94%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/LogHandler.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/MenuHandler.java (96%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/MsgHandler.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/NullHandler.java (94%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/RedisHandler.java (94%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/ScanHandler.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/StoreCheckNotifyHandler.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/SubscribeHandler.java (91%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/handler/UnsubscribeHandler.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/listener/TemplateListener.java (93%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/service/WeiXinSubscribeService.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/service/WeixinPayService.java (96%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/service/WeixinTemplateService.java (93%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/YxArticleService.java (85%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/YxWechatLiveGoodsService.java (88%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/YxWechatLiveService.java (84%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/YxWechatMenuService.java (82%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/YxWechatReplyService.java (83%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/YxWechatTemplateService.java (79%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxArticleDto.java (96%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxArticleQueryCriteria.java (80%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatLiveDto.java (98%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatLiveGoodsDto.java (97%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatLiveGoodsQueryCriteria.java (92%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatLiveQueryCriteria.java (90%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatMenuDto.java (88%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatMenuQueryCriteria.java (80%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatReplyDto.java (92%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatReplyQueryCriteria.java (81%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatTemplateDto.java (88%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/dto/YxWechatTemplateQueryCriteria.java (76%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/impl/YxArticleServiceImpl.java (92%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/impl/YxWechatLiveGoodsServiceImpl.java (95%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/impl/YxWechatLiveServiceImpl.java (93%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/impl/YxWechatMenuServiceImpl.java (88%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/impl/YxWechatReplyServiceImpl.java (91%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/impl/YxWechatTemplateServiceImpl.java (86%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/mapper/ArticleMapper.java (83%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/mapper/WechatMenuMapper.java (74%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/mapper/WechatReplyMapper.java (74%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/mapper/WechatTemplateMapper.java (74%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/mapper/YxWechatLiveGoodsMapper.java (84%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/service/mapper/YxWechatLiveMapper.java (84%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/utils/JsonUtils.java (91%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/utils/URLUtils.java (95%) rename yshop-weixin/src/main/java/co/yixiang/{ => modules}/mp/utils/YshopUtils.java (92%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/vo/WechatLiveVo.java (61%) rename {yshop-mall/src/main/java/co/yixiang/modules/wechat => yshop-weixin/src/main/java/co/yixiang/modules/mp}/vo/YxArticleQueryVo.java (97%) diff --git a/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java b/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java index 621c507f..5e306191 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java +++ b/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java @@ -11,7 +11,6 @@ package co.yixiang.modules.services; 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.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.crypto.SecureUtil; @@ -25,8 +24,8 @@ import co.yixiang.modules.user.domain.YxUser; import co.yixiang.modules.user.service.YxUserService; import co.yixiang.modules.user.service.dto.WechatUserDto; import co.yixiang.modules.user.vo.OnlineUser; -import co.yixiang.mp.config.WxMpConfiguration; -import co.yixiang.tools.config.WxMaConfiguration; +import co.yixiang.modules.mp.config.WxMpConfiguration; +import co.yixiang.modules.mp.config.WxMaConfiguration; import co.yixiang.utils.EncryptUtils; import co.yixiang.utils.RedisUtils; import co.yixiang.utils.ShopKeyUtils; diff --git a/yshop-app/src/main/java/co/yixiang/modules/services/OrderSupplyService.java b/yshop-app/src/main/java/co/yixiang/modules/services/OrderSupplyService.java index f02e9c4a..c115201a 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/services/OrderSupplyService.java +++ b/yshop-app/src/main/java/co/yixiang/modules/services/OrderSupplyService.java @@ -31,7 +31,7 @@ import co.yixiang.modules.order.service.dto.ProductAttrDto; import co.yixiang.modules.order.service.dto.ProductDto; import co.yixiang.modules.order.vo.OrderCartInfoVo; import co.yixiang.modules.order.vo.YxStoreOrderQueryVo; -import co.yixiang.mp.service.WeixinPayService; +import co.yixiang.modules.mp.service.WeixinPayService; import com.alibaba.fastjson.JSONObject; import com.github.binarywang.wxpay.bean.order.WxPayAppOrderResult; import com.github.binarywang.wxpay.bean.order.WxPayMpOrderResult; diff --git a/yshop-app/src/main/java/co/yixiang/modules/shop/rest/ArticleController.java b/yshop-app/src/main/java/co/yixiang/modules/shop/rest/ArticleController.java index 587c2089..312d72e0 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/shop/rest/ArticleController.java +++ b/yshop-app/src/main/java/co/yixiang/modules/shop/rest/ArticleController.java @@ -9,8 +9,8 @@ package co.yixiang.modules.shop.rest; import co.yixiang.api.ApiResult; -import co.yixiang.modules.wechat.service.YxArticleService; -import co.yixiang.modules.wechat.vo.YxArticleQueryVo; +import co.yixiang.modules.mp.service.YxArticleService; +import co.yixiang.modules.mp.vo.YxArticleQueryVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; diff --git a/yshop-app/src/main/java/co/yixiang/modules/user/rest/UserRechargeController.java b/yshop-app/src/main/java/co/yixiang/modules/user/rest/UserRechargeController.java index 67786e84..f3c41c79 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/user/rest/UserRechargeController.java +++ b/yshop-app/src/main/java/co/yixiang/modules/user/rest/UserRechargeController.java @@ -24,7 +24,7 @@ import co.yixiang.modules.shop.vo.YxSystemGroupDataVo; import co.yixiang.modules.user.domain.YxUser; import co.yixiang.modules.user.param.RechargeParam; import co.yixiang.modules.user.service.YxUserRechargeService; -import co.yixiang.mp.service.WeixinPayService; +import co.yixiang.modules.mp.service.WeixinPayService; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.github.binarywang.wxpay.bean.order.WxPayAppOrderResult; diff --git a/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatController.java b/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatController.java index 04d80001..826b46a1 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatController.java +++ b/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatController.java @@ -22,9 +22,9 @@ import co.yixiang.modules.order.vo.YxStoreOrderQueryVo; import co.yixiang.modules.shop.service.YxSystemConfigService; import co.yixiang.modules.user.domain.YxUserRecharge; import co.yixiang.modules.user.service.YxUserRechargeService; -import co.yixiang.mp.config.WxMpConfiguration; -import co.yixiang.mp.config.WxPayConfiguration; -import co.yixiang.tools.config.WxMaConfiguration; +import co.yixiang.modules.mp.config.WxMpConfiguration; +import co.yixiang.modules.mp.config.WxPayConfiguration; +import co.yixiang.modules.mp.config.WxMaConfiguration; import co.yixiang.utils.BigNum; import com.github.binarywang.wxpay.bean.notify.WxPayNotifyResponse; import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult; diff --git a/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatLiveController.java b/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatLiveController.java index 6017a51b..3916bf90 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatLiveController.java +++ b/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WechatLiveController.java @@ -10,27 +10,16 @@ package co.yixiang.modules.wechat.rest.controller; import cn.binarywang.wx.miniapp.bean.WxMaLiveResult; import co.yixiang.api.ApiResult; -import co.yixiang.dozer.service.IGenerator; -import co.yixiang.logging.aop.log.Log; -import co.yixiang.modules.wechat.domain.YxWechatLive; -import co.yixiang.modules.wechat.service.YxWechatLiveService; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveDto; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveQueryCriteria; -import co.yixiang.modules.wechat.vo.WechatLiveVo; +import co.yixiang.modules.mp.service.YxWechatLiveService; +import co.yixiang.modules.mp.service.dto.YxWechatLiveQueryCriteria; +import co.yixiang.modules.mp.vo.WechatLiveVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.data.domain.Pageable; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.Arrays; import java.util.List; -import java.util.Map; /** * @author hupeng diff --git a/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WxMaUserController.java b/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WxMaUserController.java index 56366a7c..c0d893ac 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WxMaUserController.java +++ b/yshop-app/src/main/java/co/yixiang/modules/wechat/rest/controller/WxMaUserController.java @@ -21,7 +21,7 @@ import co.yixiang.modules.user.domain.YxUser; import co.yixiang.modules.user.service.YxUserService; import co.yixiang.modules.wechat.rest.param.BindPhoneParam; import co.yixiang.modules.wechat.rest.param.WxPhoneParam; -import co.yixiang.tools.config.WxMaConfiguration; +import co.yixiang.modules.mp.config.WxMaConfiguration; import co.yixiang.utils.RedisUtils; import co.yixiang.utils.ShopKeyUtils; import io.swagger.annotations.Api; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreCombinationServiceImpl.java b/yshop-mall/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreCombinationServiceImpl.java index 1fc3331a..d1ee5804 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreCombinationServiceImpl.java +++ b/yshop-mall/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreCombinationServiceImpl.java @@ -361,7 +361,7 @@ public class YxStoreCombinationServiceImpl extends BaseServiceImpl - * @Date 2020/6/27 - **/ -@Service -@Slf4j -public class WeixinPayService { - - @Autowired - private RedisUtils redisUtils; - - @Autowired - private YxUserService userService; - @Autowired - private YxStoreOrderService storeOrderService; - @Autowired - private YxUserRechargeService userRechargeService; - - - /** - * 统一支付入口 - * @param orderId 单号 - * @param from 来源 - * @param attach 备注 普通支付还是充值 - * @param body 内容 - * @return Object - */ - public Object unifyPay(String orderId, String from, String attach, String body) { - long uid = 0; - int payPrice = 0; - BigDecimal bigDecimal = new BigDecimal(100); - //普通支付 - if(BillDetailEnum.TYPE_3.getValue().equals(attach)){ - YxStoreOrderQueryVo orderInfo = storeOrderService.getOrderInfo(orderId,null); - if(ObjectUtil.isNull(orderInfo)) { - throw new YshopException("订单不存在"); - } - if(orderInfo.getPaid().equals(OrderInfoEnum.PAY_STATUS_1.getValue())) { - throw new YshopException("该订单已支付"); - } - - if(orderInfo.getPayPrice().compareTo(BigDecimal.ZERO) <= 0) { - throw new YshopException("该支付无需支付"); - } - - uid = orderInfo.getUid().intValue(); - //计算分 - payPrice = bigDecimal.multiply(orderInfo.getPayPrice()).intValue(); - }else{ //充值 - YxUserRecharge userRecharge = userRechargeService.getOne(Wrappers.lambdaQuery() - .eq(YxUserRecharge::getOrderId,orderId)); - if(userRecharge == null) { - throw new BusinessException("充值订单不存在"); - } - - if(userRecharge.getPaid().equals(OrderInfoEnum.PAY_STATUS_1.getValue())) { - throw new YshopException("该订单已支付"); - } - uid = userRecharge.getUid(); - payPrice = bigDecimal.multiply(userRecharge.getPrice()).intValue(); - } - - - YxUser yxUser = userService.getById(uid); - if(yxUser == null) { - throw new YshopException("用户错误"); - } - - - WechatUserDto wechatUserDto = yxUser.getWxProfile(); - - WxPayService wxPayService = null; - if(AppFromEnum.ROUNTINE.getValue().equals(from)){ - wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WXAPP); - }else if(AppFromEnum.APP.getValue().equals(from)){ - wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.APP); - }else{ - wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WECHAT); - } - WxPayUnifiedOrderRequest orderRequest = new WxPayUnifiedOrderRequest(); - orderRequest.setOutTradeNo(orderId); - orderRequest.setTotalFee(payPrice); - orderRequest.setSpbillCreateIp(IpUtil.getLocalIP()); - orderRequest.setNotifyUrl(this.getApiUrl() + "/api/wechat/notify"); - orderRequest.setBody(body); - orderRequest.setAttach(attach); - - if(AppFromEnum.WEIXIN_H5.getValue().equals(from)){ - orderRequest.setTradeType("MWEB"); - }else if(AppFromEnum.APP.getValue().equals(from)){ - orderRequest.setTradeType("APP"); - } else{ - orderRequest.setTradeType("JSAPI"); - if(AppFromEnum.ROUNTINE.getValue().equals(from)){ - orderRequest.setOpenid(wechatUserDto.getRoutineOpenid()); - }else { - orderRequest.setOpenid(wechatUserDto.getOpenid()); - } - } - try { - return wxPayService.createOrder(orderRequest); - }catch (WxPayException e) { - log.info("支付错误信息:{}",e.getMessage()); - throw new BusinessException(e.getMessage()); - } - - - } - - - - - /** - * 退款 - * @param orderId orderId - * @param totalFee totalFee 单位分 - */ - public void refundOrder(String orderId, Integer totalFee) { - - YxStoreOrderQueryVo orderInfo = storeOrderService.getOrderInfo(orderId,null); - if(PayTypeEnum.YUE.getValue().equals(orderInfo.getPayType())) { - return; - } - - WxPayService wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WECHAT); - WxPayRefundRequest wxPayRefundRequest = new WxPayRefundRequest(); - //订单总金额 - wxPayRefundRequest.setTotalFee(totalFee); - wxPayRefundRequest.setOutTradeNo(orderId); - wxPayRefundRequest.setOutRefundNo(orderId); - //退款金额 - wxPayRefundRequest.setRefundFee(totalFee); - wxPayRefundRequest.setNotifyUrl(this.getApiUrl() + "/api/notify/refund"); - - try { - wxPayService.refund(wxPayRefundRequest); - } catch (WxPayException e) { - log.info("退款错误信息:{}",e.getMessage()); - throw new BusinessException(e.getMessage()); - } - } - - - /** - * 企业打款 - * @param openid 微信openid - * @param no 单号 - * @param userName 用户姓名 - * @param amount 金额 - * @throws WxPayException - */ - public void entPay(String openid,String no,String userName,Integer amount) throws WxPayException { - WxPayService wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WECHAT); - EntPayRequest entPayRequest = new EntPayRequest(); - - entPayRequest.setOpenid(openid); - entPayRequest.setPartnerTradeNo(no); - entPayRequest.setCheckName("FORCE_CHECK"); - entPayRequest.setReUserName(userName); - entPayRequest.setAmount(amount); - entPayRequest.setDescription("提现"); - entPayRequest.setSpbillCreateIp(IpUtil.getLocalIP()); - wxPayService.getEntPayService().entPay(entPayRequest); - - } - - - /** - * 返回H5 url - * @return url - */ - private String getApiUrl(){ - String apiUrl = redisUtils.getY(ShopKeyUtils.getApiUrl()); - if(StrUtil.isBlank(apiUrl)){ - throw new YshopException("请配置移动端api地址"); - } - return apiUrl; - } - - -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + * 注意: + * 本软件为www.yixiang.co开发研制,未经购买不得使用 + * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) + * 一经发现盗用、分享等行为,将追究法律责任,后果自负 + */ +package co.yixiang.modules.mp.service; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import co.yixiang.api.BusinessException; +import co.yixiang.api.YshopException; +import co.yixiang.enums.AppFromEnum; +import co.yixiang.enums.BillDetailEnum; +import co.yixiang.enums.OrderInfoEnum; +import co.yixiang.enums.PayMethodEnum; +import co.yixiang.enums.PayTypeEnum; +import co.yixiang.modules.order.service.YxStoreOrderService; +import co.yixiang.modules.order.vo.YxStoreOrderQueryVo; +import co.yixiang.modules.user.domain.YxUser; +import co.yixiang.modules.user.domain.YxUserRecharge; +import co.yixiang.modules.user.service.YxUserRechargeService; +import co.yixiang.modules.user.service.YxUserService; +import co.yixiang.modules.user.service.dto.WechatUserDto; +import co.yixiang.modules.mp.config.WxPayConfiguration; +import co.yixiang.utils.IpUtil; +import co.yixiang.utils.RedisUtils; +import co.yixiang.utils.ShopKeyUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.github.binarywang.wxpay.bean.entpay.EntPayRequest; +import com.github.binarywang.wxpay.bean.request.WxPayRefundRequest; +import com.github.binarywang.wxpay.bean.request.WxPayUnifiedOrderRequest; +import com.github.binarywang.wxpay.exception.WxPayException; +import com.github.binarywang.wxpay.service.WxPayService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; + +/** + * @ClassName 微信支付WeixinPayService + * @Author hupeng <610796224@qq.com> + * @Date 2020/6/27 + **/ +@Service +@Slf4j +public class WeixinPayService { + + @Autowired + private RedisUtils redisUtils; + + @Autowired + private YxUserService userService; + @Autowired + private YxStoreOrderService storeOrderService; + @Autowired + private YxUserRechargeService userRechargeService; + + + /** + * 统一支付入口 + * @param orderId 单号 + * @param from 来源 + * @param attach 备注 普通支付还是充值 + * @param body 内容 + * @return Object + */ + public Object unifyPay(String orderId, String from, String attach, String body) { + long uid = 0; + int payPrice = 0; + BigDecimal bigDecimal = new BigDecimal(100); + //普通支付 + if(BillDetailEnum.TYPE_3.getValue().equals(attach)){ + YxStoreOrderQueryVo orderInfo = storeOrderService.getOrderInfo(orderId,null); + if(ObjectUtil.isNull(orderInfo)) { + throw new YshopException("订单不存在"); + } + if(orderInfo.getPaid().equals(OrderInfoEnum.PAY_STATUS_1.getValue())) { + throw new YshopException("该订单已支付"); + } + + if(orderInfo.getPayPrice().compareTo(BigDecimal.ZERO) <= 0) { + throw new YshopException("该支付无需支付"); + } + + uid = orderInfo.getUid().intValue(); + //计算分 + payPrice = bigDecimal.multiply(orderInfo.getPayPrice()).intValue(); + }else{ //充值 + YxUserRecharge userRecharge = userRechargeService.getOne(Wrappers.lambdaQuery() + .eq(YxUserRecharge::getOrderId,orderId)); + if(userRecharge == null) { + throw new BusinessException("充值订单不存在"); + } + + if(userRecharge.getPaid().equals(OrderInfoEnum.PAY_STATUS_1.getValue())) { + throw new YshopException("该订单已支付"); + } + uid = userRecharge.getUid(); + payPrice = bigDecimal.multiply(userRecharge.getPrice()).intValue(); + } + + + YxUser yxUser = userService.getById(uid); + if(yxUser == null) { + throw new YshopException("用户错误"); + } + + + WechatUserDto wechatUserDto = yxUser.getWxProfile(); + + WxPayService wxPayService = null; + if(AppFromEnum.ROUNTINE.getValue().equals(from)){ + wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WXAPP); + }else if(AppFromEnum.APP.getValue().equals(from)){ + wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.APP); + }else{ + wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WECHAT); + } + WxPayUnifiedOrderRequest orderRequest = new WxPayUnifiedOrderRequest(); + orderRequest.setOutTradeNo(orderId); + orderRequest.setTotalFee(payPrice); + orderRequest.setSpbillCreateIp(IpUtil.getLocalIP()); + orderRequest.setNotifyUrl(this.getApiUrl() + "/api/wechat/notify"); + orderRequest.setBody(body); + orderRequest.setAttach(attach); + + if(AppFromEnum.WEIXIN_H5.getValue().equals(from)){ + orderRequest.setTradeType("MWEB"); + }else if(AppFromEnum.APP.getValue().equals(from)){ + orderRequest.setTradeType("APP"); + } else{ + orderRequest.setTradeType("JSAPI"); + if(AppFromEnum.ROUNTINE.getValue().equals(from)){ + orderRequest.setOpenid(wechatUserDto.getRoutineOpenid()); + }else { + orderRequest.setOpenid(wechatUserDto.getOpenid()); + } + } + try { + return wxPayService.createOrder(orderRequest); + }catch (WxPayException e) { + log.info("支付错误信息:{}",e.getMessage()); + throw new BusinessException(e.getMessage()); + } + + + } + + + + + /** + * 退款 + * @param orderId orderId + * @param totalFee totalFee 单位分 + */ + public void refundOrder(String orderId, Integer totalFee) { + + YxStoreOrderQueryVo orderInfo = storeOrderService.getOrderInfo(orderId,null); + if(PayTypeEnum.YUE.getValue().equals(orderInfo.getPayType())) { + return; + } + + WxPayService wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WECHAT); + WxPayRefundRequest wxPayRefundRequest = new WxPayRefundRequest(); + //订单总金额 + wxPayRefundRequest.setTotalFee(totalFee); + wxPayRefundRequest.setOutTradeNo(orderId); + wxPayRefundRequest.setOutRefundNo(orderId); + //退款金额 + wxPayRefundRequest.setRefundFee(totalFee); + wxPayRefundRequest.setNotifyUrl(this.getApiUrl() + "/api/notify/refund"); + + try { + wxPayService.refund(wxPayRefundRequest); + } catch (WxPayException e) { + log.info("退款错误信息:{}",e.getMessage()); + throw new BusinessException(e.getMessage()); + } + } + + + /** + * 企业打款 + * @param openid 微信openid + * @param no 单号 + * @param userName 用户姓名 + * @param amount 金额 + * @throws WxPayException + */ + public void entPay(String openid,String no,String userName,Integer amount) throws WxPayException { + WxPayService wxPayService = WxPayConfiguration.getPayService(PayMethodEnum.WECHAT); + EntPayRequest entPayRequest = new EntPayRequest(); + + entPayRequest.setOpenid(openid); + entPayRequest.setPartnerTradeNo(no); + entPayRequest.setCheckName("FORCE_CHECK"); + entPayRequest.setReUserName(userName); + entPayRequest.setAmount(amount); + entPayRequest.setDescription("提现"); + entPayRequest.setSpbillCreateIp(IpUtil.getLocalIP()); + wxPayService.getEntPayService().entPay(entPayRequest); + + } + + + /** + * 返回H5 url + * @return url + */ + private String getApiUrl(){ + String apiUrl = redisUtils.getY(ShopKeyUtils.getApiUrl()); + if(StrUtil.isBlank(apiUrl)){ + throw new YshopException("请配置移动端api地址"); + } + return apiUrl; + } + + +} diff --git a/yshop-weixin/src/main/java/co/yixiang/mp/service/WeixinTemplateService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/WeixinTemplateService.java similarity index 93% rename from yshop-weixin/src/main/java/co/yixiang/mp/service/WeixinTemplateService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/WeixinTemplateService.java index 54e6406b..c3b87022 100644 --- a/yshop-weixin/src/main/java/co/yixiang/mp/service/WeixinTemplateService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/WeixinTemplateService.java @@ -1,230 +1,229 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - * 注意: - * 本软件为www.yixiang.co开发研制,未经购买不得使用 - * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) - * 一经发现盗用、分享等行为,将追究法律责任,后果自负 - */ -package co.yixiang.mp.service; - -import cn.hutool.core.util.StrUtil; -import co.yixiang.api.YshopException; -import co.yixiang.constant.ShopConstants; -import co.yixiang.modules.user.domain.YxUser; -import co.yixiang.modules.user.service.YxUserService; -import co.yixiang.modules.user.service.dto.WechatUserDto; -import co.yixiang.modules.wechat.domain.YxWechatTemplate; -import co.yixiang.modules.wechat.service.YxWechatTemplateService; -import co.yixiang.mp.config.WxMpConfiguration; -import co.yixiang.mp.enums.WechatTempateEnum; -import co.yixiang.utils.RedisUtils; -import co.yixiang.utils.ShopKeyUtils; -import me.chanjar.weixin.common.error.WxErrorException; -import me.chanjar.weixin.mp.api.WxMpService; -import me.chanjar.weixin.mp.bean.template.WxMpTemplateData; -import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.HashMap; -import java.util.Map; - -/** - * @ClassName 微信公众号模板通知 - * @Author hupeng <610796224@qq.com> - * @Date 2020/6/27 - **/ -@Service -public class WeixinTemplateService { - - @Autowired - private RedisUtils redisUtils; - - @Autowired - private YxUserService userService; - @Autowired - private YxWechatTemplateService yxWechatTemplateService; - - - - - /** - * 充值成功通知 - * @param time 时间 - * @param price 金额 - * @param uid uid - */ - public void rechargeSuccessNotice(String time,String price,Long uid){ - String openid = this.getUserOpenid(uid); - - if(StrUtil.isBlank(openid)) { - return; - } - - Map map = new HashMap<>(); - map.put("first","您的账户金币发生变动,详情如下:"); - map.put("keyword1","充值"); - map.put("keyword2",time); - map.put("keyword3",price); - map.put("remark", ShopConstants.YSHOP_WECHAT_PUSH_REMARK); - String tempId = this.getTempId(WechatTempateEnum.RECHARGE_SUCCESS.getValue()); - this.sendWxMpTemplateMessage( openid, tempId, this.getSiteUrl()+"/user/account",map); - } - - - /** - * 支付成功通知 - * @param orderId 订单号 - * @param price 金额 - * @param uid uid - */ - public void paySuccessNotice(String orderId,String price,Long uid){ - - String openid = this.getUserOpenid(uid); - - if(StrUtil.isBlank(openid)) { - return; - } - - Map map = new HashMap<>(); - map.put("first","您的订单已支付成功,我们会尽快为您发货。"); - //订单号 - map.put("keyword1",orderId); - map.put("keyword2",price); - map.put("remark",ShopConstants.YSHOP_WECHAT_PUSH_REMARK); - String tempId = this.getTempId(WechatTempateEnum.PAY_SUCCESS.getValue()); - this.sendWxMpTemplateMessage( openid,tempId, this.getSiteUrl()+"/order/detail/"+orderId,map); - } - - /** - * 退款成功通知 - * @param orderId 订单号 - * @param price 金额 - * @param uid uid - * @param time 时间 - */ - public void refundSuccessNotice(String orderId,String price,Long uid,String time){ - - String openid = this.getUserOpenid(uid); - - if(StrUtil.isBlank(openid)) { - return; - } - - Map map = new HashMap<>(); - map.put("first","您的订单退款申请被通过,钱款将很快还至您的支付账户。"); - //订单号 - map.put("keyword1",orderId); - map.put("keyword2",price); - map.put("keyword3", time); - map.put("remark",ShopConstants.YSHOP_WECHAT_PUSH_REMARK); - String tempId = this.getTempId(WechatTempateEnum.REFUND_SUCCESS.getValue()); - this.sendWxMpTemplateMessage( openid,tempId, this.getSiteUrl()+"/order/detail/"+orderId,map); - } - - /** - * 发货成功通知 - * @param orderId 单号 - * @param deliveryName 快递公司 - * @param deliveryId 快递单号 - * @param uid uid - */ - public void deliverySuccessNotice(String orderId,String deliveryName, - String deliveryId,Long uid){ - - String openid = this.getUserOpenid(uid); - - if(StrUtil.isEmpty(openid)) { - return; - } - - Map map = new HashMap<>(); - map.put("first","亲,宝贝已经启程了,好想快点来到你身边。"); - map.put("keyword2",deliveryName); - map.put("keyword1",orderId); - map.put("keyword3",deliveryId); - map.put("remark",ShopConstants.YSHOP_WECHAT_PUSH_REMARK); - String tempId = this.getTempId(WechatTempateEnum.DELIVERY_SUCCESS.getValue()); - this.sendWxMpTemplateMessage( openid,tempId, this.getSiteUrl()+"/order/detail/"+orderId,map); - } - - - /** - * 构建微信模板通知 - * @param openId 单号 - * @param templateId 模板id - * @param url 跳转url - * @param map map内容 - * @return String - */ - private String sendWxMpTemplateMessage(String openId, String templateId, String url, Map map){ - WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder() - .toUser(openId) - .templateId(templateId) - .url(url) - .build(); - map.forEach( (k,v)-> { templateMessage.addData(new WxMpTemplateData(k, v, "#000000"));} ); - String msgId = null; - WxMpService wxService = WxMpConfiguration.getWxMpService(); - try { - msgId = wxService.getTemplateMsgService().sendTemplateMsg(templateMessage); - } catch (WxErrorException e) { - e.printStackTrace(); - } - return msgId; - } - - /** - * 获取模板消息id - * @param key 模板key - * @return string - */ - private String getTempId(String key){ - YxWechatTemplate yxWechatTemplate = yxWechatTemplateService.lambdaQuery() - .eq(YxWechatTemplate::getType,"template") - .eq(YxWechatTemplate::getTempkey,key) - .one(); - if (yxWechatTemplate == null) { - throw new YshopException("请后台配置key:" + key + "模板消息id"); - } - - return yxWechatTemplate.getTempid(); - } - - /** - * 返回H5 url - * @return url - */ - private String getSiteUrl(){ - String apiUrl = redisUtils.getY(ShopKeyUtils.getSiteUrl()); - if(StrUtil.isBlank(apiUrl)){ - return ""; - } - return apiUrl; - } - - /** - * 获取openid - * @param uid uid - * @return String - */ - private String getUserOpenid(Long uid){ - YxUser yxUser = userService.getById(uid); - if(yxUser == null) { - return ""; - } - - WechatUserDto wechatUserDto = yxUser.getWxProfile(); - if(wechatUserDto == null) { - return ""; - } - if(StrUtil.isBlank(wechatUserDto.getOpenid())) { - return ""; - } - return wechatUserDto.getOpenid(); - - } - - -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + * 注意: + * 本软件为www.yixiang.co开发研制,未经购买不得使用 + * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) + * 一经发现盗用、分享等行为,将追究法律责任,后果自负 + */ +package co.yixiang.modules.mp.service; + +import cn.hutool.core.util.StrUtil; +import co.yixiang.api.YshopException; +import co.yixiang.constant.ShopConstants; +import co.yixiang.modules.mp.config.WxMpConfiguration; +import co.yixiang.modules.mp.domain.YxWechatTemplate; +import co.yixiang.modules.user.domain.YxUser; +import co.yixiang.modules.user.service.YxUserService; +import co.yixiang.modules.user.service.dto.WechatUserDto; +import co.yixiang.modules.mp.enums.WechatTempateEnum; +import co.yixiang.utils.RedisUtils; +import co.yixiang.utils.ShopKeyUtils; +import me.chanjar.weixin.common.error.WxErrorException; +import me.chanjar.weixin.mp.api.WxMpService; +import me.chanjar.weixin.mp.bean.template.WxMpTemplateData; +import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; + +/** + * @ClassName 微信公众号模板通知 + * @Author hupeng <610796224@qq.com> + * @Date 2020/6/27 + **/ +@Service +public class WeixinTemplateService { + + @Autowired + private RedisUtils redisUtils; + + @Autowired + private YxUserService userService; + @Autowired + private YxWechatTemplateService yxWechatTemplateService; + + + + + /** + * 充值成功通知 + * @param time 时间 + * @param price 金额 + * @param uid uid + */ + public void rechargeSuccessNotice(String time,String price,Long uid){ + String openid = this.getUserOpenid(uid); + + if(StrUtil.isBlank(openid)) { + return; + } + + Map map = new HashMap<>(); + map.put("first","您的账户金币发生变动,详情如下:"); + map.put("keyword1","充值"); + map.put("keyword2",time); + map.put("keyword3",price); + map.put("remark", ShopConstants.YSHOP_WECHAT_PUSH_REMARK); + String tempId = this.getTempId(WechatTempateEnum.RECHARGE_SUCCESS.getValue()); + this.sendWxMpTemplateMessage( openid, tempId, this.getSiteUrl()+"/user/account",map); + } + + + /** + * 支付成功通知 + * @param orderId 订单号 + * @param price 金额 + * @param uid uid + */ + public void paySuccessNotice(String orderId,String price,Long uid){ + + String openid = this.getUserOpenid(uid); + + if(StrUtil.isBlank(openid)) { + return; + } + + Map map = new HashMap<>(); + map.put("first","您的订单已支付成功,我们会尽快为您发货。"); + //订单号 + map.put("keyword1",orderId); + map.put("keyword2",price); + map.put("remark",ShopConstants.YSHOP_WECHAT_PUSH_REMARK); + String tempId = this.getTempId(WechatTempateEnum.PAY_SUCCESS.getValue()); + this.sendWxMpTemplateMessage( openid,tempId, this.getSiteUrl()+"/order/detail/"+orderId,map); + } + + /** + * 退款成功通知 + * @param orderId 订单号 + * @param price 金额 + * @param uid uid + * @param time 时间 + */ + public void refundSuccessNotice(String orderId,String price,Long uid,String time){ + + String openid = this.getUserOpenid(uid); + + if(StrUtil.isBlank(openid)) { + return; + } + + Map map = new HashMap<>(); + map.put("first","您的订单退款申请被通过,钱款将很快还至您的支付账户。"); + //订单号 + map.put("keyword1",orderId); + map.put("keyword2",price); + map.put("keyword3", time); + map.put("remark",ShopConstants.YSHOP_WECHAT_PUSH_REMARK); + String tempId = this.getTempId(WechatTempateEnum.REFUND_SUCCESS.getValue()); + this.sendWxMpTemplateMessage( openid,tempId, this.getSiteUrl()+"/order/detail/"+orderId,map); + } + + /** + * 发货成功通知 + * @param orderId 单号 + * @param deliveryName 快递公司 + * @param deliveryId 快递单号 + * @param uid uid + */ + public void deliverySuccessNotice(String orderId,String deliveryName, + String deliveryId,Long uid){ + + String openid = this.getUserOpenid(uid); + + if(StrUtil.isEmpty(openid)) { + return; + } + + Map map = new HashMap<>(); + map.put("first","亲,宝贝已经启程了,好想快点来到你身边。"); + map.put("keyword2",deliveryName); + map.put("keyword1",orderId); + map.put("keyword3",deliveryId); + map.put("remark",ShopConstants.YSHOP_WECHAT_PUSH_REMARK); + String tempId = this.getTempId(WechatTempateEnum.DELIVERY_SUCCESS.getValue()); + this.sendWxMpTemplateMessage( openid,tempId, this.getSiteUrl()+"/order/detail/"+orderId,map); + } + + + /** + * 构建微信模板通知 + * @param openId 单号 + * @param templateId 模板id + * @param url 跳转url + * @param map map内容 + * @return String + */ + private String sendWxMpTemplateMessage(String openId, String templateId, String url, Map map){ + WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder() + .toUser(openId) + .templateId(templateId) + .url(url) + .build(); + map.forEach( (k,v)-> { templateMessage.addData(new WxMpTemplateData(k, v, "#000000"));} ); + String msgId = null; + WxMpService wxService = WxMpConfiguration.getWxMpService(); + try { + msgId = wxService.getTemplateMsgService().sendTemplateMsg(templateMessage); + } catch (WxErrorException e) { + e.printStackTrace(); + } + return msgId; + } + + /** + * 获取模板消息id + * @param key 模板key + * @return string + */ + private String getTempId(String key){ + YxWechatTemplate yxWechatTemplate = yxWechatTemplateService.lambdaQuery() + .eq(YxWechatTemplate::getType,"template") + .eq(YxWechatTemplate::getTempkey,key) + .one(); + if (yxWechatTemplate == null) { + throw new YshopException("请后台配置key:" + key + "模板消息id"); + } + + return yxWechatTemplate.getTempid(); + } + + /** + * 返回H5 url + * @return url + */ + private String getSiteUrl(){ + String apiUrl = redisUtils.getY(ShopKeyUtils.getSiteUrl()); + if(StrUtil.isBlank(apiUrl)){ + return ""; + } + return apiUrl; + } + + /** + * 获取openid + * @param uid uid + * @return String + */ + private String getUserOpenid(Long uid){ + YxUser yxUser = userService.getById(uid); + if(yxUser == null) { + return ""; + } + + WechatUserDto wechatUserDto = yxUser.getWxProfile(); + if(wechatUserDto == null) { + return ""; + } + if(StrUtil.isBlank(wechatUserDto.getOpenid())) { + return ""; + } + return wechatUserDto.getOpenid(); + + } + + +} diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxArticleService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxArticleService.java similarity index 85% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxArticleService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxArticleService.java index 9a14f2f0..ea3f3a46 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxArticleService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxArticleService.java @@ -6,13 +6,13 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service; +package co.yixiang.modules.mp.service; import co.yixiang.common.service.BaseService; -import co.yixiang.modules.wechat.domain.YxArticle; -import co.yixiang.modules.wechat.service.dto.YxArticleDto; -import co.yixiang.modules.wechat.service.dto.YxArticleQueryCriteria; -import co.yixiang.modules.wechat.vo.YxArticleQueryVo; +import co.yixiang.modules.mp.service.dto.YxArticleDto; +import co.yixiang.modules.mp.service.dto.YxArticleQueryCriteria; +import co.yixiang.modules.mp.domain.YxArticle; +import co.yixiang.modules.mp.vo.YxArticleQueryVo; import org.springframework.data.domain.Pageable; import javax.servlet.http.HttpServletResponse; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatLiveGoodsService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatLiveGoodsService.java similarity index 88% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatLiveGoodsService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatLiveGoodsService.java index d45943db..a620a740 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatLiveGoodsService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatLiveGoodsService.java @@ -6,12 +6,12 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service; +package co.yixiang.modules.mp.service; import co.yixiang.common.service.BaseService; -import co.yixiang.modules.wechat.domain.YxWechatLiveGoods; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveGoodsDto; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveGoodsQueryCriteria; +import co.yixiang.modules.mp.service.dto.YxWechatLiveGoodsDto; +import co.yixiang.modules.mp.service.dto.YxWechatLiveGoodsQueryCriteria; +import co.yixiang.modules.mp.domain.YxWechatLiveGoods; import org.springframework.data.domain.Pageable; import javax.servlet.http.HttpServletResponse; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatLiveService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatLiveService.java similarity index 84% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatLiveService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatLiveService.java index faf886d6..05d8dd5e 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatLiveService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatLiveService.java @@ -6,20 +6,19 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service; +package co.yixiang.modules.mp.service; import cn.binarywang.wx.miniapp.bean.WxMaLiveResult; import co.yixiang.common.service.BaseService; -import co.yixiang.modules.wechat.domain.YxWechatLive; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveDto; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveQueryCriteria; -import co.yixiang.modules.wechat.vo.WechatLiveVo; +import co.yixiang.modules.mp.service.dto.YxWechatLiveDto; +import co.yixiang.modules.mp.service.dto.YxWechatLiveQueryCriteria; +import co.yixiang.modules.mp.vo.WechatLiveVo; +import co.yixiang.modules.mp.domain.YxWechatLive; import org.springframework.data.domain.Pageable; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; -import java.util.Map; /** * @author hupeng diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatMenuService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatMenuService.java similarity index 82% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatMenuService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatMenuService.java index 076491bd..c321f4e2 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatMenuService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatMenuService.java @@ -3,12 +3,12 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service; +package co.yixiang.modules.mp.service; import co.yixiang.common.service.BaseService; -import co.yixiang.modules.wechat.domain.YxWechatMenu; -import co.yixiang.modules.wechat.service.dto.YxWechatMenuDto; -import co.yixiang.modules.wechat.service.dto.YxWechatMenuQueryCriteria; +import co.yixiang.modules.mp.service.dto.YxWechatMenuDto; +import co.yixiang.modules.mp.service.dto.YxWechatMenuQueryCriteria; +import co.yixiang.modules.mp.domain.YxWechatMenu; import org.springframework.data.domain.Pageable; import javax.servlet.http.HttpServletResponse; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatReplyService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatReplyService.java similarity index 83% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatReplyService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatReplyService.java index 5ade064a..1d03e6ae 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatReplyService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatReplyService.java @@ -3,12 +3,12 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service; +package co.yixiang.modules.mp.service; import co.yixiang.common.service.BaseService; -import co.yixiang.modules.wechat.domain.YxWechatReply; -import co.yixiang.modules.wechat.service.dto.YxWechatReplyDto; -import co.yixiang.modules.wechat.service.dto.YxWechatReplyQueryCriteria; +import co.yixiang.modules.mp.service.dto.YxWechatReplyDto; +import co.yixiang.modules.mp.service.dto.YxWechatReplyQueryCriteria; +import co.yixiang.modules.mp.domain.YxWechatReply; import org.springframework.data.domain.Pageable; import javax.servlet.http.HttpServletResponse; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatTemplateService.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatTemplateService.java similarity index 79% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatTemplateService.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatTemplateService.java index abae632f..edd5a61e 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/YxWechatTemplateService.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/YxWechatTemplateService.java @@ -1,49 +1,49 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - - */ -package co.yixiang.modules.wechat.service; - -import co.yixiang.common.service.BaseService; -import co.yixiang.modules.wechat.domain.YxWechatTemplate; -import co.yixiang.modules.wechat.service.dto.YxWechatTemplateDto; -import co.yixiang.modules.wechat.service.dto.YxWechatTemplateQueryCriteria; -import org.springframework.data.domain.Pageable; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.List; -import java.util.Map; - -/** -* @author hupeng -* @date 2020-05-12 -*/ -public interface YxWechatTemplateService extends BaseService{ - -/** - * 查询数据分页 - * @param criteria 条件 - * @param pageable 分页参数 - * @return Map - */ - Map queryAll(YxWechatTemplateQueryCriteria criteria, Pageable pageable); - - /** - * 查询所有数据不分页 - * @param criteria 条件参数 - * @return List - */ - List queryAll(YxWechatTemplateQueryCriteria criteria); - - /** - * 导出数据 - * @param all 待导出的数据 - * @param response / - * @throws IOException / - */ - void download(List all, HttpServletResponse response) throws IOException; - - YxWechatTemplate findByTempkey(String recharge_success_key); -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + + */ +package co.yixiang.modules.mp.service; + +import co.yixiang.common.service.BaseService; +import co.yixiang.modules.mp.service.dto.YxWechatTemplateQueryCriteria; +import co.yixiang.modules.mp.domain.YxWechatTemplate; +import co.yixiang.modules.mp.service.dto.YxWechatTemplateDto; +import org.springframework.data.domain.Pageable; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.List; +import java.util.Map; + +/** +* @author hupeng +* @date 2020-05-12 +*/ +public interface YxWechatTemplateService extends BaseService{ + +/** + * 查询数据分页 + * @param criteria 条件 + * @param pageable 分页参数 + * @return Map + */ + Map queryAll(YxWechatTemplateQueryCriteria criteria, Pageable pageable); + + /** + * 查询所有数据不分页 + * @param criteria 条件参数 + * @return List + */ + List queryAll(YxWechatTemplateQueryCriteria criteria); + + /** + * 导出数据 + * @param all 待导出的数据 + * @param response / + * @throws IOException / + */ + void download(List all, HttpServletResponse response) throws IOException; + + YxWechatTemplate findByTempkey(String recharge_success_key); +} diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxArticleDto.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxArticleDto.java similarity index 96% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxArticleDto.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxArticleDto.java index 2b809d41..8281c908 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxArticleDto.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxArticleDto.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxArticleQueryCriteria.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxArticleQueryCriteria.java similarity index 80% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxArticleQueryCriteria.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxArticleQueryCriteria.java index 9ee123ea..5c112ec3 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxArticleQueryCriteria.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxArticleQueryCriteria.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveDto.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveDto.java similarity index 98% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveDto.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveDto.java index c2aeebe2..4e38a6f7 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveDto.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveDto.java @@ -6,7 +6,7 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveGoodsDto.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveGoodsDto.java similarity index 97% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveGoodsDto.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveGoodsDto.java index cfdfc591..d8fa81e9 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveGoodsDto.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveGoodsDto.java @@ -6,7 +6,7 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveGoodsQueryCriteria.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveGoodsQueryCriteria.java similarity index 92% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveGoodsQueryCriteria.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveGoodsQueryCriteria.java index 15c1b33e..4635a221 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveGoodsQueryCriteria.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveGoodsQueryCriteria.java @@ -6,7 +6,7 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import co.yixiang.annotation.Query; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveQueryCriteria.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveQueryCriteria.java similarity index 90% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveQueryCriteria.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveQueryCriteria.java index 19b0d982..8e9dcd71 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatLiveQueryCriteria.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatLiveQueryCriteria.java @@ -6,7 +6,7 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatMenuDto.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatMenuDto.java similarity index 88% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatMenuDto.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatMenuDto.java index 5a6e5e12..efb9de07 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatMenuDto.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatMenuDto.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatMenuQueryCriteria.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatMenuQueryCriteria.java similarity index 80% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatMenuQueryCriteria.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatMenuQueryCriteria.java index 0b207977..b0a3193c 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatMenuQueryCriteria.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatMenuQueryCriteria.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatReplyDto.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatReplyDto.java similarity index 92% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatReplyDto.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatReplyDto.java index 59bdd380..a65d6733 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatReplyDto.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatReplyDto.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatReplyQueryCriteria.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatReplyQueryCriteria.java similarity index 81% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatReplyQueryCriteria.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatReplyQueryCriteria.java index 6a7efe0e..d40a46ea 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatReplyQueryCriteria.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatReplyQueryCriteria.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.dto; +package co.yixiang.modules.mp.service.dto; import lombok.Data; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatTemplateDto.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatTemplateDto.java similarity index 88% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatTemplateDto.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatTemplateDto.java index 07d532d6..8b50c5ad 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatTemplateDto.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatTemplateDto.java @@ -1,41 +1,41 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - - */ -package co.yixiang.modules.wechat.service.dto; - -import lombok.Data; - -import java.io.Serializable; - -/** -* @author hupeng -* @date 2020-05-12 -*/ -@Data -public class YxWechatTemplateDto implements Serializable { - - /** 模板id */ - private Integer id; - - /** 模板编号 */ - private String tempkey; - - /** 模板名 */ - private String name; - - /** 回复内容 */ - private String content; - - /** 模板ID */ - private String tempid; - - /** 添加时间 */ - private String addTime; - - /** 状态 */ - private Integer status; - /** 类型:template:模板消息 subscribe:订阅消息 */ - private String type; -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + + */ +package co.yixiang.modules.mp.service.dto; + +import lombok.Data; + +import java.io.Serializable; + +/** +* @author hupeng +* @date 2020-05-12 +*/ +@Data +public class YxWechatTemplateDto implements Serializable { + + /** 模板id */ + private Integer id; + + /** 模板编号 */ + private String tempkey; + + /** 模板名 */ + private String name; + + /** 回复内容 */ + private String content; + + /** 模板ID */ + private String tempid; + + /** 添加时间 */ + private String addTime; + + /** 状态 */ + private Integer status; + /** 类型:template:模板消息 subscribe:订阅消息 */ + private String type; +} diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatTemplateQueryCriteria.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatTemplateQueryCriteria.java similarity index 76% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatTemplateQueryCriteria.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatTemplateQueryCriteria.java index 2574f1b6..7b335462 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/dto/YxWechatTemplateQueryCriteria.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/dto/YxWechatTemplateQueryCriteria.java @@ -1,16 +1,16 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - - */ -package co.yixiang.modules.wechat.service.dto; - -import lombok.Data; - -/** -* @author hupeng -* @date 2020-05-12 -*/ -@Data -public class YxWechatTemplateQueryCriteria{ -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + + */ +package co.yixiang.modules.mp.service.dto; + +import lombok.Data; + +/** +* @author hupeng +* @date 2020-05-12 +*/ +@Data +public class YxWechatTemplateQueryCriteria{ +} diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxArticleServiceImpl.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxArticleServiceImpl.java similarity index 92% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxArticleServiceImpl.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxArticleServiceImpl.java index dc39b664..6e5b8201 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxArticleServiceImpl.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxArticleServiceImpl.java @@ -6,17 +6,17 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.impl; +package co.yixiang.modules.mp.service.impl; import co.yixiang.common.service.impl.BaseServiceImpl; import co.yixiang.common.utils.QueryHelpPlus; import co.yixiang.dozer.service.IGenerator; -import co.yixiang.modules.wechat.domain.YxArticle; -import co.yixiang.modules.wechat.service.YxArticleService; -import co.yixiang.modules.wechat.service.dto.YxArticleDto; -import co.yixiang.modules.wechat.service.dto.YxArticleQueryCriteria; -import co.yixiang.modules.wechat.service.mapper.ArticleMapper; -import co.yixiang.modules.wechat.vo.YxArticleQueryVo; +import co.yixiang.modules.mp.service.mapper.ArticleMapper; +import co.yixiang.modules.mp.domain.YxArticle; +import co.yixiang.modules.mp.service.YxArticleService; +import co.yixiang.modules.mp.service.dto.YxArticleDto; +import co.yixiang.modules.mp.service.dto.YxArticleQueryCriteria; +import co.yixiang.modules.mp.vo.YxArticleQueryVo; import co.yixiang.utils.FileUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatLiveGoodsServiceImpl.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatLiveGoodsServiceImpl.java similarity index 95% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatLiveGoodsServiceImpl.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatLiveGoodsServiceImpl.java index b504998e..ddfb8d51 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatLiveGoodsServiceImpl.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatLiveGoodsServiceImpl.java @@ -6,7 +6,7 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.impl; +package co.yixiang.modules.mp.service.impl; import cn.binarywang.wx.miniapp.api.WxMaService; import cn.binarywang.wx.miniapp.bean.WxMaLiveInfo; @@ -19,12 +19,12 @@ import co.yixiang.common.utils.QueryHelpPlus; import co.yixiang.dozer.service.IGenerator; import co.yixiang.enums.LiveGoodsEnum; import co.yixiang.exception.BadRequestException; -import co.yixiang.modules.wechat.domain.YxWechatLiveGoods; -import co.yixiang.modules.wechat.service.YxWechatLiveGoodsService; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveGoodsDto; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveGoodsQueryCriteria; -import co.yixiang.modules.wechat.service.mapper.YxWechatLiveGoodsMapper; -import co.yixiang.tools.config.WxMaConfiguration; +import co.yixiang.modules.mp.service.mapper.YxWechatLiveGoodsMapper; +import co.yixiang.modules.mp.domain.YxWechatLiveGoods; +import co.yixiang.modules.mp.service.YxWechatLiveGoodsService; +import co.yixiang.modules.mp.service.dto.YxWechatLiveGoodsDto; +import co.yixiang.modules.mp.service.dto.YxWechatLiveGoodsQueryCriteria; +import co.yixiang.modules.mp.config.WxMaConfiguration; import co.yixiang.utils.FileUtil; import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatLiveServiceImpl.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatLiveServiceImpl.java similarity index 93% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatLiveServiceImpl.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatLiveServiceImpl.java index 7988aa07..11666331 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatLiveServiceImpl.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatLiveServiceImpl.java @@ -6,7 +6,7 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.impl; +package co.yixiang.modules.mp.service.impl; import cn.binarywang.wx.miniapp.api.WxMaService; import cn.binarywang.wx.miniapp.bean.WxMaLiveInfo; @@ -17,16 +17,16 @@ import co.yixiang.common.service.impl.BaseServiceImpl; import co.yixiang.common.utils.QueryHelpPlus; import co.yixiang.dozer.service.IGenerator; import co.yixiang.exception.BadRequestException; -import co.yixiang.modules.wechat.domain.YxWechatLive; -import co.yixiang.modules.wechat.domain.YxWechatLiveGoods; -import co.yixiang.modules.wechat.service.YxWechatLiveGoodsService; -import co.yixiang.modules.wechat.service.YxWechatLiveService; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveDto; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveGoodsDto; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveQueryCriteria; -import co.yixiang.modules.wechat.service.mapper.YxWechatLiveMapper; -import co.yixiang.modules.wechat.vo.WechatLiveVo; -import co.yixiang.tools.config.WxMaConfiguration; +import co.yixiang.modules.mp.domain.YxWechatLiveGoods; +import co.yixiang.modules.mp.service.YxWechatLiveGoodsService; +import co.yixiang.modules.mp.service.YxWechatLiveService; +import co.yixiang.modules.mp.service.dto.YxWechatLiveDto; +import co.yixiang.modules.mp.service.dto.YxWechatLiveGoodsDto; +import co.yixiang.modules.mp.service.dto.YxWechatLiveQueryCriteria; +import co.yixiang.modules.mp.service.mapper.YxWechatLiveMapper; +import co.yixiang.modules.mp.vo.WechatLiveVo; +import co.yixiang.modules.mp.domain.YxWechatLive; +import co.yixiang.modules.mp.config.WxMaConfiguration; import co.yixiang.utils.FileUtil; import co.yixiang.utils.OrderUtil; import co.yixiang.utils.StringUtils; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatMenuServiceImpl.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatMenuServiceImpl.java similarity index 88% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatMenuServiceImpl.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatMenuServiceImpl.java index ae11aa74..55eb2870 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatMenuServiceImpl.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatMenuServiceImpl.java @@ -3,16 +3,16 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.impl; +package co.yixiang.modules.mp.service.impl; import co.yixiang.common.service.impl.BaseServiceImpl; import co.yixiang.common.utils.QueryHelpPlus; import co.yixiang.dozer.service.IGenerator; -import co.yixiang.modules.wechat.domain.YxWechatMenu; -import co.yixiang.modules.wechat.service.YxWechatMenuService; -import co.yixiang.modules.wechat.service.dto.YxWechatMenuDto; -import co.yixiang.modules.wechat.service.dto.YxWechatMenuQueryCriteria; -import co.yixiang.modules.wechat.service.mapper.WechatMenuMapper; +import co.yixiang.modules.mp.service.mapper.WechatMenuMapper; +import co.yixiang.modules.mp.domain.YxWechatMenu; +import co.yixiang.modules.mp.service.YxWechatMenuService; +import co.yixiang.modules.mp.service.dto.YxWechatMenuDto; +import co.yixiang.modules.mp.service.dto.YxWechatMenuQueryCriteria; import co.yixiang.utils.FileUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageInfo; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatReplyServiceImpl.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatReplyServiceImpl.java similarity index 91% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatReplyServiceImpl.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatReplyServiceImpl.java index 9504941b..60f73d23 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatReplyServiceImpl.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatReplyServiceImpl.java @@ -3,17 +3,17 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.impl; +package co.yixiang.modules.mp.service.impl; import co.yixiang.common.service.impl.BaseServiceImpl; import co.yixiang.common.utils.QueryHelpPlus; import co.yixiang.dozer.service.IGenerator; import co.yixiang.exception.EntityExistException; -import co.yixiang.modules.wechat.domain.YxWechatReply; -import co.yixiang.modules.wechat.service.YxWechatReplyService; -import co.yixiang.modules.wechat.service.dto.YxWechatReplyDto; -import co.yixiang.modules.wechat.service.dto.YxWechatReplyQueryCriteria; -import co.yixiang.modules.wechat.service.mapper.WechatReplyMapper; +import co.yixiang.modules.mp.service.mapper.WechatReplyMapper; +import co.yixiang.modules.mp.domain.YxWechatReply; +import co.yixiang.modules.mp.service.YxWechatReplyService; +import co.yixiang.modules.mp.service.dto.YxWechatReplyDto; +import co.yixiang.modules.mp.service.dto.YxWechatReplyQueryCriteria; import co.yixiang.utils.FileUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageInfo; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatTemplateServiceImpl.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatTemplateServiceImpl.java similarity index 86% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatTemplateServiceImpl.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatTemplateServiceImpl.java index 31b300f6..fea809f1 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/impl/YxWechatTemplateServiceImpl.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/impl/YxWechatTemplateServiceImpl.java @@ -1,89 +1,89 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - - */ -package co.yixiang.modules.wechat.service.impl; - -import co.yixiang.common.service.impl.BaseServiceImpl; -import co.yixiang.common.utils.QueryHelpPlus; -import co.yixiang.dozer.service.IGenerator; -import co.yixiang.modules.wechat.domain.YxWechatTemplate; -import co.yixiang.modules.wechat.service.YxWechatTemplateService; -import co.yixiang.modules.wechat.service.dto.YxWechatTemplateDto; -import co.yixiang.modules.wechat.service.dto.YxWechatTemplateQueryCriteria; -import co.yixiang.modules.wechat.service.mapper.WechatTemplateMapper; -import co.yixiang.utils.FileUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageInfo; -import lombok.AllArgsConstructor; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Propagation; -import org.springframework.transaction.annotation.Transactional; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; - -// 默认不使用缓存 -//import org.springframework.cache.annotation.CacheConfig; -//import org.springframework.cache.annotation.CacheEvict; -//import org.springframework.cache.annotation.Cacheable; - -/** -* @author hupeng -* @date 2020-05-12 -*/ -@Service -@AllArgsConstructor -//@CacheConfig(cacheNames = "yxWechatTemplate") -@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) -public class YxWechatTemplateServiceImpl extends BaseServiceImpl implements YxWechatTemplateService { - - private final IGenerator generator; - - @Override - //@Cacheable - public Map queryAll(YxWechatTemplateQueryCriteria criteria, Pageable pageable) { - getPage(pageable); - PageInfo page = new PageInfo<>(queryAll(criteria)); - Map map = new LinkedHashMap<>(2); - map.put("content", generator.convert(page.getList(), YxWechatTemplateDto.class)); - map.put("totalElements", page.getTotal()); - return map; - } - - - @Override - //@Cacheable - public List queryAll(YxWechatTemplateQueryCriteria criteria){ - return baseMapper.selectList(QueryHelpPlus.getPredicate(YxWechatTemplate.class, criteria)); - } - - - @Override - public void download(List all, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - for (YxWechatTemplateDto yxWechatTemplate : all) { - Map map = new LinkedHashMap<>(); - map.put("模板编号", yxWechatTemplate.getTempkey()); - map.put("模板名", yxWechatTemplate.getName()); - map.put("回复内容", yxWechatTemplate.getContent()); - map.put("模板ID", yxWechatTemplate.getTempid()); - map.put("添加时间", yxWechatTemplate.getAddTime()); - map.put("状态", yxWechatTemplate.getStatus()); - list.add(map); - } - FileUtil.downloadExcel(list, response); - } - - @Override - public YxWechatTemplate findByTempkey(String recharge_success_key) { - return this.getOne(new QueryWrapper().lambda() - .eq(YxWechatTemplate::getTempkey,recharge_success_key)); - } -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + + */ +package co.yixiang.modules.mp.service.impl; + +import co.yixiang.common.service.impl.BaseServiceImpl; +import co.yixiang.common.utils.QueryHelpPlus; +import co.yixiang.dozer.service.IGenerator; +import co.yixiang.modules.mp.domain.YxWechatTemplate; +import co.yixiang.modules.mp.service.YxWechatTemplateService; +import co.yixiang.modules.mp.service.dto.YxWechatTemplateQueryCriteria; +import co.yixiang.modules.mp.service.dto.YxWechatTemplateDto; +import co.yixiang.modules.mp.service.mapper.WechatTemplateMapper; +import co.yixiang.utils.FileUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageInfo; +import lombok.AllArgsConstructor; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +// 默认不使用缓存 +//import org.springframework.cache.annotation.CacheConfig; +//import org.springframework.cache.annotation.CacheEvict; +//import org.springframework.cache.annotation.Cacheable; + +/** +* @author hupeng +* @date 2020-05-12 +*/ +@Service +@AllArgsConstructor +//@CacheConfig(cacheNames = "yxWechatTemplate") +@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) +public class YxWechatTemplateServiceImpl extends BaseServiceImpl implements YxWechatTemplateService { + + private final IGenerator generator; + + @Override + //@Cacheable + public Map queryAll(YxWechatTemplateQueryCriteria criteria, Pageable pageable) { + getPage(pageable); + PageInfo page = new PageInfo<>(queryAll(criteria)); + Map map = new LinkedHashMap<>(2); + map.put("content", generator.convert(page.getList(), YxWechatTemplateDto.class)); + map.put("totalElements", page.getTotal()); + return map; + } + + + @Override + //@Cacheable + public List queryAll(YxWechatTemplateQueryCriteria criteria){ + return baseMapper.selectList(QueryHelpPlus.getPredicate(YxWechatTemplate.class, criteria)); + } + + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (YxWechatTemplateDto yxWechatTemplate : all) { + Map map = new LinkedHashMap<>(); + map.put("模板编号", yxWechatTemplate.getTempkey()); + map.put("模板名", yxWechatTemplate.getName()); + map.put("回复内容", yxWechatTemplate.getContent()); + map.put("模板ID", yxWechatTemplate.getTempid()); + map.put("添加时间", yxWechatTemplate.getAddTime()); + map.put("状态", yxWechatTemplate.getStatus()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } + + @Override + public YxWechatTemplate findByTempkey(String recharge_success_key) { + return this.getOne(new QueryWrapper().lambda() + .eq(YxWechatTemplate::getTempkey,recharge_success_key)); + } +} diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/ArticleMapper.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/ArticleMapper.java similarity index 83% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/ArticleMapper.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/ArticleMapper.java index 45fac71f..2ceeb01c 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/ArticleMapper.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/ArticleMapper.java @@ -3,10 +3,10 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.mapper; +package co.yixiang.modules.mp.service.mapper; import co.yixiang.common.mapper.CoreMapper; -import co.yixiang.modules.wechat.domain.YxArticle; +import co.yixiang.modules.mp.domain.YxArticle; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; import org.springframework.stereotype.Repository; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatMenuMapper.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatMenuMapper.java similarity index 74% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatMenuMapper.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatMenuMapper.java index e6b96022..9c66167c 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatMenuMapper.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatMenuMapper.java @@ -3,10 +3,10 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.mapper; +package co.yixiang.modules.mp.service.mapper; import co.yixiang.common.mapper.CoreMapper; -import co.yixiang.modules.wechat.domain.YxWechatMenu; +import co.yixiang.modules.mp.domain.YxWechatMenu; import org.springframework.stereotype.Repository; /** diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatReplyMapper.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatReplyMapper.java similarity index 74% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatReplyMapper.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatReplyMapper.java index 4f3f5711..c36af0db 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatReplyMapper.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatReplyMapper.java @@ -3,10 +3,10 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.mapper; +package co.yixiang.modules.mp.service.mapper; import co.yixiang.common.mapper.CoreMapper; -import co.yixiang.modules.wechat.domain.YxWechatReply; +import co.yixiang.modules.mp.domain.YxWechatReply; import org.springframework.stereotype.Repository; /** diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatTemplateMapper.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatTemplateMapper.java similarity index 74% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatTemplateMapper.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatTemplateMapper.java index 8382315c..344269b8 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/WechatTemplateMapper.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/WechatTemplateMapper.java @@ -3,10 +3,10 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.modules.wechat.service.mapper; +package co.yixiang.modules.mp.service.mapper; import co.yixiang.common.mapper.CoreMapper; -import co.yixiang.modules.wechat.domain.YxWechatTemplate; +import co.yixiang.modules.mp.domain.YxWechatTemplate; import org.springframework.stereotype.Repository; /** diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/YxWechatLiveGoodsMapper.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/YxWechatLiveGoodsMapper.java similarity index 84% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/YxWechatLiveGoodsMapper.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/YxWechatLiveGoodsMapper.java index 971ec093..bbec9b2c 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/YxWechatLiveGoodsMapper.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/YxWechatLiveGoodsMapper.java @@ -6,10 +6,10 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.mapper; +package co.yixiang.modules.mp.service.mapper; import co.yixiang.common.mapper.CoreMapper; -import co.yixiang.modules.wechat.domain.YxWechatLiveGoods; +import co.yixiang.modules.mp.domain.YxWechatLiveGoods; import org.springframework.stereotype.Repository; /** diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/YxWechatLiveMapper.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/YxWechatLiveMapper.java similarity index 84% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/YxWechatLiveMapper.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/YxWechatLiveMapper.java index 297684a4..bb8ac632 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/service/mapper/YxWechatLiveMapper.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/service/mapper/YxWechatLiveMapper.java @@ -6,10 +6,10 @@ * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) * 一经发现盗用、分享等行为,将追究法律责任,后果自负 */ -package co.yixiang.modules.wechat.service.mapper; +package co.yixiang.modules.mp.service.mapper; import co.yixiang.common.mapper.CoreMapper; -import co.yixiang.modules.wechat.domain.YxWechatLive; +import co.yixiang.modules.mp.domain.YxWechatLive; import org.springframework.stereotype.Repository; /** diff --git a/yshop-weixin/src/main/java/co/yixiang/mp/utils/JsonUtils.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/JsonUtils.java similarity index 91% rename from yshop-weixin/src/main/java/co/yixiang/mp/utils/JsonUtils.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/JsonUtils.java index bea95113..62c7cec0 100644 --- a/yshop-weixin/src/main/java/co/yixiang/mp/utils/JsonUtils.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/JsonUtils.java @@ -3,7 +3,7 @@ * All rights reserved, Designed By www.yixiang.co */ -package co.yixiang.mp.utils; +package co.yixiang.modules.mp.utils; import com.google.gson.Gson; import com.google.gson.GsonBuilder; diff --git a/yshop-weixin/src/main/java/co/yixiang/mp/utils/URLUtils.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/URLUtils.java similarity index 95% rename from yshop-weixin/src/main/java/co/yixiang/mp/utils/URLUtils.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/URLUtils.java index a04b5fdd..49d3f976 100644 --- a/yshop-weixin/src/main/java/co/yixiang/mp/utils/URLUtils.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/URLUtils.java @@ -1,81 +1,81 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - - */ -package co.yixiang.mp.utils; - -import java.util.HashMap; -import java.util.Map; - -/** - * URLUtils - * @author Kevin - * @date 2019-03-20 13:39 - */ -public class URLUtils { - - /** - * 获取URL中的某个参数 - * @param url - * @param name - * @return - */ - public static String getParam(String url, String name) { - return urlSplit(url).get( name ); - } - - /** - * 去掉url中的路径,留下请求参数部分 - * @param strURL url地址 - * @return url请求参数部分 - */ - private static String truncateUrlPage(String strURL){ - String strAllParam=null; - String[] arrSplit=null; - strURL=strURL.trim().toLowerCase(); - arrSplit=strURL.split("[?]"); - if(strURL.length()>1){ - if(arrSplit.length>1){ - for (int i=1;i urlSplit(String URL){ - Map mapRequest = new HashMap(); - String[] arrSplit=null; - String strUrlParam= truncateUrlPage(URL); - if(strUrlParam==null){ - return mapRequest; - } - arrSplit=strUrlParam.split("[&]"); - for(String strSplit:arrSplit){ - String[] arrSplitEqual=null; - arrSplitEqual= strSplit.split("[=]"); - //解析出键值 - if(arrSplitEqual.length>1){ - //正确解析 - mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]); - }else{ - if(arrSplitEqual[0]!=""){ - //只有参数没有值,不加入 - mapRequest.put(arrSplitEqual[0], ""); - } - } - } - return mapRequest; - } - - -} - +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + + */ +package co.yixiang.modules.mp.utils; + +import java.util.HashMap; +import java.util.Map; + +/** + * URLUtils + * @author Kevin + * @date 2019-03-20 13:39 + */ +public class URLUtils { + + /** + * 获取URL中的某个参数 + * @param url + * @param name + * @return + */ + public static String getParam(String url, String name) { + return urlSplit(url).get( name ); + } + + /** + * 去掉url中的路径,留下请求参数部分 + * @param strURL url地址 + * @return url请求参数部分 + */ + private static String truncateUrlPage(String strURL){ + String strAllParam=null; + String[] arrSplit=null; + strURL=strURL.trim().toLowerCase(); + arrSplit=strURL.split("[?]"); + if(strURL.length()>1){ + if(arrSplit.length>1){ + for (int i=1;i urlSplit(String URL){ + Map mapRequest = new HashMap(); + String[] arrSplit=null; + String strUrlParam= truncateUrlPage(URL); + if(strUrlParam==null){ + return mapRequest; + } + arrSplit=strUrlParam.split("[&]"); + for(String strSplit:arrSplit){ + String[] arrSplitEqual=null; + arrSplitEqual= strSplit.split("[=]"); + //解析出键值 + if(arrSplitEqual.length>1){ + //正确解析 + mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]); + }else{ + if(arrSplitEqual[0]!=""){ + //只有参数没有值,不加入 + mapRequest.put(arrSplitEqual[0], ""); + } + } + } + return mapRequest; + } + + +} + diff --git a/yshop-weixin/src/main/java/co/yixiang/mp/utils/YshopUtils.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/YshopUtils.java similarity index 92% rename from yshop-weixin/src/main/java/co/yixiang/mp/utils/YshopUtils.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/YshopUtils.java index 33b98391..438844a1 100644 --- a/yshop-weixin/src/main/java/co/yixiang/mp/utils/YshopUtils.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/utils/YshopUtils.java @@ -1,24 +1,24 @@ -/** - * Copyright (C) 2018-2020 - * All rights reserved, Designed By www.yixiang.co - * 注意: - * 本软件为www.yixiang.co开发研制,未经购买不得使用 - * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) - * 一经发现盗用、分享等行为,将追究法律责任,后果自负 - */ -package co.yixiang.mp.utils; - - -import co.yixiang.modules.user.service.dto.WechatUserDto; -import com.alibaba.fastjson.JSONObject; - -/** - * @ClassName YshopUtils - * @Author hupeng <610796224@qq.com> - * @Date 2020/6/27 - **/ -public class YshopUtils { - public static WechatUserDto getWechtUser(String str) { - return JSONObject.parseObject(str,WechatUserDto.class); - } -} +/** + * Copyright (C) 2018-2020 + * All rights reserved, Designed By www.yixiang.co + * 注意: + * 本软件为www.yixiang.co开发研制,未经购买不得使用 + * 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) + * 一经发现盗用、分享等行为,将追究法律责任,后果自负 + */ +package co.yixiang.modules.mp.utils; + + +import co.yixiang.modules.user.service.dto.WechatUserDto; +import com.alibaba.fastjson.JSONObject; + +/** + * @ClassName YshopUtils + * @Author hupeng <610796224@qq.com> + * @Date 2020/6/27 + **/ +public class YshopUtils { + public static WechatUserDto getWechtUser(String str) { + return JSONObject.parseObject(str,WechatUserDto.class); + } +} diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/vo/WechatLiveVo.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/vo/WechatLiveVo.java similarity index 61% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/vo/WechatLiveVo.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/vo/WechatLiveVo.java index 566f5b7e..b5af62ac 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/vo/WechatLiveVo.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/vo/WechatLiveVo.java @@ -1,6 +1,6 @@ -package co.yixiang.modules.wechat.vo; +package co.yixiang.modules.mp.vo; -import co.yixiang.modules.wechat.service.dto.YxWechatLiveDto; +import co.yixiang.modules.mp.service.dto.YxWechatLiveDto; import lombok.Data; import java.util.List; diff --git a/yshop-mall/src/main/java/co/yixiang/modules/wechat/vo/YxArticleQueryVo.java b/yshop-weixin/src/main/java/co/yixiang/modules/mp/vo/YxArticleQueryVo.java similarity index 97% rename from yshop-mall/src/main/java/co/yixiang/modules/wechat/vo/YxArticleQueryVo.java rename to yshop-weixin/src/main/java/co/yixiang/modules/mp/vo/YxArticleQueryVo.java index 329b7271..1d459621 100644 --- a/yshop-mall/src/main/java/co/yixiang/modules/wechat/vo/YxArticleQueryVo.java +++ b/yshop-weixin/src/main/java/co/yixiang/modules/mp/vo/YxArticleQueryVo.java @@ -1,4 +1,4 @@ -package co.yixiang.modules.wechat.vo; +package co.yixiang.modules.mp.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonProperty;