From 0852acae13603be95eaaa0b501f3441508ff3fe5 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 14 四月 2025 09:52:12 +0800 Subject: [PATCH] 大屏统计修改 --- medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwBoxServiceImpl.java | 39 ++++++++++++++++++++++++--------------- 1 files changed, 24 insertions(+), 15 deletions(-) diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwBoxServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwBoxServiceImpl.java index 8706682..73a5847 100644 --- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwBoxServiceImpl.java +++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwBoxServiceImpl.java @@ -3,10 +3,7 @@ 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.enums.BoxProcessEnum; -import com.sinata.common.enums.BoxStatusEnum; import com.sinata.common.exception.ServiceException; -import com.sinata.common.utils.BeanUtils; import com.sinata.common.utils.CollUtils; import com.sinata.common.utils.StringUtils; import com.sinata.system.domain.MwBox; @@ -14,6 +11,8 @@ import com.sinata.system.domain.query.MwBoxPageQuery; import com.sinata.system.domain.vo.BoxStatisticsVO; import com.sinata.system.domain.vo.MwBoxVO; +import com.sinata.system.enums.BoxProcessEnum; +import com.sinata.system.enums.BoxStatusEnum; import com.sinata.system.mapper.MwBoxMapper; import com.sinata.system.service.MwBoxService; import org.springframework.dao.DuplicateKeyException; @@ -24,6 +23,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -48,9 +48,9 @@ boxStatisticsVO.setTotal(boxList.size()); boxStatisticsVO.setBrokenCount(boxList.stream().filter(box -> BoxStatusEnum.BROKEN.getCode().equals(box.getStatus())).count()); boxStatisticsVO.setLostCount(boxList.stream().filter(box -> BoxStatusEnum.LOST.getCode().equals(box.getStatus())).count()); - boxStatisticsVO.setDisposeCount(boxList.stream().filter(box -> BoxProcessEnum.DISPOSAL.getCode().equals(box.getStatus())).count()); - boxStatisticsVO.setHospitalUsingCount(boxList.stream().filter(box -> BoxProcessEnum.HOSPITAL_USING.getCode().equals(box.getStatus())).count()); - boxStatisticsVO.setTransitingCount(boxList.stream().filter(box -> BoxProcessEnum.TRANSITING.getCode().equals(box.getStatus())).count()); + boxStatisticsVO.setDisposeCount(boxList.stream().filter(box -> BoxProcessEnum.DISPOSAL.getCode().equals(box.getLink())).count()); + boxStatisticsVO.setHospitalUsingCount(boxList.stream().filter(box -> BoxProcessEnum.HOSPITAL_USING.getCode().equals(box.getLink())).count()); + boxStatisticsVO.setTransitingCount(boxList.stream().filter(box -> BoxProcessEnum.TRANSITING.getCode().equals(box.getLink())).count()); } return boxStatisticsVO; } @@ -72,7 +72,7 @@ .between(Objects.nonNull(query.getLastUseTimeStart()) && Objects.nonNull(query.getLastUseTimeEnd()), MwBox::getLastUseTime, query.getLastUseTimeStart(), query.getLastUseTimeEnd()) - .orderByDesc(MwBox::getBoxNumber) + .orderByDesc(MwBox::getCreateTime) .page(new Page<>(query.getPageCurr(), query.getPageSize())); return PageDTO.of(page, MwBoxVO.class); } @@ -87,10 +87,10 @@ @Override @Transactional(rollbackFor = Exception.class) public void add(String boxNumberStart, String boxNumberEnd) { - String regx = "\\d+"; - if (boxNumberStart.length() != 11 || boxNumberEnd.length() != 11 || !boxNumberStart.matches(regx) || !boxNumberEnd.matches(regx)) { - throw new ServiceException("请输入有效的11位数字编号!"); - } + //String regx = "\\d+"; + //if (boxNumberStart.length() != 11 || boxNumberEnd.length() != 11 || !boxNumberStart.matches(regx) || !boxNumberEnd.matches(regx)) { + // throw new ServiceException("请输入有效的11位数字编号!"); + //} BigDecimal start = new BigDecimal(boxNumberStart); BigDecimal end = new BigDecimal(boxNumberEnd); if (start.compareTo(end) > 0) { @@ -99,7 +99,9 @@ List<MwBox> boxList = new ArrayList<>(); for (BigDecimal i = start; i.compareTo(end) <= 0; i = i.add(BigDecimal.ONE)) { MwBox mwBox = new MwBox(); - mwBox.setBoxNumber(i.toString()); + // 每次生成编号时,确保其为11位 + String formattedBoxNumber = String.format("%011d", i.longValue()); + mwBox.setBoxNumber(formattedBoxNumber); mwBox.setStatus(BoxStatusEnum.NORMAL.getCode()); boxList.add(mwBox); } @@ -118,8 +120,15 @@ */ @Override @Transactional(rollbackFor = Exception.class) - public void editBatch(List<MwBoxDTO> dtoList) { - List<MwBox> mwBoxes = BeanUtils.copyToList(dtoList, MwBox.class); - this.updateBatchById(mwBoxes); + public void editBatch(MwBoxDTO dto) { + List<Long> idList = dto.getIdList(); + List<MwBox> boxList = idList.stream().map(id -> { + MwBox mwBox = new MwBox(); + mwBox.setId(id); + mwBox.setStatus(dto.getStatus()); + mwBox.setRemark(dto.getRemark()); + return mwBox; + }).collect(Collectors.toList()); + this.updateBatchById(boxList); } } -- Gitblit v1.7.1