WebsiteController.php 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace App\Http\Admin;
  3. use Illuminate\Support\Facades\DB;
  4. use Txj\Elastic\Facades\Eav;
  5. use Txj\Elastic\Facades\ES;
  6. use Illuminate\Http\JsonResponse;
  7. use Illuminate\Http\Request;
  8. class WebsiteController extends AdminBaseController
  9. {
  10. protected string $table = 'dep_website';
  11. public function __construct()
  12. {
  13. parent::__construct();
  14. $this->setWebsite(__NAMESPACE__);
  15. $this->isLoginJson();
  16. }
  17. /**
  18. * @param Request $request
  19. * @return JsonResponse
  20. */
  21. public function showList(Request $request): JsonResponse
  22. {
  23. $currentPage = $request->post('page', 1);
  24. $size = $request->post('size', 20);
  25. $find = DB::table($this->table);
  26. $find->where(['is_delete' => 0])->orderBy('id', 'desc');
  27. $total = $find->count();
  28. $list = $find->offset(($currentPage - 1) * $size)->limit($size)->get();
  29. return responseMessage(1002, 'success', ['list' => $list, 'total' => $total]);
  30. }
  31. /**
  32. * @param Request $request
  33. * @return JsonResponse
  34. */
  35. public function info(Request $request)
  36. {
  37. $id = $request->post('id');
  38. if (empty($id)) {
  39. return responseMessage(2001, '参数错误!');
  40. }
  41. $info = ES::table($this->table)->find($id);
  42. if ($info) {
  43. return responseMessage(1002, '', $info);
  44. } else {
  45. return responseMessage(2001, '数据不存在,请重试!');
  46. }
  47. }
  48. /**
  49. * @param Request $request
  50. * @return JsonResponse
  51. */
  52. public function save(Request $request)
  53. {
  54. $data = $request->all();
  55. if ($id = $request->post('id')) {
  56. // 获取信息
  57. $info = ES::table($this->table)->find($id);
  58. if ($info) {
  59. $isSuccess = ES::table($this->table)->toRefresh()->updateEntityById($id, $data);
  60. } else {
  61. return responseMessage(2001, '数据不存在,请重试!');
  62. }
  63. } else {
  64. $isSuccess = ES::table($this->table)->toRefresh()->insert($data);
  65. }
  66. if ($isSuccess) {
  67. return responseMessage(1001, '操作成功!');
  68. } else {
  69. return responseMessage(2001, '操作失败!');
  70. }
  71. }
  72. }