using Ropin.Inspection.Model; using Ropin.Inspection.Model.Entities; using Ropin.Inspection.Model.SearchModel.MTN; using Ropin.Inspection.Model.ViewModel.DEV; using Ropin.Inspection.Model.ViewModel.MTN; using Ropin.Inspection.Service.Interface; using System; using System.Collections.Generic; using System.Linq; using System.Security.Claims; using System.Text; using System.Threading.Tasks; namespace Ropin.Inspection.Service.MTN.Interface { /// <summary> /// 报警工单 /// </summary> public interface ITmtnAlarmOrderService : IBaseService<AlarmOrderViewModel>, IBaseServiceById<AlarmOrderViewModel, string> { /// <summary> /// 工单创建+工单记录 /// </summary> /// <param name="viewModel"></param> /// <returns></returns> /// <exception cref="Exception"></exception> Task CreateOrderAsync(AddAlarmOrderViewModel viewModel); /// <summary> /// 工单修改 /// </summary> /// <param name="code"></param> /// <param name="updateModel"></param> /// <returns></returns> /// <exception cref="Exception"></exception> Task UpdateAsync(string code, AlarmOrderViewModel updateModel); /// <summary> /// 工单流程 /// </summary> /// <param name="code"></param> /// <param name="updateModel"></param> /// <returns></returns> /// <exception cref="Exception"></exception> Task OrderFlowAsync(string code, UpdateAlarmOrderViewModel updateModel); /// <summary> /// 工单表列表 /// </summary> /// <param name="searchModel"></param> /// <returns></returns> Task<IEnumerable<AlarmOrderViewModel>> GetAlarmOrderList(AlarmOrderSearchModel searchModel); /// <summary> /// 工单表移动端统计(6个月) /// </summary> /// <param name="storeCode"></param> /// <returns></returns> Task<RepairStatistics> GetAlarmOrderStatisticsAsync(string storeCode); /// <summary> /// 工单处理记录列表 /// </summary> /// <param name="searchModel"></param> /// <returns></returns> Task<IEnumerable<AlarmOrderRecordViewModel>> GetAlarmOrderRecordList(AlarmOrderSearchModel searchModel); /// <summary> /// 工单处理记录附件列表 /// </summary> /// <param name="searchModel"></param> /// <returns></returns> Task<IEnumerable<AlarmOrderFile>> GetAlarmOrderRecordAppList(string RecordId); /// <summary> /// 工单统计-状态 /// </summary> /// <param name="id"></param> /// <returns></returns> Task<AlarmOrderStatistics> AlarmOrderStatistics(AlarmOrderSearchModel searchModel); /// <summary> /// 工单表详情-根据消息编号获取 /// </summary> /// <param name="messageCode"></param> /// <returns></returns> Task<AlarmOrderViewModel> GetByMessageCodeAsync(string messageCode); } }