hasOne('ShopCategory', 'id', 'cid'); } /** * @Notes: 关联商家账号模型 * @Author: 张无忌 */ public function admin() { return $this->hasOne('ShopAdmin', 'shop_id', 'id'); } /** * NOTE: 获取器-到期时间 * @author: 张无忌 * @param $value * @return false|string */ public function getExpireTimeAttr($value) { return $value === 0 ? '无期限' : date('Y-m-d H:i:s', $value); } /** * 修改器-logo转相对 * @param $value * @return mixed|string */ public function setLogoAttr($value) { return $value ? UrlServer::setFileUrl($value) : ''; } /** * 获取器-背景图路径 * @param $value * @return string */ public function getBackgroundAttr($value) { return $value ? UrlServer::getFileUrl($value) : ''; } /** * 获取器-背景图路径 * @param $value * @return string */ public function getLogoAttr($value) { return $value ? UrlServer::getFileUrl($value) : ''; } /** * 获取器-pc店铺封面路径 * @param $value * @return string */ public function getCoverAttr($value) { return $value ? UrlServer::getFileUrl($value) : ''; } /** * 获取器-pc店铺头图路径 * @param $value * @return string */ public function getBannerAttr($value) { return $value ? UrlServer::getFileUrl($value) : ''; } /** * @Notes: 修改器-工作日 * @Author: 张无忌 * @param $value * @return string */ public function setWeekdaysAttr($value) { if ($value) { return implode(',', $value); } return ''; } /** * @Notes: 获取器-工作日 * @Author: 张无忌 * @param $value * @return array */ public function getWeekdaysAttr($value) { if ($value) { return explode(',', $value); } return []; } /** * @Notes: 获取器-退货地址 * @Author: 张无忌 * @param $value * @return array|mixed */ public function getRefundAddressAttr($value) { if ($value) { return json_decode($value, true); } return []; } /** * 商家类型 获取器 */ public function getTypeDescAttr($value) { $typeDesc = [1=>'官方自营', 2=>'入驻商家']; return $typeDesc[$value]; } /** * 商家介绍 获取器 */ public function getIntroAttr($value) { return $value ? $value : ''; } /** * @notes 到期状态 * @param $value * @return false|string * @author 段誉 * @date 2022/3/16 18:10 */ public function getExpireDescAttr($value, $data) { if ($data['expire_time'] && time() > $data['expire_time']) { return '已到期'; } return '未到期'; } }