myCRM/config/services.yaml
olli 8a132d2fb9 feat: Implement ProjectTask module with full CRUD functionality
- Added ProjectTask entity with fields for name, description, budget, hour contingent, hourly rate, and total price.
- Created ProjectTaskRepository with methods for querying tasks by project and user access.
- Implemented ProjectTaskVoter for fine-grained access control based on user roles and project membership.
- Developed ProjectTaskSecurityListener to enforce permission checks during task creation.
- Introduced custom ProjectTaskProjectFilter for filtering tasks based on project existence.
- Integrated ProjectTask management in the frontend with Vue.js components, including CRUD operations and filtering capabilities.
- Added API endpoints for ProjectTask with appropriate security measures.
- Created migration for project_tasks table in the database.
- Updated documentation to reflect new module features and usage.
2025-11-14 17:12:40 +01:00

55 lines
2.0 KiB
YAML

# This file is the entry point to configure your own services.
# Files in the packages/ subdirectory configure your dependencies.
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices.html#use-parameters-for-application-configuration
parameters:
app.url: '%env(APP_URL)%'
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
# makes classes in src/ available to be used as services
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/'
exclude:
- '../src/DependencyInjection/'
- '../src/Entity/'
- '../src/Kernel.php'
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones
# API Platform State Processor for User Password Hashing
App\State\UserPasswordHasher:
decorates: 'api_platform.doctrine.orm.state.persist_processor'
arguments:
$processor: '@.inner'
# Password Setup Service with APP_URL parameter
App\Service\PasswordSetupService:
arguments:
$appUrl: '%app.url%'
$projectDir: '%kernel.project_dir%'
# Mailer Logger with project directory
App\EventListener\MailerLoggerListener:
arguments:
$projectDir: '%kernel.project_dir%'
# GitHub Service with optional token
App\Service\GitHubService:
arguments:
$httpClient: '@github.client'
$githubToken: '%env(string:default::GITHUB_TOKEN)%'
# Gitea Service with optional token
App\Service\GiteaService:
arguments:
$httpClient: '@gitea.client'
$giteaToken: '%env(string:default::GITEA_TOKEN)%'