ControlAlarm.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace catchAdmin\alarm\model;
  3. use catcher\base\CatchModel as Model;
  4. use catchAdmin\permissions\model\DataRangScopeTrait;
  5. use catchAdmin\system\model\SysDictData;
  6. class ControlAlarm extends Model
  7. {
  8. use DataRangScopeTrait;
  9. // 表名
  10. public $name = 'control_alarm';
  11. // 数据库字段映射
  12. public $field = array(
  13. 'id',
  14. // 车牌
  15. 'plate_no',
  16. // 车辆标签
  17. 'rfid_sn',
  18. // 报警地点
  19. 'address',
  20. // 报警类型
  21. 'alarm_type',
  22. // 状态
  23. 'state',
  24. // 备注
  25. 'remark',
  26. // 创建人ID
  27. 'creator_id',
  28. // 创建时间
  29. 'created_at',
  30. // 更新时间
  31. 'updated_at',
  32. // 软删除
  33. 'deleted_at',
  34. );
  35. /**
  36. * 列表
  37. */
  38. public function getList()
  39. {
  40. $res=$this->dataRange()
  41. ->catchSearch()
  42. ->append(['state_text'])
  43. ->order($this->aliasField('id'), 'desc')
  44. ->paginate();
  45. return $res;
  46. }
  47. // //根据姓名搜索
  48. // public function searchNameAttr($query, $value, $data)
  49. // {
  50. // return $query->where('name', 'like', '%' . $value . '%');
  51. // }
  52. public function getStateTextAttr($value){
  53. $state = $this->getData('state');
  54. return (new SysDictData())->getValueByCode('AlarmHandleState', $state) ?: '';
  55. }
  56. public function getAlarmTypeAttr($value){
  57. return (new SysDictData())->getValueByCode('AlarmType', $value) ?: '';
  58. }
  59. }