HosptailServiceImpl.java 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. package com.imed.costaccount.service.impl;
  2. import cn.hutool.core.collection.CollUtil;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.imed.costaccount.common.exception.CostException;
  6. import com.imed.costaccount.common.util.PageUtils;
  7. import com.imed.costaccount.mapper.HosptailMapper;
  8. import com.imed.costaccount.model.Hosptail;
  9. import com.imed.costaccount.model.User;
  10. import com.imed.costaccount.model.vo.CommonVO;
  11. import com.imed.costaccount.model.vo.UserVO;
  12. import com.imed.costaccount.service.HosptailService;
  13. import com.imed.costaccount.utils.BeanUtil;
  14. import org.springframework.stereotype.Service;
  15. import java.util.*;
  16. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  17. import com.baomidou.mybatisplus.core.metadata.IPage;
  18. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  19. @Service("hosptailService")
  20. public class HosptailServiceImpl extends ServiceImpl<HosptailMapper, Hosptail> implements HosptailService {
  21. /**
  22. * 分页查询所有的医院信息
  23. *
  24. * @param page
  25. * @param pageSize
  26. * @return
  27. */
  28. @Override
  29. public PageUtils queryList(Integer page, Integer pageSize) {
  30. // Page<Hosptail> hosptailPage = new Page<>(page, pageSize);
  31. // Page<Hosptail> pages = this.page(hosptailPage);
  32. // List<UserVO> userVOS = com.imed.costaccount.common.util.BeanUtil.convertList(records, UserVO.class);
  33. // PageUtils pageUtils = new PageUtils(pages);
  34. // pageUtils.setList(userVOS);
  35. // return pageUtils;
  36. return null;
  37. }
  38. /**
  39. * 通过医院标识获取院区列表
  40. * @param sign
  41. * @return
  42. */
  43. @Override
  44. public List<CommonVO> getHospArea(String sign) {
  45. Hosptail one = this.getBySign(sign);
  46. // 获取下面所有院区
  47. List<Hosptail> list = this.list(
  48. new LambdaQueryWrapper<Hosptail>()
  49. .select(Hosptail::getId)
  50. .eq(Hosptail::getIsHosptail, 1)
  51. .eq(Hosptail::getParentId, one.getId())
  52. );
  53. // 如果不存在院区
  54. if (CollUtil.isEmpty(list)) {
  55. return Collections.emptyList();
  56. }
  57. return BeanUtil.convertList(list, CommonVO.class);
  58. }
  59. /**
  60. * 通过医院sign获取医院信息
  61. * @param hospSign 医院唯一标识
  62. * @return
  63. */
  64. @Override
  65. public Hosptail getBySign(String hospSign) {
  66. Hosptail one = this.getOne(
  67. new LambdaQueryWrapper<Hosptail>()
  68. .select(Hosptail::getId,Hosptail::getName)
  69. .eq(Hosptail::getIsHosptail, 0)
  70. .eq(Hosptail::getSign, hospSign)
  71. .last("limit 1")
  72. );
  73. if (Objects.isNull(one)) {
  74. throw new CostException("当前医院不存在");
  75. }
  76. return one;
  77. }
  78. }