first
This commit is contained in:
69
modules/User/Http/Controllers/Admin/Actions/JoinIdentity.php
Normal file
69
modules/User/Http/Controllers/Admin/Actions/JoinIdentity.php
Normal file
@@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\User\Http\Controllers\Admin\Actions;
|
||||
|
||||
use Encore\Admin\Actions\Response;
|
||||
use Encore\Admin\Actions\RowAction;
|
||||
use Exception;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Http\Request;
|
||||
use Modules\User\Models\Identity;
|
||||
|
||||
class JoinIdentity extends RowAction
|
||||
{
|
||||
|
||||
public $name = '加入身份';
|
||||
|
||||
public function handle(User $user, Request $request): Response
|
||||
{
|
||||
try {
|
||||
$identity_id = $request->join_identity_id;
|
||||
$remark = $request->remark;
|
||||
$identity = Identity::find($identity_id);
|
||||
$price = $identity->getCondition('price', '0');
|
||||
|
||||
$data = [
|
||||
'user_id' => $user->id,
|
||||
'identity_id' => $identity_id,
|
||||
'year' => 1,
|
||||
'type' => 1,
|
||||
'stock' => $identity->stock,
|
||||
'name' => '',
|
||||
'card_no' => '',
|
||||
'cover' => '',
|
||||
'state' => Order::STATE_INIT,
|
||||
'price' => $price,
|
||||
];
|
||||
|
||||
$order = Order::create($data);
|
||||
$order->pay();
|
||||
|
||||
//
|
||||
// $user->joinIdentity($identity_id, 'System', [
|
||||
// 'remark' => $remark,
|
||||
// ]);
|
||||
|
||||
return $this->response()->success('加入身份成功')->refresh();
|
||||
} catch (Exception $e) {
|
||||
return $this->response()->error($e->getMessage())->refresh();
|
||||
}
|
||||
}
|
||||
|
||||
public function form(User $user)
|
||||
{
|
||||
$userIdentity = $user->identityFirst();
|
||||
if (empty($userIdentity)) {
|
||||
$identities = Identity::whereIn('order', [2, 3, 4, 5])->pluck('name', 'id');
|
||||
} elseif ($userIdentity->job == Identity::JOB_YK) {
|
||||
$identities = Identity::whereIn('order', [2, 3, 4, 5])->pluck('name', 'id');
|
||||
} else {
|
||||
$identities = Identity::where('order', '>', $userIdentity->order)->pluck('name', 'id');
|
||||
}
|
||||
$this->select('join_identity_id', '加入身份')
|
||||
->options($identities)
|
||||
->required();
|
||||
$this->text('remark', '加入备注');
|
||||
$this->confirm('确认加入该身份?');
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user