| Server IP : 162.214.74.102 / Your IP : 216.73.216.59 Web Server : Apache System : Linux dedi-4363141.lrsys.com.br 3.10.0-1160.119.1.el7.tuxcare.els25.x86_64 #1 SMP Wed Oct 1 17:37:27 UTC 2025 x86_64 User : lrsys ( 1015) PHP Version : 5.6.40 Disable Function : exec,passthru,shell_exec,system MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/lrsys/www/lrsys_apps/mundotennis/application/plugins/module_events/models/ |
Upload File : |
<?php
include_once __DIR__ . "/../../../autoload/My_Model.php";
include_once __DIR__ . "/../factories/DoctorFactory.php";
class DoctorModel extends My_Model {
/**
* @var string
*/
public $table = 'crm_accounts';
/**
* @param array $data
* @return bool|ORM
*/
public function createDoctor($data) {
$doctor = self::create();
DoctorFactory::create($data, $doctor, true);
$doctor->save();
return $doctor;
}
/**
* @param array $data
* @param ORM $doctor
* @return bool|ORM
*/
public function updateDoctor($data, $doctor) {
ORM::for_table($this->table)->create($doctor);
DoctorFactory::create($data, $doctor);
$doctor->save();
return $doctor;
}
/**
* @param ORM $doctor
* @return bool|ORM
*/
public function deleteDoctor($doctor) {
$data = ORM::for_table($this->table)->create($doctor);
if ($data) {
$data_group = ORM::for_table('crm_accounts_groups')->where('crm_accounts_id')->find_one();
$dg = ORM::for_table('crm_accounts_groups')->create($data_group);
$dg->delete();
}
$data->delete();
return $doctor;
}
public function all($order = 'id', $byDeletedNull = false) {
$orm = ORM::for_table($this->table)
->table_alias('p')
->select('p.account', 'name')
->select('p.id')
->join('crm_accounts_groups', array('p.id', '=', 'gp.crm_accounts_id'), 'gp')
->join('crm_groups', array('g.id', '=', 'gp.crm_group_id'), 'g')
->where('g.alias', 'doctor')->order_by_asc($order);
return $orm->find_many();
}
public function doctors($agreementId, $term,$diaryId) {
$orm = ORM::for_table($this->table)
->table_alias('p')
->select('p.account', 'name')
->select('p.id')
->join('crm_accounts_groups', array('p.id', '=', 'gp.crm_accounts_id'), 'gp')
->join('crm_groups', array('g.id', '=', 'gp.crm_group_id'), 'g')
->where('g.alias', 'doctor')
->where_like('p.account', '%' . $term . '%');
if(intval($agreementId)!=1){ //1 é particular, e libera para todos
$orm->join('module_med_agreement_doctors', array('mmad.doctor_id', '=', 'p.id'), 'mmad')
->where('mmad.module_med_agreement_id', $agreementId);
}
if(!empty($diaryId)){
$orm->join('module_med_diary_doctor', array('mmdd.doctor_id', '=', 'p.id'), 'mmdd')
->where('mmdd.diary_id', $diaryId);
}
return $orm->find_many();
}
}