Commit cbecbf28 by 曾迫

1002758 是否开启小睿流程

parent a4b502c3
......@@ -110,7 +110,17 @@ public class BookAdviserDto extends BaseDto {
* 地域标签id
*/
private Long areaLabelId;
private Integer isOpenRobotProcess;
public Integer getIsOpenRobotProcess() {
return isOpenRobotProcess;
}
public void setIsOpenRobotProcess(Integer isOpenRobotProcess) {
this.isOpenRobotProcess = isOpenRobotProcess;
}
public Integer getCount() {
return count;
}
......
......@@ -649,6 +649,16 @@ public class BookDto extends BaseDto {
@ApiModelProperty("目的标签名称")
private String purLabelName;
public Integer getIsOpenRobotProcess() {
return isOpenRobotProcess;
}
public void setIsOpenRobotProcess(Integer isOpenRobotProcess) {
this.isOpenRobotProcess = isOpenRobotProcess;
}
private Integer isOpenRobotProcess;
@ApiModelProperty("小睿分类编号")
private Integer classifyId;
......
......@@ -108,6 +108,15 @@ public class BookAdviser extends BaseEntity {
*/
private Long purLabelId;
private Integer isOpenRobotProcess;
public Integer getIsOpenRobotProcess() {
return isOpenRobotProcess;
}
public void setIsOpenRobotProcess(Integer isOpenRobotProcess) {
this.isOpenRobotProcess = isOpenRobotProcess;
}
public Long getTempletId() {
return templetId;
......
......@@ -41,6 +41,10 @@ public interface BookAdviserService {
@RequestParam("channelId") Long channelId,
@RequestParam("adviserId") Long adviserId) throws BizException;
@GetMapping("getBookIsOpenProcess")
ResponseEntity<ResponseDto<Integer>> getBookIsOpenProcess(@RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId,
@RequestParam("adviserId") Long adviserId) throws BizException;
/**
* 获取编辑的推广书籍总数
*
......
package com.pcloud.book.group.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.pcloud.common.entity.BaseEntity;
import lombok.Data;
import java.util.Date;
/**
* 社群书小程序码
*/
@Data
public class BookAppletSceneDTO extends BaseEntity {
/**
* 社群书id
*/
private Long bookGroupId;
/**
* 小睿分类
*/
private Long raysClassifyId;
/**
* 小程序id
*/
private String appletId;
/**
* 小程序url
*/
private String appletUrl;
@JsonFormat(
pattern = "yyyy-MM-dd HH:mm:ss",
timezone = "GMT+8"
)
private Date createTime;
@JsonFormat(
pattern = "yyyy-MM-dd HH:mm:ss",
timezone = "GMT+8"
)
private Date updateTime;
private Boolean isDelete;
/**
* 现代纸书自建码的id
*/
private Long sceneId;
}
......@@ -136,6 +136,16 @@ public class BookGroupDTO implements Serializable {
*/
private String bookName;
private String appletUrl;
public String getAppletUrl() {
return appletUrl;
}
public void setAppletUrl(String appletUrl) {
this.appletUrl = appletUrl;
}
public String getUrl() {
return url;
}
......
package com.pcloud.book.group.service;
import com.pcloud.book.group.dto.AltAndCountDTO;
import com.pcloud.book.group.dto.BookAppletSceneDTO;
import com.pcloud.book.group.dto.BookGroupCountDTO;
import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupKeywordResourceDTO;
......@@ -216,6 +217,10 @@ public interface BookGroupService {
@GetMapping("addUserCount4RightsSetting")
void addUserCount4RightsSetting();
@ApiOperation("通过sceneId查询小程序相关信息")
@GetMapping("getBookAppletBySceneId")
ResponseEntity<ResponseDto<BookAppletSceneDTO>> getBookAppletBySceneId(@RequestParam("sceneId") Long sceneId);
@ApiOperation("根据raysBookId获取特殊二维码的bookGroupId")
@RequestMapping(value = "/getBookGroupId4OldData", method = RequestMethod.GET)
ResponseEntity<ResponseDto<Long>> getBookGroupId4OldData(
......
......@@ -19,6 +19,7 @@ import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
import com.pcloud.book.book.vo.SearchBookVO;
import com.pcloud.book.book.vo.request.BookQualifyInfoVO;
import com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto;
import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBean;
import com.pcloud.common.page.PageBeanNew;
......@@ -647,4 +648,8 @@ public interface BookBiz {
PageBeanNew<BookQualifyVO> getAddBookQualifyList(Integer currentPage, Integer numPerPage, String name,Integer isShowQualifyInfo,Long adviserId);
SearchBookVO getBookInfoByBookGroupId(Long bookGroupId);
void updateIsOpenRobotProcess(Long adviserId, UpdateBookRobotProcessDto robotProcessDto);
void updateIsOpenRobotProcess4Now(Long adviserId, UpdateBookRobotProcessDto robotProcessDto);
}
......@@ -10,6 +10,8 @@ import java.util.Map;
import java.util.stream.Collectors;
import com.pcloud.book.book.dto.BookRightsSettingDTO;
import com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto;
import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.rightsSetting.biz.RightsSettingBiz;
import com.pcloud.book.rightsSetting.dto.RightsSettingDto;
......@@ -147,6 +149,14 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
// 判断编辑是否已经设置过该书籍的推广信息
BookAdviserDto bookAdviserDto = this.getByAdviserContainsDelete(bookAdviser);
if (bookAdviserDto != null && BookConstant.BOOK_ADVISER_NO_DELETE.equals(bookAdviserDto.getIsDelete())) {
UpdateBookRobotProcessDto dto=new UpdateBookRobotProcessDto();
dto.setBookId(bookAdviser.getBookId());
dto.setIsOpenRobotProcess(bookAdviser.getIsOpenRobotProcess());
bookBiz.updateIsOpenRobotProcess(bookAdviser.getAdviserId(),dto);
BookGroupDTO dtoByBookId = bookGroupBiz.getDTOByBookId(bookAdviser.getBookId(), bookAdviser.getChannelId(), bookAdviser.getAdviserId());
if(dtoByBookId!=null){
bookGroupBiz.createBookGroupAppletUrl(dtoByBookId.getId(),bookAdviser.getBookId(),bookAdviser.getChannelId(), bookAdviser.getAdviserId());
}
return;
}
......@@ -165,6 +175,10 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookAdviser.setIsMainEditor(true);
bookAdviserDao.insert(bookAdviser);
esBookAndAdviserBiz.updateBookAndAdviserToES(Collections.singletonList(bookAdviser.getBookId()));
BookGroupDTO dtoByBookId = bookGroupBiz.getDTOByBookId(bookAdviser.getBookId(), bookAdviser.getChannelId(), bookAdviser.getAdviserId());
if(dtoByBookId!=null){
bookGroupBiz.createBookGroupAppletUrl(dtoByBookId.getId(),bookAdviser.getBookId(),bookAdviser.getChannelId(), bookAdviser.getAdviserId());
}
} catch (DataIntegrityViolationException e) {
throw new BookBizException(BookBizException.DB_DML_FAIL, "该书刊已经被别的编辑添加过");
} catch (Exception e) {
......
......@@ -16,6 +16,7 @@ import com.pcloud.book.base.exception.BookBizException;
import com.pcloud.book.book.biz.*;
import com.pcloud.book.book.cache.BookCache;
import com.pcloud.book.book.constant.BookConstant;
import com.pcloud.book.book.dao.BookAdviserDao;
import com.pcloud.book.book.dao.BookDao;
import com.pcloud.book.book.dao.BookLabelDao;
import com.pcloud.book.book.dao.BookRaysClassifyDao;
......@@ -31,6 +32,7 @@ import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
import com.pcloud.book.book.vo.SearchBookVO;
import com.pcloud.book.book.vo.request.BookQualifyInfoVO;
import com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto;
import com.pcloud.book.consumer.analysisengine.SceneRecordConsr;
import com.pcloud.book.consumer.app.AssistTempletConsr;
import com.pcloud.book.consumer.channel.QrcodeSceneConsr;
......@@ -42,13 +44,16 @@ import com.pcloud.book.consumer.user.AdviserConsr;
import com.pcloud.book.consumer.user.AgentConsr;
import com.pcloud.book.consumer.user.ChannelConsr;
import com.pcloud.book.consumer.user.PartyConsr;
import com.pcloud.book.consumer.wechat.WechatConsr;
import com.pcloud.book.copyright.biz.BookAuthInfoBiz;
import com.pcloud.book.copyright.vo.BookAuthInfoVO;
import com.pcloud.book.es.biz.ESBookAndAdviserBiz;
import com.pcloud.book.es.entity.ESBookAndAdviser;
import com.pcloud.book.group.biz.BookGroupBiz;
import com.pcloud.book.group.dao.BookAppletSceneDao;
import com.pcloud.book.group.dao.BookGroupDao;
import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.entity.BookAppletScene;
import com.pcloud.book.group.enums.JoinGroupTypeEnum;
import com.pcloud.book.mq.producer.BookMQProducer;
import com.pcloud.book.util.common.ThreadPoolUtils;
......@@ -156,6 +161,23 @@ public class BookBizImpl implements BookBiz {
@Autowired
private BookRaysClassifyDao bookRaysClassifyDao;
@Autowired
private BookAppletSceneDao bookAppletSceneDao;
@Autowired
private BookAdviserDao bookAdviserDao;
@Autowired
private WechatConsr wechatConsr;
/**
* 创建书籍,同时建立与编辑的推广关系
*/
......@@ -1556,6 +1578,11 @@ public class BookBizImpl implements BookBiz {
bookAdviser.setProLabelId(book.getProLabelId());
bookAdviser.setDepLabelId(book.getDepLabelId());
bookAdviser.setPurLabelId(book.getPurLabelId());
if(book.getIsBookGroup()!=null&&book.getIsBookGroup()){
bookAdviser.setIsOpenRobotProcess(1);
}else{
bookAdviser.setIsOpenRobotProcess(0);
}
bookAdviserBiz.create(bookAdviser);
}
......@@ -2201,4 +2228,68 @@ public class BookBizImpl implements BookBiz {
}
return bookVO;
}
@Override
public void updateIsOpenRobotProcess(Long adviserId, UpdateBookRobotProcessDto robotProcessDto) {
Map<String,Object> map=new HashMap<>();
map.put("bookId",robotProcessDto.getBookId());
map.put("adviserId",adviserId);
map.put("isOpenRobotProcess",robotProcessDto.getIsOpenRobotProcess());
bookDao.updateIsOpenRobotProcess(map);
}
@Override
public void updateIsOpenRobotProcess4Now(Long adviserId, UpdateBookRobotProcessDto robotProcessDto) {
Map<String,Object> map=new HashMap<>();
map.put("bookId",robotProcessDto.getBookId());
map.put("adviserId",adviserId);
map.put("isOpenRobotProcess",robotProcessDto.getIsOpenRobotProcess());
bookDao.updateIsOpenRobotProcess(map);
//根据channelId和bookId获取书下面所有自建码,在根据自建码的senceId创建小程序二维码
List<Long> sceneIds=qrcodeSceneConsr.getAliQrByBookId(robotProcessDto.getBookId());
if(!ListUtils.isEmpty(sceneIds)) {
createBookGroupAppletUrl(robotProcessDto.getBookId(), robotProcessDto.getChannelId(), adviserId, sceneIds);
}
}
public void createBookGroupAppletUrl(Long bookId, Long channelId, Long adviserId,List<Long> sceneIds){
BookAdviserDto bookAdviserDto = bookAdviserDao.getBase(bookId,channelId,adviserId);
Long raysClassifyId = bookRaysClassifyDao.getClassifyIdByBookTemplateId(bookAdviserDto.getTempletId());
String page=null;//小程序跳转页 todo
List<BookAppletScene> list=new ArrayList<>();
for (Long sceneId:sceneIds){
//通过sceneId查询是否已经存在,如果已经存在就不创建
BookAppletScene appletScene = bookAppletSceneDao.getBySceneId(sceneId);
if(appletScene!=null){
continue;
}
String appletId = createOneAppletId();
BookAppletScene applet = bookAppletSceneDao.getByAppletId(appletId);
while (null != applet) {
appletId = createOneAppletId();
applet = bookAppletSceneDao.getByAppletId(appletId);
}
String url = wechatConsr.create4MiniApp(777L, appletId, null, page);
BookAppletScene bookAppletScene = new BookAppletScene();
bookAppletScene.setRaysClassifyId(raysClassifyId);
bookAppletScene.setAppletId(appletId);
bookAppletScene.setAppletUrl(url);
bookAppletScene.setSceneId(sceneId);
list.add(bookAppletScene);
}
bookAppletSceneDao.insert(list);
}
@ParamLog("生成一个小程序id")
private String createOneAppletId() {
Random random = new Random();
String charStr = "0123456789abcdefghijklmnopqrstuvwxyz";
String s = "";
for (int i = 0; i < 20; i++) {
int index = random.nextInt(charStr.length());
s = s + charStr.charAt(index);
}
return s;
}
}
......@@ -340,6 +340,8 @@ public interface BookDao extends BaseDao<Book> {
SearchBookVO getBookInfoByBookGroupId(Map<String, Object> paramMap);
void updateIsOpenRobotProcess(Map<String, Object> paramMap);
Integer count();
List<ESBookAndAdviser> findAllBookAndAdviser(Long maxId, Integer offset);
......
......@@ -348,6 +348,11 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
}
@Override
public void updateIsOpenRobotProcess(Map<String, Object> paramMap) {
super.getSqlSession().update(super.getStatement("updateIsOpenRobotProcess"), paramMap);
}
@Override
public Integer count() {
return super.getSqlSession().selectOne(getStatement("count"));
}
......
......@@ -10,6 +10,7 @@ import com.pcloud.book.book.entity.Book;
import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
import com.pcloud.book.book.vo.request.BookQualifyInfoVO;
import com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto;
import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBean;
......@@ -743,4 +744,11 @@ public interface BookFacade {
@RequestParam(value = "bookGroupId") Long bookGroupId
) throws PermissionException, JsonParseException, BizException;
@ApiOperation(value = "社群书更新书刊是否开启小睿流程", httpMethod = "POST")
@RequestMapping(value = "updateIsOpenRobotProcess", method = RequestMethod.POST)
public ResponseDto<?> updateIsOpenRobotProcess(@RequestHeader("token") String token, @RequestBody UpdateBookRobotProcessDto robotProcessDto ) throws PermissionException;
@ApiOperation(value = "现代纸书更新书刊是否开启小睿流程", httpMethod = "POST")
@RequestMapping(value = "updateIsOpenRobotProcess4Now", method = RequestMethod.POST)
public ResponseDto<?> updateIsOpenRobotProcess4Now(@RequestHeader("token") String token, @RequestBody UpdateBookRobotProcessDto robotProcessDto ) throws PermissionException;
}
......@@ -17,6 +17,7 @@ import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
import com.pcloud.book.book.vo.SearchBookVO;
import com.pcloud.book.book.vo.request.BookQualifyInfoVO;
import com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto;
import com.pcloud.common.core.constant.SystemCode;
import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.exceptions.BizException;
......@@ -1034,5 +1035,20 @@ public class BookFacadeImpl implements BookFacade {
return new ResponseDto<>(bookVO);
}
@Override
@RequestMapping(value = "updateIsOpenRobotProcess", method = RequestMethod.POST)
public ResponseDto<?> updateIsOpenRobotProcess(@RequestHeader("token") String token, @RequestBody UpdateBookRobotProcessDto robotProcessDto) throws PermissionException {
Long adviserId = (Long) SessionUtil.getVlaue(token,SessionUtil.PARTY_ID);
bookBiz.updateIsOpenRobotProcess(adviserId,robotProcessDto);
return new ResponseDto<>();
}
@Override
@RequestMapping(value = "updateIsOpenRobotProcess4Now", method = RequestMethod.POST)
public ResponseDto<?> updateIsOpenRobotProcess4Now(@RequestHeader("token") String token, @RequestBody UpdateBookRobotProcessDto robotProcessDto) throws PermissionException {
Long adviserId = (Long) SessionUtil.getVlaue(token,SessionUtil.PARTY_ID);
bookBiz.updateIsOpenRobotProcess4Now(adviserId,robotProcessDto);
return new ResponseDto<>();
}
}
\ No newline at end of file
......@@ -49,7 +49,17 @@ public class BookAdviserServiceImpl implements BookAdviserService {
return ResponseHandleUtil.toResponse(classifyIdByBookId);
}
/**
@Override
public ResponseEntity<ResponseDto<Integer>> getBookIsOpenProcess(Long bookId, Long channelId, Long adviserId) throws BizException {
BookAdviserDto base = bookAdviserBiz.getBase(bookId, channelId, adviserId);
if(base!=null){
return ResponseHandleUtil.toResponse(base.getIsOpenRobotProcess());
}
return null;
}
/**
* 获取编辑的推广书籍总数
*/
@Override
......
package com.pcloud.book.book.vo.request;
import com.pcloud.common.entity.BaseRequestVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.List;
@EqualsAndHashCode(callSuper = true)
@Data
@ToString(callSuper = true)
@ApiModel
public class UpdateBookRobotProcessDto extends BaseRequestVO {
private static final long serialVersionUID = -5581508584274149498L;
@ApiModelProperty("书籍id")
private Long bookId;
@ApiModelProperty("渠道id")
private Long channelId;
@ApiModelProperty("是否开启小睿流程")
private Integer isOpenRobotProcess;
}
......@@ -94,6 +94,25 @@ public class QrcodeSceneConsr {
}
/**
* 获取书籍对应二维码关系
*/
public List<Long> getAliQrByBookId(Long bookId) throws BizException {
LOGGER.info("【二维码-渠道(消)】 获取书籍对应二维码关系,<PARAM>.[bookId]=" + bookId);
List<Long> result = null;
try {
ResponseEntity<ResponseDto<List<Long>>> qr4Book = qrcodeSceneService.getAliQrByBookId(bookId);
result = ResponseHandleUtil.parseList(qr4Book,Long.class);
} catch (BizException e) {
LOGGER.warn("【二维码-渠道(消)】 获取书籍对应二维码关系,<ERROR>.[qrcodeSceneService.getQr4Book]:" + e.getMessage(), e);
throw new BizException(e.getCode(), e.getMessage());
} catch (Exception e) {
LOGGER.error("【二维码-渠道(消)】 获取书籍对应二维码关系,<ERROR>.[qrcodeSceneService.getQr4Book]:" + e.getMessage(), e);
throw new BookBizException(BookBizException.INVOKE_CHANNEL_ERROR, "获取书籍对应二维码关系失败~!");
}
return result;
}
/**
* 删除编辑二维码关联关系
*/
public void deleteAdviserBookQrRelation(Long adviserId, Long bookId) throws BizException {
......
......@@ -778,6 +778,9 @@ public interface BookGroupBiz {
*/
PageBeanNew<UserBookInfoVO> listUser4ReadingActivity(UserSelectParamDTO userSelectParamDTO);
public void createBookGroupAppletUrl(Long bookGroupId,Long bookId, Long channelId, Long adviserId);
/**
*根据小程序ID获取
* @param appletId
......@@ -830,6 +833,8 @@ public interface BookGroupBiz {
*/
List<BookServeDTO> getBookAndBookGroupServeIds(Long adviserId, Long bookId, Long channelId);
BookAppletSceneDTO getBookAppletBySceneId(Long sceneId);
/**
* 获取图书信息-首页
* @param adviserId
......
......@@ -1064,6 +1064,8 @@ public class BookGroupBizImpl implements BookGroupBiz {
public BookGroupDTO getBaseInfoBySceneId(Long sceneId) {
BookGroupDTO bookGroupDTO = bookGroupDao.getBaseInfoBySceneId(sceneId);
if (bookGroupDTO != null) {
BookAppletScene byBookGroupId = bookAppletSceneDao.getByBookGroupId(bookGroupDTO.getId());
bookGroupDTO.setAppletUrl(byBookGroupId==null?"":byBookGroupId.getAppletUrl());
bookGroupDTO.setUrl(bookGroupQrcodeDomain + "/" + bookGroupDTO.getId());
}
return bookGroupDTO;
......@@ -4604,6 +4606,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
}
@ParamLog("生成小程序码")
@Override
public void createBookGroupAppletUrl(Long bookGroupId,Long bookId, Long channelId, Long adviserId){
BookAdviserDto bookAdviserDto = bookAdviserDao.getBase(bookId,channelId,adviserId);
Long raysClassifyId = bookRaysClassifyDao.getClassifyIdByBookTemplateId(bookAdviserDto.getTempletId());
......@@ -4690,17 +4693,30 @@ public class BookGroupBizImpl implements BookGroupBiz {
if (null==bookAppletScene){
return;
}
BookGroupDTO bookGroupDTO = bookGroupDao.getBookBaseInfoById(bookAppletScene.getBookGroupId());
if (null==bookGroupDTO){
if(null!=bookAppletScene.getBookGroupId()){
BookGroupDTO bookGroupDTO = bookGroupDao.getBookBaseInfoById(bookAppletScene.getBookGroupId());
//用户书刊埋点
AppletUserBookcase appletUserBookcase = new AppletUserBookcase();
appletUserBookcase.setWechatUserId(wechatUserId);
appletUserBookcase.setAdviserId(bookGroupDTO.getCreateUser());
appletUserBookcase.setBookId(bookGroupDTO.getBookId());
appletUserBookcase.setChannelId(bookGroupDTO.getChannelId());
appletUserBookcaseBiz.addUserBook(appletUserBookcase);
}else if(bookAppletScene.getSceneId()!=null){
QrcodeSceneDto byId = qrcodeSceneConsr.getById(bookAppletScene.getSceneId());
//用户书刊埋点
AppletUserBookcase appletUserBookcase = new AppletUserBookcase();
appletUserBookcase.setWechatUserId(wechatUserId);
appletUserBookcase.setAdviserId(byId.getCreatedByUserLogin());
appletUserBookcase.setBookId(byId.getAdviserBookId());
appletUserBookcase.setChannelId(byId.getChannelPartyId());
appletUserBookcaseBiz.addUserBook(appletUserBookcase);
}else{
return;
}
//用户书刊埋点
AppletUserBookcase appletUserBookcase = new AppletUserBookcase();
appletUserBookcase.setWechatUserId(wechatUserId);
appletUserBookcase.setAdviserId(bookGroupDTO.getCreateUser());
appletUserBookcase.setBookId(bookGroupDTO.getBookId());
appletUserBookcase.setChannelId(bookGroupDTO.getChannelId());
appletUserBookcaseBiz.addUserBook(appletUserBookcase);
}
@Override
......@@ -4791,6 +4807,16 @@ public class BookGroupBizImpl implements BookGroupBiz {
return serveDTOList;
}
@Override
public BookAppletSceneDTO getBookAppletBySceneId(Long sceneId) {
BookAppletScene bySceneId = bookAppletSceneDao.getBySceneId(sceneId);
if(bySceneId==null){
return null;
}
BookAppletSceneDTO dto=new BookAppletSceneDTO();
BeanUtils.copyProperties(bySceneId,dto);
return dto;
}
private void fillBookServe(List<BookServeDTO> serveDTOList) {
if (ListUtils.isEmpty(serveDTOList)){
......
......@@ -34,4 +34,6 @@ public interface BookAppletSceneDao extends BaseDao<BookAppletScene> {
* @param bookGroupId
*/
public void deleteByBookGroupId(Long bookGroupId);
BookAppletScene getBySceneId(Long sceneId);
}
......@@ -35,4 +35,9 @@ public class BookAppletSceneDaoImpl extends BaseDaoImpl<BookAppletScene> impleme
public void deleteByBookGroupId(Long bookGroupId) {
getSessionTemplate().update(getStatement("deleteByBookGroupId"), bookGroupId);
}
@Override
public BookAppletScene getBySceneId(Long sceneId) {
return getSessionTemplate().selectOne(getStatement("getBySceneId"), sceneId);
}
}
......@@ -266,6 +266,19 @@ public class BookGroupDTO extends BaseDto {
*/
private List<BookGroupFriendGuide> friendGuideList;
/**
* 小程序url
*/
private String appletUrl;
public String getAppletUrl() {
return appletUrl;
}
public void setAppletUrl(String appletUrl) {
this.appletUrl = appletUrl;
}
public String getUrl() {
return url;
}
......
......@@ -45,4 +45,9 @@ public class BookAppletScene extends BaseEntity {
private Date updateTime;
private Boolean isDelete;
/**
* 现代纸书自建码的id
*/
private Long sceneId;
}
......@@ -3,6 +3,7 @@ package com.pcloud.book.group.service.impl;
import com.pcloud.book.group.biz.BookGroupAppBiz;
import com.pcloud.book.group.biz.BookGroupBiz;
import com.pcloud.book.group.dto.AltAndCountDTO;
import com.pcloud.book.group.dto.BookAppletSceneDTO;
import com.pcloud.book.group.dto.BookGroupCountDTO;
import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupKeywordResourceDTO;
......@@ -376,6 +377,15 @@ public class BookGroupServiceImpl implements BookGroupService {
}
}
@ApiOperation("通过sceneId查询小程序相关信息")
@GetMapping("getBookAppletBySceneId")
@Override
public ResponseEntity<ResponseDto<BookAppletSceneDTO>> getBookAppletBySceneId(@RequestParam("sceneId") Long sceneId){
BookAppletSceneDTO bookAppletSceneDTO=bookGroupBiz.getBookAppletBySceneId(sceneId);
return ResponseHandleUtil.toResponse(bookAppletSceneDTO);
}
@Override
public ResponseEntity<ResponseDto<Long>> getBookGroupId4OldData(Long raysBookId)
throws BizException {
......
......@@ -65,6 +65,7 @@
<result column="pro_label_id" property="proLabelId" jdbcType="BIGINT"/>
<result column="dep_label_id" property="depLabelId" jdbcType="BIGINT"/>
<result column="pur_label_id" property="purLabelId" jdbcType="BIGINT"/>
<result column="is_open_robot_process" property="isOpenRobotProcess" jdbcType="INTEGER" />
</resultMap>
<resultMap id="bookListPageMap" type="bookDto" extends ="bookMap">
......@@ -295,7 +296,7 @@
B.PUBLISH_DATE, B.COVER_IMG, B.AD_IMG, B.DETAIL, B.`VERSION`,B.BOOK_PRICE,B.ISSN,B.SERIAL_NUMBER,BA.IS_MAIN_EDITOR,
IF(ISNULL(BF.BOOK_FUND_ID),0,1) IS_FUND_SUPPORT,START_TIME,END_TIME,BA.TEMPLET_ID,BA.SECOND_TEMPLET_ID,
BA.GRA_LABEL_ID,BA.SUB_LABEL_ID,BA.VER_LABEL_ID,BA.AREA_LABEL_ID, BA.IS_PRINT isPrint,
BA.pro_label_id, BA.dep_label_id,BA.pur_label_id
BA.pro_label_id, BA.dep_label_id,BA.pur_label_id,BA.is_open_robot_process
FROM
BOOK_ADVISER BA
INNER JOIN
......@@ -474,7 +475,7 @@
IF(ISNULL(BF.BOOK_FUND_ID),0,1) IS_FUND_SUPPORT,A.TEMPLET_ID, if(G.ID IS NULL, A.LAST_MODIFIED_DATE, G.UPDATE_TIME) LAST_MODIFIED_DATE,
A.BOOK_ADVISER_ID,I.BOOK_STATUS, CONCAT('BK',A.BOOK_ID) uniqueNumber, if(G.ID IS NULL, 0, 1) isBookGroup, A.IS_PRINT isPrint,
G.id BOOK_GROUP_ID, G.group_qrcode_url groupQrcodeUrl,G.group_qrcode_name groupQrcodeName,
G.join_group_type
G.join_group_type,a.is_open_robot_process
FROM
BOOK_ADVISER A
INNER JOIN BOOK B ON A.BOOK_ID = B.BOOK_ID AND A.ADVISER_ID = #{adviserId} AND A.IS_DELETE = 0 AND B.IS_DELETE = 0
......@@ -582,7 +583,7 @@
<!-- 获取社群书列表(编辑) -->
<select id="listBookGroup4Adviser" resultMap="bookMap" parameterType="map">
SELECT
A.BOOK_ID, A.CHANNEL_ID, A.ADVISER_ID, A.IS_MAIN_EDITOR, T.TYPE_CODE, T.TYPE_NAME, B.ISBN, B.BOOK_NAME, B.REMARK,
A.BOOK_ID, A.CHANNEL_ID, A.ADVISER_ID, A.IS_MAIN_EDITOR, a.is_open_robot_process,T.TYPE_CODE, T.TYPE_NAME, B.ISBN, B.BOOK_NAME, B.REMARK,
B.AUTHOR, B.PUBLISH, B.PUBLISH_DATE, B.COVER_IMG, B.ORIGIN_NAME, B.BOOK_PRICE, B.ISSN, B.BOOK_NUM, B.SERIAL_NUMBER,
IF(ISNULL(BF.BOOK_FUND_ID),0,1) IS_FUND_SUPPORT, A.TEMPLET_ID, A.BOOK_ADVISER_ID, CONCAT('BK',A.BOOK_ID) uniqueNumber,
G.update_time LAST_MODIFIED_DATE, G.create_time CREATED_DATE, G.id BOOK_GROUP_ID, G.group_qrcode_url groupQrcodeUrl,
......@@ -2354,4 +2355,11 @@
group by b.BOOK_ID
</select>
<update id="updateIsOpenRobotProcess" parameterType="map">
update book_adviser set is_open_robot_process=#{isOpenRobotProcess}
where book_id=#{bookId}
and adviser_id=#{adviserId}
and is_delete=0
</update>
</mapper>
\ No newline at end of file
......@@ -20,6 +20,7 @@
<result column="SUB_LABEL_ID" property="subLabelId" jdbcType="BIGINT" />
<result column="VER_LABEL_ID" property="verLabelId" jdbcType="BIGINT" />
<result column="AREA_LABEL_ID" property="areaLabelId" jdbcType="BIGINT" />
<result column="is_open_robot_process" property="isOpenRobotProcess" jdbcType="BIT" />
</resultMap>
<resultMap id="manageAdviserMap" type="adviserManageDto" >
......@@ -39,14 +40,14 @@
<insert id="insert" parameterType="bookAdviser" useGeneratedKeys="true" keyProperty="bookAdviserId" flushCache="true">
INSERT INTO BOOK_ADVISER (
BOOK_ID, ADVISER_ID, CHANNEL_ID, CREATED_USER, CREATED_DATE,IS_MAIN_EDITOR, TEMPLET_ID, SECOND_TEMPLET_ID,
GRA_LABEL_ID,SUB_LABEL_ID,VER_LABEL_ID,AREA_LABEL_ID,pro_label_id, dep_label_id,pur_label_id
GRA_LABEL_ID,SUB_LABEL_ID,VER_LABEL_ID,AREA_LABEL_ID,pro_label_id, dep_label_id,pur_label_id,is_open_robot_process
)
VALUES (
#{bookId, jdbcType=VARCHAR}, #{adviserId, jdbcType=VARCHAR}, #{channelId, jdbcType=VARCHAR},
#{adviserId, jdbcType=BIGINT}, NOW(),#{isMainEditor, jdbcType=BIT},#{templetId, jdbcType=BIGINT},
#{secondTempletId, jdbcType=BIGINT},#{graLabelId, jdbcType=BIGINT},#{subLabelId, jdbcType=BIGINT},
#{verLabelId, jdbcType=BIGINT},#{areaLabelId, jdbcType=BIGINT},#{proLabelId,jdbcType=BIGINT},
#{depLabelId,jdbcType=BIGINT},#{purLabelId,jdbcType=BIGINT}
#{depLabelId,jdbcType=BIGINT},#{purLabelId,jdbcType=BIGINT},#{isOpenRobotProcess,jdbcType=BIT}
)
ON
DUPLICATE KEY UPDATE IS_DELETE = 0, IS_MAIN_EDITOR = #{isMainEditor, jdbcType=BIT}
......@@ -120,7 +121,7 @@
SELECT
BOOK_ADVISER_ID, BOOK_ID, TEMPLET_ID, CHANNEL_ID, ADVISER_ID, IS_DELETE,
TEMPLET_ID,SECOND_TEMPLET_ID,
GRA_LABEL_ID,SUB_LABEL_ID,VER_LABEL_ID,AREA_LABEL_ID
GRA_LABEL_ID,SUB_LABEL_ID,VER_LABEL_ID,AREA_LABEL_ID,is_open_robot_process
FROM
BOOK_ADVISER
WHERE
......
......@@ -10,11 +10,12 @@
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
<result column="is_delete" property="isDelete" jdbcType="BIT"/>
<result column="scene_id" property="sceneId" jdbcType="BIGINT"/>
</resultMap>
<sql id="Base_Column_List">
id, book_group_id, rays_classify_id, applet_id, applet_url, create_time, update_time, is_delete
id, book_group_id, rays_classify_id, applet_id, applet_url, create_time, update_time, is_delete,scene_id
</sql>
<insert id="insert" parameterType="com.pcloud.book.group.entity.BookAppletScene" useGeneratedKeys="true"
......@@ -40,6 +41,30 @@
</trim>
</insert>
<insert id="batchInsert" parameterType="com.pcloud.book.group.entity.BookAppletScene" useGeneratedKeys="true"
keyProperty="id">
insert into book_applet_scene(
rays_classify_id,
applet_id,
applet_url,
create_time,
update_time,
is_delete,
scene_id
) values
<foreach collection="list" item="item" index="index"
separator=",">
( #{item.raysClassifyId,jdbcType=BIGINT},
#{item.appletId,jdbcType=VARCHAR},
#{item.appletUrl,jdbcType=VARCHAR},
NOW(),
NOW(),
0,
#{item.sceneId,jdbcType=BIGINT})
</foreach>
</insert>
<select id="getByAppletId" parameterType="string" resultMap="BaseResultMap">
SELECT <include refid="Base_Column_List"/>
FROM book_applet_scene
......@@ -54,6 +79,13 @@
AND is_delete = 0
</select>
<select id="getBySceneId" parameterType="long" resultMap="BaseResultMap">
SELECT <include refid="Base_Column_List"/>
FROM book_applet_scene
WHERE scene_id=#{sceneId}
AND is_delete = 0
</select>
<select id="updateRaysClassifyIdByBookGroupId" parameterType="map">
UPDATE book_applet_scene
SET rays_classify_id = #{raysClassifyId},
......
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