修改 获取服务包订单中医生可分成的问诊金额

This commit is contained in:
wucongxing8150 2024-05-08 16:23:23 +08:00
parent 7a627b761e
commit a1fc3c3015
4 changed files with 27 additions and 17 deletions

View File

@ -128,18 +128,20 @@ class AutoCompleteServicePackageDelayDirectConsumer extends ConsumerMessage
$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']);
if (!$res) {
Db::rollBack();
return Result::REQUEUE;
}
if ($amount_total > 0){
// 处理医生账户总表
$res = $this->handleDoctorAccount($amount_total,$order_service_package['doctor_id']);
if (!$res) {
Db::rollBack();
return Result::REQUEUE;
}
// 处理医生账户表-日
$res = $this->handleDoctorAccountDay($amount_total,$order_service_package['doctor_id'],$order_service_package['start_time']);
if (!$res) {
Db::rollBack();
return Result::REQUEUE;
// 处理医生账户表-日
$res = $this->handleDoctorAccountDay($amount_total,$order_service_package['doctor_id'],$order_service_package['start_time']);
if (!$res) {
Db::rollBack();
return Result::REQUEUE;
}
}
Db::commit();

View File

@ -17,12 +17,14 @@ use Hyperf\Snowflake\Concern\Snowflake;
* @property string $order_service_no 系统订单编号
* @property string $service_refund_no 系统退款编号
* @property string $refund_id 第三方退款单号
* @property int $refund_status 订单退款状态0:无退款 1:申请退款 2:退款中 3:退款成功 4:拒绝退款 5:退款关闭 6:退款异常
* @property int $refund_status 订单退款状态0:无退款 1:申请退款 2:退款中 3:退款成功 4:拒绝退款 5:退款关闭 6:退款异常 7:部分退款
* @property string $refund_total 退款金额
* @property string $product_refund_total 药品退款金额
* @property string $inquiry_refund_total 问诊退款金额
* @property string $refund_reason 退款原因
* @property string $success_time 退款成功时间
* @property Carbon $created_at 创建时间
* @property Carbon $updated_at 修改时间
* @property \Carbon\Carbon $created_at 创建时间
* @property \Carbon\Carbon $updated_at 修改时间
*/
class OrderServicePackageRefund extends Model
{
@ -36,7 +38,7 @@ class OrderServicePackageRefund extends Model
/**
* The attributes that are mass assignable.
*/
protected array $fillable = ['service_refund_id', 'patient_id', 'order_service_id', 'order_service_no', 'service_refund_no', 'refund_id', 'refund_status', 'refund_total', 'refund_reason', 'success_time', 'created_at', 'updated_at'];
protected array $fillable = ['service_refund_id', 'patient_id', 'order_service_id', 'order_service_no', 'service_refund_no', 'refund_id', 'refund_status', 'refund_total', 'product_refund_total', 'inquiry_refund_total', 'refund_reason', 'success_time', 'created_at', 'updated_at'];
protected string $primaryKey = "service_refund_id";

View File

@ -200,9 +200,9 @@ class DoctorAccountService extends BaseService
} elseif ($result['OrderServicePackage']['order_service_status'] == 4) {
$result['entry_status'] = 2;// 入账成功
} elseif ($result['OrderServicePackage']['order_service_status'] == 5) {
if ($result['expected_amount_total'] > 0) {
if (($result['payment_amount_total'] - $result['refund_total']) > 0){
$result['entry_status'] = 2;// 入账成功
} else {
}else{
$result['entry_status'] = 3;// 入账失败
}
} else {

View File

@ -1671,6 +1671,12 @@ class OrderServicePackageService extends BaseService
$OrderService = new OrderService();
$refund_total = $OrderService->getOrderRefundAmount($order_service_no);
// 检测订单是否全部退款
if (($order_service_package['payment_amount_total'] - $refund_total) <= 0){
// 订单已全部退款此处可分成问诊金额直接为0
return 0;
}
if ($order_service_package['order_service_type'] == 1){
// 健康包
// 实际问诊数量