diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotHeadController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotHeadController.java index dc8e0d6d..920846b0 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotHeadController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotHeadController.java @@ -13,6 +13,7 @@ import com.jsh.erp.datasource.vo.DepotHeadVo4List; import com.jsh.erp.datasource.vo.DepotHeadVo4StatementAccount; import com.jsh.erp.exception.BusinessParamCheckingException; import com.jsh.erp.service.accountHead.AccountHeadService; +import com.jsh.erp.service.depot.DepotService; import com.jsh.erp.service.depotHead.DepotHeadService; import com.jsh.erp.service.log.LogService; import com.jsh.erp.service.redis.RedisService; @@ -56,6 +57,9 @@ public class DepotHeadController { @Resource private SupplierService supplierService; + @Resource + private DepotService depotService; + @Resource private RedisService redisService; @@ -101,7 +105,7 @@ public class DepotHeadController { @RequestParam(value = "organId", required = false) Integer oId, @RequestParam("number") String number, @RequestParam("materialParam") String materialParam, - @RequestParam(value = "depotId", required = false) Integer depotId, + @RequestParam(value = "depotId", required = false) Long depotId, @RequestParam("beginTime") String beginTime, @RequestParam("endTime") String endTime, @RequestParam("type") String type, @@ -109,11 +113,22 @@ public class DepotHeadController { BaseResponseInfo res = new BaseResponseInfo(); Map map = new HashMap(); try { + List depotList = new ArrayList<>(); + if(depotId != null) { + depotList.add(depotId); + } else { + //未选择仓库时默认为当前用户有权限的仓库 + JSONArray depotArr = depotService.findDepotByCurrentUser(); + for(Object obj: depotArr) { + JSONObject object = JSONObject.parseObject(obj.toString()); + depotList.add(object.getLong("id")); + } + } List resList = new ArrayList(); beginTime = Tools.parseDayToTime(beginTime, BusinessConstants.DAY_FIRST_TIME); endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME); - List list = depotHeadService.findByAll(beginTime, endTime, type, materialParam, depotId, oId, number, (currentPage-1)*pageSize, pageSize); - int total = depotHeadService.findByAllCount(beginTime, endTime, type, materialParam, depotId, oId, number); + List list = depotHeadService.findByAll(beginTime, endTime, type, materialParam, depotList, oId, number, (currentPage-1)*pageSize, pageSize); + int total = depotHeadService.findByAllCount(beginTime, endTime, type, materialParam, depotList, oId, number); map.put("total", total); //存放数据json数组 if (null != list) { @@ -151,7 +166,7 @@ public class DepotHeadController { @RequestParam("pageSize") Integer pageSize, @RequestParam(value = "organId", required = false) Integer oId, @RequestParam("materialParam") String materialParam, - @RequestParam(value = "depotId", required = false) Integer depotId, + @RequestParam(value = "depotId", required = false) Long depotId, @RequestParam("beginTime") String beginTime, @RequestParam("endTime") String endTime, @RequestParam("type") String type, @@ -159,11 +174,22 @@ public class DepotHeadController { BaseResponseInfo res = new BaseResponseInfo(); Map map = new HashMap(); try { + List depotList = new ArrayList<>(); + if(depotId != null) { + depotList.add(depotId); + } else { + //未选择仓库时默认为当前用户有权限的仓库 + JSONArray depotArr = depotService.findDepotByCurrentUser(); + for(Object obj: depotArr) { + JSONObject object = JSONObject.parseObject(obj.toString()); + depotList.add(object.getLong("id")); + } + } List resList = new ArrayList<>(); beginTime = Tools.parseDayToTime(beginTime,BusinessConstants.DAY_FIRST_TIME); endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME); - List list = depotHeadService.findInOutMaterialCount(beginTime, endTime, type, materialParam, depotId, oId, (currentPage-1)*pageSize, pageSize); - int total = depotHeadService.findInOutMaterialCountTotal(beginTime, endTime, type, materialParam, depotId, oId); + List list = depotHeadService.findInOutMaterialCount(beginTime, endTime, type, materialParam, depotList, oId, (currentPage-1)*pageSize, pageSize); + int total = depotHeadService.findInOutMaterialCountTotal(beginTime, endTime, type, materialParam, depotList, oId); map.put("total", total); //存放数据json数组 if (null != list) { @@ -202,8 +228,8 @@ public class DepotHeadController { @RequestParam("pageSize") Integer pageSize, @RequestParam("number") String number, @RequestParam("materialParam") String materialParam, - @RequestParam(value = "depotId", required = false) Integer depotId, - @RequestParam(value = "depotIdF", required = false) Integer depotIdF, + @RequestParam(value = "depotId", required = false) Long depotId, + @RequestParam(value = "depotIdF", required = false) Long depotIdF, @RequestParam("beginTime") String beginTime, @RequestParam("endTime") String endTime, @RequestParam("subType") String subType, @@ -211,10 +237,32 @@ public class DepotHeadController { BaseResponseInfo res = new BaseResponseInfo(); Map map = new HashMap(); try { + List depotList = new ArrayList<>(); + List depotFList = new ArrayList<>(); + if(depotId != null) { + depotList.add(depotId); + } else { + //未选择仓库时默认为当前用户有权限的仓库 + JSONArray depotArr = depotService.findDepotByCurrentUser(); + for(Object obj: depotArr) { + JSONObject object = JSONObject.parseObject(obj.toString()); + depotList.add(object.getLong("id")); + } + } + if(depotIdF != null) { + depotFList.add(depotIdF); + } else { + //未选择仓库时默认为当前用户有权限的仓库 + JSONArray depotArr = depotService.findDepotByCurrentUser(); + for(Object obj: depotArr) { + JSONObject object = JSONObject.parseObject(obj.toString()); + depotFList.add(object.getLong("id")); + } + } beginTime = Tools.parseDayToTime(beginTime, BusinessConstants.DAY_FIRST_TIME); endTime = Tools.parseDayToTime(endTime,BusinessConstants.DAY_LAST_TIME); - List list = depotHeadService.findAllocationDetail(beginTime, endTime, subType, number, materialParam, depotId, depotIdF, (currentPage-1)*pageSize, pageSize); - int total = depotHeadService.findAllocationDetailCount(beginTime, endTime, subType, number, materialParam, depotId, depotIdF); + List list = depotHeadService.findAllocationDetail(beginTime, endTime, subType, number, materialParam, depotList, depotFList, (currentPage-1)*pageSize, pageSize); + int total = depotHeadService.findAllocationDetailCount(beginTime, endTime, subType, number, materialParam, depotList, depotFList); map.put("rows", list); map.put("total", total); res.code = 200; diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java index d4a11991..fd9fa605 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java @@ -559,8 +559,19 @@ public class DepotItemController { BaseResponseInfo res = new BaseResponseInfo(); Map map = new HashMap(); try { + List depotList = new ArrayList<>(); + if(depotId != null) { + depotList.add(depotId); + } else { + //未选择仓库时默认为当前用户有权限的仓库 + JSONArray depotArr = depotService.findDepotByCurrentUser(); + for(Object obj: depotArr) { + JSONObject object = JSONObject.parseObject(obj.toString()); + depotList.add(object.getLong("id")); + } + } String[] mpArr = mpList.split(","); - List list = depotItemService.findStockWarningCount((currentPage-1)*pageSize, pageSize,materialParam,depotId); + List list = depotItemService.findStockWarningCount((currentPage-1)*pageSize, pageSize, materialParam, depotList); //存放数据json数组 if (null != list) { for (DepotItemStockWarningCount disw : list) { @@ -581,7 +592,7 @@ public class DepotItemController { } } } - int total = depotItemService.findStockWarningCountTotal(materialParam,depotId); + int total = depotItemService.findStockWarningCountTotal(materialParam, depotList); map.put("total", total); map.put("rows", list); res.code = 200; diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotHeadMapperEx.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotHeadMapperEx.java index a506d7be..dbd4d3dc 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotHeadMapperEx.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotHeadMapperEx.java @@ -58,7 +58,7 @@ public interface DepotHeadMapperEx { @Param("endTime") String endTime, @Param("type") String type, @Param("materialParam") String materialParam, - @Param("depotId") Integer depotId, + @Param("depotList") List depotList, @Param("oId") Integer oId, @Param("number") String number, @Param("offset") Integer offset, @@ -69,7 +69,7 @@ public interface DepotHeadMapperEx { @Param("endTime") String endTime, @Param("type") String type, @Param("materialParam") String materialParam, - @Param("depotId") Integer depotId, + @Param("depotList") List depotList, @Param("oId") Integer oId, @Param("number") String number); @@ -78,7 +78,7 @@ public interface DepotHeadMapperEx { @Param("endTime") String endTime, @Param("type") String type, @Param("materialParam") String materialParam, - @Param("depotId") Integer depotId, + @Param("depotList") List depotList, @Param("oId") Integer oId, @Param("offset") Integer offset, @Param("rows") Integer rows); @@ -88,7 +88,7 @@ public interface DepotHeadMapperEx { @Param("endTime") String endTime, @Param("type") String type, @Param("materialParam") String materialParam, - @Param("depotId") Integer depotId, + @Param("depotList") List depotList, @Param("oId") Integer oId); List findAllocationDetail( @@ -97,8 +97,8 @@ public interface DepotHeadMapperEx { @Param("subType") String subType, @Param("number") String number, @Param("materialParam") String materialParam, - @Param("depotId") Integer depotId, - @Param("depotIdF") Integer depotIdF, + @Param("depotList") List depotList, + @Param("depotFList") List depotFList, @Param("offset") Integer offset, @Param("rows") Integer rows); @@ -108,8 +108,8 @@ public interface DepotHeadMapperEx { @Param("subType") String subType, @Param("number") String number, @Param("materialParam") String materialParam, - @Param("depotId") Integer depotId, - @Param("depotIdF") Integer depotIdF); + @Param("depotList") List depotList, + @Param("depotFList") List depotFList); List findStatementAccount( @Param("beginTime") String beginTime, diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java index bac6adc9..2dacaff5 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java @@ -119,11 +119,11 @@ public interface DepotItemMapperEx { @Param("offset") Integer offset, @Param("rows") Integer rows, @Param("materialParam") String materialParam, - @Param("depotId") Long depotId); + @Param("depotList") List depotList); int findStockWarningCountTotal( @Param("materialParam") String materialParam, - @Param("depotId") Long depotId); + @Param("depotList") List depotList); BigDecimal getFinishNumber( @Param("mId") Long mId, diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java index ae8afbc8..fdaee8e7 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java @@ -421,60 +421,62 @@ public class DepotHeadService { } public List findByAll(String beginTime, String endTime, String type, String materialParam, - Integer depotId, Integer oId, String number,Integer offset, Integer rows) throws Exception{ + List depotList, Integer oId, String number,Integer offset, Integer rows) throws Exception{ List list = null; try{ - list =depotHeadMapperEx.findByAll(beginTime, endTime, type, materialParam, depotId, oId, number, offset, rows); + list =depotHeadMapperEx.findByAll(beginTime, endTime, type, materialParam, depotList, oId, number, offset, rows); }catch(Exception e){ JshException.readFail(logger, e); } return list; } - public int findByAllCount(String beginTime, String endTime, String type, String materialParam, Integer depotId, Integer oId, String number) throws Exception{ + public int findByAllCount(String beginTime, String endTime, String type, String materialParam, List depotList, Integer oId, String number) throws Exception{ int result = 0; try{ - result =depotHeadMapperEx.findByAllCount(beginTime, endTime, type, materialParam, depotId, oId, number); + result =depotHeadMapperEx.findByAllCount(beginTime, endTime, type, materialParam, depotList, oId, number); }catch(Exception e){ JshException.readFail(logger, e); } return result; } - public List findInOutMaterialCount(String beginTime, String endTime, String type, String materialParam, Integer depotId, Integer oId, Integer offset, Integer rows)throws Exception { + public List findInOutMaterialCount(String beginTime, String endTime, String type, String materialParam, List depotList, Integer oId, Integer offset, Integer rows)throws Exception { List list = null; try{ - list =depotHeadMapperEx.findInOutMaterialCount(beginTime, endTime, type, materialParam, depotId, oId, offset, rows); + list =depotHeadMapperEx.findInOutMaterialCount(beginTime, endTime, type, materialParam, depotList, oId, offset, rows); }catch(Exception e){ JshException.readFail(logger, e); } return list; } - public int findInOutMaterialCountTotal(String beginTime, String endTime, String type, String materialParam, Integer depotId, Integer oId)throws Exception { + public int findInOutMaterialCountTotal(String beginTime, String endTime, String type, String materialParam, List depotList, Integer oId)throws Exception { int result = 0; try{ - result =depotHeadMapperEx.findInOutMaterialCountTotal(beginTime, endTime, type, materialParam, depotId, oId); + result =depotHeadMapperEx.findInOutMaterialCountTotal(beginTime, endTime, type, materialParam, depotList, oId); }catch(Exception e){ JshException.readFail(logger, e); } return result; } - public List findAllocationDetail(String beginTime, String endTime, String subType, String number, String materialParam, Integer depotId, Integer depotIdF, Integer offset, Integer rows) throws Exception{ + public List findAllocationDetail(String beginTime, String endTime, String subType, String number, + String materialParam, List depotList, List depotFList, Integer offset, Integer rows) throws Exception{ List list = null; try{ - list =depotHeadMapperEx.findAllocationDetail(beginTime, endTime, subType, number, materialParam, depotId, depotIdF, offset, rows); + list =depotHeadMapperEx.findAllocationDetail(beginTime, endTime, subType, number, materialParam, depotList, depotFList, offset, rows); }catch(Exception e){ JshException.readFail(logger, e); } return list; } - public int findAllocationDetailCount(String beginTime, String endTime, String subType, String number, String materialParam, Integer depotId, Integer depotIdF) throws Exception{ + public int findAllocationDetailCount(String beginTime, String endTime, String subType, String number, + String materialParam, List depotList, List depotFList) throws Exception{ int result = 0; try{ - result =depotHeadMapperEx.findAllocationDetailCount(beginTime, endTime, subType, number, materialParam, depotId,depotIdF); + result =depotHeadMapperEx.findAllocationDetailCount(beginTime, endTime, subType, number, materialParam, depotList, depotFList); }catch(Exception e){ JshException.readFail(logger, e); } diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java index c4f2b03a..ac6f99fe 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java @@ -532,20 +532,20 @@ public class DepotItemService { } @Transactional(value = "transactionManager", rollbackFor = Exception.class) - public List findStockWarningCount(Integer offset, Integer rows, String materialParam, Long depotId) { + public List findStockWarningCount(Integer offset, Integer rows, String materialParam, List depotList) { List list = null; try{ - list =depotItemMapperEx.findStockWarningCount(offset, rows, materialParam, depotId); + list =depotItemMapperEx.findStockWarningCount(offset, rows, materialParam, depotList); }catch(Exception e){ JshException.readFail(logger, e); } return list; } @Transactional(value = "transactionManager", rollbackFor = Exception.class) - public int findStockWarningCountTotal(String materialParam, Long depotId) { + public int findStockWarningCountTotal(String materialParam, List depotList) { int result = 0; try{ - result =depotItemMapperEx.findStockWarningCountTotal(materialParam, depotId); + result =depotItemMapperEx.findStockWarningCountTotal(materialParam, depotList); }catch(Exception e){ JshException.readFail(logger, e); } diff --git a/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml b/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml index 57b49ee0..add48ce2 100644 --- a/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml +++ b/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml @@ -205,8 +205,11 @@ and dh.organ_id = #{oId} - - and di.depot_id = #{depotId} + + and di.depot_id in + + #{item} + and dh.type=#{type} @@ -239,8 +242,11 @@ and dh.organ_id = #{oId} - - and di.depot_id = #{depotId} + + and di.depot_id in + + #{item} + and dh.type=#{type} @@ -276,12 +282,25 @@ and dh.organ_id = #{oId} - + - and ((di.depot_id = #{depotId} and dh.sub_type!='调拨') or (di.another_depot_id = #{depotId} and dh.sub_type='调拨')) + and (( + dh.sub_type!='调拨' and di.depot_id in + + #{item} + + ) or ( + dh.sub_type='调拨' and di.another_depot_id in + + #{item} + + )) - and di.depot_id = #{depotId} + and di.depot_id in + + #{item} + @@ -308,12 +327,25 @@ and dh.organ_id = #{oId} - + - and ((di.depot_id = #{depotId} and dh.sub_type!='调拨') or (di.another_depot_id = #{depotId} and dh.sub_type='调拨')) + and (( + dh.sub_type!='调拨' and di.depot_id in + + #{item} + + ) or ( + dh.sub_type='调拨' and di.another_depot_id in + + #{item} + + )) - and di.depot_id = #{depotId} + and di.depot_id in + + #{item} + @@ -335,11 +367,17 @@ left join (select id as aid,name as SName,delete_Flag as adelete_Flag from jsh_depot ) ddd on ddd.aid=di.another_depot_id and ifnull(ddd.adelete_Flag,'0') !='1' where dh.oper_time >=#{beginTime} and dh.oper_time <=#{endTime} - - and di.depot_id = #{depotIdF} + + and di.depot_id in + + #{item} + - - and di.another_depot_id = #{depotId} + + and di.another_depot_id in + + #{item} + and dh.sub_type=#{subType} @@ -367,11 +405,17 @@ left join jsh_material_extend me on me.id=di.material_extend_id and ifnull(me.delete_Flag,'0') !='1' left join (select id,name as dName,delete_Flag from jsh_depot) d on d.id=di.depot_id and ifnull(d.delete_Flag,'0') !='1' where dh.oper_time >=#{beginTime} and dh.oper_time <=#{endTime} - - and di.depot_id = #{depotIdF} + + and di.depot_id in + + #{item} + - - and di.another_depot_id = #{depotId} + + and di.another_depot_id in + + #{item} + and dh.sub_type=#{subType} diff --git a/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml b/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml index 67265b97..7ef147ae 100644 --- a/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml +++ b/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml @@ -441,8 +441,11 @@ and (me.bar_code like #{bindKey} or m.name like #{bindKey} or m.standard like #{bindKey} or m.model like #{bindKey}) - - and mis.depot_id= #{depotId} + + and mis.depot_id in + + #{item} + order by depotName asc @@ -469,8 +472,11 @@ and (me.bar_code like #{bindKey} or m.name like #{bindKey} or m.standard like #{bindKey} or m.model like #{bindKey}) - - and mis.depot_id= #{depotId} + + and mis.depot_id in + + #{item} + ) tb