XiaoRuby
2023-07-25 653cbd6bc42565dbdcc7fdbe652874738b1908df
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MetricalInformationServiceImpl.java
@@ -1,10 +1,20 @@
package com.yuanchu.limslaboratory.service.impl;
import com.yuanchu.limslaboratory.entity.MetricalInformation;
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;
/**
 * <p>
@@ -17,4 +27,44 @@
@Service
public class MetricalInformationServiceImpl extends ServiceImpl<MetricalInformationMapper, MetricalInformation> 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);
        }
        return metricalInformationMapper.insert(metricalInformation);
    }
    @Override
    public List<Map<String, Object>> getListEquipmentPointInformation() {
        return metricalInformationMapper.getListEquipmentPointInformation();
    }
    @Override
    public Integer deleteMetricalInformation(Integer metricalInformationId) {
        LambdaUpdateWrapper<MetricalInformation> 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<MetricalInformation> 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);
    }
}