using Microsoft.Azure.Cosmos.Table; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using TEAMModelOS.SDK.Context.Attributes.Azure; namespace TEAMModelOS.SDK.Models.Cosmos.BI { public class BINotice : CosmosEntity { public BINotice() { code = "BINotice"; pk = "BINotice"; } #region 新通知類型 /// /// 訊息類型 mail:郵件、notify:端外、sms:簡訊 /// public string msgType { get; set; } /// /// 挑選方式 single:個別、multi:批次 /// public string selType { get; set; } /// /// 訊息中樞 /// public string hubName { get; set; } /// /// 主旨 ※Email用 /// public string subject { get; set; } /// /// 模板ID ※Email用 /// public string template { get; set; } /// /// 搜尋條件 ※複數 /// public List search { get; set; } = new(); /// /// 附加資料 ※JSON to string /// public string data { get; set; } #endregion #region 原有舊通知類型 /// /// 消息类型 0系统 1普通类型 2提示类型 3 特殊类型 /// public int type { get; set; } = 0; /// /// 跳转地址 /// public string jumpUrl { get; set; } /// /// 回调名称拒绝 查看 /// public string callbackName { get; set; } /// /// 拒绝 /// public string refuseName { get; set; } /// /// 消息标题 /// public string theme { get; set; } /// /// 消息内容 /// public string content { get; set; } /// /// 接收人群 /// public Crowd crowd { get; set; } /// /// 接收人id集合 /// public List crowdIds { get; set; } /// /// 创建者id /// public string createId { get; set; } /// /// 发送时间 /// public long sendTime { get; set; } /// /// 创建时间 /// public long createTime { get; set; } /// /// 发送消息来源, HiTeach、IES、Sokrates、Auth、Event /// public string source { get; set; } = "IES"; #endregion } /// /// 挑選條件 /// public class PickParam { public string mode { get; set; } //格式 area:學區 schGeo:學校地理 tmidGeo:TMID地理 unit:機構 school:學校 crtTime:帳號生成時間 softUse:使用軟體 point:積分範圍 tmid:帳號列表(個別挑選用) public string areaId { get; set; } //學區ID ※area專有 public string countryId { get; set; } //國ID ※schGeo、tmidGeo專有 public string provinceId { get; set; } //省ID ※schGeo、tmidGeo專有 public string cityId { get; set; } //市ID ※schGeo、tmidGeo專有 public string distId { get; set; } //區ID ※schGeo、tmidGeo專有 public string unitType { get; set; } //機構類型ID 1:基礎教育機構(K-小學) 2:中等教育機構(國中、高中/職) 3:高等教育機構(大學、研究所) 4:其他 ※unit專有 public long crtFrom { get; set; } //TMID帳號生成時間From ※crtTime專有 public long crtTo { get; set; } //TMID帳號生成時間To ※crtTime專有 public List softUse { get; set; } = new(); //軟體使用 ※softUse專有 "HiTeach"、"HiTeachCC"、"HiTA"、"IES5"、"Account"、"Sokrates"、"SokAPP"、"IRS" public string softUseMode { get; set; } //軟體使用模式 and or ※softUse專有 public int pointFrom { get; set; } //積分範圍 起始 ※point專有 public int pointTo { get; set; } //積分範圍 終止 ※point專有 public string school { get; set; } //學校ID ※school專有 public List tmId { get; set; } = new(); //TMID列表 ※tmid專有 } /// /// (訊息用)學校基本資料 /// public class NoticeSchool { public string eduId { get; set; } //學校教育部代碼 public string shortCode { get; set; } //學校簡碼 public string name { get; set; } //學校名稱 } /// /// 发送人群 /// public class Crowd { public List tmdIds { get; set; } public List schoolIds { get; set; } public List areaIds { get; set; } /// /// 接收类型 /// public string types { get; set; } } public class CrowdInfo { public string id { get; set; } public string name { get; set; } } }