CodeUserLogModel.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. namespace app\common\model;
  3. use think\Cache;
  4. use think\Model;
  5. /**
  6. * 激活码用户日志
  7. */
  8. class CodeUserLogModel extends Model
  9. {
  10. protected $name = "code_user_log";
  11. // 自动写入时间戳字段
  12. protected $autoWriteTimestamp = 'int';
  13. // 定义时间戳字段名
  14. protected $createTime = 'create_time';
  15. protected $updateTime = 'update_time';
  16. protected $deleteTime = false;
  17. // 追加属性
  18. protected $append = [
  19. 'create_time_text',
  20. 'update_time_text'
  21. ];
  22. //添加激活码记录
  23. public static function addCodeUserLog(int $uid, int $parent_id, int $level, int $gift1 =0, int $gift2 =0, $frozen =0, string $code_no)
  24. {
  25. $codeUserLogModel = new self();
  26. $codeUserLogModel->user_id = $uid;
  27. $codeUserLogModel->gift1 = $gift1;
  28. $codeUserLogModel->gift2 = $gift2;
  29. $codeUserLogModel->frozen = $frozen;
  30. $codeUserLogModel->level = $level;
  31. $codeUserLogModel->parent_id = $parent_id;
  32. $codeUserLogModel->code_no = $code_no;
  33. $codeUserLogModel->save();
  34. }
  35. public function users()
  36. {
  37. return $this->hasOne('UserModel', 'id', 'user_id', [], 'LEFT')->setEagerlyType(0);
  38. }
  39. //产品
  40. public function product1()
  41. {
  42. return $this->hasOne('ProductLists', 'id', 'gift1', [], 'LEFT')->setEagerlyType(0);
  43. }
  44. public function product2()
  45. {
  46. return $this->hasOne('ProductLists', 'id', 'gift2', [], 'LEFT')->setEagerlyType(0);
  47. }
  48. public function getCreateTimeTextAttr($value, $data)
  49. {
  50. $value = $value ? $value : (isset($data['create_time']) ? $data['create_time'] : '');
  51. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  52. }
  53. public function getUpdateTimeTextAttr($value, $data)
  54. {
  55. $value = $value ? $value : (isset($data['update_time']) ? $data['update_time'] : '');
  56. return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
  57. }
  58. protected function setCreateTimeAttr($value)
  59. {
  60. return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
  61. }
  62. protected function setUpdateTimeAttr($value)
  63. {
  64. return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
  65. }
  66. }