MineController.php 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. <?php
  2. namespace Modules\Mine\Http\Controllers;
  3. use Illuminate\Contracts\Support\Renderable;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Routing\Controller;
  6. use Illuminate\Support\Facades\Log;
  7. use Modules\Admin\Auxiliary\View\FromAuxiliary;
  8. use Modules\Admin\Auxiliary\View\TreeAuxiliary;
  9. use Modules\Admin\Http\Controllers\BaseController;
  10. use Modules\Mine\Entities\MineList;
  11. use Modules\Mine\Enum\MineEnum;
  12. use Modules\Mine\Services\MineServices;
  13. class MineController extends BaseController
  14. {
  15. /**
  16. * Display a listing of the resource.
  17. * @return Renderable
  18. */
  19. public function index()
  20. {
  21. return view('mine::index');
  22. }
  23. //矿区单位列表
  24. public function mineList(Request $request)
  25. {
  26. $this->menusActive[0] = 'adminMine';
  27. $this->menusActive[1] = 'adminMineList';
  28. $list = MineServices::getAdminMineList();
  29. $tableObj = new TreeAuxiliary('mine/list', $list);
  30. $tableObj->column('title', '矿区单位名称');
  31. $tableObj->column('sort', '排序');
  32. $tableObj->column('ip', 'ip');
  33. $tableObj->column('port', 'port');
  34. $tableObj->column('key', '请求key');
  35. $tableObj->column('secret', '请求secret');
  36. $tableObj->column('is_hak', '是否使用海康视频服务器');
  37. return $this->tree($tableObj);
  38. }
  39. //添加矿区单位
  40. public function mineAdd(Request $request)
  41. {
  42. $mineService = new MineServices();
  43. $mineService->initMineList();
  44. $titleList = $mineService->getTierList();
  45. $formObj = new FromAuxiliary('mine/list/add');
  46. $formObj->tree_select('parent_id', '父级矿区单位', $titleList);
  47. $formObj->input('title', '矿区单位名称');
  48. $formObj->input('sort', '排序', 1);
  49. $formObj->radio('is_hak', '是否使用海康视频服务器', [MineEnum::IS_HAK_NO => '否', MineEnum::IS_HAK_YES => '是'], 0);
  50. $formObj->input('ip', 'id地址');
  51. $formObj->input('port', '端口');
  52. $formObj->input('key', '请求key');
  53. $formObj->input('secret', '请求secret');
  54. // $formObj->radio('show', '是否显示', [1 => '是', 0 => '否'], 1);
  55. $formObj->title = '添加矿区单位';
  56. return $this->from($formObj);
  57. }
  58. //添加矿区单位操作
  59. public function mineAddPost(Request $request)
  60. {
  61. if (!$request->input('title')) {
  62. return $this->error(1, '请输入矿区单位名称');
  63. }
  64. $mineService = new MineServices();
  65. $mineService->initMineList();
  66. $result = $mineService->add($request->all());
  67. $mine_id = $result->id;
  68. if ($request->input('is_hak') == MineEnum::IS_HAK_YES) {
  69. if (!$request->input('ip') || !$request->input('port')
  70. || !$request->input('key') || !$request->input('secret')
  71. ) {
  72. return $this->error(1, '请输入连接视频服务器必传参数');
  73. }
  74. MineServices::insertMineListExt($mine_id, $request->all());
  75. }
  76. return $this->redirect('admin/mine/list');
  77. }
  78. //编辑矿区单位
  79. public function mineEdit(Request $request)
  80. {
  81. if (!$request->input('id')) {
  82. return $this->error(1, '缺少必要参数');
  83. }
  84. $mineService = new MineServices();
  85. $mineService->initMineList();
  86. $titleList = $mineService->getTierList();
  87. $titleOne = MineServices::getAdminMineOne($request->input('id'));
  88. $formObj = new FromAuxiliary('mine/list/edit', $titleOne);
  89. $formObj->tree_select('parent_id', '父级矿区单位', $titleList, $titleOne->parent_id);
  90. $formObj->input('title', '矿区单位名称');
  91. $formObj->input('sort', '排序', 10);
  92. $formObj->radio('is_hak', '是否使用海康视频服务器', [MineEnum::IS_HAK_NO => '否', MineEnum::IS_HAK_YES => '是'], 0);
  93. $formObj->input('ip', 'id地址');
  94. $formObj->input('port', '端口');
  95. $formObj->input('key', '请求key');
  96. $formObj->input('secret', '请求secret');
  97. $formObj->title = '修改矿区单位';
  98. return $this->from($formObj);
  99. }
  100. //编辑矿区单位操作
  101. public function mineEditPost(Request $request)
  102. {
  103. if (!$request->input('id')) {
  104. return $this->error(1, '缺少必要参数');
  105. }
  106. $mineService = new MineServices();
  107. $mineService->initMineList();
  108. if ($request->input('id') == $request->input('parent_id')) {
  109. return $this->error(1, '不能选择自己为父级标题');
  110. }
  111. $mineService->edit($request->all());
  112. if ($request->input('is_hak') == MineEnum::IS_HAK_YES) {
  113. if (!$request->input('ip') || !$request->input('port')
  114. || !$request->input('key') || !$request->input('secret')
  115. ) {
  116. return $this->error(1, '请输入连接视频服务器必传参数');
  117. }
  118. MineServices::editMineListExt($request->input('id'), $request->all());
  119. }
  120. return $this->redirect('admin/mine/list');
  121. }
  122. //删除矿区单位操作
  123. public function mineDelPost(Request $request)
  124. {
  125. if (!$request->has('id')) {
  126. return $this->error(1, '缺少必要参数');
  127. }
  128. $one_title = MineList::find($request->input('id'));
  129. if (!$one_title) {
  130. return $this->error(1, '需删除的数据不存在');
  131. }
  132. $mineService = new MineServices();
  133. $mineService->initMineList();
  134. $mineService->del($request->input('id'));
  135. return $this->success();
  136. }
  137. }