ISettleManager.java 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package com.punchsettle.server.service.manager;
  2. import java.time.LocalDate;
  3. import java.util.List;
  4. import com.punchsettle.server.constant.PunchInSettleTypeEnum;
  5. import com.punchsettle.server.dto.settle.SettleDto;
  6. import com.punchsettle.server.dto.settle.SettleQuery;
  7. import com.punchsettle.server.dto.settle.SettleRequest;
  8. /**
  9. * @author tyuio
  10. * @version 1.0.0
  11. * @description 结算服务类
  12. * @date 2024/12/12 22:23
  13. */
  14. public interface ISettleManager {
  15. /**
  16. * 打卡结算
  17. * @param settleType 结算类型
  18. * @param settleDate 结算日期
  19. * @param userIds 待结算的用户
  20. * @param punchInIds 待结算用户的打卡任务ID
  21. */
  22. void settleHandler(PunchInSettleTypeEnum settleType, LocalDate settleDate, List<Long> userIds, List<Long> punchInIds);
  23. /**
  24. * 手动结算
  25. * @param settleRequest
  26. */
  27. void manualSettle(SettleRequest settleRequest);
  28. /**
  29. * 查询结算
  30. * @param query
  31. * @return
  32. */
  33. List<SettleDto> querySettle(SettleQuery query);
  34. }