using Hotline.Share.Enums.Order;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hotline.Share.Dtos.Snapshot;
public class AddBatchPractitionerInDto
{
    /// <summary>
    /// 名字
    /// </summary>
    public string Name { get; set; }

    /// <summary>
    /// 性别
    /// </summary>
    public string Gender { get; set; }

    /// <summary>
    /// 区域名称
    /// </summary>
    public string AreaName { get; set; }

    /// <summary>
    /// 区域名称
    /// </summary>
    public string SystemAreaName { get; set; }

    /// <summary>
    /// 电话
    /// </summary>
    public string PhoneNumber { get; set; }

    /// <summary>
    /// 街道
    /// </summary>
    public string Street { get; set; }
}

public class PractitionerDetailOutDto : AddBatchPractitionerInDto
{
    /// <summary>
    /// Id
    /// </summary>
    public string Id { get; set; }

    /// <summary>
    /// 性别
    /// </summary>
    new public EGender Gender { get; set; }

    /// <summary>
    /// 性别
    /// </summary>
    public string GenderTxt
    {
        get
        {
            if (Gender == EGender.Unknown)
                return "未知";
            if (Gender == EGender.Male)
                return "男";
            if (Gender == EGender.Female)
                return "女";
            return "未知";
        }
    }

}

public class PractitionerItemInDto
{
    /// <summary>
    /// 区域Id
    /// </summary>
    [Required]
    public string AreaId { get; set; }

    /// <summary>
    /// 数量(默认:10)
    /// </summary>
    public int Count { get; set; } = 10;
}

public class PractitionerItemOutDto
{
    /// <summary>
    /// Id
    /// </summary>
    public string Id { get; set; }

    /// <summary>
    /// 名字
    /// </summary>
    public string Name { get; set; }
}

public class UpdatePractitionerInDto : AddPractitionerInDto
{
    /// <summary>
    /// Id
    /// </summary>
    [Required]
    public string Id { get; set; }
}

public class AddPractitionerInDto
{
    /// <summary>
    /// 名字
    /// </summary>
    [Required]
    public string Name { get; set; }

    /// <summary>
    /// 区域Id
    /// </summary>
    [Required]
    public string SystemAreaId { get; set; }

    /// <summary>
    /// 区域名称
    /// </summary>
    [Required]
    public string SystemAreaName { get; set; }

    /// <summary>
    /// 详细街道
    /// </summary>
    [Required]
    public string Street { get; set; }

    /// <summary>
    /// 电话
    /// </summary>
    [Required]
    public string PhoneNumber { get; set; }

    /// <summary>
    /// 性别
    /// </summary>
    [Required]
    public EGender Gender { get; set; }
}
