diff --git a/Laravel/app/Http/Controllers/API/ApiMapController.php b/Laravel/app/Http/Controllers/API/ApiMapController.php index 37a7653..e08b6d4 100644 --- a/Laravel/app/Http/Controllers/API/ApiMapController.php +++ b/Laravel/app/Http/Controllers/API/ApiMapController.php @@ -85,6 +85,7 @@ class ApiMapController extends Controller 'CheckedSignIn' => $base_url . '/api/H5/CheckedSignIn', // 检后签到 'SendMsgCode' => $base_url . '/api/H5/SendMsgCode', // 发送验证码 'CheckMsgCode' => $base_url . '/api/H5/CheckMsgCode', // 验证验证码 + 'CheckEnableNmrTime' => $base_url . '/api/H5/CheckEnableNmrTime', // 查询是否有可用核磁号源 'BaseInfo' => $base_url . '/api/H5/BaseInfo', // 基础信息 'CreateNewOrder' => $base_url . '/api/H5/CreateNewOrder', // 创建订单(新) ]; diff --git a/Laravel/app/Http/Controllers/API/H5/NMRController.php b/Laravel/app/Http/Controllers/API/H5/NMRController.php index 266ab70..a4d8c1d 100644 --- a/Laravel/app/Http/Controllers/API/H5/NMRController.php +++ b/Laravel/app/Http/Controllers/API/H5/NMRController.php @@ -164,4 +164,12 @@ class NMRController extends Controller // } return \Yz::Return(true,"查询完成",['list'=>$list,'weeklist'=>$week7]); } + //检查核磁时间是否可用 + public function CheckEnableNmrTime(){ + $date=request('date'); + $time=request('time'); + $service=new \App\Services\NmrService(); + $res=$service->CheckEnableNmrTime($date,$time); + return \Yz::Return($res['status'],'',['datetime'=>$res['datetime']]); + } } diff --git a/Laravel/app/Http/Controllers/API/H5/OrderNewController.php b/Laravel/app/Http/Controllers/API/H5/OrderNewController.php index 74116b0..ecf41b0 100644 --- a/Laravel/app/Http/Controllers/API/H5/OrderNewController.php +++ b/Laravel/app/Http/Controllers/API/H5/OrderNewController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\API\H5; use App\Http\Controllers\API\AspNetZhuanController; +use App\Http\Controllers\API\PEISApiController; use App\Http\Controllers\Controller; use App\Lib\Tools; use Illuminate\Http\Request; @@ -384,5 +385,24 @@ class OrderNewController extends Controller } } + public function item_check($hospital, $data) + { + $peis = new PEISApiController(); + $check = $peis::Post('套餐项目检查', $hospital, $data); + return $check; + } + + public function generateOrderNumber() + { + // 获取当前时间的时间戳(精确到毫秒) + $timestamp = round(microtime(true) * 1000); + // 生成一个随机数(可以根据需要调整长度) + $randomPart = substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, 6); + + // 拼接时间戳和随机部分 + $orderNumber = date("YmdHis", $timestamp / 1000) . substr($timestamp % 1000, -3) . $randomPart; + + return $orderNumber; + } } diff --git a/Laravel/app/Services/NmrService.php b/Laravel/app/Services/NmrService.php new file mode 100644 index 0000000..2573d02 --- /dev/null +++ b/Laravel/app/Services/NmrService.php @@ -0,0 +1,32 @@ +6,'data'=>[$date],'action'=>"1"],uniqid()); + if($time<="12:00") $end_time="12:00"; + if($time>"12:00") $end_time="23:59"; + if(!isset($nmrPlans[$date]) or empty($nmrPlans[$date])) return ['status'=>false,'datetime'=>'']; + $planTime = new DateTime($time); + $planTime->modify('+1 hour'); + $plan_time=$planTime->format('H:i'); + $enable_datetime=''; + foreach ($nmrPlans[$date] as $nmp_p){ + if($nmp_p['Time']>=$plan_time and $nmp_p['Time']<=$end_time and $nmp_p['keyong']==="0"){ + $enable_datetime=$date." ".$nmp_p['Time']; + break; + } + } + if($enable_datetime<>''){ + return ['status'=>true,'datetime'=>$enable_datetime]; + }else{ + return ['status'=>false,'datetime'=>$enable_datetime]; + } + } +} diff --git a/Laravel/routes/web.php b/Laravel/routes/web.php index b5baa3c..db256e4 100644 --- a/Laravel/routes/web.php +++ b/Laravel/routes/web.php @@ -76,6 +76,7 @@ Route::group(['middleware' => ['log'],'prefix' => 'api/H5'], function () { Route::post('/CheckedSignIn', 'App\Http\Controllers\API\H5\OrderController@CheckedSignIn');//检后签到 Route::post('/SendMsgCode', 'App\Http\Controllers\API\SendMsgCodeController@SendMsgCode');//发送验证码 Route::post('/CheckMsgCode', 'App\Http\Controllers\API\SendMsgCodeController@CheckMsgCode');//验证验证码 + Route::post('/CheckEnableNmrTime', 'App\Http\Controllers\API\H5\NMRController@CheckEnableNmrTime');//查询是否有可用核磁号源 Route::post('/BaseInfo', 'App\Http\Controllers\API\H5\HomeController@BaseInfo');//基础信息 Route::post('/CreateNewOrder', 'App\Http\Controllers\API\H5\OrderNewController@CreateNewOrder');//创建新订单 diff --git a/h5/pages/main/tjyy/tjyy.vue b/h5/pages/main/tjyy/tjyy.vue index 9461037..26d986f 100644 --- a/h5/pages/main/tjyy/tjyy.vue +++ b/h5/pages/main/tjyy/tjyy.vue @@ -271,13 +271,7 @@ const comfrimyy = async () => { let plan_nmr_id = ""; uni.showLoading(); console.log(yytjInfo.value?.nmr_list); - for (let i = 0; i < yytjInfo.value?.nmr_list?.length; i++) { - if (!yytjInfo.value?.nmr_list[i].id) { - uni.$lu.toast("请完善预约时间"); - uni.hideLoading(); - return; - } - } + if (yytjInfo.value?.nmr_list?.length > 1) { plan_nmr_id = yytjInfo.value?.nmr_list[0]?.id; @@ -310,7 +304,7 @@ const comfrimyy = async () => { peiou_info:$store.getPeiOuUser()//配偶信息 }; console.log(obj); - const response = await $api("OrderCreate", obj); + const response = await $api("CreateNewOrder", obj); $response(response, () => { if (response.status) { if (response.data.action == "pay") { @@ -684,7 +678,7 @@ const toRouter = (url, status, index) => { -