OperationManagementFacade.java 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package com.lantone.daqe.facade;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.IPage;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.lantone.common.exception.Asserts;
  6. import com.lantone.common.util.BeanUtil;
  7. import com.lantone.common.util.StringUtil;
  8. import com.lantone.daqe.dto.GetOperationPageDTO;
  9. import com.lantone.daqe.entity.OperationInfo;
  10. import com.lantone.daqe.facade.base.OperationInfoFacade;
  11. import com.lantone.daqe.vo.AddOperationVO;
  12. import com.lantone.daqe.vo.DelOperationByIdVO;
  13. import com.lantone.daqe.vo.GetOperationPageVO;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Component;
  16. import java.util.List;
  17. /**
  18. * @Description: 手术管理-业务处理类
  19. * @author: rengb
  20. * @time: 2021/7/20 12:39
  21. */
  22. @Component
  23. public class OperationManagementFacade {
  24. @Autowired
  25. private OperationInfoFacade operationInfoFacade;
  26. public IPage<GetOperationPageDTO> getOperationPage(GetOperationPageVO getOperationPageVO) {
  27. Page<GetOperationPageDTO> getOperationPageDTOPage = new Page<>();
  28. QueryWrapper<OperationInfo> operationInfoQueryWrapper = new QueryWrapper<>();
  29. operationInfoQueryWrapper.eq(getOperationPageVO.getHospitalId() != null, "hospital_id", getOperationPageVO.getHospitalId());
  30. operationInfoQueryWrapper.like(StringUtil.isNotBlank(getOperationPageVO.getCode()), "code", getOperationPageVO.getCode());
  31. operationInfoQueryWrapper.like(StringUtil.isNotBlank(getOperationPageVO.getName()), "name", getOperationPageVO.getName());
  32. operationInfoQueryWrapper.like(StringUtil.isNotBlank(getOperationPageVO.getStandard()), "standard", getOperationPageVO.getStandard());
  33. if (StringUtil.isNotBlank(getOperationPageVO.getIsMapping())) {
  34. if (getOperationPageVO.getIsMapping().equals("0")) {
  35. operationInfoQueryWrapper.isNull("standard");
  36. } else if (getOperationPageVO.getIsMapping().equals("1")) {
  37. operationInfoQueryWrapper.isNotNull("standard");
  38. }
  39. }
  40. Page<OperationInfo> operationInfoPage = new Page<>(getOperationPageVO.getCurrent(), getOperationPageVO.getSize());
  41. operationInfoFacade.page(operationInfoPage, operationInfoQueryWrapper);
  42. BeanUtil.copyProperties(operationInfoPage, getOperationPageDTOPage);
  43. List<GetOperationPageDTO> getOperationPageDTOList = BeanUtil.listCopyTo(operationInfoPage.getRecords(), GetOperationPageDTO.class);
  44. getOperationPageDTOList.forEach(i -> {
  45. i.setIsMapping(StringUtil.isBlank(i.getIsMapping()) ? "未匹配" : "已匹配");
  46. });
  47. getOperationPageDTOPage.setRecords(getOperationPageDTOList);
  48. return getOperationPageDTOPage;
  49. }
  50. /**
  51. * 新增手术 业务处理
  52. *
  53. * @param addOperationVO
  54. * @return 是否新增成功
  55. */
  56. public boolean addOperation(AddOperationVO addOperationVO) {
  57. OperationInfo operationInfo = new OperationInfo();
  58. BeanUtil.copyProperties(addOperationVO, operationInfo);
  59. if (operationInfoFacade.isExist(operationInfo)) {
  60. Asserts.fail("该诊断已存在!");
  61. }
  62. return operationInfoFacade.save(operationInfo);
  63. }
  64. /**
  65. * 通过id删除手术
  66. *
  67. * @param delOperationByIdVO
  68. * @return 是否删除成功
  69. */
  70. public Boolean delOperationById(DelOperationByIdVO delOperationByIdVO) {
  71. if (operationInfoFacade.getById(delOperationByIdVO.getId()) == null) {
  72. Asserts.fail("该药品不存在!");
  73. }
  74. return operationInfoFacade.removeById(delOperationByIdVO.getId());
  75. }
  76. }