mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
Merge branch 'calendar/finalization' of gitlab.com:Chill-Projet/chill-bundles into calendar/finalization
This commit is contained in:
commit
8d7013b988
@ -203,6 +203,11 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface
|
||||
*/
|
||||
private string $status = self::STATUS_VALID;
|
||||
|
||||
/**
|
||||
* @ORM\Column(type="boolean", nullable=true)
|
||||
*/
|
||||
private ?bool $urgent = false;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->comment = new CommentEmbeddable();
|
||||
|
@ -85,6 +85,6 @@ final class AgentAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by agent';
|
||||
return 'Group calendars by agent';
|
||||
}
|
||||
}
|
||||
|
@ -40,7 +40,7 @@ class CancelReasonAggregator implements AggregatorInterface
|
||||
|
||||
public function alterQuery(QueryBuilder $qb, $data)
|
||||
{
|
||||
// TODO: still needs to take into account appointments without a cancel reason somehow
|
||||
// TODO: still needs to take into account calendars without a cancel reason somehow
|
||||
if (!in_array('calcancel', $qb->getAllAliases(), true)) {
|
||||
$qb->join('cal.cancelReason', 'calcancel');
|
||||
}
|
||||
@ -88,6 +88,6 @@ class CancelReasonAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by cancel reason';
|
||||
return 'Group calendars by cancel reason';
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ final class JobAggregator implements AggregatorInterface
|
||||
public function alterQuery(QueryBuilder $qb, $data)
|
||||
{
|
||||
if (!in_array('caluser', $qb->getAllAliases(), true)) {
|
||||
$qb->join('cal.user', 'caluser');
|
||||
$qb->join('cal.mainUser', 'caluser');
|
||||
}
|
||||
|
||||
$qb->addSelect('IDENTITY(caluser.userJob) as job_aggregator');
|
||||
@ -87,6 +87,6 @@ final class JobAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by agent job';
|
||||
return 'Group calendars by agent job';
|
||||
}
|
||||
}
|
||||
|
@ -80,6 +80,6 @@ final class LocationAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by location';
|
||||
return 'Group calendars by location';
|
||||
}
|
||||
}
|
||||
|
@ -87,6 +87,6 @@ final class LocationTypeAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by location type';
|
||||
return 'Group calendars by location type';
|
||||
}
|
||||
}
|
||||
|
@ -55,10 +55,10 @@ class MonthYearAggregator implements AggregatorInterface
|
||||
return 'by month and year';
|
||||
}
|
||||
|
||||
$month = substr($value, 0, 2);
|
||||
$year = substr($value, 3, 4);
|
||||
$month = (int)substr($value, 0, 2);
|
||||
$year = (int)substr($value, 3, 4);
|
||||
|
||||
return strftime('%B %G', mktime(0, 0, 0, $month, '1', $year));
|
||||
return strftime('%B %G', mktime(0, 0, 0, $month, 1, $year));
|
||||
};
|
||||
}
|
||||
|
||||
@ -69,6 +69,6 @@ class MonthYearAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by month and year';
|
||||
return 'Group calendars by month and year';
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ final class ScopeAggregator implements AggregatorInterface
|
||||
public function alterQuery(QueryBuilder $qb, $data)
|
||||
{
|
||||
if (!in_array('caluser', $qb->getAllAliases(), true)) {
|
||||
$qb->join('cal.user', 'caluser');
|
||||
$qb->join('cal.mainUser', 'caluser');
|
||||
}
|
||||
|
||||
$qb->addSelect('IDENTITY(caluser.mainScope) as scope_aggregator');
|
||||
@ -87,6 +87,6 @@ final class ScopeAggregator implements AggregatorInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Group appointments by agent scope';
|
||||
return 'Group calendars by agent scope';
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,8 @@ use Closure;
|
||||
use Doctrine\ORM\AbstractQuery;
|
||||
use Doctrine\ORM\QueryBuilder;
|
||||
use Symfony\Component\Form\FormBuilderInterface;
|
||||
use Symfony\Component\Process\Exception\LogicException;
|
||||
use Symfony\Component\Validator\Exception\LogicException;
|
||||
|
||||
|
||||
class CountCalendars implements ExportInterface, GroupedExportInterface
|
||||
{
|
||||
@ -44,7 +45,7 @@ class CountCalendars implements ExportInterface, GroupedExportInterface
|
||||
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Count appointments by various parameters.';
|
||||
return 'Count calendars by various parameters.';
|
||||
}
|
||||
|
||||
public function getGroup(): string
|
||||
@ -78,7 +79,7 @@ class CountCalendars implements ExportInterface, GroupedExportInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Count appointments';
|
||||
return 'Count calendars';
|
||||
}
|
||||
|
||||
public function getType(): string
|
||||
|
@ -44,7 +44,7 @@ class StatCalendarAvgDuration implements ExportInterface, GroupedExportInterface
|
||||
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Get the average of appointment duration according to various filters';
|
||||
return 'Get the average of calendar duration according to various filters';
|
||||
}
|
||||
|
||||
public function getGroup(): string
|
||||
@ -78,7 +78,7 @@ class StatCalendarAvgDuration implements ExportInterface, GroupedExportInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Average appointment duration';
|
||||
return 'Average calendar duration';
|
||||
}
|
||||
|
||||
public function getType(): string
|
||||
|
@ -44,7 +44,7 @@ class StatCalendarSumDuration implements ExportInterface, GroupedExportInterface
|
||||
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Get the sum of appointment durations according to various filters';
|
||||
return 'Get the sum of calendar durations according to various filters';
|
||||
}
|
||||
|
||||
public function getGroup(): string
|
||||
@ -78,7 +78,7 @@ class StatCalendarSumDuration implements ExportInterface, GroupedExportInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Sum of appointment durations';
|
||||
return 'Sum of calendar durations';
|
||||
}
|
||||
|
||||
public function getType(): string
|
||||
|
@ -82,6 +82,6 @@ class AgentFilter implements FilterInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Filter appointments by agent';
|
||||
return 'Filter calendars by agent';
|
||||
}
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ class BetweenDatesFilter implements FilterInterface
|
||||
|
||||
public function describeAction($data, $format = 'string'): array
|
||||
{
|
||||
return ['Filtered by appointments between %dateFrom% and %dateTo%', [
|
||||
return ['Filtered by calendars between %dateFrom% and %dateTo%', [
|
||||
'%dateFrom%' => $data['date_from']->format('d-m-Y'),
|
||||
'%dateTo%' => $data['date_to']->format('d-m-Y'),
|
||||
]];
|
||||
@ -74,6 +74,6 @@ class BetweenDatesFilter implements FilterInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Filter appointments between certain dates';
|
||||
return 'Filter calendars between certain dates';
|
||||
}
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ class JobFilter implements FilterInterface
|
||||
public function alterQuery(QueryBuilder $qb, $data)
|
||||
{
|
||||
if (!in_array('caluser', $qb->getAllAliases(), true)) {
|
||||
$qb->join('cal.user', 'caluser');
|
||||
$qb->join('cal.mainUser', 'caluser');
|
||||
}
|
||||
|
||||
$where = $qb->getDQLPart('where');
|
||||
@ -95,6 +95,6 @@ class JobFilter implements FilterInterface
|
||||
|
||||
public function getTitle(): string
|
||||
{
|
||||
return 'Filter appointments by agent job';
|
||||
return 'Filter calendars by agent job';
|
||||
}
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ class ScopeFilter implements FilterInterface
|
||||
public function alterQuery(QueryBuilder $qb, $data)
|
||||
{
|
||||
if (!in_array('caluser', $qb->getAllAliases(), true)) {
|
||||
$qb->join('cal.user', 'caluser');
|
||||
$qb->join('cal.mainUser', 'caluser');
|
||||
}
|
||||
|
||||
$where = $qb->getDQLPart('where');
|
||||
@ -95,6 +95,6 @@ class ScopeFilter implements FilterInterface
|
||||
|
||||
public function getTitle()
|
||||
{
|
||||
return 'Filter appointments by agent scope';
|
||||
return 'Filter calendars by agent scope';
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Chill\Migrations\Calendar;
|
||||
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Doctrine\Migrations\AbstractMigration;
|
||||
|
||||
/**
|
||||
* Auto-generated Migration: Please modify to your needs!
|
||||
*/
|
||||
final class Version20220921101643 extends AbstractMigration
|
||||
{
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Add urgent property to calendar entity';
|
||||
}
|
||||
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
// this up() migration is auto-generated, please modify it to your needs
|
||||
$this->addSql('ALTER TABLE chill_calendar.calendar ADD urgent BOOLEAN DEFAULT NULL');
|
||||
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
// this down() migration is auto-generated, please modify it to your needs
|
||||
$this->addSql('ALTER TABLE chill_calendar.calendar DROP urgent');
|
||||
|
||||
}
|
||||
}
|
@ -72,8 +72,8 @@ invite:
|
||||
|
||||
# exports
|
||||
Exports of calendar: Exports des rendez-vous
|
||||
Count appointments: Nombre de rendez-vous
|
||||
Count appointments by various parameters.: Compte le nombre de rendez-vous en fonction de différents paramètres.
|
||||
Count calendars: Nombre de rendez-vous
|
||||
Count calendars by various parameters.: Compte le nombre de rendez-vous en fonction de différents paramètres.
|
||||
|
||||
Average appointment duration: Moyenne de la durée des rendez-vous
|
||||
Get the average of appointment duration according to various filters: Calcule la moyenne des durées des rendez-vous en fonction de différents paramètres.
|
||||
@ -82,21 +82,21 @@ Sum of appointment durations: Somme de la durée des rendez-vous
|
||||
Get the sum of appointment durations according to various filters: Calcule la somme des durées des rendez-vous en fonction de différents paramètres.
|
||||
|
||||
'Filtered by agent: only %agents%': "Filtré par agents: uniquement %agents%"
|
||||
Filter appointments by agent: Filtrer les rendez-vous par agents
|
||||
Filter appointments by agent job: Filtrer les rendez-vous par métiers des agents
|
||||
Filter calendars by agent: Filtrer les rendez-vous par agents
|
||||
Filter calendars by agent job: Filtrer les rendez-vous par métiers des agents
|
||||
'Filtered by agent job: only %jobs%': 'Filtré par métiers des agents: uniquement les %jobs%'
|
||||
Filter appointments by agent scope: Filtrer les rendez-vous par services des agents
|
||||
Filter calendars by agent scope: Filtrer les rendez-vous par services des agents
|
||||
'Filtered by agent scope: only %scopes%': 'Filtré par services des agents: uniquement les services %scopes%'
|
||||
Filter appointments between certain dates: Filtrer les rendez-vous par date du rendez-vous
|
||||
'Filtered by appointments between %dateFrom% and %dateTo%': 'Filtré par rendez-vous entre %dateFrom% et %dateTo%'
|
||||
Filter calendars between certain dates: Filtrer les rendez-vous par date du rendez-vous
|
||||
'Filtered by calendars between %dateFrom% and %dateTo%': 'Filtré par rendez-vous entre %dateFrom% et %dateTo%'
|
||||
|
||||
Group appointments by agent: Grouper les rendez-vous par agent
|
||||
Group appointments by agent job: Grouper les rendez-vous par métier de l'agent
|
||||
Group appointments by agent scope: Grouper les rendez-vous par service de l'agent
|
||||
Group appointments by location type: Grouper les rendez-vous par type de localisation
|
||||
Group appointments by location: Grouper les rendez-vous par lieu de rendez-vous
|
||||
Group appointments by cancel reason: Grouper les rendez-vous par motif d'annulation
|
||||
Group appointments by month and year: Grouper les rendez-vous par mois et année
|
||||
Group calendars by agent: Grouper les rendez-vous par agent
|
||||
Group calendars by agent job: Grouper les rendez-vous par métier de l'agent
|
||||
Group calendars by agent scope: Grouper les rendez-vous par service de l'agent
|
||||
Group calendars by location type: Grouper les rendez-vous par type de localisation
|
||||
Group calendars by location: Grouper les rendez-vous par lieu de rendez-vous
|
||||
Group calendars by cancel reason: Grouper les rendez-vous par motif d'annulation
|
||||
Group calendars by month and year: Grouper les rendez-vous par mois et année
|
||||
Scope: Service
|
||||
Job: Métier
|
||||
Location type: Type de localisation
|
||||
|
Loading…
x
Reference in New Issue
Block a user