(bool) core()->getConfigData('sales.checkout.shipping_insurance.enable'), 'name' => core()->getConfigData('sales.checkout.shipping_insurance.name') ?: '运费险', 'type' => core()->getConfigData('sales.checkout.shipping_insurance.type') ?: 'fixed', 'value' => core()->getConfigData('sales.checkout.shipping_insurance.value') ?: 0, ]; return view('shippinginsurance::admin.index', compact('config')); } /** * Store the shipping insurance configuration. */ public function store(): RedirectResponse { $validated = request()->validate([ 'enable' => 'nullable|boolean', 'name' => 'nullable|string|max:50', 'type' => 'required|in:fixed,percentage', 'value' => 'required|numeric|min:0', ]); $values = [ 'sales.checkout.shipping_insurance.enable' => ($validated['enable'] ?? false) ? 1 : 0, 'sales.checkout.shipping_insurance.name' => $validated['name'] ?? '运费险', 'sales.checkout.shipping_insurance.type' => $validated['type'], 'sales.checkout.shipping_insurance.value' => $validated['value'], ]; foreach ($values as $code => $value) { $this->coreConfigRepository->updateOrCreate( ['code' => $code], ['value' => $value] ); } session()->flash('success', trans('shippinginsurance::app.admin.save-success')); return redirect()->route('admin.shipping_insurance.index'); } }