|  |  | 
 |  |  | import com.ruoyi.common.enums.BusinessType; | 
 |  |  | import com.ruoyi.common.utils.PageUtils; | 
 |  |  | import com.ruoyi.common.utils.poi.ExcelUtil; | 
 |  |  | import com.smartor.domain.PatMedInhosp; | 
 |  |  | import com.smartor.domain.PatMedOuthosp; | 
 |  |  | import com.smartor.domain.PatMedReq; | 
 |  |  | import com.smartor.domain.PatMedRes; | 
 |  |  | import com.smartor.domain.*; | 
 |  |  | import com.smartor.service.IHNGatherPatArchiveService; | 
 |  |  | import com.smartor.service.IPatMedOuthospService; | 
 |  |  | import com.smartor.service.impl.HNGatherPatArchiveServiceImpl; | 
 |  |  | 
 |  |  | @RestController | 
 |  |  | @RequestMapping("/smartor/hngather") | 
 |  |  | @Api(description = "河南采集患者信息接口") | 
 |  |  |  | 
 |  |  | public class HNGatherPatArchiveController extends BaseController { | 
 |  |  |     @Autowired | 
 |  |  |     private IHNGatherPatArchiveService ihnGatherPatArchiveService; | 
 |  |  | 
 |  |  |     /** | 
 |  |  |      * 河南数据采集 | 
 |  |  |      */ | 
 |  |  |     //@PreAuthorize("@ss.hasPermi('smartor:patouthosp:list')") | 
 |  |  |     @PostMapping("/selectGatherList") | 
 |  |  |     @PostMapping("/hnDataGather") | 
 |  |  |     @ApiOperation("河南数据采集") | 
 |  |  |     public Integer selectUserList(@RequestBody PatMedInhosp patMedInhosp) { | 
 |  |  | //        Integer sd = ihnGatherPatArchiveService.selectDeptList(null); | 
 |  |  | //        Integer su = ihnGatherPatArchiveService.selectUserList(null); | 
 |  |  | //        Integer icd = ihnGatherPatArchiveService.selectIcd10List(null); | 
 |  |  |     public AjaxResult hnDataGather(@RequestBody HnDataGatherVO hnDataGatherVO) { | 
 |  |  |         log.info("开始按天同步用户数据,时间范围: {} 到 {}", hnDataGatherVO.getStartTime(), hnDataGatherVO.getEndTime()); | 
 |  |  |         Boolean aBoolean = ihnGatherPatArchiveService.hnDataGather(hnDataGatherVO); | 
 |  |  |         return AjaxResult.success(aBoolean); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |         log.info("开始按天同步用户数据,时间范围: {} 到 {}", patMedInhosp.getStartOutHospTime(), patMedInhosp.getEndOutHospTime()); | 
 |  |  |     /** | 
 |  |  |      * 查询疾病列表数据采集 | 
 |  |  |      */ | 
 |  |  |     @PostMapping("/selectIcd10List") | 
 |  |  |     @ApiOperation("查询疾病列表数据采集") | 
 |  |  |     public AjaxResult selectIcd10List(@RequestBody Icd10 icd10) { | 
 |  |  |         Integer integer = ihnGatherPatArchiveService.selectIcd10List(icd10); | 
 |  |  |         return AjaxResult.success(integer); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |         LocalDate startDate = patMedInhosp.getStartOutHospTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); | 
 |  |  |         LocalDate endDate = patMedInhosp.getEndOutHospTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); | 
 |  |  |     /** | 
 |  |  |      * 用户信息集合信息数据采集 | 
 |  |  |      */ | 
 |  |  |     @PostMapping("/selectUserList") | 
 |  |  |     @ApiOperation("用户信息集合信息数据采集") | 
 |  |  |     public AjaxResult selectUserList(@RequestBody SysUser sysUser) { | 
 |  |  |         Integer integer = ihnGatherPatArchiveService.selectUserList(sysUser); | 
 |  |  |         return AjaxResult.success(integer); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |         Integer po = null; | 
 |  |  |         // 循环处理每一天 | 
 |  |  |         for (LocalDate currentDate = startDate; !currentDate.isAfter(endDate); currentDate = currentDate.plusDays(1)) { | 
 |  |  |             PatMedInhosp dailyCondition = new PatMedInhosp(); | 
 |  |  |             LocalDateTime dayStart = currentDate.atStartOfDay(); | 
 |  |  |             LocalDateTime dayEnd = currentDate.atTime(23, 59, 59); | 
 |  |  |             dailyCondition.setStartOutHospTime(Date.from(dayStart.atZone(ZoneId.systemDefault()).toInstant())); | 
 |  |  |             dailyCondition.setEndOutHospTime(Date.from(dayEnd.atZone(ZoneId.systemDefault()).toInstant())); | 
 |  |  |             Integer pi = ihnGatherPatArchiveService.selectPatMedInhospList(dailyCondition); | 
 |  |  |  | 
 |  |  |             PatMedOuthosp patMedOuthosp = new PatMedOuthosp(); | 
 |  |  |             patMedOuthosp.setBeginTime(Date.from(dayStart.atZone(ZoneId.systemDefault()).toInstant())); | 
 |  |  |             patMedOuthosp.setEndTime(Date.from(dayEnd.atZone(ZoneId.systemDefault()).toInstant())); | 
 |  |  |             po = ihnGatherPatArchiveService.selectPatMedOuthospList(patMedOuthosp); | 
 |  |  |         } | 
 |  |  |         return po; | 
 |  |  |     /** | 
 |  |  |      * 部门信息集合信息数据采集 | 
 |  |  |      */ | 
 |  |  |     @PostMapping("/selectDeptList") | 
 |  |  |     @ApiOperation("部门信息集合信息数据采集") | 
 |  |  |     public AjaxResult selectDeptList(@RequestBody SysDept sysDept) { | 
 |  |  |         Integer integer = ihnGatherPatArchiveService.selectDeptList(sysDept); | 
 |  |  |         return AjaxResult.success(integer); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |