Edit Request rules

This commit is contained in:
BrettonYe
2025-08-29 00:51:39 +08:00
committed by BrettonYe
parent ad3662cda0
commit ae62ca1559
5 changed files with 16 additions and 18 deletions

View File

@@ -38,7 +38,7 @@ class NodeRequest extends FormRequest
'is_display' => 'required|numeric|between:0,3',
'detection_type' => 'required|numeric|between:0,3',
'single' => 'required|boolean',
'port' => 'required_unless:single,"0"|numeric|between:1,65535|different:push_port',
'port' => 'nullable|numeric|between:1,65535|different:push_port|required_if:single,1|required_if:type,2|required_if:type,3',
'passwd' => 'exclude_unless:type,1,type,4|required_if:single,1|string|nullable',
'v2_alter_id' => 'nullable|numeric|between:0,65535',
'v2_method' => 'required_if:type,2',

View File

@@ -8,8 +8,13 @@ class PermissionRequest extends FormRequest
{
public function rules(): array
{
$unq_name = '';
if (in_array($this->method(), ['PATCH', 'PUT'], true)) {
$unq_name = ','.$this->permission->id;
}
return [
'name' => 'required|string|unique:permissions,name',
'name' => 'required|string|unique:permissions,name'.$unq_name,
'description' => 'required|string',
];
}

View File

@@ -8,8 +8,13 @@ class UserGroupRequest extends FormRequest
{
public function rules(): array
{
$unq_name = '';
if (in_array($this->method(), ['PATCH', 'PUT'], true)) {
$unq_name = ','.$this->group->id;
}
return [
'name' => 'required|string|unique:user_group,name',
'name' => 'required|string|unique:user_group,name'.$unq_name,
'nodes' => 'nullable|exists:node,id',
];
}

View File

@@ -389,19 +389,6 @@
const termUnit = $("#subscription_term_unit").val();
data["subscription_term"] = termValue ? `${termValue} ${termUnit}` : null;
// 处理端口字段(根据节点类型选择正确的端口字段)
switch (parseInt(data.type)) {
case 0: // Shadowsocks
data.port = 0; // SS类型不需要端口设置
break;
case 1: // ShadowsocksR
case 4: // VNET
if (data.single !== 1) {
data.port = 0; // 非single模式不需要端口设置
}
break;
}
// 发送 AJAX 请求
ajaxRequest({
url: '{{ isset($node) ? route('admin.node.update', $node['id']) : route('admin.node.store') }}',

View File

@@ -36,7 +36,7 @@
</div>
</x-admin.form.skeleton>
@endisset
<x-admin.form.input name="invite_num" type="number" :label="trans('model.user.invite_num')" required />
<x-admin.form.input name="invite_num" type="number" :label="trans('model.user.invite_num')" input_grid="col-auto" required />
<x-admin.form.input-group name="reset_time" attribute="data-plugin=datepicker" :label="trans('model.user.reset_date')" :prependIcon="'icon wb-calendar'" :help="trans('admin.user.info.reset_date_hint')"
input_grid="col-auto" />
<x-admin.form.input-group name="expired_at" attribute="data-plugin=datepicker" :label="trans('model.user.expired_date')" :prependIcon="'icon wb-calendar'" :help="trans('admin.user.info.expired_date_hint')"
@@ -56,7 +56,7 @@
buttonClass="btn-success" buttonOnclick="makeUUID()" :help="trans('admin.user.info.uuid_hint')" />
<x-admin.form.input-group name="passwd" :placeholder="trans('common.random_generate')" :label="trans('model.user.proxy_passwd')" button='<i class="icon wb-refresh"></i>'
buttonClass="btn-success" buttonOnclick="makePasswd()" />
<x-admin.form.input-group name="transfer_enable" type="number" :label="trans('model.user.usable_traffic')" required append="GB" />
<x-admin.form.input-group name="transfer_enable" :label="trans('model.user.usable_traffic')" required append="GB" />
<x-admin.form.radio-group name="enable" :label="trans('model.user.proxy_status')" :options="[0 => trans('common.status.banned'), 1 => trans('common.status.enabled')]" />
<hr>
<x-admin.form.select name="method" :label="trans('model.user.proxy_method')" :options="$methods" input_grid="col-xxl-3 col-xl-5 col-lg-6 col-md-4 col-sm-auto" />
@@ -125,6 +125,7 @@
$(document).ready(function() {
let userData = { // 默认值
level: 0,
invite_num: 0,
status: 1,
transfer_enable: 1024,
enable: 1,