68 lines
2.9 KiB
PHP
68 lines
2.9 KiB
PHP
<?php
|
|
|
|
//Проверяю есть ли терминал и объект у пользователя если нет создаю (данная функция используется при авторизации)
|
|
function createTerminalAndObject($user_id,$android_id)
|
|
{
|
|
global $db;
|
|
|
|
$name='';
|
|
$phone='';
|
|
$company_id='';
|
|
|
|
//Выбираю информацию о пользователе
|
|
$sql= "select COALESCE(u.name,'')||' '||COALESCE(u.surname,'')||' '||COALESCE(u.patronymic,'') as name,u.phone,main.getcompanyid(u.id) company_id from main._users u where id=$user_id;";
|
|
$res = $db->query($sql);
|
|
if($res!=NULL && $res->rowCount()>0)
|
|
{
|
|
$exists=true;
|
|
while ($row = $res->fetch(PDO::FETCH_ASSOC))
|
|
{
|
|
$name=trim($row['name']);
|
|
$phone=$row['phone'];
|
|
$company_id=$row['company_id'];
|
|
}
|
|
}
|
|
|
|
//Проверяю существование и принадлежность терминала
|
|
$sql= "select id,del,company_id from main.terminals where imei='$android_id';";
|
|
$res = $db->query($sql);
|
|
$terminal_id='';
|
|
if($res!=NULL && $res->rowCount()>0)
|
|
{
|
|
while ($row = $res->fetch(PDO::FETCH_ASSOC))
|
|
{
|
|
$terminal_id=$row['id'];
|
|
if($row['company_id']!=$company_id){
|
|
//Если на телефоне зарегестрировался другой человек то меняем компанию и название всех терминалов и объектов
|
|
$sql="update main.terminals set company_id=$company_id where id=".$row['id'].';';
|
|
$res = $db->query($sql);
|
|
//Меняю названия всех объектов у себя и у связанных пользователей
|
|
$sql="update main.objects set name='$name' where id=".$row['id'].';';
|
|
$res = $db->query($sql);
|
|
}
|
|
if($row['del']){
|
|
$sql="update main.terminals set del=false where id=".$row['id'].';';
|
|
$res = $db->query($sql);
|
|
}
|
|
}
|
|
}else{
|
|
//Если терминал не существует создаю его
|
|
$sql="select * from main.p_terminals_i(1,$company_id,'$phone','$name','$android_id',18,'AUTO CREATION');";
|
|
$res = $db->query($sql);
|
|
if($res!=NULL && $res->rowCount()>0) {
|
|
while ($row = $res->fetch(PDO::FETCH_NUM)){
|
|
$terminal_id=$row[0];
|
|
}
|
|
}
|
|
}
|
|
|
|
//Если объект не существует у текущего пользователя содаю его
|
|
$sql="select id from main.objects where terminal_id=$terminal_id;";
|
|
$res = $db->query($sql);
|
|
if($res!=NULL && $res->rowCount()>0) {
|
|
}else{
|
|
$sql="select * from main.p_objects_i(1,$company_id,'$name',1,'".date("Y")."',$terminal_id,1,'Phone',1)";
|
|
$res = $db->query($sql);
|
|
}
|
|
}
|