Commit 38862783 by 阮思源

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

parent d9a66704
......@@ -440,6 +440,13 @@ public interface BookBiz {
*/
PageBean listBookClassify(PageParam pageParam, Map<String, Object> paramMap);
/**
* 导出图书列表(平台端)
* @param paramMap
*/
void exportBookClassify(Map<String, Object> paramMap);
/**
* 导出平台下所有书刊excel表(平台端)
*/
......
......@@ -1279,6 +1279,34 @@ public class BookBizImpl implements BookBiz {
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表(平台端)
*/
......
......@@ -310,4 +310,10 @@ public interface BookDao extends BaseDao<Book> {
* 根据书名或ISBN获取书id
*/
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 {
public List<Long> getIdsByNameOrISBN(Map<String, Object> 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 {
@RequestParam(value = "secondTempletId", required = false) Long secondTempletId)
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")
@ApiImplicitParams({
@ApiImplicitParam(name = "token", value = "token", dataType = "string", paramType = "header")})
......
......@@ -657,6 +657,37 @@ public class BookFacadeImpl implements BookFacade {
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表(平台端)
*/
......
......@@ -229,6 +229,9 @@ public class BookGroupAppBizImpl implements BookGroupAppBiz {
pushGroupApps.add(bookGroupApp);
}
}
if (ListUtils.isEmpty(pushGroupApps)){
return;
}
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