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 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 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"); } /** * 按需采集 * @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 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 collectByEx(@RequestParam("empId") String empId){ try{ bgtsService.collect(empId); }catch (Exception e){ e.printStackTrace(); return CommonResult.failed(e.getMessage()); } return CommonResult.success("ok"); } }