package com.yssh.service; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.Map; import com.yssh.config.InitConfig; import com.yssh.utils.DateUtils; import org.springframework.stereotype.Service; import com.yssh.mapper.FeedbackMapper; import com.yssh.mapper.ThuAccuracyMapper; import javax.annotation.Resource; @Service public class CountService { @Resource private ThuAccuracyMapper thuAccuracyMapper; @Resource private FeedbackMapper feedbackMapper; public Map selectAccuracyAvg() { Map result = new HashMap(); Date nowDate = InitConfig.getDate(); Long beginTime = Long.parseLong(DateUtils.parseDateToStr(DateUtils.YYYYMMDDHH, DateUtils.getAPeriodOfTime(nowDate, -7, Calendar.DATE))); Double thuAccuracy = thuAccuracyMapper.selectSevenDayAccuracyAvg(beginTime); Double tempForecast = thuAccuracy == null ? 0.0 : thuAccuracy; result.put("forecastRate", new BigDecimal(tempForecast).setScale(2, RoundingMode.HALF_UP).doubleValue()); Double practical = feedbackMapper.selectSevenDayAccuracyAvg(beginTime); Double tempPractical = practical == null ? 0.0 : practical; result.put("practicalRate", new BigDecimal(tempPractical * 100).setScale(2, RoundingMode.HALF_UP).doubleValue()); return result; } }