Active.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <?php
  2. namespace app\admin\model;
  3. use think\Model;
  4. class Active extends Model
  5. {
  6. // 表名
  7. protected $table = 'active';
  8. // 自动写入时间戳字段
  9. protected $autoWriteTimestamp = false;
  10. // 定义时间戳字段名
  11. protected $createTime = false;
  12. protected $updateTime = false;
  13. protected $deleteTime = false;
  14. // 追加属性
  15. protected $append = [
  16. 'joinstarttime_text',
  17. 'joinendtime_text',
  18. 'activestarttime_text',
  19. 'activeendtime_text',
  20. 'is_show_text'
  21. ];
  22. protected static function init()
  23. {
  24. self::afterInsert(function ($row) {
  25. $pk = $row->getPk();
  26. $row->getQuery()->where($pk, $row[$pk])->update(['weigh' => $row[$pk]]);
  27. });
  28. }
  29. public function getIsShowList()
  30. {
  31. return ['1' => __('Is_show 1'), '0' => __('Is_show 0')];
  32. }
  33. public function getJoinstarttimeTextAttr($value, $data)
  34. {
  35. $value = $value ? $value : (isset($data['joinstarttime']) ? $data['joinstarttime'] : '');
  36. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  37. }
  38. public function getJoinendtimeTextAttr($value, $data)
  39. {
  40. $value = $value ? $value : (isset($data['joinendtime']) ? $data['joinendtime'] : '');
  41. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  42. }
  43. public function getActivestarttimeTextAttr($value, $data)
  44. {
  45. $value = $value ? $value : (isset($data['activestarttime']) ? $data['activestarttime'] : '');
  46. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  47. }
  48. public function getActiveendtimeTextAttr($value, $data)
  49. {
  50. $value = $value ? $value : (isset($data['activeendtime']) ? $data['activeendtime'] : '');
  51. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  52. }
  53. public function getIsShowTextAttr($value, $data)
  54. {
  55. $value = $value ? $value : (isset($data['is_show']) ? $data['is_show'] : '');
  56. $list = $this->getIsShowList();
  57. return isset($list[$value]) ? $list[$value] : '';
  58. }
  59. protected function setJoinstarttimeAttr($value)
  60. {
  61. return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
  62. }
  63. protected function setJoinendtimeAttr($value)
  64. {
  65. return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
  66. }
  67. protected function setActivestarttimeAttr($value)
  68. {
  69. return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
  70. }
  71. protected function setActiveendtimeAttr($value)
  72. {
  73. return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
  74. }
  75. }