diff --git a/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java b/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java index 84cbbaf..f82fb88 100644 --- a/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java +++ b/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java @@ -20,10 +20,12 @@ import com.dsic.gj_erp.service.sy.impl.SyMsgService; import com.dsic.gj_erp.service.zyjh.ZyjhService; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Value; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.bind.annotation.*; import java.io.File; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -49,6 +51,7 @@ public class KbanController { private final SyMsgService msgService; private final DmSygdMxService service; private final DmXbjhService xbjhService; + private final RedisTemplate redisTemplate; @Value("${pdfUri}") private String pdfUri; @@ -385,20 +388,33 @@ public class KbanController { return new ResultBean<>(list); } + private String key="YdjhKban::"; /** * 年度切割完成重量 */ @GetMapping("/ndwcl") - public ResultBean getndWcl(){ + public Object getndWcl(){ + String lastUpdateDate= (String) redisTemplate.opsForValue().get(key+"mbdcUpateTime"); DateTime date = DateUtil.date(); + String today=date.toString("yyyyMMdd"); + if (today.equals(lastUpdateDate)){ + return "redirect:YdjhKban/getMbdc"; + } String from = DateUtil.beginOfYear(date).toString("yyyy/MM/dd"); String to = DateUtil.offsetDay(date,1).toString("yyyy/MM/dd"); AtomicInteger maxVersion = xbjhService.getMaxVersion(); String nf=DateUtil.thisYear()+""; - BigDecimal zlByNfAndVersion = xbjhService.getZlByNfAndVersion(nf, maxVersion.toString()); - -// zyjhService - return new ResultBean<>(); + //本年度线表总重量 + BigDecimal xbzl = xbjhService.getZlByNfAndVersion(nf, maxVersion.toString()); + //作业计划完成重量 + BigDecimal wgzl = kbanService.getWgzlByTime(from, to); + BigDecimal jhwc = wgzl.divide(new BigDecimal("1000"), 4, RoundingMode.HALF_UP) + .divide(xbzl, 1, RoundingMode.HALF_UP) + .multiply(new BigDecimal("100")); + return new ResultBean<>(new HashMap(){{ + put("jhwc",jhwc); + put("ndgc",wgzl.divide(new BigDecimal("10000000"),2,RoundingMode.HALF_UP)); + }}); } /** diff --git a/src/main/java/com/dsic/gj_erp/controller/kban/YdjhKbanController.java b/src/main/java/com/dsic/gj_erp/controller/kban/YdjhKbanController.java index eb80787..c0846d6 100644 --- a/src/main/java/com/dsic/gj_erp/controller/kban/YdjhKbanController.java +++ b/src/main/java/com/dsic/gj_erp/controller/kban/YdjhKbanController.java @@ -138,6 +138,7 @@ public class YdjhKbanController { Double jhwc= map.get("jhwc"); redisTemplate.opsForValue().set(key+"ndgc", ndgc); redisTemplate.opsForValue().set(key+"jhwc", jhwc); + redisTemplate.opsForValue().set(key+"mbdcUpateTime", DateUtil.date().toString("yyyyMMdd")); return new ResultBean<>(); } diff --git a/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java b/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java index 81283f4..f323ef6 100644 --- a/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java +++ b/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java @@ -10,6 +10,8 @@ import java.util.Map; @Mapper public interface KbanMapper { + BigDecimal 根据日期范围获取完成重量(String from,String to); + //按日或月统计作业计划完成量 List> 作业计划完成量(Map map); diff --git a/src/main/java/com/dsic/gj_erp/service/KbanService.java b/src/main/java/com/dsic/gj_erp/service/KbanService.java index b814bc5..92990bf 100644 --- a/src/main/java/com/dsic/gj_erp/service/KbanService.java +++ b/src/main/java/com/dsic/gj_erp/service/KbanService.java @@ -30,7 +30,7 @@ public class KbanService { * 按日期计算切割完成重量 */ public BigDecimal getWgzlByTime(String from,String to){ - return null; + return kbanMapper.根据日期范围获取完成重量(from,to); } public List> 作业计划完成量(Map map){ diff --git a/src/main/resources/mappers/kban/KbanMapper.xml b/src/main/resources/mappers/kban/KbanMapper.xml index 36b8831..1db631e 100644 --- a/src/main/resources/mappers/kban/KbanMapper.xml +++ b/src/main/resources/mappers/kban/KbanMapper.xml @@ -282,4 +282,8 @@ group by dc_ch order by dc_ch + +