IPunchInManager.java 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. package com.punchsettle.server.service.manager;
  2. import java.util.List;
  3. import com.punchsettle.server.atomic.entity.PiTask;
  4. import com.punchsettle.server.atomic.entity.PiTaskHistory;
  5. import com.punchsettle.server.pojo.punchIn.PiTaskHistoryStatVO;
  6. import com.punchsettle.server.pojo.punchIn.PiTaskRequest;
  7. import com.punchsettle.server.pojo.punchIn.PiTaskSimpleVO;
  8. import com.punchsettle.server.pojo.punchIn.PiTaskStatQuery;
  9. import com.punchsettle.server.pojo.punchIn.PiTaskStatVO;
  10. import com.punchsettle.server.pojo.punchIn.PiTaskToDoVO;
  11. import com.punchsettle.server.pojo.punchIn.PiTaskVO;
  12. import com.punchsettle.server.pojo.punchIn.PunchInHistoryVO;
  13. import com.punchsettle.server.pojo.punchIn.PunchInRequest;
  14. /**
  15. * @author tyuio
  16. * @version 1.0.0
  17. * @description 打卡结算任务 服务类
  18. * @date 2024/11/25 15:00
  19. */
  20. public interface IPunchInManager {
  21. /**
  22. * 查询待办打卡任务列表
  23. * @param currentUserId 当前用户id
  24. * @return
  25. */
  26. List<PiTaskToDoVO> queryToDoList(Long currentUserId);
  27. /**
  28. * 查询打卡任务及其打卡记录
  29. * @return
  30. */
  31. List<PiTaskSimpleVO> queryTaskList();
  32. /**
  33. * 根据ID获取打卡任务
  34. */
  35. PiTaskVO queryTask(Long id);
  36. /**
  37. * 保存打卡任务
  38. * @param request 打卡任务
  39. */
  40. void saveTask(PiTaskRequest request);
  41. /**
  42. * 根据主键删除打卡任务
  43. * @param id 主键
  44. */
  45. void deleteTask(Long id);
  46. /**
  47. * 打卡
  48. * @param request
  49. */
  50. void doPunchIn(PunchInRequest request);
  51. /**
  52. * 归档打卡任务
  53. * @param punchInId
  54. */
  55. void archiveTask(Long punchInId);
  56. /**
  57. * 撤销误打卡
  58. * @param id 打卡任务
  59. */
  60. void revokePunchIn(Long id);
  61. /**
  62. * 查询统计数据
  63. * @param query
  64. * @return
  65. */
  66. PiTaskStatVO queryStat(PiTaskStatQuery query);
  67. /**
  68. * 查询打卡历史
  69. */
  70. PunchInHistoryVO queryPunchInHistory(String punchInDate);
  71. /**
  72. * 从缓存获取指定用户的任务列表
  73. * @param userId
  74. * @return
  75. */
  76. List<PiTask> getTaskListInCache(Long userId);
  77. /**
  78. * 从缓存获取指定用户的打卡记录
  79. * @param userId 用户ID
  80. * @param punchInDate 打卡日期
  81. * @return
  82. */
  83. List<PiTaskHistory> getTaskHistoryListInCache(Long userId, String punchInDate);
  84. /**
  85. * 清除缓存
  86. * @param userId
  87. * @param deleteHistory 删除打卡记录缓存
  88. * @param deleteStat 删除统计数据缓存
  89. */
  90. void clearCache(Long userId, boolean deleteHistory, boolean deleteStat);
  91. }