From ebf906dbd401fac43a1ea25a1b1a9fef57830cb6 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期二, 08 四月 2025 11:41:44 +0800 Subject: [PATCH] art: 设备管理-周保-作废,批量作废 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java | 71 +++++++++++++++++++++++++++++++++++ 1 files changed, 70 insertions(+), 1 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java index 8a2c3d3..c8c4bcb 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java @@ -2,7 +2,6 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -190,6 +189,64 @@ } @Override + @Transactional(rollbackFor = Exception.class) + public boolean upgradeMaintenanceStandard(EamMaintenanceStandardRequest standardRequest) { + EamMaintenanceStandard entity = eamMaintenanceStandardMapper.selectById(standardRequest.getId()); + if(entity == null){ + throw new JeecgBootException("缂栬緫鐨勬暟鎹凡鍒犻櫎锛岃鍒锋柊閲嶈瘯锛�"); + } + entity.setStandardStatus(MaintenanceStandardStatusEnum.ABOLISH.name()); + //鍘熸潵鐨勪綔搴� + eamMaintenanceStandardMapper.updateById(entity); + + //鏂板涓�涓増鏈� + EamMaintenanceStandard newEntity = new EamMaintenanceStandard(); + newEntity.setStandardCode(standardRequest.getStandardCode()); + newEntity.setStandardName(standardRequest.getStandardName()); + newEntity.setMaintenanceCategory(standardRequest.getMaintenanceCategory()); + newEntity.setMaintenancePeriod(standardRequest.getMaintenancePeriod()); + newEntity.setInitialDate(standardRequest.getInitialDate()); + newEntity.setFileCode(standardRequest.getFileCode()); + newEntity.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name()); + //鐗堟湰閫掑 + newEntity.setStandardVersion(entity.getStandardVersion() + 1); + //璁惧澶勭悊 + newEntity.setEquipmentId(standardRequest.getEquipmentId()); + //鍒犻櫎鏍囪 + newEntity.setDelFlag(CommonConstant.DEL_FLAG_0); + //閲嶅鎬ф牎楠� + EamMaintenanceStandard exist = checkDuplicate(newEntity.getEquipmentId(), newEntity.getMaintenanceCategory()); + if(exist != null){ + throw new JeecgBootException("璁惧鏍囧噯宸插瓨鍦紝涓嶈兘閲嶅娣诲姞锛�"); + } + //澶勭悊闄勪欢 + if(CollectionUtil.isNotEmpty(standardRequest.getFileList())) { + FileUploadResult fileUploadResult = standardRequest.getFileList().get(0); + ObjectMapper mapper = new ObjectMapper(); + try { + String referenceFile = mapper.writeValueAsString(fileUploadResult); + newEntity.setReferenceFile(referenceFile); + } catch (JsonProcessingException e) { + log.error("JSON杞崲澶辫触锛�" + e.getMessage(), e); + } + } + eamMaintenanceStandardMapper.insert(newEntity); + //澶勭悊鏄庣粏鏁版嵁 + if(CollectionUtil.isNotEmpty(standardRequest.getTableDetailList())) { + standardRequest.getTableDetailList().forEach(tableDetail -> { + tableDetail.setId(null); + tableDetail.setCreateBy(null); + tableDetail.setUpdateBy(null); + tableDetail.setCreateTime(null); + tableDetail.setUpdateTime(null); + tableDetail.setStandardId(newEntity.getId()); + }); + eamMaintenanceStandardDetailService.saveBatch(standardRequest.getTableDetailList()); + } + return true; + } + + @Override public EamMaintenanceStandard checkDuplicate(String equipmentId, String maintenanceCategory) { LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EamMaintenanceStandard::getEquipmentId, equipmentId); @@ -204,4 +261,16 @@ } return list.get(0); } + + /** + * 鏌ヨ鏍囧噯鍒楄〃-鍓嶇灞曠ず璇ョ敤鎴锋嫢鏈夌殑鏍囧噯 + * @param keyword 璁惧缂栧彿 + * @param maintenanceCategory 淇濆吇绫诲瀷 + * @return + */ + @Override + public List<EamMaintenanceStandard> queryListBykeywordAndCategory(String keyword, String maintenanceCategory){ + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + return eamMaintenanceStandardMapper.queryListBykeywordAndCategory(loginUser.getId(),keyword, maintenanceCategory); + } } -- Gitblit v1.9.3