From 503bbee429d2c09a8b95f0bfaeb5ebb79e5cdd57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com> Date: Mon, 22 Jul 2024 14:34:24 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=9B=BE=E7=BA=B8=E6=B4=BE=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A3=80=E6=9F=A5=E5=8A=9F=E8=83=BD,?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E9=A2=86=E5=8F=96=E3=80=81=E5=A5=97=E6=96=99?= =?UTF-8?q?=E5=9B=BE=E5=A6=82=E6=9E=9C=E5=B7=B2=E7=BB=8F=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=8E=A5=E6=94=B6=E6=97=A5=E6=9C=9F=E5=8F=8A?= =?UTF-8?q?=E5=8F=8D=E9=A6=88=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/pgd/PgdTzjhController.java | 24 ++++++-- .../gj_erp/service/pgd/PgdTzjhService.java | 1 + .../service/pgd/impl/PgdTzjhServiceImpl.java | 61 +++++++++++++++++++ 3 files changed, 82 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java b/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java index 962348a..846dde9 100644 --- a/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java +++ b/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java @@ -1,15 +1,21 @@ package com.dsic.gj_erp.controller.pgd; +import cn.hutool.core.util.ObjUtil; 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.bean.ResultBean; +import com.dsic.gj_erp.bean.jcsj.DmBclqjbp; import com.dsic.gj_erp.bean.jcsj.DmCbxxp; import com.dsic.gj_erp.bean.jcsj.DmDwxxp; import com.dsic.gj_erp.bean.jcsj.EmSbjgry; +import com.dsic.gj_erp.bean.jhgk.DmTzjh; import com.dsic.gj_erp.bean.pgd.PgdTzjh; import com.dsic.gj_erp.exception.CustomException; +import com.dsic.gj_erp.service.jcsj.DmBclqjbpService; +import com.dsic.gj_erp.service.jcsj.DmBclqmxpService; import com.dsic.gj_erp.service.jcsj.DmCbxxpService; import com.dsic.gj_erp.service.jcsj.EmSbjgryService; import com.dsic.gj_erp.service.jcsj.impl.DmDwxxpService; @@ -19,9 +25,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; /** *

@@ -51,7 +56,18 @@ public class PgdTzjhController { @Autowired SYService syService; - + /** + * 检查板材领取表,套料图是否导入,如果已经导入更新图纸计划为已反馈 + * @param list + * @return + */ + @AuthFunction + @PostMapping("checkTz") + public ResultBean checkTz(@RequestBody List list,HttpServletRequest request){ + String username= (String) request.getAttribute("yhms"); + pgdTzjhService.updateForCheck(list,username); + return new ResultBean<>(); + } diff --git a/src/main/java/com/dsic/gj_erp/service/pgd/PgdTzjhService.java b/src/main/java/com/dsic/gj_erp/service/pgd/PgdTzjhService.java index 3f22ab2..ed0483d 100644 --- a/src/main/java/com/dsic/gj_erp/service/pgd/PgdTzjhService.java +++ b/src/main/java/com/dsic/gj_erp/service/pgd/PgdTzjhService.java @@ -19,4 +19,5 @@ public interface PgdTzjhService extends IService { void saveTzjhPgdXd(List tzjhs, HttpServletRequest request); void saveTzjhPgdFk(List tzjhs, HttpServletRequest request); void saveTzjhPgdXdBack(List tzjhs, HttpServletRequest request); + void updateForCheck(List list,String username); } diff --git a/src/main/java/com/dsic/gj_erp/service/pgd/impl/PgdTzjhServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/pgd/impl/PgdTzjhServiceImpl.java index f37597e..9a8c273 100644 --- a/src/main/java/com/dsic/gj_erp/service/pgd/impl/PgdTzjhServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/pgd/impl/PgdTzjhServiceImpl.java @@ -1,17 +1,27 @@ package com.dsic.gj_erp.service.pgd.impl; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjUtil; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.dsic.gj_erp.bean.jcsj.DmBchxjbp; +import com.dsic.gj_erp.bean.jcsj.DmBclqjbp; import com.dsic.gj_erp.bean.pgd.PgdTzjh; import com.dsic.gj_erp.mapper.pgd.PgdTzjhMapper; +import com.dsic.gj_erp.service.jcsj.DmBchxjbpService; +import com.dsic.gj_erp.service.jcsj.DmBclqjbpService; import com.dsic.gj_erp.service.pgd.PgdTzjhService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.AllArgsConstructor; import lombok.Data; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** *

@@ -22,8 +32,12 @@ import java.util.List; * @since 2023-11-13 */ @Service +@AllArgsConstructor public class PgdTzjhServiceImpl extends ServiceImpl implements PgdTzjhService { + private final DmBclqjbpService dmBclqjbpService; + private final DmBchxjbpService dmBchxjbpService; + @Transactional(rollbackFor = Exception.class) @Override @@ -71,4 +85,51 @@ public class PgdTzjhServiceImpl extends ServiceImpl impl }); this.updateBatchById(ups); } + + /** + * 根据板材领取表和板材套料图,检查并更新图纸计划派工单完成情况 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void updateForCheck(List list,String username) { + Map> map = list.stream() + .collect(Collectors.groupingBy(item -> item.getCzbh() + "_" + item.getPl())); + + List updateList=new ArrayList<>(); + map.forEach((key,val)->{ + List tmpList=new ArrayList<>(); + String czbh=key.split("_")[0]; + String pl=key.split("_")[1]; + + List list1 = dmBclqjbpService.list(Wrappers.lambdaQuery() + .eq(DmBclqjbp::getDcCh, czbh) + .eq(DmBclqjbp::getDcPl, pl) + ); + if (ObjUtil.isNotEmpty(list1)){ + for(DmBclqjbp dmBclqjbp : list1){ + for (PgdTzjh pgdTzjh : val){ + if (dmBclqjbp.getDcFd().contains(pgdTzjh.getFd())){ + PgdTzjh updateData = new PgdTzjh(); + updateData.setId(pgdTzjh.getId()); + updateData.setZt("09"); + updateData.setFkrq(dmBclqjbp.getDerq()); + updateData.setFkry(username); + tmpList.add(updateData); + } + } + } + } + if (ObjUtil.isEmpty(tmpList)){ + return; + } + List list2 = dmBchxjbpService.list(Wrappers.lambdaQuery() + .eq(DmBchxjbp::getDcCh, czbh) + .eq(DmBchxjbp::getDcPl, pl) + ); + if (ObjUtil.isNotEmpty(list2)){ + updateList.addAll(tmpList); + } + }); + boolean b = ObjUtil.isNotEmpty(updateList) && this.updateBatchById(updateList, 500); + } }