4
0
Fork 0
dcat-admin-order/src/Action/ShowShipQrcode.php

34 lines
822 B
PHP

<?php
namespace Peidikeji\Order\Action;
use Dcat\Admin\Show\AbstractTool;
use Peidikeji\Order\Enums\OrderScene;
use Peidikeji\Order\Models\Order;
class ShowShipQrcode extends AbstractTool
{
protected $style = 'btn btn-sm btn-primary';
protected $title = '生成提货码';
public function handle()
{
$id = $this->getKey();
$order = Order::findOrFail($id);
$url = $order->generateShipQrcode();
if (!$url) {
return $this->response()->error('生成提货码失败');
}
return $this->response()->success('操作成功')->refresh();
}
public function allowed()
{
$model = $this->parent->model();
$code = data_get($model, 'extra.ship_qrcode');
return $model->scene === OrderScene::Merchant && !$code;
}
}