using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TEAMModelOS.SDK.Models.Cosmos.School { /// /// 成績計算總覽 /// public class ScoreCalcBase : CosmosEntity { public ScoreCalcBase() { pk = "ScoreCalc"; members = new List(); scores = new List(); scoresOrg = new List(); } /// /// 名稱 /// public string name { get; set; } /// /// 課程ID /// public string courseId { get; set; } /// /// 班級ID(行政班) /// public string classId { get; set; } /// /// 班級ID(選課班、個人課程ID) /// public string grouplistId { get; set; } /// /// 成員名單 /// public List members { get; set; } /// /// 各成員成績總覽 /// public List scores { get; set; } /// /// 各成員成績總覽最初系統計算結果 /// public List scoresOrg { get; set; } /// /// 總覽分項權重類型 count:加權 | percentage:百分比 /// public string rateType { get; set; } } /// /// 成績計算總覽分項-活動基底Class /// public class ScoreCalcActivityBase : CosmosEntity { public ScoreCalcActivityBase() { pk = "ScoreCalc"; itemRates = new List(); itemScores = new List(); itemScoresOrg = new List(); stuScores = new List(); stuActScores = new List>(); stuActScoresOrg = new List>(); } /// /// 成績計算ID /// public string scorecalcId { get; set; } /// /// 類型 exam:評量 | homework:作業 | lessonrecord:課堂紀錄 /// public string type { get; set; } /// /// 各活動權重 /// public List itemRates { get; set; } /// /// 各活動權重類型 count:加權 | percentage:百分比 /// public string itemRateType { get; set; } /// /// 各活動分數最終結果 /// public List itemScores { get; set; } /// /// 各活動分數最初系統計算結果 /// public List itemScoresOrg { get; set; } /// /// 最終成績 /// public double score { get; set; } /// /// 最終成績系統計算結果 /// public double scoreOrg { get; set; } /// /// 總加權數 /// public double rate { get; set; } /// /// 各學生所有活動結算成績 /// public List stuScores { get; set; } /// /// 各活動所屬學生成績 /// public List> stuActScores { get; set; } /// /// 各活動所屬學生成績最初系統計算結果 /// public List> stuActScoresOrg { get; set; } } /// /// 成績計算總覽分項-評量、作業 /// public class ScoreCalcActivity : ScoreCalcActivityBase { public ScoreCalcActivity() { items = new List(); } /// /// 被選取的活動列表 /// public List items { get; set; } } /// /// 成績計算總覽分項-課堂紀錄 /// public class ScoreCalcLsRecord : CosmosEntity { public ScoreCalcLsRecord() { items = new List(); stuActAttendOrgVals = new List>(); stuActAttendScores = new List>(); stuAttendScores = new List(); stuActPointOrgVals = new List>(); stuActPointScores = new List>(); stuPointScores = new List(); stuActItactOrgVals = new List>(); stuActItactScores = new List>(); stuItactScores = new List(); } /// /// 被選取的課堂紀錄列表 /// public List items { get; set; } /// /// 課堂紀錄出席 採用的公式ID (依照items順序 第一個課堂紀錄公式 第二個...) /// public string stuAttendFunctionId { get; set; } /// /// 各學生各課堂紀錄出席 系統原值 /// public List> stuActAttendOrgVals { get; set; } /// /// 各學生各課堂紀錄出席 分數 /// public List> stuActAttendScores { get; set; } /// /// 各學生所有課堂紀錄出席 分數 /// public List stuAttendScores { get; set; } /// /// 課堂紀錄記分板 採用的公式ID /// public string stuPointFunctionId { get; set; } /// /// 各學生各課堂紀錄記分板 系統原值 /// public List> stuActPointOrgVals { get; set; } /// /// 各學生各課堂紀錄記分板 分數 /// public List> stuActPointScores { get; set; } /// /// 各學生所有課堂紀錄記分板 分數 /// public List stuPointScores { get; set; } /// /// 課堂紀錄互動 採用的公式ID /// public string stuItactFunctionId { get; set; } /// /// 各學生各課堂紀錄互動 系統原值 /// public List> stuActItactOrgVals { get; set; } /// /// 各學生各課堂紀錄互動 分數 /// public List> stuActItactScores { get; set; } /// /// 各學生所有課堂紀錄互動 分數 /// public List stuItactScores { get; set; } /// /// 出席加權數 /// public double attendRate { get; set; } /// /// 記分板加權數 /// public double pointRate { get; set; } /// /// 互動加權數 /// public double itactRate { get; set; } } public class ScoreCalcMember { /// /// ID(學生ID、TMID) /// public string id { get; set; } public string name { get; set; } /// /// 座號 /// public string no { get; set; } } /// /// 測驗、作業 /// public class ScoreCalcActivityItems { /// /// 活動ID (測驗:examId 作業:homeworkId) /// public string id { get; set; } /// /// 活動分區鍵 /// public string code { get; set; } /// /// 發布對象 學校(school)/個人(private) /// public string scope { get; set; } /// /// (評量專有)擁有者 學校(school)/個人(teacher) /// public string owner { get; set; } /// /// 活動名稱 /// public string name { get; set; } /// /// 活動進度 pending 待发布 | going 已发布 | finish 已结束 /// public string progress { get; set; } /// /// 活動評分狀態(評量專用) 0未评分,1已评分 /// public int sStatus { get; set; } = 0; /// /// 評測類型(評量專用) 0:線上評量 | 1:課中評量 | 2.卷卡合一 /// public string source { get; set; } /// /// 創建時間 (milliseconds 13位數) /// public long createTime { get; set; } /// /// 是否使用(是否被勾選) true:使用 /// public bool use { get; set; } } /// /// 課堂紀錄 /// public class ScoreCalcLsRecordItems { /// /// 課堂紀錄ID /// public string id { get; set; } /// /// 課堂紀錄分區鍵 /// public string code { get; set; } /// /// 課堂紀錄名稱 /// public string name { get; set; } /// /// 學校ID /// public string school { get; set; } /// /// 上課時長(分) /// public double duration { get; set; } = 0; /// /// 總計分 /// public double totalPoint { get; set; } = 0; /// /// 學生總數(出席人數) /// public int mCount { get; set; } = 0; /// /// 作品總數 /// public int collateCount { get; set; } = 0; /// /// 學生互動總數 /// public int clientInteractionCount { get; set; } = 0; /// /// 測驗得分率 /// public double examPointRate { get; set; } = 0; /// /// 是否使用(是否被勾選) true:使用 /// public bool use { get; set; } } /// /// 老師成績計算公式 code:"ScoreCalcFunc-{TMID}" /// public class ScoreCalcFunc : CosmosEntity { public ScoreCalcFunc() { pk = "ScoreCalc"; } public string id { get; set; } public string name { get; set; } /// /// 類型 exam:評量 | homework:作業 | lessonrecord:課堂紀錄 /// public string type { get; set; } /// /// 種類 attend:出席 | point:得分版 | interaction:互動 /// public string method { get; set; } /// /// 公式內容 /// public string content { get; set; } } }