You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
namespace App\Models\v3;
use Dcat\Admin\Traits\HasDateTimeFormatter;use Illuminate\Database\Eloquent\SoftDeletes;use Illuminate\Database\Eloquent\Model;
class Goods extends Model{ use HasDateTimeFormatter; use SoftDeletes;
protected $table = 'lanzu_goods'; protected $dateFormat = 'U'; /* 查询记录数 limit */ protected $perPage = 10; protected $appends = [ 'cover_img_url', 'on_sale_text', 'is_infinite_text' ];
protected $casts = [ 'details_imgs'=>'array', 'tags'=>'array', 'spec'=>'array', ];
public static $_onSale = ['否','是']; public static $_isInfinite = ['关闭','开启'];
public function getCoverImgUrlAttribute($value) { $value = $value ? $value : $this->cover_img; return $this->imageUrl($value); } public function getOnSaleTextAttribute($value) { $value = $value ? $value : $this->on_sale; return isset(self::$_onSale[$value]) ? self::$_onSale[$value] : ''; } public function getIsInfiniteTextAttribute($value) { $value = $value ? $value : $this->is_infinite; return isset(self::$_isInfinite[$value]) ? self::$_isInfinite[$value] : ''; } public function ImageBanners(){ return $this->hasMany('\App\Models\v3\GoodsBanners','goods_id','id')->where('type',1); }
public function VideoBanners(){ return $this->hasMany('\App\Models\v3\GoodsBanners','goods_id','id')->where('type',2);
}
/** * 处理旧图片 * @param $value * @return string */ public function imageUrl($value) { if(strripos($value,"http") === false){ return env('OSS_IMG_HOST').'/'.$value; }else{ return $value; } }}
|