Refactoring on fullname query
Change-Id: I94e2dbbc7e58a69441c084f708dcd8f9a3330b8d
This commit is contained in:
parent
08680e5d46
commit
53d02ddc71
@ -140,18 +140,12 @@ final class DoctrineMemberRepository
|
||||
*/
|
||||
public function getByFullName(string $fullname): ?Member
|
||||
{
|
||||
$memberFullNameParts = explode(" ", $fullname);
|
||||
$memberFirstName = trim(trim(array_pop($memberFullNameParts)));
|
||||
$memberLastName = trim(implode(" ", $memberFullNameParts));
|
||||
|
||||
return $this->getEntityManager()
|
||||
->createQueryBuilder()
|
||||
->select("e")
|
||||
->from($this->getBaseEntity(), "e")
|
||||
->where("e.first_name = :first_name")
|
||||
->andWhere("e.last_name = :last_name")
|
||||
->setParameter("first_name",$memberFirstName)
|
||||
->setParameter("last_name", $memberLastName)
|
||||
->where("concat(e.first_name, ' ', e.last_name) like :full_name")
|
||||
->setParameter("full_name", '%'.trim($fullname).'%')
|
||||
->setMaxResults(1)
|
||||
->getQuery()
|
||||
->getOneOrNullResult();
|
||||
|
@ -130,4 +130,30 @@ JSON;
|
||||
$this->assertTrue($output3 == 'ASCII');
|
||||
|
||||
}
|
||||
|
||||
public function testIngestSummit(){
|
||||
|
||||
$summit = new Summit();
|
||||
$summit->setActive(true);
|
||||
// set feed type (sched)
|
||||
$summit->setApiFeedType(IExternalScheduleFeedFactory::SchedType);
|
||||
$summit->setApiFeedUrl("");
|
||||
$summit->setApiFeedKey("");
|
||||
$summit->setTimeZoneId("America/Chicago");
|
||||
$summit->setBeginDate(new \DateTime("2019-09-1"));
|
||||
$summit->setEndDate(new \DateTime("2019-09-30"));
|
||||
|
||||
|
||||
$mainVenue = new SummitVenue();
|
||||
$mainVenue->setIsMain(true);
|
||||
$summit->addLocation($mainVenue);
|
||||
|
||||
$em = Registry::getManager(SilverstripeBaseModel::EntityManager);
|
||||
$em->persist($summit);
|
||||
$em->flush();
|
||||
|
||||
$service = App::make(IScheduleIngestionService::class);
|
||||
|
||||
$service->ingestSummit($summit);
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user