package com.supervision.controller; import com.supervision.model.Disease; import com.supervision.pojo.vo.PrimaryConfirmReqVO; import com.supervision.pojo.vo.RecordForPrimaryChooseVO; import com.supervision.pojo.vo.SaveDiagnosisPrimaryReqVO; import com.supervision.service.AskPrimaryService; import com.supervision.vo.ask.DiagnosisPrimaryVO; import com.supervision.vo.ask.DiagnosticBasisForPrimaryResVO; import com.supervision.vo.ask.ModifyPrimaryDiseaseInfoReqVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import jakarta.validation.Valid; import jakarta.validation.constraints.NotBlank; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; @Api(tags = "初步诊断") @Validated @RestController @RequestMapping("askPrimary") @RequiredArgsConstructor public class AskPrimaryController { private final AskPrimaryService askPrimaryService; @ApiOperation("查询初步诊断列表") @GetMapping("queryAskPrimaryList") public List queryAskPrimaryList(@NotBlank(message = "流程ID不能为空") String processId) { return askPrimaryService.queryAskPrimaryList(processId); } @ApiOperation("获取初步诊断可选的下拉列表(只查单一疾病)") @GetMapping("queryPrimaryCanChooseList") public List queryPrimaryCanChooseList() { return askPrimaryService.queryPrimaryCanChooseList(); } @ApiOperation("获取单个初步诊断详细信息") @GetMapping("queryPrimaryDetailInfo") public DiagnosisPrimaryVO queryPrimaryDetailInfo(String primaryId) { return askPrimaryService.queryPrimaryDetailInfo(primaryId); } @ApiOperation("修改初步诊断病情依据") @PostMapping("modifyPrimaryDiseaseInfo") public void modifyPrimaryDiseaseInfo(@RequestBody @Validated ModifyPrimaryDiseaseInfoReqVO reqVO) { askPrimaryService.modifyPrimaryDiseaseInfo(reqVO); } @ApiOperation("新增初步诊断") @PostMapping("savePrimary") public void savePrimary(@RequestBody @Validated SaveDiagnosisPrimaryReqVO reqVO) { askPrimaryService.savePrimary(reqVO); } @ApiOperation("查询可选择初步诊断关联的问诊记录") @GetMapping("queryRecordForPrimaryChoose") public RecordForPrimaryChooseVO queryRecordForPrimaryChoose(@NotBlank(message = "流程ID不能为空") String processId) { return askPrimaryService.queryRecordForPrimaryChoose(processId); } @ApiOperation("删除初步诊断") @GetMapping("deletePrimary") public void deletePrimary(@NotBlank(message = "初步诊断ID不能为空") String id) { askPrimaryService.deletePrimary(id); } @ApiOperation("确认诊断页面,查询初步诊断关联的诊断项") @GetMapping("queryDiagnosticBasisListForPrimary") public List queryDiagnosticBasisListForPrimary(@ApiParam(value = "流程ID",required = true) @NotBlank(message = "流程ID不能为空") String processId, @ApiParam(value = "初步诊断ID,不填查所有",required = false) String primaryId) { return askPrimaryService.queryDiagnosticBasisListForPrimary(processId,primaryId); } @ApiOperation("确认诊断页面,保存初步诊断以及鉴别依据") @PostMapping("confirmPrimaryByAskEnd") public void confirmPrimaryByAskEnd(@RequestBody @Valid PrimaryConfirmReqVO reqVO) { askPrimaryService.confirmPrimaryByAskEnd(reqVO); } }