diff --git a/app/Models/Order.php b/app/Models/Order.php index 19a772b..d46bf78 100644 --- a/app/Models/Order.php +++ b/app/Models/Order.php @@ -10,7 +10,7 @@ use Log; class Order extends BaseModel { - use HasComments; + use HasComments; const ORDER_PRICE = 20000; @@ -83,11 +83,12 @@ class Order extends BaseModel public function agency() { - return $this->belongsTo(Partner::class,'agency_id','id'); + return $this->belongsTo(Partner::class, 'agency_id', 'id'); } - public function service_role(){ - return $this->hasMany(ServiceRoleOrder::class,'order_id','id'); + public function service_role() + { + return $this->hasMany(ServiceRoleOrder::class, 'order_id', 'id'); } public function scheme() { @@ -101,12 +102,12 @@ class Order extends BaseModel public function asginSigner() { - return $this->hasOne(AsignSigner::class, 'order_id', 'id')->whereIn('status', [0,1,2]); + return $this->hasOne(AsignSigner::class, 'order_id', 'id')->whereIn('status', [0, 1, 2]); } public function asginContract() { - return $this->hasOne(AsignContract::class, 'order_id', 'id')->whereIn('status', [0,1,2]); + return $this->hasOne(AsignContract::class, 'order_id', 'id')->whereIn('status', [0, 1, 2]); } public function agreement() @@ -116,11 +117,11 @@ class Order extends BaseModel public function orderMedicalReports() { - return $this->hasMany(OrderMedicalReport::class,'order_id', 'id'); + return $this->hasMany(OrderMedicalReport::class, 'order_id', 'id'); } public function afterDmaQuestion() - { + { return $this->hasOne(DmaQuestion::class, "order_id", "id")->where("type", 1); } @@ -134,8 +135,8 @@ class Order extends BaseModel $scheme = request()->scheme; if (is_numeric($scheme)) { if ($scheme) { - return $query->whereIn('service_status', ['SCHEME','DELIVER','FINISHED']); - }else { + return $query->whereIn('service_status', ['SCHEME', 'DELIVER', 'FINISHED']); + } else { return $query->where('service_status', 'NOSCHEME'); } } @@ -159,7 +160,7 @@ class Order extends BaseModel */ public function scopeNoWorkChatGroup($query) { - return $query->whereHas('group', function ($sql){ + return $query->whereHas('group', function ($sql) { $sql->whereNull('chat_id'); }); } @@ -172,8 +173,9 @@ class Order extends BaseModel public function scopeKeyword($query) { $keyword = trim(request()->keyword); - if (!$keyword) return $query; - return $query->where('name', 'like', '%'.$keyword.'%')->orWhere('mobile', 'like', '%'.$keyword.'%'); + if (!$keyword) + return $query; + return $query->where('name', 'like', '%' . $keyword . '%')->orWhere('mobile', 'like', '%' . $keyword . '%'); } public function scopeServiceOrder($query) @@ -181,9 +183,10 @@ class Order extends BaseModel return $query->where('type', 'SERVICE'); } - public static function getHaveOrder($user_id,$mobile){ - $have_order = self::where('mobile',$mobile)->where('user_id',0)->orderByDesc('id')->first(); - if($have_order){ + public static function getHaveOrder($user_id, $mobile) + { + $have_order = self::where('mobile', $mobile)->where('user_id', 0)->orderByDesc('id')->first(); + if ($have_order) { $have_order->user_id = $user_id; $have_order->save(); } @@ -195,15 +198,16 @@ class Order extends BaseModel return $this->hasOneThrough(User::class, RecommendUser::class, 'user_id', 'id', 'user_id', 'recommend_user_id')->selectRaw("ufutx_users.id, ufutx_users.name, ufutx_users.mobile"); } - public function updateServerStatus($user,$service_status,$delivery_img=""){ + public function updateServerStatus($user, $service_status, $delivery_img = "") + { DB::beginTransaction(); $order = Order::getPayOrder($user->id); $order->service_status = $service_status; - if(!empty($delivery_img)){ + if (!empty($delivery_img)) { $order->delivery_img = $delivery_img; } $order->save(); - MarkOrderLog::create(['order_id'=>$order->id,'operate_id'=>$user->id,'operate_name'=>$user->name,'remark'=>"用户确认收货,修改server_status:".$service_status]); + MarkOrderLog::create(['order_id' => $order->id, 'operate_id' => $user->id, 'operate_name' => $user->name, 'remark' => "用户确认收货,修改server_status:" . $service_status]); DB::commit(); return true; } @@ -213,12 +217,15 @@ class Order extends BaseModel * @param $user_id * @return mixed */ - public static function getPayOrder($user_id){ - $order = Order::whereHas("group")->where('user_id',$user_id)->where('pay_status','PAID')->orderByDesc('id')->first(); + public static function getPayOrder($user_id) + { + $order = Order::whereHas("group", function ($sql) { + $sql->where("service_type", 1); + })->where('user_id', $user_id)->where('pay_status', 'PAID')->orderByDesc('id')->first(); return $order; } - + /** * 订单可操作权限 * @param mixed $role_ids // 有权限的角色id @@ -233,12 +240,12 @@ class Order extends BaseModel if ($admin_role_id) { $has_role_ids[] = $admin_role_id; } - Log::info("当前用户id: ".$user_id); - Log::info("当前用户角色:". json_encode($has_role_ids)); - Log::info("有权限角色: ".json_encode($role_ids)); + Log::info("当前用户id: " . $user_id); + Log::info("当前用户角色:" . json_encode($has_role_ids)); + Log::info("有权限角色: " . json_encode($role_ids)); // 比较角色时候在有权限角色内 $res = array_intersect($role_ids, $has_role_ids); - return count($res)?true:false; + return count($res) ? true : false; } }