Browse Source

调箱逻辑的部分BUG修复

Zhouzhendong 4 years ago
parent
commit
4c5bd57254

+ 7 - 2
app/Http/Controllers/TestController.php

@@ -149,8 +149,13 @@ class TestController extends Controller
     }
     public function test()
     {
-        $task = DB::connection("oracle")->selectOne(DB::raw("select * from TSK_TASKLISTS where taskid = 'TS32556054' and TASKID_SEQUENCE = 3"));
-        $ide = "IDE0000655";
+        dd(DB::connection("mysql_haiRobotics")->table("ks_bin")->where("ks_bin_code","IDE0000700")
+            ->update([
+                "ks_bin_space_code" => null,"ks_bin_space_id"=>null,"orig_ks_bin_space_code"=>null,"orig_ks_bin_space_id"=>null,
+                "status"=>4,
+            ]));
+        $task = DB::connection("oracle")->selectOne(DB::raw("select * from TSK_TASKLISTS where taskid = 'TS32563988' and TASKID_SEQUENCE = 2"));
+        $ide = "IDE0000696";
         dd(app("StorageService")->fluxPA($task,$ide));
     }
     public function orderCreateBill()

+ 1 - 1
app/Services/MaterialBoxService.php

@@ -66,7 +66,7 @@ class MaterialBoxService
             $str = rtrim($str,",").")";
             $sql = <<<sql
 SELECT LOCATIONID FROM (SELECT LOCATIONID FROM (SELECT LOCATIONID,SUM(QTY+QTYPA) qty FROM INV_LOT_LOC_ID WHERE LOCATIONID IN {$str} GROUP BY LOCATIONID,LOTNUM,CUSTOMERID,SKU) where qty>0) GROUP BY
-                            LOCATIONID HAVING (COUNT(*)>={$model->maximum_kind});
+                            LOCATIONID HAVING (COUNT(*)>={$model->maximum_kind})
 sql;
             foreach (DB::connection("oracle")->select(DB::raw($sql)) as $item)unset($ides[$item->locationid]);
             if ($ides)return current($ides);

+ 1 - 1
app/Services/StorageService.php

@@ -381,7 +381,7 @@ sql;
         $db->beginTransaction();
         try {
             $sql = <<<sql
-SELECT * FROM inv_lot_loc_id  WHERE lotnum = ? AND traceid = ? AND locationid = ? AND customerid= ?  and sku = ? and qtypa >= {$amount} FOR UPDATE
+SELECT * FROM inv_lot_loc_id  WHERE lotnum = ? AND traceid = ? AND locationid = ? AND customerid= ?  and sku = ? and qty >= {$amount} FOR UPDATE
 sql;
             $inv = $db->selectOne(DB::raw($sql),[$task->fmlotnum,$task->fmid,$task->fmlocation,$task->customerid,$task->sku]);
             if (!$inv)return false;//余量与入库不符