From 822eca0cdfd8fce7cfb3ac4e8800e98437d55936 Mon Sep 17 00:00:00 2001 From: jishenghua <752718920@qq.com> Date: Sun, 7 Apr 2024 00:33:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=98=8E=E7=BB=86=E5=92=8C?= =?UTF-8?q?=E6=B1=87=E6=80=BB=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/controller/DepotHeadController.java | 20 +- .../datasource/mappers/DepotHeadMapperEx.java | 39 ++++ .../service/depotHead/DepotHeadService.java | 58 ++++++ .../mapper_xml/DepotHeadMapperEx.xml | 171 ++++++++++++++++++ 4 files changed, 283 insertions(+), 5 deletions(-) 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 ad585f58..a0aab8b5 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 @@ -135,11 +135,13 @@ public class DepotHeadController { map.put("total", total); //存放数据json数组 if (null != list) { - for (DepotHeadVo4InDetail dhd : list) { - resList.add(dhd); - } + resList.addAll(list); } map.put("rows", resList); + DepotHeadVo4InDetail statistic = depotHeadService.findInOutDetailStatistic(beginTime, endTime, type, creatorArray, organArray, forceFlag, inOutManageFlag, + StringUtil.toNull(materialParam), depotList, oId, StringUtil.toNull(number), creator, remark); + map.put("operNumberTotal", statistic.getOperNumber()); + map.put("allPriceTotal", statistic.getAllPrice()); res.code = 200; res.data = map; } catch(Exception e){ @@ -151,7 +153,7 @@ public class DepotHeadController { } /** - * 入库出库统计接口 + * 入库出库汇总接口 * @param currentPage * @param pageSize * @param oId @@ -164,7 +166,7 @@ public class DepotHeadController { * @return */ @GetMapping(value = "/findInOutMaterialCount") - @ApiOperation(value = "入库出库统计接口") + @ApiOperation(value = "入库出库汇总接口") public BaseResponseInfo findInOutMaterialCount(@RequestParam("currentPage") Integer currentPage, @RequestParam("pageSize") Integer pageSize, @RequestParam(value = "organId", required = false) Integer oId, @@ -202,6 +204,10 @@ public class DepotHeadController { StringUtil.toNull(materialParam), depotList, organizationId, oId); map.put("total", total); map.put("rows", list); + DepotHeadVo4InOutMCount statistic = depotHeadService.findInOutMaterialCountStatistic(beginTime, endTime, type, forceFlag, inOutManageFlag, + StringUtil.toNull(materialParam), depotList, organizationId, oId); + map.put("numSumTotal", statistic.getNumSum()); + map.put("priceSumTotal", statistic.getPriceSum()); res.code = 200; res.data = map; } catch(Exception e){ @@ -281,6 +287,10 @@ public class DepotHeadController { creatorArray, forceFlag, StringUtil.toNull(materialParam), depotList, depotFList, remark); map.put("rows", list); map.put("total", total); + DepotHeadVo4InDetail statistic = depotHeadService.findAllocationStatistic(beginTime, endTime, subType, StringUtil.toNull(number), + creatorArray, forceFlag, StringUtil.toNull(materialParam), depotList, depotFList, remark); + map.put("operNumberTotal", statistic.getOperNumber()); + map.put("allPriceTotal", statistic.getAllPrice()); res.code = 200; res.data = map; } catch(Exception e){ 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 f67372b3..0e47a91b 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 @@ -97,6 +97,21 @@ public interface DepotHeadMapperEx { @Param("creator") Long creator, @Param("remark") String remark); + List findInOutDetailStatistic( + @Param("beginTime") String beginTime, + @Param("endTime") String endTime, + @Param("type") String type, + @Param("creatorArray") String[] creatorArray, + @Param("organArray") String[] organArray, + @Param("forceFlag") Boolean forceFlag, + @Param("inOutManageFlag") Boolean inOutManageFlag, + @Param("materialParam") String materialParam, + @Param("depotList") List depotList, + @Param("oId") Integer oId, + @Param("number") String number, + @Param("creator") Long creator, + @Param("remark") String remark); + List findInOutMaterialCount( @Param("beginTime") String beginTime, @Param("endTime") String endTime, @@ -125,6 +140,18 @@ public interface DepotHeadMapperEx { @Param("creatorArray") String[] creatorArray, @Param("organArray") String[] organArray); + List findInOutMaterialCountStatistic( + @Param("beginTime") String beginTime, + @Param("endTime") String endTime, + @Param("type") String type, + @Param("forceFlag") Boolean forceFlag, + @Param("inOutManageFlag") Boolean inOutManageFlag, + @Param("materialParam") String materialParam, + @Param("depotList") List depotList, + @Param("oId") Integer oId, + @Param("creatorArray") String[] creatorArray, + @Param("organArray") String[] organArray); + List findAllocationDetail( @Param("beginTime") String beginTime, @Param("endTime") String endTime, @@ -153,6 +180,18 @@ public interface DepotHeadMapperEx { @Param("depotFList") List depotFList, @Param("remark") String remark); + List findAllocationStatistic( + @Param("beginTime") String beginTime, + @Param("endTime") String endTime, + @Param("subType") String subType, + @Param("number") String number, + @Param("creatorArray") String[] creatorArray, + @Param("forceFlag") Boolean forceFlag, + @Param("materialParam") String materialParam, + @Param("depotList") List depotList, + @Param("depotFList") List depotFList, + @Param("remark") String remark); + List getStatementAccount( @Param("beginTime") String beginTime, @Param("endTime") String endTime, 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 aaa5f61a..4e065f95 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 @@ -701,6 +701,24 @@ public class DepotHeadService { return result; } + public DepotHeadVo4InDetail findInOutDetailStatistic(String beginTime, String endTime, String type, String [] creatorArray, + String [] organArray, Boolean forceFlag, Boolean inOutManageFlag, + String materialParam, List depotList, Integer oId, String number, + Long creator, String remark) throws Exception{ + DepotHeadVo4InDetail item = new DepotHeadVo4InDetail(); + try{ + List list =depotHeadMapperEx.findInOutDetailStatistic(beginTime, endTime, type, creatorArray, organArray, forceFlag, inOutManageFlag, + materialParam, depotList, oId, number, creator, remark); + if(list.size()>0) { + item.setOperNumber(list.get(0).getOperNumber()); + item.setAllPrice(list.get(0).getAllPrice()); + } + }catch(Exception e){ + JshException.readFail(logger, e); + } + return item; + } + public List findInOutMaterialCount(String beginTime, String endTime, String type, Boolean forceFlag, Boolean inOutManageFlag, String materialParam, List depotList, Long organizationId, Integer oId, String column, String order, @@ -740,6 +758,29 @@ public class DepotHeadService { return result; } + public DepotHeadVo4InOutMCount findInOutMaterialCountStatistic(String beginTime, String endTime, String type, + Boolean forceFlag, Boolean inOutManageFlag, String materialParam, + List depotList, Long organizationId, Integer oId) throws Exception { + DepotHeadVo4InOutMCount item = new DepotHeadVo4InOutMCount(); + try{ + String [] creatorArray = getCreatorArray(); + if(creatorArray == null && organizationId != null) { + creatorArray = getCreatorArrayByOrg(organizationId); + } + String subType = "出库".equals(type)? "销售" : ""; + String [] organArray = getOrganArray(subType, ""); + List list = depotHeadMapperEx.findInOutMaterialCountStatistic(beginTime, endTime, type, + forceFlag, inOutManageFlag, materialParam, depotList, oId, creatorArray, organArray); + if(list.size()>0) { + item.setNumSum(list.get(0).getNumSum()); + item.setPriceSum(list.get(0).getPriceSum()); + } + }catch(Exception e){ + JshException.readFail(logger, e); + } + return item; + } + public List findAllocationDetail(String beginTime, String endTime, String subType, String number, String [] creatorArray, Boolean forceFlag, String materialParam, List depotList, List depotFList, String remark, String column, String order, Integer offset, Integer rows) throws Exception{ @@ -766,6 +807,23 @@ public class DepotHeadService { return result; } + public DepotHeadVo4InDetail findAllocationStatistic(String beginTime, String endTime, String subType, String number, + String [] creatorArray, Boolean forceFlag, String materialParam, List depotList, List depotFList, + String remark) throws Exception{ + DepotHeadVo4InDetail item = new DepotHeadVo4InDetail(); + try{ + List list =depotHeadMapperEx.findAllocationStatistic(beginTime, endTime, subType, number, creatorArray, forceFlag, + materialParam, depotList, depotFList, remark); + if(list.size()>0) { + item.setOperNumber(list.get(0).getOperNumber()); + item.setAllPrice(list.get(0).getAllPrice()); + } + }catch(Exception e){ + JshException.readFail(logger, e); + } + return item; + } + public List getStatementAccount(String beginTime, String endTime, Integer organId, String [] organArray, String supplierType, String type, String subType, String typeBack, String subTypeBack, String billType, Integer offset, Integer rows) { List list = null; diff --git a/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml b/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml index 659fab39..d25b9ea4 100644 --- a/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml +++ b/jshERP-boot/src/main/resources/mapper_xml/DepotHeadMapperEx.xml @@ -416,6 +416,66 @@ and ifnull(dh.delete_flag,'0') !='1' + + + + + +