| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- package com.jyxt.getdatabyrestful.controller;
- import com.jyxt.getdatabyrestful.service.IBPSService;
- import com.jyxt.getdatabyrestful.service.impl.ConditionalOnEndpoint;
- import io.swagger.v3.oas.annotations.media.Schema;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
- import org.springframework.web.bind.annotation.*;
- import io.swagger.v3.oas.annotations.Operation;
- import io.swagger.v3.oas.annotations.Parameter;
- import io.swagger.v3.oas.annotations.tags.Tag;
- import java.util.List;
- import java.util.Map;
- @RestController
- @RequestMapping("/LISProcess") // 基础路径
- @Tag(name = "金源信通检验过程管理模块标准接口", description = "")
- @ConditionalOnProperty(
- name = "interface.LISProcess",
- havingValue = "1",
- matchIfMissing = false // 若配置不存在则禁用
- )
- public class IBPSLISController {
- @Autowired
- IBPSService ibpsService;
- // 示例:GET接口
- @GetMapping("/test")
- @Operation(summary = "示例接口", description = "这是一个示例GET接口,点击右侧'try it out'测试接口能否正常调用")
- @ConditionalOnEndpoint(property = "interface.test")
- public String hello(@Parameter(description = "用户名", required = true)
- @RequestParam String name) {
- return "Hello, " + name;
- }
- @PostMapping("/QCMonthReport")
- @Operation(summary = "室内质控月分析总结报告", description = "")
- @ConditionalOnEndpoint(property = "interface.QCMonthReport")
- public String saveMonthReport(@RequestBody
- @Schema(
- name = "室内质控月分析总结报告",
- description = "请求示例",
- example = "[{\"CreateUser\":\"创建人张三\",\"CreateTime\":\"2025-07-08 08:30:22\",\"DeviceCode\":\"贝克曼DXI800\"," +
- "\"DeviceModel\":\"DXI800\",\"ReportDate\":\"2025年6月\",\"QCTestCode\":[{\"TestCode\":\"ALB\",\"QCMFG\":\"伯乐\"," +
- "\"QCName\":\"9901\",\"LotNumber\":\"220901L\",\"LotStartTime\":\"09-02\",\"QCRule\":\"13s、22s\",\"QCLevel\":\"低\"," +
- "\"QCChartAvg\":\"55.00\",\"QCChartSD\":\"3.99\",\"QCChartCV\":\"7\",\"RawDataAvg\":\"54.57\",\"RawDataSD\":\"1\"," +
- "\"RawDataCV\":\"1\",\"RawDataNum\":\"2\",\"OutControlNum\":\"1\",\"ControlDataAvg\":\"1\",\"ControlDataSD\":\"1\"," +
- "\"ControlDataCV\":\"1\",\"AccumDataAvg\":\"1\",\"AccumDataSD\":\"1\",\"AccumDataCV\":\"1\",\"AccumDataNum\":\"1\"," +
- "\"AccumDataPer\":\"1\",\"CVRange\":\"1\",\"pass\":\"是\"},{\"TestCode\":\"ALB\",\"QCMFG\":\"伯乐\",\"QCName\":\"9902\"," +
- "\"LotNumber\":\"220901H\",\"LotStartTime\":\"09-02\",\"QCRule\":\"13s、22s\",\"QCLevel\":\"高\",\"QCChartAvg\":\"55.00\"," +
- "\"QCChartSD\":\"3.99\",\"QCChartCV\":\"7\",\"RawDataAvg\":\"54.57\",\"RawDataSD\":\"1\",\"RawDataCV\":\"1\"," +
- "\"RawDataNum\":\"2\",\"OutControlNum\":\"1\",\"ControlDataAvg\":\"1\",\"ControlDataSD\":\"1\",\"ControlDataCV\":\"1\"," +
- "\"AccumDataAvg\":\"1\",\"AccumDataSD\":\"1\",\"AccumDataCV\":\"1\",\"AccumDataNum\":\"1\",\"AccumDataPer\":\"1\"," +
- "\"CVRange\":\"1\",\"pass\":\"是\"}]}]"
- )
- List<Map<String, Object>> inputList) {
- String retValue = "fail";
- if (inputList == null || inputList.isEmpty()) {
- return "输入不能为空!";
- }
- // 处理业务逻辑(如保存到数据库)
- retValue = ibpsService.saveMonthReport(inputList);
- return retValue;
- }
- @PostMapping("/RerunSampleRecord")
- @Operation(summary = "复检样品记录", description = "")
- @ConditionalOnEndpoint(property = "interface.RerunSampleRecord")
- public String saveRerunSample(@RequestBody
- @Schema(
- name = "复检样品记录",
- description = "请求示例",
- example = "[{\"CreateUser\":\"编制人张三\",\"CreateTime\":\"2025-07-08 08:30:22\",\"SampleCode\":\"20250708001\"," +
- "\"PatName\":\"病人李四\",\"TestCode\":\"UA\",\"TestCodeName\":\"尿酸\",\"Unit\":\"g/ml\"," +
- "\"InitialResult\":\"1.5\",\"RerunResult\":\"2.8\",\"ReportResult\":\"2.8\",\"Auditer\":\"审核人王五\"," +
- "\"ReportTime\":\"15:02:02\",\"RerunMethod\":\"稀释复检\",\"RerunMethodNote\":\"稀释后复查\"}]"
- )
- List<Map<String, Object>> inputList) {
- String retValue = "fail";
- if (inputList == null || inputList.isEmpty()) {
- return "输入不能为空!";
- }
- retValue = ibpsService.saveRerunSample(inputList);
- return retValue;
- }
- @PostMapping("/IncorrectLISReport")
- @Operation(summary = "不正确检验报告登记", description = "")
- @ConditionalOnEndpoint(property = "interface.IncrrectLISReport")
- public String saveIncorrectLISReport(@RequestBody
- @Schema(
- name = "不正确检验报告登记",
- description = "请求示例",
- example = "[{\"CreateUser\":\"编制人张三\",\"RegistTime\":\"2025-07-15 09:25\",\"SampleCode\":\"20250715001\"," +
- "\"PatName\":\"病人李四\",\"TestCode\":\"GLU\",\"InitialAuditTime\":\"2025-07-11 09:00\"," +
- "\"ReAuditTime\":\"2025-07-11 09:10\",\"FinalAuditTime\":\"2025-07-11 09:20\",\"Reason\":\"标本溶血\"}]"
- )
- List<Map<String, Object>> inputList) {
- String retValue = "fail";
- if (inputList == null || inputList.isEmpty()) {
- return "输入不能为空!";
- }
- retValue = ibpsService.saveIncorrectLISReport(inputList);
- return retValue;
- }
- @PostMapping("/CriticalReport")
- @Operation(summary = "危急值漏报、上报超时登记", description = "")
- @ConditionalOnEndpoint(property = "interface.CriticalReport")
- public String saveCriticalReport(@RequestBody
- @Schema(
- name = "危急值漏报、上报超时登记",
- description = "请求示例",
- example = "[{\"CreateUser\":\"编制人张三\",\"ResponsibleUser\":\"责任人李四\",\"RegistDate\":\"2025-07-01\"," +
- "\"RegistTime\":\"10:30\",\"PatName\":\"患者王五\",\"SampleCode\":\"202507011111\",\"Advice\":\"电解质5项\"," +
- "\"Type\":\"上报超时\",\"Reason\":\"溶血导致钾离子假性升高\"}]"
- )
- List<Map<String, Object>> inputList) {
- String retValue = "fail";
- if (inputList == null || inputList.isEmpty()) {
- return "输入不能为空!";
- }
- retValue = ibpsService.saveCriticalReport(inputList);
- return retValue;
- }
- @PostMapping("/OvertimeReport")
- @Operation(summary = "急诊报告超时登记", description = "")
- @ConditionalOnEndpoint(property = "interface.OvertimeReport")
- public String saveOvertimeReport(@RequestBody
- @Schema(
- name = "急诊报告超时登记",
- description = "请求示例",
- example = "[{\"CreateUser\":\"编制人张三\",\"ResponsibleUser\":\"责任人李四\",\"RegistDate\":\"2025-07-01\"," +
- "\"RegistTime\":\"10:30\",\"PatName\":\"患者王五\",\"SampleCode\":\"202507011111\",\"Advice\":\"肝功能2项\"," +
- "\"TestCode\":\"AST ALB\",\"DelayMins\":\"30\",\"Reason\":\"仪器故障\",\"InfectMins\":\"30\"}]"
- )
- List<Map<String, Object>> inputList) {
- String retValue = "fail";
- if (inputList == null || inputList.isEmpty()) {
- return "输入不能为空!";
- }
- retValue = ibpsService.saveOvertimeReport(inputList);
- return retValue;
- }
- @PostMapping("/PostiveReport")
- @Operation(summary = "传染病报告登记", description = "")
- @ConditionalOnEndpoint(property = "interface.PostiveReport")
- public String savePostiveReport(@RequestBody
- @Schema(
- name = "传染病报告登记",
- description = "请求示例",
- example = "[{\"CreateUser\":\"编制人张三\",\"RegistTime\":\"2025-07-01 10:30\",\"PatDept\":\"感染科\"," +
- "\"Doctor\":\"开单医生李四\",\"PatName\":\"患者王五\",\"PatGender\":\"男\",\"PatAge\":\"35岁\"," +
- "\"ReportDate\":\"2025-07-01\",\"ReportDocDate\":\"2025-07-01 10:10\",\"ReportPHMDate\":\"2025-07-01 10:20\",\"ReportResult\":\"抗戊型肝炎抗体IgM:1.03 S/CO。\"}]"
- )
- List<Map<String, Object>> inputList) {
- String retValue = "fail";
- if (inputList == null || inputList.isEmpty()) {
- return "输入不能为空!";
- }
- retValue = ibpsService.savePostiveReport(inputList);
- return retValue;
- }
- }
|