From 653489f1b4430678b4a197046b7e73b37b682ff6 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期四, 22 五月 2025 17:46:03 +0800
Subject: [PATCH] 备件管理、备件库存管理

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartInventory.java               |   14 ++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartInventoryController.java |    6 +++++-
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartsController.java         |   11 +++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSpareParts.java                       |   18 ++++++++++++++++--
 4 files changed, 46 insertions(+), 3 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartInventoryController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartInventoryController.java
index 60c6986..9d2d404 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartInventoryController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartInventoryController.java
@@ -1,6 +1,7 @@
 package org.jeecg.modules.eam.controller;
 
 import java.util.Arrays;
+import java.util.List;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -67,7 +68,10 @@
     @ApiOperation(value = "澶囦欢搴撳瓨淇℃伅-娣诲姞", notes = "澶囦欢搴撳瓨淇℃伅-娣诲姞")
     @PostMapping(value = "/add")
     public Result<?> add(@RequestBody EamSparePartInventory eamSparePartInventory) {
-        eamSparePartInventoryService.save(eamSparePartInventory);
+        List<EamSparePartInventory> eamSparePartInventories = eamSparePartInventory.getEamSparePartInventories();
+        for (EamSparePartInventory sparePartInventory : eamSparePartInventories) {
+            eamSparePartInventoryService.save(sparePartInventory);
+        }
         return Result.OK("娣诲姞鎴愬姛锛�");
     }
 
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartsController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartsController.java
index efe21a9..377f682 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartsController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSparePartsController.java
@@ -8,7 +8,9 @@
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.modules.eam.entity.EamSparePartInventory;
 import org.jeecg.modules.eam.entity.EamSpareParts;
+import org.jeecg.modules.eam.service.IEamSparePartInventoryService;
 import org.jeecg.modules.eam.service.IEamSparePartsService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -37,6 +39,9 @@
     @Resource
     private IEamSparePartsService eamSparePartsService;
 
+    @Autowired
+    private IEamSparePartInventoryService eamSparePartInventoryService;
+
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
      *
@@ -55,6 +60,12 @@
         QueryWrapper<EamSpareParts> queryWrapper = QueryGenerator.initQueryWrapper(eamSpareParts, req.getParameterMap());
         Page<EamSpareParts> page = new Page<EamSpareParts>(pageNo, pageSize);
         IPage<EamSpareParts> pageList = eamSparePartsService.page(page, queryWrapper);
+        for (EamSpareParts record : pageList.getRecords()) {
+            QueryWrapper<EamSparePartInventory> wrapper = new QueryWrapper<>();
+            wrapper.eq("spare_part_id",record.getId()).select("sum(inventory) as inventory");
+            EamSparePartInventory one = eamSparePartInventoryService.getOne(wrapper);
+            record.setTotalQuantity(one.getInventory().toString());
+        }
         return Result.OK(pageList);
     }
 
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartInventory.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartInventory.java
index 903e43d..dc1f96b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartInventory.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSparePartInventory.java
@@ -1,17 +1,20 @@
 package org.jeecg.modules.eam.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
 import org.jeecg.common.system.base.entity.JeecgEntity;
 import org.jeecgframework.poi.excel.annotation.Excel;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @Description: 澶囦欢搴撳瓨淇℃伅
@@ -34,6 +37,14 @@
     @Excel(name = "澶囧搧澶囦欢ID", width = 15)
     @ApiModelProperty(value = "澶囧搧澶囦欢ID")
     private String sparePartId;
+
+    /**
+     * 鏉ユ簮绫诲瀷
+     */
+    @Excel(name = "澶囦欢鏉ユ簮绫诲瀷", width = 15)
+    @ApiModelProperty(value = "澶囦欢鏉ユ簮绫诲瀷")
+    @Dict(dicCode = "spare_part_into_type")
+    private String sparePartIntoType;
     /**
      * 鎵规鍙�
      */
@@ -68,4 +79,7 @@
     @Excel(name = "瀛樻斁浣嶇疆", width = 15)
     @ApiModelProperty(value = "瀛樻斁浣嶇疆")
     private String location;
+
+    @TableField(exist = false)
+    private List<EamSparePartInventory> eamSparePartInventories;
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSpareParts.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSpareParts.java
index e875bf8..3169fb7 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSpareParts.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamSpareParts.java
@@ -1,11 +1,16 @@
 package org.jeecg.modules.eam.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 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;
 
@@ -31,8 +36,10 @@
      * 鍒犻櫎鏍囪
      */
     @Excel(name = "鍒犻櫎鏍囪", width = 15)
-    @ApiModelProperty(value = "鍒犻櫎鏍囪")
-    private Integer delFlag;
+    @JsonIgnore
+    @ApiModelProperty(value = "鍒犻櫎鐘舵��(0-姝e父,1-宸插垹闄�)", hidden = true)
+    @TableLogic
+    private Integer delFlag = CommonConstant.DEL_FLAG_0;
     /**
      * 澶囦欢缂栫爜
      */
@@ -50,6 +57,7 @@
      */
     @Excel(name = "澶囦欢鍒嗙被", width = 15)
     @ApiModelProperty(value = "澶囦欢鍒嗙被")
+    @Dict(dicCode = "spare_part_category")
     private String partCategory;
     /**
      * 澶囦欢鍨嬪彿
@@ -111,4 +119,10 @@
     @Excel(name = "澶囨敞", width = 15)
     @ApiModelProperty(value = "澶囨敞")
     private String remark;
+
+    /**
+     * 搴撳瓨鎬绘暟閲�
+     */
+    @TableField(exist = false)
+    private String totalQuantity;
 }

--
Gitblit v1.9.3