瀏覽代碼

Merge branch 'master' of ssh://47.103.131.176:10022/var/git/bswas

zhouzhendong 4 年之前
父節點
當前提交
c8e5cf7444

+ 31 - 6
app/Jobs/RejectedPushJob.php

@@ -2,6 +2,7 @@
 
 namespace App\Jobs;
 
+use App\OracleDOCASNDetail;
 use Illuminate\Bus\Queueable;
 use Illuminate\Contracts\Queue\ShouldQueue;
 use Illuminate\Foundation\Bus\Dispatchable;
@@ -25,14 +26,15 @@ class RejectedPushJob implements ShouldQueue
      * ['sku' => '75603675975072','taskNum' => 'JI20220316211', 'asnNo' => 'asn002', 'type' => '推单'],
      * ]
      */
-    private $pushData;
+    private $asnHerders;
 
     /**
-     * @param array $pushData
+     * RejectedPushJob constructor.
+     * @param $asnHerders
      */
-    public function __construct(array $pushData)
+    public function __construct($asnHerders)
     {
-        $this->pushData = $pushData;
+        $this->asnHerders = $asnHerders;
     }
 
 
@@ -43,8 +45,31 @@ class RejectedPushJob implements ShouldQueue
      */
     public function handle()
     {
+        $result = array();
+        $array = array();
+        if (count($this->asnHerders) > 0) {
+            foreach ($this->asnHerders as $asnHerder) {
+                if ($asnHerder->asntype == 'THRK' && $asnHerder->notes) {
+                    preg_match('/^[A-Z]{2}[0-9]{8}\d{0,8}/', $asnHerder->notes, $result);
+                    if (count($result) < 1) continue;
+                    $details = OracleDOCASNDetail::query()->select('sku', 'linestatus')->where('asnno', $asnHerder->asnno)->get();
+                    if (count($details) < 1) continue;
+                    foreach ($details as $detail) {
+                        $array[][] = [
+                            'sku' => $detail->sku,
+                            'taskNum' => $result[0],
+                            'asnNo' => $asnHerder->asnno,
+                            'type' => $detail->linestatus == '99' ? '上架' : '推单'
+                        ];
+                    }
+                }
+            }
+        }
         $url = config('api.java.wms.rejectedPushTask.receivePush');
-        $response = Http::post($url, $this->pushData);
-        Log::info("推送信息!", ['res' => $response->body(), 'req' => $this->pushData]);
+        if (count($array) > 0) {
+            $response = Http::post($url, $array);
+            Log::info("推送信息!", ['res' => $response->body(), 'req' => $array]);
+        }
+
     }
 }

+ 6 - 0
app/OracleDOCASNHeader.php

@@ -15,6 +15,12 @@ class OracleDOCASNHeader extends Model
     use ModelTimeFormat;
     protected $connection="oracle";
     protected $table="Doc_ASN_Header";
+    protected $primaryKey="ASNNO";
+
+    function getIncrementing()
+    {
+        return false;
+    }
 
     public function asnType(): HasOne
     {

+ 0 - 13
app/Services/OracleDocAsnHerderService.php

@@ -61,17 +61,4 @@ class OracleDocAsnHerderService
             ->where('CustomerId', $customId)->count();
     }
 
-    public function rejectPush($asnHerders)
-    {
-        if (count($asnHerders)>0){
-            $collect=collect();
-            foreach ($asnHerders as $asnHerder){
-                if ($asnHerder->asntype=='THRK'&&$asnHerder->asnreference3){
-                    $collect->push(array($asnHerder->asnno,$asnHerder->asnreference3));
-                }
-            }
-            RejectedPushJob::dispatch($collect->toArray());
-        }
-    }
-
 }

+ 3 - 2
app/Services/StoreService.php

@@ -3,6 +3,7 @@
 namespace App\Services;
 
 use App\Feature;
+use App\Jobs\RejectedPushJob;
 use App\Jobs\StoreCreateInstantBill;
 use App\Order;
 use App\OwnerFeeDetail;
@@ -67,7 +68,7 @@ class StoreService
         $last_time = $this->getAsnLastSyncAt($created_at, 'create');
         $asnHerders = $oracleDocAsnHerderService->getWmsAsnOnStartDateCreate($last_time);
         try {
-            $oracleDocAsnHerderService->rejectPush($asnHerders);
+            RejectedPushJob::dispatch($asnHerders);
         } catch (\Exception $e) {
             Log::error("退货推送asn集合失败",[$e->getMessage()]);
         }
@@ -95,7 +96,7 @@ class StoreService
             ->log(__METHOD__, __FUNCTION__, '11 获取上次更新时间:' . $last_time );
         $asnHerders = $oracleDocAsnHerderService->getWmsAsnOnStartDateEdit($last_time);
         try {
-            $oracleDocAsnHerderService->rejectPush($asnHerders);
+            RejectedPushJob::dispatch($asnHerders);
         } catch (\Exception $e) {
             Log::error("退货推送asn集合失败",[$e->getMessage()]);
         }

+ 4 - 7
resources/views/rejected/rejectedPushTask/index.blade.php

@@ -61,9 +61,8 @@
                     <input class="checkItem" type="checkbox" v-model="item.checked">
                     <span>@{{ i+1 }}</span>
                 </td>
-                <td class="td-warm text-muted"><span>@{{ item.id }}</span></td>
-                <td class="td-warm text-muted"><span>@{{ item.createTime }}</span></td>
                 <td class="td-warm text-muted"><span>@{{ item.taskNum }}</span></td>
+                <td class="td-warm text-muted"><span>@{{ item.createTime }}</span></td>
                 <td class="td-warm text-muted"><span>@{{ item.type }}</span></td>
                 <td class="td-warm text-muted"><span>@{{ item.status }}</span></td>
                 <td class="td-warm text-muted"><span>@{{ item.asnNos }}</span></td>
@@ -93,7 +92,6 @@
                     </span></td>
             </tr>
         </table>
-
         <!--非创建-->
         <table class="table table-striped table-bordered table-hover card-body td-min-width-80" id="secondTable">
             <tr v-for="(item,i) in tableData.secondData.data" @click="selectTr===i+1?selectTr=0:selectTr=i+1"
@@ -156,6 +154,7 @@
                 </li>
             </ul>
         </nav>
+
         <!-- Modal -->
         <!--商品明细-->
         <div class="modal fade" id="staticBackdropShowPackageDetail" tabindex="-1" aria-labelledby="staticBackdropLabel"
@@ -235,9 +234,7 @@
                             <table class="table table-sm"
                                    style="background: #fff;" id="tableCommodity">
                                 <tr v-for="(item,i) in showDetailData.commodityDetail.data" :key="i">
-                                    <td class="td-warm text-muted"><span>@{{ i+1 }}</span></td>
-                                    <td class="td-warm text-muted"><span>@{{ item.taskNum }}</span>
-                                    </td>
+                                    <td class="td-warm text-muted"><span>@{{ item.taskNum }}</span></td>
                                     <td class="td-warm text-muted"><span>@{{ item.sku }}</span></td>
                                     <td class="td-warm text-muted"><span>@{{ item.nameGoods }}</span></td>
                                     <td class="td-warm text-muted"><span>@{{ item.amount }}</span></td>
@@ -264,7 +261,7 @@
         <div class="modal fade" id="staticBackdropShowPushDetail" tabindex="-1"
              aria-labelledby="staticBackdropLabel"
              aria-hidden="true">
-            <div class="modal-dialog modal-xl">
+            <div class="modal-dialog modal-sm">
                 <div class="modal-content ">
                     <div class="modal-header ">
                         <h5 class="modal-title" id="staticBackdropLabel">明细</h5>