Przeglądaj źródła

运输模块FLUX接口

Zhouzhendong 6 lat temu
rodzic
commit
fceffe44b0

+ 1 - 1
app/Http/Controllers/CarriersController.php

@@ -70,7 +70,7 @@ class CarriersController extends Controller
         if ($id){$name=$id;};
         $validator=Validator::make($request->input(),[
             'Carrier.name'=>['max:50','required',isset($name)?"unique:carriers,name,$name":'unique:carriers,name'],
-            'Carrier.mobile'=>['required','regex:/^(\d{7,11})|(1[3|4|5|7|8][0-9]\d{4,8})$/','unique:carriers,name'],
+            'Carrier.mobile'=>['required','regex:/^(\d{7,11})|(1[3|4|5|7|8][0-9]\d{4,8})$/',isset($name)?"unique:carriers,mobile,$name":'unique:carriers,mobile'],
             'Carrier.delivery_fee'=>'nullable|min:0|numeric|max:999999',
         ],[
             'digits_between'=>':attribute 最小一位,最大五十位',

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

@@ -126,28 +126,7 @@ class TestController extends Controller
     }
 
     public function test1(){
-        $a=OracleBas_SKU::limit(10)->get();
-        dd($a);
-        /*$pdo= new PDO("oci:dbname=106.14.148.85:1521/orcl","viewer","viewer");
-dd($pdo);*/
-        $db="(DESCRIPTION =
-        (ADDRESS_LIST =
-          (ADDRESS = (PROTOCOL = TCP)(HOST = 106.14.148.85)(PORT = 1521))
-        )
-        (CONNECT_DATA =
-          (SERVER = DEDICATED)
-          (SERVICE_NAME = orcl)
-        ))";
-        $conn = oci_connect('viewer', 'viewer', '106.14.148.85:1521/orcl');
-        if (!$conn) {
-            $e = oci_error();
-            print htmlentities($e['message']);
-            exit;
-        }else {
-            echo "连接oracle成功!";
-        }
-        $basSku=oci_parse($conn, 'select * from "OracleBas_SKU"');
-        //$basSku=$conn->select('select * from "OracleBas_SKU"');
-        dd(oci_execute($basSku));
+        $type=config('bszf.ZFList');
+        dd(isset($type['ddd']));
     }
 }

+ 11 - 8
app/Http/Controllers/WaybillsController.php

@@ -3,6 +3,7 @@
 namespace App\Http\Controllers;
 
 
+use App\Http\Controllers\Api\thirdPart\flux\WaybillController;
 use App\WaybillAuditLog;
 use App\WaybillPriceModel;
 use App\Carrier;
@@ -25,7 +26,7 @@ use Ramsey\Uuid\Uuid;
 
 class WaybillsController extends Controller
 {
-    //超15天精确查询抽离 cloumn前提:数据库字段名必须与request内字段名一致
+    //超15天精确查询抽离 column前提:数据库字段名必须与request内字段名一致
     public function preciseQuery(string $column,Request $request,$waybills){
         $today=Carbon::now()->subDays(15);
         $waybillsTem=clone $waybills;
@@ -85,7 +86,7 @@ class WaybillsController extends Controller
         if(!Gate::allows('运输管理-查询')){ return redirect(url('/'));  }
         $data=$request->input();
         if ($data != null ) {
-            $waybills=Waybill::with(['owner', 'waybillAuditLogs' => function ($query) {
+            $waybills=Waybill::with(['owner','wmsCommodities','waybillAuditLogs' => function ($query) {
                 return $query->with('user');
             }])->orderBy('id','DESC');
             $waybills=$this->conditionQuery($request,$waybills);
@@ -93,13 +94,12 @@ class WaybillsController extends Controller
             $owners = Owner::get();
             return view('waybill.index', ['waybills' => $waybills, 'carriers' => $carries, 'owners' => $owners,'filterData'=>$data,'uriType'=>'']);
         } else {
-            $waybills = Waybill::with(['owner', 'waybillAuditLogs' => function ($query) {
+            $waybills = Waybill::with(['owner','wmsCommodities','waybillAuditLogs' => function ($query) {
                 return $query->with('user');
             }])->orderBy('id', 'DESC')->paginate(50);
             $carries = Carrier::get();
             $owners = Owner::get();
             return view('waybill.index', ['waybills' => $waybills, 'carriers' => $carries, 'owners' => $owners,'filterData'=>$data,'uriType'=>'']);
-
         }
     }
 
@@ -107,7 +107,7 @@ class WaybillsController extends Controller
         if(!Gate::allows('运输管理-查询')){ return redirect(url('/'));  }
         $data=$request->input();
         if ($data != null ) {
-            $waybills=Waybill::with(['owner', 'waybillAuditLogs' => function ($query) {
+            $waybills=Waybill::with(['owner','wmsCommodities', 'waybillAuditLogs' => function ($query) {
                 return $query->with('user');
             }])->orderBy('id','DESC')->where('type','直发车');
             $waybills=$this->conditionQuery($request,$waybills);
@@ -115,7 +115,7 @@ class WaybillsController extends Controller
             $owners = Owner::get();
             return view('waybill.index', ['waybills' => $waybills, 'carriers' => $carries, 'owners' => $owners,'filterData'=>$data,'uriType'=>'ZF']);
         } else {
-            $waybills = Waybill::with(['owner', 'waybillAuditLogs' => function ($query) {
+            $waybills = Waybill::with(['owner','wmsCommodities', 'waybillAuditLogs' => function ($query) {
                 return $query->with('user');
             }])->where('type','直发车')->orderBy('id', 'DESC')->paginate(50);
             $carries = Carrier::get();
@@ -129,7 +129,7 @@ class WaybillsController extends Controller
         if(!Gate::allows('运输管理-查询')){ return redirect(url('/'));  }
         $data=$request->input();
         if ($data != null ) {
-            $waybills=Waybill::with(['owner', 'waybillAuditLogs' => function ($query) {
+            $waybills=Waybill::with(['owner','wmsCommodities', 'waybillAuditLogs' => function ($query) {
                 return $query->with('user');
             }])->orderBy('id','DESC')->where('type','专线');
             $waybills=$this->conditionQuery($request,$waybills);
@@ -137,7 +137,7 @@ class WaybillsController extends Controller
             $owners = Owner::get();
             return view('waybill.index', ['waybills' => $waybills, 'carriers' => $carries, 'owners' => $owners,'filterData'=>$data,'uriType'=>'ZX']);
         } else {
-            $waybills = Waybill::with(['owner', 'waybillAuditLogs' => function ($query) {
+            $waybills = Waybill::with(['owner','wmsCommodities', 'waybillAuditLogs' => function ($query) {
                 return $query->with('user');
             }])->where('type','专线')->orderBy('id', 'DESC')->paginate(50);
             $carries = Carrier::get();
@@ -521,6 +521,9 @@ class WaybillsController extends Controller
                     'waybill_id'=>$id,
                     'json_content'=>$waybillPayoffJson,
                 ]);
+                //回传FLUX
+                $FLUXWaybillController=new WaybillController();
+                $FLUXWaybillController->accomplishToWMS($waybill);
             }else{
                 $waybill->status='无模型';
                 $result=$waybill->save();

+ 29 - 0
app/Http/Controllers/api/thirdPart/flux/WaybillController.php

@@ -2,13 +2,17 @@
 
 namespace App\Http\Controllers\Api\thirdPart\flux;
 
+use App\Carrier;
+use App\City;
 use App\Http\Controllers\Controller;
+use App\Owner;
 use App\Waybill;
 use App\WMSWaybill;
 use App\WMSWaybillOrder;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Auth;
 use Illuminate\Support\Facades\Validator;
+use Ramsey\Uuid\Uuid;
 use Zttp\Zttp;
 
 class WaybillController extends Controller
@@ -41,6 +45,31 @@ class WaybillController extends Controller
                         ->setEncodingOptions(JSON_UNESCAPED_UNICODE);
                 }
             }
+            $owner=Owner::where('code',$receiveInputting->CustomerID)->first();
+            if (!$owner){$owner=new Owner(['name'=>$receiveInputting->CustomerID,'code'=>$receiveInputting->CustomerID]);$owner->save();}
+            $city=City::where('name',$receiveInputting->C_City)->first();
+            $zfCar=config('bszf.ZFList');
+            $waybill=new Waybill([
+                'type'=>isset($zfCar[$receiveInputting->CarrierID])&&$zfCar[$receiveInputting->CarrierID]?"直发车":"专线",
+                'waybill_number'=>Uuid::uuid1(),
+                'owner_id'=>$owner->id,
+                'wms_bill_number'=>$receiveInputting->OrderNo,
+                'origination'=>"上海市松江区泗砖路351号宝时松江仓",
+                'destination'=>$receiveInputting->C_Address1,
+                'recipient'=>$receiveInputting->ConsigneeName,
+                'recipient_mobile'=>$receiveInputting->C_Tel,
+                'destination_city_id'=>$city->id,
+            ]);
+            $waybill->save();
+            if ($waybill->type=='直发车'){
+                $waybill_number='BSZF'.date ("ymd").str_pad($waybill->id>99999?$waybill->id%99999:$waybill->id,4,"0",STR_PAD_LEFT);
+                $waybill->waybill_number=$waybill_number;
+                $waybill->update();
+            }else{
+                $waybill_number='BSZX'.date ("ymd").str_pad($waybill->id>99999?$waybill->id%99999:$waybill->id,4,"0",STR_PAD_LEFT);
+                $waybill->waybill_number=$waybill_number;
+                $waybill->update();
+            }
         }
         return response()->json(['response'=>['return'=>['returnFlag'=>'1','returnCode'=>'0000','returnDesc'=>'正确接收','resultInfo'=>'']]])
             ->setEncodingOptions(JSON_UNESCAPED_UNICODE);

+ 3 - 0
app/Waybill.php

@@ -38,6 +38,9 @@ class Waybill extends Model
     public function destination_city(){
         return $this->belongsTo('App\City','destination_city_id','id');
     }
+    public function wmsCommodities(){
+        return $this->hasMany('App\WMSWaybillOrder','OrderNo','wms_bill_number');
+    }
 
 
     public function warehouse_weight_unit(){