Commit d0bdedf4 by lixue123

新增内部接口

parent bc56703f
package com.pcloud.book.book.dto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.List;
/**
* 图书详细信息
*/
public class BookDetialDTO implements Serializable {
@ApiModelProperty("编辑ID")
private Long adviserId;
@ApiModelProperty("图书ID集合")
private List<Long> bookIds;
@ApiModelProperty("渠道ID集合")
private List<Long> channelId;
public Long getAdviserId() {
return adviserId;
}
public void setAdviserId(Long adviserId) {
this.adviserId = adviserId;
}
public List<Long> getBookIds() {
return bookIds;
}
public void setBookIds(List<Long> bookIds) {
this.bookIds = bookIds;
}
public List<Long> getChannelId() {
return channelId;
}
public void setChannelId(List<Long> channelId) {
this.channelId = channelId;
}
@Override
public String toString() {
return "BookDetialDTO{" +
"adviserId=" + adviserId +
", bookIds=" + bookIds +
", channelId=" + channelId +
'}';
}
}
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
package com.pcloud.book.book.service; package com.pcloud.book.book.service;
import com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO; import com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO;
import com.pcloud.book.book.dto.BookDetialDTO;
import com.pcloud.book.book.dto.BookDto; import com.pcloud.book.book.dto.BookDto;
import com.pcloud.common.dto.ResponseDto; import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.exceptions.BizException; import com.pcloud.common.exceptions.BizException;
...@@ -72,6 +73,13 @@ public interface BookService { ...@@ -72,6 +73,13 @@ public interface BookService {
ResponseEntity<ResponseDto<Map<Long, BookDto>>> listBaseByIds(@RequestBody(required = false) List<Long> bookIds) ResponseEntity<ResponseDto<Map<Long, BookDto>>> listBaseByIds(@RequestBody(required = false) List<Long> bookIds)
throws BizException; throws BizException;
@ApiOperation(value = "批量获取书籍信息(书名 模板ID )", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "bookDetialDTO", value = "图书id集合", dataType = "BookDetialDTO", paramType = "body")})
@RequestMapping(value = "/listDetailByIds", method = RequestMethod.POST)
ResponseEntity<ResponseDto<Map<String, BookDto>>> listDetailByIds(@RequestBody(required = false) BookDetialDTO bookDetialDTO)
throws BizException;
/** /**
* 根据名称获取ID * 根据名称获取ID
* *
......
...@@ -9,6 +9,7 @@ import java.util.Map; ...@@ -9,6 +9,7 @@ import java.util.Map;
import com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO; import com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO;
import com.pcloud.book.book.dto.BookAssocCount; import com.pcloud.book.book.dto.BookAssocCount;
import com.pcloud.book.book.dto.BookDetialDTO;
import com.pcloud.book.book.dto.BookDto; import com.pcloud.book.book.dto.BookDto;
import com.pcloud.book.book.entity.Book; import com.pcloud.book.book.entity.Book;
import com.pcloud.common.exceptions.BizException; import com.pcloud.common.exceptions.BizException;
...@@ -139,6 +140,14 @@ public interface BookBiz { ...@@ -139,6 +140,14 @@ public interface BookBiz {
Map<Long, BookDto> listBaseByIds(List<Long> bookIds) throws BizException; Map<Long, BookDto> listBaseByIds(List<Long> bookIds) throws BizException;
/** /**
* 批量获取书籍信息(书名 分类ID)
* @param bookDetialDTO
* @return
* @throws BizException
*/
Map<String,BookDto> listDetailByIds(BookDetialDTO bookDetialDTO)throws BizException;
/**
* 获取书籍列表 * 获取书籍列表
* *
* @param isbn * @param isbn
......
...@@ -521,6 +521,25 @@ public class BookBizImpl implements BookBiz { ...@@ -521,6 +521,25 @@ public class BookBizImpl implements BookBiz {
return bookMap; return bookMap;
} }
@Override
public Map<String, BookDto> listDetailByIds(BookDetialDTO bookDetialDTO) throws BizException {
Map<String, BookDto> bookMap = null;
if(null != bookDetialDTO && !(null == bookDetialDTO || ListUtils.isEmpty(bookDetialDTO.getBookIds()) || ListUtils.isEmpty(bookDetialDTO.getChannelId()))){
Map<String, Object> paramMap = Maps.newHashMap();
paramMap.put("bookIds",bookDetialDTO.getBookIds());
paramMap.put("channelIds",bookDetialDTO.getChannelId());
paramMap.put("adviserId",bookDetialDTO.getAdviserId());
List<BookDto> bookDtos = bookDao.listDetailByIds(paramMap);
if(!ListUtils.isEmpty(bookDtos)){
bookMap = Maps.newHashMap();
for(BookDto bookDto:bookDtos){
bookMap.put(bookDto.getChannelId()+"_"+bookDto.getBookId(),bookDto);
}
}
}
return bookMap;
}
/** /**
* 获取书籍列表 * 获取书籍列表
*/ */
......
...@@ -83,6 +83,13 @@ public interface BookDao extends BaseDao<Book> { ...@@ -83,6 +83,13 @@ public interface BookDao extends BaseDao<Book> {
Map<Long, BookDto> listBaseMapByIds(List<Long> bookIds); Map<Long, BookDto> listBaseMapByIds(List<Long> bookIds);
/** /**
* 获取详细信息
* @param paramMap
* @return
*/
List<BookDto> listDetailByIds(Map<String,Object> paramMap);
/**
* 根据名称获取ID * 根据名称获取ID
* *
* @param bookName * @param bookName
......
...@@ -84,7 +84,12 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao { ...@@ -84,7 +84,12 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
public Map<Long, BookDto> listBaseMapByIds(List<Long> bookIds) { public Map<Long, BookDto> listBaseMapByIds(List<Long> bookIds) {
return super.getSqlSession().selectMap(super.getStatement("listBaseMapByIds"), bookIds, "bookId"); return super.getSqlSession().selectMap(super.getStatement("listBaseMapByIds"), bookIds, "bookId");
} }
@Override
public List<BookDto> listDetailByIds(Map<String, Object> paramMap) {
return super.getSqlSession().selectList(super.getStatement("listDetailByIds"),paramMap);
}
/** /**
* 根据名称获取ID * 根据名称获取ID
*/ */
......
...@@ -3,24 +3,20 @@ ...@@ -3,24 +3,20 @@
*/ */
package com.pcloud.book.book.service.impl; package com.pcloud.book.book.service.impl;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.pcloud.book.book.biz.BookBiz; import com.pcloud.book.book.biz.BookBiz;
import com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO; import com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO;
import com.pcloud.book.book.dto.BookDetialDTO;
import com.pcloud.book.book.dto.BookDto; import com.pcloud.book.book.dto.BookDto;
import com.pcloud.book.book.service.BookService; import com.pcloud.book.book.service.BookService;
import com.pcloud.common.dto.ResponseDto; import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.exceptions.BizException; import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.utils.ResponseHandleUtil; import com.pcloud.common.utils.ResponseHandleUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/** /**
* @描述: * @描述:
...@@ -69,6 +65,13 @@ public class BookServiceImpl implements BookService { ...@@ -69,6 +65,13 @@ public class BookServiceImpl implements BookService {
return ResponseHandleUtil.toResponse(bookBiz.listBaseByIds(bookIds)); return ResponseHandleUtil.toResponse(bookBiz.listBaseByIds(bookIds));
} }
@Override
@RequestMapping(value = "/listDetailByIds", method = RequestMethod.POST)
public ResponseEntity<ResponseDto<Map<String, BookDto>>> listDetailByIds(@RequestBody(required = false)BookDetialDTO bookDetialDTO) throws BizException {
return ResponseHandleUtil.toResponse(bookBiz.listDetailByIds(bookDetialDTO));
}
/** /**
* 根据名称获取ID * 根据名称获取ID
*/ */
......
...@@ -306,7 +306,7 @@ ...@@ -306,7 +306,7 @@
<!-- 批量获取书籍信息(书名 与书刊序号 封面图) --> <!-- 批量获取书籍信息(书名 与书刊序号 封面图) -->
<select id="listBaseMapByIds" resultMap="bookMap" parameterType="list"> <select id="listBaseMapByIds" resultMap="bookMap" parameterType="list">
SELECT SELECT
BOOK_ID, ISBN,BOOK_NAME, COVER_IMG,SERIAL_NUMBER,TEMPLET_ID BOOK_ID, ISBN,BOOK_NAME, COVER_IMG,SERIAL_NUMBER
FROM FROM
BOOK BOOK
WHERE WHERE
...@@ -315,7 +315,29 @@ ...@@ -315,7 +315,29 @@
${item} ${item}
</foreach> </foreach>
</select> </select>
<select id="listDetailByIds" resultMap="bookMap" parameterType="map">
SELECT
b.BOOK_ID,b.BOOK_NAME,ba.TEMPLET_ID FROM book b LEFT JOIN book_adviser ba ON b.BOOK_ID = ba.BOOK_ID
WHERE
b.BOOK_ID IN
<foreach collection="bookIds" index="i" item="item" open="(" separator="," close=")">
${item}
</foreach>
<if test="channelIds != null">
AND
ba.CHANNEL_ID in
<foreach collection="channelIds" index="i" item="item" open="(" separator="," close=")">
${item}
</foreach>
</if>
<if test="adviserId != null">
AND
ba.ADVISER_ID = #{adviserId}
</if>
</select>
<!-- 获取书籍列表 (平台端)--> <!-- 获取书籍列表 (平台端)-->
<select id="getListPage4Platform" resultMap="bookListPageMap" parameterType="map"> <select id="getListPage4Platform" resultMap="bookListPageMap" parameterType="map">
......
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