diff --git a/Laravel/app/Http/Controllers/API/H5/OrderController.php b/Laravel/app/Http/Controllers/API/H5/OrderController.php index 83844e9..96f5058 100644 --- a/Laravel/app/Http/Controllers/API/H5/OrderController.php +++ b/Laravel/app/Http/Controllers/API/H5/OrderController.php @@ -27,7 +27,7 @@ class OrderController extends Controller ->orWhere(function($query) use ($persons_sfz) { $query->WhereIn('id_number', $persons_sfz) ->where('person_id', 0); - })->get(); + })->orderBy('id','desc')->get(); $WaitingPaymentTime = config('app.globals.WaitingPaymentTime');//支付等待時間 foreach ($OrderList as $key => $list) { if ($list->status == 1) { @@ -49,6 +49,9 @@ class OrderController extends Controller { $id = request('id'); $order_info = DB::table('orders')->where(['id' => $id])->first(); + if(!!$order_info){ + $order_info->buy_info=json_decode($order_info->buy_info,true); + } return \Yz::Return(true, '获取成功', [ 'info' => $order_info ]); @@ -96,14 +99,17 @@ class OrderController extends Controller 'group' => [ 'id' => '', ], + 'nmr_list'=>[] ]; //如果是套餐 + $TJ_Leixing_id=1;//存储用体检类型 $checkup_type_id = false; //体检类型id if (isset($combo_id) and $combo_id <> 0) { $combo_info = DB::table('combos')->where(['combo_id' => $combo_id, 'status' => 1])->first(); if (!$combo_info) return \Yz::echoError1("套餐不存在"); if (!isset($combo_info->checkup_type_id)) return \Yz::echoError1("套餐未关联体检类型"); $checkup_type_id = $combo_info->checkup_type_id; + $TJ_Leixing_id=$checkup_type_id; $price += $combo_info->price; $title = $combo_info->name; $buy_info['combo'] = [ @@ -111,6 +117,16 @@ class OrderController extends Controller 'name' => $combo_info->name, 'price' => $combo_info->price, ]; + //如果有影像科,则存储在nmr_list字段 + $comboItem=DB::table('combo_items')->where(['combo_id' => $combo_id, 'status' => 1,'keshi_name'=>'影像科'])->get(); + if(count($comboItem)>0){ + foreach ($comboItem as $item){ + $buy_info['nmr_list'][]=[ + 'item_id' => $item->item_id, + 'name' => $item->name, + ]; + } + } } //如果有自选项目 @@ -126,6 +142,13 @@ class OrderController extends Controller 'name' => $item->name, 'price' => $item->price ]; + //如果有影像科,则存储在nmr_list字段 + if($item->keshi_name=='影像科'){ + $buy_info['nmr_list'][]=[ + 'item_id' => $item->item_id, + 'name' => $item->name, + ]; + } } $missingIds = array_diff($item_ids, $existingIds); if (count($missingIds) > 0) return \Yz::echoError1("部分自选项目不可用,Id:" . implode(', ', $missingIds)); @@ -150,12 +173,28 @@ class OrderController extends Controller 'items' => $group_info['items'], 'group_id' => $group_info['group_id'], ]; + $TJ_Leixing_id=$group_info['checkup_type_id']; $title = "单位团检" . $group_info['combo_name']; $price = $price + $group_info['sixi_zong_ji_jin_e']; $need_pay = ($price - $group_info['tongshou_xiane']) > 0 ? $price - $group_info['tongshou_xiane'] : 0; //团检订单金额为减去统收后的金的 $price = $need_pay; $true_price = $need_pay; + + + //如果有影像科,则存储在nmr_list字段 + $all_items = DB::table('items')->where(['status' => 1,'keshi_name'=>'影像科'])->get(); + foreach ($group_info[0]['items'] as $item) { + foreach ($all_items as $it) { + if ($it->item_id == $item['id']) { + $buy_info['nmr_list'][]=[ + 'item_id' => $item->item_id, + 'name' => $item->name, + ]; + } + } + } + } //调用思信接口判断各个项目是否可用 @@ -228,6 +267,7 @@ class OrderController extends Controller 'title' => $title, 'type' => $type, 'web_user_id' => $user->id, + 'checkup_type_id'=>$TJ_Leixing_id, 'person_id' => $person->id, 'name' => $person->name, 'id_number' => $person->id_number, diff --git a/Laravel/app/Http/Controllers/API/H5/PlanController.php b/Laravel/app/Http/Controllers/API/H5/PlanController.php index 713cc4c..f591da7 100644 --- a/Laravel/app/Http/Controllers/API/H5/PlanController.php +++ b/Laravel/app/Http/Controllers/API/H5/PlanController.php @@ -19,7 +19,7 @@ class PlanController extends Controller $use_type=request('use_type');//使用类型 1个检 2团检 $checkup_type_id=request('checkup_type_id');//体检类型表对应id $amount=request('amount');//总金额 - + if(!isset($checkup_type_id)) return \Yz::echoError1("体检类型不能为空"); $first_day_timestamp = strtotime($month . '-01'); $first_day = date('Y-m-d', $first_day_timestamp); //当月第一天 $last_day_timestamp = strtotime($month . '-01 +1 month -1 day'); @@ -89,7 +89,7 @@ class PlanController extends Controller $use_type=request('use_type');//使用类型 1个检 2团检 $checkup_type_id=(string)request('checkup_type_id');//体检类型表对应id $amount=request('amount');//总金额 - + if(!isset($checkup_type_id)) return \Yz::echoError1("体检类型不能为空"); $list=DB::table('plans') ->where('date',$date)->whereIn('status',[1,2]) ->whereRaw('JSON_CONTAINS(checkup_type_id, ?, "$")', [$checkup_type_id]) diff --git a/Laravel/app/Http/Controllers/API/Web/OrderController.php b/Laravel/app/Http/Controllers/API/Web/OrderController.php index 0736abd..fad522a 100644 --- a/Laravel/app/Http/Controllers/API/Web/OrderController.php +++ b/Laravel/app/Http/Controllers/API/Web/OrderController.php @@ -49,14 +49,17 @@ class OrderController extends Controller 'group' => [ 'id' => '', ], + 'nmr_list'=>[] ]; //如果是套餐 + $TJ_Leixing_id=1;//存储用体检类型 $checkup_type_id = false; //体检类型id if (isset($combo_id) and $combo_id <> 0) { $combo_info = DB::table('combos')->where(['combo_id' => $combo_id, 'status' => 1])->first(); if (!$combo_info) return \Yz::echoError1("套餐不存在"); if (!isset($combo_info->checkup_type_id)) return \Yz::echoError1("套餐未关联体检类型"); $checkup_type_id = $combo_info->checkup_type_id; + $TJ_Leixing_id=$checkup_type_id; $price += $combo_info->price; $title = $combo_info->name; $buy_info['combo'] = [ @@ -64,6 +67,16 @@ class OrderController extends Controller 'name' => $combo_info->name, 'price' => $combo_info->price, ]; + //如果有影像科,则存储在nmr_list字段 + $comboItem=DB::table('combo_items')->where(['combo_id' => $combo_id, 'status' => 1,'keshi_name'=>'影像科'])->get(); + if(count($comboItem)>0){ + foreach ($comboItem as $item){ + $buy_info['nmr_list'][]=[ + 'item_id' => $item->item_id, + 'name' => $item->name, + ]; + } + } } //如果有自选项目 @@ -79,6 +92,13 @@ class OrderController extends Controller 'name' => $item->name, 'price' => $item->price ]; + //如果有影像科,则存储在nmr_list字段 + if($item->keshi_name=='影像科'){ + $buy_info['nmr_list'][]=[ + 'item_id' => $item->item_id, + 'name' => $item->name, + ]; + } } $missingIds = array_diff($item_ids, $existingIds); if (count($missingIds) > 0) return \Yz::echoError1("部分自选项目不可用,Id:" . implode(', ', $missingIds)); @@ -103,12 +123,27 @@ class OrderController extends Controller 'items' => $group_info['items'], 'group_id' => $group_info['group_id'], ]; + $TJ_Leixing_id=$group_info['checkup_type_id']; $title = "单位团检" . $group_info['combo_name']; $price = $price + $group_info['sixi_zong_ji_jin_e']; $need_pay = ($price - $group_info['tongshou_xiane']) > 0 ? $price - $group_info['tongshou_xiane'] : 0; //团检订单金额为减去统收后的金的 $price = $need_pay; $true_price = $need_pay; + + //如果有影像科,则存储在nmr_list字段 + $all_items = DB::table('items')->where(['status' => 1,'keshi_name'=>'影像科'])->get(); + foreach ($group_info[0]['items'] as $item) { + foreach ($all_items as $it) { + if ($it->item_id == $item['id']) { + $buy_info['nmr_list'][]=[ + 'item_id' => $item->item_id, + 'name' => $item->name, + ]; + } + } + } + } //调用思信接口判断各个项目是否可用 @@ -155,6 +190,7 @@ class OrderController extends Controller 'type' => $type, 'source' => 'web', 'web_user_id' =>0, + 'checkup_type_id'=>$TJ_Leixing_id, 'person_id' => 0, 'name' => $person['name'], 'id_number' => $person['id_number'], diff --git a/Laravel/routes/web.php b/Laravel/routes/web.php index 7e50fbb..003faa7 100644 --- a/Laravel/routes/web.php +++ b/Laravel/routes/web.php @@ -30,11 +30,11 @@ Route::get('/wxGetCode', 'App\Http\Controllers\API\mH5\LoginController@wxGetCode Route::get('/test', 'App\Http\Controllers\TestController@DBtest'); Route::any('/payNotify', 'App\Http\Controllers\API\H5\PayController@Notify')->middleware('log');//支付回调 -Route::group(['prefix' => 'api/H5'], function () { +Route::group(['middleware' => ['log'],'prefix' => 'api/H5'], function () { Route::post('/CheckUpTypeGetList', 'App\Http\Controllers\API\H5\CheckUpTypeController@GetList');//获取体检类型分类 Route::post('/GetComboSort', 'App\Http\Controllers\API\H5\ComboController@GetComboSort');// //获取套餐类型、适用人群 Route::post('/ComboCompare', 'App\Http\Controllers\API\H5\ComboController@ComboCompare');// //套餐对比 - Route::post('/BuyInfo', 'App\Http\Controllers\API\H5\ComboController@BuyInfo')->middleware('log');//获取购买详情内容(详情页信息) + Route::post('/BuyInfo', 'App\Http\Controllers\API\H5\ComboController@BuyInfo');//获取购买详情内容(详情页信息) Route::post('/GetAllItems', 'App\Http\Controllers\API\H5\ItemController@GetItems');//获取所有自选项目 Route::post('/GetReadme', 'App\Http\Controllers\API\H5\HospitalExtraController@GetReadme');//获取注意事项 Route::post('/GetMonthPlanCount', 'App\Http\Controllers\API\H5\PlanController@GetMonthPlanCount');//获取本月每日剩余号源数量 diff --git a/h5/common/WeeklyCalendar.vue b/h5/common/WeeklyCalendar.vue index 03cab46..618aa7a 100644 --- a/h5/common/WeeklyCalendar.vue +++ b/h5/common/WeeklyCalendar.vue @@ -1,29 +1,49 @@ - + .dateitem { + padding: 20rpx; + background-color: #fff; + border-radius: 20rpx; + margin-top: 20rpx; + } + \ No newline at end of file