| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ltkj.common.annotation.RepeatSubmit; |
| | | import com.ltkj.common.core.domain.AjaxResult; |
| | | import com.ltkj.common.core.domain.entity.SysUser; |
| | | import com.ltkj.common.core.redis.RedisCache; |
| | |
| | | import com.ltkj.common.utils.SecurityUtils; |
| | | import com.ltkj.common.utils.StringUtils; |
| | | import com.ltkj.framework.config.MatchUtils; |
| | | import com.ltkj.framework.config.UserHoder; |
| | | import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; |
| | | import com.ltkj.hosp.domain.*; |
| | | import com.ltkj.hosp.mapper.TestMapper; |
| | |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.save; |
| | | import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.setClipRect; |
| | | |
| | | /** |
| | | * @Author: 西安路泰科技有限公司/赵佳豪 |
| | |
| | | // return getResult(page, pageSize, orderList, customerList, map); |
| | | // } |
| | | String value = String.valueOf(compId); |
| | | if(tjNumber==null)tjNumber=""; |
| | | if(compId==null)value=""; |
| | | if(name==null)name=""; |
| | | if(beginTime==null)beginTime=""; |
| | | if(endTime==null)endTime=""; |
| | | return AjaxResult.success(orderService.getCsCunChuGuoChengCustomerList(tjNumber,page,pageSize,checkStatus, value,beginTime,endTime,name)); |
| | | if (tjNumber == null) tjNumber = ""; |
| | | if (compId == null) value = ""; |
| | | if (name == null) name = ""; |
| | | if (beginTime == null) beginTime = ""; |
| | | if (endTime == null) endTime = ""; |
| | | return AjaxResult.success(orderService.getCsCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name)); |
| | | } |
| | | |
| | | |
| | |
| | | // }); |
| | | // } |
| | | |
| | | List<CsProVo> list = orderRemarkService.cSWebGetProByTjNumAndOrderId(tjNumber); |
| | | if(null !=list && list.size()>0){ |
| | | list.sort(new Comparator<CsProVo>() { |
| | | @Override |
| | | public int compare(CsProVo o1, CsProVo o2) { |
| | | return o1.getType() - o2.getType(); |
| | | } |
| | | }); |
| | | } |
| | | List<CsProVo> list = orderRemarkService.cSWebGetProByTjNumAndOrderId(tjNumber); |
| | | if (null != list && list.size() > 0) { |
| | | list.sort(new Comparator<CsProVo>() { |
| | | @Override |
| | | public int compare(CsProVo o1, CsProVo o2) { |
| | | return o1.getType() - o2.getType(); |
| | | } |
| | | }); |
| | | } |
| | | return AjaxResult.success(list); |
| | | } |
| | | |
| | |
| | | @ApiParam(value = "状态 0同意 1拒绝 默认同意") @RequestParam(defaultValue = "0") Integer status, |
| | | @ApiParam(value = "驳回理由") @RequestParam(required = false) String remark) { |
| | | int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); |
| | | if (num > 0) return AjaxResult.error("有延期项目暂不能审核!"); |
| | | if (num > 0) return AjaxResult.error("请先同步体检项目!"); |
| | | if (null != tjNumber) { |
| | | Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); |
| | | SysUser sysUser = userService.getById(userId); |
| | | LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.eq(TjOrder::getTjNumber, tjNumber); |
| | | TjOrder tjOrder = orderService.getOne(wq1); |
| | | TjOrder tjOrder = orderService.getOrderByTjNum(tjNumber); |
| | | if (null != tjOrder) { |
| | | tjOrder.setConfirmTime(new DateTime()); |
| | | tjOrder.setConfirmDoctor(sysUser.getNickName()); |
| | | tjOrder.setConfirmStatus(remark); |
| | | tjOrder.setConfirmStatus(String.valueOf(status)); |
| | | if (status == 0) { |
| | | tjOrder.setStatus(TjConstants.TJ_CHECK); |
| | | asyncService.updateCheckType(tjNumber); |
| | |
| | | */ |
| | | @GetMapping("/dataSynchronization") |
| | | @ApiOperation(value = "同步sql server数据到本地数据库数据接口") |
| | | @RepeatSubmit |
| | | public AjaxResult dataSynchronization(@RequestParam String tjNumber) { |
| | | //根据配置调取存储过程 将临时表数据存入预约表2023.12.12 |
| | | final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); |
| | | if ("Y".equals(getInfoFromSqlData)) { |
| | | List<LtkjHysqd> one = testMapper.getHysqdByTmh(tjNumber); |
| | | if (one != null) { |
| | | DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | ltkjHysqdService.saveBatch(one); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | for (LtkjHysqd ltkjHysqd : one) { |
| | | List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh()); |
| | | if (one1 != null) { |
| | | DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | ltkjHybgdService.saveBatch(one1); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | TjOrder order = orderService.getOrderByTjNum(tjNumber); |
| | | if (null != order) { |
| | | List<LtkjHysqd> one = testMapper.getHysqdByTmh(order.getCardId()); |
| | | if (one != null && one.size() > 0) { |
| | | for (LtkjHysqd ltkjHysqd : one) { |
| | | // LambdaQueryWrapper<LtkjHysqd> wq0=new LambdaQueryWrapper<>(); |
| | | // wq0.eq(LtkjHysqd::getTjh,ltkjHysqd.getTjh()); |
| | | // wq0.eq(LtkjHysqd::getTmh,ltkjHysqd.getTmh()); |
| | | // ltkjHysqdService.remove(wq0); |
| | | ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh()); |
| | | ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(ltkjHysqd.getTmh()); |
| | | LtkjHysqd hysqd = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh()); |
| | | if (hysqd == null) { |
| | | ltkjHysqdService.save(ltkjHysqd); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh()); |
| | | if (one1 != null && one1.size() > 0) { |
| | | DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | ltkjHybgdService.saveBatch(one1); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber); |
| | | if (one2 != null) { |
| | | DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | ltkjExamJcsqdService.saveBatch(one2); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | for (LtkjExamJcsqd ltkjExamJcsqd : one2) { |
| | | List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(ltkjExamJcsqd.getTmh()); |
| | | if (one3 != null) { |
| | | DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | ltkjExamJcbgdService.saveBatch(one3); |
| | | DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | } |
| | | } |
| | | // List<LtkjExamJcsqd> one2 = testMapper.getExamJcsqdTmh(tjNumber); |
| | | // if (one2 != null && one2.size() > 0) { |
| | | // DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | // ltkjExamJcsqdService.saveBatch(one2); |
| | | // DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | // for (LtkjExamJcsqd ltkjExamJcsqd : one2) { |
| | | // List<LtkjExamJcbgd> one3 = testMapper.getExamJcbgdByTjh(ltkjExamJcsqd.getTmh()); |
| | | // if (one3 != null && one3.size() > 0) { |
| | | // DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); |
| | | // ltkjExamJcbgdService.saveBatch(one3); |
| | | // DynamicDataSourceContextHolder.clearDataSourceType(); |
| | | // } |
| | | // } |
| | | // } |
| | | //同步化验项目 |
| | | testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); |
| | | //同步检查项目 |
| | | testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId()); |
| | | asyncService.updateCheckType(order.getTjNumber()); |
| | | } |
| | | } |
| | | return AjaxResult.success("同步成功"); |
| | |
| | | @ApiParam(value = "姓名)") @RequestParam(required = false) String name, |
| | | @ApiParam(value = "开始时间") @RequestParam(required = false) String beginTime, |
| | | @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime) { |
| | | |
| | | // String config = configService.selectConfigByKey("tj_confirm"); |
| | | // String config = configService.selectConfigByKey("tj_confirm"); |
| | | // DateTime beginTimes = null; |
| | | // DateTime endTimes = null; |
| | | // if (null != beginTime && null != endTime) { |
| | |
| | | // return getResult(page, pageSize, orderList, customerList, map); |
| | | // } |
| | | String value = String.valueOf(compId); |
| | | if(tjNumber==null)tjNumber=""; |
| | | if(compId==null)value=""; |
| | | if(name==null)name=""; |
| | | if(beginTime==null)beginTime=""; |
| | | if(endTime==null)endTime=""; |
| | | return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber,page,pageSize,checkStatus, value,beginTime,endTime,name)); |
| | | if (tjNumber == null) tjNumber = ""; |
| | | if (compId == null) value = ""; |
| | | if (name == null) name = ""; |
| | | if (beginTime == null) beginTime = ""; |
| | | if (endTime == null) endTime = ""; |
| | | return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name)); |
| | | } |
| | | |
| | | /** |
| | |
| | | if (customerService.updateById(customer)) { |
| | | LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); |
| | | wqq.eq(TbTransition::getCusId, customer.getCusIdcard()); |
| | | wqq.eq(TbTransition::getCardId, customer.getCardId()); |
| | | transitionService.remove(wqq); |
| | | asyncService.updateCheckType(tjNumber); |
| | | return AjaxResult.success("操作成功"); |
| | |
| | | |
| | | |
| | | /** |
| | | * 总检点击体检信息详情 |
| | | * 总检点击体检信息详情————非化验项目 |
| | | * |
| | | * @param tjNumber |
| | | * @return |
| | | */ |
| | | @GetMapping("/updateCheckType") |
| | | @ApiOperation(value = "总检点击体检信息详情") |
| | | @ApiOperation(value = "总检点击体检信息详情————非化验项目") |
| | | public AjaxResult updateCheckType(@ApiParam(value = "客户体检号") @RequestParam String tjNumber) { |
| | | if (redisCache.hasKey("updateCheckType" + tjNumber)) { |
| | | List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber); |
| | | return AjaxResult.success(cacheMapValue); |
| | | } |
| | | // if (redisCache.hasKey("updateCheckType" + tjNumber)) { |
| | | // List<Map<String, Object>> cacheMapValue = redisCache.getCacheMapValue("updateCheckType" + tjNumber, tjNumber); |
| | | // return AjaxResult.success(cacheMapValue); |
| | | // } |
| | | return getAjaxResult(tjNumber); |
| | | } |
| | | |
| | |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | parent.put("checkAdvice", one.getCheckAdvice()); |
| | | TjProject project = projectService.selectTjProjectByProId(remark.getProId()); |
| | | //判断该项目是否需要打印报告 |
| | | if ("N".equals(project.getNeedReport())) { |
| | | continue; |
| | | } |
| | | |
| | | //判断该项目是否检验科项目 2024/2/28g |
| | | if (project.getDeptId() == 241) { |
| | | continue; |
| | | } |
| | | |
| | | if (null != project) { |
| | | parent.put("parent", project.getProName()); |
| | | parent.put("parentId", project.getProId().toString()); |
| | |
| | | } else { |
| | | return AjaxResult.success("该客户没有体检项目数据"); |
| | | } |
| | | // } |
| | | } |
| | | return AjaxResult.success(list); |
| | | } |
| | | return AjaxResult.success("该客户没有体检项目数据!"); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 总检点击体检信息详情————化验项目 |
| | | * |
| | | * @param tjNumber |
| | | * @return |
| | | */ |
| | | @GetMapping("/updateCheckTypeHuaYan") |
| | | @ApiOperation(value = "总检点击体检信息详情————化验项目") |
| | | public AjaxResult updateCheckTypeHuaYan(@ApiParam(value = "客户体检号") @RequestParam String tjNumber) { |
| | | // asyncService.updateCheckType(tjNumber); |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | TjOrder one = orderService.getOrderByTjNum(tjNumber); |
| | | |
| | | if (one == null) { |
| | | return AjaxResult.error("暂无数据!!"); |
| | | } |
| | | // TjCustomer customer = customerService.getById(one.getUserId()); |
| | | List<TjOrderRemark> remarkList = orderRemarkService.addHuaYanTable(tjNumber); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.addHuaYanTable(tjNumber); |
| | | |
| | | |
| | | if (null != remarkList && remarkList.size() > 0) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | parent.put("checkAdvice", one.getCheckAdvice()); |
| | | parent.put("parent", remark.getProName()); |
| | | parent.put("parentId", remark.getProId().toString()); |
| | | List<TjOrderDetail> dels=new ArrayList<>(); |
| | | if (null != tjOrderDetails && tjOrderDetails.size() > 0) { |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if(remark.getProId().equals(tjOrderDetail.getProId())){ |
| | | if(null !=tjOrderDetail.getYcbz() && !tjOrderDetail.getYcbz().equals("")){ |
| | | tjOrderDetail.setProResult(tjOrderDetail.getProResult()+" ["+tjOrderDetail.getYcbz()+"]"); |
| | | } |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | } |
| | | String summary = remark.getSummary(); |
| | | if (null != summary) { |
| | | String[] split = summary.split(";"); |
| | | parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(split)); |
| | | } else { |
| | | parent.put("parentAdvice", null); |
| | | } |
| | | if(dels.size()==0){ |
| | | continue; |
| | | } |
| | | parent.put("sons", dels); |
| | | parent.put("remark", remark.getRemark()); |
| | | if (remark.getDoctorName() != null && null != userService.getById(remark.getDoctorName())) { |
| | | parent.put("doctorName", userService.getById(remark.getDoctorName()).getNickName()); |
| | | } |
| | | |
| | | list.add(parent); |
| | | } else { |
| | | return AjaxResult.success("该客户没有体检项目数据"); |
| | | } |
| | | } |
| | | return AjaxResult.success(list); |
| | | } |