获取我的账户数据 增加坐班医生
This commit is contained in:
parent
53bfdc1c99
commit
9d85acb559
@ -231,13 +231,13 @@ class OrderInquiry extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医生某一时间段,某种状态的订单金额
|
||||
* 获取医生接诊的订单金额
|
||||
* @param array $params
|
||||
* @param array $reception_time 接诊时间区间
|
||||
* @param array $inquiry_status_params inquiry_status字段搜索条件
|
||||
* @return int|mixed|string
|
||||
*/
|
||||
public static function getOrderInquiryBetweenTimeAmountTotalSum(array $params, array $reception_time, array $inquiry_status_params): mixed
|
||||
public static function getDoctorAmountTotal(array $params, array $reception_time, array $inquiry_status_params): mixed
|
||||
{
|
||||
return self::where($params)
|
||||
->whereIn('inquiry_status', $inquiry_status_params)
|
||||
@ -246,6 +246,23 @@ class OrderInquiry extends Model
|
||||
->sum("amount_total");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医生接诊的订单金额-坐班医生
|
||||
* @param array $params
|
||||
* @param array $reception_time 接诊时间区间
|
||||
* @param array $inquiry_status_params inquiry_status字段搜索条件
|
||||
* @return int|mixed|string
|
||||
*/
|
||||
public static function getCooperationDoctorAmountTotal(array $params, array $reception_time, array $inquiry_status_params): mixed
|
||||
{
|
||||
return self::where($params)
|
||||
->whereNotIn('inquiry_type',[2,4])
|
||||
->whereIn('inquiry_status', $inquiry_status_params)
|
||||
->whereBetween('reception_time', $reception_time)
|
||||
->orderBy('reception_time')
|
||||
->sum("amount_total");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医生某种状态的订单金额
|
||||
* @param array $params
|
||||
|
||||
@ -32,12 +32,29 @@ class DoctorAccountService extends BaseService
|
||||
|
||||
$date = date('Y-m-d',time());
|
||||
|
||||
// 今日接诊收入
|
||||
$inquiryService = new InquiryService();
|
||||
$doctor_today_inquiry_total = $inquiryService->getDoctorDayAmountTotal($user_info['client_user_id'],$date);
|
||||
// 获取医生数据
|
||||
$params = array();
|
||||
$params['doctor_id'] = $user_info['client_user_id'];
|
||||
$user_doctor = UserDoctor::getOne($params);
|
||||
if (empty($user_doctor)){
|
||||
return fail();
|
||||
}
|
||||
|
||||
// 今日已完成收入
|
||||
$doctor_day_completed_amount_total = $inquiryService->getDoctorDayCompletedAmountTotal($user_info['client_user_id'],$date);
|
||||
$inquiryService = new InquiryService();
|
||||
|
||||
if ($user_doctor['is_platform_deep_cooperation'] == 0){
|
||||
// 获取医生当日接诊的订单金额
|
||||
$doctor_today_inquiry_total = $inquiryService->getDoctorDayAmountTotal($user_info['client_user_id'],$date);
|
||||
|
||||
// 获取医生当日已完成未结束的订单金额
|
||||
$doctor_day_completed_amount_total = $inquiryService->getDoctorDayCompletedAmountTotal($user_info['client_user_id'],$date);
|
||||
}else{
|
||||
// 获取医生当日接诊的订单金额-坐班医生
|
||||
$doctor_today_inquiry_total = $inquiryService->getCooperationDoctorDayAmountTotal($user_info['client_user_id'],$date);
|
||||
|
||||
// 获取医生当日已完成未结束的订单金额-坐班医生
|
||||
$doctor_day_completed_amount_total = $inquiryService->getCooperationDoctorCompletedAmountTotal($user_info['client_user_id'],$date);
|
||||
}
|
||||
|
||||
// 获取医生账户余额
|
||||
$balance_account = $this->getDoctorBalanceAccount($user_info['client_user_id']);
|
||||
|
||||
@ -1639,7 +1639,39 @@ class InquiryService extends BaseService
|
||||
|
||||
$inquiry_status_params = [4,5]; // 问诊订单状态(1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消)
|
||||
|
||||
$amount_total_sum = OrderInquiry::getOrderInquiryBetweenTimeAmountTotalSum($params, $reception_time, $inquiry_status_params);
|
||||
$amount_total_sum = OrderInquiry::getDoctorAmountTotal($params, $reception_time, $inquiry_status_params);
|
||||
|
||||
return $amount_total_sum ?: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医生当日接诊的订单金额-坐班医生
|
||||
* 状态:已接诊
|
||||
* 排除快速-购药
|
||||
* @param string $doctor_id
|
||||
* @param string $date
|
||||
* @return float
|
||||
*/
|
||||
public function getCooperationDoctorDayAmountTotal(string $doctor_id, string $date): float
|
||||
{
|
||||
// 获取当天开始时间
|
||||
$start_date = date('Y-m-d 00:00:00', strtotime($date));
|
||||
|
||||
// 获取当天结束时间
|
||||
$end_date = date('Y-m-d 23:59:59', strtotime($date));
|
||||
|
||||
// 获取医生当日接诊订单金额
|
||||
$params = array();
|
||||
$params['doctor_id'] = $doctor_id;
|
||||
$params['inquiry_refund_status'] = 0; // 问诊订单退款状态(0:无退款 1:申请退款 2:退款中 3:退款成功 4:拒绝退款 5:退款关闭)
|
||||
$params['inquiry_pay_status'] = 2; // 支付状态(1:未支付 2:已支付 3:支付中 4:支付失败 5:支付超时 6:支付关闭 7:已撤销 8:转入退款)
|
||||
$params['is_withdrawal'] = 0; // 是否提现(0:否 1:是 2:提现中)
|
||||
|
||||
$reception_time = [$start_date, $end_date];
|
||||
|
||||
$inquiry_status_params = [4,5]; // 问诊订单状态(1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消)
|
||||
|
||||
$amount_total_sum = OrderInquiry::getCooperationDoctorAmountTotal($params, $reception_time, $inquiry_status_params);
|
||||
|
||||
return $amount_total_sum ?: 0;
|
||||
}
|
||||
@ -1670,7 +1702,39 @@ class InquiryService extends BaseService
|
||||
|
||||
$inquiry_status_params = [5]; // 问诊订单状态(1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消)
|
||||
|
||||
$amount_total_sum = OrderInquiry::getOrderInquiryBetweenTimeAmountTotalSum($params, $reception_time, $inquiry_status_params);
|
||||
$amount_total_sum = OrderInquiry::getDoctorAmountTotal($params, $reception_time, $inquiry_status_params);
|
||||
|
||||
return $amount_total_sum ?: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医生当日已完成未结束的订单金额-坐班医生
|
||||
* 状态:已完成
|
||||
* 排除快速-购药
|
||||
* @param string $doctor_id
|
||||
* @param string $date
|
||||
* @return float
|
||||
*/
|
||||
public function getCooperationDoctorCompletedAmountTotal(string $doctor_id, string $date): float
|
||||
{
|
||||
// 获取当天开始时间
|
||||
$start_date = date('Y-m-d 00:00:00', strtotime($date));
|
||||
|
||||
// 获取当天结束时间
|
||||
$end_date = date('Y-m-d 23:59:59', strtotime($date));
|
||||
|
||||
// 获取医生当日接诊订单金额
|
||||
$params = array();
|
||||
$params['doctor_id'] = $doctor_id;
|
||||
$params['inquiry_refund_status'] = 0; // 问诊订单退款状态(0:无退款 1:申请退款 2:退款中 3:退款成功 4:拒绝退款 5:退款关闭)
|
||||
$params['inquiry_pay_status'] = 2; // 支付状态(1:未支付 2:已支付 3:支付中 4:支付失败 5:支付超时 6:支付关闭 7:已撤销 8:转入退款)
|
||||
$params['is_withdrawal'] = 0; // 是否提现(0:否 1:是 2:提现中)
|
||||
|
||||
$reception_time = [$start_date, $end_date];
|
||||
|
||||
$inquiry_status_params = [5]; // 问诊订单状态(1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消)
|
||||
|
||||
$amount_total_sum = OrderInquiry::getCooperationDoctorAmountTotal($params, $reception_time, $inquiry_status_params);
|
||||
|
||||
return $amount_total_sum ?: 0;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user