
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;
using System.Text.Json.Serialization;
using TEAMModelOS.SDK.Context.Attributes.Azure;
using TEAMModelOS.SDK.DI;

namespace TEAMModelOS.SDK.Models
{    
    public class School : CosmosEntity
    {        
        public School()
        {
            pk = "Base";
            timeZone = new TimeZone();
            period = new List<Period>();
        }
        
        public string schoolCode { get; set; }
        public string name { get; set; }
        public List<Period> period { get; set; }
        public List<Campus> campuses { get; set; }  
        
        public string region { get; set; }
        public string province { get; set; }
        public string city { get; set; }
        public int size { get; set; }

        /// <summary>
        /// 课程计划表
        /// </summary>
        public List<TimeTable> timetable { get; set; }
        public string address { get; set; }
        public string picture { get; set; }

        public TimeZone timeZone { get; set; }

    }

    public class TimeTable
    {
        public string label { get; set; }
        public string time { get; set; }
        public string type { get; set; }
        public Dictionary<string, object> weeklies { get; set; }
    }

    public class ExamSimple
    {
        public string id { get; set; }
        public string name { get; set; }
        //public List<SmallType> type {get;set;}
    }
    public class SmallType
    {
        public string id { get; set; }
        public string name { get; set; }
    }
    /// <summary>
    /// 时区
    /// </summary>
    public class TimeZone
    {
        public string label { get; set; } = null;
        public string value { get; set; } = null;

    }
}
