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);
|
||
}
|
||
}
|