package com.aps.core.service.impl; import java.util.List; import com.aps.common.core.utils.DateUtils; import com.aps.common.security.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.aps.core.mapper.ApsAbnormalProcessAnalysisMapper; import com.aps.core.domain.ApsAbnormalProcessAnalysis; import com.aps.core.service.IApsAbnormalProcessAnalysisService; import org.springframework.transaction.annotation.Transactional; /** * 工序异常分析Service业务层处理 * * @author zhl * @date 2025-04-21 */ @Service public class ApsAbnormalProcessAnalysisServiceImpl implements IApsAbnormalProcessAnalysisService { @Autowired private ApsAbnormalProcessAnalysisMapper apsAbnormalProcessAnalysisMapper; /** * 查询工序异常分析 * * @param id 工序异常分析主键 * @return 工序异常分析 */ @Override public ApsAbnormalProcessAnalysis selectApsAbnormalProcessAnalysisById(Long id) { return apsAbnormalProcessAnalysisMapper.selectApsAbnormalProcessAnalysisById(id); } /** * 查询工序异常分析列表 * * @param apsAbnormalProcessAnalysis 工序异常分析 * @return 工序异常分析 */ @Override public List selectApsAbnormalProcessAnalysisList(ApsAbnormalProcessAnalysis apsAbnormalProcessAnalysis) { return apsAbnormalProcessAnalysisMapper.selectApsAbnormalProcessAnalysisList(apsAbnormalProcessAnalysis); } /** * 新增工序异常分析 * * @param apsAbnormalProcessAnalysis 工序异常分析 * @return 结果 */ @Override public int insertApsAbnormalProcessAnalysis(ApsAbnormalProcessAnalysis apsAbnormalProcessAnalysis) { apsAbnormalProcessAnalysis.setCreateTime(DateUtils.getNowDate()); return apsAbnormalProcessAnalysisMapper.insertApsAbnormalProcessAnalysis(apsAbnormalProcessAnalysis); } /** * 修改工序异常分析 * * @param apsAbnormalProcessAnalysis 工序异常分析 * @return 结果 */ @Override public int updateApsAbnormalProcessAnalysis(ApsAbnormalProcessAnalysis apsAbnormalProcessAnalysis) { return apsAbnormalProcessAnalysisMapper.updateApsAbnormalProcessAnalysis(apsAbnormalProcessAnalysis); } /** * 批量删除工序异常分析 * * @param ids 需要删除的工序异常分析主键 * @return 结果 */ @Override public int deleteApsAbnormalProcessAnalysisByIds(Long[] ids) { return apsAbnormalProcessAnalysisMapper.deleteApsAbnormalProcessAnalysisByIds(ids); } /** * 删除工序异常分析信息 * * @param id 工序异常分析主键 * @return 结果 */ @Override public int deleteApsAbnormalProcessAnalysisById(Long id) { return apsAbnormalProcessAnalysisMapper.deleteApsAbnormalProcessAnalysisById(id); } /** * 本方法用于从数据库中选择异常信息,并批量保存这些信息 * 主要目的是处理异常信息的批量保存,以提高数据处理效率 */ @Transactional @Override public int batchSaveAbnormalInfo() { String username = SecurityUtils.getUsername(); /*先删除旧数据*/ apsAbnormalProcessAnalysisMapper.batchRemoveAbnormalInfo(); // 选择数据库中的异常信息 List list = apsAbnormalProcessAnalysisMapper.selectAbnormalInfoFromStat(); // 批量保存选中的异常信息 if (!list.isEmpty()) { //遍历list 更新 每条记录的 create_by 字段 list.forEach(item -> item.setCreateBy(username)); apsAbnormalProcessAnalysisMapper.batchSaveAbnormalInfo(list); } return list.size(); } }