package com.diagbot.web;
import com.diagbot.annotation.SysLogger;
import com.diagbot.facade.ConsoleExportFacade;
import com.diagbot.vo.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
/**
* @Description:
* @Author:zhaops
* @time: 2020/4/13 16:45
*/
@RequestMapping("/console/export")
@RestController
@Api(value = "数据报表明细导出相关API", tags = { "数据报表明细导出相关API" })
@SuppressWarnings("unchecked")
public class ConsoleExportController {
@Autowired
private ConsoleExportFacade consoleExportFacade;
/**
* 病案首页合格率占比导出
*
* @param filterOrderVO
* @return
*/
@ApiOperation(value = "病案首页合格率占比导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"level: 病历等级
" +
"name: 科室名称
" +
"asc: 排序(升序)
" +
"desc: 排序(降序)
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/homePageLevelExport")
@SysLogger("homePageLevelExport")
public void homePageLevelExport(HttpServletResponse response, @RequestBody @Valid FilterOrderVO filterOrderVO) {
consoleExportFacade.homePageLevelExport(response, filterOrderVO);
}
/**
* 条目缺陷占比(内页)
*
* @param filterPageVO
* @return
*/
@ApiOperation(value = "条目缺陷占比导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/entryGroupByEntryExport")
@SysLogger("entryGroupByEntryExport")
public void entryGroupByEntryExport(HttpServletResponse response, @RequestBody @Valid FilterPageVO filterPageVO) {
consoleExportFacade.entryGroupByEntryExport(response, filterPageVO);
}
/**
* 病历稽查统计(首页)
* @param filterVO
* @return
*/
@ApiOperation(value = "病历稽查导出[by:cy]",
notes = "name: 科室名称
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/medicalCheckExport")
@SysLogger("medicalCheckExport")
public void medicalCheckExport(HttpServletResponse response, @RequestBody @Valid FilterMedicalCheckVO filterVO) {
consoleExportFacade.medicalCheckExport(response, filterVO);
}
/**
* 各科室缺陷占比(组合)
*
* @param filterOrderVO
* @return
*/
@ApiOperation(value = "各科室缺陷占比(组合)导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"level: 病历等级
" +
"name: 科室名称
" +
"asc: 排序(升序)
" +
"desc: 排序(降序)
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/levelExport")
@SysLogger("levelExport")
public void levelExport(HttpServletResponse response, @RequestBody @Valid FilterOrderVO filterOrderVO) {
consoleExportFacade.levelExport(response, filterOrderVO);
}
/**
* 各科室缺陷占比(组合)
*
* @param filterOrderVO
* @return
*/
@ApiOperation(value = "各科室缺陷占比(组合)导出-台州[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"level: 病历等级
" +
"name: 科室名称
" +
"asc: 排序(升序)
" +
"desc: 排序(降序)
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/levelExport_TZ")
@SysLogger("levelExport_TZ")
public void levelExport_TZ(HttpServletResponse response, @RequestBody @Valid FilterOrderVO filterOrderVO) {
consoleExportFacade.levelExport_TZ(response, filterOrderVO);
}
/**
* 按科室统计平均住院天数导出
*
* @param filterPageByAverageVO
* @return
*/
@ApiOperation(value = "按科室统计平均住院天数导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年
" +
"dateType: 时间类型 1-本月/本年,2-上月/去年,3-去年本月/去年
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/getAverageDayNumExport")
@SysLogger("getAverageDayNumExport")
public void getAverageDayNumExport(HttpServletResponse response, @RequestBody FilterPageByAverageVO filterPageByAverageVO) {
consoleExportFacade.getAverageDayNumExport(response, filterPageByAverageVO);
}
/**
* 按科室统计平均住院费用导出
*
* @param filterPageByAverageVO
* @return
*/
@ApiOperation(value = "按科室统计平均住院费用导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年
" +
"dateType: 时间类型 1-本月/本年,2-上月/去年,3-去年本月/去年
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/getAverageFeeExport")
@SysLogger("getAverageFeeExport")
public void getAverageFeeExport(HttpServletResponse response, @RequestBody FilterPageByAverageVO filterPageByAverageVO) {
consoleExportFacade.getAverageFeeExport(response, filterPageByAverageVO);
}
/**
* 各科室甲级病历占比排行导出
*
* @param filterPageVO
* @return
*/
@ApiOperation(value = "各科室甲级病历占比排行导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/levelPercentGroupByDeptExport")
@SysLogger("levelPercentGroupByDeptExport")
public void levelPercentGroupByDeptExport(HttpServletResponse response, @RequestBody @Valid FilterPageVO filterPageVO) {
consoleExportFacade.levelPercentGroupByDeptExport(response, filterPageVO);
}
/**
* 条目缺陷占比导出
*
* @param filterPageVO
* @return
*/
@ApiOperation(value = "缺陷详情导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"deptName: 科室名称
" +
"casesId: 模块id:243=病案首页
" +
"casesName: 模块名称
" +
"isReject: 单项否决 1-否决,0-非
" +
"ruleType: 规则类型 0:无,1:空项,2:错误
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/entryCountGroupByEntryExport")
@SysLogger("entryCountGroupByEntryExport")
public void entryCountGroupByEntryExport(HttpServletResponse response, @RequestBody @Valid FilterPageVO filterPageVO) {
consoleExportFacade.entryCountGroupByEntryExport(response, filterPageVO);
}
/**
* 各模块缺陷占比导出
*
* @param filterPageVO
* @return
*/
@ApiOperation(value = "各模块缺陷占比导出[by:gaodm]",
notes = "type: 统计维度 1-本月,2-本年(必填)
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/entryCountGroupByCaseExport")
@SysLogger("entryCountGroupByCaseExport")
public void entryCountGroupByCaseExport(HttpServletResponse response, @RequestBody @Valid FilterPageVO filterPageVO) {
consoleExportFacade.entryCountGroupByCaseExport(response, filterPageVO);
}
/**
* 关键条目缺陷占比统计导出
*
* @param entryStatisticsVO
* @return
*/
@ApiOperation(value = "关键条目缺陷占比统计导出[by:gaodm]",
notes = "deptName:科室名称
" +
"asc: 排序(升序)
" +
"desc:排序(降序)
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/entryStatisticsExport")
@SysLogger("entryStatisticsExport")
public void entryStatisticsExport(HttpServletResponse response, @RequestBody @Valid EntryStatisticsVO entryStatisticsVO) {
consoleExportFacade.entryStatisticsExport(response, entryStatisticsVO);
}
/**
* 缺陷详情质控评分页导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "缺陷详情质控评分页导出[by:zhaops]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"casesEntryName: 条目名称
" +
"casesEntryId: 条目id
" +
"casesName: 模块名称
" +
"casesId: 模块id
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"beHosGT31Days: 住院超过31日标志
" +
"isReject: 单项否决 1-否决,0-非
" +
"ruleType: 规则类型 0:无,1:空项,2:错误
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/qcResultShortPageExport")
@SysLogger("qcResultShortPageExport")
public void qcResultShortPageExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.qcResultShortPageExport(response, qcResultShortPageVO);
}
/**
* 出院人数统计导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "出院人数统计导出[by:zhaops]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"leaveHosType: 离院人员类型(0/null:总人数,1:死亡人数,2:新生儿,3:手术病人数,4:非医嘱离院病人,5:31日再入院病人)
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/leaveHosMrPageExport")
@SysLogger("leaveHosMrPageExport")
public void leaveHosMrPageExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.leaveHosMrPageExport(response, qcResultShortPageVO);
}
/**
* 质控核查统计导出
*
* @param filterOrderVO
* @return
*/
@ApiOperation(value = "质控核查统计导出[by:zhaops]",
notes = "name: 科室名称
" +
"asc: 排序(升序)
" +
"desc:排序(降序)
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/qcCheckStatisticsExport")
@SysLogger("qcCheckStatisticsExport")
public void qcCheckStatisticsExport(HttpServletResponse response, @RequestBody @Valid FilterOrderVO filterOrderVO) {
consoleExportFacade.qcCheckStatisticsExport(response, filterOrderVO);
}
/**
* 未整改病历详情页导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "未整改病历详情页导出[by:zhaops]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/unModifyMRPageExport")
@SysLogger("unModifyMRPageExport")
public void unModifyMRPageExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.unModifyMRPageExport(response, qcResultShortPageVO);
}
/**
* 病案首页不合格/合格数病历详情页导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "病案首页不合格/合格数病历详情页导出[by:cy]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/badLevelPagePageExport")
@SysLogger("badLevelPagePageExport")
public void badLevelPagePageExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.badLevelPagePageExport(response, qcResultShortPageVO);
}
/**
* 稽查病历详情页导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "稽查病历详情页导出[by:cy]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/medicalCheckInnerExport")
@SysLogger("medicalCheckInnerExport")
public void medicalCheckInnerExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.unModifyMRPageExport(response, qcResultShortPageVO);
}
/**
* 未整改病历统计导出
*
* @param filterUnModifyMRVO
* @return
*/
@ApiOperation(value = "未整改病历统计导出[by:zhaops]",
notes = "name: 科室名称
" +
"asc: 排序(升序)
" +
"desc:排序(降序)
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/unModifyMRStatisticsExport")
@SysLogger("unModifyMRStatisticsExport")
public void unModifyMRStatisticsExport(HttpServletResponse response, @RequestBody @Valid FilterUnModifyMRVO filterUnModifyMRVO) {
consoleExportFacade.unModifyMRStatisticsExport(response, filterUnModifyMRVO);
}
/**
* 未整改病历统计导出
* 31天再入院统计导出
*
* @param reBeHosPageVO
* @return
*/
@ApiOperation(value = "31天再入院统计导出[by:zhaops]",
notes = "name: 病人姓名
" +
"fileCode: 病案号
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/reHos31DaysPageExport")
@SysLogger("reHos31DaysPageExport")
public void reHos31DaysPageExport(HttpServletResponse response, @RequestBody @Valid ReBeHosPageVO reBeHosPageVO) {
consoleExportFacade.reHos31DaysPageExport(response, reBeHosPageVO);
}
/**
* 病案首页改善率质控评分页导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "病案首页改善率质控评分页导出[by:zhaops]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"improveType: 改善标志(1:病案首页改善病历,2:病案首页改善至合格病历,3:病案首页改善至满分病历)
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/hmImproveMRPageExport")
@SysLogger("hmImproveMRPageExport")
public void hmImproveMRPageExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.hmImproveMRPageExport(response, qcResultShortPageVO);
}
/**
* 质控核查质控评分页导出
*
* @param qcResultShortPageVO
* @return
*/
@ApiOperation(value = "质控核查质控评分页导出[by:zhaops]",
notes = "behospitalCode: 病历号
" +
"patName: 病人姓名
" +
"behDeptName:科室名称
" +
"doctorId:医生工号
" +
"doctorName:医生姓名
" +
"level: 病历等级
" +
"checkStatus: 核查状态(1:已核查,0:未核查)
" +
"mrStatus: 首页核查状态(1:已核查,0:未核查)
" +
"chName: 病历核查人员
" +
"mrName: 首页核查人员
" +
"chTimeStart: 病历核查起始时间
" +
"chTimeEnd: 病历核查截止时间
" +
"mrTimeStart: 首页核查起始时间
" +
"mrTimeEnd: 首页核查截止时间
" +
"startDate: 起始时间
" +
"endDate: 截止时间
" +
"isPlacefile: 是否归档(0:未归档,1:已归档)
")
@PostMapping("/qcCheckMRPageExport")
@SysLogger("qcCheckMRPageExport")
public void qcCheckMRPageExport(HttpServletResponse response, @RequestBody @Valid QcResultShortPageVO qcResultShortPageVO) {
consoleExportFacade.qcCheckMRPageExport(response, qcResultShortPageVO);
}
}