From 1a2258c4eca2e7514b6096004fa1c3e0036b402b Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期四, 28 三月 2024 14:04:24 +0800
Subject: [PATCH] Merge branch 'master' of http://117.34.109.166:18448/r/mdc_430 into develop

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java |   87 +++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 83 insertions(+), 4 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java
index 56fa79a..829d06d 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -10,6 +11,8 @@
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.base.entity.*;
+import org.jeecg.modules.base.service.*;
 import org.jeecg.modules.spare.entity.SparePart;
 import org.jeecg.modules.spare.entity.SparesPartInventory;
 import org.jeecg.modules.spare.service.ISparePartService;
@@ -44,6 +47,20 @@
     private ISparesPartInventoryService sparesPartInventoryService;
     @Autowired
     private ISparePartService sparePartService;
+    @Autowired
+    private IUnitService unitService;
+    @Autowired
+    private ISupplierService supplierService;
+
+    @Autowired
+    private IWarehouseService warehouseService;
+
+    @Autowired
+    private IWarehouseAreaService warehouseAreaService;
+
+    @Autowired
+    private IWarehouseLocationService warehouseLocationService;
+
 
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
@@ -187,10 +204,73 @@
             params.setNeedSave(true);
             try {
                 List<SparesPartInventory> list = ExcelImportUtil.importExcel(file.getInputStream(), SparesPartInventory.class, params);
-                for (SparesPartInventory temp : list) {
-                    temp.setSparePartId(mainId);
-                }
                 long start = System.currentTimeMillis();
+                for (int i = 0; i < list.size(); i++) {
+                    Supplier supplier = null;
+                    Unit unit = null;
+                    Warehouse warehouse = null;
+                    WarehouseArea warehouseArea = null;
+                    WarehouseLocation warehouseLocation = null;
+                    list.get(i).setSparePartId(mainId);
+
+                    String mainUnitName = list.get(i).getMainUnitId();
+                    String supplierName = list.get(i).getSupplierId();
+                    String warehouseName = list.get(i).getWarehouseId();
+                    String warehouseAreaName = list.get(i).getWarehouseAreaId();
+                    String warehouseLocationName = list.get(i).getWarehouseLocationId();
+                    String  num =list.get(i).getValidityForecast();
+
+                    if (supplierName != null) {
+                        supplier = supplierService.getByName(supplierName);
+                    }
+                    if (mainUnitName != null) {
+                        unit = unitService.getUnitByName(mainUnitName);
+                    }
+                    if (warehouseName != null) {
+                        warehouse = warehouseService.getByName(warehouseName);
+                    }
+                    if (warehouseAreaName != null) {
+                        warehouseArea = warehouseAreaService.getByName(warehouseAreaName);
+                    }
+                    if (warehouseLocationName != null) {
+                        warehouseLocation = warehouseLocationService.getByName(warehouseLocationName);
+                    }
+                    if (!StringUtils.isNotEmpty(list.get(i).getBatchNum()))
+                        return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屾壒娆″彿涓嶈兘涓虹┖");
+                    if (list.get(i).getMainQuantity() <= 0)
+                        return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屾暟閲忎笉鑳戒负灏忎簬绛変簬0");
+
+                    if (unit != null) {
+                        if (!StringUtils.isNotEmpty(unit.getId()))
+                            return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屽崟浣嶄笉瀛樺湪");
+                        list.get(i).setMainUnitId(unit.getId());
+                    }
+                    if (supplier != null) {
+                        if (!StringUtils.isNotEmpty(supplier.getId()))
+                            return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屼緵搴斿晢涓嶅瓨鍦�");
+                        list.get(i).setSupplierId(supplier.getId());
+                    }
+
+                    if (warehouse != null) {
+                        if (!StringUtils.isNotEmpty(warehouse.getId()))
+                            return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屼粨搴撲笉瀛樺湪");
+                        list.get(i).setWarehouseId(warehouse.getId());
+                    }
+                    if (warehouseArea != null) {
+                        if (!StringUtils.isNotEmpty(warehouseArea.getId()))
+                            return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屽簱鍖轰笉瀛樺湪");
+                        list.get(i).setWarehouseAreaId(warehouseArea.getId());
+                    }
+
+                    if (warehouseLocation != null) {
+                        if (!StringUtils.isNotEmpty(warehouseLocation.getId()))
+                            return Result.error("鏂囦欢瀵煎叆澶辫触: 绗�" + (i + 1) + "琛屽簱浣嶄笉瀛樺湪");
+                        list.get(i).setWarehouseLocationId(warehouseLocation.getId());
+                    }
+                        list.get(i).setValidityForecast(num);
+
+                }
+
                 sparesPartInventoryService.saveBatch(list);
                 log.info("娑堣�楁椂闂�" + (System.currentTimeMillis() - start) + "姣");
                 return Result.OK("鏂囦欢瀵煎叆鎴愬姛锛佹暟鎹鏁帮細" + list.size());
@@ -207,7 +287,6 @@
         }
         return Result.error("鏂囦欢瀵煎叆澶辫触锛�");
     }
-
 
 
     /**

--
Gitblit v1.9.3