| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- namespace App\Services;
- use App\Traits\ServiceAppAop;
- use Carbon\Carbon;
- use Illuminate\Support\Facades\Http;
- class ForeignZhenCangService
- {
- use ServiceAppAop;
- // protected $modelClass=ForeignZhenCang::class;
- public function broadcastBatch($batches)
- {
- // $body=[];
- // $body['id']=$batches->code;
- // $body['orders'] = [];
- // foreach ($batches->orders as $order){
- // $orderArr = [];
- // $orderArr['id']=$order->code??'';
- // $orderArr['createdAt']=Carbon::parse($order->created_at)->toDateTimeString()??'';
- // $orderArr['barcodes'] = [];
- // foreach ($order->orderCommodities as $orderCommodity){
- // $barcode=[];
- // $barcode['id']=$orderCommodity->id;
- // $barcode['barcode']=$orderCommodity->commodity ? ($orderCommodity->commodity->barcodes?$orderCommodity->commodity->barcodes->first()['code']:'') : '';
- // $barcode['name']=$orderCommodity->commodity->name??'';
- // $barcode['sku']=$orderCommodity->commodity->sku??'';
- // $barcode['amount']=$orderCommodity->amount??'';
- // $barcode['location']=$orderCommodity->location??'';
- // $orderArr['barcodes'][]=$barcode;
- // }
- // $body['orders'][] = $orderArr;
- // }
- //12.13
- $body=[];
- $body['id']=$batches->code;
- $body['slots'] = [];
- foreach ($batches->orders as $order){
- $orderArr = [];
- foreach ($order->orderCommodities as $orderCommodity){
- $orderArr['id']=$orderCommodity->location??'';
- $orderArr['sku']=$orderCommodity->commodity->sku??'';
- $orderArr['barcode']=$orderCommodity->commodity ? ($orderCommodity->commodity->barcodes?$orderCommodity->commodity->barcodes->first()['code']:'') : '';
- $orderArr['name']=$orderCommodity->commodity->name??'';
- $orderArr['amount']=$orderCommodity->amount??'';
- }
- $body['slots'][] = $orderArr;
- }
- $result=array();
- foreach($body['slots'] as $val){
- $key = $val['id'].'_'.$val['barcode'];
- if(!isset($result[$key])){
- $result[$key] = $val;
- }else{
- $result[$key]['amount'] += $val['amount'];
- }
- }
- $body['slots']=array_values($result);
- dd($body);
- $response = Http::withHeaders([
- 'Host' => 'zc-it.com',
- ])->post('http://1.116.164.201:8080/api/createBatch',$body);
- }
- }
|