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);
+ }
}