/var/www/doncode.com.ua/www/models
Edit: /var/www/doncode.com.ua/www/models/class.dcclist_model.php (10829B)
form->post('number','номер телефона')->val('digit')->val('emptyStr');
$this->form->submit();
$data = $this->form->fetch();
}catch(Exception $e){
ajax::fail($e->getMessage());
return false;
}
try{
$sth = $this->database->prepare ("SELECT `id`,`FIO`,`discount`,`price_type` FROM `contractor` WHERE `phone`=:phone LIMIT 1 ");
if (strlen($data['number'])>10){
$number = substr($data['number'],strlen($data['number'])-10);
}else{
$number = $data['number'];
}
$sth->execute(array(
':phone'=> $number)
);
}catch(PDOException $e){
ajax::fail($e->getMessage());
return false;
}
if($sth->rowCount()==0){
echo json_encode(array('none'=>time()));
return false;
}else{
echo json_encode($sth->fetch());
}
}
public function fetchCountRecords(){
$sth = $this->database->prepare('SELECT count(id) as `count` FROM `dcc` WHERE `deleted`=\'0\'; ');
$sth->execute();
return $sth->fetch ();
}
public function fetchSingleRecordsFromCode(){
$msg_fail = "Не найден покупатель. ";
try{
$this->form->post('code')->val('emptyStr');
$this->form->submit();
$data = $this->form->fetch();
}catch(Exception $e){
ajax::fail( $msg_fail.$e->getMessage() );
return false;
}
try{
$sth = $this->database->prepare("SELECT * FROM `contractor` WHERE `deleted`='0' AND `code_clients` =:code LIMIT 1;");
$sth->execute(array(':code'=>$data['code']));
}catch(PDOException $e){
ajax::fail( $msg_fail );
return false;
}
if ($sth->rowCount() > 0)
echo json_encode($sth->fetch());
else
ajax::fail( $msg_fail );
}
public function getTypeContractor (){
try{
$sth = $this->database->prepare("SELECT * FROM `type_contractor`");
$sth->execute();
return $sth->fetchAll();
}catch(PDOException $e){
return array();
}
}
public function clientsGetList ($page=0){
if ($page!=0){
$page_number=abs(($page-1)*LIMIT);
}else{
$page_number=0;
}
try{
$sth=$this->database->prepare("SELECT d.*,c.city_name_ru as cName, co.country_name_ru as coName,pt.name as tarif FROM `dcc` d
LEFT OUTER JOIN `city_` c ON (d.city_id=c.id_city)
LEFT OUTER JOIN `country_` co ON (co.id_country=c.id_country)
LEFT OUTER JOIN `pay_type` pt ON (d.pay_type=pt.id)
WHERE d.deleted='0' ORDER BY d.`gid` LIMIT $page_number , ".LIMIT." ");
$sth->execute();
}catch(PDOException $e){
ajax::fail($e->getMessage());
return false;
}
$max_sum_call = 0;
if($sth->rowCount()>0){
$arr= $sth->fetchAll();
foreach($arr as $k => $v){
$last_update = time() - strtotime($v['last_update']);
if($last_update>300){$arr[$k]['sys']='important';}else{$arr[$k]['sys']='success';}
}
/*
foreach($arr as $k => $v){
if($max_sum_call<$v['sum_call']){$max_sum_call=$v['sum_call'];}
}
$max_sum_call = $max_sum_call / 100;
foreach($arr as $k => $v){
$arr[$k]['percent_sum_call'] = round($v['sum_call']/$max_sum_call).'%';
}*/
echo json_encode($arr);
}else{
if($page_number==0){
ajax::fail( 'нет DCC, а это очень грутсно :(' );
return false;
}
$page_number-=1;
$this->clientsGetList($page_number);
}
}
public function getDCCList(){
try{
$sth=$this->database->prepare("SELECT d.*,c.city_name_ru as cName, co.country_name_ru as coName,pt.name as tarif FROM `dcc` d
LEFT OUTER JOIN `city_` c ON (d.city_id=c.id_city)
LEFT OUTER JOIN `country_` co ON (co.id_country=c.id_country)
LEFT OUTER JOIN `pay_type` pt ON (d.pay_type=pt.id)
WHERE d.deleted='0' AND d.gid>0 AND d.gid<5000 ORDER BY c.city_name_ru");
$sth->execute();
}catch(PDOException $e){
return false;
}
if($sth->rowCount()>0){
return $sth->fetchAll();
}else{
return false;
}
}
public function fetchSingleRecordsFromId ($id,$ajax=true){
$sth=$this->database->prepare("SELECT d.*,c.city_name_ru as cName, co.country_name_ru as coName FROM `dcc` d LEFT OUTER JOIN `city_` c ON (d.city_id=c.id_city) LEFT OUTER JOIN `country_` co ON (co.id_country=c.id_country) WHERE d.deleted='0' AND `id`=:id");
$sth->execute(array(':id'=>$id));
if ($ajax){
echo json_encode($sth->fetch());
}else{
return $sth->fetch();
}
}
public function get_pay_type ($ajax=true){
$sth=$this->database->prepare("SELECT * FROM `pay_type` WHERE deleted='0'");
$sth->execute();
if ($ajax){
echo json_encode($sth->fetch());
}else{
return $sth->fetchAll();
}
}
public function deleteRecord($id){
$sth=$this->database->prepare("UPDATE `dcc` SET `deleted`='1' WHERE `id`=$id ;");
$sth->execute();
if ($sth->rowCount()>0){
echo json_encode(array('msg'=>'success'));
$this->database->log('Удален DCC id='.$id);
}else{
echo json_encode(array('msg'=> 'fail'));
$this->database->log('Не удалось удалить DCC id='.$id);
}
}
public function saveEditRecords ( ){
try{
$this->form->post('id','Номер контрагента')->val('digit')->val('zeroField')
->post('taxi_name')
->post('gid')
->post('city_id')
->post('lo')
->post('la')
->post('zoom')
->post('key')
->post('obmen')
->post('internet')
->post('host')
->post('ip')
->post('port')
->post('pay_type')
->post('site')
->post('multicity')
->post('info');
$this->form->submit();
$data = $this->form->fetch();
if(isset($data['obmen'])){
if($data['obmen']=='on'){
$data['obmen']=1;
}else{
$data['obmen']=0;
}
}else{
$data['obmen']=0;
}
if(isset($data['internet'])){
if($data['internet']=='on'){
$data['internet']=1;
}else{
$data['internet']=0;
}
}else{
$data['internet']=0;
}
$data['multicity'] = json_encode($data['multicity']);
}catch(Exception $e){
ajax::fail($e->getMessage());
$this->database->log('Не удалось обновить данные DCC '.$e->getMessage() );
return false;
}
try{
$id=$data['id'];
unset($data['id']);
$this->database->update('dcc',$data,'id='.$id);
}catch(PDOException $e){
ajax::fail($e->getMessage());
$this->database->log('Не удалось обновить данные DCC '.$e->getMessage() );
return false;
}
ajax::success("Данные клиента ".$data['taxi_name']." обновлены.");
$this->database->log("Данные клиента ".$data['taxi_name']." обновлены." );
}
public function createDCC(){
try{
$this->form->post('gid')
->post('taxi_name')
->post('site');
$this->form->submit();
$data = $this->form->fetch();
}catch(Exception $e){
if(ajax::check_ajax_request()){
ajax::fail($e->getMessage());
}else{
session::set('msgFail',$e->getMessage());
$this->database->log('Не удалось создать DCC '.$e->getMessage() );
header("Location:".$_SERVER["HTTP_REFERER"]);
}
exit;
}
try{
$this->database->insert('dcc',$data);
}catch(PDOException $e){
session::set('msgFail',$e->getMessage());
$this->database->log('Не удалось создать DCC '.$data['taxi_name']);
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
if(ajax::check_ajax_request()){
ajax::success("Создан DCC ".$data['taxi_name']);
}else{
session::set('msgSuccess',"Создан DCC ".$data['taxi_name']);
$this->database->log('Создан DCC '.$data['taxi_name']);
header("Location:".URL."dcc");
}
exit;
}
public function search ($ch,$type){
try{
$char = $this->database->quote('%'.$ch.'%');
$sth = $this->database->prepare("SELECT `id`,`FIO` FROM `contractor` WHERE `$type` LIKE $char AND `deleted`='0' LIMIT ".LIMIT);
$sth->execute( );
ajax::out($sth->fetchAll());
} catch (Exception $e){
ajax::fail($e->getMessage());
return false;
}
}
public function fetechContractor ($id){
try{
$sth = $this->database->prepare("SELECT c.*,t.name as tName FROM `contractor` c LEFT OUTER JOIN `type_contractor` t ON (c.type=t.id) WHERE c.deleted='0' AND c.id=:id LIMIT 1 ");
$sth->execute(array(':id'=>$id));
ajax::out($sth->fetchAll());
return;
}catch(PDOException $e){
ajax::fail($e->getMessage());
return ;
}
}
}