order-food-admin/app/Admin/Actions/Forms/SendQuanTicket.php

41 lines
1.1 KiB
PHP

<?php
namespace App\Admin\Actions\Forms;
use Dcat\Admin\Admin;
use Dcat\Admin\Models\Administrator;
use Dcat\Admin\Traits\LazyWidget;
use Dcat\Admin\Widgets\Form;
use Dcat\Admin\Contracts\LazyRenderable;
use App\Admin\Renderable\QuanTicketTable;
use App\Models\{QuanTicket, User};
class SendQuanTicket extends Form implements LazyRenderable
{
use LazyWidget; // 使用异步加载功能
// 处理请求
public function handle(array $input)
{
// 获取外部传递参数
$id = $this->payload['id'] ?? null;
$user = User::findOrFail($id);
$admin_user = Admin::user()->id;
// 表单参数
$send_tickets = $input['send_ticket'] ?? [];
$user->sendTicket($send_tickets, $admin_user, '系统后台发送');
// dd($send_tickets);
return $this->response()->success('发送成功');
}
public function form()
{
$this->multipleSelectTable('send_ticket', '优惠券')
->from(QuanTicketTable::make())
->model(QuanTicket::class, 'id', 'quan_name');
}
}