| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- <?php
- namespace app\common\models;
- use app\backend\modules\goods\services\CommentService;
- use Illuminate\Database\Eloquent\SoftDeletes;
- /**
- * Created by PhpStorm.
- * Author: 芸众商城 www.yunzshop.com
- * Date: 2017/2/27
- * Time: 下午5:07
- */
- use Illuminate\Support\Facades\DB;
- class Comment extends BaseModel
- {
- const not_audit = 0;//不需要审核
- const pass_audit = 1;//通过审核
- const wait_audit = 2;//等待审核
- public $attributes = ['type' => 1];
- protected $casts = [
- 'score_latitude' => 'json'
- ];
-
- use SoftDeletes;
- public $table = 'yz_comment';
- public $TypeName;
- protected $appends = ['type_name'];
- protected $guarded = [''];
- protected $fillable = [''];
- public static function getOrderGoodsComment()
- {
- return self::uniacid();
- }
- public static function getReplyById($id)
- {
- return self::uniacid()
- ->where('comment_id', $id)
- ->where('uid', '<>', DB::raw('reply_id'))
- ->orderBy('created_at', 'asc')
- ->get();
- }
- // public function getReplyAttribute()
- // {
- // if (!isset($this->Reply)) {
- // $reply['data'] = static::getReplyById($this->id);
- // $reply['count'] = $reply['data']->count('id');
- // $this->Reply = $reply;
- // }
- // return $this->Reply;
- // }
- //
- // public function getAppendAttribute()
- // {
- // if (!isset($this->Append)) {
- // $append['data'] = static::getAppendById($this->id);
- // $append['count'] = $append['data']->count('id');
- // $this->Append = $append;
- // }
- // return $this->Append;
- // }
- public static function getAppendById($id)
- {
- return self::uniacid()
- ->where('comment_id', $id)
- ->where('uid', DB::raw('reply_id'))
- ->orderBy('created_at', 'asc')
- ->get();
- }
- public function getTypeNameAttribute()
- {
- if (!isset($this->TypeName)) {
- $this->TypeName = CommentService::getTypeName($this->type);
- }
- return $this->TypeName;
- }
- public function hasManyReply()
- {
- return $this->hasMany(self::class);
- }
- public function hasManyAppend()
- {
- return $this->hasMany(self::class);
- }
- public function hasOneGoods(){
- return $this->hasOne(Goods::class,'id','goods_id');
- }
- public function hasOneMember()
- {
- return $this->hasOne('app\common\models\Member', 'uid', 'uid');
- }
- public function getAfterContent($comment_id)
- {
- return self::uniacid()
- ->select(['id','content','images','type'])
- ->where('comment_id',$comment_id)
- ->where('type',3)
- ->where('audit_status','!=',2)
- ->first();
- }
- /**
- * 修改主评论追评ID
- * @param int $comment_id 主评论ID
- * @param int $additional_comment_id 追评ID
- * @return bool
- */
- public static function updatedAdditionalCommentId($comment_id,$additional_comment_id)
- {
- return self::where('id', $comment_id)->update(['additional_comment_id' => $additional_comment_id]);
- }
- }
|