Commit 8f29ba32 by 朱亚洁

feat:[1006170]新增添加企微落地页

parent 7692e9c9
package com.pcloud.book.group.dto;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.dto.CreateDefaultResourcePageDTO
* @Author zhuyajie
* @Description
* @Date 2021/12/1 16:38
**/
@Data
public class CreateDefaultResourcePageDTO {
private Long bookGroupId;
private Long sceneId;
private Long adviserId;
private Integer landingPageType;
}
...@@ -10,5 +10,4 @@ public class CreateGroupDTO { ...@@ -10,5 +10,4 @@ public class CreateGroupDTO {
private Integer joinGroupType; private Integer joinGroupType;
private Integer jumpType; private Integer jumpType;
private String jumpUrl; private String jumpUrl;
} }
...@@ -2,6 +2,7 @@ package com.pcloud.book.group.dto; ...@@ -2,6 +2,7 @@ package com.pcloud.book.group.dto;
import com.pcloud.common.dto.BaseDto; import com.pcloud.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
...@@ -70,4 +71,7 @@ public class ResourcePageDTO extends BaseDto { ...@@ -70,4 +71,7 @@ public class ResourcePageDTO extends BaseDto {
* 二维码图片解析后的地址 * 二维码图片解析后的地址
*/ */
private String url; private String url;
@ApiModelProperty("RAYS码落地页类型1本书服务2企微")
private Integer landingPageType;
} }
package com.pcloud.book.group.enums;
/**
* PageLandingPageType
*
* @Author zhuyajie
* @Date 2021/12/1 13:23
*/
public enum PageLandingPageTypeEnum {
/**
* RAYS码落地页类型1本书服务2企微
**/
RESOURCE(1), WXWORK(2);
private Integer code;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
PageLandingPageTypeEnum(Integer code) {
this.code = code;
}
}
...@@ -4,6 +4,7 @@ package com.pcloud.book.group.service; ...@@ -4,6 +4,7 @@ package com.pcloud.book.group.service;
import com.pcloud.book.group.dto.AddBookGroupServeDTO; import com.pcloud.book.group.dto.AddBookGroupServeDTO;
import com.pcloud.book.group.dto.BookGroupDTO; import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupServiceDTO; import com.pcloud.book.group.dto.BookGroupServiceDTO;
import com.pcloud.book.group.dto.CreateDefaultResourcePageDTO;
import com.pcloud.book.group.dto.CreateGroupDTO; import com.pcloud.book.group.dto.CreateGroupDTO;
import com.pcloud.common.dto.ResponseDto; import com.pcloud.common.dto.ResponseDto;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
...@@ -29,4 +30,8 @@ public interface BookGroupDataService { ...@@ -29,4 +30,8 @@ public interface BookGroupDataService {
@ApiOperation("批量更新bookgroup对应的sceneId") @ApiOperation("批量更新bookgroup对应的sceneId")
@PostMapping("batchUpdateSceneIdByBookGroup") @PostMapping("batchUpdateSceneIdByBookGroup")
void batchUpdateSceneIdByBookGroup(@RequestBody List<AddBookGroupServeDTO> list); void batchUpdateSceneIdByBookGroup(@RequestBody List<AddBookGroupServeDTO> list);
@ApiOperation("RAYS码创建默认资源页")
@PostMapping("createDefaultResourcePage")
void createDefaultResourcePage(@RequestBody CreateDefaultResourcePageDTO createDefaultResourcePageDTO);
} }
...@@ -297,4 +297,10 @@ public interface BookGroupService { ...@@ -297,4 +297,10 @@ public interface BookGroupService {
ResponseEntity<ResponseDto<Boolean>> checkBookChildGrade(@RequestParam("bookId") Long bookId, ResponseEntity<ResponseDto<Boolean>> checkBookChildGrade(@RequestParam("bookId") Long bookId,
@RequestParam("adviserId") Long adviserId, @RequestParam("adviserId") Long adviserId,
@RequestParam("channelId") Long channelId); @RequestParam("channelId") Long channelId);
@ApiOperation("资源页配置信息")
@GetMapping("getResourcePageByQrcode")
ResponseEntity<ResponseDto<ResourcePageDTO>> getResourcePageByQrcode(@RequestParam(value = "sceneId", required = false) Long sceneId,
@RequestParam(value = "bookGroupId", required = false) Long bookGroupId);
} }
...@@ -235,6 +235,12 @@ ...@@ -235,6 +235,12 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.pcloud.facade</groupId>
<artifactId>pcloud-facade-wxwork</artifactId>
<version>${pcloud-facade3.version}</version>
</dependency>
<dependency>
<groupId>fakepath</groupId> <groupId>fakepath</groupId>
<artifactId>jbarcode</artifactId> <artifactId>jbarcode</artifactId>
<version>0.2.8</version> <version>0.2.8</version>
......
...@@ -704,4 +704,13 @@ public class QrcodeSceneConsr { ...@@ -704,4 +704,13 @@ public class QrcodeSceneConsr {
} }
return result; return result;
} }
@ParamLog("更新落地页类型")
public void updateLandingPageType(Long sceneId, Integer landingPageType) {
try {
qrcodeSceneService.updateLandingPageType(sceneId, landingPageType);
}catch (Exception e) {
LOGGER.error("调用qrcodeSceneService.updateLandingPageType失败"+e.getMessage(),e);
}
}
} }
package com.pcloud.book.consumer.shareimage; package com.pcloud.book.consumer.shareimage;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.facade.shareimage.dto.HtmlDto;
import com.pcloud.facade.shareimage.facade.Htm2ImgService;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Repository("shareImageConsr") @Repository("shareImageConsr")
public class ShareImageConsr { public class ShareImageConsr {
private static final Logger LOGGER = LoggerFactory.getLogger(ShareImageConsr.class);
/*
@Autowired @Autowired
private Html2PdfService html2PdfService; private Htm2ImgService htm2ImgService;
*/
/**
* html转pdf
* @param htmlDto
*//*
@ParamLog(value = "html转pdf", isBefore = false) @ParamLog("html转图片")
public String htmlToPdf(HtmlDto htmlDto) { public String toJPGByChrome(HtmlDto htmlDto){
String pdfUrl = ""; String img = null;
try { try {
//pdfUrl = ResponseHandleUtil.parseResponse(html2PdfService.htmlToPdf(htmlDto), String.class); img = ResponseHandleUtil.parseResponse(htm2ImgService.toJPGByChrome(htmlDto),String.class);
} catch (Exception e) { }catch (Exception e){
LOGGER.error("html2PdfService.htmlToPdf" + e.getMessage(), e); log.error("调用htm2ImgService.toJPGByChrome失败"+e.getMessage(),e);
} }
return pdfUrl; return img;
} }
*/
} }
package com.pcloud.book.consumer.wodapp; package com.pcloud.book.consumer.wordapp;
import com.pcloud.common.core.aspect.ParamLog; import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.utils.ResponseHandleUtil; import com.pcloud.common.utils.ResponseHandleUtil;
......
package com.pcloud.book.consumer.wxwork;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.facade.wxwork.contact.service.WxContactService;
import com.pcloud.facade.wxwork.contact.vo.WxContactWayVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import lombok.extern.slf4j.Slf4j;
/**
* @ClassName com.pcloud.book.consumer.wxwork.WxworkConsr
* @Author zhuyajie
* @Description 企业微信
* @Date 2021/12/2 18:42
**/
@Slf4j
@Component
public class WxworkConsr {
@Autowired
private WxContactService wxContactService;
@ParamLog("查个人活码")
public WxContactWayVO getContactWayById(Long partyId, String systemCode, Long contactId) {
try {
return ResponseHandleUtil.parseResponse(wxContactService.getContactWayById(partyId, systemCode, contactId),WxContactWayVO.class);
} catch (Exception e) {
log.error("调用wxContactService.getContactWayById失败"+e.getMessage(),e);
}
return null;
}
}
...@@ -21,6 +21,8 @@ import com.pcloud.book.group.vo.ResourcePageOneServe; ...@@ -21,6 +21,8 @@ import com.pcloud.book.group.vo.ResourcePageOneServe;
import com.pcloud.book.group.vo.ResourcePageVO; import com.pcloud.book.group.vo.ResourcePageVO;
import com.pcloud.book.group.vo.UpdateResourceColumnVO; import com.pcloud.book.group.vo.UpdateResourceColumnVO;
import com.pcloud.book.group.vo.UpdateResourcePageVO; import com.pcloud.book.group.vo.UpdateResourcePageVO;
import com.pcloud.book.group.vo.WxworkPageCreateVO;
import com.pcloud.book.group.vo.WxworkPageVO;
import com.pcloud.channelcenter.qrcode.dto.BookSceneIdListDTO; import com.pcloud.channelcenter.qrcode.dto.BookSceneIdListDTO;
import com.pcloud.common.exceptions.BizException; import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBeanNew; import com.pcloud.common.page.PageBeanNew;
...@@ -46,6 +48,12 @@ public interface ResourcePageBiz { ...@@ -46,6 +48,12 @@ public interface ResourcePageBiz {
*/ */
Long updateResourcePage(UpdateResourcePageVO updateResourcePageVO); Long updateResourcePage(UpdateResourcePageVO updateResourcePageVO);
/** /**
* @Description 创建默认资源页
* @Author zhuyajie
* @Date 13:38 2021/12/1
**/
ResourcePage createDefaultResourcePage(Long bookGroupId, Long adviserId, Long sceneId, Integer openRays, Integer landingPageType);
/**
* 更新资源栏目设置 * 更新资源栏目设置
* @author:zhuyajie * @author:zhuyajie
* @date:2021/3/26 17:27 * @date:2021/3/26 17:27
...@@ -483,4 +491,33 @@ public interface ResourcePageBiz { ...@@ -483,4 +491,33 @@ public interface ResourcePageBiz {
* 客户端-查询应用或作品推荐资源 * 客户端-查询应用或作品推荐资源
*/ */
List<RecommendServeVO> getAppRecommendServe(Long wechatUserId, Long bookId, Long adviserId, Long channelId, Long serveId, String serveType,Long sceneId); List<RecommendServeVO> getAppRecommendServe(Long wechatUserId, Long bookId, Long adviserId, Long channelId, Long serveId, String serveType,Long sceneId);
/**
* @Description 更新落地页类型
* @Author zhuyajie
* @Date 13:53 2021/12/1
**/
void updateLandingPageType(Long sceneId, Integer landingPageType);
/**
* @Description 企微落地页配置
* @Author zhuyajie
* @Date 14:46 2021/12/2
**/
void createWxworkPage(WxworkPageCreateVO wxworkPageCreateVO);
/**
* @Description 查企微落地页配置
* @Author zhuyajie
* @Date 15:01 2021/12/2
**/
WxworkPageVO getWxworkPageByPageId(Long resourcePageId, Boolean isWechat);
/**
* @Description 资源页配置
* @Author zhuyajie
* @Date 10:44 2021/12/3
**/
ResourcePageDTO getResourcePageByQrcode(Long sceneId, Long bookGroupId);
} }
...@@ -54,7 +54,7 @@ import com.pcloud.book.consumer.user.AgentConsr; ...@@ -54,7 +54,7 @@ import com.pcloud.book.consumer.user.AgentConsr;
import com.pcloud.book.consumer.user.ChannelConsr; import com.pcloud.book.consumer.user.ChannelConsr;
import com.pcloud.book.consumer.wechat.WechatConsr; import com.pcloud.book.consumer.wechat.WechatConsr;
import com.pcloud.book.consumer.wechatgroup.WechatGroupConsr; import com.pcloud.book.consumer.wechatgroup.WechatGroupConsr;
import com.pcloud.book.consumer.wodapp.WordappConsr; import com.pcloud.book.consumer.wordapp.WordappConsr;
import com.pcloud.book.group.biz.BookGroupAppBiz; import com.pcloud.book.group.biz.BookGroupAppBiz;
import com.pcloud.book.group.biz.BookGroupBiz; import com.pcloud.book.group.biz.BookGroupBiz;
import com.pcloud.book.group.biz.BookGroupClassifyBiz; import com.pcloud.book.group.biz.BookGroupClassifyBiz;
......
...@@ -406,4 +406,60 @@ public class ResourcePageConstants { ...@@ -406,4 +406,60 @@ public class ResourcePageConstants {
} }
} }
/**
* @Description 企业微信落地页模板
* @Author zhuyajie
* @Date 15:03 2021/12/2
**/
public enum WxworkPageTemplateTypeEnum{
FIXED_NORMAL(1,"固定-标准版"),
CUSTOM(2,"自定义"),
FIXED_FILE1(3,"固定-少资料"),
FIXED_FILE2(4,"固定-多资料");
private Integer code;
private String name;
public Integer getCode() {
return code;
}
public String getName() {
return name;
}
WxworkPageTemplateTypeEnum(Integer code, String name) {
this.code = code;
this.name = name;
}
}
/**
* @Description 企业微信落地页二维码类型
* @Author zhuyajie
* @Date 18:01 2021/12/2
**/
public enum WxworkPageQrcodeTypeEnum{
/**
* 1sop个人活码
*/
SOP_QRCODE(1),
/**
* 2sop群活码
*/
SOP_GROUP_QRCODE(2),
/**
* 企微个人码
*/
WXWORK_QRCODE(3);
private Integer code;
public Integer getCode() {
return code;
}
WxworkPageQrcodeTypeEnum(Integer code) {
this.code = code;
}
}
} }
package com.pcloud.book.group.dao;
import com.pcloud.book.group.entity.ResourcePageWxwork;
import com.pcloud.common.core.dao.BaseDao;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 企业微信落地页(ResourcePageWxwork)表数据库访问层
*
* @author
* @since 2021-12-02 14:30:15
*/
public interface ResourcePageWxworkDao extends BaseDao<ResourcePageWxwork> {
ResourcePageWxwork getByPageId(Long resourcePageId);
}
package com.pcloud.book.group.dao.impl;
import com.pcloud.book.group.dao.ResourcePageWxworkDao;
import com.pcloud.book.group.entity.ResourcePageWxwork;
import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component;
/**
* @ClassName com.pcloud.book.group.dao.impl.ResourcePageWxworkDaoImpl
* @Author zhuyajie
* @Description 企业微信落地页
* @Date 2021/12/2 14:32
**/
@Component
public class ResourcePageWxworkDaoImpl extends BaseDaoImpl<ResourcePageWxwork> implements ResourcePageWxworkDao {
@Override
public ResourcePageWxwork getByPageId(Long resourcePageId) {
return getSessionTemplate().selectOne(getStatement("getByPageId"), resourcePageId);
}
}
package com.pcloud.book.group.dto;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.dto.WxworkPageZipDTO
* @Author zhuyajie
* @Description 企业微信落地页资料图片
* @Date 2021/12/2 14:40
**/
@Data
public class WxworkPageFileDTO implements Serializable {
@ApiModelProperty("资料名称")
private String fileName;
@ApiModelProperty("资料图片")
private String filePic;
}
package com.pcloud.book.group.dto;
import java.io.Serializable;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.dto.WxworkPageFixedDTO
* @Author zhuyajie
* @Description 企业微信固定模板参数
* @Date 2021/12/2 14:42
**/
@Data
public class WxworkPageFixedDTO implements Serializable {
@ApiModelProperty("落地页标题")
private String pageTitle;
@ApiModelProperty("开始时间")
private String startTime;
@ApiModelProperty("结束时间")
private String endTime;
@ApiModelProperty("资料图片")
private List<WxworkPageFileDTO> fileDTOS;
@ApiModelProperty("限制数量")
private Integer limitNum;
@ApiModelProperty("资料logo图")
private String logoImg;
@ApiModelProperty("免费领取")
private String receiveMode;
@ApiModelProperty("扫码关注")
private String followMode;
@ApiModelProperty("扫码添加老师")
private String bottomTips;
/**
* 图片高度
*/
private Integer height;
}
...@@ -2,6 +2,7 @@ package com.pcloud.book.group.entity; ...@@ -2,6 +2,7 @@ package com.pcloud.book.group.entity;
import com.pcloud.common.entity.BaseEntity; import com.pcloud.common.entity.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
...@@ -87,4 +88,7 @@ public class ResourcePage extends BaseEntity { ...@@ -87,4 +88,7 @@ public class ResourcePage extends BaseEntity {
* 图书印章样式 * 图书印章样式
*/ */
private Integer watermarkStyle; private Integer watermarkStyle;
@ApiModelProperty("RAYS码落地页类型1本书服务2企微")
private Integer landingPageType;
} }
package com.pcloud.book.group.entity;
import com.pcloud.common.entity.BaseEntity;
import java.util.Date;
import lombok.Data;
/**
* 企业微信落地页(ResourcePageWxwork)实体类
*
* @author
* @since 2021-12-02 14:30:15
*/
@Data
public class ResourcePageWxwork extends BaseEntity {
private static final long serialVersionUID = -95982243193843516L;
/**
* 主键
*/
private Long id;
/**
* 资源页id
*/
private Long resourcePageId;
/**
* 模板类型1自定义2固定3模板其他
*/
private Integer templateType;
/**
* 是否展示图书信息1是0否
*/
private Integer displayBook;
/**
* 引导语
*/
private String guide;
/**
* 二维码类型(1企微个人码2企微群码3crm个人码4crm群码)
*/
private Integer qrcodeType;
/**
* 二维码id
*/
private Long qrcodeId;
/**
* 二维码url
*/
private String qrcodeUrl;
/**
* 自定义背景图
*/
private String basePic;
/**
* 自定义:二维码位置上方间距百分比
*/
private Integer topSpace;
/**
* 自定义:二维码位置左边间距百分比
*/
private Integer leftSpace;
/**
* html生成图
*/
private String htmlPic;
/**
* 其他模板参数
*/
private String fixedSet;
/**
* 创建人
*/
private Long createUser;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改时间
*/
private Date updateTime;
}
...@@ -8,6 +8,8 @@ import com.pcloud.book.group.entity.ResourceRecomManage; ...@@ -8,6 +8,8 @@ import com.pcloud.book.group.entity.ResourceRecomManage;
import com.pcloud.book.group.vo.ResourcePageVO; import com.pcloud.book.group.vo.ResourcePageVO;
import com.pcloud.book.group.vo.UpdateResourceColumnVO; import com.pcloud.book.group.vo.UpdateResourceColumnVO;
import com.pcloud.book.group.vo.UpdateResourcePageVO; import com.pcloud.book.group.vo.UpdateResourcePageVO;
import com.pcloud.book.group.vo.WxworkPageCreateVO;
import com.pcloud.book.group.vo.WxworkPageVO;
import com.pcloud.channelcenter.qrcode.dto.BookSceneIdListDTO; import com.pcloud.channelcenter.qrcode.dto.BookSceneIdListDTO;
import com.pcloud.common.dto.ResponseDto; import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.utils.SessionUtil; import com.pcloud.common.utils.SessionUtil;
...@@ -371,4 +373,32 @@ public class ResourcePageFacade { ...@@ -371,4 +373,32 @@ public class ResourcePageFacade {
Long wechatUserId = Cookie.getId(userInfo,Cookie._WECHAT_USER_ID); Long wechatUserId = Cookie.getId(userInfo,Cookie._WECHAT_USER_ID);
return new ResponseDto<>(resourcePageBiz.getAppRecommendServe(wechatUserId, bookId, adviserId, channelId,serveId, serveType,sceneId)); return new ResponseDto<>(resourcePageBiz.getAppRecommendServe(wechatUserId, bookId, adviserId, channelId,serveId, serveType,sceneId));
} }
@ApiOperation(("更新落地页类型"))
@GetMapping("updateLandingPageType")
public ResponseDto<?> updateLandingPageType(@RequestHeader("token") String token,
@RequestParam("sceneId") Long sceneId,
@RequestParam("landingPageType") Integer landingPageType) {
SessionUtil.getInfoToken4Redis(token);
resourcePageBiz.updateLandingPageType(sceneId, landingPageType);
return new ResponseDto<>();
}
@ApiOperation("企微落地页配置")
@PostMapping("createWxworkPage")
public ResponseDto<?> createWxworkPage(@RequestHeader("token") String token, @RequestBody WxworkPageCreateVO wxworkPageCreateVO) {
Long partyId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
wxworkPageCreateVO.setCreateUser(partyId);
resourcePageBiz.createWxworkPage(wxworkPageCreateVO);
return new ResponseDto<>();
}
@ApiOperation("编辑端查企微落地页配置")
@GetMapping("getWxworkPageByPageIdByAdviser")
public ResponseDto<?> getWxworkPageByPageIdByAdviser(@RequestHeader("token") String token, @RequestParam("resourcePageId") Long resourcePageId){
SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
return new ResponseDto<>(resourcePageBiz.getWxworkPageByPageId(resourcePageId,false));
}
} }
...@@ -7,6 +7,7 @@ import com.pcloud.book.group.biz.ResourcePageBiz; ...@@ -7,6 +7,7 @@ import com.pcloud.book.group.biz.ResourcePageBiz;
import com.pcloud.book.group.dto.AddBookGroupServeDTO; import com.pcloud.book.group.dto.AddBookGroupServeDTO;
import com.pcloud.book.group.dto.BookGroupDTO; import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupServiceDTO; import com.pcloud.book.group.dto.BookGroupServiceDTO;
import com.pcloud.book.group.dto.CreateDefaultResourcePageDTO;
import com.pcloud.book.group.dto.CreateGroupDTO; import com.pcloud.book.group.dto.CreateGroupDTO;
import com.pcloud.book.group.entity.BookGroup; import com.pcloud.book.group.entity.BookGroup;
import com.pcloud.book.group.enums.JoinGroupTypeEnum; import com.pcloud.book.group.enums.JoinGroupTypeEnum;
...@@ -68,4 +69,17 @@ public class BookGroupDataServiceImpl implements BookGroupDataService { ...@@ -68,4 +69,17 @@ public class BookGroupDataServiceImpl implements BookGroupDataService {
public void batchUpdateSceneIdByBookGroup(@RequestBody List<AddBookGroupServeDTO> list){ public void batchUpdateSceneIdByBookGroup(@RequestBody List<AddBookGroupServeDTO> list){
resourcePageBiz.batchUpdateSceneIdByBookGroup(list); resourcePageBiz.batchUpdateSceneIdByBookGroup(list);
} }
@Override
@PostMapping("createDefaultResourcePage")
public void createDefaultResourcePage(@RequestBody CreateDefaultResourcePageDTO dto) {
if (null == dto || null == dto.getAdviserId()) {
return;
}
if (null == dto.getBookGroupId() && null == dto.getSceneId()) {
return;
}
//创建默认resourcePage
resourcePageBiz.createDefaultResourcePage(dto.getBookGroupId(),dto.getAdviserId(),dto.getSceneId(),0,dto.getLandingPageType());
}
} }
...@@ -504,4 +504,12 @@ public class BookGroupServiceImpl implements BookGroupService { ...@@ -504,4 +504,12 @@ public class BookGroupServiceImpl implements BookGroupService {
@RequestParam("channelId") Long channelId) { @RequestParam("channelId") Long channelId) {
return ResponseHandleUtil.toResponse(resourcePageBiz.checkBookChildGrade(bookId, adviserId, channelId)); return ResponseHandleUtil.toResponse(resourcePageBiz.checkBookChildGrade(bookId, adviserId, channelId));
} }
@Override
@GetMapping("getResourcePageByQrcode")
public ResponseEntity<ResponseDto<ResourcePageDTO>> getResourcePageByQrcode(
@RequestParam(value = "sceneId", required = false) Long sceneId,
@RequestParam(value = "bookGroupId", required = false) Long bookGroupId){
return ResponseHandleUtil.toResponse(resourcePageBiz.getResourcePageByQrcode(sceneId,bookGroupId));
}
} }
...@@ -120,4 +120,8 @@ public class ResourcePageVO extends BaseDto { ...@@ -120,4 +120,8 @@ public class ResourcePageVO extends BaseDto {
* 图书印章样式 * 图书印章样式
*/ */
private Integer watermarkStyle; private Integer watermarkStyle;
@ApiModelProperty("RAYS码落地页类型1本书服务2企微")
private Integer landingPageType;
@ApiModelProperty("企业微信落地页信息")
private WxworkPageVO wxworkPageVO;
} }
...@@ -77,4 +77,7 @@ public class UpdateResourcePageVO { ...@@ -77,4 +77,7 @@ public class UpdateResourcePageVO {
* 图书印章样式 * 图书印章样式
*/ */
private Integer watermarkStyle; private Integer watermarkStyle;
@ApiModelProperty("RAYS码落地页类型1本书服务2企微")
private Integer landingPageType;
} }
package com.pcloud.book.group.vo;
import com.pcloud.book.group.dto.WxworkPageFixedDTO;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.vo.WxworkPageCreateVO
* @Author zhuyajie
* @Description 企业微信落地页配置
* @Date 2021/12/2 14:37
**/
@Data
public class WxworkPageCreateVO {
/**
* 资源页id
*/
private Long resourcePageId;
/**
* 模板类型1固定2自定义3模板其他
*/
private Integer templateType;
/**
* 是否展示图书信息1是0否
*/
private Integer displayBook;
/**
* 引导语
*/
private String guide;
/**
* 二维码类型(1企微个人码2企微群码3crm个人码4crm群码)
*/
private Integer qrcodeType;
/**
* 二维码id
*/
private Long qrcodeId;
/**
* 二维码url
*/
private String qrcodeUrl;
/**
* 自定义背景图
*/
private String basePic;
/**
* 自定义:二维码位置上方间距百分比
*/
private Integer topSpace;
/**
* 自定义:二维码位置左边间距百分比
*/
private Integer leftSpace;
/**
* html
*/
private String html;
/**
* 其他模板参数
*/
private WxworkPageFixedDTO fixedDTO;
/**
* 创建人
*/
private Long createUser;
/**
* 图片高度
*/
private Integer height;
}
package com.pcloud.book.group.vo;
import com.pcloud.book.group.dto.WxworkPageFixedDTO;
import com.pcloud.common.dto.BaseDto;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.vo.WxworkPageVO
* @Author zhuyajie
* @Description 企业微信落地页
* @Date 2021/12/2 14:37
**/
@Data
public class WxworkPageVO extends BaseDto {
/**
* 资源页id
*/
private Long resourcePageId;
/**
* 模板类型1自定义2固定3模板其他
*/
private Integer templateType;
/**
* 是否展示图书信息1是0否
*/
private Integer displayBook;
/**
* 引导语
*/
private String guide;
/**
* 二维码类型(1企微个人码2企微群码3crm个人码4crm群码)
*/
private Integer qrcodeType;
/**
* 二维码id
*/
private Long qrcodeId;
/**
* 二维码名称
*/
private String qrcodeName;
/**
* 二维码url
*/
private String qrcodeUrl;
/**
* 自定义背景图
*/
private String basePic;
/**
* 自定义:二维码位置上方间距百分比
*/
private Integer topSpace;
/**
* 自定义:二维码位置左边间距百分比
*/
private Integer leftSpace;
/**
* html生成图
*/
private String htmlPic;
/**
* 其他模板参数
*/
private WxworkPageFixedDTO fixedDTO;
/**
* 创建人
*/
private Long createUser;
/**
* 图片高度
*/
private Integer height;
}
...@@ -24,11 +24,12 @@ ...@@ -24,11 +24,12 @@
<result property="fontColor" column="font_color" jdbcType="VARCHAR"/> <result property="fontColor" column="font_color" jdbcType="VARCHAR"/>
<result property="watermark" column="watermark" jdbcType="VARCHAR"/> <result property="watermark" column="watermark" jdbcType="VARCHAR"/>
<result property="watermarkStyle" column="watermark_style" jdbcType="TINYINT"/> <result property="watermarkStyle" column="watermark_style" jdbcType="TINYINT"/>
<result property="landingPageType" column="landing_page_type" jdbcType="INTEGER"/>
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id, book_group_id, style, show_book, open_rays, open_food, create_time, update_time, create_user, qrcode_url, scene_id, official_scene_id, id, book_group_id, style, show_book, open_rays, open_food, create_time, update_time, create_user, qrcode_url, scene_id, official_scene_id,
book_cover, book_id, channel_id, background_img, navigation_color, navigation_format, font_color,watermark, watermark_style book_cover, book_id, channel_id, background_img, navigation_color, navigation_format, font_color,watermark, watermark_style, landing_page_type
</sql> </sql>
<!--查询单个--> <!--查询单个-->
...@@ -43,9 +44,9 @@ ...@@ -43,9 +44,9 @@
<!--新增所有列--> <!--新增所有列-->
<insert id="insert" keyProperty="id" useGeneratedKeys="true"> <insert id="insert" keyProperty="id" useGeneratedKeys="true">
insert into book.resource_page(book_group_id, style, show_book, open_rays, open_food, create_time, update_time, create_user, insert into book.resource_page(book_group_id, style, show_book, open_rays, open_food, create_time, update_time, create_user,
qrcode_url, scene_id, book_cover, book_id, channel_id, background_img, font_color, watermark, watermark_style) qrcode_url, scene_id, book_cover, book_id, channel_id, background_img, font_color, watermark, watermark_style, landing_page_type)
values (#{bookGroupId}, #{style}, #{showBook}, #{openRays}, IFNULL(#{openFood},0), now(), now(), #{createUser}, #{qrcodeUrl}, #{sceneId}, #{bookCover}, values (#{bookGroupId}, #{style}, #{showBook}, #{openRays}, IFNULL(#{openFood},0), now(), now(), #{createUser}, #{qrcodeUrl}, #{sceneId}, #{bookCover},
#{bookId}, #{channelId}, #{backgroundImg}, #{fontColor}, #{watermark}, #{watermarkStyle}) #{bookId}, #{channelId}, #{backgroundImg}, #{fontColor}, #{watermark}, #{watermarkStyle}, IFNULL(#{landingPageType},1))
</insert> </insert>
<!--通过主键修改数据--> <!--通过主键修改数据-->
...@@ -84,7 +85,10 @@ ...@@ -84,7 +85,10 @@
background_img = #{backgroundImg}, background_img = #{backgroundImg},
font_color = #{fontColor}, font_color = #{fontColor},
watermark = #{watermark}, watermark = #{watermark},
watermark_style = #{watermarkStyle} watermark_style = #{watermarkStyle},
<if test="landingPageType != null">
landing_page_type = #{landingPageType},
</if>
</set> </set>
where id = #{id} where id = #{id}
</update> </update>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pcloud.book.group.dao.impl.ResourcePageWxworkDaoImpl">
<resultMap type="com.pcloud.book.group.entity.ResourcePageWxwork" id="ResourcePageWxworkMap">
<result property="id" column="id" jdbcType="INTEGER"/>
<result property="resourcePageId" column="resource_page_id" jdbcType="INTEGER"/>
<result property="templateType" column="template_type" jdbcType="INTEGER"/>
<result property="displayBook" column="display_book" jdbcType="INTEGER"/>
<result property="guide" column="guide" jdbcType="VARCHAR"/>
<result property="qrcodeType" column="qrcode_type" jdbcType="INTEGER"/>
<result property="qrcodeId" column="qrcode_id" jdbcType="INTEGER"/>
<result property="qrcodeUrl" column="qrcode_url" jdbcType="VARCHAR"/>
<result property="basePic" column="base_pic" jdbcType="VARCHAR"/>
<result property="topSpace" column="top_space" jdbcType="INTEGER"/>
<result property="leftSpace" column="left_space" jdbcType="INTEGER"/>
<result property="htmlPic" column="html_pic" jdbcType="VARCHAR"/>
<result property="fixedSet" column="fixed_set" jdbcType="VARCHAR"/>
<result property="createUser" column="create_user" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<sql id="Base_columns">
id, resource_page_id, template_type, display_book, guide, qrcode_type, qrcode_id, qrcode_url, base_pic, top_space, left_space, html_pic, fixed_set, create_user, create_time, update_time
</sql>
<!--查询单个-->
<select id="getById" resultMap="ResourcePageWxworkMap">
select
<include refid="Base_columns"/>
from resource_page_wxwork
where id = #{id}
</select>
<!--新增所有列-->
<insert id="insert" keyProperty="id" useGeneratedKeys="true">
insert into resource_page_wxwork(resource_page_id, template_type, display_book, guide, qrcode_type, qrcode_id, qrcode_url, base_pic, top_space, left_space, html_pic, fixed_set, create_user, create_time, update_time)
values (#{resourcePageId}, #{templateType}, #{displayBook}, #{guide}, #{qrcodeType}, #{qrcodeId}, #{qrcodeUrl}, #{basePic}, #{topSpace}, #{leftSpace}, #{htmlPic}, #{fixedSet}, #{createUser}, now(), now())
</insert>
<!--通过主键修改数据-->
<update id="update">
update resource_page_wxwork
<set>
<if test="templateType != null">
template_type = #{templateType},
</if>
<if test="displayBook != null">
display_book = #{displayBook},
</if>
guide = #{guide},
<if test="qrcodeType != null">
qrcode_type = #{qrcodeType},
</if>
<if test="qrcodeId != null">
qrcode_id = #{qrcodeId},
</if>
<if test="qrcodeUrl != null and qrcodeUrl != ''">
qrcode_url = #{qrcodeUrl},
</if>
base_pic = #{basePic},
top_space = #{topSpace},
left_space = #{leftSpace},
html_pic = #{htmlPic},
fixed_set = #{fixedSet},
update_time = now(),
</set>
where id = #{id}
</update>
<!--通过主键删除-->
<delete id="deleteById">
delete from resource_page_wxwork where id = #{id}
</delete>
<select id="getByPageId" resultMap="ResourcePageWxworkMap" parameterType="long">
select <include refid="Base_columns"/>
from resource_page_wxwork
where resource_page_id = #{resourcePageId}
limit 1
</select>
</mapper>
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