From 6a3bb2d68efeaf0e6609a14e29412c3805730ce8 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期四, 12 十二月 2024 18:41:09 +0800 Subject: [PATCH] 转运箱管理 --- medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwStagingRoomServiceImpl.java | 89 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 88 insertions(+), 1 deletions(-) diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwStagingRoomServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwStagingRoomServiceImpl.java index 9644ef3..f687b10 100644 --- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwStagingRoomServiceImpl.java +++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwStagingRoomServiceImpl.java @@ -1,10 +1,24 @@ package com.sinata.system.service.impl; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.sinata.common.entity.PageDTO; +import com.sinata.common.exception.ServiceException; +import com.sinata.common.utils.BeanUtils; import com.sinata.system.domain.MwStagingRoom; +import com.sinata.system.domain.SysDepartment; +import com.sinata.system.domain.dto.MwStagingRoomDTO; +import com.sinata.system.domain.query.MwStagingRoomQuery; +import com.sinata.system.domain.query.StorageRecordQuery; +import com.sinata.system.domain.vo.MwCollectRecordVO; +import com.sinata.system.domain.vo.MwStagingRoomVO; import com.sinata.system.mapper.MwStagingRoomMapper; import com.sinata.system.service.MwStagingRoomService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.sinata.system.service.SysDepartmentService; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; + +import java.util.Objects; /** * <p> @@ -15,6 +29,79 @@ * @since 2024-12-02 */ @Service +@RequiredArgsConstructor public class MwStagingRoomServiceImpl extends ServiceImpl<MwStagingRoomMapper, MwStagingRoom> implements MwStagingRoomService { + private final SysDepartmentService sysDepartmentService; + /** + * 暂存间分页列表 + * + * @param query + * @return + */ + @Override + public PageDTO<MwStagingRoomVO> pageList(MwStagingRoomQuery query) { + String treeCode = ""; + if (Objects.nonNull(query.getDepartmentId())) { + SysDepartment department = sysDepartmentService.getById(query.getDepartmentId()); + if (Objects.isNull(department)) { + return PageDTO.empty(0L, 0L); + } + treeCode = department.getTreeCode(); + } + Page<MwStagingRoomVO> page = baseMapper.pagelist(new Page<>(query.getPageCurr(), query.getPageSize()), query.getDepartmentId(), treeCode); + return PageDTO.of(page); + } + + /** + * 新增暂存间 + * + * @param dto + * @return + */ + @Override + public void add(MwStagingRoomDTO dto) { + MwStagingRoom mwStagingRoom = BeanUtils.copyBean(dto, MwStagingRoom.class); + Long count = this.lambdaQuery().eq(MwStagingRoom::getDepartmentId, mwStagingRoom.getDepartmentId()).count(); + if (count > 0) { + throw new ServiceException("当前医院已存在暂存间,请勿重复添加"); + } + save(mwStagingRoom); + } + + /** + * 编辑暂存间 + * + * @param dto + * @return + */ + @Override + public void edit(MwStagingRoomDTO dto) { + if (Objects.isNull(dto.getId())) { + throw new ServiceException("暂存间id不能为空"); + } + } + + /** + * 根据医院id查询暂存间 + * + * @param departmentId + * @return + */ + @Override + public MwStagingRoomVO getByHospitalId(Long departmentId) { + MwStagingRoom one = this.lambdaQuery().eq(MwStagingRoom::getDepartmentId, departmentId).one(); + return BeanUtils.copyBean(one, MwStagingRoomVO.class); + } + + /** + * 暂存间入库记录 + * + * @param query + * @return + */ + @Override + public PageDTO<MwCollectRecordVO> storageRecord(StorageRecordQuery query) { + return null; + } } -- Gitblit v1.7.1