Merge branch '116-add-relogin-feature-to-mobile-app-api-2' into 'master'

Resolve "Add relogin feature to mobile app api"

Closes #116

See merge request jankstudio/resq!100
This commit is contained in:
Kendrick Chan 2018-05-20 05:49:43 +00:00
commit c8c6424251

View file

@ -218,12 +218,29 @@ class APIController extends Controller
->setPhoneNumber($phone_number);
$em->flush();
// TODO: send sms to number
// TODO: send sms with validation code to number
// response
return $res->getReturnResponse();
}
// TODO: find session customer by phone number
protected function findNumberSession($number)
{
$em = $this->getDoctrine()->getManager();
$query = $em->getRepository(MobileSession::class)->createQueryBuilder('s')
->where('s.phone_number = :number')
->andWhere('s.customer is not null')
->andWhere('s.confirm_flag = 1')
->setParameter('number', $number)
->getQuery();
// we just need one
$res = $query->getOneOrNullResult();
return $res;
}
public function validateCode(Request $req)
{
// check parameters
@ -250,6 +267,16 @@ class APIController extends Controller
$date = new DateTime();
$this->session->setDateConfirmed($date)
->setConfirmed();
// TODO: check if we have the number registered before and merge
$dupe_sess = $this->findNumberSession($this->session->getPhoneNumber());
if ($dupe_sess != null)
{
$dupe_cust = $dupe_sess->getCustomer();
$this->session->setCustomer($dupe_cust);
}
$em->flush();
// response