SurfaceServices.php 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: qiuzijian
  5. * Date: 2021-05-31
  6. * Time: 09:20
  7. */
  8. namespace Modules\Mine\Services;
  9. use App\Enum\ApiEnum;
  10. use Illuminate\Support\Arr;
  11. use Illuminate\Support\Facades\Cache;
  12. use Illuminate\Support\Facades\Input;
  13. use Illuminate\Support\Facades\Log;
  14. use Modules\Admin\Enum\AdminEnum;
  15. use Modules\Camera\Enum\CameraEnum;
  16. use Modules\Mine\Entities\WorkingSurface;
  17. use Modules\Mine\Entities\WorkingSurfaceCamera;
  18. class SurfaceServices{
  19. //获取工作面列表
  20. public static function getSurfaceList()
  21. {
  22. $query = WorkingSurface::join(
  23. 'mine_list', 'working_surface.mine_id', '=', 'mine_list.id'
  24. )->orderBy('working_surface.created_at', 'desc')->select(
  25. [
  26. 'working_surface.id',
  27. 'working_surface.surface_name',
  28. 'mine_list.title'
  29. ]
  30. )->get();
  31. return $query;
  32. }
  33. //查询工作面详情
  34. public static function getSrufaceDetail($surface_id)
  35. {
  36. $query = WorkingSurface::join(
  37. 'mine_list', 'working_surface.mine_id', '=', 'mine_list.id'
  38. )->where('working_surface.id', $surface_id)->select(
  39. [
  40. 'mine_list.title',
  41. 'working_surface.surface_name'
  42. ]
  43. )->first();
  44. return $query;
  45. }
  46. //添加工作面操作
  47. public static function addSurfaceList($params)
  48. {
  49. $result['status'] = true;
  50. $result['msg'] = AdminEnum::RETURN_SUCCESS;
  51. $res = WorkingSurface::insert(
  52. [
  53. 'mine_id' => $params['mine_id'],
  54. 'surface_name' => $params['surface_name'],
  55. 'created_at' => date('Y-m-d H:i:s', time()),
  56. 'updated_at' => date('Y-m-d H:i:s', time()),
  57. ]
  58. );
  59. if (!$res) {
  60. $result['status'] = false;
  61. $result['msg'] = AdminEnum::DATABASE_ERROR;
  62. }
  63. return $result;
  64. }
  65. //编辑工作面操作
  66. public static function editSurfaceList($params)
  67. {
  68. $result['status'] = true;
  69. $result['msg'] = AdminEnum::RETURN_SUCCESS;
  70. //判断数据是否存在
  71. $query = WorkingSurface::find($params['id']);
  72. if (!$query) {
  73. $result['status'] = false;
  74. $result['msg'] = AdminEnum::RECORD_NOT_EXIST;
  75. return $result;
  76. }
  77. $res = WorkingSurface::where('id', $params['id'])->update(
  78. [
  79. 'mine_id' => $params['mine_id'],
  80. 'surface_name' => $params['surface_name'],
  81. 'updated_at' => date('Y-m-d H:i:s', time()),
  82. ]
  83. );
  84. if (!$res) {
  85. $result['status'] = false;
  86. $result['msg'] = AdminEnum::DATABASE_ERROR;
  87. }
  88. return $result;
  89. }
  90. //删除工作面操作
  91. public static function delSurfaceList($params)
  92. {
  93. $result['status'] = true;
  94. $result['msg'] = AdminEnum::RETURN_SUCCESS;
  95. //判断数据是否存在
  96. $query = WorkingSurface::find($params['id']);
  97. if (!$query) {
  98. $result['status'] = false;
  99. $result['msg'] = AdminEnum::RECORD_NOT_EXIST;
  100. return $result;
  101. }
  102. $res = WorkingSurface::where('id', $params['id'])->delete();
  103. if (!$res) {
  104. $result['status'] = false;
  105. $result['msg'] = AdminEnum::DATABASE_ERROR;
  106. }
  107. return $result;
  108. }
  109. //更新摄像头与工作面关联
  110. public static function updateSrufaceCamera($params)
  111. {
  112. $query = WorkingSurfaceCamera::where('camera_id', $params['id'])->exists();
  113. if (!$query) {
  114. if ($params['surface_id']) {
  115. WorkingSurfaceCamera::insert(
  116. [
  117. 'surface_id' => $params['surface_id'],
  118. 'camera_id' => $params['id'],
  119. 'created_at' => date('Y-m-d H:i:s', time()),
  120. 'updated_at' => date('Y-m-d H:i:s', time()),
  121. ]
  122. );
  123. }
  124. } else {
  125. WorkingSurfaceCamera::where('camera_id', $params['id'])->update(
  126. [
  127. 'surface_id' => $params['surface_id'],
  128. 'updated_at' => date('Y-m-d H:i:s', time()),
  129. ]
  130. );
  131. }
  132. }
  133. }