获取提现数据修改

This commit is contained in:
wucongxing8150 2024-04-22 15:36:01 +08:00
parent 26d89a58e3
commit 971baa32bf
4 changed files with 13 additions and 42 deletions

View File

@ -50,21 +50,16 @@ class DoctorAccountController extends AbstractController
/**
* 获取提现数据
* @return ResponseInterface
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
public function getDoctorWithdrawalInfo(): ResponseInterface
{
$request = $this->container->get(DoctorAccountRequest::class);
$request->scene('getDoctorWithdrawalInfo')->validateResolved();
$DoctorAccountService = new DoctorAccountService();
$data = $DoctorAccountService->getDoctorWithdrawalInfo();
return $this->response->json($data);
}
/**
* 获取可提现问诊订单列表
* 获取可提现订单列表
* @return ResponseInterface
*/
public function getDoctorWithdrawalOrderList(): ResponseInterface

View File

@ -19,9 +19,6 @@ class DoctorAccountRequest extends FormRequest
'getDoctorWithdrawalRecordList' => [ // 获取医生提现记录列表
'year',
],
'getDoctorWithdrawalInfo' => [ // 获取提现数据
'order_inquiry_ids',
],
'addDoctorWithdrawal' => [ // 发起提现
'order_inquiry_id',
'withdrawal_amount_total',

View File

@ -236,8 +236,6 @@ class DoctorAccountService extends BaseService
{
$user_info = $this->request->getAttribute("userInfo") ?? [];
$order_inquiry_ids = $this->request->input('order_inquiry_ids');
// 获取医生信息
$params = array();
$params['doctor_id'] = $user_info['client_user_id'];
@ -263,7 +261,6 @@ class DoctorAccountService extends BaseService
return fail(HttpEnumCode::HTTP_ERROR, "非法医生");
}
// 检测医生身份认证
$UserDoctorService = new UserDoctorService();
$res = $UserDoctorService->checkDoctorAuth($user_doctor);
@ -292,42 +289,25 @@ class DoctorAccountService extends BaseService
$bank['bank_card_name_mask'] = $user_doctor_info['card_name_mask'];
$amount_total = 0;
$order_inquiry_id_array = [];
// 获取医生账户总表
// 获取医生账户余额
if (!empty($order_inquiry_ids)){
$params = array();
$params['doctor_id'] = $user_info['client_user_id'];
$params['inquiry_status'] = 6; // inquiry_status问诊订单状态1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消)
$params['inquiry_refund_status'] = 0; // inquiry_refund_status问诊订单退款状态0:无退款 1:申请退款 2:退款中 3:退款成功 4:拒绝退款 5:退款关闭)
$in_params = explode(',',$order_inquiry_ids);
$order_inquiry = OrderInquiry::getInList($params,$in_params);
if (!empty($order_inquiry)){
foreach ($order_inquiry as $value){
$amount_total = bcadd((string)$amount_total,(string)$value["amount_total"],2);
}
}
$order_inquiry_id_array = $in_params;
$InquiryService = new InquiryService();
if ($user_doctor['is_platform_deep_cooperation'] == 0){
$order_inquiry = $InquiryService->getDoctorCanWithdrawalInquiryOrder($user_info['client_user_id']);
}else{
$InquiryService = new InquiryService();
if ($user_doctor['is_platform_deep_cooperation'] == 0){
$order_inquiry = $InquiryService->getDoctorCanWithdrawalInquiryOrder($user_info['client_user_id']);
}else{
$order_inquiry = $InquiryService->getCooperationDoctorCanWithdrawalInquiryOrder($user_info['client_user_id']);
}
$order_inquiry = $InquiryService->getCooperationDoctorCanWithdrawalInquiryOrder($user_info['client_user_id']);
}
if (!empty($order_inquiry)){
foreach ($order_inquiry as $value){
$amount_total = bcadd((string)$amount_total,(string)$value["amount_total"],2);
}
$order_inquiry_id_array = array_column($order_inquiry,'order_inquiry_id');
if (!empty($order_inquiry)){
foreach ($order_inquiry as $value){
$amount_total = bcadd((string)$amount_total,(string)$value["amount_total"],2);
}
}
$amount_total = bcmul((string)$amount_total,"0.75",2);
// 计算医生个人所得税
$income_tax = $this->computeIndividualIncomeTax($amount_total);
@ -340,7 +320,6 @@ class DoctorAccountService extends BaseService
$result['amount_total'] = $amount_total; // 账户余额
$result['withdrawal_amount'] = $withdrawal_amount; // 提现金额
$result['income_tax'] = $income_tax; // 个人所得税
$result['order_inquiry_ids'] = $order_inquiry_id_array; // 订单合集
return success($result);
}

View File

@ -217,7 +217,7 @@ Router::addGroup('/doctor', function () {
// 获取提现数据
Router::post('/info', [DoctorAccountController::class, 'getDoctorWithdrawalInfo']);
// 获取可提现问诊订单列表
// 获取可提现订单列表
Router::get('/order', [DoctorAccountController::class, 'getDoctorWithdrawalOrderList']);
// 获取医生提现记录列表