package com.aps.core.service.impl; import java.util.List; import com.aps.common.core.utils.DateUtils; import com.aps.common.core.utils.uuid.IdUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.aps.core.mapper.ApsWeldSeamStatisticsMapper; import com.aps.core.domain.ApsWeldSeamStatistics; import com.aps.core.service.IApsWeldSeamStatisticsService; /** * 焊缝统计Service业务层处理 * * @author wwj * @date 2025-04-09 */ @Service public class ApsWeldSeamStatisticsServiceImpl implements IApsWeldSeamStatisticsService { @Autowired private ApsWeldSeamStatisticsMapper apsWeldSeamStatisticsMapper; /** * 查询焊缝统计 * * @param id 焊缝统计主键 * @return 焊缝统计 */ @Override public ApsWeldSeamStatistics selectApsWeldSeamStatisticsById(String id) { return apsWeldSeamStatisticsMapper.selectApsWeldSeamStatisticsById(id); } /** * 查询焊缝统计列表 * * @param apsWeldSeamStatistics 焊缝统计 * @return 焊缝统计 */ @Override public List selectApsWeldSeamStatisticsList(ApsWeldSeamStatistics apsWeldSeamStatistics) { return apsWeldSeamStatisticsMapper.selectApsWeldSeamStatisticsList(apsWeldSeamStatistics); } /** * 新增焊缝统计 * * @param apsWeldSeamStatistics 焊缝统计 * @return 结果 */ @Override public int insertApsWeldSeamStatistics(ApsWeldSeamStatistics apsWeldSeamStatistics) { apsWeldSeamStatistics.setId(IdUtils.fastUUID()); apsWeldSeamStatistics.setCreateTime(DateUtils.getNowDate()); return apsWeldSeamStatisticsMapper.insertApsWeldSeamStatistics(apsWeldSeamStatistics); } /** * 修改焊缝统计 * * @param apsWeldSeamStatistics 焊缝统计 * @return 结果 */ @Override public int updateApsWeldSeamStatistics(ApsWeldSeamStatistics apsWeldSeamStatistics) { apsWeldSeamStatistics.setUpdateTime(DateUtils.getNowDate()); //预留紧急订单产出是否为空 if (apsWeldSeamStatistics.getReserveEmergencyOrderOutput() != null) { apsWeldSeamStatistics.setTotal(apsWeldSeamStatistics.getPipingOrderRequirement() + apsWeldSeamStatistics.getPipingPredictionRequirement() + apsWeldSeamStatistics.getGasOrderRequirement() + apsWeldSeamStatistics.getGasPredictionRequirement() + apsWeldSeamStatistics.getReserveEmergencyOrderOutput()); //天数不为空计算需求日焊缝 if(apsWeldSeamStatistics.getDays()!=null){ // 转换为 double 类型进行除法运算 double result = (double) apsWeldSeamStatistics.getTotal() / apsWeldSeamStatistics.getDays(); // 四舍五入 long roundedResult = Math.round(result); apsWeldSeamStatistics.setRequirementDayWeldSeam(roundedResult); //判断生产日焊缝不为空计算是否满足 if(apsWeldSeamStatistics.getProductionDayWeldSeam()!=null){ if(apsWeldSeamStatistics.getProductionDayWeldSeam()>=apsWeldSeamStatistics.getRequirementDayWeldSeam()){ apsWeldSeamStatistics.setIsSatisfy("是"); }else{ apsWeldSeamStatistics.setIsSatisfy("否"); } } } } return apsWeldSeamStatisticsMapper.updateApsWeldSeamStatistics(apsWeldSeamStatistics); } /** * 批量删除焊缝统计 * * @param ids 需要删除的焊缝统计主键 * @return 结果 */ @Override public int deleteApsWeldSeamStatisticsByIds(String[] ids) { return apsWeldSeamStatisticsMapper.deleteApsWeldSeamStatisticsByIds(ids); } /** * 删除焊缝统计信息 * * @param id 焊缝统计主键 * @return 结果 */ @Override public int deleteApsWeldSeamStatisticsById(String id) { return apsWeldSeamStatisticsMapper.deleteApsWeldSeamStatisticsById(id); } }