MedicalInsuranceController.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package com.yihu.quota.controller;
  2. import com.yihu.ehr.constants.ApiVersion;
  3. import com.yihu.ehr.util.rest.Envelop;
  4. import com.yihu.quota.constants.ServiceApi;
  5. import com.yihu.quota.service.medicalInsurance.MedicalInsuranceService;
  6. import io.swagger.annotations.Api;
  7. import io.swagger.annotations.ApiOperation;
  8. import io.swagger.annotations.ApiParam;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import org.springframework.web.bind.annotation.RequestMethod;
  12. import org.springframework.web.bind.annotation.RequestParam;
  13. import org.springframework.web.bind.annotation.RestController;
  14. /**
  15. * @Author: zhengwei
  16. * @Date: 2018/9/18 09:30
  17. * @Description:
  18. */
  19. @RestController
  20. @RequestMapping(ApiVersion.Version1_0)
  21. @Api(description = "医保相关数据信息接口")
  22. public class MedicalInsuranceController extends BaseController {
  23. @Autowired
  24. private MedicalInsuranceService medicalInsuranceService;
  25. @RequestMapping(value = ServiceApi.TJ.GetOftenIllList, method = RequestMethod.GET)
  26. @ApiOperation(value = "频繁就医")
  27. public Envelop oftenIll(
  28. @ApiParam(name = "time", value = "过滤时间",required = true)
  29. @RequestParam(value = "time") String time,
  30. @ApiParam(name = "size", value = "分页大小", defaultValue = "15")
  31. @RequestParam(value = "size", required = false) int size,
  32. @ApiParam(name = "page", value = "页码", defaultValue = "1")
  33. @RequestParam(value = "page", required = false) int page) throws Exception{
  34. Envelop envelop = medicalInsuranceService.oftenIll(time, size, page);
  35. return envelop;
  36. }
  37. @RequestMapping(value = ServiceApi.TJ.GetHighCostList, method = RequestMethod.GET)
  38. @ApiOperation(value = "超高费用")
  39. public Envelop highCost(
  40. @ApiParam(name = "month", value = "月份", required = true)
  41. @RequestParam(value = "month" , required = true) String month,
  42. @ApiParam(name = "eventType", value = "就诊类型")
  43. @RequestParam(value = "eventType", required = true) String eventType,
  44. @ApiParam(name = "hosLevel", value = "医院等级")
  45. @RequestParam(value = "hosLevel", required = false) String hosLevel,
  46. @ApiParam(name = "hosHierarchy", value = "医院等次")
  47. @RequestParam(value = "hosHierarchy", required = false) String hosHierarchy,
  48. @ApiParam(name = "size", value = "分页大小", defaultValue = "15")
  49. @RequestParam(value = "size", required = false) int size,
  50. @ApiParam(name = "page", value = "页码", defaultValue = "1")
  51. @RequestParam(value = "page", required = false) int page) throws Exception{
  52. Envelop envelop = medicalInsuranceService.highCost(month,eventType,hosLevel,hosHierarchy,size,page);
  53. return envelop;
  54. }
  55. @RequestMapping(value = ServiceApi.TJ.GetRepeateInspectList, method = RequestMethod.GET)
  56. @ApiOperation(value = "重复检查")
  57. public Envelop repeateInspect(
  58. @ApiParam(name = "month", value = "月份", required = true)
  59. @RequestParam(value = "month" , required = true) String month,
  60. @ApiParam(name = "inspect", value = "检查类型", required = false)
  61. @RequestParam(value = "inspect" , required = false) String inspect,
  62. @ApiParam(name = "size", value = "分页大小", defaultValue = "15")
  63. @RequestParam(value = "size", required = false) int size,
  64. @ApiParam(name = "page", value = "页码", defaultValue = "1")
  65. @RequestParam(value = "page", required = false) int page) throws Exception{
  66. Envelop envelop = medicalInsuranceService.repeateInspect(month, inspect, size, page);
  67. return envelop;
  68. }
  69. @RequestMapping(value = ServiceApi.TJ.DrugAnalysis, method = RequestMethod.GET)
  70. @ApiOperation(value = "用药分析")
  71. public Envelop drugAnalysis(
  72. @ApiParam(name = "start", value = "开始时间", required = true)
  73. @RequestParam(value = "start" , required = true) String start,
  74. @ApiParam(name = "end", value = "结束时间", required = true)
  75. @RequestParam(value = "end" , required = true) String end,
  76. @ApiParam(name = "drugName", value = "药品名称")
  77. @RequestParam(value = "drugName", required = false) String drugName,
  78. @ApiParam(name = "eventType", value = "就诊类型")
  79. @RequestParam(value = "eventType", required = false) String eventType,
  80. @ApiParam(name = "size", value = "分页大小", defaultValue = "15")
  81. @RequestParam(value = "size", required = false) int size,
  82. @ApiParam(name = "page", value = "页码", defaultValue = "1")
  83. @RequestParam(value = "page", required = false) int page) throws Exception{
  84. Envelop envelop = medicalInsuranceService.drugAnalysis(start, end, eventType, drugName, size, page);
  85. return envelop;
  86. }
  87. }