// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\api\model; use app\common\model\UserDynamic as UserDynamicModel; /** * 用户动态模型类 * Class UserDynamic * @package app\api\model */ class UserDynamic extends UserDynamicModel { protected $globalScope = ['']; /** * 隐藏字段 * @var array */ protected $hidden = [ 'update_time' ]; /** * 获取列表 * @param array $param * @param int $listRows * @return mixed */ public function getList(array $param, int $listRows = 15) { // 整理查询参数 $params = array_merge($param, ['status' => 1]); // 获取商品列表 $list = parent::getList($params, $listRows); if ($list->isEmpty()) { return $list; } // 隐藏冗余的字段 $list->hidden(array_merge($this->hidden, ['status'])); // 整理列表数据并返回 return $this->setListDataFromApi($list); } /** * 设置展示的数据 api模块 * @param $info * @return mixed */ private function setListDataFromApi($info) { return $this->setListData($info, function ($data) { // 整理数据 api模块 $this->setDataFromApi($data); }); } /** * 整理数据 api模块 * @param $info * @return mixed */ private function setDataFromApi($info) { return $this->setData($info, function ($data) { // logo封面 $data['logo'] = $data['logo']? getPreview($data['logo']) : ''; $data['file_url'] = $data['file_url']? getPreview($data['file_url']) : ''; // 点赞喜欢数 if(!is_null($data['like_num'])){ $data['like_num'] = $data['like_num']? ($data['like_num']<10000? "{$data['like_num']}" : round($data['like_num']/10000,1).'w') :''; } // 收藏数 if(!is_null($data['collect_num'])){ $data['collect_num'] = $data['collect_num']? ($data['collect_num']<10000? "{$data['collect_num']}" : round($data['collect_num']/10000,1).'w') :''; } // 浏览数 if(!is_null($data['views'])){ $data['views'] = $data['views']? ($data['views']<10000? "{$data['views']}" : round($data['views']/10000,1).'w') :''; } }); } /** * 获取详情信息 * @param $where * @param array $with * @return static|array|false|null */ public static function detail($where, array $with = []) { $filter = []; if (is_array($where)) { $filter = array_merge($filter, $where); } else { $filter['id'] = (int)$where; } return static::get($filter, $with); } public static function getListByUserSchool($userId){ } }