|
|
@@ -31,6 +31,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.List;
|
|
|
+import java.util.Optional;
|
|
|
|
|
|
/*
|
|
|
*项目名: netflix
|
|
|
@@ -63,10 +64,11 @@ public class TemplateCommonServiceImpl implements TemplateCommonService {
|
|
|
public void newOderSendMsgByType(OrderDon order, GoodsDon goodsDon, GoodsDonSku sku, User user, String toPeople) throws Exception {
|
|
|
if (!EnvCommonService.active.equals(envCommonService.getEnv())) {
|
|
|
Long userId = order.getUserId();
|
|
|
+ String openId = toPeople;
|
|
|
WxAppTemplateView wxAppTemplateView = this.getWxAppByUserId(userId, TemplateEnum.NEW_ORDER_TEMPLATE.getDesc());
|
|
|
if (wxAppTemplateView != null) {
|
|
|
WxMpTemplateMessage templateMessage = new WxMpTemplateMessage()
|
|
|
- .setToUser(toPeople)
|
|
|
+ .setToUser(Optional.ofNullable(wxAppTemplateView.getOpenId()).orElse(openId))
|
|
|
.setTemplateId(wxAppTemplateView.getTemplateId())
|
|
|
//TODO
|
|
|
.setUrl(" ");
|
|
|
@@ -85,8 +87,11 @@ public class TemplateCommonServiceImpl implements TemplateCommonService {
|
|
|
|
|
|
@Override
|
|
|
public WxAppTemplateView getWxAppByUserId(Long userId, String templateMark) {
|
|
|
- UserGzhRelation userGzhRelation = userGzhRelationMapper.selectOne(Wrappers.lambdaQuery(UserGzhRelation.class)
|
|
|
- .eq(UserGzhRelation::getUserId, userId).last("limit 1"));
|
|
|
+ UserGzhRelation userGzhRelation = null;
|
|
|
+ if (!TemplateEnum.WX_GZH_QR_CODE_LOGIN.getDesc().equals(templateMark)) {
|
|
|
+ userGzhRelation = userGzhRelationMapper.selectOne(Wrappers.lambdaQuery(UserGzhRelation.class)
|
|
|
+ .eq(UserGzhRelation::getUserId, userId).orderByAsc(UserGzhRelation::getWxAppId).last("limit 1"));
|
|
|
+ }
|
|
|
MapBuilder builder = MapUtils.builder()
|
|
|
.field(WxAppTemplateView::getRemark, templateMark);
|
|
|
if (userGzhRelation == null) {
|
|
|
@@ -101,25 +106,33 @@ public class TemplateCommonServiceImpl implements TemplateCommonService {
|
|
|
type = EnvCommonService.active_prd;
|
|
|
}
|
|
|
builder.field(WxAppTemplateView::getType, type);
|
|
|
- return beanSearcher.searchFirst(WxAppTemplateView.class, builder.build());
|
|
|
+ WxAppTemplateView wxAppTemplateView = beanSearcher.searchFirst(WxAppTemplateView.class, builder.build());
|
|
|
+ if (userGzhRelation != null) {
|
|
|
+ final String openId = userGzhRelation.getOpenId();
|
|
|
+ Optional.ofNullable(wxAppTemplateView).ifPresent((templateView) -> templateView.setOpenId(openId));
|
|
|
+ }
|
|
|
+ return wxAppTemplateView;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void sendWxGzhQrCodeSuccessMsg(User user) throws Exception {
|
|
|
if (!EnvCommonService.active.equals(envCommonService.getEnv())) {
|
|
|
Long userId = user.getId();
|
|
|
+ String openId = user.getOpenId();
|
|
|
WxAppTemplateView wxAppTemplateView = this.getWxAppByUserId(userId, TemplateEnum.WX_GZH_QR_CODE_LOGIN.getDesc());
|
|
|
- String url = String.format("%sauth/weChat?url=%s", envCommonService.getHost(), envCommonService.getDomain() + "yinhe/web/");
|
|
|
- WxMpTemplateMessage templateMessage = new WxMpTemplateMessage()
|
|
|
- .setToUser(user.getOpenId())
|
|
|
- .setTemplateId(wxAppTemplateView.getTemplateId())
|
|
|
- .setUrl(url);
|
|
|
- WxMpTemplateMessage.TemplateData data = templateMessage.getData();
|
|
|
- data.setFirst(new WxMpTemplateData("您已登录成功"));
|
|
|
- data.setKeyword1(new WxMpTemplateData("银河录像局"));
|
|
|
- data.setKeyword2(new WxMpTemplateData(DateUtil.format(DateTime.now(), "yyyy-MM-dd HH:mm:ss")));
|
|
|
- data.setRemark(new WxMpTemplateData("欢迎使用银河录像局"));
|
|
|
- weChatService.sendTemplateMessage(weChatService.getAccessToken(), Jsons.toJson(templateMessage));
|
|
|
+ if (wxAppTemplateView != null) {
|
|
|
+ String url = String.format("%sauth/weChat?url=%s", envCommonService.getHost(), envCommonService.getDomain() + "yinhe/web/");
|
|
|
+ WxMpTemplateMessage templateMessage = new WxMpTemplateMessage()
|
|
|
+ .setToUser(Optional.ofNullable(wxAppTemplateView.getOpenId()).orElse(openId))
|
|
|
+ .setTemplateId(wxAppTemplateView.getTemplateId())
|
|
|
+ .setUrl(url);
|
|
|
+ WxMpTemplateMessage.TemplateData data = templateMessage.getData();
|
|
|
+ data.setFirst(new WxMpTemplateData("您已登录成功"));
|
|
|
+ data.setKeyword1(new WxMpTemplateData("银河录像局"));
|
|
|
+ data.setKeyword2(new WxMpTemplateData(DateUtil.format(DateTime.now(), "yyyy-MM-dd HH:mm:ss")));
|
|
|
+ data.setRemark(new WxMpTemplateData("欢迎使用银河录像局"));
|
|
|
+ weChatService.sendTemplateMessage(weChatService.getAccessToken(), Jsons.toJson(templateMessage));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -139,7 +152,7 @@ public class TemplateCommonServiceImpl implements TemplateCommonService {
|
|
|
}
|
|
|
String url = String.format("%s%s", envCommonService.getDomain(), "order");
|
|
|
WxMpTemplateMessage templateMessage = new WxMpTemplateMessage()
|
|
|
- .setToUser(openId)
|
|
|
+ .setToUser(Optional.ofNullable(wxAppTemplateView.getOpenId()).orElse(openId))
|
|
|
.setTemplateId(wxAppTemplateView.getTemplateId())
|
|
|
.setUrl(url);
|
|
|
String msg = isReceiveAll ? "家庭套餐特权已生效,可在我的车票中查看" : "存在待领取权益,点击查看详情";
|
|
|
@@ -162,11 +175,12 @@ public class TemplateCommonServiceImpl implements TemplateCommonService {
|
|
|
public void emptySendMsgNotify(OrderDon orderDon, String toPeople) throws Exception {
|
|
|
if (!EnvCommonService.active.equals(envCommonService.getEnv())) {
|
|
|
Long userId = orderDon.getUserId();
|
|
|
+ String openId = toPeople;
|
|
|
WxAppTemplateView wxAppTemplateView = this.getWxAppByUserId(userId, TemplateEnum.EMPTY_TEMPLATE.getDesc());
|
|
|
if (wxAppTemplateView != null) {
|
|
|
User u = userMapper.selectById(orderDon.getUserId());
|
|
|
WxMpTemplateMessage templateMessage = new WxMpTemplateMessage()
|
|
|
- .setToUser(toPeople)
|
|
|
+ .setToUser(Optional.ofNullable(wxAppTemplateView.getOpenId()).orElse(openId))
|
|
|
.setTemplateId(wxAppTemplateView.getTemplateId())
|
|
|
//TODO
|
|
|
.setUrl(" ");
|
|
|
@@ -200,8 +214,9 @@ public class TemplateCommonServiceImpl implements TemplateCommonService {
|
|
|
if (wxAppTemplateView != null) {
|
|
|
User user = userMapper.selectById(relation.getUserId());
|
|
|
if (user != null) {
|
|
|
+ String openId = user.getOpenId();
|
|
|
WxMpTemplateMessage templateMessage = new WxMpTemplateMessage()
|
|
|
- .setToUser(user.getOpenId())
|
|
|
+ .setToUser(Optional.ofNullable(wxAppTemplateView.getOpenId()).orElse(openId))
|
|
|
.setTemplateId(wxAppTemplateView.getTemplateId())
|
|
|
.setUrl(url);
|
|
|
WxMpTemplateMessage.TemplateData data = templateMessage.getData();
|