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

namespace OASystem.Domain.Dtos.Groups
{
    /// <summary>
    /// 接团客户名单
    /// </summary>
    public class TourClientListDto
    {
    }


    /// <summary>
    /// 接团客户名单
    /// 根据团组Id查询List
    /// </summary>
    public class TourClientListByDiIdDto : UserPageFuncDtoBase
    {
        public int DiId { get; set; }
    }

    /// <summary>
    /// 接团客户名单
    /// 基础数据 Dto
    /// </summary>
    public class TourClientListBasicDataInitDto : UserPageFuncDtoBase { }

    /// <summary>
    /// 接团客户名单
    /// 根据Id 查询 Details
    /// </summary>
    public class TourClientListDetailsDto : UserPageFuncDtoBase
    {
        public int Id { get; set; }
    }

    /// <summary>
    /// 接团客户名单
    /// Add Or Edit
    /// </summary>
    public class TourClientListAddOrEditDto : UserPageFuncDtoBase
    {
        /// <summary>
        /// 数据Id
        /// Id==0 Add 
        /// Id>0 Update 
        /// Id<0 无效
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }

        /// <summary>
        /// 姓
        /// </summary>
        public string? LastName { get; set; }

        /// <summary>
        /// 名
        /// </summary>
        public string? FirstName { get; set; }

        /// <summary>
        /// 姓名拼音
        /// 姓/名 eg: LEI/YI
        /// </summary>
        public string? Pinyin { get; set; }

        /// <summary>
        /// 性别
        /// 0 男1 女 其他值 未设置
        /// </summary>
        public int Sex { get; set; }

        /// <summary>
        /// 手机号
        /// </summary>
        public string? Phone { get; set; }

        /// <summary>
        /// 公司名全称
        /// </summary>
        public string? CompanyFullName { get; set; }

        /// <summary>
        /// 职位
        /// </summary>
        public string? Job { get; set; }

        /// <summary>
        /// 身份证No
        /// </summary>
        public string? IDCardNo { get; set; }

        /// <summary>
        /// 生日
        /// </summary>
        public string? BirthDay { get; set; }

        /// <summary>
        /// 舱位类型(数据类型表Id)
        /// </summary>
        public int ShippingSpaceTypeId { get; set; }

        /// <summary>
        /// 舱位特殊需求
        /// </summary>
        public string? ShippingSpaceSpecialNeeds { get; set; }

        /// <summary>
        /// 酒店特殊需求
        /// </summary>
        public string? HotelSpecialNeeds { get; set; }

        /// <summary>
        /// 餐食特殊需求
        /// </summary>
        public string? MealSpecialNeeds { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
    }

    /// <summary>
    /// 接团客户名单
    /// AddMultiple
    /// </summary>
    public class TourClientListAddMultipleDto : UserPageFuncDtoBase
    {
        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }

        /// <summary>
        /// 接团客户名单
        /// AddMultiple Infos
        /// </summary>
        public List<TourClientListInfo>? TourClientListInfos { get; set; }

    }

    /// <summary>
    /// 接团客户名单
    /// AddMultiple Info
    /// </summary>
    public class TourClientListInfo
    {
        /// <summary>
        /// 姓
        /// </summary>
        public string? LastName { get; set; }

        /// <summary>
        /// 名
        /// </summary>
        public string? FirstName { get; set; }

        /// <summary>
        /// 拼音
        /// </summary>
        public string Pinyin { get; set; }

        /// <summary>
        /// 性别
        /// 0 男1 女 其他值 未设置
        /// </summary>
        public int Sex { get; set; }

        /// <summary>
        /// 公司名全称
        /// </summary>
        public string? CompanyFullName { get; set; }

        /// <summary>
        /// 职位
        /// </summary>
        public string? Job { get; set; }

        /// <summary>
        /// 身份证No
        /// </summary>
        public string? IDCardNo { get; set; }

        /// <summary>
        /// 手机号
        /// </summary>
        public string? Phone { get; set; }

        /// <summary>
        /// 生日
        /// </summary>
        public string? BirthDay { get; set; }

        /// <summary>
        /// 舱位类型(数据类型表Id)
        /// </summary>
        public int ShippingSpaceTypeId { get; set; }

        /// <summary>
        /// 舱位特殊需求
        /// </summary>
        public string? ShippingSpaceSpecialNeeds { get; set; }

        /// <summary>
        /// 酒店特殊需求
        /// </summary>
        public string? HotelSpecialNeeds { get; set; }

        /// <summary>
        /// 餐食特殊需求
        /// </summary>
        public string? MealSpecialNeeds { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
    }

    public class TourClientListProcessInfo : TourClientListInfo
    {
        public int Id { get; set; } 
    }

    // <summary>
    /// 接团客户名单
    /// AddMultiple Info
    /// </summary>
    public class TourClientListInfo1
    {
        /// <summary>
        /// 姓
        /// </summary>
        public string LastName { get; set; }
        /// <summary>
        /// 名
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 性别
        /// </summary>
        public string Sex { get; set; }
        /// <summary>
        /// 生日
        /// </summary>
        public string Birthday { get; set; } = null;
        /// <summary>
        /// 身份证
        /// </summary>
        public string IDcard { get; set; } = null;
        /// <summary>
        /// 单位
        /// </summary>
        public string Company { get; set; }
        /// <summary>
        /// 职位
        /// </summary>
        public string Job { get; set; }
        /// <summary>
        /// 手机号
        /// </summary>
        public string Phone { get; set; }

        /// <summary>
        /// 仓位类型
        /// </summary>
        public int Berth { get; set; } = 460;

        /// <summary>
        /// 仓位备注
        /// </summary>
        public string BerthNotes { get; set; }

        /// <summary>
        /// 房间备注
        /// </summary>
        public string RoomNotes { get; set; }

        /// <summary>
        /// 餐食备注
        /// </summary>
        public string MealNotes { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remark { get; set; }
    }

    /// <summary>
    /// 接团客户名单
    /// Del
    /// </summary>
    public class TourClientListDelDto : UserPageFuncDtoBase
    {
        /// <summary>
        /// 数据Id
        /// Id>=0 Del 
        /// Id<0 无效
        /// </summary>
        public int Id { get; set; }
    }

    /// <summary>
    /// 接团客户名单
    /// 客户名单下载
    /// </summary>
    public class PostTourClientListDownloadFile: UserPageFuncDtoBase
    {
        public int DiId { get; set; }
    }
}
