You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

181 lines
7.0 KiB
Java

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.docus.bgts.controller;
import com.docus.bgts.config.MyScheduling;
import com.docus.bgts.entity.CommonResult;
import com.docus.bgts.facade.IAfCollectTaskService;
import com.docus.bgts.facade.IBgtsService;
import com.docus.bgts.facade.IMzSyncService;
import com.docus.bgts.service.CheckIntegrityService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@Api(value = "采集接口", tags = "采集接口")
@RestController
public class BgtsController {
private final Logger logger = LoggerFactory.getLogger(getClass());
@Autowired
CheckIntegrityService checkIntegrityService;
@Autowired
IBgtsService bgtsService;
@Autowired
IAfCollectTaskService afCollectTaskService;
@ApiOperation("完整性同步程序开关0关闭 1开启")
@GetMapping("/onOffSync")
public void onOffSync(@RequestParam(value = "flag",defaultValue = "0") String flag){
MyScheduling.syncFlag=flag;
}
@GetMapping("/addSyncIntegrality")
public void addSyncIntegrality(@RequestParam("startDate")String startDate,String endDate){
checkIntegrityService.addSyncIntegrality(startDate,endDate);
}
@GetMapping("/addSyncIntegralityByJzhs")
public CommonResult<String> addSyncIntegrality(@RequestParam("jzhs")String jzhs){
if(jzhs.split(",").length > 100){
return CommonResult.failed("jzh个数不能超过100个");
}
checkIntegrityService.addSyncIntegralityByJzhs(jzhs);
return CommonResult.success("完成");
}
@ApiOperation("采集接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "empId",value = "患者主索引号",required = true,dataTypeClass = String.class),
@ApiImplicitParam(name = "collectSubId",value = "af_interface_collect_sub表id",required = true)
})
@GetMapping("/collect")
public CommonResult<String> collect(@RequestParam("collectSubId") String collectSubId,
@RequestParam("empId") String empId) {
try {
logger.info("采集接口接收到参数:\nempId--"+empId+"\ncollectSubId--"+collectSubId);
bgtsService.collect(empId);
logger.info("采集完成");
afCollectTaskService.updateInterfaceCollect(collectSubId, 1);
logger.info("------------采集结束-----------");
} catch (RuntimeException e) {
e.printStackTrace();
try {
afCollectTaskService.updateInterfaceCollect(collectSubId, 0);
}catch (Exception e1) {
logger.info(e1.getMessage());
return CommonResult.failed(e1.getMessage());
}
return CommonResult.failed(e.getMessage());
}
catch (Exception e) {
e.printStackTrace();
}
return CommonResult.success("ok");
}
@ApiOperation("Pacs采集接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "empId",value = "患者主索引号",required = true,dataTypeClass = String.class),
@ApiImplicitParam(name = "collectSubId",value = "af_interface_collect_sub表id",required = true),
@ApiImplicitParam(name = "admissDate",value = "入院时间",required = true),
@ApiImplicitParam(name = "disDate",value = "出院时间",required = true),
@ApiImplicitParam(name = "times",value = "住院次数",required = true)
})
@GetMapping("/collectPacs")
public CommonResult<String> collect(@RequestParam("collectSubId") String collectSubId,
@RequestParam("empId") String empId,
@RequestParam("admissDate") String admissDate,
@RequestParam("disDate") String disDate,
@RequestParam("times") String times){
try {
logger.info("采集接口接收到参数:\nempId--"+empId+"\ncollectSubId--"+collectSubId);
bgtsService.collectPacs(empId,admissDate,disDate,times);
logger.info("采集完成");
afCollectTaskService.updateInterfaceCollect(collectSubId, 1);
logger.info("------------采集结束-----------");
} catch (RuntimeException e) {
e.printStackTrace();
try {
afCollectTaskService.updateInterfaceCollect(collectSubId, 0);
}catch (Exception e1) {
logger.info(e1.getMessage());
return CommonResult.failed(e1.getMessage());
}
return CommonResult.failed(e.getMessage());
}
catch (Exception e) {
e.printStackTrace();
}
return CommonResult.success("ok");
}
/**
* 按需采集
* @param emamNo
* @return
*/
@ApiOperation("按需采集接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "emamNo",value = "报告单号",required = true,dataTypeClass = String.class),
@ApiImplicitParam(name = "empId",value = "患者主索引号",required = true,dataTypeClass = String.class)
})
@GetMapping("/collectByExamNo")
public CommonResult<String> collectByExamNo(@RequestParam("emamNo") String emamNo,
@RequestParam("empId") String empId){
try {
logger.info("按需采集接口接受参数:\nempId--"+empId+"\nemamNo--"+emamNo);
bgtsService.collectByExamNo(emamNo,empId);
// afCollectTaskService.updateInterfaceCollect(collectSubId, 1);
}catch (RuntimeException e) {
e.printStackTrace();
return CommonResult.failed(e.getMessage());
}
catch (Exception e) {
e.printStackTrace();
}
return CommonResult.success("ok");
}
/**
* 按需采集
*/
@GetMapping("/collectByEx")
public CommonResult<String> collectByEx(@RequestParam("empId") String empId){
try{
bgtsService.collect(empId);
}catch (Exception e){
e.printStackTrace();
return CommonResult.failed(e.getMessage());
}
return CommonResult.success("ok");
}
@GetMapping("/xx")
public void collectxx(){
bgtsService.collectAll();
}
@GetMapping("/collectById")
public CommonResult<String> collectById(@RequestParam("inPatientId") String inPatientId,@RequestParam("vistId") String vistId){
try{
bgtsService.SmCollect(inPatientId,vistId);
}catch (Exception e){
e.printStackTrace();
return CommonResult.failed(e.getMessage());
}
return CommonResult.success("ok");
}
}