3.3 KiB
3.3 KiB
Missing features
Ticket
-
general:
- new skill, user resources
- ueberall $array['''] ersetzen durch Arr::get()
- (mehr über middlewares steuern)
- why uses everywhere forceFill?
- $request->validated('xxx') ersetzten durch:
$validated = $request->validate(); $xxx = Arr:get($validated, 'xxx');- oder:
$request->position(), methoden entfernen, wie:
public function position(): ?int { position = this->validated('position'); if ($position === null) { return null; } return (int) $position; }- app/Http/Requests/UpdateProjectTicketRequest.php and other ProjectTicket only to Ticket...
- mehrere actions/quereys in services auslagern
-
02:
- Delete Projekt as Admin
-
03
- permission models? eg.g syncUserPermissions uses only db table
- mit morph auf perm user (z.b. team oder user)
- Project Permissions Service
- syncTeamMembers(Team $team, array $userIds): void → ist wrong here
- gate statt has permission methods
- permission for creating teams without beeing admind -> teamowner
- team roles
-
05
- ticket type remove build in
- → add is parentBool to ticketType -> remove system_key (maybe add slug)
- auto generate one parent one task on new project as now
- disable delete last child ticket type
- initializeProjectTicketMetadata nur beim init benutzen
- every form request removed unnecessary methods: like position in StoreProjectNamedSettingRequest
- use Arr:get($validated, 'value'). instead of these messages or $request->value
- Made ticket priority more static(change to has one) in ticket, but only show if there are more than one configured.
- made story points more static(change to table field in table), but only show if checked in project settings → new value on Project: hasStoryPoints
- more ticket field types (string, string array, boolean, precision (double))
- abortUnlessCanManage(xxx) entfernen, auch gate benutzen (ProjectTicketMetadataSettingsController)
- ticket assignee fest einbauen in ticket
- ticket type remove build in
-
06
- add Ticket Status
- ticketstatus can have one or more board columns
- one board cloumn cant be in two or more ticket statuses
- replace board_colum_id on ticket with ticket status id
- ticket status has an n:m relation in which relatin the ticket can switch
- (ui friendly example all following or select)
- change Project Backlog Controller → Project Controller
- remove store from project board controller and route projects/{project}/backlog, change to ticket controller, create
- add Ticket Status
-
08
- worklog überarbeiten → type als worklog enum → json je nach enum type
- UpdateProjectTicket aufräumen
-
09
- app/Http/Controllers/ProjectTicketController.php parent ids anderes queren. nicht alle child ids berechnen und excluden -> immer parent vom parent bis null
-
later:
- if deleting ticket type select a new ticket type which all existing ticket should get or select delete all tickets of that type
- repository_connections check base Url maybe unnessecary?
- Git listBranches replace baseUrl, owner, rperoName with GItReprository
- Git prs replace baseUrl, owner, rperoName with GItReprository
- git php docu replace @ reutrn with data models
- replace Kanbangit with env App Name