using OASystem.Domain.Entities.Groups;
using OASystem.Domain.Entities.Resource;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OASystem.Domain.ViewModels.Groups
{
    public class GroupLinkInvitingView
    {
    }

    public class GroupLinkInvitingUnitNameInitView
    {
        public int Row_Number { get; set; }
        public int Id { get; set; }

        public string UnitName { get; set; }
    }

    public class GroupLinkInvitingPageListView
    {
        [SqlSugar.SugarColumn(IsPrimaryKey = true)]
        public int Id { get; set; }

        public string TeamName { get; set; }

        public DateTime VisitStartDate { get; set; }
        public DateTime VisitEndDate { get; set; }
        /// <summary>
        /// 团组类型 
        /// </summary>
        public string TeamDid { get; set; }

        public string TeamLevSId { get; set; }

        /// <summary>
        /// 出访国家
        /// </summary>
        public string VisitCountry { get; set; }
        /// <summary>
        /// 出访天数
        /// </summary>
        public int VisitDays { get; set; }
        /// <summary>
        /// 出访人数
        /// </summary>
        public int VisitPNumber { get; set; }
        /// <summary>
        /// 接团操作人
        /// </summary>
        public string JietuanOperator { get; set; }
        /// <summary>
        /// 客户名称
        /// </summary>
        public string ClientName { get; set; }
        /// <summary>
        /// 客户单位
        /// </summary>
        public string ClientUnit { get; set; }

        public int IsDel { get; set; }

        [Navigate(NavigateType.OneToMany, nameof(Res_OfficialActivities.DiId), nameof(Id))]
        public List<InvitingInfo> InvitingInfos { get; set; }


    }

    [SugarTable("Res_OfficialActivities")]
    public class InvitingInfo
    {
        public int Id { get; set; }
        public int DiId { get; set; }
        public string Country { get; set; }
        public string Area { get; set; }
        public string Client { get; set; }
        public string Contact { get; set; }
        public string Job { get; set; }
        public int IsDel { get; set; }
    }


    public class GroupLinkInvitingPageListView1 : Grp_DelegationInfo
    {
        [Navigate(NavigateType.OneToMany, nameof(Res_OfficialActivities.DiId), nameof(Id))]
        public List<Res_OfficialActivities> InvitingInfos { get; set; }
    }

}