PunchInSettlementServiceImpl.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package com.punchsettle.server.atomic.service.impl;
  2. import java.util.List;
  3. import java.util.Objects;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.stereotype.Service;
  6. import org.springframework.util.StringUtils;
  7. import com.punchsettle.server.atomic.entity.PunchInSettlement;
  8. import com.punchsettle.server.atomic.mapper.PunchInSettlementMapper;
  9. import com.punchsettle.server.atomic.service.IPunchInSettlementService;
  10. import com.punchsettle.server.common.utils.Assert;
  11. import com.punchsettle.server.dto.settle.SettleQuery;
  12. import tk.mybatis.mapper.weekend.Weekend;
  13. import tk.mybatis.mapper.weekend.WeekendCriteria;
  14. /**
  15. * @author tyuio
  16. * @version 1.0.0
  17. * @description 打卡任务结算表
  18. * @date 2024/11/26 12:39
  19. */
  20. @Service
  21. public class PunchInSettlementServiceImpl implements IPunchInSettlementService {
  22. @Autowired
  23. private PunchInSettlementMapper punchInSettlementMapper;
  24. @Override
  25. public void batchInsert(List<PunchInSettlement> punchInSettlements) {
  26. Assert.notEmpty(punchInSettlements);
  27. punchInSettlementMapper.insertList(punchInSettlements);
  28. }
  29. @Override
  30. public List<PunchInSettlement> listByCondition(SettleQuery query) {
  31. Assert.isNull(query);
  32. Weekend<PunchInSettlement> weekend = Weekend.of(PunchInSettlement.class);
  33. WeekendCriteria<PunchInSettlement, Object> criteria = weekend.weekendCriteria();
  34. if (StringUtils.hasText(query.getStartDate()) && StringUtils.hasText(query.getEndDate())) {
  35. criteria.andBetween(PunchInSettlement::getSettlementTime, query.getStartDate(), query.getEndDate());
  36. }
  37. if (!Objects.isNull(query.getUserId())) {
  38. criteria.andEqualTo(PunchInSettlement::getUserId, query.getUserId());
  39. }
  40. return punchInSettlementMapper.selectByExample(weekend);
  41. }
  42. }