zilong 4 年之前
父節點
當前提交
c92ce2fee4
共有 2 個文件被更改,包括 5 次插入9 次删除
  1. 2 8
      app/Http/Controllers/Api/V1/DocterController.php
  2. 3 1
      app/Models/Order.php

+ 2 - 8
app/Http/Controllers/Api/V1/DocterController.php

xqd xqd xqd xqd xqd
@@ -31,8 +31,6 @@ class DocterController extends AuthController
             'latitude' => 'numeric',
             'longitude' => 'numeric',
             'sort_type' => 'in:0,1,2,3',
-            'schedule_date' => 'required_if:list_type,3|date',
-            'time_period_id' => 'required_if:list_type,3|integer',
             'is_pack_docter' => 'in:0,1',
         ]);
         $user = $this->user;
@@ -79,8 +77,6 @@ class DocterController extends AuthController
         }
 
         if ($list_type == 3) {
-            $docterIds2 = SchedulePeriod::where('time_period_id', $req['time_period_id'])->where('schedule_date', $req['schedule_date'])->pluck('docter_id')->toArray();
-            $builder->whereIn('id', $docterIds2);
             //查询我关注的医生
             $docterIds3 = Collection::where('user_id', $user['id'])->where('docter_id', '>', 0)->pluck('docter_id')->toArray();
             $builder->whereNotIn('id', $docterIds3);
@@ -123,7 +119,7 @@ class DocterController extends AuthController
         //组合我关注的医生,放在最前面
         $page = empty($req['page']) ? 1 : $req['page'];
         if ($list_type == 3 && $page == 1) {
-            $builder2 = Docter::with('office', 'qualification')->select(['id', 'type', 'name', 'phone', 'sex', 'birthday', 'avatar', 'status', 'label', 'sign', 'intro', 'office_id', 'qualification_id', 'score', 'service_persons', 'eva_num', 'service_days', 'phone_minutes', 'chat_price', 'phone_price', 'appoint_price', 'is_chat', 'is_phone', 'is_appoint', 'latitude', 'longitude', DB::raw($distance_field)])->whereIn('id', $docterIds3)->whereIn('id', $docterIds2)->where('status', 1)->where('is_then', 1)->where('phone', '<>', '')->where('is_appoint', 1);
+            $builder2 = Docter::with('office', 'qualification')->select(['id', 'type', 'name', 'phone', 'sex', 'birthday', 'avatar', 'status', 'label', 'sign', 'intro', 'office_id', 'qualification_id', 'score', 'service_persons', 'eva_num', 'service_days', 'phone_minutes', 'chat_price', 'phone_price', 'appoint_price', 'is_chat', 'is_phone', 'is_appoint', 'latitude', 'longitude', DB::raw($distance_field)])->whereIn('id', $docterIds3)->where('status', 1)->where('is_then', 1)->where('phone', '<>', '')->where('is_appoint', 1);
             if (!empty($req['name'])) {
                 $builder2->where(function ($query) use($name, $orgDocterIds) {
                     $query->where('name', 'like', '%'.$name.'%')->orWhereIn('id', $orgDocterIds);
@@ -162,8 +158,6 @@ class DocterController extends AuthController
         $this->validate(request(), [
             'docter_id' => 'required|integer',
             'list_type' => 'in:0,1,2,3',
-            'schedule_date' => 'required_if:list_type,3|date',
-            'time_period_id' => 'required_if:list_type,3|integer',
             'latitude' => 'numeric',
             'longitude' => 'numeric',
         ]);
@@ -175,7 +169,7 @@ class DocterController extends AuthController
 
         $data['organization'] = null;
         if (!empty($req['list_type']) && $req['list_type'] == 3) {
-            $schedulePeriod = SchedulePeriod::with('organization')->select(['organization_id'])->where('docter_id', $req['docter_id'])->where('time_period_id', $req['time_period_id'])->where('schedule_date', $req['schedule_date'])->first()->toArray();
+            $schedulePeriod = SchedulePeriod::with('organization')->select(['organization_id'])->where('docter_id', $req['docter_id'])->where('schedule_date', date('Y-m-d'))->first()->toArray();
             $data['organization'] = $schedulePeriod['organization'];
         }
 

+ 3 - 1
app/Models/Order.php

xqd
@@ -161,7 +161,9 @@ class Order extends BaseModel
         //改变订单状态
         Order::where('id', $order_id)->update(['order_status' => 5]);
         //退钱到余额
-        User::changeBalance($order_id, $order['payment_amount'], 4, $order['id'], '取消订单退款');
+        if (!empty($order['payment_amount'])) {
+            User::changeBalance($order_id, $order['payment_amount'], 4, $order['id'], '取消订单退款');
+        }
         //如果距离预约时间还有半个小时以上,那么预约时间段的订单数减1
         if ($order['order_patient']['appoint_start_time'] - 1800 > time()) {
             $schedule_date = date('Y-m-d', $order['order_patient']['appoint_start_time']);