DrugReportInfoController.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Http\Requests\ListRequest;
  4. use App\Http\Resources\DrugReportInfoListResource;
  5. use App\Services\DrugReportInfoService;
  6. use Illuminate\Http\JsonResponse;
  7. use Illuminate\Support\Facades\Log;
  8. class DrugReportInfoController extends Controller
  9. {
  10. /**
  11. * 查询医药报告信息
  12. * @param ListRequest $request
  13. * @param DrugReportInfoService $service
  14. * @return JsonResponse
  15. */
  16. public function index(ListRequest $request, DrugReportInfoService $service)
  17. {
  18. try {
  19. Log::channel('api')->info('/api/drug-report-info', [
  20. 'ip' => $request->ip(),
  21. 'user_agent' => $request->userAgent(),
  22. 'data' => $request->all()
  23. ]);
  24. $filters = $request->getFilters();
  25. $search = $request->getSearch();
  26. $sort = $request->getSort();
  27. $perPage = $request->getPerPage();
  28. $list = $service->getList($filters, $search, $sort, $perPage);
  29. return $this->success(new DrugReportInfoListResource($list));
  30. } catch (\Exception $e) {
  31. Log::channel('api')->error('/api/drug-report-info', [
  32. 'error' => $e->getMessage(),
  33. 'trace' => $e->getTraceAsString()
  34. ]);
  35. return $this->error($e->getCode(), $e->getMessage());
  36. }
  37. }
  38. /**
  39. * 查询医药报告选项
  40. * @param ListRequest $request
  41. * @param DrugReportInfoService $service
  42. * @return JsonResponse
  43. */
  44. public function option(ListRequest $request, DrugReportInfoService $service)
  45. {
  46. try {
  47. Log::channel('api')->info('/api/drug-report-info/option', [
  48. 'ip' => $request->ip(),
  49. 'user_agent' => $request->userAgent(),
  50. 'data' => $request->all()
  51. ]);
  52. $data = [
  53. 'produce_ent' => $service->getProduceEntIdOption(),
  54. 'from_ref_ent' => $service->getFromRefEntIdOption(),
  55. ];
  56. return $this->success($data);
  57. } catch (\Exception $e) {
  58. Log::channel('api')->error('/api/drug-report-info/option', [
  59. 'error' => $e->getMessage(),
  60. 'trace' => $e->getTraceAsString()
  61. ]);
  62. return $this->error($e->getCode(), $e->getMessage());
  63. }
  64. }
  65. }