From 61d28206585b8746a9f1982cfe1dfc5deabde91a Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期六, 17 六月 2023 09:03:27 +0800 Subject: [PATCH] #库存统计更改为包括立库、平库 --- src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 5 ++ src/main/java/com/zy/asrs/service/LocDetlService.java | 3 + src/main/java/com/zy/asrs/controller/LocDetlController.java | 19 +++++++-- src/main/resources/mapper/LocDetlMapper.xml | 29 ++++++++++++++ src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 12 ++++++ src/main/java/com/zy/asrs/entity/result/LocDetlAll.java | 7 +++ 6 files changed, 70 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index b914ab1..fc615fd 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java @@ -242,11 +242,20 @@ public R statis(@RequestParam(defaultValue = "1")Integer curr, @RequestParam(defaultValue = "10")Integer limit, @RequestParam Map<String, Object> param) { - Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class)); - for (LocDetl locDetl : stockStatis.getRecords()) { - Mat mat = matService.selectByMatnr(locDetl.getMatnr()); +// Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class)); +// for (LocDetl locDetl : stockStatis.getRecords()) { +// Mat mat = matService.selectByMatnr(locDetl.getMatnr()); +// if (mat != null) { +// locDetl.sync(mat); +// } +// } +// return R.ok().add(stockStatis); + + Page<LocDetlAll> stockStatis = locDetlService.getStockStatisAll(toPage(curr, limit, param, LocDetlAll.class)); + for (LocDetlAll locDetlAll : stockStatis.getRecords()) { + Mat mat = matService.selectByMatnr(locDetlAll.getMatnr()); if (mat != null) { - locDetl.sync(mat); + locDetlAll.sync(mat); } } return R.ok().add(stockStatis); @@ -281,7 +290,7 @@ */ @RequestMapping("/locDetl/count") public R getAllCount(){ - Integer sum = locDetlService.sum(); + Double sum = locDetlService.sumAll(); return R.ok(sum); } diff --git a/src/main/java/com/zy/asrs/entity/result/LocDetlAll.java b/src/main/java/com/zy/asrs/entity/result/LocDetlAll.java index 18e7a36..e5c80f5 100644 --- a/src/main/java/com/zy/asrs/entity/result/LocDetlAll.java +++ b/src/main/java/com/zy/asrs/entity/result/LocDetlAll.java @@ -1,14 +1,17 @@ package com.zy.asrs.entity.result; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.core.common.Cools; import com.core.common.SpringUtils; import com.zy.asrs.entity.LocOwner; import com.zy.asrs.service.LocOwnerService; +import com.zy.common.utils.Synchro; import lombok.Data; import java.util.Date; @Data +@ExcelIgnoreUnannotated public class LocDetlAll { private String loc_no; private String zpallet; @@ -47,4 +50,8 @@ return String.valueOf(this.payment); } } + + public void sync(Object source) { + Synchro.Copy(source, this); + } } diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java index af9f2f9..28b280d 100644 --- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java +++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java @@ -47,6 +47,10 @@ Integer getStockStatisCount(Map<String, Object> map); + List<LocDetlAll> getStockStatisAll(Map<String, Object> map); + + Integer getStockStatisCountAll(Map<String, Object> map); + List<LocDetl> getStockStatisExcel(); @Select("select sum(a.anfme) as sum from asr_loc_detl a left join asr_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr}") @@ -89,4 +93,5 @@ List<LocDetlAll> selectAllPyment(LocDetlDTO locDetlDTO); int selectAllPymentcount(LocDetlDTO locDetlDTO); + Double sumAll(); } diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java index 8afb979..77b1739 100644 --- a/src/main/java/com/zy/asrs/service/LocDetlService.java +++ b/src/main/java/com/zy/asrs/service/LocDetlService.java @@ -36,6 +36,9 @@ List<LocDetl> queryStockViewMerge(String locNo); Page<LocDetl> getStockStatis(Page<LocDetl> page); + Page<LocDetlAll> getStockStatisAll(Page<LocDetlAll> page); + + Double sumAll(); Double getSumAnfme(String matnr); diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java index 3e3a6bf..b083fa9 100644 --- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java @@ -69,6 +69,18 @@ } @Override + public Page<LocDetlAll> getStockStatisAll(Page<LocDetlAll> page) { + page.setRecords(baseMapper.getStockStatisAll(page.getCondition())); + page.setTotal(baseMapper.getStockStatisCountAll(page.getCondition())); + return page; + } + + @Override + public Double sumAll() { + return this.baseMapper.sumAll(); + } + + @Override public Double getSumAnfme(String matnr) { return this.baseMapper.selectSumAnfmeByMatnr(matnr); } diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml index b86e724..742bea6 100644 --- a/src/main/resources/mapper/LocDetlMapper.xml +++ b/src/main/resources/mapper/LocDetlMapper.xml @@ -554,6 +554,35 @@ ) a </select> + <select id="getStockStatisAll" resultType="com.zy.asrs.entity.result.LocDetlAll"> + select * from + ( + select + ROW_NUMBER() over (order by sum(a.anfme) desc) as row + , a.matnr + , sum(a.anfme) as anfme + from asr_loc_detl_all a + where 1=1 + <include refid="stockOutCondition"></include> + group by a.matnr + ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) + </select> + + <select id="getStockStatisCountAll" parameterType="java.util.Map" resultType="java.lang.Integer"> + select count(1) as count from + ( + select + a.matnr + from asr_loc_detl_all a + where 1=1 + <include refid="stockOutCondition"></include> + group by a.matnr + ) b + </select> + + <select id="sumAll" resultType="java.lang.Double"> + SELECT SUM(anfme) FROM asr_loc_detl_all + </select> </mapper> -- Gitblit v1.9.1