77 lines
1.6 KiB
PHP
77 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
|
|
class RoadConstructionRural extends Model
|
|
{
|
|
/**
|
|
* The attributes that should be hidden for arrays.
|
|
*
|
|
* @var array
|
|
*/
|
|
protected $hidden = [
|
|
// 'province_id',
|
|
'created_at',
|
|
'updated_at'
|
|
];
|
|
protected $fillable = [
|
|
'axis_type_fa',
|
|
'submited_at_fa',
|
|
'last_updated_at_fa',
|
|
'city_1_fa',
|
|
'city_2_fa',
|
|
'city_3_fa',
|
|
'project_status_fa',
|
|
'province_fa',
|
|
'rate',
|
|
'rate_desc'
|
|
];
|
|
/**
|
|
* The attributes that should be cast to native types.
|
|
*
|
|
* @var array
|
|
*/
|
|
protected $casts = [
|
|
'cities_id' => 'array',
|
|
'project_distance' => 'array',
|
|
'project_distance_update' => 'array',
|
|
'start_latlng' => 'array',
|
|
'end_latlng' => 'array'
|
|
];
|
|
|
|
public function user()
|
|
{
|
|
return $this->belongsTo('App\Models\User');
|
|
}
|
|
|
|
/**
|
|
* Get all of the project's files.
|
|
*/
|
|
public function files()
|
|
{
|
|
return $this->morphMany('App\Models\ProjectFile', 'project_fileable');
|
|
}
|
|
|
|
public function projectHistories()
|
|
{
|
|
return $this->hasMany('App\Models\RoadConstructionRuralHistory', 'project_id');
|
|
}
|
|
|
|
public function latestHistory()
|
|
{
|
|
return $this->hasOne('App\Models\RoadConstructionRuralHistory', 'project_id')->latest();
|
|
}
|
|
|
|
public function province()
|
|
{
|
|
return $this->belongsTo('App\Models\Province');
|
|
}
|
|
|
|
public function city()
|
|
{
|
|
return $this->belongsTo('App\Models\City');
|
|
}
|
|
}
|