Commit bc14ac29 by 裴大威

fix 关键词取应用的chennelId

parent e27264b8
...@@ -38,7 +38,14 @@ import com.pcloud.book.keywords.entity.BookKeyword; ...@@ -38,7 +38,14 @@ import com.pcloud.book.keywords.entity.BookKeyword;
import com.pcloud.book.keywords.entity.BookKeywordRecord; import com.pcloud.book.keywords.entity.BookKeywordRecord;
import com.pcloud.book.keywords.entity.Keyword; import com.pcloud.book.keywords.entity.Keyword;
import com.pcloud.book.keywords.enums.ReplyTypeEnum; import com.pcloud.book.keywords.enums.ReplyTypeEnum;
import com.pcloud.book.keywords.vo.*; import com.pcloud.book.keywords.vo.DeleteKeywordVO;
import com.pcloud.book.keywords.vo.KeywordVO;
import com.pcloud.book.keywords.vo.ListKeywordParam;
import com.pcloud.book.keywords.vo.ListKeywordVO;
import com.pcloud.book.keywords.vo.QrWeixinParam;
import com.pcloud.book.keywords.vo.SetKeywordVO;
import com.pcloud.book.keywords.vo.SetRankVO;
import com.pcloud.book.keywords.vo.UpdateKeywordVO;
import com.pcloud.channelcenter.base.constants.ChannelEnum; import com.pcloud.channelcenter.base.constants.ChannelEnum;
import com.pcloud.channelcenter.qrcode.service.QrcodeSceneService; import com.pcloud.channelcenter.qrcode.service.QrcodeSceneService;
import com.pcloud.channelcenter.qrcode.vo.MessageBookVO; import com.pcloud.channelcenter.qrcode.vo.MessageBookVO;
...@@ -71,7 +78,6 @@ import java.util.ArrayList; ...@@ -71,7 +78,6 @@ import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
...@@ -480,14 +486,23 @@ public class BookKeywordBizImpl implements BookKeywordBiz { ...@@ -480,14 +486,23 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
// 处理链接地址 // 处理链接地址
Long classifyId = keywordClassifyIdMap.get(replyKeywordDTO.getKeywordId()); Long classifyId = keywordClassifyIdMap.get(replyKeywordDTO.getKeywordId());
final GroupClassifyQrcodeDTO dto = classifyMap.get(classifyId); final GroupClassifyQrcodeDTO dto = classifyMap.get(classifyId);
if(null == dto) {
log.info("[关键词消息回复] 分类信息为空 replyKeywordDTO:{}; classifyMap:{}", replyKeywordDTO, classifyMap);
continue;
}
final boolean isApp = ReplyTypeEnum.APP.value.equals(replyKeywordDTO.getReplyType());
final boolean isLink = ReplyTypeEnum.LINK.value.equals(replyKeywordDTO.getReplyType());
Long qrcodeId = classifyToQrcodeMap.get(dto.getClassifyId()); Long qrcodeId = classifyToQrcodeMap.get(dto.getClassifyId());
GroupQrcodeBaseInfoVO qrcodeInfo = groupQrcodeDao.getBaseById(qrcodeId); GroupQrcodeBaseInfoVO qrcodeInfo = groupQrcodeDao.getBaseById(qrcodeId);
if (ReplyTypeEnum.APP.value.equals(replyKeywordDTO.getReplyType()) || ReplyTypeEnum.LINK.value.equals(replyKeywordDTO.getReplyType())) { if (isApp || isLink) {
if(null == dto) { Long channelId = dto.getChannelId();
log.info("[关键词消息回复] 分类信息为空 replyKeywordDTO:{}; classifyMap:{}", replyKeywordDTO, classifyMap); if (isApp) {
continue; final AppDto app = appConsr.getBaseById(replyKeywordDTO.getServeId());
if (null != app) {
channelId = app.getChannelId();
}
} }
AccountSettingDto accountSettingDto = qrcodeSceneConsr.getWechatInfo(dto.getChannelId()); AccountSettingDto accountSettingDto = qrcodeSceneConsr.getWechatInfo(channelId);
String linkUrl = SendWeixinRequestTools.splitUrlNew(accountSettingDto, replyKeywordDTO.getLinkUrl(), dto.getBookGroupId(), dto.getClassifyId(), qrcodeId); String linkUrl = SendWeixinRequestTools.splitUrlNew(accountSettingDto, replyKeywordDTO.getLinkUrl(), dto.getBookGroupId(), dto.getClassifyId(), qrcodeId);
replyKeywordDTO.setLinkUrl(linkUrl); replyKeywordDTO.setLinkUrl(linkUrl);
if (!StringUtil.isEmpty(linkUrl)) { if (!StringUtil.isEmpty(linkUrl)) {
...@@ -523,7 +538,6 @@ public class BookKeywordBizImpl implements BookKeywordBiz { ...@@ -523,7 +538,6 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
sb.append(dto.getKeywords()).append(":").append(dto.getContent()).append("\n"); sb.append(dto.getKeywords()).append(":").append(dto.getContent()).append("\n");
} else if (ReplyTypeEnum.IMAGE.value.equals(dto.getReplyType())) { } else if (ReplyTypeEnum.IMAGE.value.equals(dto.getReplyType())) {
SendWeixinRequestTools.sendKeywordMessage(dto, robotId, userWxId, ip, code); SendWeixinRequestTools.sendKeywordMessage(dto, robotId, userWxId, ip, code);
continue;
} }
} }
d.setContent(sb.toString()); d.setContent(sb.toString());
...@@ -579,8 +593,18 @@ public class BookKeywordBizImpl implements BookKeywordBiz { ...@@ -579,8 +593,18 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
} }
log.info("[关键词回复原始数据] : sendKeywordMessage replyKeywordDTO :{}, robotId:{}, weixinGroupId:{}", replyKeywordDTO, robotId, weixinGroupId); log.info("[关键词回复原始数据] : sendKeywordMessage replyKeywordDTO :{}, robotId:{}, weixinGroupId:{}", replyKeywordDTO, robotId, weixinGroupId);
// 处理链接地址 // 处理链接地址
if (ReplyTypeEnum.APP.value.equals(replyKeywordDTO.getReplyType()) || ReplyTypeEnum.LINK.value.equals(replyKeywordDTO.getReplyType())) { final boolean isApp = ReplyTypeEnum.APP.value.equals(replyKeywordDTO.getReplyType());
AccountSettingDto accountSettingDto = qrcodeSceneConsr.getWechatInfo(classifyQrcodeInfo.getChannelId()); final boolean isLink = ReplyTypeEnum.LINK.value.equals(replyKeywordDTO.getReplyType());
if (isApp || isLink) {
Long channelId = classifyQrcodeInfo.getChannelId();
// 如果是app则取app的channelId
if (isApp) {
final AppDto app = appConsr.getBaseById(replyKeywordDTO.getServeId());
if (null != app) {
channelId = app.getChannelId();
}
}
AccountSettingDto accountSettingDto = qrcodeSceneConsr.getWechatInfo(channelId);
String linkUrl = SendWeixinRequestTools.splitUrlNew(accountSettingDto, replyKeywordDTO.getLinkUrl(), classifyQrcodeInfo.getBookGroupId(), classifyQrcodeInfo.getClassifyId(), classifyQrcodeInfo.getGroupQrcodeId()); String linkUrl = SendWeixinRequestTools.splitUrlNew(accountSettingDto, replyKeywordDTO.getLinkUrl(), classifyQrcodeInfo.getBookGroupId(), classifyQrcodeInfo.getClassifyId(), classifyQrcodeInfo.getGroupQrcodeId());
replyKeywordDTO.setLinkUrl(linkUrl); replyKeywordDTO.setLinkUrl(linkUrl);
} }
......
...@@ -48,4 +48,10 @@ public class ReplyKeywordDTO implements Serializable { ...@@ -48,4 +48,10 @@ public class ReplyKeywordDTO implements Serializable {
@ApiModelProperty("短链接地址") @ApiModelProperty("短链接地址")
private String shortLinkUrl; private String shortLinkUrl;
@ApiModelProperty("应用/作品id")
private Long serveId;
@ApiModelProperty("应用/作品")
private String serveType;
} }
...@@ -163,7 +163,9 @@ ...@@ -163,7 +163,9 @@
k.pic_url picUrl, k.pic_url picUrl,
bk.is_warehouse as isWarehouse, bk.is_warehouse as isWarehouse,
bk.warehouse_id as warehouseId, bk.warehouse_id as warehouseId,
k.reply_type replyType k.reply_type replyType,
k.serve_id as serveId,
k.serve_type as serveType
FROM FROM
book_keyword bk book_keyword bk
JOIN JOIN
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment