feat: add groups resource #371
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
8e9fbe76cf
commit
6db64bf996
12 changed files with 742 additions and 18 deletions
|
|
@ -7,6 +7,8 @@ defmodule Mv.Membership do
|
|||
- `CustomFieldValue` - Dynamic custom field values attached to members
|
||||
- `CustomField` - Schema definitions for custom fields
|
||||
- `Setting` - Global application settings (singleton)
|
||||
- `Group` - Groups that members can belong to
|
||||
- `MemberGroup` - Join table for many-to-many relationship between Members and Groups
|
||||
|
||||
## Public API
|
||||
The domain exposes these main actions:
|
||||
|
|
@ -14,6 +16,8 @@ defmodule Mv.Membership do
|
|||
- Custom field value management: `create_custom_field_value/1`, `list_custom_field_values/0`, etc.
|
||||
- Custom field management: `create_custom_field/1`, `list_custom_fields/0`, `list_required_custom_fields/0`, etc.
|
||||
- Settings management: `get_settings/0`, `update_settings/2`, `update_member_field_visibility/2`, `update_single_member_field_visibility/3`
|
||||
- Group management: `create_group/1`, `list_groups/0`, `update_group/2`, `destroy_group/1`
|
||||
- Member-group associations: `create_member_group/1`, `list_member_groups/0`, `destroy_member_group/1`
|
||||
|
||||
## Admin Interface
|
||||
The domain is configured with AshAdmin for management UI.
|
||||
|
|
@ -61,6 +65,19 @@ defmodule Mv.Membership do
|
|||
define :update_single_member_field_visibility,
|
||||
action: :update_single_member_field_visibility
|
||||
end
|
||||
|
||||
resource Mv.Membership.Group do
|
||||
define :create_group, action: :create
|
||||
define :list_groups, action: :read
|
||||
define :update_group, action: :update
|
||||
define :destroy_group, action: :destroy
|
||||
end
|
||||
|
||||
resource Mv.Membership.MemberGroup do
|
||||
define :create_member_group, action: :create
|
||||
define :list_member_groups, action: :read
|
||||
define :destroy_member_group, action: :destroy
|
||||
end
|
||||
end
|
||||
|
||||
# Singleton pattern: Get the single settings record
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue