diff --git a/Laravel/app/Http/Controllers/API/H5/FenzhenController.php b/Laravel/app/Http/Controllers/API/H5/FenzhenController.php index f6bebd5..1d6a5b1 100644 --- a/Laravel/app/Http/Controllers/API/H5/FenzhenController.php +++ b/Laravel/app/Http/Controllers/API/H5/FenzhenController.php @@ -49,13 +49,15 @@ class FenzhenController extends Controller $time_line = $res['data']['time_line']; $clinic_map = []; foreach ($time_line as $key => $item) { - $clinic_map[] = $item['name']; + if (isset($item['his_number'])) { + $clinic_map[] = $item['his_number']; + } } $last_time = strtotime('2024-10-10 ' . $time_line[count($time_line) - 1]['time'] . ':00'); if (!$res['data']['queue']) { $push_end = false; foreach ($clinics as $item) { - if (!in_array($item['name'], $clinic_map)) { + if (!in_array($item['keshi_id'], $clinic_map)) { $push_end = true; $item_count = $item['count']; $in_time = date('H:i', $last_time); @@ -86,13 +88,19 @@ class FenzhenController extends Controller ]); } } + // -1 报告未出 不能预约 报告解读 不显示 + // 0 时间未到 不能预约 报告解读 不显示 + // 1 时间已到 可以预约 报告解读 + // 2 已经预约 报告解读 $check_report_status = -1; + // $now_time = time(); + $now_time = strtotime('2024-11-07 00:00:00'); if (!!$res['data']['report']) { $report_time = strtotime($res['data']['report'] . ' 00:00:00') + (60 * 60 * 24 * $report_day); $report_time_show = date('m月d日', $report_time); $report_status = false; // 这里补充 获取 出具报告 时间的逻辑 - if (strtotime($report_time) < time()) { + if ($report_time < $now_time) { $report_status = true; } if (!$report_status) { @@ -118,50 +126,75 @@ class FenzhenController extends Controller $check_report_status = 0; // $check_report_status = '2024年10月11日'; // 这里补充 获取 报告解读 时间的逻辑 - $dnet = new AspNetZhuanController(); - $res = $dnet->GetReportAnalysis([ - "yyrq" => "2024-10-29", - "ghzid" => "b656355aee12452693f53bb8ff916fa3", - "yyid" => "6", - "action" => "1" - ]); - \Yz::debug(['a' => $res]); - - - if (!$check_report_status) { - if ($check_report_time < time()) { - $time_line[] = [ - 'time' => '', - 'name' => '报告解读', - 'status' => -1, - 'desc' => "可以预约报告解读", - 'tip' => '', - 'more' => 0 - ]; - } else { - $check_report_time_show = date('m月d日', $check_report_time); - $time_line[] = [ - 'time' => '', - 'name' => '报告解读', - 'status' => -1, - 'desc' => "预计 $check_report_time_show 可以预约报告解读", - 'tip' => '', - 'more' => 0 - ]; + if ($check_report_time < $now_time) { + if (!!$info->person_id) { + $user_info = DB::table('web_user_person')->where(['id' => $info->person_id])->first(); + if (!!$user_info) { + $hospital_map = [ + 'h1' => '6', + 'h4' => '2' + ]; + $dnet = new AspNetZhuanController(); + $hid = $info->hospital_id; + $res = $dnet->GetReportAnalysis([ + "yyrq" => date('Y-m-d', $check_report_time), + "ghzid" => $user_info->ghzid, + "yyid" => $hospital_map["h$hid"], + "action" => "1" + ]); + switch ($res['code']) { + case '200': + $check_report_status = 2; + $show_date = date('m-d', strtotime($res['yyrq'])); + $time_line[] = [ + 'time' => '', + 'name' => '报告解读', + 'status' => -1, + 'desc' => "已预约 $show_date 报告解读", + 'tip' => '', + 'more' => 0 + ]; + break; + case '199': + case '201': + $check_report_status = 1; + $time_line[] = [ + 'time' => '', + 'name' => '报告解读', + 'status' => -1, + 'desc' => "可以预约报告解读", + 'tip' => '', + 'more' => 0 + ]; + break; + case '202': + $check_report_status = 0; + $time_line[] = [ + 'time' => '', + 'name' => '报告解读', + 'status' => 1, + 'desc' => "已完成报告解读", + 'tip' => '', + 'more' => 0 + ]; + break; + } + } } } else { - $show_date = explode('年', $check_report_status)[1]; + $check_report_time_show = date('m月d日', $check_report_time); $time_line[] = [ 'time' => '', 'name' => '报告解读', 'status' => -1, - 'desc' => "已预约 $show_date 报告解读", + 'desc' => "预计 $check_report_time_show 可以预约报告解读", 'tip' => '', 'more' => 0 ]; } } $res['data']['end_time'] = date('H:i', $last_time); + \Yz::debug(['a' => $res['data']]); return \Yz::Return(true, "获取成功", [ 'info' => [ 'name' => $info->name, @@ -174,7 +207,7 @@ class FenzhenController extends Controller 'code' => $info->appointment_number, ], 'list' => $time_line, - 'report' => $check_report_status + 'report' => $check_report_status, ]); } else { return \Yz::Return(true, "获取成功", [ diff --git a/h5/pages/user/fenzhen/fenzhen.vue b/h5/pages/user/fenzhen/fenzhen.vue index 105f814..1956610 100644 --- a/h5/pages/user/fenzhen/fenzhen.vue +++ b/h5/pages/user/fenzhen/fenzhen.vue @@ -187,11 +187,8 @@ - - - 已预约 {{ fenzhen_list.report }} 报告解读 - - + + 预约解读