链街Dcat后台
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.

97 lines
2.9 KiB

  1. <?php
  2. namespace App\Models;
  3. use Dcat\Admin\Traits\HasDateTimeFormatter;
  4. use Illuminate\Database\Eloquent\SoftDeletes;
  5. use Illuminate\Database\Eloquent\Model;
  6. class Coupon extends Model
  7. {
  8. use HasDateTimeFormatter;
  9. use SoftDeletes;
  10. protected $table = 'ims_system_coupon_user';
  11. public function getStatusTextAttribute($value)
  12. {
  13. return isset(config('coupon.status')[$value])?config('coupon.status')[$value]:'';
  14. }
  15. public function getTypeTextAttribute($value)
  16. {
  17. return isset(config('coupon.type')[$value])?config('coupon.type')[$value]:'';
  18. }
  19. public function getCategoryTextAttribute($value)
  20. {
  21. return isset(config('coupon.category')[$value])?config('coupon.category')[$value]:'';
  22. }
  23. public function getIsNewUserTextAttribute($value)
  24. {
  25. return isset(config('coupon.is_new_user')[$value])?config('coupon.is_new_user')[$value]:'';
  26. }
  27. public function getDiscountTypeTextAttribute($value)
  28. {
  29. return isset(config('coupon.discount_type')[$value])?config('coupon.discount_type')[$value]:'';
  30. }
  31. public function getActiveTypeTextAttribute($value)
  32. {
  33. return isset(config('coupon.active_type')[$value])?config('coupon.active_type')[$value]:'';
  34. }
  35. public function getStartTimeTextAttribute($value)
  36. {
  37. $value = $value ? $value : '';
  38. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  39. }
  40. public function getEndTimeTextAttribute($value)
  41. {
  42. $value = $value ? $value : '';
  43. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  44. }
  45. // 转换
  46. public function getTypeAttribute($value)
  47. {
  48. return isset(config('coupon.type')[$value])?config('coupon.type')[$value]:'';
  49. }
  50. public function getDiscountTypeAttribute($value)
  51. {
  52. return isset(config('coupon.discount_type')[$value])?config('coupon.discount_type')[$value]:'';
  53. }
  54. public function getActiveTypeAttribute($value)
  55. {
  56. return isset(config('coupon.active_type')[$value])?config('coupon.active_type')[$value]:'';
  57. }
  58. // public function getStartTimeAttribute($value)
  59. // {
  60. // $value = $value ? $value : '';
  61. // return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  62. // }
  63. // 设置
  64. protected function setStartTimeAttribute($value)
  65. {
  66. return $value === '' ? null : strtotime($value);
  67. }
  68. protected function setEndTimeAttribute($value)
  69. {
  70. return $value === '' ? null : strtotime($value);
  71. }
  72. protected function setUsableStarttimeAttribute($value)
  73. {
  74. return $value === '' ? null : strtotime($value);
  75. }
  76. protected function setUsableEndTimeAttribute($value)
  77. {
  78. return $value === '' ? null : strtotime($value);
  79. }
  80. protected function setAddtimeAttribute($value)
  81. {
  82. return $value === '' ? null : strtotime($value);
  83. }
  84. }