2025-11-04 12:22:29 +07:00
< ? php
namespace App\Models\Organization ;
use App\Models\BaseModel ;
class AccountModel extends BaseModel {
protected $table = 'account' ;
protected $primaryKey = 'AccountID' ;
2025-11-05 10:35:15 +07:00
protected $allowedFields = [ 'Parent' , 'AccountName' , 'Initial' , 'Street_1' , 'Street_2' , 'Street_3' ,
'City' , 'Province' , 'ZIP' , 'Country' , 'AreaCode' , 'EmailAddress1' , 'EmailAddress2' ,
2025-11-04 12:22:29 +07:00
'Phone' , 'Fax' , 'CreateDate' , 'EndDate' ];
protected $useTimestamps = true ;
protected $createdField = 'CreateDate' ;
protected $updatedField = '' ;
protected $useSoftDeletes = true ;
protected $deletedField = 'EndDate' ;
2025-11-05 15:03:55 +07:00
public function getAccounts () {
2025-11-05 15:14:30 +07:00
$rows = $this -> select ( 'account.AccountID, account.AccountName, account.Parent, pa.AccountName as ParentName, account.AreaCode, zones.ZoneName as AreaName' )
2025-11-05 15:03:55 +07:00
-> join ( 'account pa' , 'pa.AccountID=account.Parent' , 'left' )
-> join ( 'zones' , 'zones.zonecode=account.AreaCode' , 'left' )
-> findAll ();
return $rows ;
}
public function getAccount ( $AccountID ) {
$rows = $this -> select ( 'account.*, pa.AccountName as ParentName, zones.ZoneName as AreaName, city.ZoneName as CityName, prov.ZoneName as ProvName, country.VValue as CountryName' )
-> join ( 'account pa' , 'pa.AccountID=account.Parent' , 'left' )
-> join ( 'zones' , 'zones.zonecode=account.AreaCode' , 'left' )
-> join ( 'zones city' , 'city.zoneid=account.City' , 'left' )
-> join ( 'zones prov' , 'prov.zoneid=account.Province' , 'left' )
-> join ( 'valueset country' , 'country.VID=account.Country' , 'left' )
-> where ( 'account.AccountID' , $AccountID )
-> findAll ();
return $rows ;
}
2025-11-04 12:22:29 +07:00
}