gogs 1 year ago
parent
commit
90c11d4603

+ 53 - 0
app/Http/Controllers/Api/ConstructionController.php

@@ -82,4 +82,57 @@ class ConstructionController extends BaseController
             return $this->json_return(201,$data);
         }
     }
+
+
+    public function deliveryNoteList(Request $request)
+    {
+        $service = new ConstructionService();
+        list($status,$data) = $service->deliveryNoteList($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+    public function deliveryNoteDetail(Request $request)
+    {
+        $service = new ConstructionService();
+        list($status,$data) = $service->deliveryNoteDetail($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+
+    public function deliveryNoteEdit(Request $request)
+    {
+        $service = new ConstructionService();
+        $userData = $request->userData->toArray();
+        list($status,$data) = $service->deliveryNoteEdit($request->all(),$userData);
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+    public function deliveryNoteDel(Request $request)
+    {
+        $service = new ConstructionService();
+        list($status,$data) = $service->deliveryNoteList($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+
 }

+ 49 - 0
app/Model/DeliveryNote.php

@@ -0,0 +1,49 @@
+<?php
+
+namespace App\Model;
+
+use Illuminate\Database\Eloquent\Model;
+
+/**
+ * 交车单
+ * Class Unit
+ * @package App\Models
+ */
+class DeliveryNote extends Model
+{
+    protected $table = "delivery_note"; //指定表
+    const CREATED_AT = 'crt_time';
+    const UPDATED_AT = 'upd_time';
+    protected $dateFormat = 'U';
+
+    public function setBreakAttribute($value)
+    {
+        $this->attributes['break'] = json_encode($value);
+    }
+
+    public function getBreakAttribute($value)
+    {
+        return json_decode($value, true);
+    }
+
+    public function setBreakMarkAttribute($value)
+    {
+        $this->attributes['break_mark'] = json_encode($value);
+    }
+
+    public function getBreakMarkAttribute($value)
+    {
+        return json_decode($value, true);
+    }
+
+    public function setProjectIdAttribute($value)
+    {
+        $this->attributes['project_id'] = json_encode($value);
+    }
+
+    public function getProjectIdAttribute($value)
+    {
+        return json_decode($value, true);
+    }
+
+}

+ 52 - 0
app/Service/ConstructionService.php

@@ -7,6 +7,7 @@ use App\Model\Construction;
 use App\Model\ConstructionInfo;
 use App\Model\ConstructionProductInfo;
 use App\Model\Customer;
+use App\Model\DeliveryNote;
 use App\Model\Depart;
 use App\Model\Employee;
 use App\Model\SalesOrder;
@@ -747,4 +748,55 @@ class ConstructionService extends Service
 
         return $sales_order_product;
     }
+
+    public function deliveryNoteEdit($data,$user){
+        $id = $user;
+        if(isset($data['id'])) {
+            $model = DeliveryNote::where('id',$data['id'])->first();
+            if($model->img3) return [false,'客户已签字,无法编辑!'];
+        }
+
+        else {
+            $model = new DeliveryNote();
+            $model->crt_id = $id;
+        }
+        $model->upd_id = $id;
+        $model->construction_order_number = $data['construction_order_number'] ?? '';
+        $model->start_time = $data['start_time'] ?? '';
+        $model->end_time = $data['end_time'] ?? '';
+        $model->vin_no = $data['vin_no'] ?? '';
+        $model->system = $data['system'] ?? '';
+        $model->mile = $data['mile'] ?? '';
+        $model->is_wait = $data['is_wait'] ?? '';
+        $model->customer_name = $data['customer_name'] ?? '';
+        $model->customer_mobile = $data['customer_mobile'] ?? '';
+        $model->sale_man = $data['sale_man'] ?? '';
+        $model->install_man = $data['install_man'] ?? '';
+        $model->is_brash = $data['is_brash'] ?? '';
+        $model->is_chong = $data['is_chong'] ?? '';
+        $model->service_mark = $data['service_mark'] ?? '';
+        $model->mark = $data['mark'] ?? '';
+        $model->break = $data['break'] ??[];
+        $model->break_mark = $data['break_mark'] ??[];
+        $model->project_id = $data['project_id'] ?? [];
+        $model->other_project_mark = $data['other_project_mark'] ?? '';
+        $model->img = $data['img'] ?? '';
+        $model->img1 = $data['img1'] ?? '';
+        $model->img2 = $data['img2'] ?? '';
+        $model->img3 = $data['img3'] ?? '';
+
+        $model->save();
+
+        return [true,'保存成功!'];
+
+
+
+    }
+
+    public function deliveryNoteList($data)
+    {
+        $list = DeliveryNote::where('del_time',0);
+        $list = $this->limit($list,'*',$data);
+        return [true,$list];
+    }
 }

+ 6 - 0
routes/api.php

@@ -193,6 +193,12 @@ Route::group(['middleware'=> ['checkLogin']],function ($route){
     $route->any('constructionAdd', 'Api\ConstructionController@constructionAdd');
     $route->any('constructionDel', 'Api\ConstructionController@constructionDel');
 
+    //交车单
+    $route->any('deliveryNoteList', 'Api\ConstructionController@deliveryNoteList');
+    $route->any('deliveryNoteDetail', 'Api\ConstructionController@deliveryNoteDetail');
+    $route->any('deliveryNoteEdit', 'Api\ConstructionController@deliveryNoteEdit');
+    $route->any('deliveryNoteDel', 'Api\ConstructionController@deliveryNoteDel');
+
     //退换货
     $route->any('ReturnExchangeOrderList', 'Api\ReturnExchangeOrderController@ReturnExchangeOrderList');
     $route->any('ReturnExchangeOrderEdit', 'Api\ReturnExchangeOrderController@ReturnExchangeOrderEdit');

+ 4 - 0
routes/wx.php

@@ -45,6 +45,10 @@ Route::group(['middleware'=> ['checkWx']],function ($route){
     $route->any('constructionDetail', 'Api\ConstructionController@constructionDetail');
     $route->any('constructionAdd', 'Api\ConstructionController@constructionAdd');
     $route->any('constructionDel', 'Api\ConstructionController@constructionDel');
+    $route->any('deliveryNoteList', 'Api\ConstructionController@deliveryNoteList');
+    $route->any('deliveryNoteDetail', 'Api\ConstructionController@deliveryNoteDetail');
+    $route->any('deliveryNoteEdit', 'Api\ConstructionController@deliveryNoteEdit');
+    $route->any('deliveryNoteDel', 'Api\ConstructionController@deliveryNoteDel');
 
     $route->any('employeeList', 'Api\EmployeeController@employeeList');
     $route->any('departList', 'Api\EmployeeController@departList');