using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LHDN.CRM.Models.ViewModels
{
    public class TaskViewModel
    {
        public long TaskID { get; set; }
        public string TaskRefNo { get; set; }
        public string RefNo { get; set; }
        public long? CaseID { get; set; }
        public long? ActivityID { get; set; }
        public string AssignToLogin { get; set; }
        public string AssignToName { get; set; }
        public string AssignToEmail { get; set; }
        public string AssignByLogin { get; set; }
        public string AssignByName { get; set; }
        public DateTime? StartDate { get; set; }
        public DateTime? DueDate { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
        public int? TaskStatusID { get; set; }
        public string TaskStatus { get; set; }
        public byte[] ChangeStamp { get; set; }
        public bool? IsPTP { get; set; }
        public List<ActForTaskViewModel> LstActivity { get; set; }
        public List<CaseForTaskViewModel> LstCase { get; set; }
        public List<ChangeHistoryUpdateViewModel> ChangeHistory { get; set; }
        public bool CanSearchCase { get; set; }
        public bool CanSearchAct { get; set; }
    }

    public class ActForTaskViewModel
    {
        public long? ActivityID { get; set; }
        public string ActRefNo { get; set; }
        public string ActChannelName { get; set; }
        public string Aliran { get; set; }
        //public string Kategori { get; set; }
        public string Kategori1Name { get; set; }
        public string Kategori2Name { get; set; }
        public string Kategori3Name { get; set; }
    }

    public class CaseForTaskViewModel
    {
        public long CaseID { get; set; }
        public string CaseRefNo { get; set; }
        //public string Kategori { get; set; } 
        public string Kategori1Name { get; set; }
        public string Kategori2Name { get; set; }
        public string Kategori3Name { get; set; }
        public string StatusLevel1Name { get; set; }
        public string StatusLevel2Name { get; set; }
        public string StatusLevel3Name { get; set; }
        public string Status { get; set; }
        public DateTime? AssignedDate { get; set; }

        public string AssignedOfficerLogin { get; set; }
        public string AssignedBy { get; set; }
        public string AssignedByName { get; set; }

        public int TotalCaseBelumSelesai { get; set; }


    }

}

