Merge pull request '小组公司详情页逻辑修改' (#77) from zhangwei into dev

Reviewed-on: #77
This commit is contained in:
weiz 2023-10-12 17:34:31 +08:00
commit eb59050d11

View File

@ -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,38 +412,25 @@ 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'];
//获取租赁车俩
$rentCar = VehicleRent::where('rent_company_id',$company['id'])->where('status',2)->findOrEmpty();
if(!$rentCar->isEmpty()){
$rentCar['mileage'] = 0;
$rentCar['company'] = $company;
$rentCar['contract'] = VehicleContract::field('id,contract_no,contract_url,file,status,create_time')->where('id',$rentCar['contract_id'])->findOrEmpty();
return $this->success('请求成功',$rentCar->toArray());
}else{
$vehicleContract = VehicleContract::where('company_b_id',$company['id'])->where('type','<>',2)->order('id desc')->findOrEmpty();
//返回数据
return $this->success('请求成功',$vehicleContract->toArray());
}
//返回数据
return $this->success('请求成功',$vehicleContract->toArray());
}
//车辆详情
@ -757,5 +744,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');
}
}
}