From cf6176c13e3e2fbd6bd56f9b608f39cf1927b22f Mon Sep 17 00:00:00 2001 From: yanzai Date: Mon, 28 Oct 2024 13:48:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E7=BA=A6=E8=B0=83=E6=95=B4=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/API/H5/ComboController.php | 2 +- .../Http/Controllers/API/H5/NMRController.php | 19 ++++--- h5/common/WeeklyCalendar.vue | 52 +++++++++++++++++++ h5/pages/main/ctime/ctime.vue | 2 +- 4 files changed, 66 insertions(+), 9 deletions(-) diff --git a/Laravel/app/Http/Controllers/API/H5/ComboController.php b/Laravel/app/Http/Controllers/API/H5/ComboController.php index d00294c..a161128 100644 --- a/Laravel/app/Http/Controllers/API/H5/ComboController.php +++ b/Laravel/app/Http/Controllers/API/H5/ComboController.php @@ -404,7 +404,7 @@ select combo_id as c_id,count(*) as sale_count from orders where status in(2,4) $all_items = DB::table('items')->where(['status' => 1])->get(); $item_new = []; foreach ($group_info[0]['items'] as $item) { - $item['keshi_name'] = '其他'; + $item['keshi_name'] = '其他'; $item['desc'] = ''; foreach ($all_items as $it) { if ($it->item_id == $item['id']) { diff --git a/Laravel/app/Http/Controllers/API/H5/NMRController.php b/Laravel/app/Http/Controllers/API/H5/NMRController.php index fd51e93..1eea54f 100644 --- a/Laravel/app/Http/Controllers/API/H5/NMRController.php +++ b/Laravel/app/Http/Controllers/API/H5/NMRController.php @@ -91,13 +91,14 @@ class NMRController extends Controller $aspnet=new AspNetZhuanController(); $week7=[]; - + $currentDate = new DateTime(); $nmr=$aspnet::GetNmrList(['yyid'=>6,'data'=>$days7,'action'=>"1"],uniqid()); //获取每日数量 foreach($nmr as $k=>$v){ $t_v=[]; foreach ($v as $k1 => $v1) { - if($v1['keyong']==0){ + $givenDate = new DateTime($v1['DTime']); + if($v1['keyong']==0 and $givenDate > $currentDate){ $t_v[]=$v1; } } @@ -112,11 +113,15 @@ class NMRController extends Controller $list=[]; if(isset($nmr[$date])){ foreach($nmr[$date] as $k=>$v){ - $list[]=[ - 'id'=>$v['TimeNum'], - 'time'=>$v['Time'], - 'status'=>$v['keyong']==="0"?1:2, - ]; + $givenDate = new DateTime($v1['DTime']); + if( $givenDate > $currentDate){ + $list[]=[ + 'id'=>$v['TimeNum'], + 'time'=>$v['Time'], + 'status'=>$v['keyong']==="0"?1:2, + ]; + } + } } diff --git a/h5/common/WeeklyCalendar.vue b/h5/common/WeeklyCalendar.vue index 485a6ce..7899e9b 100644 --- a/h5/common/WeeklyCalendar.vue +++ b/h5/common/WeeklyCalendar.vue @@ -36,6 +36,18 @@ type: String, // required: true }, + NmrDTime: { + type: String, + // required: true + }, + TjDTime: { + type: String, + // required: true + }, + TjType: { + type: String, + // required: true + }, }); @@ -46,6 +58,14 @@ if(timeInfo.status==2){ uni.$lu.toast("该号源已经被占用"); return false; + } + if(props.TjType=="tj"){ + //console.log(props.NmrDTime) + //console.log(props.TjDTime) + if(!validateDates(props.TjDTime,props.NmrDTime)){ + return false; + } + } emit('selectTime', timeInfo); } @@ -53,6 +73,38 @@ emit('openMonth'); } + const validateDates=(dateA, dateB)=> { + console.log(dateA) + console.log(dateB) + // 将输入的字符串转换为 Date 对象 + const a = new Date(dateA.substring(0,10)); + const b = new Date(dateB.substring(0,10)); + + // 检查日期是否有效 + if (isNaN(a.getTime()) || isNaN(b.getTime())) { + uni.$lu.toast("格式错误"); + return false; + } + + // 计算两个日期之间的差值(以毫秒为单位) + const diffInMilliseconds = b - a; + // 将毫秒转换成天数 + const diffInDays = diffInMilliseconds / (1000 * 60 * 60 * 24); + + // 检查 a 是否早于 b + if (diffInDays < 0) { + uni.$lu.toast("体检日期必须在核磁日期前3天范围内"); + return false; + } + // 检查 a 是否在 b 的前三天内 + else if (diffInDays > 3) { + uni.$lu.toast("体检日期必须在核磁日期前3天范围内"); + return false; + } + + // 如果所有条件都满足 + return true; + }