package com.yuanchu.limslaboratory.service.impl; 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.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); } }