package com.yuanchu.limslaboratory.service.impl; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.yuanchu.limslaboratory.pojo.MetricalInformation; import com.yuanchu.limslaboratory.mapper.MetricalInformationMapper; import com.yuanchu.limslaboratory.pojo.dto.UpdatedMetricalInformationDto; import com.yuanchu.limslaboratory.service.MetricalInformationService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.limslaboratory.utils.FileSaveUtil; import com.yuanchu.limslaboratory.utils.MyUtil; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.util.List; import java.util.Map; /** *

* 服务实现类 *

* * @author 江苏鵷雏网络科技有限公司 * @since 2023-07-20 */ @Service public class MetricalInformationServiceImpl extends ServiceImpl implements MetricalInformationService { @Resource private MetricalInformationMapper metricalInformationMapper; @Override public Integer addEquipmentPointInformation(MetricalInformation metricalInformation, MultipartFile file) { if (!ObjectUtils.isEmpty(file)){ String fileName = FileSaveUtil.StoreFile(file); metricalInformation.setFilePath(fileName); } metricalInformation.setCode(MyUtil.getTimeSixNumberCode("METRICALCODE","METRICALCODE")); return metricalInformationMapper.insert(metricalInformation); } @Override public List> getListEquipmentPointInformation(String InstrumentId) { return metricalInformationMapper.getListEquipmentPointInformation(InstrumentId); } @Override public Integer deleteMetricalInformation(Integer metricalInformationId) { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(MetricalInformation::getId, metricalInformationId); updateWrapper.set(MetricalInformation::getState, 0); return metricalInformationMapper.update(new MetricalInformation(), updateWrapper); } @Override public Integer updateMetricalInformation(MetricalInformation metricalInformation, MultipartFile file) { if (!ObjectUtils.isEmpty(file)){ String fileName = FileSaveUtil.StoreFile(file); metricalInformation.setFilePath(fileName); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(MetricalInformation::getId, metricalInformation.getId()); wrapper.select(MetricalInformation::getFilePath); MetricalInformation metricalInformation1 = metricalInformationMapper.selectOne(wrapper); if (!ObjectUtils.isEmpty(metricalInformation1.getFilePath())){ FileSaveUtil.DeleteFile(metricalInformation1.getFilePath()); } } return metricalInformationMapper.updateById(metricalInformation); } @Override public boolean updateMetricalInformationInfo(UpdatedMetricalInformationDto dto) { System.out.println(dto); MetricalInformation info = new MetricalInformation(); info.setId(dto.getId()); info.setRemarks(dto.getRemarks()); info.setPerformanceIndex(dto.getPerformanceIndex()); info.setResult(dto.getResult()); info.setUncertainty(dto.getUncertainty()); info.setEndDate(dto.getDate()); info.setUpdateTime(DateUtil.date()); System.out.println(info); //文件滤过 return metricalInformationMapper.updateById(info)>0; } }