Commit 42d273ea by 朱亚洁

feat:[none]馆配书书单

parent 22e8e13b
......@@ -319,4 +319,21 @@ public interface AppletBooklistBiz {
* * @param null
*/
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 {
list.addAll(booklistDTOMap.values());
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> {
* @return
*/
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
public Map<Long, AppletBooklistDTO> getBookListMap(List<Long> bookListIds) {
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 {
private Integer joinGroupType;
@ApiModelProperty("摘要")
private String remark;
@ApiModelProperty("价格")
private String bookPrice;
}
......@@ -1323,6 +1323,20 @@ public class AppletHomeFacade {
answerSubscribeBiz.addSubscribePushRecord(answerSubscribeDTO);
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;
import com.pcloud.book.group.constant.ResourcePageConstants;
import com.pcloud.book.group.dao.BookAppletSceneDao;
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.ResourcePageColumnDao;
import com.pcloud.book.group.dao.ResourcePageCourseDao;
......@@ -117,6 +116,7 @@ import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
......@@ -626,11 +626,12 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
fillQrcodeType(resourcePageId, itemVOList);
Map<String, List<ResourcePageItemVO>> listMap = itemVOList.stream().collect(Collectors.groupingBy(ResourcePageItemVO::getServeType));
itemVOList = new ArrayList<>();
//过滤一些资源
//过滤一些资源,重新排序
for (Map.Entry<String, List<ResourcePageItemVO>> entry : listMap.entrySet()) {
this.fillResourceByType(entry.getValue(), isWechat, entry.getKey());
itemVOList.addAll(entry.getValue());
}
itemVOList.sort(Comparator.comparing(ResourcePageItemVO::getId));
Map<Long, List<ResourcePageItemVO>> columnMap = itemVOList.stream().collect(Collectors.groupingBy(ResourcePageItemVO::getResourcePageColumnId));
for (ResourceColumnAndServeVO columnAndServeVO : serveVOS) {
List<ResourcePageItemVO> itemVOS = columnMap.get(columnAndServeVO.getResourcePageColumnId());
......
......@@ -24,6 +24,8 @@ import lombok.Data;
@Data
public class ResourcePageItemVO extends BaseDto{
private Long id;
private Long resourcePageColumnId;
/**
* 资源id
......
......@@ -201,7 +201,8 @@
c.seq seq,
B.ISBN isbn,
CONCAT('BK',A.BOOK_ID) uniqueNumber,
B.REMARK remark
B.REMARK remark,
B.BOOK_PRICE bookPrice
FROM
applet_booklist_config c
LEFT JOIN applet_booklist ap ON c.booklist_id=ap.id
......@@ -364,4 +365,18 @@
</foreach>
group by b.id
</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>
\ No newline at end of file
......@@ -100,6 +100,7 @@
<select id="getResourcePageItemByPageId" resultType="com.pcloud.book.group.vo.ResourcePageItemVO" parameterType="map">
SELECT
id,
serve_id serveId,
serve_type serveType,
link_url linkUrl,
......@@ -108,7 +109,8 @@
logo_url logoUrl,
guide_content guideContent,
qrcode_source qrcodeSource,
create_user createUser
create_user createUser,
seq_num seqNum
FROM
resource_page_item
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