更新 WEB端加 订单查询功能

main
鹿和sa0ChunLuyu 6 months ago
parent be5919da93
commit 6a48f7bdeb

@ -33,14 +33,14 @@ class OrderController extends Controller
$doctor = request('doctor');//预约的医生名字 $doctor = request('doctor');//预约的医生名字
$appdoctor_department = request('appdoctor_department');//预约的医生的科室 $appdoctor_department = request('appdoctor_department');//预约的医生的科室
$appdoctor = request('appdoctor');//协助预约的医生名字 $appdoctor = request('appdoctor');//协助预约的医生名字
$person= request('person'); //sex,birthday,married,name,id_number,phone $person = request('person'); //sex,birthday,married,name,id_number,phone
$married_array=["未婚","已婚","丧偶","离婚","其他"]; $married_array = ["未婚", "已婚", "丧偶", "离婚", "其他"];
if(isset($person['married'])){ if (isset($person['married'])) {
$key= array_search($person['married'], $married_array); $key = array_search($person['married'], $married_array);
if ($key !== false) { if ($key !== false) {
$person['married']=$key; $person['married'] = $key;
} else { } else {
$person['married']=4; $person['married'] = 4;
} }
} }
@ -67,17 +67,17 @@ class OrderController extends Controller
'group' => [ 'group' => [
'id' => '', 'id' => '',
], ],
'nmr_list'=>[] 'nmr_list' => []
]; ];
//如果是套餐 //如果是套餐
$TJ_Leixing_id=1;//存储用体检类型 $TJ_Leixing_id = 1;//存储用体检类型
$checkup_type_id = false; //体检类型id $checkup_type_id = false; //体检类型id
if (isset($combo_id) and $combo_id <> 0) { if (isset($combo_id) and $combo_id <> 0) {
$combo_info = DB::table('combos')->where(['combo_id' => $combo_id, 'status' => 1])->first(); $combo_info = DB::table('combos')->where(['combo_id' => $combo_id, 'status' => 1])->first();
if (!$combo_info) return \Yz::echoError1("套餐不存在"); if (!$combo_info) return \Yz::echoError1("套餐不存在");
if (!isset($combo_info->checkup_type_id)) return \Yz::echoError1("套餐未关联体检类型"); if (!isset($combo_info->checkup_type_id)) return \Yz::echoError1("套餐未关联体检类型");
$checkup_type_id = $combo_info->checkup_type_id; $checkup_type_id = $combo_info->checkup_type_id;
$TJ_Leixing_id=$checkup_type_id; $TJ_Leixing_id = $checkup_type_id;
$price += $combo_info->price; $price += $combo_info->price;
$title = $combo_info->name; $title = $combo_info->name;
$buy_info['combo'] = [ $buy_info['combo'] = [
@ -86,10 +86,10 @@ class OrderController extends Controller
'price' => $combo_info->price, 'price' => $combo_info->price,
]; ];
//如果有影像科则存储在nmr_list字段 //如果有影像科则存储在nmr_list字段
$comboItem=DB::table('combo_items')->where(['combo_id' => $combo_id, 'status' => 1,'keshi_name'=>'影像科'])->get(); $comboItem = DB::table('combo_items')->where(['combo_id' => $combo_id, 'status' => 1, 'keshi_name' => '影像科'])->get();
if(count($comboItem)>0){ if (count($comboItem) > 0) {
foreach ($comboItem as $item){ foreach ($comboItem as $item) {
$buy_info['nmr_list'][]=[ $buy_info['nmr_list'][] = [
'item_id' => $item->item_id, 'item_id' => $item->item_id,
'name' => $item->name, 'name' => $item->name,
]; ];
@ -112,8 +112,8 @@ class OrderController extends Controller
'price' => $item->price 'price' => $item->price
]; ];
//如果有影像科则存储在nmr_list字段 //如果有影像科则存储在nmr_list字段
if($item->keshi_name=='影像科'){ if ($item->keshi_name == '影像科') {
$buy_info['nmr_list'][]=[ $buy_info['nmr_list'][] = [
'item_id' => $item->item_id, 'item_id' => $item->item_id,
'name' => $item->name, 'name' => $item->name,
]; ];
@ -144,7 +144,7 @@ class OrderController extends Controller
'items' => $group_info['items'], 'items' => $group_info['items'],
'group_id' => $group_info['group_id'], 'group_id' => $group_info['group_id'],
]; ];
$TJ_Leixing_id=$group_info['checkup_type_id']; $TJ_Leixing_id = $group_info['checkup_type_id'];
$title = "单位团检" . $group_info['combo_name']; $title = "单位团检" . $group_info['combo_name'];
$price = $price + $group_info['sixi_zong_ji_jin_e']; $price = $price + $group_info['sixi_zong_ji_jin_e'];
$need_pay = ($price - $group_info['tongshou_xiane']) > 0 ? $price - $group_info['tongshou_xiane'] : 0; $need_pay = ($price - $group_info['tongshou_xiane']) > 0 ? $price - $group_info['tongshou_xiane'] : 0;
@ -153,11 +153,11 @@ class OrderController extends Controller
$true_price = $need_pay; $true_price = $need_pay;
//如果有影像科则存储在nmr_list字段 //如果有影像科则存储在nmr_list字段
$all_items = DB::table('items')->where(['status' => 1,'keshi_name'=>'影像科'])->get(); $all_items = DB::table('items')->where(['status' => 1, 'keshi_name' => '影像科'])->get();
foreach ($group_info['items'] as $item) { foreach ($group_info['items'] as $item) {
foreach ($all_items as $it) { foreach ($all_items as $it) {
if ($it->item_id == $item['id']) { if ($it->item_id == $item['id']) {
$buy_info['nmr_list'][]=[ $buy_info['nmr_list'][] = [
'item_id' => $item->item_id, 'item_id' => $item->item_id,
'name' => $item->name, 'name' => $item->name,
]; ];
@ -178,7 +178,7 @@ class OrderController extends Controller
"序号" => 0, "序号" => 0,
"性别" => $person['sex'] == 1 ? '男' : '女', "性别" => $person['sex'] == 1 ? '男' : '女',
"年龄" => floor((time() - strtotime($person['birthday'])) / 86400 / 360), "年龄" => floor((time() - strtotime($person['birthday'])) / 86400 / 360),
"婚姻状态" => $person['married']== 1 ? '已婚' : '未婚', "婚姻状态" => $person['married'] == 1 ? '已婚' : '未婚',
]], ]],
'套餐Id' => $combo_id == 0 ? null : $combo_id, '套餐Id' => $combo_id == 0 ? null : $combo_id,
'可选项目信息' => $check_items, '可选项目信息' => $check_items,
@ -210,8 +210,8 @@ class OrderController extends Controller
'title' => $title, 'title' => $title,
'type' => $type, 'type' => $type,
'source' => 'web', 'source' => 'web',
'web_user_id' =>0, 'web_user_id' => 0,
'checkup_type_id'=>$TJ_Leixing_id, 'checkup_type_id' => $TJ_Leixing_id,
'person_id' => 0, 'person_id' => 0,
'name' => $person['name'], 'name' => $person['name'],
'id_number' => $person['id_number'], 'id_number' => $person['id_number'],
@ -227,8 +227,8 @@ class OrderController extends Controller
'combo_id' => $combo_id, 'combo_id' => $combo_id,
'hospital_id' => $hospital_id, 'hospital_id' => $hospital_id,
'doctor' => $doctor, 'doctor' => $doctor,
'appdoctor'=>$appdoctor, 'appdoctor' => $appdoctor,
'appdoctor_department'=>$appdoctor_department, 'appdoctor_department' => $appdoctor_department,
'phone' => $person['phone'], 'phone' => $person['phone'],
'sex' => $person['sex'], 'sex' => $person['sex'],
'birthday' => $person['birthday'], 'birthday' => $person['birthday'],
@ -241,40 +241,41 @@ class OrderController extends Controller
]); ]);
if ($insert and $up_plan) { if ($insert and $up_plan) {
DB::commit(); DB::commit();
$action=false; $action = false;
if($true_price===0){ if ($true_price === 0) {
//如果是免费的,直接去预约 //如果是免费的,直接去预约
$yuyue= self::Finish($order_num); $yuyue = self::Finish($order_num);
if($yuyue['status']===true){ if ($yuyue['status'] === true) {
return \Yz::return(true, "操作成功", ['action' => $action,'orderid'=>$insert]); return \Yz::return(true, "操作成功", ['action' => $action, 'orderid' => $insert]);
}else{ } else {
return \Yz::echoError1($yuyue['msg']); return \Yz::echoError1($yuyue['msg']);
} }
} }
if($true_price>0){ if ($true_price > 0) {
//如果大于0则提示前端去支付 //如果大于0则提示前端去支付
$action="pay"; $action = "pay";
} }
$AspZhuan=new AspNetZhuanController(); $AspZhuan = new AspNetZhuanController();
$reqst_data=[ $reqst_data = [
'ghzid'=>$person['ghzid'], 'ghzid' => $person['ghzid'],
'yyid'=>6, 'yyid' => 6,
'type'=>28, 'type' => 28,
'msg1'=>$person['name'], 'msg1' => $person['name'],
'msg2'=>$title, 'msg2' => $title,
'msg3'=>number_format($true_price , 2, '.', ''), 'msg3' => number_format($true_price, 2, '.', ''),
'msg4'=>$plan->date.' '.$plan->time, 'msg4' => $plan->date . ' ' . $plan->time,
'msg5'=>"健康管理中心", 'msg5' => "健康管理中心",
'msg6'=>"", 'msg6' => "",
'url'=>"pages/other/entry/index?path=/pages/other/jump-h5/index&src=https%3A%2F%2Ftj-h5.hnxdfe.com%2Fh5%2F%23%2Fpages%2Fmain%2Flogin%2Flogin%3Fpath%3Dorder&scene=1014", 'url' => "pages/other/entry/index?path=/pages/other/jump-h5/index&src=https%3A%2F%2Ftj-h5.hnxdfe.com%2Fh5%2F%23%2Fpages%2Fmain%2Flogin%2Flogin%3Fpath%3Dorder&scene=1014",
]; ];
$AspZhuan::WeiXinSend($reqst_data); $AspZhuan::WeiXinSend($reqst_data);
return \Yz::return(true, "操作成功", ['action' => $action,'orderid'=>$insert]); return \Yz::return(true, "操作成功", ['action' => $action, 'orderid' => $insert]);
} else { } else {
DB::rollBack(); DB::rollBack();
return \Yz::echoError1('操作失败'); return \Yz::echoError1('操作失败');
} }
} }
//客服预约,只占用号源 //客服预约,只占用号源
public function CreateYuYueOrder() public function CreateYuYueOrder()
{ {
@ -288,14 +289,14 @@ class OrderController extends Controller
$plan_id = request('plan_id');//号源id $plan_id = request('plan_id');//号源id
$doctor = request('doctor');//预约的医生名字 $doctor = request('doctor');//预约的医生名字
$appdoctor = request('appdoctor');//协助预约的医生名字 $appdoctor = request('appdoctor');//协助预约的医生名字
$person= request('person'); //sex,birthday,married,name,id_number,phone $person = request('person'); //sex,birthday,married,name,id_number,phone
$married_array=["未婚","已婚","丧偶","离婚","其他"]; $married_array = ["未婚", "已婚", "丧偶", "离婚", "其他"];
if(isset($person['married'])){ if (isset($person['married'])) {
$key= array_search($person['married'], $married_array); $key = array_search($person['married'], $married_array);
if ($key !== false) { if ($key !== false) {
$person['married']=$key; $person['married'] = $key;
} else { } else {
$person['married']=4; $person['married'] = 4;
} }
} }
@ -322,17 +323,17 @@ class OrderController extends Controller
'group' => [ 'group' => [
'id' => '', 'id' => '',
], ],
'nmr_list'=>[] 'nmr_list' => []
]; ];
//如果是套餐 //如果是套餐
$TJ_Leixing_id=1;//存储用体检类型 $TJ_Leixing_id = 1;//存储用体检类型
$checkup_type_id = false; //体检类型id $checkup_type_id = false; //体检类型id
if (isset($combo_id) and $combo_id <> 0) { if (isset($combo_id) and $combo_id <> 0) {
$combo_info = DB::table('combos')->where(['combo_id' => $combo_id, 'status' => 1])->first(); $combo_info = DB::table('combos')->where(['combo_id' => $combo_id, 'status' => 1])->first();
if (!$combo_info) return \Yz::echoError1("套餐不存在"); if (!$combo_info) return \Yz::echoError1("套餐不存在");
if (!isset($combo_info->checkup_type_id)) return \Yz::echoError1("套餐未关联体检类型"); if (!isset($combo_info->checkup_type_id)) return \Yz::echoError1("套餐未关联体检类型");
$checkup_type_id = $combo_info->checkup_type_id; $checkup_type_id = $combo_info->checkup_type_id;
$TJ_Leixing_id=$checkup_type_id; $TJ_Leixing_id = $checkup_type_id;
$price += $combo_info->price; $price += $combo_info->price;
$title = $combo_info->name; $title = $combo_info->name;
$buy_info['combo'] = [ $buy_info['combo'] = [
@ -341,10 +342,10 @@ class OrderController extends Controller
'price' => $combo_info->price, 'price' => $combo_info->price,
]; ];
//如果有影像科则存储在nmr_list字段 //如果有影像科则存储在nmr_list字段
$comboItem=DB::table('combo_items')->where(['combo_id' => $combo_id, 'status' => 1,'keshi_name'=>'影像科'])->get(); $comboItem = DB::table('combo_items')->where(['combo_id' => $combo_id, 'status' => 1, 'keshi_name' => '影像科'])->get();
if(count($comboItem)>0){ if (count($comboItem) > 0) {
foreach ($comboItem as $item){ foreach ($comboItem as $item) {
$buy_info['nmr_list'][]=[ $buy_info['nmr_list'][] = [
'item_id' => $item->item_id, 'item_id' => $item->item_id,
'name' => $item->name, 'name' => $item->name,
]; ];
@ -366,8 +367,8 @@ class OrderController extends Controller
'price' => $item->price 'price' => $item->price
]; ];
//如果有影像科则存储在nmr_list字段 //如果有影像科则存储在nmr_list字段
if($item->keshi_name=='影像科'){ if ($item->keshi_name == '影像科') {
$buy_info['nmr_list'][]=[ $buy_info['nmr_list'][] = [
'item_id' => $item->item_id, 'item_id' => $item->item_id,
'name' => $item->name, 'name' => $item->name,
]; ];
@ -396,7 +397,7 @@ class OrderController extends Controller
'items' => $group_info['items'], 'items' => $group_info['items'],
'group_id' => $group_info['group_id'], 'group_id' => $group_info['group_id'],
]; ];
$TJ_Leixing_id=$group_info['checkup_type_id']; $TJ_Leixing_id = $group_info['checkup_type_id'];
$title = "单位团检" . $group_info['combo_name']; $title = "单位团检" . $group_info['combo_name'];
$price = $price + $group_info['sixi_zong_ji_jin_e']; $price = $price + $group_info['sixi_zong_ji_jin_e'];
$need_pay = ($price - $group_info['tongshou_xiane']) > 0 ? $price - $group_info['tongshou_xiane'] : 0; $need_pay = ($price - $group_info['tongshou_xiane']) > 0 ? $price - $group_info['tongshou_xiane'] : 0;
@ -405,11 +406,11 @@ class OrderController extends Controller
$true_price = $need_pay; $true_price = $need_pay;
//如果有影像科则存储在nmr_list字段 //如果有影像科则存储在nmr_list字段
$all_items = DB::table('items')->where(['status' => 1,'keshi_name'=>'影像科'])->get(); $all_items = DB::table('items')->where(['status' => 1, 'keshi_name' => '影像科'])->get();
foreach ($group_info['items'] as $item) { foreach ($group_info['items'] as $item) {
foreach ($all_items as $it) { foreach ($all_items as $it) {
if ($it->item_id == $item['id']) { if ($it->item_id == $item['id']) {
$buy_info['nmr_list'][]=[ $buy_info['nmr_list'][] = [
'item_id' => $item->item_id, 'item_id' => $item->item_id,
'name' => $item->name, 'name' => $item->name,
]; ];
@ -430,7 +431,7 @@ class OrderController extends Controller
"序号" => 0, "序号" => 0,
"性别" => $person['sex'] == 1 ? '男' : '女', "性别" => $person['sex'] == 1 ? '男' : '女',
"年龄" => floor((time() - strtotime($person['birthday'])) / 86400 / 360), "年龄" => floor((time() - strtotime($person['birthday'])) / 86400 / 360),
"婚姻状态" => $person['married']== 1 ? '已婚' : '未婚', "婚姻状态" => $person['married'] == 1 ? '已婚' : '未婚',
]], ]],
'套餐Id' => $combo_id == 0 ? null : $combo_id, '套餐Id' => $combo_id == 0 ? null : $combo_id,
'可选项目信息' => $check_items, '可选项目信息' => $check_items,
@ -462,8 +463,8 @@ class OrderController extends Controller
'title' => $title, 'title' => $title,
'type' => $type, 'type' => $type,
'source' => 'web', 'source' => 'web',
'web_user_id' =>0, 'web_user_id' => 0,
'checkup_type_id'=>$TJ_Leixing_id, 'checkup_type_id' => $TJ_Leixing_id,
'person_id' => 0, 'person_id' => 0,
'name' => $person['name'], 'name' => $person['name'],
'id_number' => $person['id_number'], 'id_number' => $person['id_number'],
@ -479,7 +480,7 @@ class OrderController extends Controller
'combo_id' => $combo_id, 'combo_id' => $combo_id,
'hospital_id' => $hospital_id, 'hospital_id' => $hospital_id,
'doctor' => $doctor, 'doctor' => $doctor,
'appdoctor'=>$appdoctor, 'appdoctor' => $appdoctor,
'phone' => $person['phone'], 'phone' => $person['phone'],
'sex' => $person['sex'], 'sex' => $person['sex'],
'birthday' => $person['birthday'], 'birthday' => $person['birthday'],
@ -493,35 +494,46 @@ class OrderController extends Controller
if ($insert and $up_plan) { if ($insert and $up_plan) {
DB::commit(); DB::commit();
return \Yz::return(true, "操作成功", ['orderid'=>$insert]); return \Yz::return(true, "操作成功", ['orderid' => $insert]);
} else { } else {
DB::rollBack(); DB::rollBack();
return \Yz::echoError1('操作失败'); return \Yz::echoError1('操作失败');
} }
} }
public function SearchOrder(Request $request)
{
$order_start = $request->post('order_start');
$order_end = $request->post('order_end');
$list = DB::table('orders');
$list = $list->where('created_at', '>=', $order_start);
$list = $list->where('created_at', '<=', $order_end);
$list = $list->orderBy('id', 'desc')->get();
return \Yz::return(true, "操作成功", ['list' => $list]);
}
public function export() public function export()
{ {
$dates=request('dates'); $dates = request('dates');
$key=request('key'); $key = request('key');
if($key <>"ddXPpBrM3C93PHFdWDXbMX2vQ2AJQFFy"){ if ($key <> "ddXPpBrM3C93PHFdWDXbMX2vQ2AJQFFy") {
return \Yz::echoErrorJson('无权访问'); return \Yz::echoErrorJson('无权访问');
} }
if(!$dates){ if (!$dates) {
return \Yz::echoErrorJson('请选择日期'); return \Yz::echoErrorJson('请选择日期');
} }
$table_list=DB::table('orders')->where(['source'=>'web'])->whereBetween('created_at',[$dates[0].' 00:00:00',$dates[1].' 23:59:59']) $table_list = DB::table('orders')->where(['source' => 'web'])->whereBetween('created_at', [$dates[0] . ' 00:00:00', $dates[1] . ' 23:59:59'])
->select(DB::raw("*, CASE WHEN sex = 1 THEN '男' WHEN sex = 2 THEN '女' ELSE '未知' END as sex")) ->select(DB::raw("*, CASE WHEN sex = 1 THEN '男' WHEN sex = 2 THEN '女' ELSE '未知' END as sex"))
->get(); ->get();
$status_array=[ $status_array = [
1=>'未支付', 1 => '未支付',
2=>'已支付', 2 => '已支付',
3=>'已取消', 3 => '已取消',
4=>'到检', 4 => '到检',
5=>'已退款', 5 => '已退款',
]; ];
foreach ($table_list as $list_item) { foreach ($table_list as $list_item) {
$list_item->status=$status_array[$list_item->status]; $list_item->status = $status_array[$list_item->status];
} }
$template_path = Storage::path('public/excel/hiszhuanzhen.xlsx'); $template_path = Storage::path('public/excel/hiszhuanzhen.xlsx');
$spreadsheet = IOFactory::load($template_path); $spreadsheet = IOFactory::load($template_path);
@ -561,7 +573,7 @@ class OrderController extends Controller
$writer = new Xlsx($spreadsheet); $writer = new Xlsx($spreadsheet);
$writer->save(Storage::path($excel_path)); $writer->save(Storage::path($excel_path));
$url = Storage::url($excel_path); $url = Storage::url($excel_path);
return ['status'=>true,'msg'=>'查询完成','url'=> env('APP_URL').$url]; return ['status' => true, 'msg' => '查询完成', 'url' => env('APP_URL') . $url];
} }
public function item_check($hospital, $data) public function item_check($hospital, $data)
@ -570,6 +582,7 @@ class OrderController extends Controller
$check = $peis::Post('套餐项目检查', $hospital, $data); $check = $peis::Post('套餐项目检查', $hospital, $data);
return $check; return $check;
} }
public function generateOrderNumber() public function generateOrderNumber()
{ {
// 获取当前时间的时间戳(精确到毫秒) // 获取当前时间的时间戳(精确到毫秒)

@ -2,17 +2,17 @@
<html lang="zh"> <html lang="zh">
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8"/>
<meta name="viewport" <meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" /> content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"/>
<meta http-equiv="X-UA-Compatible" content="ie=edge" /> <meta http-equiv="X-UA-Compatible" content="ie=edge"/>
<link type="image/x-icon" rel="shortcut icon" href="./favicon.png" /> <link type="image/x-icon" rel="shortcut icon" href="./favicon.png"/>
<link rel="stylesheet" href="./assets/import/element-plus.css" /> <link rel="stylesheet" href="./assets/import/element-plus.css"/>
<link rel="stylesheet" href="./assets/import/element.css" /> <link rel="stylesheet" href="./assets/import/element.css"/>
<link href="./assets/import/tailwind.min.css" rel="stylesheet" /> <link href="./assets/import/tailwind.min.css" rel="stylesheet"/>
<script src="./assets/import/vue.js"></script> <script src="./assets/import/vue.js"></script>
<script src="./assets/import/element-plus.js"></script> <script src="./assets/import/element-plus.js"></script>
<link rel="stylesheet" href="./assets/import/icon/style.css" /> <link rel="stylesheet" href="./assets/import/icon/style.css"/>
<script src="./assets/import/axios.js"></script> <script src="./assets/import/axios.js"></script>
<title>体检登记</title> <title>体检登记</title>
<style> <style>
@ -122,7 +122,8 @@
color: #909399; color: #909399;
font-weight: bold; font-weight: bold;
} }
.disnone{
.disnone {
display: none; display: none;
} }
</style> </style>
@ -130,197 +131,250 @@
</head> </head>
<body> <body>
<div id="app"> <div id="app">
<el-config-provider :button="button_config" :locale="elZh"> <el-config-provider :button="button_config" :locale="elZh">
<el-dialog v-model="combo_dialog_show" title="选择套餐" width="800"> <el-dialog v-model="order_dialog_show" title="订单查询" width="1200">
<div>
<div class="select_flex_wrapper">
<el-form label-width="80px" inline @submit.prevent="handleSubmit">
<el-form-item label="开始时间">
<el-date-picker v-model="order_start" type="datetime" placeholder="请选择" format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
<el-form-item label="结束时间">
<el-date-picker v-model="order_end" type="datetime" placeholder="请选择" format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-form>
<el-button type="primary" @click="orderSearchClick()">搜索</el-button>
</div>
<div> <div>
<div> <el-table border :data="order_list" style="width: 100%" height="calc(50vh - 45px)" show-overflow-tooltip>
<div class="select_flex_wrapper"> <el-table-column prop="name" :label="`姓名【${order_list.length}人】`" width="130"></el-table-column>
<el-form label-width="40px" inline @submit.prevent="handleSubmit"> <el-table-column prop="id_number" label="身份证" width="160"></el-table-column>
<el-form-item label="名称"> <el-table-column prop="phone" label="电话"></el-table-column>
<el-input v-model="combo_search_input" placeholder="" @keyup.enter="comboSearchClick"/> <el-table-column prop="order_number" label="订单号"></el-table-column>
</el-form-item> <el-table-column prop="title" label="订单名称"></el-table-column>
</el-form> <el-table-column prop="type" label="类型">
<el-button type="primary" @click="comboSearchClick()">搜索</el-button>
</div>
</div>
<el-table border :data="combo_list_show" style="width: 100%" height="calc(50vh - 45px)" show-overflow-tooltip
ref="combo_table_ref" @row-click="comboRowClick" :row-class-name="comboRowClassName" :default-sort="{ prop: 'price' }">
<el-table-column property="combo_id" label="套餐ID" width="120"></el-table-column>
<el-table-column property="name" label="套餐名称"></el-table-column>
<el-table-column label="性别" width="60">
<template #default="scope"> <template #default="scope">
{{ ['全部', '男', '女'][scope.row.sex] }} <span v-if="scope.row.type==1" style="color: #409EFF;">个检</span>
<span v-if="scope.row.type==2" style="color: #E6A23C;">团检</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column property="pinyin" label="套餐简拼" width="120"></el-table-column> <el-table-column prop="price" label="金额"></el-table-column>
<el-table-column prop="" label="状态">
<el-table-column property="price" sortable label="价格" width="150"> <template #default="scope">
<span v-if="scope.row.status==1" style="color: #409EFF;">待支付</span>
<span v-if="scope.row.status==2" style="color: #E6A23C;">已支付</span>
<span v-if="scope.row.status==3" style="color: #909399;">交易关闭</span>
<span v-if="scope.row.status==4" style="color: #67C23A;">已完成</span>
<span v-if="scope.row.status==5" style="color: #F56C6C;">已退款</span>
<span v-if="scope.row.status==6" style="color: #3a8c7e;">已转赠</span>
</template>
</el-table-column>
<el-table-column prop="check_status" label="到检状态">
<template #default="scope"> <template #default="scope">
{{ parseFloat(scope.row.price).toFixed(2) }} <span v-if="scope.row.check_status==1" style="color: #ffb682;">待检</span>
<span v-if="scope.row.check_status==2" style="color: #9dd978;">已到检</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="created_at" label="创建时间" width="180"></el-table-column>
</el-table> </el-table>
</div> </div>
</el-dialog> </div>
</el-dialog>
<el-dialog v-model="plan_dialog_show" title="号源" width="800"> <el-dialog v-model="combo_dialog_show" title="选择套餐" width="800">
<div>
<div> <div>
<div class="select_flex_wrapper"> <div class="select_flex_wrapper">
<el-form label-width="40px" inline> <el-form label-width="40px" inline @submit.prevent="handleSubmit">
<el-form-item label="日期"> <el-form-item label="名称">
<el-date-picker v-model="plan_data.date" type="date" placeholder="请选择号源日期" format="YYYY-MM-DD" <el-input v-model="combo_search_input" placeholder="" @keyup.enter="comboSearchClick"/>
value-format="YYYY-MM-DD" @change="PlanDateChange()" ></el-date-picker>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-button @click="getPlanList()" type="primary">查看号源</el-button> <el-button type="primary" @click="comboSearchClick()">搜索</el-button>
</div> </div>
<div class="plan_show_wrapper"> </div>
<div @click="selectPlanClick(i)" class="plan_item_wrapper" v-for="(i,k) in plan_list" :key="k" :class="[ <el-table border :data="combo_list_show" style="width: 100%" height="calc(50vh - 45px)" show-overflow-tooltip
ref="combo_table_ref" @row-click="comboRowClick" :row-class-name="comboRowClassName"
:default-sort="{ prop: 'price' }">
<el-table-column property="combo_id" label="套餐ID" width="120"></el-table-column>
<el-table-column property="name" label="套餐名称"></el-table-column>
<el-table-column label="性别" width="60">
<template #default="scope">
{{ ['全部', '男', '女'][scope.row.sex] }}
</template>
</el-table-column>
<el-table-column property="pinyin" label="套餐简拼" width="120"></el-table-column>
<el-table-column property="price" sortable label="价格" width="150">
<template #default="scope">
{{ parseFloat(scope.row.price).toFixed(2) }}
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
<el-dialog v-model="plan_dialog_show" title="号源" width="800">
<div>
<div class="select_flex_wrapper">
<el-form label-width="40px" inline>
<el-form-item label="日期">
<el-date-picker v-model="plan_data.date" type="date" placeholder="请选择号源日期" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" @change="PlanDateChange()"></el-date-picker>
</el-form-item>
</el-form>
<el-button @click="getPlanList()" type="primary">查看号源</el-button>
</div>
<div class="plan_show_wrapper">
<div @click="selectPlanClick(i)" class="plan_item_wrapper" v-for="(i,k) in plan_list" :key="k" :class="[
i.is_vip === 1 ? 'plan_item_vip_wrapper' : '', i.is_vip === 1 ? 'plan_item_vip_wrapper' : '',
(i.sex !== Number(input_data.gender) && i.sex !== 0) ? 'plan_item_error_wrapper' : '', (i.sex !== Number(input_data.gender) && i.sex !== 0) ? 'plan_item_error_wrapper' : '',
i.status === 2 ? 'plan_item_error_wrapper' : '', i.status === 2 ? 'plan_item_error_wrapper' : '',
(i.is_vip === 1 && input_data.vip !== '1') ? 'plan_item_error_wrapper' : '', (i.is_vip === 1 && input_data.vip !== '1') ? 'plan_item_error_wrapper' : '',
(i.id === plan_data.active) ? 'plan_item_active_wrapper' : '', (i.id === plan_data.active) ? 'plan_item_active_wrapper' : '',
]"> ]">
{{ i.plan_number }} {{ i.plan_number }}
</div>
<div class="plan_item_blank_wrapper" v-for="(i,k) in 6" :key="k"></div>
</div>
<div class="select_flex_center_wrapper">
<el-button @click="plan_dialog_show = false">取消</el-button>
<el-button @click="createOrderClick()" type="primary">预约</el-button>
</div> </div>
<div class="plan_item_blank_wrapper" v-for="(i,k) in 6" :key="k"></div>
</div> </div>
</el-dialog> <div class="select_flex_center_wrapper">
<el-button @click="plan_dialog_show = false">取消</el-button>
<div class="page_wrapper"> <el-button @click="createOrderClick()" type="primary">预约</el-button>
<div class="input_box_wrapper">
<el-form label-width="80px">
<el-form-item label="院区">
<el-select v-model="input_data.hospital" placeholder="请选择院区">
<el-option label="秀英院区" value="1"></el-option>
<el-option label="府城院区" value="4"></el-option>
</el-select>
</el-form-item>
<el-form-item label="姓名">
<el-input v-model="input_data.name" placeholder="请输入姓名" />
</el-form-item>
<el-form-item label="证件号">
<el-input @change="idNumberUpdate" v-model="input_data.id_number" placeholder="请输入证件号" />
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="input_data.phone" placeholder="请输入手机号" />
</el-form-item>
<el-form-item label="性别">
<el-select v-model="input_data.gender" placeholder="请选择性别">
<el-option label="男" value="1"></el-option>
<el-option label="女" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="婚否">
<el-select v-model="input_data.married" placeholder="请选择婚否">
<el-option v-for="(i,k) in married_array" :label="i.label" :value="i.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="VIP">
<el-select v-model="input_data.vip" placeholder="请选择VIP类型">
<el-option label="是" value="1"></el-option>
<el-option label="否" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="出生日期">
<el-date-picker v-model="input_data.birthday" type="date" placeholder="请选择出生日期" format="YYYY-MM-DD"
value-format="YYYY-MM-DD"></el-date-picker>
</el-form-item>
<el-form-item label="登记医生">
<el-input v-model="input_data.doctor" placeholder="请输入登记人" />
</el-form-item>
<el-form-item label="登记科室">
<el-input v-model="input_data.appdoctor_department" placeholder="请输入登记科室" />
</el-form-item>
</el-form>
</div> </div>
<div class="select_box_wrapper"> </div>
<div class="select_input_wrapper"> </el-dialog>
<div class="select_flex_wrapper">
<el-form label-width="80px" inline @submit.prevent="handleSubmit">
<el-form-item label="项目搜索">
<el-input v-model="search_input" placeholder="" @keyup.enter="searchClick"/>
</el-form-item>
<el-form-item label="科室" style="margin-left: -50px">
<el-select v-model="search_appointment" placeholder="请选择科室" style="width: 150px" @change="searchClick()" >
<el-option label="全部" value="0" ></el-option>
<el-option v-for="(item,index) in ResKeShilist" :label="item.keshi_name" :value="item.keshi_id" :key="item.keshi_id" ></el-option>
</el-select>
</el-form-item>
</el-form>
<el-button type="primary" @click="searchClick()">搜索</el-button>
</div>
<div class="select_flex_wrapper" style="margin-left: 20px;">
<el-button @click="selectComboFunc()" style="margin-right: 10px" type="primary">选择套餐</el-button>
<el-form v-if="combo_list.length > 0" label-width="40px" inline>
<el-form-item label="套餐">
<div class="combo_show_wrapper">
{{ !!combo_show ? combo_show.name : '无' }}
</div>
</el-form-item>
</el-form>
</div> <div class="page_wrapper">
<div class="input_box_wrapper">
<el-form label-width="80px">
<el-form-item label="院区">
<el-select v-model="input_data.hospital" placeholder="请选择院区">
<el-option label="秀英院区" value="1"></el-option>
<el-option label="府城院区" value="4"></el-option>
</el-select>
</el-form-item>
<el-form-item label="姓名">
<el-input v-model="input_data.name" placeholder="请输入姓名"/>
</el-form-item>
<el-form-item label="证件号">
<el-input @change="idNumberUpdate" v-model="input_data.id_number" placeholder="请输入证件号"/>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="input_data.phone" placeholder="请输入手机号"/>
</el-form-item>
<el-form-item label="性别">
<el-select v-model="input_data.gender" placeholder="请选择性别">
<el-option label="男" value="1"></el-option>
<el-option label="女" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="婚否">
<el-select v-model="input_data.married" placeholder="请选择婚否">
<el-option v-for="(i,k) in married_array" :label="i.label" :value="i.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="VIP">
<el-select v-model="input_data.vip" placeholder="请选择VIP类型">
<el-option label="是" value="1"></el-option>
<el-option label="否" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="出生日期">
<el-date-picker v-model="input_data.birthday" type="date" placeholder="请选择出生日期" format="YYYY-MM-DD"
value-format="YYYY-MM-DD"></el-date-picker>
</el-form-item>
<el-form-item label="登记医生">
<el-input v-model="input_data.doctor" placeholder="请输入登记人"/>
</el-form-item>
<el-form-item label="登记科室">
<el-input v-model="input_data.appdoctor_department" placeholder="请输入登记科室"/>
</el-form-item>
</el-form>
</div>
<div class="select_box_wrapper">
<div class="select_input_wrapper">
<div class="select_flex_wrapper">
<el-form label-width="80px" inline @submit.prevent="handleSubmit">
<el-form-item label="项目搜索">
<el-input v-model="search_input" placeholder="" @keyup.enter="searchClick"/>
</el-form-item>
<el-form-item label="科室" style="margin-left: -50px">
<el-select v-model="search_appointment" placeholder="请选择科室" style="width: 150px"
@change="searchClick()">
<el-option label="全部" value="0"></el-option>
<el-option v-for="(item,index) in ResKeShilist" :label="item.keshi_name" :value="item.keshi_id"
:key="item.keshi_id"></el-option>
</el-select>
</el-form-item>
</el-form>
<el-button type="primary" @click="searchClick()">搜索</el-button>
</div> </div>
<div> <div class="select_flex_wrapper" style="margin-left: 20px;">
<div class="table_title_wrapper">待选项目</div> <el-button @click="selectComboFunc()" style="margin-right: 10px" type="primary">选择套餐</el-button>
<el-table border @selection-change="itemSelectionChange" highlight-current-row @row-click="tableRowClick" <el-form v-if="combo_list.length > 0" label-width="40px" inline>
ref="item_table_ref" show-overflow-tooltip :data="item_list_show" style="width: 100%" <el-form-item label="套餐">
height="calc(50vh - 100px)" :row-class-name="itemTableRowClassName"> <div class="combo_show_wrapper">
<el-table-column type="selection" width="38"></el-table-column> {{ !!combo_show ? combo_show.name : '无' }}
<el-table-column property="title" label="项目名称" width="120"></el-table-column> </div>
<el-table-column property="price" label="价格" width="80"></el-table-column> </el-form-item>
<el-table-column property="group" label="科室" width="80"></el-table-column> </el-form>
<el-table-column label="性别" width="60">
<template #default="scope">
{{ ['全部', '男', '女'][scope.row.sex] }}
</template>
</el-table-column>
<el-table-column property="desc" label="备注"></el-table-column>
<el-table-column property="id" label="项目ID" width="120"></el-table-column>
<el-table-column property="can_qian_hou" label="餐前/餐后" width="90"></el-table-column>
</el-table>
</div> </div>
<div class="mt-3"> </div>
<div class="table_title_wrapper">已选项目</div> <div>
<el-table border :data="select_table_computed" style="width: 100%" height="calc(50vh - 45px - 79px)" <div class="table_title_wrapper">待选项目</div>
show-overflow-tooltip ref="select_table_ref" :row-class-name="yixuanClassName" highlight-current-row <el-table border @selection-change="itemSelectionChange" highlight-current-row @row-click="tableRowClick"
@row-click="itemRowClick"> ref="item_table_ref" show-overflow-tooltip :data="item_list_show" style="width: 100%"
<el-table-column type="selection" width="38"></el-table-column> height="calc(50vh - 100px)" :row-class-name="itemTableRowClassName">
<el-table-column property="name" label="项目名称" width="120"></el-table-column> <el-table-column type="selection" width="38"></el-table-column>
<el-table-column property="price" label="价格" width="80"></el-table-column> <el-table-column property="title" label="项目名称" width="120"></el-table-column>
<el-table-column property="group" label="科室" width="100"></el-table-column> <el-table-column property="price" label="价格" width="80"></el-table-column>
<el-table-column property="desc" label="备注"></el-table-column> <el-table-column property="group" label="科室" width="80"></el-table-column>
<el-table-column property="type" label="类型" width="80"></el-table-column> <el-table-column label="性别" width="60">
<el-table-column property="id" label="项目ID" width="120"></el-table-column> <template #default="scope">
</el-table> {{ ['全部', '男', '女'][scope.row.sex] }}
</template>
</el-table-column>
<el-table-column property="desc" label="备注"></el-table-column>
<el-table-column property="id" label="项目ID" width="120"></el-table-column>
<el-table-column property="can_qian_hou" label="餐前/餐后" width="90"></el-table-column>
</el-table>
</div>
<div class="mt-3">
<div class="table_title_wrapper">已选项目</div>
<el-table border :data="select_table_computed" style="width: 100%" height="calc(50vh - 45px - 79px)"
show-overflow-tooltip ref="select_table_ref" :row-class-name="yixuanClassName" highlight-current-row
@row-click="itemRowClick">
<el-table-column type="selection" width="38"></el-table-column>
<el-table-column property="name" label="项目名称" width="120"></el-table-column>
<el-table-column property="price" label="价格" width="80"></el-table-column>
<el-table-column property="group" label="科室" width="100"></el-table-column>
<el-table-column property="desc" label="备注"></el-table-column>
<el-table-column property="type" label="类型" width="80"></el-table-column>
<el-table-column property="id" label="项目ID" width="120"></el-table-column>
</el-table>
</div>
<div class="price_wrapper">
<div class="price_value_wrapper">
<span v-if="!!pay_info">合计价格:¥ {{ pay_info.true_price }}</span>
<span v-if="!!pay_info" style="font-size: 14px;color: #bbb;"> 原价:¥{{ pay_info.original_price }}</span>
</div> </div>
<div class="price_wrapper"> <div>
<div class="price_value_wrapper"> <el-button @click="openOrderDialog()" type="primary">订单查询</el-button>
<span v-if="!!pay_info">合计价格:¥ {{ pay_info.true_price }}</span> <el-button @click="removeAllClick()" type="danger">清空</el-button>
<span v-if="!!pay_info" style="font-size: 14px;color: #bbb;"> 原价:¥{{ pay_info.original_price }}</span> <el-button @click="removeItemClick()" type="danger">移除项目</el-button>
</div> <el-button @click="planDialogShowClick()" type="primary">预约登记</el-button>
<div>
<el-button @click="removeAllClick()" type="danger">清空</el-button>
<el-button @click="removeItemClick()" type="danger">移除项目</el-button>
<el-button @click="planDialogShowClick()" type="primary">预约登记</el-button>
</div>
</div> </div>
</div> </div>
</div> </div>
</el-config-provider> </div>
</div> </el-config-provider>
</div>
</body> </body>
<script> <script>
const { createApp, onMounted, ref, nextTick, computed } = Vue; const {createApp, onMounted, ref, nextTick, computed} = Vue;
const { ElLoading, ElMessage, ElMessageBox } = ElementPlus; const {ElLoading, ElMessage, ElMessageBox} = ElementPlus;
</script> </script>
<script src="./assets/mounting.js"></script> <script src="./assets/mounting.js"></script>
<script> <script>
@ -472,7 +526,7 @@
}; };
const search_input = ref(""); const search_input = ref("");
const search_appointment=ref(""); const search_appointment = ref("");
const select_items_deep = ref(""); const select_items_deep = ref("");
const select_data_default = { const select_data_default = {
combo: "", combo: "",
@ -543,7 +597,8 @@
BuyInfo: "/api/Web/BuyInfo", BuyInfo: "/api/Web/BuyInfo",
Create: "/api/Web/Create", Create: "/api/Web/Create",
GetDayPlanList: "/api/H5/GetDayPlanList", GetDayPlanList: "/api/H5/GetDayPlanList",
CreateYuYueOrder: "/api/Web/CreateYuYueOrder" CreateYuYueOrder: "/api/Web/CreateYuYueOrder",
OrderSearch: "/api/Web/SearchOrder"
}; };
const $api = (key) => { const $api = (key) => {
return api_map[key]; return api_map[key];
@ -591,14 +646,14 @@
saveSelectDeep(); saveSelectDeep();
if (!!search_input.value) { if (!!search_input.value) {
let il = [] let il = []
if(isEnglishOnly(search_input.value)){//如果是纯英文 if (isEnglishOnly(search_input.value)) {//如果是纯英文
let search_str = search_input.value.toUpperCase(); let search_str = search_input.value.toUpperCase();
for (let i in item_list.value) { for (let i in item_list.value) {
if (!!item_list.value[i].pinyin.includes(search_str)) { if (!!item_list.value[i].pinyin.includes(search_str)) {
il.push(item_list.value[i]) il.push(item_list.value[i])
} }
} }
}else{ } else {
for (let i in item_list.value) { for (let i in item_list.value) {
if (!!item_list.value[i].title.includes(search_input.value)) { if (!!item_list.value[i].title.includes(search_input.value)) {
il.push(item_list.value[i]) il.push(item_list.value[i])
@ -610,10 +665,10 @@
} else { } else {
item_list_show.value = item_list.value item_list_show.value = item_list.value
} }
if(!!search_appointment.value){ if (!!search_appointment.value) {
if(search_appointment.value === "0"){ if (search_appointment.value === "0") {
}else{ } else {
item_list_show.value = item_list_show.value.filter(item => item.group_id === search_appointment.value) item_list_show.value = item_list_show.value.filter(item => item.group_id === search_appointment.value)
} }
@ -676,10 +731,10 @@
item_ids: item_ids, item_ids: item_ids,
}); });
window.$response(response, () => { window.$response(response, () => {
if(response.data.status===true){ if (response.data.status === true) {
pay_info.value = response.data.data; pay_info.value = response.data.data;
}else{ } else {
if(response.data.data !== undefined && response.data.data.item_id !== undefined){ if (response.data.data !== undefined && response.data.data.item_id !== undefined) {
item_table_ref.value.toggleRowSelection( item_table_ref.value.toggleRowSelection(
// 此处必须在 tableData 中查找对应的数据,否则 toggleRowSelection 会失效 // 此处必须在 tableData 中查找对应的数据,否则 toggleRowSelection 会失效
item_list_show.value.find((row) => { item_list_show.value.find((row) => {
@ -691,14 +746,29 @@
} }
return window.$message().error(response.data.msg) return window.$message().error(response.data.msg)
} }
}) })
} }
let ResKeShilist=ref([]); const order_start = ref(formatDatetime(new Date(), "YYYY-MM-DD") + ' 00:00:00')
const order_end = ref(formatDatetime(new Date(), "YYYY-MM-DD") + ' 23:59:59')
const order_dialog_show = ref(false)
const order_list = ref([])
const orderSearchClick = async () => {
const response = await axios.post($api("OrderSearch"), {
order_start: order_start.value,
order_end: order_end.value,
});
window.$response(response.data, () => {
order_list.value = response.data.data.list;
});
}
const openOrderDialog = () => {
order_dialog_show.value = true
}
let ResKeShilist = ref([]);
const getItemGetList = async () => { const getItemGetList = async () => {
const response = await axios.post($api("ItemGetList"),{ const response = await axios.post($api("ItemGetList"), {
appointment: search_appointment.value, appointment: search_appointment.value,
}); });
window.$response(response.data, () => { window.$response(response.data, () => {
@ -723,14 +793,14 @@
const combo_list_show = computed(() => { const combo_list_show = computed(() => {
if (!!combo_search_input_deep.value) { if (!!combo_search_input_deep.value) {
let il = [] let il = []
if(isEnglishOnly(combo_search_input_deep.value)) {//如果是纯英文 if (isEnglishOnly(combo_search_input_deep.value)) {//如果是纯英文
let search_str = combo_search_input_deep.value.toUpperCase(); let search_str = combo_search_input_deep.value.toUpperCase();
for (let i in combo_list.value) { for (let i in combo_list.value) {
if (!!combo_list.value[i].pinyin.includes(search_str)) { if (!!combo_list.value[i].pinyin.includes(search_str)) {
il.push(combo_list.value[i]) il.push(combo_list.value[i])
} }
} }
}else{ } else {
for (let i in combo_list.value) { for (let i in combo_list.value) {
if (!!combo_list.value[i].name.includes(combo_search_input_deep.value)) { if (!!combo_list.value[i].name.includes(combo_search_input_deep.value)) {
il.push(combo_list.value[i]) il.push(combo_list.value[i])
@ -750,7 +820,7 @@
}); });
window.$response(response.data, () => { window.$response(response.data, () => {
combo_list.value = response.data.data.list; combo_list.value = response.data.data.list;
combo_list.value.forEach((v,i) => { combo_list.value.forEach((v, i) => {
combo_list.value[i].price = parseFloat(parseFloat(v.price).toFixed(2)); combo_list.value[i].price = parseFloat(parseFloat(v.price).toFixed(2));
}) })
}); });
@ -899,7 +969,7 @@
getBuyInfo('1'); getBuyInfo('1');
} }
}; };
const removeAllClick=()=>{ const removeAllClick = () => {
window.location.reload(); window.location.reload();
} }
const select_table_ref = ref(null) const select_table_ref = ref(null)
@ -937,13 +1007,13 @@
} }
getBuyInfo('3'); getBuyInfo('3');
} }
const selectComboFunc = ()=>{ const selectComboFunc = () => {
combo_dialog_show.value = true combo_dialog_show.value = true
ComboisClickDisabled.value = false; ComboisClickDisabled.value = false;
} }
const combo_table_ref = ref(null) const combo_table_ref = ref(null)
const combo_dialog_show = ref(false) const combo_dialog_show = ref(false)
let ComboisClickDisabled =ref(false) ; let ComboisClickDisabled = ref(false);
const comboRowClick = (e, index) => { const comboRowClick = (e, index) => {
if (ComboisClickDisabled.value) return; if (ComboisClickDisabled.value) return;
ComboisClickDisabled.value = true; ComboisClickDisabled.value = true;
@ -956,7 +1026,7 @@
combo_dialog_show.value = false combo_dialog_show.value = false
} }
const comboRowClassName = ({ row }) => { const comboRowClassName = ({row}) => {
if (select_data.value.combo === row.combo_id) { if (select_data.value.combo === row.combo_id) {
return 'combo_active cursor-pointer' return 'combo_active cursor-pointer'
} else { } else {
@ -1015,14 +1085,14 @@
} }
const plan_list = ref([]) const plan_list = ref([])
const getPlanList = async () => { const getPlanList = async () => {
if(input_data.value.gender==='男') input_data.value.gender="1" if (input_data.value.gender === '男') input_data.value.gender = "1"
if(input_data.value.gender==='女') input_data.value.gender="2" if (input_data.value.gender === '女') input_data.value.gender = "2"
const response = await axios.post($api("GetDayPlanList"), { const response = await axios.post($api("GetDayPlanList"), {
hospital: input_data.value.hospital, hospital: input_data.value.hospital,
openid: "", openid: "",
person_id: "", person_id: "",
combo_id:select_data.value.combo, combo_id: select_data.value.combo,
person_sex:input_data.value.gender, person_sex: input_data.value.gender,
date: plan_data.value.date, date: plan_data.value.date,
use_type: 1, use_type: 1,
checkup_type_id: 1, checkup_type_id: 1,
@ -1031,7 +1101,7 @@
window.$response(response.data, () => { window.$response(response.data, () => {
plan_list.value = response.data.data.list; plan_list.value = response.data.data.list;
plan_dialog_show.value = true plan_dialog_show.value = true
if(plan_list.value.length===0){ if (plan_list.value.length === 0) {
alert("当前日期暂无号源"); alert("当前日期暂无号源");
} }
}); });
@ -1088,45 +1158,55 @@
for (let i in select_rows) { for (let i in select_rows) {
select_ids.push(select_rows[i].id) select_ids.push(select_rows[i].id)
} }
let classnames='' let classnames = ''
if (select_ids.includes(e.row.id)) { if (select_ids.includes(e.row.id)) {
console.log('select_ids', select_ids, e.row.id) console.log('select_ids', select_ids, e.row.id)
classnames= 'item_active cursor-pointer' classnames = 'item_active cursor-pointer'
} else { } else {
classnames= 'cursor-pointer' classnames = 'cursor-pointer'
} }
if(e.row.group==='材料费'){ if (e.row.group === '材料费') {
classnames=classnames+' disnone' classnames = classnames + ' disnone'
} }
return classnames return classnames
} }
const yixuanClassName=(e)=>{ const yixuanClassName = (e) => {
let classname= 'cursor-pointer' let classname = 'cursor-pointer'
if(e.row.group==='材料费'){ if (e.row.group === '材料费') {
classname=classname+' disnone'; classname = classname + ' disnone';
} }
return classname return classname
} }
function isEnglishOnly(str) { function isEnglishOnly(str) {
// 使用正则表达式检查字符串是否只包含英文字符 // 使用正则表达式检查字符串是否只包含英文字符
return /^[A-Za-z]+$/.test(str); return /^[A-Za-z]+$/.test(str);
} }
function PlanDateChange() { function PlanDateChange() {
getPlanList() getPlanList()
} }
function handleSubmit(){
function handleSubmit() {
} }
onMounted(() => { onMounted(() => {
getQueryData(); getQueryData();
if(input_data.value.hospital == '6') input_data.value.hospital = '1' if (input_data.value.hospital == '6') input_data.value.hospital = '1'
if(input_data.value.hospital == '2') input_data.value.hospital = '4' if (input_data.value.hospital == '2') input_data.value.hospital = '4'
getItemGetList(); getItemGetList();
// getPlanList(); // getPlanList();
}); });
return { return {
order_start,
order_end,
order_dialog_show,
order_list,
orderSearchClick,
openOrderDialog,
elZh, elZh,
getItemGetList, getItemGetList,
handleSubmit, handleSubmit,

@ -110,6 +110,7 @@ Route::group(['middleware' => ['log'],'prefix' => 'api/Web'], function () {
Route::post('/ItemGetList', 'App\Http\Controllers\API\Web\ItemController@GetList');//Web套餐列表 Route::post('/ItemGetList', 'App\Http\Controllers\API\Web\ItemController@GetList');//Web套餐列表
Route::post('/Create', 'App\Http\Controllers\API\Web\OrderController@Create');//Web套餐列表 Route::post('/Create', 'App\Http\Controllers\API\Web\OrderController@Create');//Web套餐列表
Route::post('/CreateYuYueOrder', 'App\Http\Controllers\API\Web\OrderController@CreateYuYueOrder');//客服预约 Route::post('/CreateYuYueOrder', 'App\Http\Controllers\API\Web\OrderController@CreateYuYueOrder');//客服预约
Route::post('/SearchOrder', 'App\Http\Controllers\API\Web\OrderController@SearchOrder');//订单查询
}); });
//对外------ //对外------

Loading…
Cancel
Save