IOrderRepository.cs 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. using Hotline.Settings;
  2. using Hotline.Share.Requests;
  3. using SqlSugar;
  4. using System.Data;
  5. using Hotline.Share.Dtos;
  6. using Hotline.Share.Dtos.Order;
  7. using XF.Domain.Repository;
  8. using Hotline.Share.Dtos.Bi;
  9. using Hotline.Settings.Hotspots;
  10. namespace Hotline.Orders
  11. {
  12. public interface IOrderRepository : IRepositoryWorkflow<Order>
  13. {
  14. Task<string> AddOrderNavAsync(Order order, CancellationToken cancellationToken);
  15. Task RemoveOrderWrodBatchAsync(List<string> ids, CancellationToken cancellationToken);
  16. Task RemoveOrderObserveBatchAsync(List<string> ids, CancellationToken cancellationToken);
  17. Task RemoveOrderFinalityBatchAsync(List<string> ids, CancellationToken cancellationToken);
  18. Task OrderScreenRevisionVisit(string VisitId, bool canHandle, CancellationToken cancellationToken);
  19. Task FileAsync(Order order, CancellationToken cancellationToken);
  20. Task<(IReadOnlyList<Hotspot> hotSpotList, List<dynamic>? list)> HotPortJoinOrgStatistics(DateTime StartTime, DateTime EndTime, bool IsCenter, string? OrgCode);
  21. ISugarQueryable<Order> HotPortJoinOrgStatisticsDetail(HotPortJoinOrgStatisticsRequestDetail dto);
  22. ISugarQueryable<DepartmentalProcessingStatisticsDataDto> OrderUnionAll(ISugarQueryable<DepartmentalProcessingStatisticsDataDto> t1,
  23. ISugarQueryable<DepartmentalProcessingStatisticsDataDto> t2,
  24. ISugarQueryable<DepartmentalProcessingStatisticsDataDto> t3,
  25. ISugarQueryable<DepartmentalProcessingStatisticsDataDto> t4,
  26. ISugarQueryable<DepartmentalProcessingStatisticsDataDto> t5,
  27. ISugarQueryable<DepartmentalProcessingStatisticsDataDto> t6);
  28. ISugarQueryable<SelectOrderId> OrderListUnionAll(ISugarQueryable<SelectOrderId> t1, ISugarQueryable<SelectOrderId> t2);
  29. /// <summary>
  30. /// 区域分时统计
  31. /// </summary>
  32. /// <param name="dto"></param>
  33. /// <returns></returns>
  34. Task<object> OrderAreaTime(TimeSharingPagedKeywordRequest dto);
  35. /// <summary>
  36. /// 区域分时统计--导出
  37. /// </summary>
  38. /// <param name="dto"></param>
  39. /// <returns></returns>
  40. Task<DataTable> OrderAreaTimeExport(TimeSharingPagedKeywordRequest dto);
  41. /// <summary>
  42. /// 热点类型分时统计
  43. /// </summary>
  44. /// <param name="dto"></param>
  45. /// <returns></returns>
  46. Task<object> OrderHotspotTime(TimeSharingPagedKeywordRequest dto);
  47. /// <summary>
  48. /// 热点类型分时统计---导出
  49. /// </summary>
  50. /// <param name="dto"></param>
  51. /// <returns></returns>
  52. Task<DataTable> OrderHotspotTimeExport(TimeSharingPagedKeywordRequest dto);
  53. /// <summary>
  54. /// 受理类型分时统计
  55. /// </summary>
  56. /// <param name="dto"></param>
  57. /// <returns></returns>
  58. Task<object> OrderAcceptanceTime(TimeSharingPagedKeywordRequest dto);
  59. /// <summary>
  60. /// 中心报表统计
  61. /// </summary>
  62. /// <param name="StartTime"></param>
  63. /// <param name="EndTime"></param>
  64. /// <returns></returns>
  65. Task<DataTable> CenterReportFormsStatistics(DateTime StartTime, DateTime EndTime);
  66. /// <summary>
  67. /// 中心报表统计(受理类型)
  68. /// </summary>
  69. /// <param name="StartTime"></param>
  70. /// <param name="EndTime"></param>
  71. /// <returns></returns>
  72. Task<DataTable> CenterReportPurTypeStatistics(DateTime StartTime, DateTime EndTime);
  73. /// <summary>
  74. /// 中心报表统计(部门统计)
  75. /// </summary>
  76. /// <param name="StartTime"></param>
  77. /// <param name="EndTime"></param>
  78. /// <param name="Type"></param>
  79. /// <returns></returns>
  80. Task<DataTable> CenterReportDepartStatistics(DateTime StartTime, DateTime EndTime, string Type);
  81. /// <summary>
  82. /// 中心报表统计(新增加的)
  83. /// </summary>
  84. /// <param name="StartTime"></param>
  85. /// <param name="EndTime"></param>
  86. /// <param name="Type"></param>
  87. /// <returns></returns>
  88. Task<DataTable> CenterReportNewStatistics(DateTime StartTime, DateTime EndTime);
  89. /// <summary>
  90. /// 受理类型分时统计---导出
  91. /// </summary>
  92. /// <param name="dto"></param>
  93. /// <returns></returns>
  94. Task<DataTable> OrderAcceptanceTimeExport(TimeSharingPagedKeywordRequest dto, List<Kv> title);
  95. /// <summary>
  96. /// 信件来源分时统计
  97. /// </summary>
  98. /// <param name="dto"></param>
  99. /// <returns></returns>
  100. Task<object> OrderSourceTime(TimeSharingPagedKeywordRequest dto);
  101. /// <summary>
  102. /// 信件来源分时统计---导出
  103. /// </summary>
  104. /// <param name="dto"></param>
  105. /// <returns></returns>
  106. Task<DataTable> OrderSourceTimeExport(TimeSharingPagedKeywordRequest dto);
  107. /// <summary>
  108. /// 信件来源统计
  109. /// </summary>
  110. /// <param name="dto"></param>
  111. /// <returns></returns>
  112. Task<object> OrderSource(QueryOrderSourceRequest dto);
  113. /// <summary>
  114. /// 信件来源统计 -- 导出
  115. /// </summary>
  116. /// <param name="dto"></param>
  117. /// <returns></returns>
  118. Task<DataTable> OrderSourceExport(QueryOrderSourceRequest dto);
  119. ISugarQueryable<T> UnionAll<T>(params ISugarQueryable<T>[] queryables) where T : class;
  120. /// <summary>
  121. /// 部门办件统计
  122. /// </summary>
  123. /// <param name="sql"></param>
  124. /// <returns></returns>
  125. List<DepartmentalProcessingStatisticsDataDto> DepartmentalProcessingStatisticsNew(string sql);
  126. /// <summary>
  127. /// 热点区域明细
  128. /// </summary>
  129. /// <param name="dto"></param>
  130. /// <returns></returns>
  131. ISugarQueryable<HotspotAndAreaStatisticsDetailDto> HotspotAndAreaStatisticsDetail(HotspotAndAreaStatisticsDetailReq dto);
  132. /// <summary>
  133. /// 根据时间查询受理类型统计
  134. /// </summary>
  135. /// <param name="dto"></param>
  136. /// <returns></returns>
  137. Task<(List<SystemDicData> acceptType, object items)> AcceptTypeStatisticsByDate(AcceptTypeStatisticsByDateReq dto);
  138. /// <summary>
  139. /// 根据时间查询受理类型统计-导出
  140. /// </summary>
  141. /// <param name="dto"></param>
  142. /// <returns></returns>
  143. Task<DataTable> AcceptTypeStatisticsByDateExport(AcceptTypeStatisticsByDateReq dto);
  144. /// <summary>
  145. /// 受理类型导出表处理
  146. /// </summary>
  147. /// <param name="dt"></param>
  148. /// <param name="AddColumnName"></param>
  149. /// <returns></returns>
  150. DataTable InitAcceptTypeTable(DataTable dt, List<string> AddColumnName);
  151. /// <summary>
  152. /// 受理类型明细
  153. /// </summary>
  154. /// <param name="dto"></param>
  155. /// <returns></returns>
  156. ISugarQueryable<HotspotAndAreaStatisticsDetailDto> AcceptTypeStatisticsByDateDetail(AcceptTypeStatisticsByDateDetailReq dto);
  157. /// <summary>
  158. /// 中心受理统计(时间段)
  159. /// </summary>
  160. /// <returns></returns>
  161. ISugarQueryable<OrderCenterAcceptHourVo> OrderCenterAcceptHour(OrderCenterAcceptPagedRequest dto);
  162. /// <summary>
  163. /// 数据清单
  164. /// </summary>
  165. /// <param name="dto"></param>
  166. /// <returns></returns>
  167. ISugarQueryable<OrderDataInventoryRep> OrderDataInventory(OrderDataInventoryReq dto);
  168. /// <summary>
  169. /// 扭转列表
  170. /// </summary>
  171. /// <param name="dto"></param>
  172. /// <returns></returns>
  173. ISugarQueryable<OrderVisit> VisitJudgeQuery(VisitJudgeQueryReq dto);
  174. /// <summary>
  175. /// 满意度明细
  176. /// </summary>
  177. /// <param name="dto"></param>
  178. /// <returns></returns>
  179. ISugarQueryable<OrgVisitDetailListResp> OrgVisitDetailList(OrgVisitDetailListReq dto);
  180. /// <summary>
  181. /// 部门满意度明细统计
  182. /// </summary>
  183. /// <param name="dto"></param>
  184. /// <returns></returns>
  185. ISugarQueryable<OrgVisitDetailListResp> VisitAndOrgSatisfactionDetail(VisitAndOrgSatisfactionDetailDto dto);
  186. /// <summary>
  187. /// 部门满意度明细 排除不满意 非常不满意 未作评价
  188. /// </summary>
  189. /// <param name="dto"></param>
  190. /// <returns></returns>
  191. ISugarQueryable<OrgVisitDetailListResp> OrgVisitDetailFiltrationList(OrgVisitDetailListReq dto, string orgId);
  192. /// <summary>
  193. /// 智能回访数据统计
  194. /// </summary>
  195. /// <param name="dto"></param>
  196. /// <returns></returns>
  197. Task<QueryAiVisitStatisticsResp> QueryAiVisitStatistics(QueryAiVisitStatisticsRequest dto);
  198. /// <summary>
  199. /// 智能回访有效性分析
  200. /// </summary>
  201. /// <param name="dto"></param>
  202. /// <returns></returns>
  203. Task<QueryAiVisitEffectiveAnalysisResp> QueryAiVisitEffectiveAnalysis(QueryAiVisitStatisticsRequest dto);
  204. }
  205. public interface IOrderScreenRepository : IRepositoryWorkflow<OrderScreen>
  206. {
  207. }
  208. public interface IOrderTerminateRepository : IRepositoryWorkflow<OrderTerminate>
  209. {
  210. }
  211. public interface IOrderDelayRepository : IRepositoryWorkflow<OrderDelay>
  212. {
  213. }
  214. }