EquipmentType.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?php
  2. /*
  3. * @Descripttion:
  4. * @version: 1.0.0
  5. * @Author: likang
  6. * @Date: 2022-06-17 15:45:05
  7. * @LastEditors: likang
  8. * @LastEditTime: 2022-06-29 15:45:03
  9. */
  10. namespace catchAdmin\equipment\controller;
  11. use catcher\base\CatchRequest as Request;
  12. use catcher\CatchResponse;
  13. use catcher\base\CatchController;
  14. use catchAdmin\equipment\model\EquipmentType as equipmentTypeModel;
  15. class EquipmentType extends CatchController
  16. {
  17. protected $equipmentTypeModel;
  18. public function __construct(EquipmentTypeModel $equipmentTypeModel)
  19. {
  20. $this->equipmentTypeModel = $equipmentTypeModel;
  21. }
  22. /**
  23. * 列表
  24. * @time 2022年06月17日 15:45
  25. * @param Request $request
  26. */
  27. public function index(Request $request): \think\Response
  28. {
  29. $pch = null;
  30. $pch = $this->equipmentTypeModel->where('pid', 0)->order('order asc')->select()->toArray();
  31. foreach ($pch as $key => $value) {
  32. $list = $this->equipmentTypeModel->where('pid', $value['id'])->order('order asc')->select()->toArray();
  33. foreach ($list as $k => $v) {
  34. $list[$k]['pid'] = intval($v['pid']);
  35. $list[$k]['status'] = strval($v['status']);
  36. }
  37. $pch[$key]['children'] = $list;
  38. $pch[$key]['pid'] = intval($value['pid']);
  39. $pch[$key]['status'] = strval($value['status']);
  40. }
  41. return CatchResponse::success($pch);
  42. }
  43. /**
  44. * 保存信息
  45. * @time 2022年06月17日 15:45
  46. * @param Request $request
  47. */
  48. public function save(Request $request): \think\Response
  49. {
  50. return CatchResponse::success($this->equipmentTypeModel->storeBy($request->post()));
  51. }
  52. /**
  53. * 读取
  54. * @time 2022年06月17日 15:45
  55. * @param $id
  56. */
  57. public function read($id): \think\Response
  58. {
  59. return CatchResponse::success($this->equipmentTypeModel->findBy($id));
  60. }
  61. /**
  62. * 更新
  63. * @time 2022年06月17日 15:45
  64. * @param Request $request
  65. * @param $id
  66. */
  67. public function update(Request $request, $id): \think\Response
  68. {
  69. return CatchResponse::success($this->equipmentTypeModel->updateBy($id, $request->post()));
  70. }
  71. /**
  72. * 删除
  73. * @time 2022年06月17日 15:45
  74. * @param $id
  75. */
  76. public function delete($id): \think\Response
  77. {
  78. if ($id <= 7) {
  79. return CatchResponse::fail('该类型不能删除');
  80. }
  81. return CatchResponse::success($this->equipmentTypeModel->deleteBy($id, true));
  82. }
  83. /**
  84. * @Descripttion: 获取父类设备种类
  85. * @name: likang
  86. * @return {*}
  87. */
  88. public function findParentEquipmentType()
  89. {
  90. $pch = $this->equipmentTypeModel->where('pid', 0)->order('order asc')->select();
  91. return CatchResponse::success($pch);
  92. }
  93. /** 根据pid 获取所有的种类
  94. * @Descripttion:
  95. * @name: likang
  96. * @return {*}
  97. */
  98. public function findAllBypid(Request $request)
  99. {
  100. $data = $request->get();
  101. $pid = $data['id'];
  102. $ls = $this->equipmentTypeModel->where('pid', $pid)->select();
  103. return CatchResponse::success($ls);
  104. }
  105. }