MaintenanceMapper.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. namespace catchAdmin\hydraulic\model;
  3. use catcher\base\CatchModel as Model;
  4. use catchAdmin\system\model\SysDictData;
  5. use catchAdmin\permissions\model\DataRangScopeTrait;
  6. use \think\facade\Db;
  7. class maintenancemapper extends Model
  8. {
  9. use DataRangScopeTrait;
  10. // 表名
  11. public $name = 'maintenancemapper';
  12. // 数据库字段映射
  13. public $field = array(
  14. 'id',
  15. // 设备类型
  16. 'device_type',
  17. // 唯一值
  18. 'value',
  19. // 名称
  20. 'name',
  21. // 创建人ID
  22. 'creator_id',
  23. // 创建时间
  24. 'created_at',
  25. // 更新时间
  26. 'updated_at',
  27. // 软删除
  28. 'deleted_at',
  29. );
  30. /**
  31. * 获取列表
  32. */
  33. public function getList()
  34. {
  35. $res = $this->dataRange()
  36. ->catchSearch()
  37. ->append(['device_type_name','creator_name'])
  38. ->order($this->aliasField('id'), 'desc')
  39. ->paginate();
  40. return $res;
  41. }
  42. /**
  43. * 名称搜索
  44. */
  45. public function searchNameAttr($query, $value, $data)
  46. {
  47. return $query->where('name', 'like', '%'.$value.'%');
  48. }
  49. /**
  50. * 设备类型搜索
  51. */
  52. public function searchDeviceTypeAttr($query, $value, $data)
  53. {
  54. return $query->where('device_type', '=', $value);
  55. }
  56. /**
  57. * 设备类型名称
  58. */
  59. public function getDeviceTypeNameAttr(){
  60. $value=$this->getData('device_type');
  61. return (new SysDictData())->getValueByCode('Maintenance', $value) ?: '';
  62. }
  63. }