Commit 39e06a36 by 朱亚洁

feat:[1003936]自建码灵活配置方案

parent e380b02e
......@@ -10,6 +10,7 @@ import com.pcloud.book.group.dto.BookGroupClassifyDTO;
import com.pcloud.book.group.dto.BookGroupCountDTO;
import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupKeywordResourceDTO;
import com.pcloud.book.group.dto.BookGroupSceneDTO;
import com.pcloud.book.group.dto.BookGroupServeCountDTO;
import com.pcloud.book.group.dto.BookGroupStatistic4AgentDTO;
import com.pcloud.book.group.dto.BookGroupStatisticsDTO;
......@@ -991,4 +992,12 @@ public interface BookGroupBiz {
* * @param null
*/
Map<String, Object> getBookBase4Applet(Long sceneId, Long bookGroupId);
/**
* 根据社群书id获取公众号二维码信息(H5跳公众号流程)
* @author:zhuyajie
* @date:2020/12/7 10:50
* * @param null
*/
BookGroupSceneDTO getSceneQrcodeByBookGroupId(Long bookGroupId);
}
......@@ -84,6 +84,7 @@ import com.pcloud.book.group.dto.BookGroupCountDTO;
import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupIdAndCountDTO;
import com.pcloud.book.group.dto.BookGroupKeywordResourceDTO;
import com.pcloud.book.group.dto.BookGroupSceneDTO;
import com.pcloud.book.group.dto.BookGroupServeCountDTO;
import com.pcloud.book.group.dto.BookGroupStatistic4AgentDTO;
import com.pcloud.book.group.dto.BookGroupStatisticDTO;
......@@ -176,6 +177,7 @@ import com.pcloud.book.keywords.enums.ReplyTypeEnum;
import com.pcloud.book.keywords.vo.ListKeywordVO;
import com.pcloud.book.pcloudkeyword.biz.PcloudRobotBiz;
import com.pcloud.book.pcloudkeyword.entity.PcloudRobot;
import com.pcloud.book.personalstage.enums.JumpTypeEnum;
import com.pcloud.book.push.enums.AltTypeEnum;
import com.pcloud.book.reading.dao.ReadingUserDao;
import com.pcloud.book.record.biz.BookBrowseRecordBiz;
......@@ -564,9 +566,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
bookGroup.setJumpType(jumpType);
bookGroup.setJumpUrl(jumpUrl);
}
//小睿码创建公众号二维码
Boolean bookGroupAccountsQrcode = JoinGroupTypeEnum.XIAORUI.getCode().equals(joinGroupType) && QrcodeJumpType.H5_OFFICIAL_ACCOUNTS.getCode().equals(jumpType);
if ((addType != null && addType == 1) || bookGroupAccountsQrcode) {
if ((addType != null && addType == 1)) {
GroupQrcodeVO groupQrcodeVO;
if (sceneId != null) {
//将图书下某个二维码替换成社群码
......@@ -589,6 +589,15 @@ public class BookGroupBizImpl implements BookGroupBiz {
}
bookGroupDao.update(group);
} else {
//小睿码创建公众号二维码
Boolean bookGroupAccountsQrcode = JoinGroupTypeEnum.XIAORUI.getCode().equals(joinGroupType) && QrcodeJumpType.H5_OFFICIAL_ACCOUNTS.getCode().equals(jumpType);
if (bookGroupAccountsQrcode){
GroupQrcodeVO groupQrcodeVO = qrcodeSceneConsr.createWxGroupQrcode(bookId, channelId, adviserId);
if (groupQrcodeVO == null) {
throw new BookBizException(BookBizException.ERROR, "二维码生成失败!");
}
bookGroup.setSceneId(groupQrcodeVO.getSceneId());
}
bookGroupDao.insert(bookGroup);
String groupQrcodeLink = this.getGroupQrcodeLink(bookGroup.getId(), adviserId, joinGroupType, jumpType, jumpUrl);
String groupQrcodeUrl = QrcodeUtils.createWithMargin(groupQrcodeLink, 1);
......@@ -858,14 +867,17 @@ public class BookGroupBizImpl implements BookGroupBiz {
String url;
if (JoinGroupTypeEnum.XIAORUI.getCode().equals(joinGroupType)){
if (QrcodeJumpType.APPLET_SHUXIAO.getCode().equals(jumpType)) {
//书晓t-4
//进小程序-书晓t-4
url = bookGroupQrcodeDomain + "/t-4/" + agentId + "/" + bookGroupId;
} else if (QrcodeJumpType.H5_SELF_URL.getCode().equals(jumpType)) {
//自定义链接
//进h5-自定义链接
url = UrlUtils.getShortUrl4Own(jumpUrl);
} else if (QrcodeJumpType.H5_XIAORUI.getCode().equals(jumpType)) {
//书僮小睿小程序码/跳转按钮
//进h5-书僮小睿小程序码/跳转按钮
url = bookGroupQrcodeDomain + "/t-5/" + agentId + "/" + bookGroupId;
} else if (QrcodeJumpType.H5_OFFICIAL_ACCOUNTS.getCode().equals(jumpType)){
//进h5-出版社公众号二维码
url = bookGroupQrcodeDomain + "/t-6/" + agentId + "/" + bookGroupId;
} else {
//小睿码t-3
url = bookGroupQrcodeDomain + "/t-3/" + agentId + "/" + bookGroupId;
......@@ -989,13 +1001,6 @@ public class BookGroupBizImpl implements BookGroupBiz {
}
//二维码跳转链接
String groupQrcodeLink = group.getGroupQrcodeLink();
//链接是公众号,从渠道中心取原始跳转链接
if (null != group.getSceneId()){
QrcodeSceneDto qrcodeSceneDto = qrcodeSceneConsr.getById(group.getSceneId());
if (null != qrcodeSceneDto && !StringUtil.isEmpty(qrcodeSceneDto.getUrl())) {
groupQrcodeLink = qrcodeSceneDto.getUrl();
}
}
//设置社群码样式
//每次更新之前都重新生成
String qrcode = QrcodeUtils.createWithMargin(groupQrcodeLink, 1);
......@@ -1156,6 +1161,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
if (null != applet) {
result.put("classifyId", applet.getRaysClassifyId());
}
result.put("jumpType", bookGroupDTO.getJumpType());
}
}
if (null != bookGroupDTO && null != bookGroupDTO.getBookId()) {
......@@ -6049,4 +6055,26 @@ public class BookGroupBizImpl implements BookGroupBiz {
map.put("channelId", channelId);
return map;
}
@Override
public BookGroupSceneDTO getSceneQrcodeByBookGroupId(Long bookGroupId) {
BookGroupSceneDTO bookGroupSceneDTO = new BookGroupSceneDTO();
BookGroupDTO bookGroupDTO = bookGroupDao.getBookBaseInfoById(bookGroupId);
if (null == bookGroupDTO || null == bookGroupDTO.getSceneId()){
return new BookGroupSceneDTO();
}
bookGroupSceneDTO.setBookGroupId(bookGroupId);
bookGroupSceneDTO.setBookId(bookGroupDTO.getBookId());
bookGroupSceneDTO.setChannelId(bookGroupDTO.getChannelId());
bookGroupSceneDTO.setAdviserId(bookGroupDTO.getCreateUser());
bookGroupSceneDTO.setBookName(bookGroupDTO.getBookName());
Long agentId = adviserConsr.getAgentIdByAdviser(bookGroupDTO.getCreateUser());
if (null != agentId){
bookGroupSceneDTO.setAgentName(agentConsr.getNameById(agentId));
}
bookGroupSceneDTO.setSceneId(bookGroupDTO.getSceneId());
QrcodeSceneDto qrcodeSceneDto = qrcodeSceneConsr.getById(bookGroupDTO.getSceneId());
bookGroupSceneDTO.setQrcodeUrl(null == qrcodeSceneDto?null:qrcodeSceneDto.getQrcodeUrl());
return bookGroupSceneDTO;
}
}
package com.pcloud.book.group.dto;
import com.pcloud.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.dto.BookGroupSceneDTO
* @Author zhuyajie
* @Description 社群码对应的公众号码
* @Date 2020/12/7 10:51
* @Version 1.0
**/
@Data
public class BookGroupSceneDTO extends BaseDto {
@ApiModelProperty("社群书id")
private Long bookGroupId;
@ApiModelProperty("编辑id")
private Long adviserId;
@ApiModelProperty("渠道id")
private Long channelId;
@ApiModelProperty("公众号二维码id")
private Long sceneId;
@ApiModelProperty("书刊id")
private Long bookId;
@ApiModelProperty("出版id")
private String agentName;
@ApiModelProperty("公众号二维码")
private String qrcodeUrl;
@ApiModelProperty("书名")
private String bookName;
}
......@@ -807,4 +807,8 @@ public interface BookGroupFacade {
ResponseDto<?> getBookBase4Applet(
@RequestParam(value = "sceneId", required = false) Long sceneId,
@RequestParam(value = "bookGroupId", required = false) Long bookGroupId);
@ApiOperation("根据社群书id获取公众号二维码信息(H5跳公众号流程)")
@GetMapping("getSceneQrcodeByBookGroupId")
ResponseDto<?> getSceneQrcodeByBookGroupId(@RequestParam("bookGroupId") Long bookGroupId);
}
......@@ -1318,4 +1318,10 @@ public class BookGroupFacadeImpl implements BookGroupFacade {
}
return new ResponseDto<>(bookGroupBiz.getBookBase4Applet(sceneId, bookGroupId));
}
@Override
@GetMapping("getSceneQrcodeByBookGroupId")
public ResponseDto<?> getSceneQrcodeByBookGroupId(@RequestParam("bookGroupId") Long bookGroupId){
return new ResponseDto<>(bookGroupBiz.getSceneQrcodeByBookGroupId(bookGroupId));
}
}
......@@ -547,7 +547,8 @@
bg.channel_id,
bg.create_user,
bg.join_group_type,
bg.open_weapp
bg.open_weapp,
bg.scene_id
FROM
book_group bg
LEFT JOIN book b ON bg.book_id = b.BOOK_ID
......
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