From 97db3adac67eefabd084bfefc3f1e8f4a324c175 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, 14 Apr 2026 14:01:03 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=AD=A3bom=E7=94=9F=E6=88=90?= =?UTF-8?q?=E9=9B=B6=E4=BB=B6=E6=95=B0=E9=87=8F=E6=97=B6=E5=8F=96=E5=80=BC?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/dsic/gj_erp/bean/jhgk/DmYdjh.java | 7 --- .../dsic/gj_erp/service/zyjh/ZyjhService.java | 56 ++++++++++++++++--- 2 files changed, 47 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java index 8c33675..ca369cc 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java +++ b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java @@ -494,13 +494,6 @@ public class DmYdjh implements Serializable { } } - public static void main(String[] args) { - DmYdjh dmYdjh = new DmYdjh(); - dmYdjh.setZt("21"); - dmYdjh.setForPwpg(); - System.out.println(dmYdjh); - } - public void setZtForPwfk(){ this.zt=ZyjhzxEnum.PWFK.code; } 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 a1b376a..9dedc92 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 @@ -33,6 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import java.io.File; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.stream.Collectors; @Service @@ -160,6 +161,12 @@ public class ZyjhService extends ServiceImpl { if (_strArr.length>8){ _lj.setTz(_strArr[7]); _lj.setLx(_strArr[8]); + String sl0=_strArr[4]; + String sl1=_strArr[5]; + String sl2=_strArr[6]; + //用于修正bom生成零件数量时取值错误 + _lj.setSl(0d); + this.ofStr(sl0,sl1,sl2).ifPresent(_lj::setSl); } if (_strArr.length>9){ _lj.setXj(_strArr[9]); @@ -174,26 +181,21 @@ public class ZyjhService extends ServiceImpl { } }); - //如果零件已报工,不可以删除,取消整图删除零件,改为修正 + //修正已报工零件 List list = ljService.list(Wrappers.lambdaQuery() .eq(DmYdjhLj::getCzbh, dcCh) .eq(DmYdjhLj::getPl, dcPl) .eq(DmYdjhLj::getTlth, tzbh) ); if (!list.isEmpty()){ - list.forEach(item->{ - //清理错误数据 - if (StrUtil.isEmpty(item.getLjbh())){ - ljService.removeById(item); - return; - } + list.forEach(item-> ljInfo.forEach(lj->{ if (lj.tmpEq(item)){ //修正零件状态信息 lj.updateZtWithDb(item); } - }); - }); + }) + ); ljService.saveOrUpdateBatch(ljInfo); }else{ ljService.remove(Wrappers.lambdaQuery() @@ -374,4 +376,40 @@ public class ZyjhService extends ServiceImpl { return redisTemplate.opsForValue().get(KEY); } } + + private Optional ofStr(String str0,String str1,String str2){ + if (StrUtil.isNotEmpty(str0)){ + try { + double v = Double.parseDouble(str0); + if (v>0){ + return Optional.of(v); + } + }catch (Exception e){ + e.printStackTrace(); + } + } + + if (StrUtil.isNotEmpty(str1)){ + try { + double v = Double.parseDouble(str1); + if (v>0){ + return Optional.of(v); + } + }catch (Exception e){ + e.printStackTrace(); + } + } + + if (StrUtil.isNotEmpty(str2)){ + try { + double v = Double.parseDouble(str2); + if (v>0){ + return Optional.of(v); + } + }catch (Exception e){ + e.printStackTrace(); + } + } + return Optional.empty(); + } }