From a036aa7325f8f2388557ce941057f602401ca54f Mon Sep 17 00:00:00 2001 From: liapples Date: Sat, 18 Sep 2021 20:38:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E6=97=B6=E4=BA=A4=E6=98=93?= =?UTF-8?q?=E9=87=91=E5=86=BB=E7=BB=93=E5=92=8C=E8=A7=A3=E5=86=BB=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Extensions/Grid/AuditIndustryProduct.php | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/app/Admin/Extensions/Grid/AuditIndustryProduct.php b/app/Admin/Extensions/Grid/AuditIndustryProduct.php index 4bf1a92..996a440 100644 --- a/app/Admin/Extensions/Grid/AuditIndustryProduct.php +++ b/app/Admin/Extensions/Grid/AuditIndustryProduct.php @@ -3,6 +3,9 @@ namespace App\Admin\Extensions\Grid; use App\Common\ProductStatus; use App\Models\IndustryProduct; +use App\Models\Supplier; +use App\Models\SystemSetting; +use Dcat\Admin\Admin; use Dcat\Admin\Grid\RowAction; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; @@ -41,7 +44,29 @@ class AuditIndustryProduct extends RowAction $industry->status = $request->action == 1 ? ProductStatus::ON_SALE : ProductStatus::REFUSE; $industry->save(); - //如果是拒绝,返还冻结金额 + //如果是通过,扣除交易金,如果拒绝返还冻结金额 + $single = SystemSetting::val('single', 'price'); //单人头交易金 + + $supplier = Supplier::find(Admin::user()->id); + + $change_deposit = $single * $industry->stock * $industry->service_persons; + if ($industry->status == ProductStatus::ON_SALE) { + if ($supplier->deposit_normal < $change_deposit) { + throw new \Exception('交易金不足,无法扣除'); + } + + $supplier->deposit_normal = $supplier->deposit_normal - $change_deposit; + $supplier->deposit_frozen = $supplier->deposit_frozen + $change_deposit; + $supplier->save(); + } else if ($industry->status == ProductStatus::REFUSE) { + if ($supplier->deposit_frozen < $change_deposit) { + throw new \Exception('冻结金不足,无法扣除'); + } + + $supplier->deposit_normal = $supplier->deposit_normal + $change_deposit; + $supplier->deposit_frozen = $supplier->deposit_frozen - $change_deposit; + $supplier->save(); + } DB::commit(); return $this->response()->success("审核成功")->refresh();