using SQLite;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection.Metadata;
using System.Text;
using System.Threading.Tasks;

namespace LSFE.MobApp.Entities.Planning
{
    [Table("MRRawPlans")]
    public class MRRawPlan : BaseEntity
    {
        public byte Status { get; set; }
        public Guid MRRawPlanId { get; set; }
        public Guid? MRPlanDetailId { get; set; }
        public int? DoctorId { get; set; }
        public byte? VisitCount { get; set; }
        public DateTime? CallDate { get; set; }
        public DateTime? ActualCallDate { get; set; }
        public DateTime? StartTime { get; set; }
        public DateTime? EndTime { get; set; }
        public string? Longitude { get; set; }
        public string? Latitude { get; set; }
        public string? Location { get; set; }
        public bool? IsSignature { get; set; } 
        public string? SignatureFileName { get; set; }
        public bool? IsMissed { get; set; } 
        public string? MissedReason { get; set; }
        public bool? IsDoctorProxy { get; set; } = false;
        public bool? IsReschedule { get; set; } = false;
        public string? RescheduleReason { get; set; }
        public string? CallType { get; set; }
        public bool? IsJoinCall { get; set; } = false;
        public byte? CycleId { get; set; } 
        public bool? IsApproved { get; set; } = false;
        public bool? IsRecovered { get; set; } = false;
        public bool IsCatchUpCall { get; set; } = false;
        public bool IsSync { get; set; } = false;
        public bool ForAddressTranslation { get; set; } = false;        
        public string? SLP { get; set; }
        public string? ApprovedBy { get; set; }
        public DateTime? ApprovedDate { get; set; }
        public DateTime LastSyncDate { get; internal set; }
    }
}
