From 98eacfc0146b373463ecf19451ae31f11371406e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com> Date: Fri, 11 Jul 2025 10:48:09 +0800 Subject: [PATCH 1/5] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E4=BD=9C=E5=BA=9F=E5=8A=9F=E8=83=BD,?= =?UTF-8?q?=E7=94=A8=E4=BA=8E=E4=BF=AE=E6=AD=A3=E7=94=B1=E4=BA=8E=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E6=95=B0=E6=8D=AE=E9=94=99=E8=AF=AF=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E4=B8=8A=E6=96=99=E7=9A=84=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E8=AE=A1=E5=88=92=E4=B8=BA=E4=BD=9C=E5=BA=9F?= =?UTF-8?q?=E7=8A=B6=E6=80=81=202.=E4=BF=AE=E5=A4=8D=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E6=9F=A5=E8=AF=A2=E7=9B=B8=E5=85=B3=E4=BD=9C?= =?UTF-8?q?=E5=BA=9F=E7=8A=B6=E6=80=81=E6=9F=A5=E8=AF=A2=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/dsic/gj_erp/controller/jhgk/DmYdjhController.java | 2 +- .../gj_erp/controller/txzz/jhgl/DmMateriaController.java | 3 ++- .../gj_erp/controller/txzz/jhgl/TpbhPlanController.java | 7 ++++--- src/main/resources/mappers/jhgk/DmYdjhMapper.xml | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java index 7e1fcb1..83d1263 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java @@ -96,7 +96,7 @@ public class DmYdjhController { .eq(StrUtil.isNotEmpty(map.get("dcch")),"dc_ch",map.get("dcch")) .eq(StrUtil.isNotEmpty(map.get("dcpl")),"dc_pl",map.get("dcpl")) .eq("lx","B") - .ne("zt","-1") + .ne("zt","-1").ne("zt","99") // .and(wp->wp.ne("zt", "-1").or().ne("zt","99")) .orderByAsc("jssj,dc_ch,dc_pl,zl,lqlb") diff --git a/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/DmMateriaController.java b/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/DmMateriaController.java index a7a1a01..94c99d3 100644 --- a/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/DmMateriaController.java +++ b/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/DmMateriaController.java @@ -4,6 +4,7 @@ package com.dsic.gj_erp.controller.txzz.jhgl; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.dsic.gj_erp.annotation.AuthFunction; import com.dsic.gj_erp.annotation.Authorization; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.sy.SyDictItem; @@ -145,7 +146,7 @@ public class DmMateriaController { */ @ApiOperation("物品添加") @PostMapping("/add") - @Authorization + @AuthFunction public ResultBean addMateria(@RequestBody DmMateria[] dmMaterias,HttpServletRequest req){ return this.dmMateriaService.addMateria(dmMaterias,req); } diff --git a/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/TpbhPlanController.java b/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/TpbhPlanController.java index 37a63fb..1160049 100644 --- a/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/TpbhPlanController.java +++ b/src/main/java/com/dsic/gj_erp/controller/txzz/jhgl/TpbhPlanController.java @@ -2,6 +2,7 @@ package com.dsic.gj_erp.controller.txzz.jhgl; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dsic.gj_erp.annotation.AuthFunction; import com.dsic.gj_erp.annotation.Authorization; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.txzz.jhgl.TpbhPlan; @@ -55,7 +56,7 @@ public class TpbhPlanController { @ApiOperation("托盘需求计划提交") @PostMapping("submit") - @Authorization + @AuthFunction public ResultBean submit(@RequestBody List list, HttpServletRequest request){ String userName=(String) request.getAttribute("username"); String userCode=(String) request.getAttribute("yhdm"); @@ -82,7 +83,7 @@ public class TpbhPlanController { * 审核 */ @PostMapping("sh") - @Authorization + @AuthFunction public ResultBean sh(@RequestBody List list,HttpServletRequest request){ String userName=(String) request.getAttribute("username"); String userCode=(String) request.getAttribute("yhdm"); @@ -100,7 +101,7 @@ public class TpbhPlanController { * 审批 */ @PostMapping("sp") - @Authorization + @AuthFunction public ResultBean sp(@RequestBody List list,HttpServletRequest request){ String userName=(String) request.getAttribute("username"); String userCode=(String) request.getAttribute("yhdm"); diff --git a/src/main/resources/mappers/jhgk/DmYdjhMapper.xml b/src/main/resources/mappers/jhgk/DmYdjhMapper.xml index f5af4e6..7e952c3 100644 --- a/src/main/resources/mappers/jhgk/DmYdjhMapper.xml +++ b/src/main/resources/mappers/jhgk/DmYdjhMapper.xml @@ -1002,7 +1002,7 @@ where dc_ch=#{dcch} and dc_pl =#{dcpl} THEN 1 ELSE 0 END) AS qg_count4kw FROM dm_ydjh - where 1=1 AND lx='B' and ( isnull(dm_ydjh.zt,'') != '-1' or isnull(dm_ydjh.zt,'') !='99' ) + where 1=1 AND lx='B' and ( isnull(dm_ydjh.zt,'') != '-1' and isnull(dm_ydjh.zt,'') !='99' ) and dm_ydjh.kw!='17' and dm_ydjh.dc_ch=#{dcCh} From 0eb62da6f87d90a824b17bca3c35951b3579ee7c 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, 22 Jul 2025 10:57:37 +0800 Subject: [PATCH 2/5] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E7=BB=93=E5=AD=98?= =?UTF-8?q?=E8=A1=A8=E7=9B=B8=E5=85=B3=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/dsic/gj_erp/bean/zyjh/DmYlInfo.java | 5 ++ .../com/dsic/gj_erp/bean/zyjh/DmYlJc.java | 45 ++++++++++ .../gj_erp/controller/zyjh/YlController.java | 60 ++++++++++++-- .../dsic/gj_erp/mapper/zyjh/DmYljcMapper.java | 16 ++++ .../gj_erp/service/zyjh/DmYljcService.java | 83 +++++++++++++++++++ 5 files changed, 201 insertions(+), 8 deletions(-) create mode 100644 src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlJc.java create mode 100644 src/main/java/com/dsic/gj_erp/mapper/zyjh/DmYljcMapper.java create mode 100644 src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java diff --git a/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java b/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java index e3662e9..78ba86b 100644 --- a/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java +++ b/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java @@ -74,6 +74,11 @@ public class DmYlInfo { return StrUtil.isNotEmpty(this.余料编号) && this.余料编号.equals(余料编号); } + + public String 获取帐期(){ + return DateUtil.parse(this.入库日期).toString("yyyy/MM"); + } + public boolean 上料匹配(DmYdjh ydjh){ if (使用状态>0){ return false; diff --git a/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlJc.java b/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlJc.java new file mode 100644 index 0000000..5834ef6 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlJc.java @@ -0,0 +1,45 @@ +package com.dsic.gj_erp.bean.zyjh; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Getter; +import lombok.Setter; + +import java.math.BigDecimal; + +/** + * 余料结存表 + */ +@Getter +@Setter +@TableName("dm_yljc") +public class DmYlJc { + + @TableId(type= IdType.INPUT) + private String zq; + + private BigDecimal outWeight; + + private BigDecimal outNum; + + private BigDecimal inWeight; + + private BigDecimal inNum; + + public static DmYlJc ofIn(DmYlInfo ylInfo){ + DmYlJc dmYlJc = new DmYlJc(); + dmYlJc.setZq(ylInfo.获取帐期()); + dmYlJc.setInNum(new BigDecimal(1)); + dmYlJc.setInWeight(new BigDecimal(ylInfo.get重量())); + return dmYlJc; + } + + public static DmYlJc ofOut(DmYlInfo ylInfo){ + DmYlJc dmYlJc = new DmYlJc(); + dmYlJc.setZq(ylInfo.获取帐期()); + dmYlJc.setInNum(new BigDecimal(1)); + dmYlJc.setInWeight(new BigDecimal(ylInfo.get重量())); + return dmYlJc; + } +} diff --git a/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java b/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java index e40ede0..4a48189 100644 --- a/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java +++ b/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java @@ -5,16 +5,17 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.dsic.gj_erp.annotation.AuthFunction; -import com.dsic.gj_erp.annotation.Authorization; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jhgk.DmYdjh; import com.dsic.gj_erp.bean.zyjh.DmYlInOut; import com.dsic.gj_erp.bean.zyjh.DmYlInfo; +import com.dsic.gj_erp.bean.zyjh.DmYlJc; import com.dsic.gj_erp.controller.zyjh.dto.YlSlDto; import com.dsic.gj_erp.exception.ServiceException; import com.dsic.gj_erp.service.jhgk.DmYdjhService; import com.dsic.gj_erp.service.zyjh.DmYlInOutService; import com.dsic.gj_erp.service.zyjh.DmYlInfoService; +import com.dsic.gj_erp.service.zyjh.DmYljcService; import lombok.AllArgsConstructor; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -35,8 +36,10 @@ public class YlController { private final DmYlInfoService ylInfoService; private final DmYdjhService ydjhService; private final DmYlInOutService dmYlInOutService; + private final DmYljcService dmYljcService; @PostMapping("list") + @SuppressWarnings("unchecked") public ResultBean list(@RequestBody YlSlDto dto){ return new ResultBean<>( ylInfoService.list(Wrappers.lambdaQuery() @@ -57,17 +60,30 @@ public class YlController { @AuthFunction @PostMapping("rk") @Transactional(rollbackFor = Exception.class) - public ResultBean rk(@RequestBody List list, HttpServletRequest request){ + public ResultBean rk(@RequestBody List list, HttpServletRequest request) throws InterruptedException { String userCode=(String) request.getAttribute("yhdm"); String 编制日期=DateUtil.date().toString("yyyy/MM/dd"); + List ylInOutList=new ArrayList<>(); + List jcList=new ArrayList<>(); + List updateList=list.stream().map(item->{ + //入库流水 DmYlInOut dmYlInOut = DmYlInOut.入库流水(item,userCode); ylInOutList.add(dmYlInOut); + + //结存 + DmYlJc jc=DmYlJc.ofIn(item); + jcList.add(jc); + + //余料入库修正入库标识等信息 return DmYlInfo.入库(item,userCode,编制日期); }).collect(Collectors.toList()); - ylInfoService.updateBatchById(updateList); - dmYlInOutService.saveBatch(ylInOutList); + + ylInfoService.updateBatchById(updateList);//修正入库数据状态 + dmYlInOutService.saveBatch(ylInOutList);//记录入库流水 + dmYljcService.saveIn(jcList);//记录结存 + return new ResultBean<>(); } @@ -93,7 +109,11 @@ public class YlController { */ @PostMapping("rollback") @Transactional(rollbackFor = Exception.class) - public ResultBean rollback(@RequestBody List list){ + public ResultBean rollback(@RequestBody List list) throws InterruptedException { + ArrayList 出库流水数据 = new ArrayList<>();//待删除的出库流水 + List jcList=new ArrayList<>();//结存数据 + + list.stream() .filter(item->item.get使用状态()<=2) .forEach(item->{ @@ -115,8 +135,23 @@ public class YlController { } //退回余料库存信息 item.修正退回信息(); + + List inOutList = dmYlInOutService.list(Wrappers.lambdaQuery() + .eq(DmYlInOut::get来源船号, item.get来源船号()) + .eq(DmYlInOut::get来源图纸, item.get来源图纸()) + .eq(DmYlInOut::get余料编号, item.get余料编号()) + ); + 出库流水数据.addAll(inOutList); + + //结存数据 + DmYlJc jc = DmYlJc.ofIn(item); + jcList.add(jc); }); + ylInfoService.updateBatchById(list); + dmYlInOutService.removeByIds(出库流水数据.stream().map(DmYlInOut::getId).collect(Collectors.toList())); + dmYljcService.saveOut(jcList); + return new ResultBean<>(); } @@ -126,12 +161,14 @@ public class YlController { @AuthFunction @PostMapping("print") @Transactional(rollbackFor = Exception.class) - public ResultBean print(@RequestBody List list,HttpServletRequest request){ + public ResultBean print(@RequestBody List list,HttpServletRequest request) throws InterruptedException { String userCode=(String) request.getAttribute("yhdm"); String 出库日期=DateUtil.date().toString("yyyy/MM/dd"); ArrayList updateList = new ArrayList<>(); ArrayList 出库流水数据 = new ArrayList<>(); + List jcList=new ArrayList<>();//结存数据 + list.forEach(item->{ if (StrUtil.isAllNotEmpty(item.get使用船号(),item.get使用图纸())){ String date = DateUtil.date().toString("yyyy/MM/dd"); @@ -146,6 +183,8 @@ public class YlController { String str=StrUtil.format("使用船号:{},使用图号{}错误,请核对修正后再打印", item.get使用船号(), item.get使用图纸()); throw new ServiceException(99999,str); } + + //作业计划修正使用余料属性状态 List collect = ydjhList.stream().map(it -> { //防止手动编辑错误时的校验 if (it.图纸已使用()){ @@ -160,12 +199,17 @@ public class YlController { DmYlInOut 出库流水 = DmYlInOut.出库流水(item, userCode, 出库日期); 出库流水数据.add(出库流水); + + //结存数据 + DmYlJc jc=DmYlJc.ofOut(item); + jcList.add(jc); } }); - ydjhService.updateBatchById(updateList); - ylInfoService.updateBatchById(list); + ydjhService.updateBatchById(updateList);//修正作业计划使用余料信息 + ylInfoService.updateBatchById(list);//修正出库数据状态 dmYlInOutService.saveBatch(出库流水数据); + dmYljcService.saveOut(jcList);//修正结存出库数据状态 return new ResultBean<>(); } diff --git a/src/main/java/com/dsic/gj_erp/mapper/zyjh/DmYljcMapper.java b/src/main/java/com/dsic/gj_erp/mapper/zyjh/DmYljcMapper.java new file mode 100644 index 0000000..5c47d4a --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/zyjh/DmYljcMapper.java @@ -0,0 +1,16 @@ +package com.dsic.gj_erp.mapper.zyjh; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsic.gj_erp.bean.zyjh.DmYlJc; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Update; + +@Mapper +public interface DmYljcMapper extends BaseMapper { + + @Update("update set in_weight=in_weight+#{inWeight} ,in_num=in_num+#{inNum} where zq=#{zq}") + void updateIn(DmYlJc dmYlJc); + + @Update("update set out_weight=out_weight+#{outWeight} ,out_num=out_num+#{outNum} where zq=#{zq}") + void updateOut(DmYlJc dmYlJc); +} diff --git a/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java b/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java new file mode 100644 index 0000000..3ea6030 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java @@ -0,0 +1,83 @@ +package com.dsic.gj_erp.service.zyjh; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsic.gj_erp.bean.zyjh.DmYlJc; +import com.dsic.gj_erp.exception.ServiceException; +import com.dsic.gj_erp.mapper.zyjh.DmYljcMapper; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.concurrent.Semaphore; + +@Slf4j +@Service +@RequiredArgsConstructor +public class DmYljcService extends ServiceImpl { + + private final RedisTemplate redisTemplate; + + private static final String YLJC_KEY="YLJC"; + + private static final Semaphore semaphore = new Semaphore(1); + + @Transactional(rollbackFor = Exception.class) + public void saveIn(List list) throws InterruptedException { + semaphore.acquire(); + try { + for (DmYlJc item : list) { + //使用redis加速 + Boolean flag = redisTemplate.opsForHash().hasKey(YLJC_KEY, item.getZq()); + if (flag){ + baseMapper.updateIn(item); + continue; + } + insert(item); + } + }catch (Exception e){ + semaphore.release(); + log.error("结存表处理失败: ", e); + throw new ServiceException(11001,"结存表处理失败"); + } + } + + @Transactional(rollbackFor = Exception.class) + public void saveOut(List list) throws InterruptedException { + semaphore.acquire(); + try { + for (DmYlJc item : list) { + //使用redis加速 + Boolean flag = redisTemplate.opsForHash().hasKey(YLJC_KEY, item.getZq()); + if (flag){ + baseMapper.updateOut(item); + continue; + } + insert(item); + } + }catch (Exception e){ + semaphore.release(); + log.error("结存表处理失败: ", e); + throw new ServiceException(11001,"结存表处理失败"); + } + } + + public void insert(DmYlJc item){ + try { + redisTemplate.opsForHash().put(YLJC_KEY,item.getZq(),1); + baseMapper.insert(item); + }catch (Exception e){ + log.error("初始化结存表失败: ", e); + + try { + redisTemplate.opsForHash().delete(YLJC_KEY,item.getZq()); + }catch (Exception e1){ + log.error("初始化结存表失败: ", e1); + } + + throw new ServiceException(11000,"初始化结存表失败"); + } + } +} From e50e4e399ea9291af6a5f3272efdeb355d5b508a 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, 22 Jul 2025 11:03:19 +0800 Subject: [PATCH 3/5] =?UTF-8?q?1.=E4=BF=AE=E6=AD=A3=E4=BF=A1=E5=8F=B7?= =?UTF-8?q?=E9=87=8F=E9=87=8A=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dsic/gj_erp/service/zyjh/DmYljcService.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java b/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java index 3ea6030..2392648 100644 --- a/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java +++ b/src/main/java/com/dsic/gj_erp/service/zyjh/DmYljcService.java @@ -20,6 +20,7 @@ public class DmYljcService extends ServiceImpl { private final RedisTemplate redisTemplate; + //结存redis key private static final String YLJC_KEY="YLJC"; private static final Semaphore semaphore = new Semaphore(1); @@ -37,10 +38,8 @@ public class DmYljcService extends ServiceImpl { } insert(item); } - }catch (Exception e){ + }finally { semaphore.release(); - log.error("结存表处理失败: ", e); - throw new ServiceException(11001,"结存表处理失败"); } } @@ -57,10 +56,8 @@ public class DmYljcService extends ServiceImpl { } insert(item); } - }catch (Exception e){ + }finally { semaphore.release(); - log.error("结存表处理失败: ", e); - throw new ServiceException(11001,"结存表处理失败"); } } From 73fddbec371a2307b7bdafde820cc280bde96483 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com> Date: Wed, 23 Jul 2025 16:40:20 +0800 Subject: [PATCH 4/5] =?UTF-8?q?1.=E6=9A=82=E5=81=9C=E4=BD=99=E6=96=99?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java | 12 +++++++++--- .../dsic/gj_erp/controller/zyjh/YlController.java | 7 ++++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java b/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java index 78ba86b..d257815 100644 --- a/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java +++ b/src/main/java/com/dsic/gj_erp/bean/zyjh/DmYlInfo.java @@ -70,6 +70,10 @@ public class DmYlInfo { private Integer 使用状态;//0:未入库;1:未使用;2:已匹配;3:已打印;4:已切割 + public boolean 是否已匹配(){ + return this.使用状态==UseStatus.已匹配.ordinal(); + } + public boolean 指定余料编号的上料匹配(String 余料编号){ return StrUtil.isNotEmpty(this.余料编号) && this.余料编号.equals(余料编号); } @@ -80,7 +84,7 @@ public class DmYlInfo { } public boolean 上料匹配(DmYdjh ydjh){ - if (使用状态>0){ + if (使用状态>UseStatus.未使用.ordinal()){ return false; } if (ydjh.getWpxh()==null||ydjh.getWpgg()==null){ @@ -171,11 +175,13 @@ public class DmYlInfo { dmYlInfo.物品型号=bchxylp.getWpxh(); dmYlInfo.物品规格=ydjh.getWpgg(); dmYlInfo.切割日期= DateUtil.date().toString("yyyy/MM/dd"); - dmYlInfo.使用状态=UseStatus.未入库.ordinal(); + dmYlInfo.使用状态=UseStatus.未使用.ordinal(); return dmYlInfo; } public enum UseStatus{ - 未入库,未使用,已匹配,已打印,已切割 + //暂时取消库存管理 + //未入库, + 未使用,已匹配,已打印,已切割 } } diff --git a/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java b/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java index 4a48189..5e2141f 100644 --- a/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java +++ b/src/main/java/com/dsic/gj_erp/controller/zyjh/YlController.java @@ -43,11 +43,12 @@ public class YlController { public ResultBean list(@RequestBody YlSlDto dto){ return new ResultBean<>( ylInfoService.list(Wrappers.lambdaQuery() + .eq(ObjectUtil.isNotEmpty(dto.getStatus()),DmYlInfo::get使用状态,dto.getStatus()) .eq(DmYlInfo::get来源船号,dto.getDcCh()) - .eq(DmYlInfo::get使用状态,dto.getStatus()) .eq(StrUtil.isNotEmpty(dto.getDcPl()),DmYlInfo::get来源批量,dto.getDcPl()) .eq(StrUtil.isNotEmpty(dto.getTzbh()),DmYlInfo::get来源图纸,dto.getTzbh()) - .like(dto.isGd()&&dto.getStatus()==2,DmYlInfo::get使用图纸,"N8GX") + //用于光电查询 + .like(dto.isGd(),DmYlInfo::get使用图纸,"N8GX") //查询结果使用最小匹配原则为按规格匹配上料提供匹配顺序 .orderByAsc(DmYlInfo::get板宽,DmYlInfo::get板长) ) @@ -170,7 +171,7 @@ public class YlController { List jcList=new ArrayList<>();//结存数据 list.forEach(item->{ - if (StrUtil.isAllNotEmpty(item.get使用船号(),item.get使用图纸())){ + if (StrUtil.isAllNotEmpty(item.get使用船号(),item.get使用图纸())&&item.是否已匹配()){ String date = DateUtil.date().toString("yyyy/MM/dd"); item.set使用日期(date); item.set使用状态(DmYlInfo.UseStatus.已打印.ordinal());//已打印 From 729d89d81b1bca5541fcc0413bebf5c594c4eaee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com> Date: Wed, 30 Jul 2025 16:04:48 +0800 Subject: [PATCH 5/5] =?UTF-8?q?1.=E5=AE=8C=E5=96=84=E5=9F=BA=E7=A1=80?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=BD=AC=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/dsic/gj_erp/controller/ApiController.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/controller/ApiController.java b/src/main/java/com/dsic/gj_erp/controller/ApiController.java index f931326..e146f1a 100644 --- a/src/main/java/com/dsic/gj_erp/controller/ApiController.java +++ b/src/main/java/com/dsic/gj_erp/controller/ApiController.java @@ -11,10 +11,7 @@ import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.Map; @@ -31,6 +28,13 @@ public class ApiController { private SyuserMapper syuserMapper; @Autowired SYService syService; + + //为plm接口提供编号数据获取功能 + @GetMapping("f_getpjh") + public ResultBean f_getpjh(String zxt,String jg,String bmm){ + return new ResultBean<>(syService.f_getpjh(zxt, jg, bmm)); + } + @RequestMapping(value = "/login") public ResultBean login(@RequestBody @Validated LoginBean loginBean,HttpServletRequest request) throws Exception {