package com.punchsettle.server.atomic.service.impl; import com.punchsettle.server.atomic.entity.StatPiTaskMonth; import com.punchsettle.server.atomic.mapper.StatPiTaskMonthMapper; import com.punchsettle.server.atomic.service.IStatPiTaskMonthService; import com.punchsettle.server.common.utils.Assert; import com.punchsettle.server.pojo.punchIn.PiStatsMonthQuery; import com.punchsettle.server.utiis.WeekendUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import tk.mybatis.mapper.weekend.Weekend; import tk.mybatis.mapper.weekend.WeekendCriteria; import java.util.List; import java.util.Objects; /** * @author tyuio * @version 1.0.0 * @date 2025/4/8 10:52 * @description 打卡任务月数据统计 service */ @Service public class StatPiTaskMonthServiceImpl implements IStatPiTaskMonthService { @Autowired private StatPiTaskMonthMapper statPiTaskMonthMapper; @Override public List queryByCondition(PiStatsMonthQuery piStatsMonthQuery) { Assert.isNull(piStatsMonthQuery); Weekend weekend = WeekendUtils.createExcludeProperties(StatPiTaskMonth.class); WeekendCriteria criteria = weekend.weekendCriteria(); if (!CollectionUtils.isEmpty(piStatsMonthQuery.getTaskUniqueIds())) { criteria.andIn(StatPiTaskMonth::getTaskUniqueId, piStatsMonthQuery.getTaskUniqueIds()); } if (Objects.nonNull(piStatsMonthQuery.getStatsTime())) { criteria.andEqualTo(StatPiTaskMonth::getStatTime, piStatsMonthQuery.getStatsTime()); } return statPiTaskMonthMapper.selectByExample(weekend); } @Override public void insertList(List statPiTaskMonthList) { Assert.notEmpty(statPiTaskMonthList); statPiTaskMonthMapper.insertList(statPiTaskMonthList); } }