__('State 1'), '2' => __('State 2'), '3' => __('State 3'), '4' => __('State 4'), '6' => __('State 6'), '7' => __('State 7')]; } public function getStatusList() { return ['normal' => __('Normal'), 'hidden' => __('Hidden')]; } public function getStatesList() { return ['0' => __('States 0'), '1' => __('States 1'), '2' => __('States 2')]; } public function getStateTextAttr($value, $data) { $value = $value ? $value : (isset($data['state']) ? $data['state'] : ''); $list = $this->getStateList(); return isset($list[$value]) ? $list[$value] : ''; } public function getCreatetimeTextAttr($value, $data) { $value = $value ? $value : (isset($data['createtime']) ? $data['createtime'] : ''); return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value; } public function getPaymenttimeTextAttr($value, $data) { $value = $value ? $value : (isset($data['paymenttime']) ? $data['paymenttime'] : ''); return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value; } public function getDelivertimeTextAttr($value, $data) { $value = $value ? $value : (isset($data['delivertime']) ? $data['delivertime'] : ''); return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value; } public function getDealtimeTextAttr($value, $data) { $value = $value ? $value : (isset($data['dealtime']) ? $data['dealtime'] : ''); return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value; } public function getStatusTextAttr($value, $data) { $value = $value ? $value : (isset($data['status']) ? $data['status'] : ''); $list = $this->getStatusList(); return isset($list[$value]) ? $list[$value] : ''; } protected function setPaymenttimeAttr($value) { return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value); } protected function setDelivertimeAttr($value) { return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value); } protected function setDealtimeAttr($value) { return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value); } protected function setOrderNoAttr($value) { // 高并发有几率重复,暂时不需要 return substr(time(),-8).substr(substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8).$value,-8); } public function user() { return $this->belongsTo('app\common\model\User', 'user_id', 'id', [], 'LEFT')->setEagerlyType(0); } public function shop() { return $this->belongsTo('app\index\model\wanlshop\Shop', 'shop_id', 'id', [], 'LEFT')->setEagerlyType(0); } public function ordergoods() { return $this->hasMany('app\index\model\wanlshop\OrderGoods', 'order_id', 'id', [], 'LEFT'); } public function coupon() { return $this->belongsTo('app\index\model\wanlshop\CouponReceive', 'coupon_id', 'id', [], 'LEFT')->setEagerlyType(0); } }