package com.punchsettle.server.atomic.service.impl; import java.util.List; import java.util.Objects; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; import com.punchsettle.server.atomic.entity.PunchInSettlement; import com.punchsettle.server.atomic.mapper.PunchInSettlementMapper; import com.punchsettle.server.atomic.service.IPunchInSettlementService; import com.punchsettle.server.common.utils.Assert; import com.punchsettle.server.dto.settle.SettleQuery; import tk.mybatis.mapper.weekend.Weekend; import tk.mybatis.mapper.weekend.WeekendCriteria; /** * @author tyuio * @version 1.0.0 * @description 打卡任务结算表 * @date 2024/11/26 12:39 */ @Service public class PunchInSettlementServiceImpl implements IPunchInSettlementService { @Autowired private PunchInSettlementMapper punchInSettlementMapper; @Override public void batchInsert(List punchInSettlements) { Assert.notEmpty(punchInSettlements); punchInSettlementMapper.insertList(punchInSettlements); } @Override public List listByCondition(SettleQuery query) { Assert.isNull(query); Weekend weekend = Weekend.of(PunchInSettlement.class); WeekendCriteria criteria = weekend.weekendCriteria(); if (StringUtils.hasText(query.getStartDate()) && StringUtils.hasText(query.getEndDate())) { criteria.andBetween(PunchInSettlement::getSettlementTime, query.getStartDate(), query.getEndDate()); } if (!Objects.isNull(query.getUserId())) { criteria.andEqualTo(PunchInSettlement::getUserId, query.getUserId()); } return punchInSettlementMapper.selectByExample(weekend); } }