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;
using Hotline.Share.Dtos.FlowEngine.Workflow;
namespace Hotline.Application.Snapshot.Contracts;
public interface IOrderSnapshotApplication
{
///
/// 随手拍公开审批详情
///
///
///
Task GetOrderSnapshotPublishAuditDetailAsync(string id);
///
/// 添加公开工单
///
///
///
///
Task AddOrderPublishAsync(AddSnapshotOrderPublishInDto addSnapshotOrderPublishInDto, CancellationToken none);
///
/// 获取网格员回复集合
///
///
///
ISugarQueryable GetGuiderReplyItems(GuiderReplyItemsInDto dto);
///
/// 随手拍公开审批集合
///
///
ISugarQueryable GetOrderSnapshotPublishAuditItems(GetOrderSnapshotPublishAuditItemsInDto dto);
///
/// 随手拍公开详情
///
/// 工单Id
///
Task GetOrderSnapshotPublishDetailAsync(string id);
///
/// 随手拍公开集合
///
///
///
ISugarQueryable GetOrderSnapshotPublishItems(GetOrderSnapshotPublishItemsInDto dto);
///
/// 获取工单标签集合
///
///
///
ISugarQueryable GetSignOrderSnapshotItems(SignOrderSnapshotItemsInDto dto);
///
/// 批量设置随手拍公开申请不通过
///
///
Task UpdateOrderSnapshotPublishsStatusRefuseAsync(IList ids);
///
/// 审核随手拍公开申请通过/不通过
///
///
Task UpdateOrderSnapshotPublishStatusAsync(UpdateOrderSnapshotPublishStatusInDto dto);
///
/// 随手拍工单标签
///
///
///
///
Task UpdateLabelAsync(string id, IList? snapshotLabels);
///
/// 随手拍工单办理数据保存
///
///
///
Task SaveOrderWorkflowInfo(NextWorkflowDto dto);
///
/// 获取随手拍工单标签日志
///
///
///
ISugarQueryable GetLabelOrderSnapshotLogItems(LabelOrderSnapshotLogItemsInDto dto);
///
/// 返回办理页面基础数据
///
/// isAqyh:是否属于安全隐患,hasInputed:是否已经输入过安全隐患相关字段)
///
///
Task GetNextStepsDatabaseAsync(NextStepsWithOpinionDto rsp, string orderId);
///
/// 随手拍工单集合
///
///
///
ISugarQueryable GetOrderSnapshotItems(OrderSnapshotItemsInDto dto);
///
/// 电气焊作业申请工单集合
///
///
///
ISugarQueryable GetOrderSnapshotElectrogasItems(OrderSnapshotItemsInDto dto);
///
/// 获取工单已经标签集合
///
///
///
ISugarQueryable GetLabeledOrderSnapshotItems(LabeledOrderSnapshotItemsInDto dto);
///
/// 工单标记
///
///
///
///
///
Task UpdateSafetyAsync(string orderId, bool isSafetyDepartment, string remark);
ISugarQueryable GetCitizenRewardItems(CitizenRewardInDto dto);
///
/// 更新随手拍工单重办原因
///
///
///
Task UpdateSpecialReasonAsync(string orderId, string errorId, string errorName);
Task UpdateIsEmphasisAsync(UpdateIsEmphasisInDto dto);
Task GetOrderDetailAsync(string id, Share.Dtos.Order.OrderDto dto, CancellationToken token);
Task GetStartflowAsync(string? orderId, CancellationToken requestAborted);
}