diff --git a/app/api/controller/VehicleController.php b/app/api/controller/VehicleController.php
index 972716712..05bce77d7 100644
--- a/app/api/controller/VehicleController.php
+++ b/app/api/controller/VehicleController.php
@@ -238,7 +238,7 @@ class VehicleController extends BaseApiController
             return $this->fail('当前镇街公司未签约');
         }
         //判断是否申请过
-        $vehicleContract = VehicleContract::where('company_b_id',$this->userInfo['company_id'])->where('type','<>',2)->whereNotIn('status','4,5,6')->find();
+        $vehicleContract = VehicleContract::where('company_b_id',$this->userInfo['company_id'])->whereNotIn('type','2,3')->whereNotIn('status','4,5,6')->find();
         if(!empty($vehicleContract)){
             return $this->fail('请勿重复申请');
         }
@@ -412,60 +412,31 @@ class VehicleController extends BaseApiController
 
     public function villageCompanyIndex() {
         //获取公司信息
-        $company = Company::field('id,company_type,province,city,area,street,village,brigade')->where('id',$this->userInfo['company_id'])->find()->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name','brigade_name']);
+        $company = Company::field('id,master_name as user_name,master_phone as user_phone,company_name,company_type,province,city,area,street,village,brigade')->where('id',$this->userInfo['company_id'])->find()->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name','brigade_name']);
         if(empty($company)){
             return $this->fail('数据错误');
         }
         if($company['company_type'] != 18 ){
             return $this->fail('非小组公司不能访问');
         }
-        //获取申请信息
+        //获取签约合同
         $vehicleContract = VehicleContract::where('company_b_id',$company['id'])->where('type','<>',2)->order('id desc')->findOrEmpty();
-        if($vehicleContract['status'] == 3){
-            if(!empty($vehicleContract['cars_info'])){
-                $vehicleContract['cars_info'] = json_decode($vehicleContract['cars_info'],true);
-                if(!empty($vehicleContract['cars_info'])){
-                    $arr = $vehicleContract['cars_info'];
-                    $arr['mileage'] = 0;
-                    $position = curl_get(env('project.logistic_domain').'/api/getCarLocal?car_id='.$arr['id']);
-                    if($position && $position['code'] == 1){
-                        $arr['lon'] = $position['data']['lon'];
-                        $arr['lat'] = $position['data']['lat'];
-                    }
-                    $vehicleContract['cars_info'] = $arr;
-                }
-            }
-            $vehicleContract['province'] = $company['province_name'];
-            $vehicleContract['city'] = $company['city_name'];
-            $vehicleContract['area'] = $company['area_name'];
-            $vehicleContract['street'] = $company['street_name'];
-            $vehicleContract['village'] = $company['village_name'];
-            $vehicleContract['brigade'] = $company['brigade_name'];
-        }
-        //返回数据
         return $this->success('请求成功',$vehicleContract->toArray());
     }
 
     //车辆详情
     public function vehicleInfo() {
-        //获取参数
-        $carId = $this->request->get('car_id');
-        if(empty($carId)){
-            return $this->fail('缺少必要参数');
-        }
         //获取数据
-        $data = VehicleRent::where('car_id',$carId)->find();
-        if(empty($data)){
-            return $this->fail('数据错误');
+        $data = VehicleRent::where('rent_company_id',$this->userInfo['company_id'])->where('status',2)->findOrEmpty();
+        if($data->isEmpty()){
+            return $this->fail('数据不存在');
         }
         $data['mileage'] = 0;
-        if($data['status'] == 2){
-            $data['company'] =  Company::field('company_name,master_name as user_name,master_phone as user_phone,province,city,area,street,village,brigade')->where('id',$data['rent_company_id'])->find()->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name','brigade_name']);
-            //获取合同
-            $data['contract'] = VehicleContract::field('id,contract_no,contract_url,file,status,create_time,update_time')->where('id',$data['contract_id'])->findOrEmpty();
-        }
+        $data['company'] =  Company::field('company_name,master_name as user_name,master_phone as user_phone,province,city,area,street,village,brigade')->where('id',$data['rent_company_id'])->find()->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name','brigade_name']);
+        //获取合同
+        $data['contract'] = VehicleContract::field('id,contract_no,contract_url,file,status,create_time,update_time')->where('id',$data['contract_id'])->findOrEmpty();
         //当前坐标位置
-        $position = curl_get(env('project.logistic_domain').'/api/getCarLocal?car_id='.$carId);
+        $position = curl_get(env('project.logistic_domain').'/api/getCarLocal?car_id='.$data['car_id']);
         if($position && $position['code'] == 1){
             $data['position'] = $position['data'];
         }else{
@@ -757,5 +728,32 @@ class VehicleController extends BaseApiController
             VehicleRent::where('car_id','in',$car_ids)->update(['status'=>1]);
             return $this->success('合同发起成功,等待审核 from task');
         }
+        //如果有租赁车俩和上传自有车辆,但没有购买镇街公司租赁的车辆 则先向镇街公司发起解约合同
+        if(!$xzRentCars->isEmpty() && $zjRentCars->isEmpty()){
+            //获取自有车辆或以租赁车辆信息
+            //生成本地解约合同
+            VehicleContract::create([
+                'contract_no' => time(),
+                'contract_logistic_id' => 0,
+                'company_a_name' => $zjCompany['company_name'],
+                'company_a_code' => $zjCompany['organization_code'],
+                'company_a_user' => $zjCompany['master_name'],
+                'company_a_phone' => $zjCompany['master_phone'],
+                'company_a_email' => $zjCompany['master_email'],
+                'company_b_id' => $xzCompany['id'],
+                'company_b_name' => $xzCompany['company_name'],
+                'company_b_code' => $xzCompany['organization_code'],
+                'company_b_user' => $xzCompany['master_name'],
+                'company_b_phone' => $xzCompany['master_phone'],
+                'company_b_email' => $xzCompany['master_email'],
+                'num' =>1,
+                'cars_info' => json_encode($cars),
+                'type' => 2,
+                'status' => 0,
+                'create_time' => time(),
+                'update_time' => time(),
+            ]);
+            return $this->success('合同发起成功,等待审核 from task');
+        }
     }
 }
\ No newline at end of file