diff --git a/app/Http/Controllers/AppointmentController.php b/app/Http/Controllers/AppointmentController.php index 9d50583..5b5f192 100644 --- a/app/Http/Controllers/AppointmentController.php +++ b/app/Http/Controllers/AppointmentController.php @@ -408,8 +408,12 @@ class AppointmentController extends Controller $alias = $matched ? $clinic_alias_map[$clinic_id] : '未匹配科室'; $price = floatval($item['价格']); - if (isset($item['优惠方式']) && $item['优惠方式'] === '打折') { - $price = round($price * floatval($item['优惠值']), 2); + if (isset($item['优惠方式'])) { + if ($item['优惠方式'] === '打折') { + $price = round($price * floatval($item['优惠值']), 2); + } elseif ($item['优惠方式'] === '优惠') { + $price = round($price - floatval($item['优惠值']), 2); + } } $key = $matched ? $alias : '__unmatched__'; @@ -439,10 +443,6 @@ class AppointmentController extends Controller $categories[] = $item; } - // 合计金额取分类汇总,确保合计与各项之和一致 - if ($category_total > 0) { - $charge_amount = $category_total; - } $total_amount = round($charge_amount - $refund_amount, 2); return Yo::echo([