优化商品库存流水记录的接口,增加仓库参数
This commit is contained in:
@@ -61,28 +61,21 @@ public class DepotItemController {
|
||||
private RedisService redisService;
|
||||
|
||||
/**
|
||||
* 只根据商品id查询单据列表
|
||||
* 根据仓库和商品查询单据列表
|
||||
* @param mId
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/findDetailByTypeAndMaterialId")
|
||||
@ApiOperation(value = "只根据商品id查询单据列表")
|
||||
public String findDetailByTypeAndMaterialId(
|
||||
@GetMapping(value = "/findDetailByDepotIdsAndMaterialId")
|
||||
@ApiOperation(value = "根据仓库和商品查询单据列表")
|
||||
public String findDetailByDepotIdsAndMaterialId(
|
||||
@RequestParam(value = Constants.PAGE_SIZE, required = false) Integer pageSize,
|
||||
@RequestParam(value = Constants.CURRENT_PAGE, required = false) Integer currentPage,
|
||||
@RequestParam("materialId") String mId, HttpServletRequest request)throws Exception {
|
||||
Map<String, String> parameterMap = ParamUtils.requestToMap(request);
|
||||
parameterMap.put("mId", mId);
|
||||
Map<String, Object> objectMap = new HashMap<String, Object>();
|
||||
if (pageSize != null && pageSize <= 0) {
|
||||
pageSize = 10;
|
||||
}
|
||||
String offset = ParamUtils.getPageOffset(currentPage, pageSize);
|
||||
if (StringUtil.isNotEmpty(offset)) {
|
||||
parameterMap.put(Constants.OFFSET, offset);
|
||||
}
|
||||
List<DepotItemVo4DetailByTypeAndMId> list = depotItemService.findDetailByTypeAndMaterialIdList(parameterMap);
|
||||
@RequestParam(value = "depotIds",required = false) String depotIds,
|
||||
@RequestParam("materialId") Long mId,
|
||||
HttpServletRequest request)throws Exception {
|
||||
Map<String, Object> objectMap = new HashMap<>();
|
||||
List<DepotItemVo4DetailByTypeAndMId> list = depotItemService.findDetailByDepotIdsAndMaterialIdList(depotIds, mId, (currentPage-1)*pageSize, pageSize);
|
||||
JSONArray dataArray = new JSONArray();
|
||||
if (list != null) {
|
||||
for (DepotItemVo4DetailByTypeAndMId d: list) {
|
||||
@@ -109,7 +102,7 @@ public class DepotItemController {
|
||||
return returnJson(objectMap, "查找不到数据", ErpInfo.OK.code);
|
||||
}
|
||||
objectMap.put("rows", dataArray);
|
||||
objectMap.put("total", depotItemService.findDetailByTypeAndMaterialIdCounts(parameterMap));
|
||||
objectMap.put("total", depotItemService.findDetailByDepotIdsAndMaterialIdCount(depotIds, mId));
|
||||
return returnJson(objectMap, ErpInfo.OK.name, ErpInfo.OK.code);
|
||||
}
|
||||
|
||||
|
||||
@@ -29,12 +29,14 @@ public interface DepotItemMapperEx {
|
||||
@Param("type") Integer type,
|
||||
@Param("remark") String remark);
|
||||
|
||||
List<DepotItemVo4DetailByTypeAndMId> findDetailByTypeAndMaterialIdList(
|
||||
List<DepotItemVo4DetailByTypeAndMId> findDetailByDepotIdsAndMaterialIdList(
|
||||
@Param("depotIdArray") String[] depotIdArray,
|
||||
@Param("mId") Long mId,
|
||||
@Param("offset") Integer offset,
|
||||
@Param("rows") Integer rows);
|
||||
|
||||
Long findDetailByTypeAndMaterialIdCounts(
|
||||
Long findDetailByDepotIdsAndMaterialIdCount(
|
||||
@Param("depotIdArray") String[] depotIdArray,
|
||||
@Param("mId") Long mId);
|
||||
|
||||
List<DepotItemVo4WithInfoEx> getDetailList(
|
||||
|
||||
@@ -168,30 +168,28 @@ public class DepotItemService {
|
||||
return list==null?0:list.size();
|
||||
}
|
||||
|
||||
public List<DepotItemVo4DetailByTypeAndMId> findDetailByTypeAndMaterialIdList(Map<String, String> map)throws Exception {
|
||||
String mIdStr = map.get("mId");
|
||||
Long mId = null;
|
||||
if(!StringUtil.isEmpty(mIdStr)) {
|
||||
mId = Long.parseLong(mIdStr);
|
||||
public List<DepotItemVo4DetailByTypeAndMId> findDetailByDepotIdsAndMaterialIdList(String depotIds, Long mId, int offset, int rows)throws Exception {
|
||||
String [] depotIdArray = null;
|
||||
if(StringUtil.isNotEmpty(depotIds)) {
|
||||
depotIdArray = depotIds.split(",");
|
||||
}
|
||||
List<DepotItemVo4DetailByTypeAndMId> list =null;
|
||||
try{
|
||||
list = depotItemMapperEx.findDetailByTypeAndMaterialIdList(mId, QueryUtils.offset(map), QueryUtils.rows(map));
|
||||
list = depotItemMapperEx.findDetailByDepotIdsAndMaterialIdList(depotIdArray, mId, offset, rows);
|
||||
}catch(Exception e){
|
||||
JshException.readFail(logger, e);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
public Long findDetailByTypeAndMaterialIdCounts(Map<String, String> map)throws Exception {
|
||||
String mIdStr = map.get("mId");
|
||||
Long mId = null;
|
||||
if(!StringUtil.isEmpty(mIdStr)) {
|
||||
mId = Long.parseLong(mIdStr);
|
||||
public Long findDetailByDepotIdsAndMaterialIdCount(String depotIds, Long mId)throws Exception {
|
||||
String [] depotIdArray = null;
|
||||
if(StringUtil.isNotEmpty(depotIds)) {
|
||||
depotIdArray = depotIds.split(",");
|
||||
}
|
||||
Long result =null;
|
||||
try{
|
||||
result = depotItemMapperEx.findDetailByTypeAndMaterialIdCounts(mId);
|
||||
result = depotItemMapperEx.findDetailByDepotIdsAndMaterialIdCount(depotIdArray, mId);
|
||||
}catch(Exception e){
|
||||
JshException.readFail(logger, e);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user