修改自动完成服务包订单分成金额计算
This commit is contained in:
@@ -12,6 +12,8 @@ use App\Model\OrderServicePackageDetail;
|
||||
use App\Model\OrderServicePackageInquiry;
|
||||
use App\Model\UserDoctor;
|
||||
use App\Services\MessagePush;
|
||||
use App\Services\OrderPrescriptionService;
|
||||
use App\Services\OrderServicePackageService;
|
||||
use App\Utils\Log;
|
||||
use App\Utils\Utils;
|
||||
use Hyperf\Amqp\Message\ConsumerDelayedMessageTrait;
|
||||
@@ -121,16 +123,10 @@ class AutoCompleteServicePackageDelayDirectConsumer extends ConsumerMessage
|
||||
$params['order_service_id'] = $order_service_package['order_service_id'];
|
||||
OrderServicePackage::edit($params,$data);
|
||||
|
||||
// 计算本次问诊服务包问诊金额
|
||||
if ($order_service_package['order_service_type'] == 1){
|
||||
$amount_total = bcmul(
|
||||
(string)$order_service_package_detail['single_inquiry_price'],
|
||||
(string)$order_service_package_detail['service_count'],
|
||||
8
|
||||
);
|
||||
}else{
|
||||
$amount_total = $order_service_package_detail['service_price'];
|
||||
}
|
||||
// 处理统计问题
|
||||
// 获取服务包订单中医生可分成的问诊金额
|
||||
$OrderServicePackageService = new OrderServicePackageService();
|
||||
$amount_total = $OrderServicePackageService->getServicePackageDoctorInquiryAmountTotal($order_service_package['order_service_no'],$order_service_package,$order_service_package_detail);
|
||||
|
||||
// 处理医生账户总表
|
||||
$res = $this->handleDoctorAccount($amount_total,$order_service_package['doctor_id']);
|
||||
@@ -215,17 +211,6 @@ class AutoCompleteServicePackageDelayDirectConsumer extends ConsumerMessage
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($order_service_package['order_service_status'] == 5){
|
||||
Log::getInstance("queue-AutoCompleteServicePackage")->error("订单已取消" );
|
||||
return false;
|
||||
}
|
||||
|
||||
// 订单退款状态(0:无退款 1:申请退款 2:退款中 3:退款成功 4:拒绝退款 5:退款关闭 6:退款异常)
|
||||
if (!in_array($order_service_package['refund_status'],[0,4,5])){
|
||||
Log::getInstance("queue-AutoCompleteServicePackage")->error("订单退款中" );
|
||||
return false;
|
||||
}
|
||||
|
||||
// 订单支付状态
|
||||
if ($order_service_package['pay_status'] != 2){
|
||||
Log::getInstance("queue-AutoCompleteServicePackage")->error("订单未支付" );
|
||||
@@ -297,8 +282,6 @@ class AutoCompleteServicePackageDelayDirectConsumer extends ConsumerMessage
|
||||
*/
|
||||
protected function handleDoctorAccount(string|int $amount_total,string|int $doctor_id): bool
|
||||
{
|
||||
$amount_total = bcmul((string)$amount_total,"0.75",8);
|
||||
|
||||
$params = array();
|
||||
$params['doctor_id'] = $doctor_id;
|
||||
$doctor_account = DoctorAccount::getOne($params);
|
||||
@@ -338,8 +321,6 @@ class AutoCompleteServicePackageDelayDirectConsumer extends ConsumerMessage
|
||||
*/
|
||||
protected function handleDoctorAccountDay(string|int $amount_total,string|int $doctor_id,string $start_time): bool
|
||||
{
|
||||
$amount_total = bcmul((string)$amount_total,"0.75",8);
|
||||
|
||||
$params = array();
|
||||
$params['doctor_id'] = $doctor_id;
|
||||
$params['date'] = date('Y-m-d', strtotime($start_time));
|
||||
|
||||
Reference in New Issue
Block a user