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

namespace IRaCIS.Core.Application.Service.WorkLoad.DTO
{
    public class EnrollViewModel
    {
        [StringLength(50)]
        public string ChineseName { get; set; } = string.Empty;


        [StringLength(100)]
        public string FirstName { get; set; } = string.Empty;


        [StringLength(100)]
        public string LastName { get; set; } = string.Empty;

        public decimal? AdjustmentMultiple { get; set; } = 0;

        public Guid DoctorId { get; set; }

        public Guid TrialId { get; set; }

        public Guid Id { get; set; }

        public int? Training { get; set; }

        public int? RefresherTraining { get; set; }

        public int? Timepoint { get; set; }

        public int? Timepoint48H { get; set; }

        public int? Timepoint24H { get; set; }

        public int? Adjudication { get; set; }

        public int? Adjudication48H { get; set; }

        public int? Adjudication24H { get; set; }

        public int? Global { get; set; }


        public int? Downtime { get; set; }

        public string ReviewerCode { get; set; } = string.Empty;

        public int? Code { get; set; }

    }


    public class EnrollGetQuery:PageInput
    {
        public Guid TrialId { get; set; }

      

      


    }

    public class ConfirmReviewerCommand
    {
        [NotDefault]
        public Guid TrialId { get; set; }

        public Guid[] DoctorIdArray { get; set; } = new Guid [0];

        public int ConfirmState { get; set; }

        public string BaseUrl { get; set; } = string.Empty;

        public string RouteUrl { get; set; } = string.Empty;
    }


    public class EnrollCommand
    {
        public Guid Id { get; set; }


        public decimal? Training { get; set; }

        public decimal? RefresherTraining { get; set; }

        public decimal? Timepoint { get; set; }

        public decimal? Timepoint48H { get; set; }

        public decimal? Timepoint24H { get; set; }

        public decimal? Adjudication { get; set; }

        public decimal? Adjudication48H { get; set; }

        public decimal? Adjudication24H { get; set; }

        public decimal? Global { get; set; }


        public decimal? Downtime { get; set; }


    }
    }
