diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java index ef81f449..a964ab55 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java @@ -558,6 +558,7 @@ public class MaterialController { @RequestParam("pageSize") Integer pageSize, @RequestParam(value = "depotIds", required = false) String depotIds, @RequestParam(value = "categoryId", required = false) Long categoryId, + @RequestParam(value = "position", required = false) String position, @RequestParam("materialParam") String materialParam, @RequestParam("zeroStock") Integer zeroStock, @RequestParam("mpList") String mpList, @@ -582,10 +583,10 @@ public class MaterialController { depotList.add(object.getLong("id")); } } - List dataList = materialService.getListWithStock(depotList, idList, StringUtil.toNull(materialParam), zeroStock, - StringUtil.safeSqlParse(column), StringUtil.safeSqlParse(order), (currentPage-1)*pageSize, pageSize); - int total = materialService.getListWithStockCount(depotList, idList, StringUtil.toNull(materialParam), zeroStock); - MaterialVo4Unit materialVo4Unit= materialService.getTotalStockAndPrice(depotList, idList, StringUtil.toNull(materialParam)); + List dataList = materialService.getListWithStock(depotList, idList, StringUtil.toNull(position), StringUtil.toNull(materialParam), + zeroStock, StringUtil.safeSqlParse(column), StringUtil.safeSqlParse(order), (currentPage-1)*pageSize, pageSize); + int total = materialService.getListWithStockCount(depotList, idList, StringUtil.toNull(position), StringUtil.toNull(materialParam), zeroStock); + MaterialVo4Unit materialVo4Unit= materialService.getTotalStockAndPrice(depotList, idList, StringUtil.toNull(position), StringUtil.toNull(materialParam)); map.put("total", total); map.put("currentStock", materialVo4Unit.getCurrentStock()!=null?materialVo4Unit.getCurrentStock():BigDecimal.ZERO); map.put("currentStockPrice", materialVo4Unit.getCurrentStockPrice()!=null?materialVo4Unit.getCurrentStockPrice():BigDecimal.ZERO); diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java index 5cdd926f..6b42c859 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java @@ -125,6 +125,7 @@ public interface MaterialMapperEx { List getListWithStock( @Param("depotList") List depotList, @Param("idList") List idList, + @Param("position") String position, @Param("materialParam") String materialParam, @Param("zeroStock") Integer zeroStock, @Param("column") String column, @@ -135,12 +136,14 @@ public interface MaterialMapperEx { int getListWithStockCount( @Param("depotList") List depotList, @Param("idList") List idList, + @Param("position") String position, @Param("materialParam") String materialParam, @Param("zeroStock") Integer zeroStock); MaterialVo4Unit getTotalStockAndPrice( @Param("depotList") List depotList, @Param("idList") List idList, + @Param("position") String position, @Param("materialParam") String materialParam); int checkIsExist( diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/material/MaterialService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/material/MaterialService.java index e9468453..6eada973 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/material/MaterialService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/material/MaterialService.java @@ -1260,14 +1260,14 @@ public class MaterialService { return materialMapperEx.getInitialStockWithMaterial(depotList); } - public List getListWithStock(List depotList, List idList, String materialParam, Integer zeroStock, + public List getListWithStock(List depotList, List idList, String position, String materialParam, Integer zeroStock, String column, String order, Integer offset, Integer rows) throws Exception { Map initialStockMap = new HashMap<>(); List initialStockList = getInitialStockWithMaterial(depotList); for (MaterialInitialStockWithMaterial mism: initialStockList) { initialStockMap.put(mism.getMaterialId(), mism.getNumber()); } - List dataList = materialMapperEx.getListWithStock(depotList, idList, materialParam, zeroStock, column, order, offset, rows); + List dataList = materialMapperEx.getListWithStock(depotList, idList, position, materialParam, zeroStock, column, order, offset, rows); for(MaterialVo4Unit item: dataList) { item.setUnitName(null!=item.getUnitId()?item.getUnitName() + "[多单位]":item.getUnitName()); item.setInitialStock(null!=initialStockMap.get(item.getId())?initialStockMap.get(item.getId()):BigDecimal.ZERO); @@ -1276,12 +1276,12 @@ public class MaterialService { return dataList; } - public int getListWithStockCount(List depotList, List idList, String materialParam, Integer zeroStock) { - return materialMapperEx.getListWithStockCount(depotList, idList, materialParam, zeroStock); + public int getListWithStockCount(List depotList, List idList, String position, String materialParam, Integer zeroStock) { + return materialMapperEx.getListWithStockCount(depotList, idList, position, materialParam, zeroStock); } - public MaterialVo4Unit getTotalStockAndPrice(List depotList, List idList, String materialParam) { - return materialMapperEx.getTotalStockAndPrice(depotList, idList, materialParam); + public MaterialVo4Unit getTotalStockAndPrice(List depotList, List idList, String position, String materialParam) { + return materialMapperEx.getTotalStockAndPrice(depotList, idList, position, materialParam); } /** diff --git a/jshERP-boot/src/main/resources/mapper_xml/MaterialMapperEx.xml b/jshERP-boot/src/main/resources/mapper_xml/MaterialMapperEx.xml index 1def0a87..48ae3af7 100644 --- a/jshERP-boot/src/main/resources/mapper_xml/MaterialMapperEx.xml +++ b/jshERP-boot/src/main/resources/mapper_xml/MaterialMapperEx.xml @@ -621,6 +621,10 @@ #{item} + + + and m.position like #{bindPosition} + and (me.bar_code like #{bindParam} or m.name like #{bindParam} or m.standard like #{bindParam} or m.model like #{bindParam} or m.color like #{bindParam}) @@ -662,6 +666,10 @@ #{item} + + + and m.position like #{bindPosition} + and (me.bar_code like #{bindParam} or m.name like #{bindParam} or m.standard like #{bindParam} or m.model like #{bindParam} or m.color like #{bindParam}) @@ -698,6 +706,10 @@ #{item} + + + and m.position like #{bindPosition} + and (me.bar_code like #{bindParam} or m.name like #{bindParam} or m.standard like #{bindParam} or m.model like #{bindParam})