using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Hg.Core.Domain.Dto.OutComplaint { public class OutComplaintDto { public int Id { get; set; } public string? ComplaintId { get; set; } public string? Resid { get; set; } public string? UMID { get; set; } public string? Cname { get; set; } public int? Deptid { get; set; } public string? Deptname { get; set; } public int? Eid { get; set; } public string? Euser { get; set; } public OutComplaintChannel? OutComplaintChannel { get; set; } public string? OutComplaintChannelStr { get { return OutComplaintChannel?.GetDescription(); } } public int? Reason { get; set; } public List? Reasons { get { var reasons = new List(); foreach (var reason in Enum.GetValues()) { if (((int)reason & Reason.Value) > 0) { reasons.Add((int)reason); } } return Reason == null ? null : reasons; } } public List? ReasonList { get { var reasons = new List(); foreach (var reason in Enum.GetValues()) { if (((int)reason & Reason.Value) > 0) { reasons.Add(reason.GetDescription()); } } return Reason == null ? null : reasons; } } public OutComplaintStatus? OutComplaintStatus { get; set; } public string? OutComplaintStatusStr { get { return OutComplaintStatus?.GetDescription(); } } public OutComplaintBusinessStatus? BusinessStatus { get; set; } public string? BusinessStatusStr { get { return BusinessStatus?.GetDescription(); } } public string? Content { get; set; } public string? Follow { get; set; } public string? Remark { get; set; } public OutComplaintDueStatus? DueStatus { get; set; } public string? DueStatusStr { get { return DueStatus?.GetDescription(); } } public DateTime BusinessDeadline { get; set; } public string? BusinessDeadlineSpan { get; set; } public DateTime ComplaintDeadline { get; set; } public string? ComplaintDeadlineSpan { get; set; } public DateTime? OutComplaintDate { get; set; } public string? OutComplaintDateStr { get { return OutComplaintDate?.ToString("yyyy-MM-dd"); } } public string? Creator { get; set; } public DateTime? CreateTime { get; set; } public string? Updater { get; set; } public DateTime? UpdateTime { get; set; } public string? Restorer { get; set; } public DateTime? RestoreTime { get; set; } public string? HGRestorer { get; set; } public DateTime? HGRestoreTime { get; set; } public ICollection OrderList { get; set; } public ICollection PriceList { get; set; } public int NeedRestoreCount { get; set; } public int RestoreCount { get; set; } public int FollowUpCount { get; set; } public DateTime TimeSort { get; set; } public int? Age { get; set; } public List? Products { get; set; } public List? OrderIds { get; set; } public List OTimes { get; set; } public List ArrivalPays { get; set; } public List? ArrivalStatus { get; set; } public string? Verifyier { get; set; } public DateTime? VerifyTime { get; set; } public string IsInComplaint { get; set; } public string? RiskSituation { get; set; } public int? ComplaintCycle { get; set; } public OrderRefundStatus? RefundStatus { get; set; } public string? RefundStatusStr { get { return RefundStatus?.GetDescription(); } } } }