From e6dede1417df8fde2036622dcff965b8a5ad8d39 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期五, 30 五月 2025 17:28:47 +0800
Subject: [PATCH] 备件请购

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionDetailController.java |   12 ++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionController.java       |   32 ++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisitionDetail.java               |   15 ++++++-
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisition.java                     |   11 ++++-
 4 files changed, 66 insertions(+), 4 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionController.java
index e29add6..f50edfc 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionController.java
@@ -16,8 +16,10 @@
 import org.jeecg.modules.eam.constant.BusinessCodeConst;
 import org.jeecg.modules.eam.entity.EamEquipmentLeanOut;
 import org.jeecg.modules.eam.entity.EamSparePartRequisition;
+import org.jeecg.modules.eam.entity.EamSparePartRequisitionDetail;
 import org.jeecg.modules.eam.request.EamEquipmentLeanOutRequest;
 import org.jeecg.modules.eam.request.EamSparePartRequisitionRequest;
+import org.jeecg.modules.eam.service.IEamSparePartRequisitionDetailService;
 import org.jeecg.modules.eam.service.IEamSparePartRequisitionService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -47,6 +49,9 @@
     @Resource
     private IEamSparePartRequisitionService eamSparePartRequisitionService;
 
+    @Resource
+    private IEamSparePartRequisitionDetailService eamSparePartRequisitionDetailService;
+
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
      *
@@ -65,6 +70,11 @@
         QueryWrapper<EamSparePartRequisition> queryWrapper = QueryGenerator.initQueryWrapper(eamSparePartRequisition, req.getParameterMap());
         Page<EamSparePartRequisition> page = new Page<EamSparePartRequisition>(pageNo, pageSize);
         IPage<EamSparePartRequisition> pageList = eamSparePartRequisitionService.page(page, queryWrapper);
+        for (EamSparePartRequisition record : pageList.getRecords()) {
+            List<EamSparePartRequisitionDetail> details = eamSparePartRequisitionDetailService.lambdaQuery()
+                    .eq(EamSparePartRequisitionDetail::getSpareRequisitionId, record.getId()).list();
+            record.setSparePartRequisitionDetails(details);
+        }
         return Result.OK(pageList);
     }
 
@@ -82,6 +92,11 @@
         String realName = user.getRealname();
         eamSparePartRequisition.setReportUser(realName);
         eamSparePartRequisitionService.save(eamSparePartRequisition);
+        for (EamSparePartRequisitionDetail sparePartRequisitionDetail : eamSparePartRequisition.getSparePartRequisitionDetails()) {
+            sparePartRequisitionDetail.setSpareRequisitionId(eamSparePartRequisition.getId());
+            eamSparePartRequisitionDetailService.saveOrUpdate(sparePartRequisitionDetail);
+        }
+
         return Result.OK("娣诲姞鎴愬姛锛�");
     }
 
@@ -95,6 +110,18 @@
     @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
     public Result<?> edit(@RequestBody EamSparePartRequisition eamSparePartRequisition) {
         eamSparePartRequisitionService.updateById(eamSparePartRequisition);
+
+        List<EamSparePartRequisitionDetail> details = eamSparePartRequisitionDetailService.lambdaQuery()
+                .eq(EamSparePartRequisitionDetail::getSpareRequisitionId, eamSparePartRequisition.getId()).list();
+        for (EamSparePartRequisitionDetail detail : details) {
+            eamSparePartRequisitionDetailService.removeById(detail.getId());
+        }
+
+        for (EamSparePartRequisitionDetail sparePartRequisitionDetail : eamSparePartRequisition.getSparePartRequisitionDetails()) {
+            sparePartRequisitionDetail.setSpareRequisitionId(eamSparePartRequisition.getId());
+            eamSparePartRequisitionDetailService.saveOrUpdate(sparePartRequisitionDetail);
+        }
+
         return Result.OK("缂栬緫鎴愬姛!");
     }
 
@@ -107,6 +134,11 @@
     @ApiOperation(value = "澶囦欢璇疯喘鍗�-閫氳繃id鍒犻櫎", notes = "澶囦欢璇疯喘鍗�-閫氳繃id鍒犻櫎")
     @DeleteMapping(value = "/delete")
     public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
+        List<EamSparePartRequisitionDetail> details = eamSparePartRequisitionDetailService.lambdaQuery()
+                .eq(EamSparePartRequisitionDetail::getSpareRequisitionId, id).list();
+        for (EamSparePartRequisitionDetail detail : details) {
+            eamSparePartRequisitionDetailService.removeById(detail.getId());
+        }
         eamSparePartRequisitionService.removeById(id);
         return Result.OK("鍒犻櫎鎴愬姛!");
     }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionDetailController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionDetailController.java
index 08a1435..0d8f05a 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionDetailController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartRequisitionDetailController.java
@@ -9,6 +9,7 @@
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.modules.eam.entity.EamSparePartRequisitionDetail;
+import org.jeecg.modules.eam.entity.EamSpareParts;
 import org.jeecg.modules.eam.service.IEamSparePartRequisitionDetailService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -16,6 +17,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.system.base.controller.JeecgController;
 
+import org.jeecg.modules.eam.service.IEamSparePartsService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
@@ -37,6 +39,9 @@
     @Resource
     private IEamSparePartRequisitionDetailService eamSparePartRequisitionDetailService;
 
+    @Resource
+    private IEamSparePartsService eamSparePartsService;
+
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
      *
@@ -55,6 +60,13 @@
         QueryWrapper<EamSparePartRequisitionDetail> queryWrapper = QueryGenerator.initQueryWrapper(eamSparePartRequisitionDetail, req.getParameterMap());
         Page<EamSparePartRequisitionDetail> page = new Page<EamSparePartRequisitionDetail>(pageNo, pageSize);
         IPage<EamSparePartRequisitionDetail> pageList = eamSparePartRequisitionDetailService.page(page, queryWrapper);
+        for (EamSparePartRequisitionDetail record : pageList.getRecords()) {
+            String partId = record.getPartId();
+            EamSpareParts part = eamSparePartsService.getById(partId);
+            record.setPartCode(part.getPartCode());
+            record.setPartName(part.getPartName());
+            record.setPartModel(part.getPartModel());
+        }
         return Result.OK(pageList);
     }
 
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisition.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisition.java
index 5852d66..11e66ac 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisition.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisition.java
@@ -8,6 +8,7 @@
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.base.entity.JeecgEntity;
 import org.jeecgframework.poi.excel.annotation.Excel;
 
@@ -36,8 +37,8 @@
      * 鍒犻櫎鏍囪
      */
     @Excel(name = "鍒犻櫎鏍囪", width = 15)
-    @ApiModelProperty(value = "鍒犻櫎鏍囪")
-    private Integer delFlag;
+    @ApiModelProperty(value = "鍒犻櫎鐘舵��(0-姝e父,1-宸插垹闄�)")
+    private Integer delFlag = CommonConstant.DEL_FLAG_0;
     /**
      * 璇疯喘鍗曠紪鐮�
      */
@@ -81,5 +82,11 @@
     @TableField(exist = false)
     private List<Map<String, Object>> sparePartRequisitionDetailList;
 
+    @TableField(exist = false)
+    private List<EamSparePartRequisitionDetail> sparePartRequisitionDetails;
+
+    @TableField(exist = false)
+    private List<EamSparePartRequisitionDetail> removeDetailList;
+
 
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisitionDetail.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisitionDetail.java
index aaa022f..aeea45d 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisitionDetail.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartRequisitionDetail.java
@@ -1,6 +1,7 @@
 package org.jeecg.modules.eam.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
@@ -8,6 +9,7 @@
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.base.entity.JeecgEntity;
 import org.jeecgframework.poi.excel.annotation.Excel;
 
@@ -33,8 +35,8 @@
      * 鍒犻櫎鏍囪
      */
     @Excel(name = "鍒犻櫎鏍囪", width = 15)
-    @ApiModelProperty(value = "鍒犻櫎鏍囪")
-    private Integer delFlag;
+    @ApiModelProperty(value = "鍒犻櫎鐘舵��(0-姝e父,1-宸插垹闄�)")
+    private Integer delFlag = CommonConstant.DEL_FLAG_0;
     /**
      * 澶囦欢璇疯喘鍗旾D
      */
@@ -53,4 +55,13 @@
     @Excel(name = "璇疯喘鏁伴噺", width = 15)
     @ApiModelProperty(value = "璇疯喘鏁伴噺")
     private BigDecimal requisitionNum;
+
+    @TableField(exist = false)
+    private String partCode;
+
+    @TableField(exist = false)
+    private String partName;
+
+    @TableField(exist = false)
+    private String partModel;
 }

--
Gitblit v1.9.3