Commit 0f079b9f by 阮思源

Merge branch 'rsy-fixbug' into 'master'

添加导出图书列表(平台端)接口

See merge request rays/pcloud-book!266
parents d9a66704 38862783
...@@ -440,6 +440,13 @@ public interface BookBiz { ...@@ -440,6 +440,13 @@ public interface BookBiz {
*/ */
PageBean listBookClassify(PageParam pageParam, Map<String, Object> paramMap); PageBean listBookClassify(PageParam pageParam, Map<String, Object> paramMap);
/**
* 导出图书列表(平台端)
* @param paramMap
*/
void exportBookClassify(Map<String, Object> paramMap);
/** /**
* 导出平台下所有书刊excel表(平台端) * 导出平台下所有书刊excel表(平台端)
*/ */
......
...@@ -1279,6 +1279,34 @@ public class BookBizImpl implements BookBiz { ...@@ -1279,6 +1279,34 @@ public class BookBizImpl implements BookBiz {
return pageBean; return pageBean;
} }
@ParamLog("导出图书列表(平台端)")
@Override
public void exportBookClassify(Map<String, Object> paramMap) {
Long count = bookDao.listBookClassifyCount(paramMap);
if (count <= 0) {
throw new BookBizException(BookBizException.ERROR, "图书列表为空!");
}
ThreadPoolUtils.EXPORT_THREAD_POOL.execute(() -> {
try {
List<Object> list = new ArrayList<>();
Integer cu = BookConstant.BOOK_SELECT_COUNT;
Integer p = (count.intValue() / cu) + 1;
for (int i = 0; i < p; i++) {
PageBean page = listBookClassify(new PageParam(i, cu), paramMap);
list.addAll(page.getRecordList());
}
List<Object[]> dataList = bookSet.getExcelData4Platform(list);
String url = bookSet.createExcel(dataList);
if (!StringUtils.isEmpty(url)) {
// 发送站内信
bookSet.sendBookExportLetter4Platform(-1L, url, new Date());
}
} catch (Exception e) {
LOGGER.error("导出图书列表(平台端)生成导出文件失败", e);
}
});
}
/** /**
* 导出平台下所有书刊excel表(平台端) * 导出平台下所有书刊excel表(平台端)
*/ */
......
...@@ -310,4 +310,10 @@ public interface BookDao extends BaseDao<Book> { ...@@ -310,4 +310,10 @@ public interface BookDao extends BaseDao<Book> {
* 根据书名或ISBN获取书id * 根据书名或ISBN获取书id
*/ */
List<Long> getIdsByNameOrISBN(Map<String,Object> paramMap); List<Long> getIdsByNameOrISBN(Map<String,Object> paramMap);
/**
* 查询书刊数量
*/
Long listBookClassifyCount(Map<String,Object> paramMap);
} }
...@@ -295,4 +295,9 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao { ...@@ -295,4 +295,9 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
public List<Long> getIdsByNameOrISBN(Map<String, Object> paramMap) { public List<Long> getIdsByNameOrISBN(Map<String, Object> paramMap) {
return super.getSqlSession().selectList(super.getStatement("getIdsByNameOrISBN"), paramMap); return super.getSqlSession().selectList(super.getStatement("getIdsByNameOrISBN"), paramMap);
} }
@Override
public Long listBookClassifyCount(Map<String, Object> paramMap) {
return super.getSqlSession().selectOne(super.getStatement("listBookClassifyCount"), paramMap);
}
} }
...@@ -488,6 +488,23 @@ public interface BookFacade { ...@@ -488,6 +488,23 @@ public interface BookFacade {
@RequestParam(value = "secondTempletId", required = false) Long secondTempletId) @RequestParam(value = "secondTempletId", required = false) Long secondTempletId)
throws BizException, PermissionException, JsonParseException; throws BizException, PermissionException, JsonParseException;
/**
* 导出图书列表(平台端)
*/
@ApiOperation("导出图书列表(平台端)")
@GetMapping("exportBookClassify")
ResponseDto<?> exportBookClassify(
@RequestHeader("token") String token,
@RequestParam(value = "typeCode", required = false) String typeCode,
@RequestParam(value = "templetId", required = false) Long templetId,
@RequestParam(value = "startDate", required = false) String startDate,
@RequestParam(value = "endDate", required = false) String endDate,
@RequestParam(value = "bookName", required = false) String bookName,
@RequestParam(value = "publish", required = false) String publish,
@RequestParam(value = "secondTempletId", required = false) Long secondTempletId
) throws BizException, PermissionException, JsonParseException;
@ApiOperation(value = "导出平台下所有书刊excel表(平台端)", httpMethod = "GET") @ApiOperation(value = "导出平台下所有书刊excel表(平台端)", httpMethod = "GET")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", dataType = "string", paramType = "header")}) @ApiImplicitParam(name = "token", value = "token", dataType = "string", paramType = "header")})
......
...@@ -657,6 +657,37 @@ public class BookFacadeImpl implements BookFacade { ...@@ -657,6 +657,37 @@ public class BookFacadeImpl implements BookFacade {
return new ResponseDto<>(pageBean); return new ResponseDto<>(pageBean);
} }
@ApiOperation("导出图书列表(平台端)")
@GetMapping("exportBookClassify")
@Override
public ResponseDto<?> exportBookClassify(
@RequestHeader("token") String token,
@RequestParam(value = "typeCode", required = false) String typeCode,
@RequestParam(value = "templetId", required = false) Long templetId,
@RequestParam(value = "startDate", required = false) String startDate,
@RequestParam(value = "endDate", required = false) String endDate,
@RequestParam(value = "bookName", required = false) String bookName,
@RequestParam(value = "publish", required = false) String publish,
@RequestParam(value = "secondTempletId", required = false) Long secondTempletId
) throws BizException, PermissionException {
SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("typeCode", typeCode);
paramMap.put("templetId", templetId);
paramMap.put("startDate", startDate);
paramMap.put("endDate", endDate);
paramMap.put("bookName", bookName);
paramMap.put("publish", publish);
paramMap.put("secondTempletId", secondTempletId);
paramMap.put("secondTempletIds", Optional.ofNullable(paramMap.get("secondTempletId")).map(Lists::newArrayList).orElse(Lists.newArrayList()));
if (!StringUtil.isEmpty(bookName)) {
String[] bookNameList = bookName.trim().split("\\s+");
paramMap.put("bookNameList", Lists.newArrayList(bookNameList));
}
bookBiz.exportBookClassify(paramMap);
return new ResponseDto<>();
}
/** /**
* 导出平台下所有书刊excel表(平台端) * 导出平台下所有书刊excel表(平台端)
*/ */
......
...@@ -229,6 +229,9 @@ public class BookGroupAppBizImpl implements BookGroupAppBiz { ...@@ -229,6 +229,9 @@ public class BookGroupAppBizImpl implements BookGroupAppBiz {
pushGroupApps.add(bookGroupApp); pushGroupApps.add(bookGroupApp);
} }
} }
if (ListUtils.isEmpty(pushGroupApps)){
return;
}
bookGroupAppDao.batchInsert(pushGroupApps); bookGroupAppDao.batchInsert(pushGroupApps);
} }
......
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