package com.yihu.quota.controller; import com.yihu.ehr.constants.ApiVersion; import com.yihu.ehr.util.rest.Envelop; import com.yihu.quota.constants.ServiceApi; import com.yihu.quota.service.medicalInsurance.MedicalInsuranceService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; /** * @Author: zhengwei * @Date: 2018/9/18 09:30 * @Description: */ @RestController @RequestMapping(ApiVersion.Version1_0) @Api(description = "医保相关数据信息接口") public class MedicalInsuranceController extends BaseController { @Autowired private MedicalInsuranceService medicalInsuranceService; @RequestMapping(value = ServiceApi.TJ.GetOftenIllList, method = RequestMethod.GET) @ApiOperation(value = "频繁就医") public Envelop oftenIll( @ApiParam(name = "time", value = "过滤时间",required = true) @RequestParam(value = "time") String time, @ApiParam(name = "size", value = "分页大小", defaultValue = "15") @RequestParam(value = "size", required = false) int size, @ApiParam(name = "page", value = "页码", defaultValue = "1") @RequestParam(value = "page", required = false) int page) throws Exception{ Envelop envelop = medicalInsuranceService.oftenIll(time, size, page); return envelop; } @RequestMapping(value = ServiceApi.TJ.GetHighCostList, method = RequestMethod.GET) @ApiOperation(value = "超高费用") public Envelop highCost( @ApiParam(name = "month", value = "月份", required = true) @RequestParam(value = "month" , required = true) String month, @ApiParam(name = "eventType", value = "就诊类型") @RequestParam(value = "eventType", required = true) String eventType, @ApiParam(name = "hosLevel", value = "医院等级") @RequestParam(value = "hosLevel", required = false) String hosLevel, @ApiParam(name = "hosHierarchy", value = "医院等次") @RequestParam(value = "hosHierarchy", required = false) String hosHierarchy, @ApiParam(name = "size", value = "分页大小", defaultValue = "15") @RequestParam(value = "size", required = false) int size, @ApiParam(name = "page", value = "页码", defaultValue = "1") @RequestParam(value = "page", required = false) int page) throws Exception{ Envelop envelop = medicalInsuranceService.highCost(month,eventType,hosLevel,hosHierarchy,size,page); return envelop; } @RequestMapping(value = ServiceApi.TJ.GetRepeateInspectList, method = RequestMethod.GET) @ApiOperation(value = "重复检查") public Envelop repeateInspect( @ApiParam(name = "month", value = "月份", required = true) @RequestParam(value = "month" , required = true) String month, @ApiParam(name = "inspect", value = "检查类型", required = false) @RequestParam(value = "inspect" , required = false) String inspect, @ApiParam(name = "size", value = "分页大小", defaultValue = "15") @RequestParam(value = "size", required = false) int size, @ApiParam(name = "page", value = "页码", defaultValue = "1") @RequestParam(value = "page", required = false) int page) throws Exception{ Envelop envelop = medicalInsuranceService.repeateInspect(month, inspect, size, page); return envelop; } @RequestMapping(value = ServiceApi.TJ.DrugAnalysis, method = RequestMethod.GET) @ApiOperation(value = "用药分析") public Envelop drugAnalysis( @ApiParam(name = "start", value = "开始时间", required = true) @RequestParam(value = "start" , required = true) String start, @ApiParam(name = "end", value = "结束时间", required = true) @RequestParam(value = "end" , required = true) String end, @ApiParam(name = "drugName", value = "药品名称") @RequestParam(value = "drugName", required = false) String drugName, @ApiParam(name = "eventType", value = "就诊类型") @RequestParam(value = "eventType", required = false) String eventType, @ApiParam(name = "size", value = "分页大小", defaultValue = "15") @RequestParam(value = "size", required = false) int size, @ApiParam(name = "page", value = "页码", defaultValue = "1") @RequestParam(value = "page", required = false) int page) throws Exception{ Envelop envelop = medicalInsuranceService.drugAnalysis(start, end, eventType, drugName, size, page); return envelop; } }