修改返回字符串

This commit is contained in:
wucongxing8150 2024-04-16 09:39:07 +08:00
parent 4ea1b5d41a
commit e0848b42cf

View File

@ -169,30 +169,11 @@ class OrderServicePackageService extends BaseService
} }
} }
// 处理问诊次数 // 处理当月问诊次数
// 3.5号购买每月2次问诊次数。今天5.3,属于第几个月,这个月的开始时间和结束时间 // 3.5号购买每月2次问诊次数。今天5.3,属于第几个月,这个月的开始时间和结束时间
if ($order_service_package_detail['monthly_frequency'] != 0) { if ($order_service_package_detail['monthly_frequency'] != 0) {
$month_inquiry_count = 0; // 当前所属月问诊次数 // 获取服务包当月问诊次数
$month_inquiry_count = $this->getCurrentMonthInquiryCount($order_service_package['start_time'],$service_type,$user_info['client_user_id'], $doctor_id);
// 获取当月问诊次数
// 获取开启服务日期和今日的相差天数
$diff = abs(time() - strtotime($order_service_package['start_time']));
$diff_days = ceil($diff / (60 * 60 * 24)); // 转换为天数
// 获取当前月次
$month_time = ceil($diff_days / 30);
$days = (int)$month_time * 30;
// 获取开始日期
$end_date = date('Y-m-d 23:59:59', strtotime($order_service_package['start_time'] . " +$days days"));
$start_date = date('Y-m-d 00:00:00', strtotime($end_date . "-30 days"));
$InquiryService = new InquiryService();
$order_inquiry = $InquiryService->getPatientServiceInquiry($service_type, $user_info['client_user_id'], $doctor_id, $start_date, $end_date);
if (!empty($order_inquiry)) {
$month_inquiry_count = count($order_inquiry);
}
if ($month_inquiry_count >= $order_service_package_detail['monthly_frequency']) { if ($month_inquiry_count >= $order_service_package_detail['monthly_frequency']) {
// 超出当月问诊次数 // 超出当月问诊次数
@ -713,27 +694,8 @@ class OrderServicePackageService extends BaseService
// 检测问诊次数 // 检测问诊次数
// 3.5号购买每月2次问诊次数。今天5.3,属于第几个月,这个月的开始时间和结束时间 // 3.5号购买每月2次问诊次数。今天5.3,属于第几个月,这个月的开始时间和结束时间
if ($order_service_package_detail['monthly_frequency'] != 0) { if ($order_service_package_detail['monthly_frequency'] != 0) {
$month_inquiry_count = 0; // 当前所属月问诊次数 // 获取服务包当月问诊次数
$month_inquiry_count = $this->getCurrentMonthInquiryCount($order_service_package['start_time'],$order_service_package['order_service_type'],$user_info['client_user_id'], $order_service_package['doctor_id']);
// 获取当月问诊次数
// 获取开启服务日期和今日的相差天数
$diff = abs(time() - strtotime($order_service_package['start_time']));
$diff_days = ceil($diff / (60 * 60 * 24)); // 转换为天数
// 获取当前月次
$month_time = ceil($diff_days / 30);
$days = (int)$month_time * 30;
// 获取开始日期
$end_date = date('Y-m-d 23:59:59', strtotime($order_service_package['start_time'] . " +$days days"));
$start_date = date('Y-m-d 00:00:00', strtotime($end_date . "-30 days"));
$InquiryService = new InquiryService();
$order_inquiry = $InquiryService->getPatientServiceInquiry($order_service_package['order_service_type'], $user_info['client_user_id'], $order_service_package['doctor_id'], $start_date, $end_date);
if (!empty($order_inquiry)) {
$month_inquiry_count = count($order_inquiry);
}
if ($month_inquiry_count >= $order_service_package_detail['monthly_frequency']) { if ($month_inquiry_count >= $order_service_package_detail['monthly_frequency']) {
return fail(HttpEnumCode::HTTP_ERROR, "超出服务包所包含的当月问诊次数"); return fail(HttpEnumCode::HTTP_ERROR, "超出服务包所包含的当月问诊次数");
@ -1040,8 +1002,8 @@ class OrderServicePackageService extends BaseService
} }
$result = array(); $result = array();
$result['order_inquiry_id'] = $order_inquiry['order_inquiry_id']; $result['order_inquiry_id'] = (string)$order_inquiry['order_inquiry_id'];
$result['order_no'] = $order['order_no']; $result['order_no'] = (string)$order['order_no'];
return success($result); return success($result);
} }
@ -1124,4 +1086,39 @@ class OrderServicePackageService extends BaseService
return $result; return $result;
} }
/**
* 获取服务包当月问诊次数
* @param string $start_time
* @param string|int $service_type
* @param string|int $user_id
* @param string|int $doctor_id
* @return int
*/
public function getCurrentMonthInquiryCount(string $start_time,string|int $service_type,string|int $user_id,string|int $doctor_id): int
{
$month_inquiry_count = 0; // 当前所属月问诊次数
// 获取当月问诊次数
// 获取开启服务日期和今日的相差天数
$diff = abs(time() - strtotime($start_time));
$diff_days = ceil($diff / (60 * 60 * 24)); // 转换为天数
// 获取当前月次
$month_time = ceil($diff_days / 30);
$days = (int)$month_time * 30;
// 获取开始日期
$end_date = date('Y-m-d 23:59:59', strtotime($start_time . " +$days days"));
$start_date = date('Y-m-d 00:00:00', strtotime($end_date . "-30 days"));
$InquiryService = new InquiryService();
$order_inquiry = $InquiryService->getPatientServiceInquiry($service_type, $user_id, $doctor_id, $start_date, $end_date);
if (!empty($order_inquiry)) {
$month_inquiry_count = count($order_inquiry);
}
return $month_inquiry_count;
}
} }