IAuditTripResultService.java 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. package com.pavis.ctr.audit.project.service;
  2. import com.baomidou.mybatisplus.extension.service.IService;
  3. import com.pavis.ctr.audit.project.domain.AuditTripResult;
  4. import com.pavis.ctr.audit.project.domain.vo.AuditTripResultVo;
  5. import com.pavis.ctr.audit.web.domain.AjaxResult;
  6. import org.apache.ibatis.annotations.Param;
  7. import java.util.List;
  8. /**
  9. * 审核表 服务层
  10. */
  11. public interface IAuditTripResultService extends IService<AuditTripResult> {
  12. /**
  13. * 清空审核中的数据
  14. *
  15. * @param userId 用户id
  16. * @param username 用户名称
  17. */
  18. void emptyAuditedTrip(Long userId,String username);
  19. /**
  20. * 把当天新增待审核的数据添加到result中
  21. *
  22. * @return
  23. */
  24. public boolean insertTodayUploadId(List<String> uploadList);
  25. /**
  26. * 封装插入当天待审核upload_id
  27. *
  28. * @return
  29. */
  30. public boolean insertAuditUploadId();
  31. /**
  32. * 根据userId、时间区间查询审核完成记录
  33. *
  34. * @param userId
  35. * @param startTime
  36. * @param endTime
  37. * @return
  38. */
  39. public List<AuditTripResult> selectByUserId(@Param("userId") Long userId, @Param("startTime") String startTime, @Param("endTime") String endTime);
  40. /**
  41. * 根据userId、时间区间查询审核完成的小票相关信息
  42. *
  43. * @param userId
  44. * @param startTime
  45. * @param endTime
  46. * @return
  47. */
  48. public List<AuditTripResultVo> selectAuditedTrip(Long userId, String startTime, String endTime);
  49. /**
  50. * 根据userId查询审核完成的小票相关信息
  51. *
  52. * @param userId
  53. * @return
  54. */
  55. public List<AuditTripResultVo> selectAuditedTripByUserId(Long userId);
  56. /**
  57. * 根据userId,page和提取数量提取待审核的小票信息
  58. *
  59. * @param userId
  60. * @return
  61. */
  62. public List<AuditTripResultVo> selectAuditTrip(Integer getAuditNum, Long userId);
  63. /**
  64. * 根据userId,page和日期查询已经审核完成的小票信息
  65. * S
  66. *
  67. * @param userId
  68. * @return
  69. */
  70. public List<AuditTripResultVo> selectAuditedTripList(Long userId, String startTime, String endTime);
  71. /**
  72. * 根据userId,page和数量已经审核完成的小票信息
  73. *
  74. * @param getAuditNum
  75. * @param userId
  76. * @return
  77. */
  78. public List<AuditTripResultVo> selectAuditTripList(Integer getAuditNum, Long userId);
  79. /**
  80. * 根据uploadIdList查询审核记录
  81. *
  82. * @param uploadIdList
  83. * @return
  84. */
  85. public List<AuditTripResult> selectByUserIdList(List<String> uploadIdList, String listUUID);
  86. /**
  87. * 给提取的数据赋值一个uuid
  88. *
  89. * @param listUUID
  90. * @param uploadIdList
  91. * @return
  92. */
  93. public boolean updateListUUID(List<String> uploadIdList, String listUUID);
  94. /**
  95. * 获取待审核数量
  96. * (1、audit_status=0
  97. * 2、userId不为空且audit_status=0)
  98. *
  99. * @param userId
  100. * @return
  101. */
  102. public int AuditResultNum(Long userId, Integer statusNum, String listUUID);
  103. /**
  104. * 获取 userId为空且audit_status=0
  105. */
  106. int AuditResultNotUserIdNum();
  107. /**
  108. * 提取待审核upload_id
  109. *
  110. * @param num
  111. * @return
  112. */
  113. public List<String> getAuditUploadId(Integer num, Long userId, Integer statusNum);
  114. /**
  115. * 更新提取到待审核的upload_id的user_id
  116. *
  117. * @param uploadIdList
  118. * @param userId
  119. * @return
  120. */
  121. public boolean updateAuditResUserId(List<String> uploadIdList, Long userId);
  122. /**
  123. * 更新提交的小票信息
  124. *
  125. * @param auditTripResultVo
  126. * @return
  127. */
  128. public boolean updateSubmitTripRes(AuditTripResultVo auditTripResultVo);
  129. /**
  130. * 更新提交小票的result
  131. *
  132. * @param auditTripResult
  133. * @return
  134. */
  135. public boolean updateSubmitTripResObj(AuditTripResult auditTripResult);
  136. /**
  137. * 根据uploadId提取审核完成的数据
  138. *
  139. * @param uploadId
  140. * @return
  141. */
  142. public AuditTripResultVo getResultVoByUploadId(String uploadId);
  143. /**
  144. * 根据upload查询result表
  145. *
  146. * @param uploadId
  147. * @return AuditTripResult
  148. */
  149. public AuditTripResult getResultByUploadId(String uploadId);
  150. /**
  151. * 封装提取待审核逻辑
  152. */
  153. public AjaxResult getAuditTrip(Integer getAuditNum, Long userId);
  154. /**
  155. * 根据user_id和date_dir获取的uploadId获取auditTripResult
  156. * 且要满足1.审核完成(1) 2.操作结论为操作错误(01)
  157. * @param tripResultList
  158. * @return
  159. */
  160. public List<AuditTripResult> getResultByUserIdUploadId(List<AuditTripResult> tripResultList);
  161. /**
  162. * 1:每次审核第一次提交时,记录日期用于表示该日上班,一天只记录一次。
  163. * 2:获取上班日志表中id最大的一个,如果该条记录的时间和当天一致,则id-1获取次日的工作时间。
  164. * 2.1:根据user_id查询所有审核完成的记录,给这些记录按日期进行排序,第一条称为最新审核记录;
  165. * 2.2:如果工作日期小于等于最新审核记录则表示有可能存在审核数据
  166. * 2.2.1:根据工作日期[零点,59]在user_id查询所有审核完成的记录中取对应的数据。
  167. * 2.3:如果工作日期大于最新审核记录则表示一定没有审核记录,返回空。
  168. * @param userId
  169. * @return
  170. */
  171. public List<AuditTripResult> getTripResult(String userId);
  172. }