feat: 增强代理节点和代理资料管理功能
- 在 AgentNodeProfileController 中添加对父代理能力授予的验证,确保子代理的权限在父代理范围内。 - 更新多个请求类,统一代理资料字段的验证逻辑,提升代码复用性。 - 引入 AgentProfileFieldRules 以简化代理资料更新请求的规则定义。 - 在 AgentProfile 模型中设置主键为 agent_node_id,确保与代理节点的关联性。 - 更新错误信息,增加对授信额度和占成比例的验证,确保数据一致性。
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
|
||||
namespace App\Http\Requests\Admin\Concerns;
|
||||
|
||||
use App\Support\AgentSettlementCycle;
|
||||
|
||||
trait AgentProfileFieldRules
|
||||
{
|
||||
/** @return array<string, mixed> */
|
||||
@@ -12,10 +14,21 @@ trait AgentProfileFieldRules
|
||||
'credit_limit' => ['sometimes', 'integer', 'min:0'],
|
||||
'rebate_limit' => ['sometimes', 'numeric', 'min:0', 'max:1'],
|
||||
'default_player_rebate' => ['sometimes', 'numeric', 'min:0', 'max:1'],
|
||||
'settlement_cycle' => ['sometimes', 'string', 'in:daily,weekly,monthly'],
|
||||
'settlement_cycle' => ['sometimes', 'string', 'in:'.implode(',', AgentSettlementCycle::VALUES)],
|
||||
'can_grant_extra_rebate' => ['sometimes', 'boolean'],
|
||||
'can_create_child_agent' => ['sometimes', 'boolean'],
|
||||
'can_create_player' => ['sometimes', 'boolean'],
|
||||
];
|
||||
}
|
||||
|
||||
protected function prepareAgentProfileFieldsForValidation(): void
|
||||
{
|
||||
if (! $this->has('settlement_cycle')) {
|
||||
return;
|
||||
}
|
||||
|
||||
$this->merge([
|
||||
'settlement_cycle' => AgentSettlementCycle::normalize($this->input('settlement_cycle')),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user