From 49ff07d4172fa7a601e430ac12ffc29c005648c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com> Date: Tue, 5 Nov 2024 15:41:34 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=9C=88=E5=BA=A6=E8=AE=A1=E5=88=92=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=88=92=E7=BA=BF=E3=80=81=E5=88=87=E5=89=B2=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E8=AE=A1=E5=88=92=E8=AE=BE=E5=A4=87=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=202.=E5=A2=9E=E5=8A=A0=E7=9C=8B=E6=9D=BF=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2:=E7=BA=BF=E8=A1=A8=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E6=83=85=E5=86=B5=E3=80=81=E5=90=84=E5=9E=AE?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=89=A7=E8=A1=8C=E6=83=85=E5=86=B5=E5=92=8C?= =?UTF-8?q?=E6=98=8E=E7=BB=86=E3=80=81=E4=BA=BA=E5=91=98=E5=8F=8A=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E4=BB=BB=E5=8A=A1=E6=98=8E=E7=BB=86=E3=80=81=E5=88=92?= =?UTF-8?q?=E7=BA=BF=E5=8F=8A=E5=88=87=E5=89=B2=E8=AE=BE=E5=A4=87=E5=8F=8A?= =?UTF-8?q?=E5=AF=B9=E5=BA=94=E4=BB=BB=E5=8A=A1=E6=83=85=E5=86=B5=E3=80=81?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E8=B7=9F=E8=B8=AA=E7=94=98=E7=89=B9=E5=9B=BE?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/jhgk/DmXbjhController.java | 6 - .../controller/kban/KbanController.java | 101 ++++++++++++++- .../com/dsic/gj_erp/mapper/KbanMapper.java | 28 +++++ .../gj_erp/pc/service/三月滚动接口.java | 7 ++ .../com/dsic/gj_erp/service/KbanService.java | 117 ++++++++++++++++++ .../dsic/gj_erp/service/zyjh/ZyjhService.java | 1 - .../resources/mappers/jhgk/DmYdjhMapper.xml | 2 +- .../resources/mappers/kban/KbanMapper.xml | 60 +++++++++ 8 files changed, 311 insertions(+), 11 deletions(-) create mode 100644 src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java create mode 100644 src/main/java/com/dsic/gj_erp/service/KbanService.java create mode 100644 src/main/resources/mappers/kban/KbanMapper.xml diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmXbjhController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmXbjhController.java index 9ba2a18..e7fdf05 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmXbjhController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmXbjhController.java @@ -1,9 +1,6 @@ package com.dsic.gj_erp.controller.jhgk; -import cn.hutool.core.io.FileUtil; -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jhgk.DmXbjh; @@ -14,10 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import java.io.File; import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; 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 90addc6..417fe81 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 @@ -1,8 +1,16 @@ package com.dsic.gj_erp.controller.kban; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jcsj.DmBzry; +import com.dsic.gj_erp.bean.jhgk.DmYdjh; +import com.dsic.gj_erp.exception.ServiceException; +import com.dsic.gj_erp.pc.Constant; +import com.dsic.gj_erp.service.KbanService; import com.dsic.gj_erp.service.jcsj.DmBzryService; import com.dsic.gj_erp.service.zyjh.ZyjhService; import lombok.AllArgsConstructor; @@ -10,9 +18,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; + @RestController @RequestMapping("kban") @@ -21,6 +28,94 @@ public class KbanController { private final ZyjhService zyjhService; private final DmBzryService cqService; + private final KbanService kbanService; + + /** + * 看板线表计划相关数据 + */ + @GetMapping("xbjh") + public ResultBean kban(String nf){ + if (ObjUtil.isEmpty(nf)){ + throw new ServiceException(10001,"年份不能为空"); + } + + List xbjh=kbanService.getEveryMonXbzlByNf(nf); + List> comp = kbanService.getEveryCompZlByNf(nf); + + HashMap map = new HashMap<>(); + map.put("xbjh", xbjh); + map.put("comp", comp); + return new ResultBean<>(map); + } + + /** + * 计划跟踪 + */ + @GetMapping("getJhgz") + public ResultBean getJhgz(){ + return new ResultBean<>(kbanService.getJhgz()); + } + + /** + * 按照设备编号查询作业计划 + */ + @GetMapping("getZyjhDetailBySbCode") + public ResultBean getZyjhDetailBySbCode(String code){ + if (ObjUtil.isEmpty(code)){ + throw new ServiceException(10001,"设备编号不能为空"); + } + return new ResultBean<>(kbanService.getZyjhDetailBySbCode(code)); + } + + /** + * 统计划线、切割设备本人计划及作业成功 + */ + @GetMapping("getSb") + public ResultBean getSb(){ + List> sb = kbanService.getSb(); + return new ResultBean<>(sb); + } + + /** + * 按照人员工号查询当月所有参与的任务 + */ + @GetMapping("getZjjhByUserCode") + public ResultBean getZjjhByUserCode(String userCode){ + if (ObjUtil.isEmpty(userCode)){ + throw new ServiceException(10001,"用户不能为空"); + } + return new ResultBean<>(kbanService.getZjjhByUserCode(userCode)); + } + + /** + * 按照跨位查询作业计划明细 + */ + @GetMapping("getKwDetailByKw") + public ResultBean getEveryKw(String kw){ + if (ObjUtil.isEmpty(kw)){ + throw new ServiceException(10001,"垮位不能为空"); + } + + QueryWrapper wrapper = new QueryWrapper<>(); + if ("1".equals(kw)){ + wrapper.lambda().ge(DmYdjh::getZt, 11); + } + + if (Arrays.asList("2","3","4").contains(kw)){ + wrapper.eq("SUBSTRING(tzbh,6,1)", kw); + wrapper.ge("zt", "42"); + } + return new ResultBean<>(zyjhService.list(wrapper)); + } + + /** + * 本月各跨位情况 + */ + @GetMapping("getEveryKw") + public ResultBean getEveryKw(){ + Map map = kbanService.getEveryKw(); + return new ResultBean<>(map); + } /** * 在建船只,各船只进度 diff --git a/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java b/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java new file mode 100644 index 0000000..15d61f6 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/KbanMapper.java @@ -0,0 +1,28 @@ +package com.dsic.gj_erp.mapper; + +import com.dsic.gj_erp.bean.jhgk.DmYdjh; +import com.dsic.gj_erp.pc.Constant; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +@Mapper +public interface KbanMapper { + + //线表重量 + List getEveryMonXbzlByNf(String nf); + + //作业计划完成重量 + List> getEveryCompZlByNf(String from, String to); + + List> getEveryKw(String from, String to); + + List getZjjhByUserCode(String userCode,String from, String to); + + List> getSb(String day); + + List getZyjhDetailBySbCode(String code); + + List> getJhgz(String from, String to); +} diff --git a/src/main/java/com/dsic/gj_erp/pc/service/三月滚动接口.java b/src/main/java/com/dsic/gj_erp/pc/service/三月滚动接口.java index 022fc72..b808d67 100644 --- a/src/main/java/com/dsic/gj_erp/pc/service/三月滚动接口.java +++ b/src/main/java/com/dsic/gj_erp/pc/service/三月滚动接口.java @@ -13,6 +13,7 @@ import com.dsic.gj_erp.bean.jhgk.DmSygdMx; import com.dsic.gj_erp.bean.jhgk.DmSygdMxLj; import com.dsic.gj_erp.bean.jhgk.DmYdjhxf; import com.dsic.gj_erp.mapper.jhgk.DmSygdxqMapper; +import com.dsic.gj_erp.pc.Constant; import com.dsic.gj_erp.pc.Manager; import com.dsic.gj_erp.service.jcsj.DmBchxylpService; import com.dsic.gj_erp.service.jhgk.DmSygdMxLjService; @@ -71,6 +72,12 @@ public class 三月滚动接口 { if (ObjectUtil.isNotEmpty(dmSygdMxes)){ for (DmSygdMx mx:dmSygdMxes){ mx.更新排产信息(_工序产能.get工序(),_资源.getDate()); + if (_工序产能.get工序()== Constant.工序.划线){ + mx.setHxsb(_设备.get设备编号()); + } + if (_工序产能.get工序()== Constant.工序.切割){ + mx.setQgsb(_设备.get设备编号()); + } } } }); diff --git a/src/main/java/com/dsic/gj_erp/service/KbanService.java b/src/main/java/com/dsic/gj_erp/service/KbanService.java new file mode 100644 index 0000000..83b234c --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/KbanService.java @@ -0,0 +1,117 @@ +package com.dsic.gj_erp.service; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dsic.gj_erp.bean.jhgk.DmYdjh; +import com.dsic.gj_erp.mapper.KbanMapper; +import com.dsic.gj_erp.pc.Constant; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.concurrent.atomic.AtomicInteger; + +@Service +@AllArgsConstructor +public class KbanService { + + private final KbanMapper kbanMapper; + + public List> getJhgz(){ + DateTime date = DateUtil.date(); + String from = DateUtil.beginOfMonth(date).toString("yyyy/MM/dd"); + String to = DateUtil.endOfMonth(date).toString("yyyy/MM/dd"); + return kbanMapper.getJhgz(from,to); + } + + public List getZyjhDetailBySbCode(String code){ + return kbanMapper.getZyjhDetailBySbCode(code); + } + + public List> getSb(){ + DateTime date = DateUtil.date(); + return kbanMapper.getSb(date.toString("yyyy/MM/dd")); + } + + + public List getZjjhByUserCode(String userCode){ + DateTime date = DateUtil.date(); + String from = DateUtil.beginOfMonth(date).toString("yyyy/MM/dd"); + String to = DateUtil.endOfMonth(date).toString("yyyy/MM/dd"); + return kbanMapper.getZjjhByUserCode(userCode,from,to); + } + + /** + * 各垮任务情况 + * 派工,报工,未处理 + */ + public Map getEveryKw(){ + Map map = new HashMap<>(); + DateTime date = DateUtil.date(); + String from = DateUtil.beginOfMonth(date).toString("yyyy/MM/dd"); + String to = DateUtil.endOfMonth(date).toString("yyyy/MM/dd"); + List> everyKw = kbanMapper.getEveryKw(from, to); + AtomicInteger sl=new AtomicInteger(0); + AtomicInteger slc=new AtomicInteger(0); + AtomicInteger kw2=new AtomicInteger(0); + AtomicInteger kw2c=new AtomicInteger(0); + AtomicInteger kw3=new AtomicInteger(0); + AtomicInteger kw3c=new AtomicInteger(0); + AtomicInteger kw4=new AtomicInteger(0); + AtomicInteger kw4c=new AtomicInteger(0); + everyKw.forEach(item->{ + int kw = Integer.parseInt(item.get("kw")); + int zt = Integer.parseInt(item.get("zt")); + if (zt>=11){ + sl.incrementAndGet(); + } + if (zt>=42){ + slc.incrementAndGet(); + } + if (kw==2){ + if (zt>=42){ + kw2.incrementAndGet(); + } + if (zt==52||zt==62){ + kw2c.incrementAndGet(); + } + } + if (kw==3){ + if (zt>=42){ + kw3.incrementAndGet(); + } + if (zt==52||zt==62){ + kw3c.incrementAndGet(); + } + } + if (kw==4){ + if (zt>=42){ + kw4.incrementAndGet(); + } + if (zt==52||zt==62){ + kw4c.incrementAndGet(); + } + } + }); + List zsl = Arrays.asList(sl.get(),kw2.get(),kw3.get(),kw4.get()); + List kwc = Arrays.asList(slc.get(),kw2c.get(),kw3c.get(),kw4c.get()); + List wcl = Arrays.asList(sl.get()-slc.get(),kw2.get()-kw2c.get(),kw3.get()-kw3c.get(),kw4.get()-kw4c.get()); + map.put("zsl",zsl);//总数量 + map.put("kwc",kwc);//完成数量 + map.put("wcl",wcl);//未处理 + return map; + } + + public List getEveryMonXbzlByNf(String nf) { + return kbanMapper.getEveryMonXbzlByNf(nf); + } + + public List> getEveryCompZlByNf(String nf) { + DateTime from = DateUtil.beginOfYear(DateUtil.parse(nf, "yyyy")); + DateTime to = DateUtil.endOfYear(DateUtil.parse(nf, "yyyy")); + return kbanMapper.getEveryCompZlByNf(from.toString("yyyy/MM/dd"), to.toString("yyyy/MM/dd")); + } + +} diff --git a/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java b/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java index 30d6e39..64df81d 100644 --- a/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java +++ b/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java @@ -29,7 +29,6 @@ public class ZyjhService extends ServiceImpl { private final DmCbxxpService dmCbxxpService; private final RedisTemplate redisTemplate; - public List> gcjd(){ ImmutableMap map = ImmutableMap.of("flag", true); List list = dmCbxxpService.getList(map); diff --git a/src/main/resources/mappers/jhgk/DmYdjhMapper.xml b/src/main/resources/mappers/jhgk/DmYdjhMapper.xml index 3b845b7..4e3bcf1 100644 --- a/src/main/resources/mappers/jhgk/DmYdjhMapper.xml +++ b/src/main/resources/mappers/jhgk/DmYdjhMapper.xml @@ -94,7 +94,7 @@ DISTINCT zt, sum(isnull(bcshzl,0)/1000) over(PARTITION by zt) as t from dm_ydjh - WHERE jssj BETWEEN #{from} and #{to} + WHERE jssj BETWEEN #{from} and #{to} and zt>='2' + select sum(zl) from dm_xbjh where nf=#{nf} group by yf + + + + + + + + + + + + + +