'ID', 'cx_mch_id' => '平台商户ID', 'rich_text_id' => '富文本ID', 'sort' => '排序,默认100,升序', 'status' => '状态:0=草稿,1=已发布,2=回收站', 'is_top' => '是否置顶:0=否,1=是', 'is_index' => '是否首页展示:0=否,1=是', 'viewed_num' => '浏览量', 'created_at' => '添加时间', 'updated_at' => '更新时间', 'published_at' => '发布时间', 'is_delete' => '是否删除:0=否,1=是', 'deleted_at' => '删除时间', ]; } public function beforeSave($insert) { if(parent::beforeSave($insert)){ if($this->isNewRecord){ $this->created_at = time(); } $this->updated_at = time(); if($this->is_delete == 1) $this->deleted_at = time(); return true; } else { return false; } } public static function statusLabels() { return [ '0' => '草稿', '1' => '已发布', '2' => '回收站', ]; } public static function getStatus($status) { $labels = self::statusLabels(); return isset($labels[$status]) ? $labels[$status] : "未知"; } /** * @param integer $notice_id 公告ID * @param integer $cx_mch_id 平台商户ID * return integer */ public static function setViewedNum($notice_id, $cx_mch_id = 0) { $model = Notice::findOne([ 'id' => $notice_id, 'cx_mch_id' => $cx_mch_id, 'is_delete' => 0 ]); if($model == null) return 0; $model->viewed_num = $model->viewed_num + 1; $model->save(); return $model->viewed_num; } public function getRichText() { return $this->hasOne(RichText::className(), ['id' => 'rich_text_id'])->where(['is_delete' => 0]); } }