ajun vor 4 Jahren
Ursprung
Commit
306b7d10b1

+ 8 - 0
app/Http/Controllers/TestController.php

@@ -38,6 +38,7 @@ use App\Menu;
 use App\Notifications\SendEmailNotification;
 use App\OracleActAllocationDetails;
 use App\OracleDOCASNHeader;
+use App\OracleDOCOrderDetail;
 use App\OracleDOCOrderHeader;
 use App\Order;
 use App\OrderBin;
@@ -1746,4 +1747,11 @@ TEXT;
         $service = new DeliveryService();
         $service->destroyFile();
     }
+
+    public function testSum()
+    {
+        dd(strpos("SFSYQHD",'F'));
+    }
+
+
 }

+ 2 - 1
app/Services/DeliveryService.php

@@ -21,7 +21,8 @@ class DeliveryService
             $deliveryInfo = OracleDocOrderDeliveryInfo::query()->selectRaw('trackingNo')->whereIn('orderno',$orderCodes)->get()->toArray();
             $logisticNumbers = array_unique(array_merge($logisticNumbers,array_column($deliveryInfo,'trackingno')));
         }
-        $OracleDocOrderDeliveryInfos = OracleDocOrderDeliveryInfo::query()->with('docOrderHeader')->whereIn('trackingNo',$logisticNumbers)->get();
+
+        $OracleDocOrderDeliveryInfos = OracleDocOrderDeliveryInfo::query()->with('docOrderHeader.docOrderDeliveryInfo')->whereIn('trackingNo',$logisticNumbers)->get();
         $tbParams = app(TBDeliveryService::class)->getDeliveryInfo($OracleDocOrderDeliveryInfos);
 
         $pddParams = app(PDDDeliveryService::class)->getDeliveryInfo($OracleDocOrderDeliveryInfos);

+ 0 - 4
app/Services/Interfaces/DeliveryInterface.php

@@ -30,8 +30,4 @@ interface DeliveryInterface
      * @return mixed
      */
     function getBase64($item);
-    /*
-     * 处理加工
-     */
-    function processing(& $params);
 }

+ 38 - 2
app/Services/JDDeliveryService.php

@@ -17,7 +17,7 @@ class JDDeliveryService implements DeliveryInterface
     function getDeliveryInfo($logistic_number)
     {
         return OracleDOCOrderHeader::query()->whereIn('deliveryno',$logistic_number)
-            ->where('consigneeId',"JD")
+            ->whereIn('consigneeId',['JD','BSZX','BSZFC','BSZXDF','BSZFCDF'])
             ->get()->map(function($item){
             return [
                 // TODO 需要动态获取面单获取的组件 TYPE
@@ -48,10 +48,46 @@ class JDDeliveryService implements DeliveryInterface
         return $this->readImageBase64($path);
     }
 
+    /*
+     * 订单号
+     * 波次号
+     * 运单号
+     * 店铺
+     * 商家联系号
+     * 商家订单号
+     * 发货地址,省,市区
+     *
+     * 发货分拣中心
+     * 发货人
+     * 发货人号码
+     * 收货地址
+     * 收货分拣中心
+     * 收件人
+     * 商品
+     * 备注
+     *
+     */
+
     function getDelivery($item)
     {
 
-        return null;
+        $delivery =  [
+            'oerderno' => $item['orderno'],
+            'waveno' => $item['waveno'],
+            'logistic_number' => $item['deliveryno'],
+            'shop' => $item[''],
+            'c_address1' => $item['c_address1'],
+            'c_city' => $item['c_city'],
+            'c_province' => $item['c_province'],
+            'c_district' => $item['c_district'],
+            'c_tel' => $item['c_tel1'] ?? $item['c_tel2'],
+            'i_contact' => $item['i_contact'],
+            'i_tel1' => $item['i_tel1'],
+            'i_tel2' => $item['i_tel2'],
+            'soreference1' => $item['soreference1'],
+            'b_addresss1' => $item['MJ-ZP'],    // 目的地分拣中心
+            'd_addresss1' => 'BB-Y3-21',
+        ];
     }
 
     function processing(&$params)

+ 6 - 40
app/Services/PDDDeliveryService.php

@@ -2,25 +2,18 @@
 
 namespace App\Services;
 
-use App\Logistic;
-use App\OracleDocOrderDeliveryInfo;
-use App\OracleDOCOrderHeader;
-use App\Owner;
-use App\OwnerLogisticPrintTemplate;
 use App\Services\Interfaces\DeliveryInterface;
-use App\Traits\DrawImage;
-use Illuminate\Support\Carbon;
-use Illuminate\Support\Facades\Cache;
+use App\Traits\DeliveryProcess;
 use Illuminate\Support\Facades\File;
 
 class PDDDeliveryService implements DeliveryInterface
 {
-    use DrawImage;
+    use DeliveryProcess;
 
     function getDeliveryInfo($OracleDocOrderDeliveryInfos): ?array
     {
         $items = $OracleDocOrderDeliveryInfos->filter(function($item){
-            return $item->docOrderHeader->consigneeid == 'PDD';
+            return $item->docOrderHeader->consigneeid == 'PDD' || $item->docOrderHeader['h_edi_01'] == 'PDD';
         });
 
         return $items->map(function($item) {
@@ -40,8 +33,10 @@ class PDDDeliveryService implements DeliveryInterface
         })->toArray();
     }
 
-    public function getDelivery($item = null)
+    public function getDelivery($item)
     {
+
+
         return null;
     }
 
@@ -53,33 +48,4 @@ class PDDDeliveryService implements DeliveryInterface
         $img->save($path);
         return File::get($path);
     }
-
-    function processing(&$params)
-    {
-        // TODO 获取模板
-        $owner_query = Owner::query()->selectRaw('id')->where('code', $params['owner_code']);
-        $logistic_query = Logistic::query()->selectRaw('id')->where('code', $params['logistic_code']);
-        $item = OwnerLogisticPrintTemplate::query()->with('printTemplate')->where('owner_id', $owner_query)->where('logistic_id', $logistic_query)->first();
-        $item = $item->printTemplate;
-        $item->printTemplate;
-        $path = '';
-        $img = $this->getImage($params['base64'],$path);
-        $img = $this->draw(null,$item,$img);
-        $img->save($path);
-
-        $arr =  Cache::get('print-template-file-list') ?? [];
-
-        $arr[] = ['time' => Carbon::now(),'path' => $path];
-
-        Cache::put('print-template-file-list',$arr);
-
-        // TODO 将文件进行base64编码
-        if ($fp = fopen($path,"rp",0)){
-            $gambar = fread($fp,filesize($path));
-            fclose($fp);
-            $params['base64'] = chunk_split(base64_encode($gambar));
-        }
-        $params['is_process'] = true;
-        return $params;
-    }
 }

+ 6 - 5
app/Services/SFDeliveryService.php

@@ -17,7 +17,10 @@ class SFDeliveryService implements DeliveryInterface
     function getDeliveryInfo($OracleDocOrderDeliveryInfos): array
     {
         $items = $OracleDocOrderDeliveryInfos->filter(function($item){
-            return $item->docOrderHeader->consigneeid == 'SF';
+            $consigned = $item->docOrderHeader->consigneeid;
+            if (strpos($consigned,'SF') == 0 && !in_array($consigned,['SFSYQHD','SFTHQHD','SFQHD']))
+                return true;
+            return false;
         });
 
         return $items->map(function($item) {
@@ -37,7 +40,7 @@ class SFDeliveryService implements DeliveryInterface
         })->toArray();
     }
 
-    public function getBase64($item)
+    public function getBase64($item): string
     {
         $item = OwnerLogisticPrintTemplate::query()->with('printTemplate')->where('owner_id', function(Builder $query)use($item){
             $query->from("owners")->where("code",$item['owner_code']);
@@ -55,7 +58,5 @@ class SFDeliveryService implements DeliveryInterface
         return null;
     }
 
-    function processing(&$params)
-    {
-    }
+
 }

+ 25 - 21
app/Services/SFQHDDeliveryService.php

@@ -18,34 +18,38 @@ class SFQHDDeliveryService implements DeliveryInterface
 
     function getDeliveryInfo($logistic_number): array
     {
-        return OracleDOCOrderHeader::query()->whereIn('deliveryNo',$logistic_number)->where('ConsigneeId',"SFQHD")->where('SoStatus', '<>','90')->get()->map(function($item){
-            return [
-                // TODO 需要动态获取面单获取的组件 TYPE
-                'type' => 'SFQHD',
-                'task_id' => Str::uuid(),
-                'data' => '',
-                'component_type' => 'SFQHD',
-                'owner_code' => $item->customerid ?? '',
-                'logistic_code' => $item->userdefine1 ?? '',
-                'logistic_number' => $item['deliveryno'],
-                'delivery' => $this->getDelivery($item),
-                'base64' => $this->getBase64($item),
-            ];
-        })->toArray();
+        return OracleDOCOrderHeader::query()
+            ->whereIn('deliveryNo', $logistic_number)
+            ->whereIn('ConsigneeId', ["SFQHD",'SFSYQHD','SFTHQHD'])
+            ->where('SoStatus', '<>', '90')
+            ->get()
+            ->map(function ($item) {
+                return [
+                    // TODO 需要动态获取面单获取的组件 TYPE
+                    'type' => 'SFQHD',
+                    'task_id' => Str::uuid(),
+                    'data' => '',
+                    'component_type' => 'SFQHD',
+                    'owner_code' => $item->customerid ?? '',
+                    'logistic_code' => $item->userdefine1 ?? '',
+                    'logistic_number' => $item['deliveryno'],
+                    'delivery' => $this->getDelivery($item),
+                    'base64' => $this->getBase64($item),
+                ];
+            })->toArray();
     }
 
 
-
     public function getBase64($item)
     {
-        $item = OwnerLogisticPrintTemplate::query()->with('printTemplate')->where('owner_id', function(Builder $query)use($item){
-            $query->from("owners")->where("code",$item['owner_code']);
-        })->where('logistic_id', function(Builder $query)use($item){
-            $query->from("logistic")->where("code",$item['logistic_code']);
+        $item = OwnerLogisticPrintTemplate::query()->with('printTemplate')->where('owner_id', function (Builder $query) use ($item) {
+            $query->from("owners")->where("code", $item['owner_code']);
+        })->where('logistic_id', function (Builder $query) use ($item) {
+            $query->from("logistic")->where("code", $item['logistic_code']);
         })->first();
-        $image = $this->draw($item['delivery'],$item,null);
+        $image = $this->draw($item['delivery'], $item, null);
         $path = '';
-        $this->saveImage($image,$path);
+        $this->saveImage($image, $path);
         return $this->readImageBase64($path);
     }
 

+ 9 - 40
app/Services/TBDeliveryService.php

@@ -2,26 +2,20 @@
 
 namespace App\Services;
 
-use App\Logistic;
-use App\Owner;
-use App\OwnerLogisticPrintTemplate;
 use App\Services\Interfaces\DeliveryInterface;
-use App\Traits\DrawImage;
-use Illuminate\Support\Carbon;
-use Illuminate\Support\Facades\Cache;
+use App\Traits\DeliveryProcess;
 use Illuminate\Support\Str;
 
 class TBDeliveryService implements DeliveryInterface
 {
-    use DrawImage;
-
+    use DeliveryProcess;
     function getDeliveryInfo($OracleDocOrderDeliveryInfos): array
     {
-        $items = $OracleDocOrderDeliveryInfos->filter(function($item){
-            return $item->docOrderHeader->consigneeid == 'TB';
+        $items = $OracleDocOrderDeliveryInfos->filter(function ($item) {
+            return in_array($item->docOrderHeader->consigneeid,['TB','TMMK','TM']) || $item->docOrderheader['h_edi_01'] == '幼岚天猫超市';
         });
 
-        return $items->map(function($item) {
+        return $items->map(function ($item) {
             return [
                 // TODO 需要动态获取面单获取的组件 TYPE
                 'type' => 'CAINIAO',     // PDD 或 CAINIAO  动态
@@ -46,38 +40,13 @@ class TBDeliveryService implements DeliveryInterface
 
     function getDelivery($item)
     {
-        return null;
+//       $WaveDetail = $item->docOrderHeader->oracleDOCWaveDetail;
+        // 订单所在波次总数
+
     }
 
-    // 将图片上传并转为base64编码
-    function processing(&$params)
-    {
-        // TODO 获取模板
-        $owner_query = Owner::query()->selectRaw('id')->where('code', $params['owner_code']);
-        $logistic_query = Logistic::query()->selectRaw('id')->where('code', $params['logistic_code']);
-        $item = OwnerLogisticPrintTemplate::query()->with('printTemplate')->where('owner_id', $owner_query)->where('logistic_id', $logistic_query)->first();
-        $item = $item->printTemplate;
-        $item->printTemplate;
-        $path = '';
-        $img = $this->getImage($params['base64'],$path);
-        $img = $this->draw(null,$item,$img);
-        $img->save($path);
 
-        $arr = [];
-        if (Cache::has('print-template-file-list')){
-            $arr = Cache::get('print-template-file-list');
-        }
-        $arr[] = ['time' => Carbon::now(),'path' => $path];
-        Cache::put('print-template-file-list',$arr);
 
-        // TODO 将文件进行base64编码
-        if ($fp = fopen($path,"rp",0)){
-            $gambar = fread($fp,filesize($path));
-            fclose($fp);
-            $params['base64'] = chunk_split(base64_encode($gambar));
-        }
-        $params['is_process'] = true;
-        return $params;
-    }
+
 
 }

+ 276 - 0
app/Traits/DeliveryProcess.php

@@ -0,0 +1,276 @@
+<?php
+
+
+namespace App\Traits;
+
+
+use App\Logistic;
+use App\OracleDOCOrderDetail;
+use App\OracleDOCOrderHeader;
+use App\OracleDOCWaveDetails;
+use App\Owner;
+use App\OwnerLogisticPrintTemplate;
+use Illuminate\Support\Carbon;
+use Illuminate\Support\Facades\Cache;
+
+trait DeliveryProcess
+{
+    use DrawImage;
+
+    // 将 base64编码 转 图片 进行修改并保存,后把修改保存的图片转为 base64编码 返回
+    function processing(&$params)
+    {
+        // TODO 获取模板
+        $owner_query = Owner::query()->selectRaw('id')->where('code', $params['owner_code']);
+        $logistic_query = Logistic::query()->selectRaw('id')->where('code', $params['logistic_code']);
+        $item = OwnerLogisticPrintTemplate::query()->with('printTemplate')->where('owner_id', $owner_query)->where('logistic_id', $logistic_query)->first();
+        $item = $item->printTemplate;
+        $item->printTemplate;
+        $path = '';
+        $img = $this->getImage($params['base64'], $path);
+        $img = $this->draw(null, $item, $img);
+        $img->save($path);
+
+        $arr = [];
+        if (Cache::has('print-template-file-list')) {
+            $arr = Cache::get('print-template-file-list');
+        }
+
+        $arr[] = ['time' => Carbon::now(), 'path' => $path];
+        Cache::put('print-template-file-list', $arr);
+
+        // TODO 将文件进行base64编码
+        if ($fp = fopen($path, "rp", 0)) {
+            $gambar = fread($fp, filesize($path));
+            fclose($fp);
+            $params['base64'] = chunk_split(base64_encode($gambar));
+        }
+        $params['is_process'] = true;
+        return $params;
+    }
+
+    // $item
+    // 将按条件转化为
+    function getDeliveryInfo($item, $type): ?array
+    {
+        if (in_array($type, ['TB', '', 'PDD', 'SF'])) return $this->getDocOrderDeliveryInfo($item);
+        else if (in_array($type, ['JD', 'SFQHD'])) return $this->getDocOrderInfo($item);
+        return [];
+    }
+
+    // TB PDD
+    function getDocOrderDeliveryInfo($docOrderDelivery)
+    {
+        // 承运商
+        $logistic_name = (function () use ($docOrderDelivery) {
+            $logistic = Logistic::query()->where('code', $docOrderDelivery->docOrderHeader['carrierid'])->first();
+            return $logistic['name'] ?? '';
+        })();
+        // 波次
+        $wave_count = (function () use ($docOrderDelivery) {
+            return OracleDOCWaveDetails::query()->where('waveno', $docOrderDelivery->docOrderHeader['waveno'])->count();
+        });
+
+
+        // 订单商品总数
+        $sum = (function () use ($docOrderDelivery) {
+            return OracleDOCOrderDetail::query()->where('orderno', $docOrderDelivery->docOrderHeader['ordenro'])->sum('qtyAllocated_each');
+        });
+
+        // 备注
+        list($remark1, $remark2, $remark3) = (function () use ($docOrderDelivery) {
+            switch ($docOrderDelivery->docOrderHeader['customerid'] ?? '') {
+                case 'BOAO':
+                    return ['易碎、易融', '不可放置自提柜!', '需当面签收!'];
+                case 'LINGFEI':
+                    return ['快递小哥送货路远,风吹日晒注意安全,', '见到小主代问声好,你我共建文明家园!', ''];
+                case 'WEIXI1':
+                    return ['售后电话13816946227', '', ''];
+                default:
+                    return ['', '', ''];
+            }
+        })();
+
+        // 大头笔
+        $H_EDI_15 = $docOrderDelivery->docOrderHeader['H_EDI_15'];
+
+        // 仓库
+        $wh = (function () use ($docOrderDelivery) {
+            $customerid = $docOrderDelivery->docOrderHeader['customerid'] ?? '';
+            if (strstr('泗砖', $customerid)) return '泗砖宝石仓';
+            if (strstr('武乡', $customerid)) return '武乡宝石仓';
+            if (strstr('九干', $customerid)) return '九干宝石仓';
+            return '宝时仓';
+        });
+
+        // whaddr 仓库地址
+        $whaddr = (function () use ($docOrderDelivery) {
+            $peo = $docOrderDelivery->docOrderHeader->oracleBASCustomer['address1'];
+            if (strstr($peo, '九干')) return '上海上海市松江区九干路1300号';
+            if (strstr($peo, '武乡')) return '上海嘉定区徐行镇武乡路9号';
+            if (strstr($peo, '泗砖')) return '上海嘉定区徐行镇武乡路9号';
+            return '宝时仓';
+        });
+
+        $consigneeid = $docOrderDelivery->docOrderHeader['consigneeid'];
+
+        // 城镇 收货
+        $raddr = (function () use ($docOrderDelivery) {
+            return ($docOrderHeader['c_province'] ?? '') . '  ' . ($docOrderHeader['c_city'] ?? '') . '  ' . ($docOrderHeader['c_address2'] ?? '');
+        })();
+
+        // 韵达特殊处理
+        $yd = (function () use ($docOrderDelivery) {
+            $carrierid = $docOrderDelivery->docOrderHeader['carrierid'];
+            if ($carrierid !== "YUNDA") return '';
+            if (in_array($carrierid, ['上海', '上海市'])) return 'A';
+            if (in_array($carrierid, ['江苏', '江苏省', '浙江', '浙江省'])) return 'B';
+            if (in_array($carrierid, ['北京', '北京市', '安徽', '安徽省', '山东', '河南', '江西', '湖南', '湖北', '山东省', '河南省', '江西省', '湖南省', '湖北省'])) return 'C';
+            if (in_array($carrierid, [
+                '上海', '上海市', '江苏', '江苏省', '浙江', '浙江省', '北京', '北京市', '安徽', '安徽省', '山东', '河南', '江西', '湖南', '湖北', '山东省', '河南省', '江西省', '湖南省', '湖北省'
+            ])) return 'D';
+            return '';
+        });
+
+        return [
+            'waveno' => $docOrderDelivery->docOrderHeader['owner'],         // 波次
+            'print_sum' => '总打印数' . ($count ?? 0) . '行号#' . $docOrderDelivery->docOrderHeader->oracleDOCWaveDetail['seqno'], //  订单所处波次的序号
+            'count' => $sum,                         // 订单商品总数
+            'remark1' => $remark1,
+            'remark2' => $remark2,
+            'remark3' => $remark3,
+            'wh' => $wh,
+            'whaddr' => $whaddr,                    // 仓库地址
+            'deliveryno' => $item->docOrderHeader['deliveryno'] ?? $docOrderDelivery->docOrderHeader['soreference5'],  // 快递单号
+            'raddr' => $raddr,                      // 收货地址
+            'yd' => $yd,                            // 韵达特殊处理
+        ];
+    }
+
+    // SF SFQHD JD
+    function getDocOrderInfo($docOrderHeader)
+    {
+
+        $c_contact = $docOrderHeader['c_contact'];
+        $c_province = $docOrderHeader['c_province'];
+        $c_city = $docOrderHeader['c_city'];
+        $c_address2 = $docOrderHeader['c_address2'] ?? $docOrderHeader['c_district'];
+        $c_tel1 = $docOrderHeader['c_tel1'] ?? $docOrderHeader['c_tel2'];
+        $c_tel1 = $docOrderHeader['c_tel2'];
+        $issuepartyname = $docOrderHeader['issuepartyname'] ?? '宝时云仓';
+
+        $tel = (function () use ($docOrderHeader) {
+            if (in_array($docOrderHeader['customerid'], ['HANDA', 'BAIPING', 'JINBAOBEI', 'DUOCHOU', 'YUNKAI']) &&
+                in_array($docOrderHeader['issuepartyname'], ['私密渠道A', '私密渠道BP', '金宝贝启蒙', 'ATSUGI厚木', '初品公司'])) {
+                return '18616839461';
+            }
+            if (in_array($docOrderHeader['customerid'], ['HEDI']) &&
+                in_array($docOrderHeader['issuepartyname'], ['马丁'])) {
+                return 18811144744;
+            }
+            return '13761413262';
+        })();
+
+        $bas_customer = $docOrderHeader->bas_customer;
+
+        // whaddr 仓库地址
+        $whaddr = (function () use ($bas_customer) {
+            $address = $bas_customer['address1'];
+            if (strstr($address, '泗砖')) return '上海上海市松江区泗砖公路351号';
+            if (strstr($address, '武乡')) return '上海嘉定区徐行镇武乡路9号';
+            if (strstr($address, '九干')) return '上海上海市松江区九干路1300号';
+            return '';
+        })();
+
+        // $ordercount 订单波次的订单总数
+        $ordercount = (function () use ($docOrderHeader) {
+            return OracleDOCWaveDetails::query()->where('waveno', $docOrderHeader['waveno'])->count();
+        })();
+
+        // orderseq 订单在波次里的序号
+        $orderseq = (function () use ($docOrderHeader) {
+            return $docOrderHeader->oracleDOCWaveDetail->seqno ?? '';
+        })();
+
+        // seqno
+        $seqno = (function () use ($docOrderHeader, $orderseq) {
+            $count = OracleDOCWaveDetails::query()->where('waveno', $docOrderHeader['waveno'])->count();
+            return '总打印数' . ($count) . " 行号#" . $orderseq;
+        })();
+
+        $orderno = $docOrderHeader['orderno'];
+        // 重量
+        $grossweight = $docOrderHeader->oracleDOCWaveDetail['grossweight'] ?? '';
+
+        // 备注
+        list($remark1, $remark2, $remark3) = (function () use ($docOrderHeader) {
+            switch ($docOrderHeader['customerid'] ?? '') {
+                case 'BOAO':
+                    return ['易碎、易融', '不可放置自提柜!', '需当面签收!'];
+                case 'LINGFEI':
+                    return ['快递小哥送货路远,风吹日晒注意安全,', '见到小主代问声好,你我共建文明家园!', ''];
+                case 'WEIXI1':
+                    return ['售后电话13816946227', '', ''];
+                default:
+                    return ['', '', ''];
+            }
+        })();
+
+        $number = (function () use ($docOrderHeader) {
+            if (in_array($docOrderHeader['userdefine1'], ['SFJR', 'SFJRDF'])) return '1';
+
+            if (in_array($docOrderHeader['userdefine1'], ['SFSY', 'SFSYDF', 'SFSYQHD'])) return '4';
+
+            if (in_array($docOrderHeader['userdefine1'], ['SFTH', 'SFTHQHD'])
+                && in_array($docOrderHeader['c_province'], ['西藏', '西藏自治区']))
+                return '4';
+
+            if (in_array($docOrderHeader['userdefine1'], ['SFTH', 'SFTHQHD'])
+                && !in_array($docOrderHeader['c_province'], ['西藏', '西藏自治区']))
+                return '68';
+
+            if ($docOrderHeader['userdefine1'] == 'SFTHDF'
+                && in_array($docOrderHeader['c_province'], ['上海', '上海市', '江苏', '江苏省', '浙江', '浙江省', '安徽省', '安徽', '西藏', '西藏自治区']))
+                return '4';
+
+            if ($docOrderHeader['userdefine1'] == 'SFTHDF'
+                && !in_array($docOrderHeader['c_province'], ['上海', '上海市', '江苏', '江苏省', '浙江', '浙江省', '安徽省', '安徽', '西藏', '西藏自治区']))
+                return '6';
+        })();
+
+        // js 结算方式
+        $js = (function () use ($docOrderHeader) {
+            if (in_array($docOrderHeader['userdefine1'], ['SFSYDF', 'SFTHDF'])) return "到付";
+            else return '季付月结';
+        })();
+
+        //
+        $jfyj = (function()use($docOrderHeader){
+            $base_customer = $docOrderHeader['oracleBASCustomer'];
+            if (in_array($docOrderHeader['userdefine1'],['SFSY','SFSYQHD','SFJR'])) return '寄付月结:0210188294';
+
+            if (in_array($docOrderHeader['userdefine1'],['SFTH','SFTHQHD'])){
+                if ($base_customer['udf3'] == '货安') return '寄付月结:0210321137';
+                if ($base_customer['udf3'] != '货安') return '寄付月结:0218877996';
+            }
+
+            if (in_array($docOrderHeader['userdefine1'],['SFTH','SFTHQHD'])) return  '到付';
+            return '寄付月结:0210188294';
+        })();
+
+
+        return [
+            'waveno' => $docOrderHeader['owner'],
+            'print_sum' => '',
+            'count' => '',
+            'remark1' => $remark1,
+            'remark2' => $remark2,
+            'remark3' => $remark3,
+            'wh' => '',
+            'whaddr' => '',
+            'deliveryno' => '',
+            'raddr' => '',
+            'yd' => '',
+        ];
+    }
+}