Commit 0b4a4e11 by Administrator

Merge branch 'feature/libraryBooklist' into 'master'

feat: [none] 馆配书书单

See merge request rays/pcloud-book!1345
parents 22e8e13b 42d273ea
...@@ -319,4 +319,21 @@ public interface AppletBooklistBiz { ...@@ -319,4 +319,21 @@ public interface AppletBooklistBiz {
* * @param null * * @param null
*/ */
PageBeanNew<AppletOuterBooklistDTO> getBooklistByGradeLabel4ResourcePage(Long gradeLabelId, Integer currentPage, Integer numPerPage); PageBeanNew<AppletOuterBooklistDTO> getBooklistByGradeLabel4ResourcePage(Long gradeLabelId, Integer currentPage, Integer numPerPage);
/**
* 馆配书-根据bookid获取书单
* @param bookId
* @return
*/
AppletBooklistDTO getLibraryBooklistByBookId(Long bookId);
/**
* 馆配书-根据bookid获取书单书刊列表
* @author:zhuyajie
* @date:2021/6/24 14:59
* * @param null
*/
PageBeanNew<BookDTO4Booklist> listPageLibraryBookByBookId(Long bookId, Integer currentPage, Integer numPerPage);
} }
...@@ -863,4 +863,32 @@ public class AppletBooklistBizImpl implements AppletBooklistBiz { ...@@ -863,4 +863,32 @@ public class AppletBooklistBizImpl implements AppletBooklistBiz {
list.addAll(booklistDTOMap.values()); list.addAll(booklistDTOMap.values());
return new PageBeanNew<>(currentPage, numPerPage, idPageBean.getTotalCount(), list); return new PageBeanNew<>(currentPage, numPerPage, idPageBean.getTotalCount(), list);
} }
@Override
public AppletBooklistDTO getLibraryBooklistByBookId(Long bookId) {
Long booklistId = appletBooklistDao.getBooklistIdByBookId4Library(bookId);
if (null == booklistId) {
return new AppletBooklistDTO();
}
AppletBooklistDTO booklistDTO = getBooklistById(booklistId);
if (null == booklistDTO) {
return booklistDTO;
}
Integer bookCount = appletBooklistDao.getBookCount(booklistId);
booklistDTO.setBookCounts(bookCount);
return booklistDTO;
}
@Override
public PageBeanNew<BookDTO4Booklist> listPageLibraryBookByBookId(Long bookId, Integer currentPage, Integer numPerPage) {
Long booklistId = appletBooklistDao.getBooklistIdByBookId4Library(bookId);
if (null == booklistId) {
return new PageBeanNew<>(currentPage, numPerPage, 0, new ArrayList<>());
}
Map<String,Object> paramMap = new HashMap<>();
paramMap.put("booklistId", booklistId);
PageBeanNew<BookDTO4Booklist> pageBeanNew = appletBooklistDao.listPageNew(
new PageParam(currentPage,numPerPage), paramMap, "listPageBook4AppletBooklist");
return pageBeanNew;
}
} }
...@@ -91,4 +91,20 @@ public interface AppletBooklistDao extends BaseDao<AppletBooklist> { ...@@ -91,4 +91,20 @@ public interface AppletBooklistDao extends BaseDao<AppletBooklist> {
* @return * @return
*/ */
Map<Long, AppletBooklistDTO> getBookListMap(List<Long> bookListIds); Map<Long, AppletBooklistDTO> getBookListMap(List<Long> bookListIds);
/**
* 馆配书查书单id
* @author:zhuyajie
* @date:2021/6/23 14:42
* * @param null
*/
Long getBooklistIdByBookId4Library(Long bookId);
/**
* 书单书刊数量
* @author:zhuyajie
* @date:2021/6/24 15:05
* * @param null
*/
Integer getBookCount(Long booklistId);
} }
...@@ -95,4 +95,14 @@ public class AppletBooklistDaoImpl extends BaseDaoImpl<AppletBooklist> implement ...@@ -95,4 +95,14 @@ public class AppletBooklistDaoImpl extends BaseDaoImpl<AppletBooklist> implement
public Map<Long, AppletBooklistDTO> getBookListMap(List<Long> bookListIds) { public Map<Long, AppletBooklistDTO> getBookListMap(List<Long> bookListIds) {
return getSessionTemplate().selectMap(getStatement("getBookListMap"),bookListIds,"id"); return getSessionTemplate().selectMap(getStatement("getBookListMap"),bookListIds,"id");
} }
@Override
public Long getBooklistIdByBookId4Library(Long bookId) {
return getSessionTemplate().selectOne(getStatement("getBooklistIdByBookId4Library"), bookId);
}
@Override
public Integer getBookCount(Long booklistId) {
return getSessionTemplate().selectOne(getStatement("getBookCount"), booklistId);
}
} }
...@@ -66,4 +66,6 @@ public class BookDTO4Booklist extends BaseDto { ...@@ -66,4 +66,6 @@ public class BookDTO4Booklist extends BaseDto {
private Integer joinGroupType; private Integer joinGroupType;
@ApiModelProperty("摘要") @ApiModelProperty("摘要")
private String remark; private String remark;
@ApiModelProperty("价格")
private String bookPrice;
} }
...@@ -1323,6 +1323,20 @@ public class AppletHomeFacade { ...@@ -1323,6 +1323,20 @@ public class AppletHomeFacade {
answerSubscribeBiz.addSubscribePushRecord(answerSubscribeDTO); answerSubscribeBiz.addSubscribePushRecord(answerSubscribeDTO);
return new ResponseDto<>(); return new ResponseDto<>();
} }
@ApiOperation("馆配书-根据bookid获取书单")
@GetMapping("getLibraryBooklistByBookId")
public ResponseDto<?> getLibraryBooklistByBookId(@RequestParam("bookId") Long bookId) {
return new ResponseDto<>(appletBooklistBiz.getLibraryBooklistByBookId(bookId));
}
@ApiOperation("馆配书-根据bookid获取书单书刊列表")
@GetMapping("listPageLibraryBookByBookId")
public ResponseDto<?> listPageLibraryBookByBookId(@RequestParam("bookId")Long bookId,
@RequestParam("currentPage")Integer currentPage,
@RequestParam("numPerPage")Integer numPerPage) {
return new ResponseDto<>(appletBooklistBiz.listPageLibraryBookByBookId(bookId, currentPage, numPerPage));
}
} }
......
...@@ -44,7 +44,6 @@ import com.pcloud.book.group.biz.ResourcePageBiz; ...@@ -44,7 +44,6 @@ import com.pcloud.book.group.biz.ResourcePageBiz;
import com.pcloud.book.group.constant.ResourcePageConstants; import com.pcloud.book.group.constant.ResourcePageConstants;
import com.pcloud.book.group.dao.BookAppletSceneDao; import com.pcloud.book.group.dao.BookAppletSceneDao;
import com.pcloud.book.group.dao.BookGroupDao; import com.pcloud.book.group.dao.BookGroupDao;
import com.pcloud.book.group.dao.BookGroupServeDao;
import com.pcloud.book.group.dao.ResourcePageCollectDao; import com.pcloud.book.group.dao.ResourcePageCollectDao;
import com.pcloud.book.group.dao.ResourcePageColumnDao; import com.pcloud.book.group.dao.ResourcePageColumnDao;
import com.pcloud.book.group.dao.ResourcePageCourseDao; import com.pcloud.book.group.dao.ResourcePageCourseDao;
...@@ -117,6 +116,7 @@ import java.io.File; ...@@ -117,6 +116,7 @@ import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -626,11 +626,12 @@ public class ResourcePageBizImpl implements ResourcePageBiz { ...@@ -626,11 +626,12 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
fillQrcodeType(resourcePageId, itemVOList); fillQrcodeType(resourcePageId, itemVOList);
Map<String, List<ResourcePageItemVO>> listMap = itemVOList.stream().collect(Collectors.groupingBy(ResourcePageItemVO::getServeType)); Map<String, List<ResourcePageItemVO>> listMap = itemVOList.stream().collect(Collectors.groupingBy(ResourcePageItemVO::getServeType));
itemVOList = new ArrayList<>(); itemVOList = new ArrayList<>();
//过滤一些资源 //过滤一些资源,重新排序
for (Map.Entry<String, List<ResourcePageItemVO>> entry : listMap.entrySet()) { for (Map.Entry<String, List<ResourcePageItemVO>> entry : listMap.entrySet()) {
this.fillResourceByType(entry.getValue(), isWechat, entry.getKey()); this.fillResourceByType(entry.getValue(), isWechat, entry.getKey());
itemVOList.addAll(entry.getValue()); itemVOList.addAll(entry.getValue());
} }
itemVOList.sort(Comparator.comparing(ResourcePageItemVO::getId));
Map<Long, List<ResourcePageItemVO>> columnMap = itemVOList.stream().collect(Collectors.groupingBy(ResourcePageItemVO::getResourcePageColumnId)); Map<Long, List<ResourcePageItemVO>> columnMap = itemVOList.stream().collect(Collectors.groupingBy(ResourcePageItemVO::getResourcePageColumnId));
for (ResourceColumnAndServeVO columnAndServeVO : serveVOS) { for (ResourceColumnAndServeVO columnAndServeVO : serveVOS) {
List<ResourcePageItemVO> itemVOS = columnMap.get(columnAndServeVO.getResourcePageColumnId()); List<ResourcePageItemVO> itemVOS = columnMap.get(columnAndServeVO.getResourcePageColumnId());
......
...@@ -24,6 +24,8 @@ import lombok.Data; ...@@ -24,6 +24,8 @@ import lombok.Data;
@Data @Data
public class ResourcePageItemVO extends BaseDto{ public class ResourcePageItemVO extends BaseDto{
private Long id;
private Long resourcePageColumnId; private Long resourcePageColumnId;
/** /**
* 资源id * 资源id
......
...@@ -201,7 +201,8 @@ ...@@ -201,7 +201,8 @@
c.seq seq, c.seq seq,
B.ISBN isbn, B.ISBN isbn,
CONCAT('BK',A.BOOK_ID) uniqueNumber, CONCAT('BK',A.BOOK_ID) uniqueNumber,
B.REMARK remark B.REMARK remark,
B.BOOK_PRICE bookPrice
FROM FROM
applet_booklist_config c applet_booklist_config c
LEFT JOIN applet_booklist ap ON c.booklist_id=ap.id LEFT JOIN applet_booklist ap ON c.booklist_id=ap.id
...@@ -364,4 +365,18 @@ ...@@ -364,4 +365,18 @@
</foreach> </foreach>
group by b.id group by b.id
</select> </select>
<select id="getBooklistIdByBookId4Library" parameterType="long" resultType="long">
SELECT
booklist_id
FROM
applet_booklist_labrary
WHERE
book_id = #{bookId}
LIMIT 1
</select>
<select id="getBookCount" parameterType="long" resultType="integer">
SELECT COUNT(1) FROM applet_booklist_config WHERE booklist_id = #{booklistId}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -100,6 +100,7 @@ ...@@ -100,6 +100,7 @@
<select id="getResourcePageItemByPageId" resultType="com.pcloud.book.group.vo.ResourcePageItemVO" parameterType="map"> <select id="getResourcePageItemByPageId" resultType="com.pcloud.book.group.vo.ResourcePageItemVO" parameterType="map">
SELECT SELECT
id,
serve_id serveId, serve_id serveId,
serve_type serveType, serve_type serveType,
link_url linkUrl, link_url linkUrl,
...@@ -108,7 +109,8 @@ ...@@ -108,7 +109,8 @@
logo_url logoUrl, logo_url logoUrl,
guide_content guideContent, guide_content guideContent,
qrcode_source qrcodeSource, qrcode_source qrcodeSource,
create_user createUser create_user createUser,
seq_num seqNum
FROM FROM
resource_page_item resource_page_item
WHERE WHERE
......
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