package cn.fw.morax.service.data.kpi.impl; import cn.fw.morax.common.constant.Constant; import cn.fw.morax.common.utils.PublicUtil; import cn.fw.morax.dao.kpi.KpiGroupIndicatorPreconditionDao; import cn.fw.morax.domain.db.kpi.KpiGroupIndicatorPrecondition; import cn.fw.morax.domain.enums.TargetTypeEnum; import cn.fw.morax.domain.vo.kpi.KpiGroupIndicatorPreconditionVO; import cn.fw.morax.service.data.kpi.KpiGroupIndicatorPreconditionService; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; import java.time.LocalDate; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** *

* 绩效组指标条件 服务实现类 *

* * @author jiangchao * @since 2022-12-05 */ @Service public class KpiGroupIndicatorPreconditionServiceImpl extends ServiceImpl implements KpiGroupIndicatorPreconditionService { @Override public Map> getKpiGroupIndicatorCondVO(Long kpiGroupId) { List preconditionVOS = this.baseMapper.getVos(kpiGroupId); preconditionVOS.stream().forEach(KpiGroupIndicatorPreconditionVO::processPercent); Map> indicatorCondMap = preconditionVOS.stream() .collect(Collectors.groupingBy(KpiGroupIndicatorPreconditionVO::getKpiGroupIndicatorId)); return indicatorCondMap; } @Override public List getHitVos(Long kpiGroupIndicatorId, Long userId, LocalDate localDate) { List preconditionVOs = this.baseMapper.getHitVos(kpiGroupIndicatorId, userId, localDate); preconditionVOs.stream().forEach(preconditionVO -> { preconditionVO.processPercent(); }); return preconditionVOs; } }