holder: fix when repositionning/moving member on same day

* if holder has not the index '0', validator fails. Use the method
Collection::first
* change constraint to allow a move on household on same day
This commit is contained in:
Julien Fastré 2021-12-16 16:57:49 +01:00
parent 751a418c1f
commit b613a2f49b
3 changed files with 37 additions and 1 deletions

View File

@ -16,6 +16,7 @@ and this project adheres to
* [docgen]: add base context + tests
* [docgen]: add age for person
* [task]: fix dropdown menu style + fix bug in singleTaskController (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/338)
* Household: fix bug when moving person on the same day (see https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/281)
## Test releases

View File

@ -29,7 +29,7 @@ class MaxHolderValidator extends ConstraintValidator
$covers = new DateRangeCovering(
self::MAX_HOLDERS,
$holders[0]->getStartDate()->getTimezone()
$holders->first()->getStartDate()->getTimezone()
);
foreach ($holders as $key => $member) {

View File

@ -0,0 +1,35 @@
<?php
/**
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Chill\Migrations\Person;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
final class Version20211216154008 extends AbstractMigration
{
public function down(Schema $schema): void
{
$this->addSql('ALTER TABLE chill_person_household_members DROP CONSTRAINT chill_person_household_members_check');
$this->addSql('ALTER TABLE chill_person_household_members ADD CONSTRAINT chill_person_household_members_check CHECK (startdate < enddate)');
}
public function getDescription(): string
{
return 'Allow a person to be moved into different household on same day';
}
public function up(Schema $schema): void
{
$this->addSql('ALTER TABLE chill_person_household_members DROP CONSTRAINT chill_person_household_members_check');
$this->addSql('ALTER TABLE chill_person_household_members ADD CONSTRAINT chill_person_household_members_check CHECK (startdate <= enddate)');
}
}