using Hotline.Share.Dtos;
using Hotline.Share.Dtos.FlowEngine;
using Hotline.Share.Dtos.Order;
using Hotline.Share.Dtos.Snapshot;
using Hotline.Snapshot;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Hotline.Application.Snapshot;
public interface IOrderSnapshotApplication
{
///
/// 随手拍公开审批详情
///
///
///
Task GetOrderSnapshotPublishAuditDetailAsync(string id);
///
/// 添加公开工单
///
///
///
///
Task AddOrderPublishAsync(AddSnapshotOrderPublishInDto addSnapshotOrderPublishInDto, CancellationToken none);
///
/// 获取网格员回复集合
///
///
///
ISugarQueryable GetGuiderReplyItemsAsync(GuiderReplyItemsInDto dto);
///
/// 随手拍公开审批集合
///
///
ISugarQueryable GetOrderSnapshotPublishAuditItemsAsync(GetOrderSnapshotPublishAuditItemsInDto dto);
///
/// 随手拍公开详情
///
/// 工单Id
///
Task GetOrderSnapshotPublishDetailAsync(string id);
///
/// 随手拍公开集合
///
///
///
ISugarQueryable GetOrderSnapshotPublishItemsAsync(GetOrderSnapshotPublishItemsInDto dto);
///
/// 获取工单标签集合
///
///
///
ISugarQueryable GetLabelOrderSnapshotItemsAsync(LabelOrderSnapshotItemsInDto dto);
///
/// 批量设置随手拍公开申请不通过
///
///
Task UpdateOrderSnapshotPublishsStatusRefuseAsync(IList ids);
///
/// 审核随手拍公开申请通过/不通过
///
///
Task UpdateOrderSnapshotPublishStatusAsync(UpdateOrderSnapshotPublishStatusInDto dto);
///
/// 随手拍工单标签
///
///
///
///
Task UpdateLabelAsync(string id, IList? snapshotLabels);
///
/// 随手拍工单办理数据保存
///
///
///
Task SaveOrderWorkflowInfo(NextWorkflowDto dto);
///
/// 获取随手拍工单标签日志
///
///
///
ISugarQueryable GetLabelOrderSnapshotLogItemsAsync(LabelOrderSnapshotLogItemsInDto dto);
///
/// 返回办理页面基础数据
///
///
///
///
Task GetNextStepsDatabaseAsync(NextStepsWithOpinionDto rsp, string orderId);
///
/// 随手拍工单集合
///
///
///
ISugarQueryable GetOrderSnapshotItemsAsync(OrderSnapshotItemsInDto dto);
///
/// 获取工单已经标签集合
///
///
///
ISugarQueryable GetLabeledOrderSnapshotItemsAsync(LabeledOrderSnapshotItemsInDto dto);
///
/// 工单标记
///
///
///
///
///
Task UpdateSafetyAsync(string orderId, bool isSafetyDepartment, string remark);
}