| | |
| | | @ApiParam(value = "单位") @RequestParam(required = false) String dw, |
| | | @ApiParam(value = "报告开始时间") @RequestParam(required = false) String djbeginTime, |
| | | @ApiParam(value = "报告结束时间") @RequestParam(required = false) String djendTime) { |
| | | /* Map<String, Object> map = new HashMap<>(); |
| | | List<Long> cusIds = null; |
| | | if (StringUtil.isNotBlank(name)) { |
| | | LambdaQueryWrapper<TjCustomer> wqq = new LambdaQueryWrapper<>(); |
| | | wqq.like(TjCustomer::getCusName, name); |
| | | cusIds = tjCustomerService.list(wqq).stream().map(TjCustomer::getCusId).collect(Collectors.toList()); |
| | | } |
| | | Page<TjOrder> page1 = new Page<>(pageNum, pageSize); |
| | | LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>(); |
| | | if (dyzt == 0) { |
| | | wq.isNull(TjOrder::getPrintLastTime); |
| | | wq.eq(TjOrder::getHeshouStatus, 1); //核收状态为1才能打印 |
| | | } else { |
| | | wq.isNotNull(TjOrder::getPrintLastTime); |
| | | } |
| | | |
| | | if (null != djbeginTime && null != djendTime) { |
| | | wq.between(TjOrder::getCreateTime, DateUtil.beginOfDay(DateUtil.parseDate(djbeginTime)), DateUtil.endOfDay(DateUtil.parseDate(djendTime))); |
| | | } |
| | | if (null != tjNum) { |
| | | wq.like(TjOrder::getTjNumber, tjNum); |
| | | } |
| | | if (StringUtil.isNotBlank(dw)) { |
| | | wq.like(TjOrder::getFirmName, dw); |
| | | } |
| | | if (null != cusIds && !cusIds.isEmpty()) { |
| | | wq.in(TjOrder::getUserId, cusIds); |
| | | } |
| | | wq.orderByDesc(TjOrder::getCreateTime); |
| | | Page<TjOrder> page2 = tjOrderService.page(page1, wq); |
| | | List<TjOrder> list = page2.getRecords(); |
| | | if (list != null) { |
| | | for (int i = 0; i < list.size(); i++) { |
| | | TjCustomer tjCustomer = tjCustomerService.getById(list.get(i).getUserId()); |
| | | if (null == tjCustomer) { |
| | | list.remove(list.get(i)); |
| | | continue; |
| | | } |
| | | list.get(i).setTjCustomerSex(tjCustomer.getCusSex()); |
| | | list.get(i).setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); |
| | | list.get(i).setTjCustomerName(tjCustomer.getCusName()); |
| | | list.get(i).setTjCustomerPhone(tjCustomer.getCusPhone()); |
| | | if (tjCustomer.getCusIdcard() != null) { |
| | | list.get(i).setTjCusIdCard(tjCustomer.getCusIdcard()); |
| | | } |
| | | |
| | | if (null != tjCustomer.getCompName()) { |
| | | list.get(i).setDictCompName(tjCustomer.getCompName()); |
| | | } else { |
| | | String firmId = list.get(i).getFirmId(); |
| | | if (firmId != null && null != iDictCompService.getById(String.valueOf(list.get(i).getFirmId()))) { |
| | | list.get(i).setDictCompName(iDictCompService.getById(String.valueOf(list.get(i).getFirmId())).getCnName()); |
| | | } |
| | | } |
| | | if (null != list.get(i).getPacId()) { |
| | | if (null != tjPackageService.getById(list.get(i).getPacId())) { |
| | | list.get(i).setPacName(tjPackageService.getById(list.get(i).getPacId()).getPacName()); |
| | | } |
| | | if (null != dwDeptService.getById(list.get(i).getPacId())) { |
| | | list.get(i).setPacName(dwDeptService.getById(list.get(i).getPacId()).getDwDeptName()); |
| | | } |
| | | } |
| | | //从打印记录查出最新打印时间 |
| | | // LambdaQueryWrapper<TjReportPrint> wqqq = new LambdaQueryWrapper<>(); |
| | | // wqqq.eq(TjReportPrint::getTjNumber, list.get(i).getTjNumber()); |
| | | // wqqq.orderByDesc(TjReportPrint::getPrintTime); |
| | | // wqqq.last("limit 1"); |
| | | // TjReportPrint one = tjReportPrintService.getOne(wqqq); |
| | | // if (one != null) { |
| | | // list.get(i).setPrintLastTime(one.getPrintTime()); |
| | | // } |
| | | } |
| | | } |
| | | map.put("list", list); |
| | | map.put("total", page2.getTotal());*/ |
| | | |
| | | if (djbeginTime == null) djbeginTime = ""; |
| | | if (djendTime == null) djendTime = ""; |
| | | Map<String, Object> map = tjOrderService.getTjBgdyList(pageNum, pageSize, dyzt, tjNum, name, dw, djbeginTime, djendTime); |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 导出体检记录列表 |
| | | */ |
| | | // @PreAuthorize("@ss.hasPermi('hosp:order:export')") |
| | | @Log(title = "体检记录", businessType = BusinessType.EXPORT) |
| | | @PostMapping("/export") |
| | | |
| | | |
| | | @PostMapping("/exportOrderList") |
| | | @ApiOperation(value = "导出体检记录列表") |
| | | public void export(HttpServletResponse response, TjOrder tjOrder) { |
| | | //List<TjOrder> list = tjOrderService.selectTjOrderList(tjOrder); |
| | | List<TjOrder> list = tjOrderService.selectExportOrderList(tjOrder); |
| | | public void exportOrderList(@ApiParam(value = "页码数(默认1)") @RequestParam(defaultValue = "1") Integer pageNum, |
| | | @ApiParam(value = "显示条数(默认10)") @RequestParam(defaultValue = "10") Integer pageSize, |
| | | @ApiParam(value = "状态") @RequestParam(required = false) Integer zt, |
| | | @ApiParam(value = "体检号)") @RequestParam(required = false) String tjNum, |
| | | @ApiParam(value = "姓名)") @RequestParam(required = false) String name, |
| | | @ApiParam(value = "项目名)") @RequestParam(required = false) String xmmc, |
| | | @ApiParam(value = "登记开始时间") @RequestParam(required = false) Date djbeginTime, |
| | | @ApiParam(value = "登记结束时间") @RequestParam(required = false) Date djendTime, |
| | | @ApiParam(value = "报告开始时间") @RequestParam(required = false) Date bgbeginTime, |
| | | @ApiParam(value = "报告结束时间") @RequestParam(required = false) Date bgendTime, |
| | | @ApiParam(value = "单位") @RequestParam(required = false) String dw, |
| | | @ApiParam(value = "当前页或全部数据") @RequestParam(required = false) String dqyorqbsj, |
| | | HttpServletResponse response) { |
| | | List<Long> cusIds = null; |
| | | if (null != name) { |
| | | LambdaQueryWrapper<TjCustomer> wqq = new LambdaQueryWrapper<>(); |
| | | wqq.like(TjCustomer::getCusName, name); |
| | | cusIds = tjCustomerService.list(wqq).stream().map(TjCustomer::getCusId).collect(Collectors.toList()); |
| | | } |
| | | |
| | | Page<TjOrder> page1 = new Page<>(pageNum, pageSize); |
| | | LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>(); |
| | | if (null != djbeginTime && null != djendTime) { |
| | | wq.between(TjOrder::getCreateTime, DateUtil.beginOfDay(djbeginTime), DateUtil.endOfDay(djendTime)); |
| | | } |
| | | if (null != bgbeginTime && null != bgendTime) { |
| | | wq.between(TjOrder::getCreateTime, DateUtil.beginOfDay(bgbeginTime), DateUtil.endOfDay(bgendTime)); |
| | | } |
| | | if (null != tjNum) { |
| | | wq.eq(TjOrder::getTjNumber, tjNum); |
| | | } |
| | | |
| | | |
| | | if (null != xmmc) { |
| | | wq.in(TjOrder::getTjNumber, projectService.getTjNumLIstByXmmx(xmmc)); |
| | | } |
| | | |
| | | if (StrUtil.isNotBlank(dw)) { |
| | | wq.like(TjOrder::getFirmName, dw); |
| | | } |
| | | |
| | | if (null != cusIds && !cusIds.isEmpty()) { |
| | | wq.in(TjOrder::getUserId, cusIds); |
| | | } |
| | | |
| | | if (null != zt && (zt == 0 || zt == 1 || zt == 2)) { |
| | | List<TjOrder> orders = new ArrayList<>(); |
| | | List<TjOrder> tjOrders = null; |
| | | List<TjOrder> orderList = tjOrderService.list(wq); |
| | | if (null != orderList && !orderList.isEmpty()) { |
| | | for (TjOrder order : orderList) { |
| | | int czwj = remarkService.panduaniscunzaiweijian(order.getTjNumber()); |
| | | int sfwc = remarkService.panduaniswancheng(order.getTjNumber()); |
| | | if (zt == 0 && czwj == 0) { |
| | | //未检0 |
| | | order.setZt("未检"); |
| | | orders.add(order); |
| | | } |
| | | if (zt == 1 && czwj > 0) { |
| | | //在检1 |
| | | order.setZt("在检"); |
| | | orders.add(order); |
| | | } |
| | | if (zt == 2 && sfwc == 0 && order.getCheckStatus() == 0 && order.getCheckTime() == null && order.getHeshouStatus() == 0 && order.getPrintLastTime() == null) { |
| | | //已完成2 |
| | | order.setZt("已完成"); |
| | | orders.add(order); |
| | | } |
| | | } |
| | | if (!orders.isEmpty()) { |
| | | tjOrders = orders.stream().sorted(Comparator.comparing(TjOrder::getCreateTime).reversed()) |
| | | .skip((long) (pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); |
| | | for (TjOrder order : tjOrders) { |
| | | TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); |
| | | if (null != tjCustomer) { |
| | | order.setTjCustomerSex(tjCustomer.getCusSex()); |
| | | order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); |
| | | order.setTjCustomerName(tjCustomer.getCusName()); |
| | | order.setTjCustomerPhone(tjCustomer.getCusPhone()); |
| | | order.setTjCusIdCard(tjCustomer.getCusIdcard()); |
| | | order.setCareer(tjCustomer.getCareer()); |
| | | order.setIdType(tjCustomer.getIdType()); |
| | | order.setAgeUnit(tjCustomer.getAgeUnit()); |
| | | order.setTjCount(String.valueOf(tjCustomer.getCusNumber())); |
| | | String firmName = order.getFirmName(); |
| | | if (StringUtil.isNotBlank(firmName)) { |
| | | order.setDictCompName(firmName); |
| | | } |
| | | if (null != order.getPacId()) { |
| | | if (null != tjPackageService.getById(order.getPacId())) { |
| | | order.setPacName(tjPackageService.getById(order.getPacId()).getPacName()); |
| | | } else if (null != dwDeptService.getById(order.getPacId())) { |
| | | order.setPacName(dwDeptService.getById(order.getPacId()).getDwDeptName()); |
| | | } |
| | | } |
| | | TjDjdDyjl dycs = djdDyjlService.getDjdDyCsByTjNum(order.getTjNumber()); |
| | | if (null != dycs) order.setDycs(Math.toIntExact(dycs.getDycs())); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | ExcelUtil<TjOrder> util = new ExcelUtil<TjOrder>(TjOrder.class); |
| | | util.exportExcel(response, tjOrders, "体检记录数据"); |
| | | } |
| | | |
| | | if (null != zt) { |
| | | if (zt == 3) { |
| | | //已审核 |
| | | wq.isNotNull(TjOrder::getCheckTime); |
| | | wq.eq(TjOrder::getCheckStatus, 1); |
| | | wq.isNull(TjOrder::getHeshouTime); |
| | | wq.isNull(TjOrder::getPrintLastTime); |
| | | wq.eq(TjOrder::getHeshouStatus, 0); |
| | | } |
| | | if (zt == 4) { |
| | | //生成报告 |
| | | wq.isNotNull(TjOrder::getReportTime); |
| | | wq.isNull(TjOrder::getHeshouTime); |
| | | wq.isNull(TjOrder::getPrintLastTime); |
| | | wq.eq(TjOrder::getHeshouStatus, 0); |
| | | } |
| | | if (zt == 5) { |
| | | //报告核收 |
| | | wq.eq(TjOrder::getHeshouStatus, 1); |
| | | wq.isNull(TjOrder::getPrintLastTime); |
| | | } |
| | | if (zt == 6) { |
| | | //已打印 |
| | | wq.isNotNull(TjOrder::getPrintLastTime); |
| | | wq.eq(TjOrder::getHeshouStatus, 1); |
| | | wq.isNotNull(TjOrder::getPrintLastTime); |
| | | } |
| | | } |
| | | |
| | | wq.orderByDesc(TjOrder::getCreateTime); |
| | | |
| | | List<TjOrder> list =null; |
| | | if(StringUtil.isNotBlank(dqyorqbsj) && dqyorqbsj.equals("1")){ |
| | | list = tjOrderService.list(wq); |
| | | }else { |
| | | Page<TjOrder> page2 = tjOrderService.page(page1, wq); |
| | | list = page2.getRecords(); |
| | | } |
| | | if (!list.isEmpty()) { |
| | | for (TjOrder order : list) { |
| | | TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); |
| | | if (null != tjCustomer) { |
| | | order.setTjCustomerSex(tjCustomer.getCusSex()); |
| | | order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); |
| | | order.setTjCustomerName(tjCustomer.getCusName()); |
| | | order.setTjCustomerPhone(tjCustomer.getCusPhone()); |
| | | order.setTjCusIdCard(tjCustomer.getCusIdcard()); |
| | | order.setCareer(tjCustomer.getCareer()); |
| | | order.setIdType(tjCustomer.getIdType()); |
| | | order.setAgeUnit(tjCustomer.getAgeUnit()); |
| | | order.setTjCount(String.valueOf(tjCustomer.getCusNumber())); |
| | | if (null != tjCustomer.getCompName()) { |
| | | order.setDictCompName(tjCustomer.getCompName()); |
| | | } else { |
| | | String firmId = order.getFirmId(); |
| | | if (firmId != null && null != iDictCompService.getById(String.valueOf(order.getFirmId()))) { |
| | | order.setDictCompName(iDictCompService.getById(String.valueOf(order.getFirmId())).getCnName()); |
| | | } |
| | | } |
| | | if (null != order.getPacId()) { |
| | | if (null != tjPackageService.getById(order.getPacId())) { |
| | | order.setPacName(tjPackageService.getById(order.getPacId()).getPacName()); |
| | | } else if (null != dwDeptService.getById(order.getPacId())) { |
| | | order.setPacName(dwDeptService.getById(order.getPacId()).getDwDeptName()); |
| | | } |
| | | } |
| | | TjDjdDyjl dycs = djdDyjlService.getDjdDyCsByTjNum(order.getTjNumber()); |
| | | if (null != dycs) order.setDycs(Math.toIntExact(dycs.getDycs())); |
| | | } |
| | | int czwj = remarkService.panduaniscunzaiweijian(order.getTjNumber()); |
| | | int sfwc = remarkService.panduaniswancheng(order.getTjNumber()); |
| | | Date checkTime = order.getCheckTime(); |
| | | Date reportTime = order.getReportTime(); |
| | | Integer heshouStatus = order.getHeshouStatus(); |
| | | Date lastTime = order.getPrintLastTime(); |
| | | |
| | | if (null != zt) { |
| | | if (zt == 3) { |
| | | order.setZt("已审核"); |
| | | } |
| | | if (zt == 4) { |
| | | order.setZt("生成报告"); |
| | | } |
| | | if (zt == 5) { |
| | | order.setZt("报告核收"); |
| | | } |
| | | if (zt == 6) { |
| | | order.setZt("已打印"); |
| | | } |
| | | } else { |
| | | if (czwj == 0) { |
| | | //未检0 |
| | | order.setZt("未检"); |
| | | } |
| | | if (czwj > 0) { |
| | | //在检1 |
| | | order.setZt("在检"); |
| | | } |
| | | if (sfwc == 0) { |
| | | //已完成2 |
| | | order.setZt("已完成"); |
| | | } |
| | | if (null != checkTime) { |
| | | //已审核3 |
| | | order.setZt("已审核"); |
| | | } |
| | | if (null != reportTime) { |
| | | //生成报告4 |
| | | order.setZt("生成报告"); |
| | | } |
| | | if (1 == heshouStatus) { |
| | | //报告核收5 |
| | | order.setZt("报告核收"); |
| | | } |
| | | if (null != lastTime) { |
| | | //已打印6 |
| | | order.setZt("已打印"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | ExcelUtil<TjOrder> util = new ExcelUtil<TjOrder>(TjOrder.class); |
| | | util.exportExcel(response, list, "体检记录数据"); |
| | | } |
| | |
| | | if (null != tjReservation.getPacId()) tjOrder.setPacId(tjReservation.getPacId()); |
| | | if (null != tjReservation.getTjCategory()) tjOrder.setTjCategory(tjReservation.getTjCategory()); |
| | | if (null != tjReservation.getGroupingId()) { |
| | | TjDwGrouping dwGrouping = dwGroupingService.getById(tjReservation.getGroupingId()); |
| | | tjOrder.setGroupId(tjReservation.getGroupingId()); |
| | | tjOrder.setFirmDeptId(tjReservation.getPacId()); |
| | | tjOrder.setFirmDeptId(dwGrouping.getDwDeptId()); |
| | | } |
| | | tjReservation.setIsExpire(1); |
| | | tjReservationService.updateById(tjReservation); |
| | |
| | | hisApiMethod.ZfHisApiMethod(jzh.toString()); |
| | | } |
| | | log.info("该登记人挂号失败, 就诊号为: " + tjOrder.getCardId()); |
| | | // return AjaxResult.error("挂号失败!" + result.get("msg").toString()); |
| | | throw new IllegalStateException("挂号失败!" + result.get("msg").toString()); |
| | | } |
| | | |
| | | log.info("该登记人的his就诊号是: " + tjOrder.getCardId()); |
| | | //团体 |
| | | /* if ("1".equals(tjOrder.getTjType())) { |
| | | // asyncService.ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater); |
| | | ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater); |
| | | }*/ |
| | | //个人 |
| | | /* if ("2".equals(tjOrder.getTjType())) { |
| | | //asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); |
| | | newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); |
| | | }*/ |
| | | // 查询 对接Lis、Pacs申请如果类型包含在配置内则使用对接lis、pacs |
| | | try { |
| | | if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { |
| | |
| | | addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); |
| | | log.info("调用his开启 进入不收费方法 该方法执行完毕"); |
| | | } else { |
| | | log.info("调用his开启 进入收费方法 该体检人员不收费:"+tjOrder.getTjNumber()); |
| | | log.info("调用his开启 进入收费方法 该体检人员收费:"+tjOrder.getTjNumber()); |
| | | newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); |
| | | List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); |
| | | addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); |
| | |
| | | xdPictureService.saveBatch(xdPictureList); |
| | | List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); |
| | | addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); |
| | | // return AjaxResult.success(tjNumber); |
| | | } |
| | | |
| | | tjCustomer.setCardId("0"); |
| | |
| | | @GetMapping(value = "newgetTransitionList") |
| | | @ApiOperation(value = "最新查询过渡表数据") |
| | | public AjaxResult newgetTransitionList(@RequestParam @ApiParam(value = "客户id") String cusId) { |
| | | // String pacId = transitionService.getTbTransitionPacId(cusId); |
| | | // if(StringUtil.isNotBlank(pacId)){ |
| | | // //补差价 |
| | | // List<Map<String,Object>> cjMaps = groupingProService.huoquxiangmuchajia(pacId, cusId); |
| | | // if(null !=cjMaps && !cjMaps.isEmpty()){ |
| | | // for (Map<String, Object> cjMap : cjMaps) { |
| | | // transitionService.buxiangmuchajia(cusId,pacId,cjMap.get("xmid").toString(),new BigDecimal(cjMap.get("cj").toString())); |
| | | // } |
| | | // } |
| | | // } |
| | | List<TbTransition> list = transitionService.newgetTransitionList(cusId); |
| | | return AjaxResult.success(list); |
| | | } |