WorkLocation.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. <?php
  2. namespace catchAdmin\worklocation\model;
  3. use catcher\base\CatchModel as Model;
  4. use catchAdmin\permissions\model\DataRangScopeTrait;
  5. use think\facade\Db;
  6. class Worklocation extends Model
  7. {
  8. use DataRangScopeTrait;
  9. // 表名
  10. public $name = 'worklocation';
  11. // 数据库字段映射
  12. public $field = array(
  13. 'id',
  14. // 风场编号
  15. 'wind_id',
  16. // 风机编号
  17. 'fan_id',
  18. // 工作位置
  19. 'work_local',
  20. // 所属部件
  21. 'parts',
  22. // 螺栓样式
  23. 'bolt_style',
  24. // 螺栓型号
  25. 'boit_type',
  26. // 编号
  27. 'number',
  28. // 备注说明
  29. 'info',
  30. // 创建人ID
  31. 'creator_id',
  32. // 创建时间
  33. 'created_at',
  34. // 更新时间
  35. 'updated_at',
  36. // 软删除
  37. 'deleted_at',
  38. // 扭矩
  39. 'torque',
  40. // 压力
  41. 'pressure',
  42. // 外径
  43. 'external_diameter',
  44. );
  45. public function getList()
  46. {
  47. return $this->dataRange()
  48. ->catchSearch()
  49. ->append(['department_name','wind_name','fan_number','work_local_name','parts_name','bolt_style_name','boit_type_name'])
  50. ->field('*')
  51. ->catchOrder()
  52. ->creator()
  53. ->paginate();
  54. }
  55. //获取部门名称
  56. public function getDepartmentNameAttr()
  57. {
  58. $dep_id = Db::name('wind')->where('id',$this->wind_id)->value('department_id');
  59. $name = Db::name('departments')->where('id',$dep_id)->where('status',1)->value('department_name');
  60. return $name;
  61. }
  62. /**
  63. * 获取风场名称
  64. *
  65. * @return void
  66. */
  67. public function getWindNameAttr()
  68. {
  69. $wind_id = $this->wind_id;
  70. $wind_name = Db::name('wind')->where('id',$wind_id)->value('name');
  71. return $wind_name;
  72. }
  73. /**
  74. * 获取风机机位号
  75. * @return void
  76. */
  77. public function getFanNumberAttr()
  78. {
  79. $fan_id = $this->fan_id;
  80. $fan_number = Db::name('fan')->where('id',$fan_id)->value('number');
  81. return $fan_number;
  82. }
  83. /**
  84. * 获取部件名称
  85. *
  86. * @return void
  87. */
  88. public function getPartsNameAttr()
  89. {
  90. $parts = $this->parts;
  91. $value = $this->get_dict_data(11,$parts);
  92. return $value;
  93. }
  94. //获取工作位置型号
  95. public function getWorkLocalNameAttr()
  96. {
  97. $code = $this->work_local;
  98. $value = $this->get_dict_data(12,$code);
  99. return $value;
  100. }
  101. /**
  102. * 获取螺栓样式
  103. *
  104. * @return void
  105. */
  106. public function getBoltStyleNameAttr()
  107. {
  108. $code = $this->bolt_style;
  109. $value = $this->get_dict_data(13,$code);
  110. return $value;
  111. }
  112. /**
  113. * 螺栓型号
  114. *
  115. * @return void
  116. */
  117. public function getBoitTypeNameAttr()
  118. {
  119. $code = $this->boit_type;
  120. $value = $this->get_dict_data(14,$code);
  121. return $value;
  122. }
  123. /**
  124. * 查询字典 获取value
  125. * @param [type] $type 类型
  126. * @param [type] $code 唯一code
  127. * @return void
  128. */
  129. public function get_dict_data($type,$code)
  130. {
  131. $where[]=['type_id',"=",$type];
  132. $where[] = ['code','=',$code];
  133. $value = Db::name('sys_dict_data')->where($where)->value('value');
  134. return $value;
  135. }
  136. public function test()
  137. {
  138. return null;
  139. }
  140. //搜索
  141. // public function searchNumberAttr($query, $value, $data)
  142. // {
  143. // return $query->where('number', 'like', '%'.$value.'%');
  144. // }
  145. }