From ae7f04be9321ddbe17c46fae8ab05d34e7493f9f Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期三, 19 二月 2025 13:40:06 +0800 Subject: [PATCH] 管理后台bug修改 --- medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwStagingRoomServiceImpl.java | 111 +++++++++++++++++++++++++++++-------------------------- 1 files changed, 59 insertions(+), 52 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 9676585..0856fe6 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,14 +1,15 @@ package com.sinata.system.service.impl; -import com.alibaba.excel.EasyExcel; +import cn.idev.excel.FastExcel; 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.common.utils.StringUtils; import com.sinata.system.domain.MwStagingRoom; -import com.sinata.system.domain.SysDepartment; import com.sinata.system.domain.dto.MwStagingRoomDTO; +import com.sinata.system.domain.excel.MwCheckoutRecordExcel; import com.sinata.system.domain.query.CheckoutRecordQuery; import com.sinata.system.domain.query.MwStagingRoomQuery; import com.sinata.system.domain.query.StorageRecordQuery; @@ -23,6 +24,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.net.URL; import java.net.URLEncoder; import java.util.List; import java.util.Objects; @@ -48,17 +50,11 @@ */ @Override public PageDTO<MwStagingRoomVO> pageList(MwStagingRoomQuery query) { - String treeCode = ""; - if (Objects.isNull(query.getDepartmentId())) { - SysDepartment myDepartment = sysDepartmentService.getMyDepartment(); - if (Objects.isNull(myDepartment)) { - return PageDTO.empty(0L, 0L); - } - treeCode = myDepartment.getTreeCode(); - } else if (Objects.nonNull(query.getDepartmentId())) { - treeCode = sysDepartmentService.getById(query.getDepartmentId()).getTreeCode(); + String treeCode = sysDepartmentService.getTreeCodeByDepartmentId(query.getDepartmentId()); + if (StringUtils.isBlank(treeCode)) { + return PageDTO.empty(0L, 0L); } - Page<MwStagingRoomVO> page = baseMapper.pagelist(new Page<>(query.getPageCurr(), query.getPageSize()), treeCode); + Page<MwStagingRoomVO> page = baseMapper.pageList(new Page<>(query.getPageCurr(), query.getPageSize()), treeCode); return PageDTO.of(page); } @@ -89,6 +85,8 @@ if (Objects.isNull(dto.getId())) { throw new ServiceException("暂存间id不能为空"); } + MwStagingRoom mwStagingRoom = BeanUtils.copyBean(dto, MwStagingRoom.class); + updateById(mwStagingRoom); } /** @@ -111,15 +109,9 @@ */ @Override public PageDTO<MwStorageRecordVO> storageRecord(StorageRecordQuery query) { - String treeCode = ""; - if (Objects.isNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - SysDepartment myDepartment = sysDepartmentService.getMyDepartment(); - if (Objects.isNull(myDepartment)) { - return PageDTO.empty(0L, 0L); - } - treeCode = myDepartment.getTreeCode(); - } else if (Objects.nonNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - treeCode = sysDepartmentService.getById(query.getDepartmentId()).getTreeCode(); + String treeCode = sysDepartmentService.getTreeCodeByDepartmentId(query.getDepartmentId()); + if (StringUtils.isBlank(treeCode)) { + return PageDTO.empty(0L, 0L); } Page<MwStorageRecordVO> page = baseMapper.storageRecordPage(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode); return PageDTO.of(page); @@ -133,15 +125,9 @@ */ @Override public void storageRecordExport(StorageRecordQuery query, HttpServletResponse response) throws IOException { - String treeCode = ""; - if (Objects.isNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - SysDepartment myDepartment = sysDepartmentService.getMyDepartment(); - if (Objects.isNull(myDepartment)) { - return; - } - treeCode = myDepartment.getTreeCode(); - } else if (Objects.nonNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - treeCode = sysDepartmentService.getById(query.getDepartmentId()).getTreeCode(); + String treeCode = sysDepartmentService.getTreeCodeByDepartmentId(query.getDepartmentId()); + if (StringUtils.isBlank(treeCode)) { + return; } List<MwStorageRecordVO> list = baseMapper.storageRecordList(query, treeCode); // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman @@ -150,7 +136,7 @@ // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("暂存间入库记录", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); - EasyExcel.write(response.getOutputStream(), MwStorageRecordVO.class).sheet("暂存间入库记录").doWrite(list); + FastExcel.write(response.getOutputStream(), MwStorageRecordVO.class).sheet("暂存间入库记录").doWrite(list); } /** @@ -161,15 +147,9 @@ */ @Override public PageDTO<MwCheckoutRecordVO> checkoutRecord(CheckoutRecordQuery query) { - String treeCode = ""; - if (Objects.isNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - SysDepartment myDepartment = sysDepartmentService.getMyDepartment(); - if (Objects.isNull(myDepartment)) { - return PageDTO.empty(0L, 0L); - } - treeCode = myDepartment.getTreeCode(); - } else if (Objects.nonNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - treeCode = sysDepartmentService.getById(query.getDepartmentId()).getTreeCode(); + String treeCode = sysDepartmentService.getTreeCodeByDepartmentId(query.getDepartmentId()); + if (StringUtils.isBlank(treeCode)) { + return PageDTO.empty(0L, 0L); } Page<MwCheckoutRecordVO> page = baseMapper.checkoutRecordPage(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode); return PageDTO.of(page); @@ -183,23 +163,50 @@ */ @Override public void checkoutRecordExport(CheckoutRecordQuery query, HttpServletResponse response) throws IOException { - String treeCode = ""; - if (Objects.isNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - SysDepartment myDepartment = sysDepartmentService.getMyDepartment(); - if (Objects.isNull(myDepartment)) { - return; - } - treeCode = myDepartment.getTreeCode(); - } else if (Objects.nonNull(query.getDepartmentId()) && Objects.isNull(query.getStagingRoomId())) { - treeCode = sysDepartmentService.getById(query.getDepartmentId()).getTreeCode(); + String treeCode = sysDepartmentService.getTreeCodeByDepartmentId(query.getDepartmentId()); + if (StringUtils.isBlank(treeCode)) { + return; } List<MwCheckoutRecordVO> list = baseMapper.checkoutRecordList(query, treeCode); - // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + List<MwCheckoutRecordExcel> mwCheckoutRecordExcels = BeanUtils.copyToList(list, MwCheckoutRecordExcel.class); + for (MwCheckoutRecordExcel mwCheckoutRecordExcel : mwCheckoutRecordExcels) { + for (MwCheckoutRecordVO mwCheckoutRecordVO : list) { + if (mwCheckoutRecordVO.getId().equals(mwCheckoutRecordExcel.getId())) { + mwCheckoutRecordExcel.setHospitalSignature(new URL(mwCheckoutRecordVO.getHospitalSignature())); + } + } + } response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); - // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("暂存间出库记录", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); - EasyExcel.write(response.getOutputStream(), MwCheckoutRecordVO.class).sheet("暂存间出库记录").doWrite(list); + FastExcel.write(response.getOutputStream(), MwCheckoutRecordExcel.class).sheet("暂存间出库记录").doWrite(mwCheckoutRecordExcels); + } + + @Override + public List<MwStagingRoomVO> queryStagingRoomList() { + return baseMapper.queryStagingRoomList(); + } + + /** + * 暂存间待处理医废分页列表 + * + * @param query + * @return + */ + @Override + public PageDTO<MwStorageRecordVO> temporarilyStoredMedicalWaste(StorageRecordQuery query) { + return PageDTO.of(baseMapper.temporarilyStoredMedicalWaste(new Page<MwStorageRecordVO>(query.getPageCurr(), query.getPageSize()), query)); + } + + /** + * 根据医废查询使用列表 + * + * @param id 微波设备id + * @return + */ + @Override + public List<MwStorageRecordVO> queryMedicalWasteList(Long id) { + return baseMapper.queryMedicalWasteList(id); } } -- Gitblit v1.7.1