Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

StoreUser.php 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. namespace app\model\store;
  3. use app\model\user\User;
  4. use crmeb\basic\BaseModel;
  5. use crmeb\traits\ModelTrait;
  6. use think\Model;
  7. /**
  8. * 门店用户
  9. * Class StoreUser
  10. * @package app\model\store
  11. */
  12. class StoreUser extends BaseModel
  13. {
  14. use ModelTrait;
  15. /**
  16. * 数据表主键
  17. * @var string
  18. */
  19. protected $pk = 'id';
  20. /**
  21. * 模型名称
  22. * @var string
  23. */
  24. protected $name = 'store_user';
  25. /**
  26. * user用户表一对一关联
  27. * @return \think\model\relation\HasOne
  28. */
  29. public function user()
  30. {
  31. return $this->hasOne(User::class, 'uid', 'uid');
  32. }
  33. /**
  34. * 门店id搜索器
  35. * @param $query
  36. * @param $value
  37. */
  38. public function searchStoreIdAttr($query, $value)
  39. {
  40. if ($value && $value != -1) {
  41. $query->where('store_id', $value);
  42. }
  43. }
  44. /**
  45. * 关联标签修改器
  46. * @param $value
  47. * @return false|string
  48. */
  49. protected function setLabelIdAttr($value)
  50. {
  51. if ($value) {
  52. return is_array($value) ? implode(',', $value) : $value;
  53. }
  54. return '';
  55. }
  56. /**
  57. * 关联标签获取器
  58. * @param $value
  59. * @param $data
  60. * @return mixed
  61. */
  62. protected function getLabelIdAttr($value)
  63. {
  64. if ($value) {
  65. return is_string($value) ? explode(',', $value) : $value;
  66. }
  67. return [];
  68. }
  69. /**
  70. * uid搜索器
  71. * @param Model $query
  72. * @param $value
  73. */
  74. public function searchUidAttr($query, $value)
  75. {
  76. if (is_array($value)) {
  77. $query->whereIn('uid', $value);
  78. } else {
  79. if ($value) {
  80. $query->where('uid', $value);
  81. }
  82. }
  83. }
  84. }