4
0
Fork 0
dcat-admin-order/src/Form/RemarksForm.php

46 lines
1.3 KiB
PHP

<?php
namespace Peidikeji\Order\Form;
use Dcat\Admin\Admin;
use Dcat\Admin\Contracts\LazyRenderable;
use Dcat\Admin\Traits\LazyWidget;
use Dcat\Admin\Widgets\Form;
use Illuminate\Support\Facades\DB;
use Peidikeji\Order\Models\Order;
class RemarksForm extends Form implements LazyRenderable
{
use LazyWidget;
protected $buttons = ['reset' => false, 'submit' => true];
public function handle(array $input)
{
try {
DB::beginTransaction();
$order = Order::findOrFail($this->payload['id']);
$order->update(['remarks' => $input['remarks']]);
$admin = Admin::user();
$order->options()->create([
'user_type' => get_class($admin),
'user_id' => $admin->id,
'description' => '管理员: ' . $admin->name . ' 修改系统备注',
'attribute' => [
'remarks' => $input['remarks']
],
]);
DB::commit();
return $this->response()->success('操作成功')->refresh();
} catch (\Exception $e) {
DB::rollBack();
return $this->response()->error($e->getMessage());
}
}
public function form()
{
$this->textarea('remarks');
}
}