package com.aps.core.service.impl; import cn.hutool.core.util.IdUtil; import com.aps.common.core.utils.DateUtils; import com.aps.common.core.utils.poi.ExcelUtil; import com.aps.common.security.utils.DictUtils; import com.aps.common.security.utils.SecurityUtils; import com.aps.core.domain.ApsGasPipelineMo; import com.aps.core.mapper.ApsGasPipelineMoMapper; import com.aps.core.service.IApsGasPipelineMoService; import lombok.SneakyThrows; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import java.util.List; /** * 管路手工气体工单数据Service业务层处理 * * @author ruoyi * @date 2025-05-19 */ @Service public class ApsGasPipelineMoServiceImpl implements IApsGasPipelineMoService { @Autowired private ApsGasPipelineMoMapper apsGasPipelineMoMapper; /** * 查询管路手工气体工单数据 * * @param id 管路手工气体工单数据主键 * @return 管路手工气体工单数据 */ @Override public ApsGasPipelineMo selectApsGasPipelineMoById(Long id) { return apsGasPipelineMoMapper.selectApsGasPipelineMoById(id); } /** * 查询管路手工气体工单数据列表 * * @param apsGasPipelineMo 管路手工气体工单数据 * @return 管路手工气体工单数据 */ @Override public List selectApsGasPipelineMoList(ApsGasPipelineMo apsGasPipelineMo) { return apsGasPipelineMoMapper.selectApsGasPipelineMoList(apsGasPipelineMo); } /** * 新增管路手工气体工单数据 * * @param apsGasPipelineMo 管路手工气体工单数据 * @return 结果 */ @Override public int insertApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo) { apsGasPipelineMo.setCreateTime(DateUtils.getNowDate()); apsGasPipelineMo.setId(IdUtil.getSnowflakeNextId()); apsGasPipelineMo.setCreateBy(SecurityUtils.getUsername()); return apsGasPipelineMoMapper.insertApsGasPipelineMo(apsGasPipelineMo); } /** * 修改管路手工气体工单数据 * * @param apsGasPipelineMo 管路手工气体工单数据 * @return 结果 */ @Override public int updateApsGasPipelineMo(ApsGasPipelineMo apsGasPipelineMo) { apsGasPipelineMo.setUpdateTime(DateUtils.getNowDate()); return apsGasPipelineMoMapper.updateApsGasPipelineMo(apsGasPipelineMo); } /** * 批量删除管路手工气体工单数据 * * @param ids 需要删除的管路手工气体工单数据主键 * @return 结果 */ @Override public int deleteApsGasPipelineMoByIds(Long[] ids) { return apsGasPipelineMoMapper.deleteApsGasPipelineMoByIds(ids); } /** * 删除管路手工气体工单数据信息 * * @param id 管路手工气体工单数据主键 * @return 结果 */ @Override public int deleteApsGasPipelineMoById(Long id) { return apsGasPipelineMoMapper.deleteApsGasPipelineMoById(id); } @SneakyThrows @Transactional(rollbackFor = Exception.class) @Override public int batchInsertGasPipelineMo(MultipartFile file) { ExcelUtil util = new ExcelUtil<>(ApsGasPipelineMo.class); List tempList = util.importExcel(file.getInputStream()); DictUtils.CacheValue cacheValue = DictUtils.getCacheValue("aps_factory"); tempList.forEach(apsGasPipelineMo -> { apsGasPipelineMo.setId(IdUtil.getSnowflakeNextId()); apsGasPipelineMo.setFactory(cacheValue.get(apsGasPipelineMo.getFactory())); apsGasPipelineMo.setCreateBy(SecurityUtils.getUsername()); apsGasPipelineMo.setCreateTime(DateUtils.getNowDate()); }); if (!tempList.isEmpty()) { apsGasPipelineMoMapper.deleteAll(); apsGasPipelineMoMapper.insert(tempList); } return tempList.size(); } }