FastChatServiceUser.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. namespace app\admin\model;
  3. use think\Model;
  4. use traits\model\SoftDelete;
  5. class FastChatServiceUser extends Model
  6. {
  7. use SoftDelete;
  8. // 表名
  9. protected $name = 'fastchat_service_user';
  10. // 自动写入时间戳字段
  11. protected $autoWriteTimestamp = 'int';
  12. // 定义时间戳字段名
  13. protected $createTime = 'createtime';
  14. protected $updateTime = false;
  15. protected $deleteTime = 'deletetime';
  16. // 追加属性
  17. protected $append = [
  18. 'add_sessiondata_text',
  19. 'online_status_text',
  20. 'status_text'
  21. ];
  22. public function getAddSessiondataTextAttr($value, $data)
  23. {
  24. $value = $value ? $value : (isset($data['add_sessiondata']) ? $data['add_sessiondata'] : '');
  25. $list = $this->getAddSessiondataList();
  26. return isset($list[$value]) ? $list[$value] : '';
  27. }
  28. public function getAddSessiondataList()
  29. {
  30. return ['0' => __('Add_sessiondata 0'), '1' => __('Add_sessiondata 1'), '2' => __('Add_sessiondata 2')];
  31. }
  32. public function getStatusTextAttr($value, $data)
  33. {
  34. $value = $value ? $value : (isset($data['status']) ? $data['status'] : '');
  35. $list = $this->getStatusList();
  36. return isset($list[$value]) ? $list[$value] : '';
  37. }
  38. public function getStatusList()
  39. {
  40. return ['0' => __('Status 0'), '1' => __('Status 1')];
  41. }
  42. public function getOnlineStatusTextAttr($value, $data)
  43. {
  44. $value = $value ? $value : (isset($data['online_status']) ? $data['online_status'] : '');
  45. $list = $this->getOnlineStatusList();
  46. return isset($list[$value]) ? $list[$value] : '';
  47. }
  48. public function getOnlineStatusList()
  49. {
  50. return ['0' => __('online_status 0'), '1' => __('online_status 1')];
  51. }
  52. public function admin()
  53. {
  54. return $this->belongsTo('Admin', 'admin_id', 'id', [], 'LEFT')->setEagerlyType(0);
  55. }
  56. }