From 453f63fd6cd6466222304df619e62b3a5667ca68 Mon Sep 17 00:00:00 2001 From: zhuguifei <zhuguifei@zhuguifeideiMac.local> Date: 星期二, 05 八月 2025 13:56:47 +0800 Subject: [PATCH] 修复0730测试问题 --- eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStServiceImpl.java | 90 +++++++++++++++++++++++++++++++++++++-------- 1 files changed, 74 insertions(+), 16 deletions(-) diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStServiceImpl.java index 3ba819c..aaf5f73 100644 --- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStServiceImpl.java +++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStServiceImpl.java @@ -4,6 +4,7 @@ import lombok.SneakyThrows; import org.dromara.common.core.constant.DictConstants; import org.dromara.common.core.domain.R; +import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -12,10 +13,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; +import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.eims.domain.EimsEqu; import org.dromara.eims.domain.EimsMaintOrder; import org.dromara.eims.domain.EimsMaintSt; import org.dromara.eims.domain.bo.EimsMaintStBo; +import org.dromara.eims.domain.bo.EimsMultipleMaintStBo; import org.dromara.eims.domain.vo.EimsMaintOrderVo; import org.dromara.eims.domain.vo.EimsMaintStVo; import org.dromara.eims.mapper.EimsEquMapper; @@ -79,13 +82,13 @@ List<EimsMaintOrderVo> orderList = orderMapper.selectVoList(orderLqw); // TODO 鏍规嵁瀛楀吀maint_order_status Map<String, Long> cMap = orderList.stream() - .filter(order -> List.of("0", "1", "2", "3").contains(order.getStatus())) + .filter(order -> List.of("0", "1", "2").contains(order.getStatus())) .collect(Collectors.groupingBy(EimsMaintOrderVo::getStatus, Collectors.counting())); stVo.setOrderCount(orderList.size()); stVo.setDbyCount(cMap.getOrDefault("0", 0L).intValue()); - stVo.setByCount(cMap.getOrDefault("1", 0L).intValue()); - stVo.setDyzCount(cMap.getOrDefault("2", 0L).intValue()); - stVo.setWcCount(cMap.getOrDefault("3", 0L).intValue()); + stVo.setDyzCount(cMap.getOrDefault("1", 0L).intValue()); + stVo.setWcCount(cMap.getOrDefault("2", 0L).intValue()); + } @@ -123,13 +126,12 @@ List<EimsMaintOrderVo> orderList = orderMapper.selectVoList(orderLqw); // TODO 鏍规嵁瀛楀吀maint_order_status Map<String, Long> cMap = orderList.stream() - .filter(order -> List.of("0", "1", "2", "3").contains(order.getStatus())) + .filter(order -> List.of("0", "1", "2").contains(order.getStatus())) .collect(Collectors.groupingBy(EimsMaintOrderVo::getStatus, Collectors.counting())); stVo.setOrderCount(orderList.size()); stVo.setDbyCount(cMap.getOrDefault("0", 0L).intValue()); - stVo.setByCount(cMap.getOrDefault("1", 0L).intValue()); - stVo.setDyzCount(cMap.getOrDefault("2", 0L).intValue()); - stVo.setWcCount(cMap.getOrDefault("3", 0L).intValue()); + stVo.setDyzCount(cMap.getOrDefault("1", 0L).intValue()); + stVo.setWcCount(cMap.getOrDefault("2", 0L).intValue()); } @@ -203,22 +205,78 @@ * @return 鏄惁淇敼鎴愬姛 */ @Override + @Transactional public Boolean updateByBo(EimsMaintStBo bo) { EimsMaintSt update = MapstructUtils.convert(bo, EimsMaintSt.class); - if(bo.getVerifyUser()!=null){ - EimsMaintSt eimsMaintSt = baseMapper.selectById(bo.getId()); - String status = eimsMaintSt.getStatus(); - if(status==null || status.equals(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.N)){ - if(update.getVerifyTime()==null) update.setStatus(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.Y); - if(update.getVerifyTime()==null) update.setVerifyTime(new Date()); - } - } +// if(bo.getVerifyUser()!=null){ +// EimsMaintSt eimsMaintSt = baseMapper.selectById(bo.getId()); +// String status = eimsMaintSt.getStatus(); +// if(status==null || status.equals(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.N)){ +// if(update.getVerifyTime()==null) update.setStatus(DictConstants.MAINT_ORDER_ST_STATUS_DETAIL.Y); +// if(update.getVerifyTime()==null) update.setVerifyTime(new Date()); +// } +// } + + if(update.getVerifyTime()==null) update.setVerifyTime(new Date()); + //宸ュ崟姹囨�诲畬鎴愰渶鍚屾鏇存柊st涓嬪瓙宸ュ崟 + + EimsMaintStVo st = baseMapper.selectVoById(bo.getId()); + + Long equId = st.getEquId(); + LambdaQueryWrapper<EimsMaintOrder> wrapper = Wrappers.lambdaQuery(); + wrapper.eq(EimsMaintOrder::getEquId,equId); + wrapper.eq(EimsMaintOrder::getPlanTime,st.getPlanTime()); + List<EimsMaintOrder> eimsMaintOrderList = orderMapper.selectList(wrapper); + // st涓嬪瓙宸ュ崟鎵�鏈夌姸鎬佽缃负3-宸插畬鎴� + eimsMaintOrderList.forEach(order -> { + order.setStatus(bo.getStatus()); + if(order.getStatus().equals("1")){ + order.setMaintUser(LoginHelper.getUserId()); + }else if(order.getStatus().equals("2")){ + order.setVerifyUser(LoginHelper.getUserId()); + } + }); + orderMapper.updateBatchById(eimsMaintOrderList); + + + + validEntityBeforeSave(update); return baseMapper.updateById(update) > 0; } + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean updateBatchByBo(EimsMultipleMaintStBo bo) { + List<EimsMaintStBo> maintStBoList = bo.getMultipleMaintStBoList(); + if(maintStBoList==null || maintStBoList.isEmpty())return true; + List<EimsMaintSt> maintStList = MapstructUtils.convert(maintStBoList, EimsMaintSt.class); + baseMapper.updateBatchById(maintStList); + // 鏇存柊姹囨�讳笅瀛愬伐鍗� + List<String> maintCodeList = maintStBoList.stream() + .map(EimsMaintStBo::getMaintCode) + .toList(); + + for (int i = 0; i < maintCodeList.size(); i++) { + String maintCode = maintCodeList.get(i); + String[] split = maintCode.split("_"); + LambdaQueryWrapper<EimsMaintOrder> wrapper = Wrappers.lambdaQuery(); + wrapper.eq(EimsMaintOrder::getEquId,split[0]); + wrapper.eq(EimsMaintOrder::getPlanTime,split[1]); + List<EimsMaintOrder> eimsMaintOrderList = orderMapper.selectList(wrapper); + // st涓嬪瓙宸ュ崟鎵�鏈夌姸鎬佽缃负3-宸插畬鎴� + eimsMaintOrderList.forEach(order -> { + order.setStatus("2"); + order.setVerifyUser(LoginHelper.getUserId()); + }); + orderMapper.updateBatchById(eimsMaintOrderList); + } + + return true; + } + /** * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙 */ -- Gitblit v1.9.3