main
yanzai 11 months ago
parent d96a870324
commit f4ddbe54b9

@ -85,6 +85,7 @@ class ApiMapController extends Controller
'CheckedSignIn' => $base_url . '/api/H5/CheckedSignIn', // 检后签到 'CheckedSignIn' => $base_url . '/api/H5/CheckedSignIn', // 检后签到
'SendMsgCode' => $base_url . '/api/H5/SendMsgCode', // 发送验证码 'SendMsgCode' => $base_url . '/api/H5/SendMsgCode', // 发送验证码
'CheckMsgCode' => $base_url . '/api/H5/CheckMsgCode', // 验证验证码 'CheckMsgCode' => $base_url . '/api/H5/CheckMsgCode', // 验证验证码
'CheckEnableNmrTime' => $base_url . '/api/H5/CheckEnableNmrTime', // 查询是否有可用核磁号源
'BaseInfo' => $base_url . '/api/H5/BaseInfo', // 基础信息 'BaseInfo' => $base_url . '/api/H5/BaseInfo', // 基础信息
'CreateNewOrder' => $base_url . '/api/H5/CreateNewOrder', // 创建订单(新) 'CreateNewOrder' => $base_url . '/api/H5/CreateNewOrder', // 创建订单(新)
]; ];

@ -164,4 +164,12 @@ class NMRController extends Controller
// } // }
return \Yz::Return(true,"查询完成",['list'=>$list,'weeklist'=>$week7]); 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']]);
}
} }

@ -3,6 +3,7 @@
namespace App\Http\Controllers\API\H5; namespace App\Http\Controllers\API\H5;
use App\Http\Controllers\API\AspNetZhuanController; use App\Http\Controllers\API\AspNetZhuanController;
use App\Http\Controllers\API\PEISApiController;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Lib\Tools; use App\Lib\Tools;
use Illuminate\Http\Request; 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;
}
} }

@ -0,0 +1,32 @@
<?php
namespace App\Services;
use App\Http\Controllers\API\AspNetZhuanController;
use DateTime;
class NmrService
{
public function CheckEnableNmrTime($date,$time){
// 根据时间查询二线可用号源区分上下午二线需预约体检时间1小时后
$AspNet = new AspNetZhuanController();
$nmrPlans=$AspNet::ErXian(['yyid'=>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];
}
}
}

@ -76,6 +76,7 @@ Route::group(['middleware' => ['log'],'prefix' => 'api/H5'], function () {
Route::post('/CheckedSignIn', 'App\Http\Controllers\API\H5\OrderController@CheckedSignIn');//检后签到 Route::post('/CheckedSignIn', 'App\Http\Controllers\API\H5\OrderController@CheckedSignIn');//检后签到
Route::post('/SendMsgCode', 'App\Http\Controllers\API\SendMsgCodeController@SendMsgCode');//发送验证码 Route::post('/SendMsgCode', 'App\Http\Controllers\API\SendMsgCodeController@SendMsgCode');//发送验证码
Route::post('/CheckMsgCode', 'App\Http\Controllers\API\SendMsgCodeController@CheckMsgCode');//验证验证码 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('/BaseInfo', 'App\Http\Controllers\API\H5\HomeController@BaseInfo');//基础信息
Route::post('/CreateNewOrder', 'App\Http\Controllers\API\H5\OrderNewController@CreateNewOrder');//创建新订单 Route::post('/CreateNewOrder', 'App\Http\Controllers\API\H5\OrderNewController@CreateNewOrder');//创建新订单

@ -271,13 +271,7 @@ const comfrimyy = async () => {
let plan_nmr_id = ""; let plan_nmr_id = "";
uni.showLoading(); uni.showLoading();
console.log(yytjInfo.value?.nmr_list); 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) { if (yytjInfo.value?.nmr_list?.length > 1) {
plan_nmr_id = yytjInfo.value?.nmr_list[0]?.id; plan_nmr_id = yytjInfo.value?.nmr_list[0]?.id;
@ -310,7 +304,7 @@ const comfrimyy = async () => {
peiou_info:$store.getPeiOuUser()// peiou_info:$store.getPeiOuUser()//
}; };
console.log(obj); console.log(obj);
const response = await $api("OrderCreate", obj); const response = await $api("CreateNewOrder", obj);
$response(response, () => { $response(response, () => {
if (response.status) { if (response.status) {
if (response.data.action == "pay") { if (response.data.action == "pay") {
@ -684,7 +678,7 @@ const toRouter = (url, status, index) => {
</view> </view>
</view> </view>
</view> </view>
<button <button v-if="!buyInfo.group_id"
@click="comfrimyy" @click="comfrimyy"
class="w-210rpx h-42rpx center text-#fff text-30rpx rounded-full bg-#239EA3 !m-0 button" class="w-210rpx h-42rpx center text-#fff text-30rpx rounded-full bg-#239EA3 !m-0 button"
> >

@ -39,6 +39,7 @@
let calendarShow = ref(false); // let calendarShow = ref(false); //
const rl_list = ref(false); // const rl_list = ref(false); //
let isClickDoctor = ref(0); // let isClickDoctor = ref(0); //
let erxianInfo=ref(null);
const mountedAction = async () => { const mountedAction = async () => {
uni.showLoading({ uni.showLoading({
@ -68,6 +69,7 @@
comboInfo.value = response.data.combo_info; comboInfo.value = response.data.combo_info;
itemsInfo.value = response.data.items_info; itemsInfo.value = response.data.items_info;
truePrice.value = response.data.true_price; truePrice.value = response.data.true_price;
erxianInfo.value = response.data.nmr_list2;
currentDate.value = getToday(); //huo currentDate.value = getToday(); //huo
console.log(yytjInfo.value, "cfvghbjnkmljhbgvfcgvhbjnk"); console.log(yytjInfo.value, "cfvghbjnkmljhbgvfcgvhbjnk");
if (!yytjInfo.value?.nmr_list?.length) { if (!yytjInfo.value?.nmr_list?.length) {
@ -396,12 +398,35 @@
getTjTimeList(item); // getTjTimeList(item); //
} }
}; };
const getCurrentTime = (item, index) => { //线
const CheckEnableNmrTimeFunc= async (date,time)=>{
uni.showLoading({
title: "加载中",
});
const response = await $api("CheckEnableNmrTime", {date:date,time:time});
uni.hideLoading();
let status=false;
$response(response, () => {
status=response.status
})
return status;
}
const getCurrentTime = async (item, index) => {
// //
if (item.status == 2) { if (item.status == 2) {
uni.$lu.toast("该号源已被其他人预约"); uni.$lu.toast("该号源已被其他人预约");
return; return;
} }
//
if(erxianInfo.value.length>0){
let checknmr= await CheckEnableNmrTimeFunc(item.date,item.newTime);
console.log('------',checknmr);
if(checknmr !==true){
uni.$lu.toast("此时间点,无可用二线号源,请选择其他时间");
return;
}
}
let pick_day = 3 let pick_day = 3
let active_item = yytjInfo.value.nmr_list[nmrIndex.value] let active_item = yytjInfo.value.nmr_list[nmrIndex.value]
if (active_item.item_id !== -1) { if (active_item.item_id !== -1) {

Loading…
Cancel
Save