Commit ad9bea68 by 朱亚洁

feat:[1006809]书码流程

parent f11bbe78
...@@ -1055,11 +1055,13 @@ public class BookBizImpl implements BookBiz { ...@@ -1055,11 +1055,13 @@ public class BookBizImpl implements BookBiz {
// 设置二维码相关信息 // 设置二维码相关信息
bookSet.setQrInfo(pageBean.getRecordList()); bookSet.setQrInfo(pageBean.getRecordList());
//社群书相关信息 //社群书相关信息
bookSet.setBookGroupInfo(pageBean.getRecordList()); // bookSet.setBookGroupInfo(pageBean.getRecordList());
//设置书刊资源目录按钮展示 //设置书刊资源目录按钮展示
bookSet.setBookCatalogInfo(pageBean.getRecordList(), adviserId); bookSet.setBookCatalogInfo(pageBean.getRecordList(), adviserId);
//设置书刊是否是小睿书(开启小睿流程) //设置书刊是否是小睿书(开启小睿流程)
bookSet.setOpenRobotProcess(pageBean.getRecordList()); bookSet.setOpenRobotProcess(pageBean.getRecordList());
//设置Rays码资源数量
bookSet.setQrcodeMessage(pageBean.getRecordList());
return pageBean; return pageBean;
} }
......
...@@ -61,8 +61,10 @@ import com.pcloud.book.group.biz.ResourcePageBiz; ...@@ -61,8 +61,10 @@ import com.pcloud.book.group.biz.ResourcePageBiz;
import com.pcloud.book.group.dao.BookGroupClassifyDao; import com.pcloud.book.group.dao.BookGroupClassifyDao;
import com.pcloud.book.group.dao.BookGroupDao; import com.pcloud.book.group.dao.BookGroupDao;
import com.pcloud.book.group.dto.BookGroupDTO; import com.pcloud.book.group.dto.BookGroupDTO;
import com.pcloud.book.group.dto.BookGroupServeCountDTO;
import com.pcloud.book.group.dto.BookGroupStatisticDTO; import com.pcloud.book.group.dto.BookGroupStatisticDTO;
import com.pcloud.book.util.common.ThreadPoolUtils; import com.pcloud.book.util.common.ThreadPoolUtils;
import com.pcloud.channelcenter.base.constants.ChannelConstants;
import com.pcloud.channelcenter.base.constants.MessageFromTypeEnum; import com.pcloud.channelcenter.base.constants.MessageFromTypeEnum;
import com.pcloud.channelcenter.qrcode.dto.Book4CatalogDTO; import com.pcloud.channelcenter.qrcode.dto.Book4CatalogDTO;
import com.pcloud.channelcenter.qrcode.dto.BookSceneIdListDTO; import com.pcloud.channelcenter.qrcode.dto.BookSceneIdListDTO;
...@@ -2138,4 +2140,25 @@ public class BookSet { ...@@ -2138,4 +2140,25 @@ public class BookSet {
} }
this.setProDepPurLabelNames(bookDtos); this.setProDepPurLabelNames(bookDtos);
} }
public void setQrcodeMessage(List<Object> recordList) {
if (ListUtils.isEmpty(recordList)) {
return;
}
List<Long> sceneIds = new ArrayList<>();
for (Object obj : recordList) {
BookDto bookDto = (BookDto) obj;
if (null != bookDto.getSceneId() && ChannelConstants.QrCodeType.OWN.getName().equalsIgnoreCase(bookDto.getQrcodeType())) {
sceneIds.add(bookDto.getSceneId());
}
}
Map<Long, BookGroupServeCountDTO> serveCountDTOMap=resourcePageBiz.mapQrServeCount(sceneIds);
for (Object obj : recordList) {
BookDto bookDto = (BookDto) obj;
if (!MapUtils.isEmpty(serveCountDTOMap) &&null != bookDto.getSceneId() && serveCountDTOMap.containsKey(bookDto.getSceneId())) {
BookGroupServeCountDTO dto = serveCountDTOMap.get(bookDto.getSceneId());
bookDto.setMessageCount(dto.getServeCount());
}
}
}
} }
...@@ -95,4 +95,23 @@ public class ResourceConsr { ...@@ -95,4 +95,23 @@ public class ResourceConsr {
} }
return list; return list;
} }
/**
* 获取资源基本信息
*/
public Map<Long,ResourceDTO> mapResourceByIds(List<Long> resourceIds,boolean isFileInfo, boolean isPdfImage) throws BizException {
LOGGER.info("获取资源基本信息[resourceService.mapByIds],参数列表[resourceIds]:" + resourceIds);
Map<Long, ResourceDTO> resourceDtos = new HashMap<>();
if (ListUtils.isEmpty(resourceIds)) {
return resourceDtos;
}
try {
resourceDtos = ResponseHandleUtil.parseMapResponse(resourceService.mapByIds(resourceIds, isFileInfo, isPdfImage), Long.class, ResourceDTO.class);
LOGGER.info("获取资源基本信息【END】");
} catch (Exception e) {
LOGGER.error("获取资源基本信息[resourceService.mapByIds]:" + e.getMessage(), e);
throw new BookBizException(BookBizException.INVOKE_CONTENT_ERROR, "获取资源基本信息失败~!");
}
return resourceDtos;
}
} }
...@@ -7,11 +7,8 @@ import com.pcloud.book.base.exception.BookBizException; ...@@ -7,11 +7,8 @@ import com.pcloud.book.base.exception.BookBizException;
import com.pcloud.book.util.common.ThreadPoolUtils; import com.pcloud.book.util.common.ThreadPoolUtils;
import com.pcloud.channelcenter.base.exceptions.ChannelBizException; import com.pcloud.channelcenter.base.exceptions.ChannelBizException;
import com.pcloud.common.exceptions.BizException; import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBeanNew;
import com.pcloud.common.utils.BeanUtils;
import com.pcloud.common.utils.ListUtils; import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.ResponseHandleUtil; import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.common.utils.ThreadUtil;
import com.pcloud.resourcecenter.product.dto.ProDto; import com.pcloud.resourcecenter.product.dto.ProDto;
import com.pcloud.resourcecenter.product.dto.Product4BookDTO; import com.pcloud.resourcecenter.product.dto.Product4BookDTO;
import com.pcloud.resourcecenter.product.dto.ProductDto; import com.pcloud.resourcecenter.product.dto.ProductDto;
...@@ -21,6 +18,8 @@ import com.pcloud.resourcecenter.product.dto.UpdateAppProductParamDTO; ...@@ -21,6 +18,8 @@ import com.pcloud.resourcecenter.product.dto.UpdateAppProductParamDTO;
import com.pcloud.resourcecenter.product.entity.Article; import com.pcloud.resourcecenter.product.entity.Article;
import com.pcloud.resourcecenter.product.entity.Product; import com.pcloud.resourcecenter.product.entity.Product;
import com.pcloud.resourcecenter.product.service.ProductService; import com.pcloud.resourcecenter.product.service.ProductService;
import com.pcloud.resourcecenter.store.dto.SinglePageInfoDTO;
import com.pcloud.resourcecenter.store.service.StoreService;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -54,6 +53,8 @@ public class ProductConsr { ...@@ -54,6 +53,8 @@ public class ProductConsr {
@Autowired @Autowired
private ProductService productService; private ProductService productService;
@Autowired
private StoreService storeService;
/** /**
* 微信端,资源中心拉取商品信息 * 微信端,资源中心拉取商品信息
...@@ -526,4 +527,21 @@ public class ProductConsr { ...@@ -526,4 +527,21 @@ public class ProductConsr {
} }
return result; return result;
} }
/**
* @Description 运营商城单页面信息
* @Author zhuyajie
* @Date 17:21 2022/3/14
**/
public Map<Long, SinglePageInfoDTO> mapSinglePageByIds(List<Long> singlePageIds) {
if (ListUtils.isEmpty(singlePageIds)) {
return new HashMap<>();
}
try {
return ResponseHandleUtil.parseMapResponse(storeService.mapSinglePageByIds(singlePageIds),Long.class,SinglePageInfoDTO.class);
} catch (Exception e) {
LOGGER.error("调用storeService.mapSinglePageByIds失败"+e.getMessage(),e);
}
return new HashMap<>();
}
} }
...@@ -17,6 +17,7 @@ import com.pcloud.book.group.entity.ResourcePageTool; ...@@ -17,6 +17,7 @@ import com.pcloud.book.group.entity.ResourcePageTool;
import com.pcloud.book.group.entity.ResourceRecomManage; import com.pcloud.book.group.entity.ResourceRecomManage;
import com.pcloud.book.group.vo.RecommendServeVO; import com.pcloud.book.group.vo.RecommendServeVO;
import com.pcloud.book.group.vo.ResourceColumnAndServeVO; import com.pcloud.book.group.vo.ResourceColumnAndServeVO;
import com.pcloud.book.group.vo.ResourcePageItemResourceVO;
import com.pcloud.book.group.vo.ResourcePageItemVO; import com.pcloud.book.group.vo.ResourcePageItemVO;
import com.pcloud.book.group.vo.ResourcePageOneServe; import com.pcloud.book.group.vo.ResourcePageOneServe;
import com.pcloud.book.group.vo.ResourcePageShareParam; import com.pcloud.book.group.vo.ResourcePageShareParam;
...@@ -184,7 +185,7 @@ public interface ResourcePageBiz { ...@@ -184,7 +185,7 @@ public interface ResourcePageBiz {
* @date:2021/4/21 15:09 * @date:2021/4/21 15:09
* * @param null * * @param null
*/ */
ResourcePageOneServe hasOneResource(Long bookGroupId, Long sceneId, Long wechatUserId); ResourcePageOneServe hasOneResource(Long bookGroupId, Long sceneId, Long wechatUserId, Boolean ignoreRays);
/** /**
* 自有码配置的资源列表 * 自有码配置的资源列表
...@@ -572,4 +573,12 @@ public interface ResourcePageBiz { ...@@ -572,4 +573,12 @@ public interface ResourcePageBiz {
* @return * @return
*/ */
List<ResourcePageItemVO> getServerList4Wechat(Long wechatUserId, Long sceneId); List<ResourcePageItemVO> getServerList4Wechat(Long wechatUserId, Long sceneId);
/**
* @Description 一码一资源,素材列表
* @Author zhuyajie
* @Date 13:39 2022/3/16
**/
List<ResourcePageItemResourceVO> listQrOneResourceByBook(Long sceneId, Long wechatUserId);
Map<Long, BookGroupServeCountDTO> mapQrServeCount(List<Long> sceneIds);
} }
...@@ -23,7 +23,8 @@ public class ResourcePageConstants { ...@@ -23,7 +23,8 @@ public class ResourcePageConstants {
*/ */
public enum ColumnTypeEnum { public enum ColumnTypeEnum {
APP_PRODUCT(1, "应用作品", new String[]{ServeTypeEnum.APP.getValue(), ServeTypeEnum.PRODUCT.getValue()}), APP_PRODUCT(1, "应用作品", new String[]{ServeTypeEnum.APP.getValue(), ServeTypeEnum.PRODUCT.getValue(),
ServeTypeEnum.RESOURCE.getValue()}),
OFFICIAL_ACCOUNT(2, "公众号", new String[]{ServeTypeEnum.OFFICIAL_ACCOUNT.getValue()}), OFFICIAL_ACCOUNT(2, "公众号", new String[]{ServeTypeEnum.OFFICIAL_ACCOUNT.getValue()}),
BOOKLIST(3, "书单", new String[]{ServeTypeEnum.BOOKLIST.getValue(),ServeTypeEnum.ADVISER_BOOK.getValue()}), BOOKLIST(3, "书单", new String[]{ServeTypeEnum.BOOKLIST.getValue(),ServeTypeEnum.ADVISER_BOOK.getValue()}),
GROUP(4, "社群", new String[]{ServeTypeEnum.GROUP_ACTIVITY.getValue(), ServeTypeEnum.WXWORK_GROUP.getValue()}), GROUP(4, "社群", new String[]{ServeTypeEnum.GROUP_ACTIVITY.getValue(), ServeTypeEnum.WXWORK_GROUP.getValue()}),
...@@ -31,7 +32,8 @@ public class ResourcePageConstants { ...@@ -31,7 +32,8 @@ public class ResourcePageConstants {
PICTURE(6, "图片位", new String[]{ServeTypeEnum.APP.getValue(), ServeTypeEnum.PRODUCT.getValue(), PICTURE(6, "图片位", new String[]{ServeTypeEnum.APP.getValue(), ServeTypeEnum.PRODUCT.getValue(),
ServeTypeEnum.GROUP_ACTIVITY.getValue(), ServeTypeEnum.THIRD_RESOURCE.getValue(), ServeTypeEnum.NO_SERVE.value}), ServeTypeEnum.GROUP_ACTIVITY.getValue(), ServeTypeEnum.THIRD_RESOURCE.getValue(), ServeTypeEnum.NO_SERVE.value}),
RAYS_TOOL(7,"RAYS工具",new String[]{ServeTypeEnum.APP.getValue()}), RAYS_TOOL(7,"RAYS工具",new String[]{ServeTypeEnum.APP.getValue()}),
MEMBER_ACTIVITY(8,"平台会员活动", new String[]{ServeTypeEnum.MEMBER_ACTIVITY.getValue()}); MEMBER_ACTIVITY(8,"平台会员活动", new String[]{ServeTypeEnum.MEMBER_ACTIVITY.getValue()}),
CHANNEL_SHOP(9,"运营商城", new String[]{ServeTypeEnum.SHOP.getValue()});
private Integer code; private Integer code;
private String name; private String name;
...@@ -85,7 +87,9 @@ public class ResourcePageConstants { ...@@ -85,7 +87,9 @@ public class ResourcePageConstants {
THIRD_RESOURCE("THIRD_RESOURCE", "第三方资源"), THIRD_RESOURCE("THIRD_RESOURCE", "第三方资源"),
WXWORK_GROUP("WXWORK_GROUP","企业微信群"), WXWORK_GROUP("WXWORK_GROUP","企业微信群"),
MEMBER_ACTIVITY("MEMBER_ACTIVITY","平台会员活动"), MEMBER_ACTIVITY("MEMBER_ACTIVITY","平台会员活动"),
NO_SERVE("NO_SERVE","无服务"); NO_SERVE("NO_SERVE","无服务"),
SHOP("SHOP","运营商城"),
RESOURCE("RESOURCE","素材");
private String value; private String value;
......
...@@ -6,6 +6,7 @@ import com.pcloud.book.group.dto.BookServeDTO; ...@@ -6,6 +6,7 @@ import com.pcloud.book.group.dto.BookServeDTO;
import com.pcloud.book.group.dto.ResourcePageUrlDTO; import com.pcloud.book.group.dto.ResourcePageUrlDTO;
import com.pcloud.book.group.entity.BookGroupServe; import com.pcloud.book.group.entity.BookGroupServe;
import com.pcloud.book.group.entity.ResourcePageItem; import com.pcloud.book.group.entity.ResourcePageItem;
import com.pcloud.book.group.vo.ResourcePageItemResourceVO;
import com.pcloud.book.group.vo.ResourcePageItemVO; import com.pcloud.book.group.vo.ResourcePageItemVO;
import com.pcloud.common.core.dao.BaseDao; import com.pcloud.common.core.dao.BaseDao;
import com.pcloud.common.page.PageBeanNew; import com.pcloud.common.page.PageBeanNew;
...@@ -80,7 +81,7 @@ public interface ResourcePageItemDao extends BaseDao<ResourcePageItem>{ ...@@ -80,7 +81,7 @@ public interface ResourcePageItemDao extends BaseDao<ResourcePageItem>{
* @date:2021/4/21 15:29 * @date:2021/4/21 15:29
* * @param null * * @param null
*/ */
ResourcePageItemVO checkOneServeItemByPageId(Long resourcePageId); ResourcePageItemVO checkOneServeItemByPageId(Long resourcePageId, Boolean ignoreRays);
void deleteByServeId(Long resourceId); void deleteByServeId(Long resourceId);
...@@ -158,4 +159,6 @@ public interface ResourcePageItemDao extends BaseDao<ResourcePageItem>{ ...@@ -158,4 +159,6 @@ public interface ResourcePageItemDao extends BaseDao<ResourcePageItem>{
List<ResourceOnBookDTO> listResourceOnBook(Map<String,Object> paramMap); List<ResourceOnBookDTO> listResourceOnBook(Map<String,Object> paramMap);
List<BookGroupServe> getResourcePageList4Erp(List<Long> sceneIds); List<BookGroupServe> getResourcePageList4Erp(List<Long> sceneIds);
List<ResourcePageItemResourceVO> listQrOneResourceByBook(Long bookId, Long adviserId);
} }
...@@ -7,6 +7,7 @@ import com.pcloud.book.group.dto.ResourcePageUrlDTO; ...@@ -7,6 +7,7 @@ import com.pcloud.book.group.dto.ResourcePageUrlDTO;
import com.pcloud.book.group.dto.BookGroupServeCountDTO; import com.pcloud.book.group.dto.BookGroupServeCountDTO;
import com.pcloud.book.group.entity.BookGroupServe; import com.pcloud.book.group.entity.BookGroupServe;
import com.pcloud.book.group.entity.ResourcePageItem; import com.pcloud.book.group.entity.ResourcePageItem;
import com.pcloud.book.group.vo.ResourcePageItemResourceVO;
import com.pcloud.book.group.vo.ResourcePageItemVO; import com.pcloud.book.group.vo.ResourcePageItemVO;
import com.pcloud.common.core.dao.BaseDaoImpl; import com.pcloud.common.core.dao.BaseDaoImpl;
...@@ -81,8 +82,11 @@ public class ResourcePageItemDaoImpl extends BaseDaoImpl<ResourcePageItem> imple ...@@ -81,8 +82,11 @@ public class ResourcePageItemDaoImpl extends BaseDaoImpl<ResourcePageItem> imple
} }
@Override @Override
public ResourcePageItemVO checkOneServeItemByPageId(Long resourcePageId) { public ResourcePageItemVO checkOneServeItemByPageId(Long resourcePageId, Boolean ignoreRays) {
return getSessionTemplate().selectOne(getStatement("checkOneServeItemByPageId"), resourcePageId); Map<String,Object> map = new HashMap<>();
map.put("ignoreRays", ignoreRays);
map.put("resourcePageId", resourcePageId);
return getSessionTemplate().selectOne(getStatement("checkOneServeItemByPageId"), map);
} }
@Override @Override
...@@ -157,4 +161,12 @@ public class ResourcePageItemDaoImpl extends BaseDaoImpl<ResourcePageItem> imple ...@@ -157,4 +161,12 @@ public class ResourcePageItemDaoImpl extends BaseDaoImpl<ResourcePageItem> imple
public List<BookGroupServe> getResourcePageList4Erp(List<Long> sceneIds) { public List<BookGroupServe> getResourcePageList4Erp(List<Long> sceneIds) {
return getSessionTemplate().selectList(getStatement("getResourcePageList4Erp"), sceneIds); return getSessionTemplate().selectList(getStatement("getResourcePageList4Erp"), sceneIds);
} }
@Override
public List<ResourcePageItemResourceVO> listQrOneResourceByBook(Long bookId, Long adviserId) {
Map<String,Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId);
paramMap.put("adviserId", adviserId);
return getSessionTemplate().selectList(getStatement("listQrOneResourceByBook"), paramMap);
}
} }
...@@ -73,4 +73,7 @@ public class BookGroupServe extends BaseEntity { ...@@ -73,4 +73,7 @@ public class BookGroupServe extends BaseEntity {
private Long merchantId; private Long merchantId;
private Long sceneId; private Long sceneId;
private Long resourcePageId;
} }
...@@ -215,9 +215,10 @@ public class ResourcePageFacade { ...@@ -215,9 +215,10 @@ public class ResourcePageFacade {
@GetMapping("hasOneResource") @GetMapping("hasOneResource")
public ResponseDto<?> hasOneResource(@CookieValue("userInfo") String userInfo, public ResponseDto<?> hasOneResource(@CookieValue("userInfo") String userInfo,
@RequestParam(value = "bookGroupId", required = false) Long bookGroupId, @RequestParam(value = "bookGroupId", required = false) Long bookGroupId,
@RequestParam(value = "sceneId", required = false) Long sceneId) { @RequestParam(value = "sceneId", required = false) Long sceneId,
@RequestParam(value = "ignoreRays",required = false) Boolean ignoreRays) {
Long wechatUserId = Cookie.getId(userInfo,Cookie._WECHAT_USER_ID); Long wechatUserId = Cookie.getId(userInfo,Cookie._WECHAT_USER_ID);
return new ResponseDto<>(resourcePageBiz.hasOneResource(bookGroupId, sceneId, wechatUserId)); return new ResponseDto<>(resourcePageBiz.hasOneResource(bookGroupId, sceneId, wechatUserId,ignoreRays));
} }
@ApiOperation("添加收藏记录") @ApiOperation("添加收藏记录")
...@@ -477,4 +478,12 @@ public class ResourcePageFacade { ...@@ -477,4 +478,12 @@ public class ResourcePageFacade {
} }
@ApiOperation("一码一资源,素材列表")
@GetMapping("listQrOneResourceByBook")
public ResponseDto<?> listQrOneResourceByBook(@CookieValue("userInfo") String userInfo,
@RequestParam("sceneId") Long sceneId) {
Long wechatUserId = Cookie.getId(userInfo,Cookie._WECHAT_USER_ID);
return new ResponseDto<>(resourcePageBiz.listQrOneResourceByBook(sceneId,wechatUserId));
}
} }
package com.pcloud.book.group.vo;
import com.pcloud.common.dto.BaseDto;
import com.pcloud.contentcenter.resource.dto.ResourceOfficeItemDTO;
import com.pcloud.contentcenter.resource.dto.ResourcePdfItemDTO;
import java.math.BigDecimal;
import java.util.List;
import lombok.Data;
/**
* @ClassName com.pcloud.book.group.vo.ResourcePageItemResourceVO
* @Author zhuyajie
* @Description
* @Date 2022/3/16 13:33
**/
@Data
public class ResourcePageItemResourceVO extends BaseDto {
private Long id;
private Long resourcePageId;
private Long resourcePageColumnId;
/**
* 资源id
*/
private Long serveId;
/**
* 资源类型
*/
private String serveType;
/**
* 链接url
*/
private String linkUrl;
/**
* 资源类型
*/
private String typeCode;
private String typeName;
private String resourceName;
private String fileUrl;
private Long fileSize;
private String fileType;
private String fileCategory;
private String fileId;
private BigDecimal duration;
private Integer convertState;
private List<ResourcePdfItemDTO> resourcePdfItems;
private List<ResourceOfficeItemDTO> resourceOfficeItemDTOs;
}
...@@ -141,7 +141,8 @@ ...@@ -141,7 +141,8 @@
account_setting_id accountSettingId, account_setting_id accountSettingId,
self_big_pic selfBigPic, self_big_pic selfBigPic,
self_small_pic selfSmallPic, self_small_pic selfSmallPic,
self_serve_name selfServeName self_serve_name selfServeName,
resource_page_id resourcePageId
FROM FROM
resource_page_item resource_page_item
WHERE WHERE
...@@ -247,7 +248,8 @@ ...@@ -247,7 +248,8 @@
i.link_url serveUrl, i.link_url serveUrl,
p.create_user createUser, p.create_user createUser,
i.type_code typeCode, i.type_code typeCode,
p.scene_id sceneId p.scene_id sceneId,
i.resource_page_id resourcePageId
FROM FROM
resource_page_item i resource_page_item i
LEFT JOIN resource_page p ON i.resource_page_id = p.id LEFT JOIN resource_page p ON i.resource_page_id = p.id
...@@ -258,7 +260,7 @@ ...@@ -258,7 +260,7 @@
<foreach collection="list" index="index" separator="," open="(" close=")" item="item"> <foreach collection="list" index="index" separator="," open="(" close=")" item="item">
#{item} #{item}
</foreach> </foreach>
AND i.serve_type IN ('APP', 'PRODUCT') AND i.serve_type IN ('APP', 'PRODUCT','RESOURCE')
ORDER BY ORDER BY
n.navigation_seq ASC, c.column_seq ASC, i.seq_num ASC, i.id ASC n.navigation_seq ASC, c.column_seq ASC, i.seq_num ASC, i.id ASC
</select> </select>
...@@ -270,16 +272,19 @@ ...@@ -270,16 +272,19 @@
i.serve_type serveType, i.serve_type serveType,
i.link_url linkUrl, i.link_url linkUrl,
i.type_code typeCode, i.type_code typeCode,
i.create_user createUser i.create_user createUser,
i.resource_page_id resourcePageId
FROM FROM
resource_page p resource_page p
LEFT JOIN resource_page_item i ON i.resource_page_id = p.id LEFT JOIN resource_page_item i ON i.resource_page_id = p.id
WHERE WHERE
resource_page_id = #{resourcePageId} resource_page_id = #{resourcePageId}
AND p.open_rays = 0 <if test="ignoreRays == null or ignoreRays == false">
AND p.open_rays = 0
</if>
HAVING HAVING
COUNT(i.id) = 1 COUNT(i.id) = 1
AND i.serve_type IN ("APP", "PRODUCT") AND i.serve_type IN ("APP", "PRODUCT", "RESOURCE")
</select> </select>
<delete id="deleteByServeId" parameterType="long"> <delete id="deleteByServeId" parameterType="long">
...@@ -438,7 +443,7 @@ ...@@ -438,7 +443,7 @@
LEFT JOIN resource_page_navigation n ON c.navigation_id = n.id LEFT JOIN resource_page_navigation n ON c.navigation_id = n.id
WHERE WHERE
p.scene_id = #{sceneId} p.scene_id = #{sceneId}
AND i.serve_type IN ('APP', 'PRODUCT','MEMBER_ACTIVITY') AND i.serve_type IN ('APP', 'PRODUCT','MEMBER_ACTIVITY','RESOURCE')
GROUP BY i.serve_id GROUP BY i.serve_id
ORDER BY ORDER BY
n.navigation_seq ASC, c.column_seq ASC, i.id ASC n.navigation_seq ASC, c.column_seq ASC, i.id ASC
...@@ -483,4 +488,30 @@ ...@@ -483,4 +488,30 @@
</foreach> </foreach>
AND i.serve_type IN ('APP', 'PRODUCT') AND i.serve_type IN ('APP', 'PRODUCT')
</select> </select>
<!--一码一素材,素材列表-->
<select id="listQrOneResourceByBook" resultType="com.pcloud.book.group.vo.ResourcePageItemResourceVO" parameterType="map">
SELECT
i.id,
i.resource_page_id resourcePageId,
i.resource_page_column_id resourcePageColumnId,
i.serve_id serveId,
i.serve_type serveType,
i.link_url linkUrl,
i.type_code typeCode
FROM
resource_page_item i
LEFT JOIN resource_page p ON i.resource_page_id = p.id
WHERE
p.book_id = #{bookId}
AND p.create_user = #{adviserId}
GROUP BY
i.resource_page_id
HAVING
COUNT(i.id) = 1
AND i.serve_type = 'RESOURCE'
ORDER BY
i.create_time desc,i.resource_page_id desc
</select>
</mapper> </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