package com.diagbot.web; import com.diagbot.annotation.CdssLog; import com.diagbot.annotation.SysLogger; import com.diagbot.dto.RespDTO; import com.diagbot.facade.DataPageDockFacade; import com.diagbot.facade.UserDockFacade; import com.diagbot.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; /** * @Description: 页面推送模式-对接API 控制器 * @Author:liuqq * @time: **/ @RestController @RequestMapping("/dataPage/docking") @Api(value = "页面推送模式-对接API", tags = { "页面推送模式-对接API" }) public class DataPageDockController { @Autowired private DataPageDockFacade dataPageDockFacade; @Autowired private UserDockFacade userDockFacade; @ApiOperation(value = "页面推送模式-推理API[QQ]", notes = "") @PostMapping("/getDataService") @SysLogger("getDataService") @CdssLog("页面推送") public RespDTO getDataService(@Valid @RequestBody DataPageDockVO dataPageDockVO) { return dataPageDockFacade.getDataService(dataPageDockVO); } @ApiOperation(value = "页面推送模式-静态知识API[QQ]", notes = "") @PostMapping("/getStaticKnowledge") @SysLogger("getStaticKnowledge") @CdssLog("静态知识") public RespDTO getStaticKnowledge(@Valid @RequestBody HisStaticKnowledgeVO hisStaticKnowledgeVO){ return dataPageDockFacade.getStaticKnowledge(hisStaticKnowledgeVO); } @ApiOperation(value = "数据引擎模式-对接API[QQ]", notes = "") @PostMapping("/getDataEngine") @SysLogger("getDataEngine") public RespDTO getDataEngine(@Valid @RequestBody DataEngineVO dataEngineVO) { //类型(多选必填),1:症状,4:查体结果,5:检验,6:检查,7:诊断,8:药品,9:手术,10:一般治疗 if("medical_record".equals(dataEngineVO.getPlanCode())){ //病历推送 dataEngineVO.setFeatureType("1,4,5,6,7,8,9,10"); return RespDTO.onSuc(dataPageDockFacade.getEnginePush(dataEngineVO)); }else if("medical_advice".equals(dataEngineVO.getPlanCode())){ //医嘱推送 dataEngineVO.setFeatureType("5,6,8,10"); return RespDTO.onSuc(dataPageDockFacade.getEnginePush(dataEngineVO)); }else if("order_rational".equals(dataEngineVO.getPlanCode()) || "reference_pacs".equals(dataEngineVO.getPlanCode()) || "reference_lis".equals(dataEngineVO.getPlanCode())){ //规则类型(1:危急值提醒,2:开单合理项,3:高危药品、手术,4:其他提醒) //开单合理性 dataEngineVO.setRuleType("1,2,3,4"); //dataEngineVO.setRuleType("2"); return RespDTO.onSuc(dataPageDockFacade.getEngineIndicationPush(dataEngineVO)); }else if("operation_plan".equals(dataEngineVO.getPlanCode())){ //手术随访计划 return RespDTO.onSuc(dataPageDockFacade.getOperationPlanPush(dataEngineVO)); } return RespDTO.onSuc(dataPageDockFacade.getEnginePush(dataEngineVO)); } @ApiOperation(value = "添加用户-用户维护API[QQ]", notes = "") @PostMapping("/addUserAndRole") @SysLogger("addUserAndRole") public RespDTO addUserAndRole(@Valid @RequestBody UserInfoVO userInfoVO){ return RespDTO.onSuc(userDockFacade.addUser(userInfoVO)); } }