IAuditTripResultService.java 5.8 KB

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