using System;
using System.Collections.Generic;
using System.Text;
using System.Text.Json;
using TEAMModelOS.SDK.Models.Cosmos.Common;

namespace TEAMModelOS.SDK.Models
{
    public class ExamLite : CosmosEntity
    {
        public ExamLite()
        {
            pk = "ExamLite";

        }
        /// <summary>
        ///发布层级 类型 school  area
        /// </summary>
        public string owner { get; set; }
        public string areaId { get; set; }
        public string name { get; set; }
        public string school { get; set; }
        public string creatorId { get; set; }
        public long createTime { get; set; }
        public long updateTime { get; set; }
        //public string examCode { get; set; }

        /// <summary>
        /// 施测起始时间
        /// </summary>
        public long startTime { get; set; }
        /// <summary>
        /// 施测结束时间
        /// </summary>
        public long endTime { get; set; }
        /// <summary>
        /// 评测类型
        /// </summary>
        public string source { get; set; }
        /// <summary>
        ///  评测描述
        /// </summary>
        public string description { get; set; }
        /// <summary>
        ///  行政班  
        /// </summary>
        public List<string> classes { get; set; } = new List<string>();
        /// <summary>
        /// 学生名单（包含自定义个人学生名单，学校教学班）
        /// </summary>
        public List<string> stuLists { get; set; } = new List<string>();
        /// <summary>
        /// 教研组名单
        /// </summary>
        public List<string> tchLists { get; set; } = new List<string>();
        /// <summary>
        /// student 学生名单类型    research 教研组名单
        /// </summary>
        public string targetType { get; set; }
        public List<JsonElement> targets { get; set; } = new List<JsonElement>();
        public List<Record> teachers { get; set; } = new List<Record>();
        /// <summary>
        /// TTL删除改变状态使用
        /// </summary>
        public int? status { get; set; } = 0;
        //记录该评测内容下blob大小
        public long? size { get; set; } = 0;
        //标记是否研修活动中发起的评测
        public string sType { get; set; } = "normal";
        /// <summary>
        ///  练习的试卷 blob地址
        /// </summary>
        public string blob { get; set; }
        public string pId { get; set; }
        public string scope { get; set; }
        //容器名称 container name
        //public string cn { get; set; }
    }
    public class Record
    {
        public string id { get; set; }
        public string name { get; set; }
        public string groupName { get; set; }
        public List<List<string>> answer { get; set; } = new List<List<string>>();
        public List<int> rw { get; set; } = new List<int>();
        public long time { get; set; }
    }

}
