Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

MemberSnapUpModel.php 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace app\model\store\project;
  3. use app\model\user\User;
  4. use crmeb\basic\BaseModel;
  5. use crmeb\traits\ModelTrait;
  6. class MemberSnapUpModel extends BaseModel
  7. {
  8. use ModelTrait;
  9. protected $name = 'store_member_snap_up';
  10. protected $pk = 'member_snap_up_id';
  11. protected $type = [
  12. 'pay_info' => 'array',
  13. ];
  14. // public function member()
  15. // {
  16. // return $this->hasOne(MemberModel::class, 'member_id', 'member_id');
  17. // }
  18. public function member()
  19. {
  20. return $this->hasOne(User::class, 'uid', 'member_id');
  21. }
  22. public function getStatusMeansAttr($value, $data)
  23. {
  24. $today = date('Y-m-d');
  25. if ($data['status'] == 8) return '已完成';
  26. if ($data['status'] == 1 && $data['valid_end_time'] >= $today) return '待消费';
  27. if ($data['status'] == 1 && $data['valid_end_time'] < $today) return '已过期';
  28. return '状态异常';
  29. }
  30. //前台需要
  31. public function getStatusAnotherAttr($value, $data)
  32. {
  33. $today = date('Y-m-d');
  34. if ($data['status'] == 8) return 8;
  35. if ($data['status'] == 1 && $data['valid_end_time'] >= $today) return 1;
  36. return -1;
  37. }
  38. public function getPayTimeFormatAttr($value, $data)
  39. {
  40. return $data['pay_time'] ? date('Y-m-d H:i:s', $data['pay_time']) : '-';
  41. }
  42. public function getPayTypeMeanAttr($value, $data)
  43. {
  44. $type_means = [
  45. 'weixin' => '微信支付',
  46. 'money' => '余额支付',
  47. 'offline' => '代客下单',
  48. ];
  49. return $type_means[$data['pay_type']] ?? '-';
  50. }
  51. }