Browse Source

1.完善搅拌槽service
2.写仓库确认可完成某物料注药量
3.写仓库无法完成某物料注药量

HuKang 1 year ago
parent
commit
8524896955

+ 29 - 0
ruoyi-admin/src/main/java/com/ruoyi/xuankuang/controller/test/TankTestController.java

@@ -161,6 +161,35 @@ public class TankTestController {
         return stirringTankClientService.matchInventory_1();
     }
 
+    @ApiOperation("对比丁黄药库存")
+    @PostMapping("/matchInventory_2")
+    public boolean matchInventory_2(){
+        return stirringTankClientService.matchInventory_2();
+    }
+
+    @ApiOperation("对比丁铵黑药库存")
+    @PostMapping("/matchInventory_3")
+    public boolean matchInventory_3(){
+        return stirringTankClientService.matchInventory_3();
+    }
+
+    @ApiOperation("对比六偏磷酸钠库存")
+    @PostMapping("/matchInventory_4")
+    public boolean matchInventory_4(){
+        return stirringTankClientService.matchInventory_4();
+    }
+
+    @ApiOperation("对比硫酸铵库存")
+    @PostMapping("/matchInventory_5")
+    public boolean matchInventory_5(){
+        return stirringTankClientService.matchInventory_5();
+    }
+
+    @ApiOperation("对比乙黄药库存")
+    @PostMapping("matchInventory_6")
+    public boolean matchInventory_6(){
+        return stirringTankClientService.matchInventory_6();
+    }
 
     @ApiOperation("触发出库流程")
     @PostMapping("/outbound_1")

+ 187 - 1
warewms-ams/src/main/java/com/ruoyi/ams/xuankuang/service/StirringTankClientService.java

@@ -64,5 +64,191 @@ public class StirringTankClientService {
         return AjaxResult.success();
     }
 
+    /**
+     * 对比丁黄药库存
+     *
+     * @return
+     */
+    public boolean matchInventory_2() {
+        String sku = "C5H10OS2";
+        BigDecimal b = new BigDecimal(0);
+        Number number = stirringTankClient.readTank08();
+        List<BigDecimal> bigDecimals = baseLocationInfoSubService.checkInventory(sku);
+        for (BigDecimal bigDecimal : bigDecimals) {
+            b = b.add(bigDecimal);
+        }
+        if (number.intValue() <= b.intValue()) {
+            stirringTankClient.writeTank02_1();
+            outbound_2();
+            return true;
+        } else {
+            stirringTankClient.writeTank01_1();
+            return false;
+        }
+    }
+
+    /**
+     * 触发丁黄药出库流程
+     *
+     * @return
+     */
+    public AjaxResult outbound_2() {
+        String sku = "C5H10OS2";
+        Number number = stirringTankClient.readTank08();
+        BigDecimal qty = new BigDecimal(number.toString());
+        String order = wmsDocOrderSubService.generateAnOutboundOrder(sku, qty);
+        wmsDocOrderSubService.initOrderDetails(order);
+        return AjaxResult.success();
+    }
+
+    /**
+     * 对比丁铵黑药库存
+     *
+     * @return
+     */
+    public boolean matchInventory_3() {
+        String sku = "C4H9O2PSSNH4";
+        BigDecimal b = new BigDecimal(0);
+        Number number = stirringTankClient.readTank09();
+        List<BigDecimal> bigDecimals = baseLocationInfoSubService.checkInventory(sku);
+        for (BigDecimal bigDecimal : bigDecimals) {
+            b = b.add(bigDecimal);
+        }
+        if (number.intValue() <= b.intValue()) {
+            stirringTankClient.writeTank02_2();
+            outbound_3();
+            return true;
+
+        } else {
+            stirringTankClient.writeTank01_2();
+            return false;
+        }
+    }
+
+    /**
+     * 触发丁铵黑药出库流程
+     *
+     * @return
+     */
+    public AjaxResult outbound_3(){
+        String sku = "C4H9O2PSSNH4";
+       Number number = stirringTankClient.readTank09();
+       BigDecimal qty = new BigDecimal(number.toString());
+       String order = wmsDocOrderSubService.generateAnOutboundOrder(sku,qty);
+       wmsDocOrderSubService.initOrderDetails(order);
+       return AjaxResult.success();
+    }
+
+    /**
+     * 对比六偏磷酸钠库存
+     *
+     * @return
+     */
+
+    public boolean matchInventory_4(){
+        String sku = "(NaPO3)6";
+        BigDecimal b = new BigDecimal(0);
+        Number number = stirringTankClient.readTank10();
+        List<BigDecimal> bigDecimals = baseLocationInfoSubService.checkInventory(sku);
+        for (BigDecimal bigDecimal: bigDecimals) {
+            b = b.add(bigDecimal);
+        }
+        if(number.intValue() <= b.intValue()){
+            stirringTankClient.writeTank02_3();
+            outbound_4();
+            return true;
+        }else {
+            stirringTankClient.writeTank01_3();
+            return false;
+        }
+    }
+
+    /**
+     * 触发六偏磷酸钠出库流程
+     *
+     * @return
+     */
+    public AjaxResult outbound_4(){
+        String sku = "(NaPO3)6";
+        Number number = stirringTankClient.readTank10();
+        BigDecimal qty = new BigDecimal(number.toString());
+        String order = wmsDocOrderSubService.generateAnOutboundOrder(sku,qty);
+        wmsDocOrderSubService.initOrderDetails(order);
+        return AjaxResult.success();
+    }
+
+    /**
+     * 对比硫酸铵库存
+     *
+     * @return
+     */
+    public boolean matchInventory_5(){
+        String sku = "(NH4)2SO4";
+        BigDecimal b = new BigDecimal(0);
+        Number number = stirringTankClient.readTank11();
+        List<BigDecimal> bigDecimals = baseLocationInfoSubService.checkInventory(sku);
+        for (BigDecimal bigDecimal: bigDecimals) {
+            b = b.add(bigDecimal);
+        }
+        if(number.intValue() <= b.intValue()){
+            stirringTankClient.writeTank02_4();
+            outbound_5();
+            return true;
+        }else{
+            stirringTankClient.writeTank01_4();
+            return false;
+        }
+    }
+
+    /**
+     * 触发硫酸铵出库流程
+     *
+     * @return
+     */
+    public AjaxResult outbound_5(){
+        String sku = "(NH4)2SO4";
+        Number number = stirringTankClient.readTank11();
+        BigDecimal qty = new BigDecimal(number.toString());
+        String order = wmsDocOrderSubService.generateAnOutboundOrder(sku,qty);
+        wmsDocOrderSubService.initOrderDetails(order);
+        return AjaxResult.success();
+    }
+
+    /**
+     * 对比乙黄药库存
+     *
+     * @return
+     */
+    public boolean matchInventory_6() {
+        String sku = "CH3CH2OCS2Na";
+        BigDecimal b = new BigDecimal(0);
+        Number number = stirringTankClient.readTank12();
+        List<BigDecimal> bigDecimals = baseLocationInfoSubService.checkInventory(sku);
+        for (BigDecimal bigDecimal : bigDecimals) {
+            b = b.add(bigDecimal);
+        }
+        if (number.intValue() <= b.intValue()) {
+            stirringTankClient.writeTank02_5();
+            outbound_6();
+            return true;
+        } else {
+            stirringTankClient.writeTank01_5();
+            return false;
+        }
+    }
+
+        /**
+         * 触发乙黄药出库流程
+         *
+         * @return
+         */
+        public AjaxResult outbound_6(){
+            String sku = "CH3CH2OCS2Na";
+            Number number = stirringTankClient.readTank12();
+            BigDecimal qty = new BigDecimal(number.toString());
+            String order = wmsDocOrderSubService.generateAnOutboundOrder(sku,qty);
+            wmsDocOrderSubService.initOrderDetails(order);
+            return AjaxResult.success();
+        }
+    }
 
-}