瀏覽代碼

修改OracleDocWaveDetailService

ajun 5 年之前
父節點
當前提交
c189df090e
共有 1 個文件被更改,包括 11 次插入4 次删除
  1. 11 4
      app/Services/OracleDocWaveDetailService.php

+ 11 - 4
app/Services/OracleDocWaveDetailService.php

@@ -16,10 +16,17 @@ class OracleDocWaveDetailService
     public function clearCancelledOrder($orderHeaders)
     {
         if (!$orderHeaders) return;
-        $clearOrderNos = data_get($orderHeaders, '*.orderno');
-        $ownerNos = data_get($orderHeaders, '*.ownerno');
-        OracleDOCWaveDetails::query()->whereIn('OrderNo', $clearOrderNos)->whereIn('OwnerNo',$ownerNos)->delete();
-        app('LogService')->log(__CLASS__, __METHOD__, 'Delete OracleDOCWaveDetails' . '  ' . json_encode($clearOrderNos) );
+        $array = array_chunk($orderHeaders,300);
+        foreach ($array as $item) {
+            $clearOrderNos = data_get($item, '*.orderno');
+            $ownerNos = data_get($item, '*.ownerno');
+            try {
+                OracleDOCWaveDetails::query()->whereIn('OrderNo', $clearOrderNos)->whereIn('OwnerNo', $ownerNos)->delete();
+                app('LogService')->log(__CLASS__, __METHOD__, 'Delete OracleDOCWaveDetails' . '  ' . json_encode($clearOrderNos) );
+            } catch (\Exception $e) {
+                app('LogService')->log(__CLASS__, __METHOD__,'Error clearCancelledOrder'.json_encode($clearOrderNos).json_encode($ownerNos));
+            }
+        }
     }
 
     private function getSyncAt()