<?php
namespace app\rongyu\model;
use app\BaseModel;
class JsRongyu extends BaseModel
{
public function search($srcfrom)
{
$src = [
'fzschool_id' => array()
,'hjschool_id' => array()
,'category_id' => array()
,'searchval' => ''
];
$src = array_cover($srcfrom, $src);
$src['fzschool_id'] = strToArray($src['fzschool_id']);
$src['hjschool_id'] = strToArray($src['hjschool_id']);
$src['category_id'] = strToArray($src['category_id']);
$data = $this
->when(count($src['fzschool_id']) > 0, function($query) use($src){
$query->where('fzschool_id', 'in', $src['fzschool_id']);
})
->when(count($src['category_id']) > 0, function($query) use($src){
$query->where('category_id', 'in', $src['category_id']);
})
->when(strlen($src['searchval']) > 0, function($query) use($src){
$query->where('title', 'like', '%' . $src['searchval'] . '%');
})
->with(
[
'fzSchool' => function($query){
$query->field('id, jiancheng, jibie_id')
->with(['dwJibie' => function($q){
$q->field('id, title');
}]);
},
'lxCategory' => function($query){
$query->field('id, title');
},
]
)
->withCount(['ryInfo' => 'count'])
->select();
return $data;
}
public function fzSchool()
{
return $this->belongsTo('\app\system\model\School', 'fzschool_id', 'id');
}
public function lxCategory()
{
return $this->belongsTo('\app\system\model\Category', 'category_id', 'id');
}
public function ryInfo()
{
return $this->hasMany('JsRongyuInfo', 'rongyuce_id', 'id');
}
public function getCntAttr()
{
return $this->ryInfo->count();
}
public function setFzshijianAttr($value)
{
return strtotime($value);
}
public function getFzshijianAttr($value)
{
$value > 0 ? $value = date('Y-m-d', $value) : $value = "";
return $value;
}
}