using Hotline.Share.Requests;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hotline.Share.Dtos.Order
{
	public class OrderObserveDto : OrderObserveBaseDto
	{
		/// <summary>
		/// 工单ID
		/// </summary>
		public string OrderId { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public OrderDto Order { get; set; }
	}

	public class OrderObserveAddDto
	{
		/// <summary>
		/// 工单ID
		/// </summary>
		public List<OrdersObserveAddDto> OrderIds { get; set; }
	}

	public class OrdersObserveAddDto { 
	
		public string OrderId { get; set; }
	}

	public class OrderObserveDeleteDto
	{
		public List<string> Ids { get; set; }
	}

	public class OrderObserveUpdateDto : OrderObserveAddDto
	{
		public string Id { get; set; }
	}

	public record OrderObserveListDto : PagedKeywordRequest
	{
		/// <summary>
		/// 标题
		/// </summary>
		public string? Title { get; set; }

		/// <summary>
		/// 编号
		/// </summary>
		public string? No { get; set; }

		/// <summary>
		/// 是否为省工单
		/// </summary>
		public bool? IsProvince { get; set; }

		/// <summary>
		/// 期满开始时间
		/// </summary>
		public DateTime? ExpiredTimeStart { get; set; }

		/// <summary>
		/// 期满结束时间
		/// </summary>
		public DateTime? ExpiredTimeEnd { get; set; }

		/// <summary>
		/// 接办名称（综合查询使用）
		/// </summary>
		public string? ActualHandleOrgName { get; set; }

		/// <summary>
		/// 受理类型（√）
		/// </summary>
		public string? AcceptType { get; set; }

		/// <summary>
		/// 热点分类关键词
		/// </summary>
		public string? Hotspot { get; set; }


	}
	public class OrderObserveBaseDto
	{
		public DateTime? LastModificationTime { get; set; }

		public bool IsDeleted { get; set; }

		/// <summary>
		/// 删除时间
		/// </summary>
		public DateTime? DeletionTime { get; set; }


		/// <summary>
		/// 创建时间
		/// </summary>
		public DateTime CreationTime { get; set; }

		public string Id { get; set; }

		/// <summary>
		/// 组织Id
		/// </summary>
		public string? CreatorOrgId { get; set; }


		public string? CreatorOrgName { get; set; }

		/// <summary>
		/// 创建人
		/// </summary>
		public string? CreatorId { get; set; }

		public string? CreatorName { get; set; }
	}
}
