From 3d66a05e01b17a57f80a422b19fbbff92a69c080 Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期三, 19 二月 2025 16:15:03 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/src/main/java/com/example/erp/controller/mm/MaterialInventoryController.java |  194 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 194 insertions(+), 0 deletions(-)

diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/mm/MaterialInventoryController.java b/north-glass-erp/src/main/java/com/example/erp/controller/mm/MaterialInventoryController.java
new file mode 100644
index 0000000..43665b7
--- /dev/null
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/mm/MaterialInventoryController.java
@@ -0,0 +1,194 @@
+package com.example.erp.controller.mm;
+
+
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import com.example.erp.common.Constants;
+import com.example.erp.common.Result;
+import com.example.erp.dto.mm.FinishedOperateLogDTO;
+import com.example.erp.entity.mm.*;
+import com.example.erp.entity.pp.OptimizeUse;
+import com.example.erp.exception.ServiceException;
+import com.example.erp.service.mm.MaterialInventoryService;
+import com.example.erp.service.mm.MaterialStoreService;
+import com.example.erp.tools.DownExcel;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.time.LocalDate;
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/materialInventory")
+@Api(value="鐗╂枡搴撳瓨controller",tags={"鐗╂枡搴撳瓨鎿嶄綔鎺ュ彛"})
+public class MaterialInventoryController {
+    @Autowired
+    MaterialInventoryService materialInventoryService;
+
+    @ApiOperation("鐗╂枡鍑哄簱鏂板鎺ュ彛")
+    @SaCheckPermission("createOutbound.add")
+    @PostMapping("/saveMaterialOutbound")
+    public Result saveMaterialOutbound( @RequestBody Map<String,Object>  object){
+
+        return Result.seccess(materialInventoryService.saveMaterialOutbound(object));
+
+    }
+
+    @ApiOperation("鐗╂枡鏂板鎺ュ彛")
+    @SaCheckPermission("selectIngredientsStock.add")
+    @PostMapping("/saveMaterialInventory")
+    public Result saveMaterialInventory( @RequestBody Map<String,Object>  object){
+        return Result.seccess(materialInventoryService.saveMaterialInventory(object));
+    }
+
+    @ApiOperation("鐗╂枡搴撳瓨鍔犳椂闂存煡璇㈡帴鍙�")
+    @SaCheckPermission("selectIngredientsStock.search")
+    @PostMapping("/getSelectMaterialInventoryDate/{pageNum}/{pageSize}/{selectDate}")
+    public Result getSelectMaterialInventoryDate(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @PathVariable List<String> selectDate, @RequestBody MaterialInventory materialInventory){
+        return Result.seccess(materialInventoryService.getSelectMaterialInventoryDate(pageNum,pageSize,selectDate,materialInventory));
+    }
+
+    @ApiOperation("鐗╂枡搴撳瓨宸ョ▼鍔犳椂闂存煡璇㈡帴鍙�")
+    @SaCheckPermission("selectIngredientsStock.search")
+    @PostMapping("/getSelectMaterialInventoryEngineeringDate/{pageNum}/{pageSize}/{selectDate}")
+    public Result getSelectMaterialInventoryEngineeringDate(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @PathVariable List<String> selectDate, @RequestBody MaterialInventory materialInventory){
+        return Result.seccess(materialInventoryService.getSelectMaterialInventoryEngineeringDate(pageNum,pageSize,selectDate,materialInventory));
+    }
+
+    @ApiOperation("鐗╂枡搴撳瓨鏌ヨ鎺ュ彛")
+    @SaCheckPermission("createOutbound.search")
+    @PostMapping("/getSelectMaterialInventory/{pageNum}/{pageSize}")
+    public Result getSelectMaterialInventory(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody MaterialInventory materialInventory){
+        return Result.seccess(materialInventoryService.getSelectMaterialInventory(pageNum,pageSize,materialInventory));
+    }
+
+    @ApiOperation("鐗╂枡搴撳瓨宸ョ▼鏌ヨ鎺ュ彛")
+    @SaCheckPermission("selectIngredientsStock.search")
+    @PostMapping("/getSelectMaterialInventoryEngineering/{pageNum}/{pageSize}")
+    public Result getSelectMaterialInventoryEngineering(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody OptimizeUse optimizeUse){
+        return Result.seccess(materialInventoryService.getSelectMaterialInventoryEngineering(pageNum,pageSize,optimizeUse));
+    }
+
+    @ApiOperation("鏉愭枡鍑哄簱鍔犳椂闂存煡璇㈡帴鍙�")
+    @SaCheckPermission("materialOutbound.search")
+    @PostMapping("/getSelectMaterialOutboundDate/{pageNum}/{pageSize}/{selectDate}")
+    public Result getSelectMaterialOutboundDate(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @PathVariable List<String> selectDate, @RequestBody MaterialOutbound materialOutbound){
+        return Result.seccess(materialInventoryService.getSelectMaterialOutboundDate(pageNum,pageSize,selectDate, materialOutbound));
+    }
+
+    @ApiOperation("鏉愭枡鍑哄簱鏌ヨ鎺ュ彛")
+    @SaCheckPermission("createOutbound.search")
+    @PostMapping("/getSelectMaterialOutbound/{pageNum}/{pageSize}")
+    public Result getSelectMaterialOutbound(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody MaterialOutboundDetail materialOutboundDetail){
+        return Result.seccess(materialInventoryService.getSelectMaterialOutbound(pageNum,pageSize,materialOutboundDetail));
+    }
+
+
+    @ApiOperation("鏉愭枡鍑哄簱瀹℃牳鎺ュ彛")
+    @SaCheckPermission("createOutbound.review")
+    @PostMapping("/updateMaterialOutboundToExamine")
+    public Result updateMaterialOutboundToExamine( @RequestBody Map<String,Object> object){
+        return Result.seccess(materialInventoryService.updateMaterialOutboundToExamine(object));
+    }
+
+    @ApiOperation("鏉愭枡鍑哄簱鍒犻櫎鎺ュ彛")
+    @SaCheckPermission("materialOutbound.delete")
+    @PostMapping("/deleteMaterialOutbound")
+    public Result deleteMaterialOutbound( @RequestBody Map<String,Object>  object){
+        return Result.seccess(materialInventoryService.deleteMaterialOutbound(object));
+    }
+
+    @ApiOperation("鐗╂枡杩斿簱鏂板鎺ュ彛")
+    @SaCheckPermission("returnToStorageCreate.add")
+    @PostMapping("/saveReturningWarehouse")
+    public Result saveReturningWarehouse( @RequestBody Map<String,Object>  object){
+        return Result.seccess(materialInventoryService.saveReturningWarehouse(object));
+    }
+
+    @ApiOperation("鐗╂枡杩斿簱鏂板鏌ヨ鎺ュ彛")
+    @SaCheckPermission("returnToStorageCreate.search")
+    @PostMapping("/getSelectReturningWarehouse/{pageNum}/{pageSize}")
+    public Result getSelectReturningWarehouse(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody ReturningWarehouseDetail returningWarehouseDetail){
+        return Result.seccess(materialInventoryService.getSelectReturningWarehouse(pageNum,pageSize,returningWarehouseDetail));
+    }
+
+    @ApiOperation("鐗╂枡杩斿簱鍒犻櫎鎺ュ彛")
+    @SaCheckPermission("returnToStorageCreate.delete")
+    @PostMapping("/deleteReturnToStorage")
+    public Result deleteReturnToStorage( @RequestBody Map<String,Object>  object){
+        return Result.seccess(materialInventoryService.deleteReturnToStorage(object));
+    }
+
+    @ApiOperation("鐗╂枡杩斿簱瀹℃牳鎺ュ彛")
+    @SaCheckPermission("returnToStorageCreate.review")
+    @PostMapping("/updateReturningWarehouseToExamine")
+    public Result updateReturningWarehouseToExamine( @RequestBody Map<String,Object> object){
+        return Result.seccess(materialInventoryService.updateReturningWarehouseToExamine(object));
+    }
+
+
+    @ApiOperation("鐗╂枡杩斿簱鏌ヨ鎺ュ彛")
+    @SaCheckPermission("returnToStorage.search")
+    @PostMapping("/getSelectReturningWarehouseDate/{pageNum}/{pageSize}/{selectDate}")
+    public Result getSelectReturningWarehouseDate(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @PathVariable List<String> selectDate, @RequestBody ReturningWarehouse returningWarehouse){
+        return Result.seccess(materialInventoryService.getSelectReturningWarehouseDate(pageNum,pageSize,selectDate, returningWarehouse));
+    }
+
+
+    @ApiOperation("浣欐枡搴撳瓨鏌ヨ鎺ュ彛")
+    @SaCheckPermission("selectIngredientsStock.search")
+    @PostMapping("/getSelectSurplusMaterialsDate/{pageNum}/{pageSize}/{selectDate}")
+    public Result getSelectSurplusMaterialsDate(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @PathVariable List<String> selectDate, @RequestBody SurplusMaterials surplusMaterials){
+        return Result.seccess(materialInventoryService.getSelectSurplusMaterialsDate(pageNum,pageSize,selectDate,surplusMaterials));
+    }
+
+    @ApiOperation("浣欐枡鏂板鎺ュ彛")
+    @SaCheckPermission("selectIngredientsStock.search")
+    @PostMapping("/addSelectSurplusMaterialsDate")
+    public Result addSelectSurplusMaterialsDate( @RequestBody Map<String,Object> object){
+        return Result.seccess(materialInventoryService.addSelectSurplusMaterialsDate(object));
+    }
+
+    @ApiOperation("鐗╂枡鍑哄簱鎵撳嵃鎺ュ彛")
+    @SaCheckPermission("selectIngredientsStock.search")
+    @GetMapping ("/printCreateOutbound/{materialOutboundId}")
+    public Result printCreateOutbound(@PathVariable String materialOutboundId)  {
+        return   Result.seccess(materialInventoryService.printCreateOutbound(materialOutboundId));
+    }
+
+    @ApiOperation("鐗╂枡搴撳瓨璁板綍鏌ヨ鎺ュ彛")
+    @SaCheckPermission("warehouseReport.search")
+    @PostMapping("/getMaterialLogReport/{type}/{pageNum}/{pageSize}/{selectDate}")
+    public Result getMaterialLogReport(@PathVariable String type,@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody MaterialLog materialLog){
+        return Result.seccess(materialInventoryService.getMaterialLogReport(type,pageNum,pageSize,selectDate,materialLog));
+    }
+
+    @ApiOperation("鐗╂枡搴撳瓨鍒犻櫎")
+    @SaCheckPermission("createOutbound.search")
+    @PostMapping("/deleteMaterialInventory")
+    public Result deleteMaterialInventory(@RequestBody Map<String,Object> object){
+        return Result.seccess(materialInventoryService.deleteMaterialInventory(object));
+    }
+
+    @ApiOperation("鐗╂枡鎶ヨ〃瀵煎嚭")
+    @PostMapping("/exportMaterialLogReport/{type}")
+    public void exportMaterialLogReport(@PathVariable String type, HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, MaterialLog.class, materialInventoryService.exportMaterialLogReport(dates,type),"orderReport");
+    }
+
+
+    @ApiOperation("mes鍒囧壊鎶ュ伐")
+    @PostMapping  ("/mesMaterialOutbound")
+    public Result mesMaterialOutbound(@RequestBody Map<String,Object> reportingWork)  {
+        return  Result.seccess(materialInventoryService.mesMaterialOutbound(reportingWork));
+    }
+
+
+
+
+}

--
Gitblit v1.8.0