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