using Ninject; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Web; using System.Web.Mvc; using WX.CRM.BLL.Util; using WX.CRM.Common; using WX.CRM.IBLL.Res; using WX.CRM.Model.Enum; using WX.CRM.WebHelper; using Newtonsoft.Json; using Ninject.Activation; using System.Web.UI.WebControls; using WX.CRM.Model.DTO; using Parameter = WX.CRM.Model.Enum.Parameter; namespace WX.CRM.WEB.Controllers.Live { public class LiveController : BaseController { [Inject] public IRES_SCENE _resScene { get; set; } private CACHE_BL cache_BL = new CACHE_BL(); WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper(); [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public ActionResult Index(string test1) { return View(); } [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public ActionResult LiveUserSummay() { ToolBar tool = new ToolBar(); string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.直播客户列表, userRightId); tool.AddOtherButton("Other1", "导出", "icon-export", "Export", false); tool.AllowButton(toolbtn); ViewBag.ToolBar = tool; var scenetype = _resScene.GetSceneType(); ViewBag.SceneType = scenetype; var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); ViewBag.webapi = webapi; var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; ViewBag.appid = appid; ViewBag.eid = Eid; ViewBag.userGroupId = userGroupId; ViewBag.saleDeptId = saleDeptId; ViewBag.roleCodes = DataCacheHelper.GetCache().Get_RoleCodes(userRoleId); return View(); } [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public ActionResult LiveUserRealTime() { ToolBar tool = new ToolBar(); string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.直播客户列表, userRightId); tool.AddOtherButton("Other1", "导出", "icon-export", "Export", false); tool.AllowButton(toolbtn); ViewBag.ToolBar = tool; var scenetype = _resScene.GetSceneType(); ViewBag.SceneType = scenetype; var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); ViewBag.webapi = webapi; var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; ViewBag.appid = appid; ViewBag.eid = Eid; ViewBag.userGroupId = userGroupId; ViewBag.saleDeptId = saleDeptId; ViewBag.roleCodes = DataCacheHelper.GetCache().Get_RoleCodes(userRoleId); return View(); } [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public ActionResult LiveUserWework() { ToolBar tool = new ToolBar(); string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.直播客户列表, userRightId); tool.AddOtherButton("Other1", "导出", "icon-export", "Export", false); tool.AllowButton(toolbtn); ViewBag.ToolBar = tool; var scenetype = _resScene.GetSceneType(); ViewBag.SceneType = scenetype; var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); ViewBag.webapi = webapi; var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; ViewBag.appid = appid; ViewBag.eid = Eid; ViewBag.userGroupId = userGroupId; ViewBag.saleDeptId = saleDeptId; ViewBag.roleCodes = DataCacheHelper.GetCache().Get_RoleCodes(userRoleId); return View(); } public ActionResult SalesLeads(string resid,string appuserid,string app_id) { if (resid.Length != 18) { //转resid var phone = cache_BL.GetPhone(resid); resid = ResUtil.CreateResId(phone); } ViewBag.sHelper = sHelper; var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); ViewBag.webapi = webapi; ViewBag.app_id = app_id; var ext_flag = DateTimeTool.ConvertDateTimeLong(DateTime.Now); var encyptDto = ""; var j = ""; j = JsonConvert.SerializeObject(new saledsleadDesDto { appid = app_id, appuserid = appuserid, deptid = deptId.ToString(), eid = Eid.ToString(), resid= resid, ext_flag = ext_flag }); encyptDto = sHelper.encyptData("WX_EXT", j); ViewBag.encyptDto = encyptDto; return View(); } public class encyptDto { string resid { get; set; } public string appid { get; set; } public string appuserid { get; set; } public string eid { get; set; } public string deptId { get; set; } } /// /// 导出直播客户列表 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public FileResult LiveUserSummayExport() { var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); var url = webapi + "/api/Live/Summay"; var queryString = Request.QueryString.ToString(); var fileName = Request["filename"]; Dictionary header = new Dictionary(); var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; header.Add("appid", appid); header.Add("eid", Eid.ToString()); List modelList = new List(); var pageSize = int.Parse(Request["pageSize"]); queryString = queryString.Replace("pageSize=" + pageSize, "pageSize=10000"); var index = pageSize % 10000 > 0 ? pageSize / 10000 + 1 : pageSize / 10000; for (var i = 1; i <= index; i++) { var json = Utility.GetData(url, HttpUtility.UrlDecode(queryString), header, System.Text.Encoding.UTF8, 60000);//60秒 Dictionary res = JsonConvert.DeserializeObject>(json); var dataJson = JsonConvert.SerializeObject(res["data"]); var dataList = JsonConvert.DeserializeObject>(dataJson)["tableData"]; var dataListJson = JsonConvert.SerializeObject(dataList); modelList.AddRange(JsonConvert.DeserializeObject>(dataListJson)); //提取数据 queryString = queryString.Replace("currentPage=" + i, "currentPage=" + (i + 1)); } int sort = 1;//添加序号 foreach (var item in modelList) { item.sort = sort++; item.user_type = item.user_type == "1" ? "否" : "是"; item.nickname = HttpUtility.UrlDecode(item.nickname); item.inviter_eid = item.inviter_eid == item.eid.ToString() ? "有" : "无"; item.is_wework = item.is_wework == "1" ? "有" : "无"; item.is_belong = item.is_belong == "1" ? "有" : "无"; item.employee_name = item.employee_name.Trim(); item.interaction = item.interaction == "1" ? "有" : "无"; } //拼接需要导出的列 List filds = new List(); List fildsName = new List(); foreach (var item in typeof(SummayItem).GetProperties()) { var dispalyName = item.GetCustomAttributes(typeof(DisplayNameAttribute), true); if (dispalyName.Any()) { filds.Add(item.Name); DisplayNameAttribute attr = dispalyName[0] as DisplayNameAttribute; fildsName.Add(attr.DisplayName); } } string checkedFilds = $"[{string.Join("][", filds)}]"; string checkedTitle = string.Join(",", fildsName); return File(ExcelHelper.ExportListModelToExcel(modelList, fileName, 60000, checkedFilds, checkedTitle, null), "application/ms-excel", PageRequest.GetDlownLoadName($"{fileName}.xls")); } /// /// 导出直播客户明细 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public FileResult LiveUserRealTimeExport() { var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); var url = webapi + "/api/Live/RealTime"; var queryString = Request.QueryString.ToString(); var fileName = Request["filename"]; Dictionary header = new Dictionary(); var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; header.Add("appid", appid); header.Add("eid", Eid.ToString()); List modelList = new List(); var pageSize = int.Parse(Request["pageSize"]); queryString = queryString.Replace("pageSize=" + pageSize, "pageSize=10000"); var index = pageSize % 10000 > 0 ? pageSize / 10000 + 1 : pageSize / 10000; for (var i = 1; i <= index; i++) { var json = Utility.GetData(url, HttpUtility.UrlDecode(queryString), header, System.Text.Encoding.UTF8, 60000);//60秒 Dictionary res = JsonConvert.DeserializeObject>(json); var dataJson = JsonConvert.SerializeObject(res["data"]); var dataList = JsonConvert.DeserializeObject>(dataJson)["tableData"]; var dataListJson = JsonConvert.SerializeObject(dataList); modelList.AddRange(JsonConvert.DeserializeObject>(dataListJson)); //提取数据 queryString = queryString.Replace("currentPage=" + i, "currentPage=" + (i + 1)); } int sort = 1;//添加序号 foreach (var item in modelList) { item.sort = sort++; item.user_type = item.user_type == "1" ? "否" : "是"; item.nickname = HttpUtility.UrlDecode(item.nickname); item.is_living = item.is_living == "1" ? "直播中" : "直播结束"; item.is_online = item.is_online == "1" ? "在线" : "不在线"; item.inviter_eid = item.inviter_eid == item.eid.ToString() ? "有" : "无"; item.is_belong = item.is_belong == "1" ? "有" : "无"; item.is_wework = item.is_wework == "1" ? "有" : "无"; item.interaction = item.interaction == "1" ? "有" : "无"; switch (item.buy_action) { case "0": item.buy_action = "无购买行为"; break; case "1": item.buy_action = "仅点击"; break; case "2": item.buy_action = "仅下单"; break; case "3": item.buy_action = "已购买"; break; } } //拼接需要导出的列 List filds = new List(); List fildsName = new List(); foreach (var item in typeof(RealTimeItem).GetProperties()) { var dispalyName = item.GetCustomAttributes(typeof(DisplayNameAttribute), true); if (dispalyName.Any()) { filds.Add(item.Name); DisplayNameAttribute attr = dispalyName[0] as DisplayNameAttribute; fildsName.Add(attr.DisplayName); } } string checkedFilds = $"[{string.Join("][", filds)}]"; string checkedTitle = string.Join(",", fildsName); return File(ExcelHelper.ExportListModelToExcel(modelList, fileName, 60000, checkedFilds, checkedTitle, null), "application/ms-excel", PageRequest.GetDlownLoadName($"{fileName}.xls")); } /// /// 导出直播客户明细 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public FileResult LiveUserWeworkExport() { var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); var url = webapi + "/api/Live/Wework"; var queryString = Request.QueryString.ToString(); Dictionary header = new Dictionary(); var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; header.Add("appid", appid); header.Add("eid", Eid.ToString()); var json = Utility.GetData(url, HttpUtility.UrlDecode(queryString), header, System.Text.Encoding.UTF8, 30000);//30秒 Dictionary res = JsonConvert.DeserializeObject>(json); var dataJson = JsonConvert.SerializeObject(res["data"]); var dataList = JsonConvert.DeserializeObject>(dataJson)["tableData"]; var dataListJson = JsonConvert.SerializeObject(dataList); List modelList = JsonConvert.DeserializeObject>(dataListJson); //提取数据 int sort = 1;//添加序号 foreach (var item in modelList) { item.sort = sort++; item.user_type = item.user_type == "1" ? "否" : "是"; item.nickname = HttpUtility.UrlDecode(item.nickname); item.is_comment = item.is_comment == "1" ? "是" : "否"; item.is_wework = item.is_wework == "1" ? "有" : "无"; item.is_mic = item.is_mic == "1" ? "是" : "否"; } //拼接需要导出的列 List filds = new List(); List fildsName = new List(); foreach (var item in typeof(WeworkItem).GetProperties()) { var dispalyName = item.GetCustomAttributes(typeof(DisplayNameAttribute), true); if (dispalyName.Any()) { filds.Add(item.Name); DisplayNameAttribute attr = dispalyName[0] as DisplayNameAttribute; fildsName.Add(attr.DisplayName); } } string checkedFilds = $"[{string.Join("][", filds)}]"; string checkedTitle = string.Join(",", fildsName); return File(ExcelHelper.ExportListModelToExcel(modelList, "企微直播列表", 60000, checkedFilds, checkedTitle, null), "application/ms-excel", PageRequest.GetDlownLoadName("企微直播列表.xls")); } /// /// 导出回放汇总客户列表 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public FileResult LivePlaybackUserSummayExport() { var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); var url = webapi + "/api/Live/Playback/Summay"; var queryString = Request.QueryString.ToString(); var fileName = Request["filename"]; Dictionary header = new Dictionary(); var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; header.Add("appid", appid); header.Add("eid", Eid.ToString()); List modelList = new List(); var pageSize = int.Parse(Request["pageSize"]); queryString = queryString.Replace("pageSize=" + pageSize, "pageSize=10000"); var index = pageSize % 10000 > 0 ? pageSize / 10000 + 1 : pageSize / 10000; for (var i = 1; i <= index; i++) { var json = Utility.GetData(url, HttpUtility.UrlDecode(queryString), header, System.Text.Encoding.UTF8, 60000);//60秒 Dictionary res = JsonConvert.DeserializeObject>(json); var dataJson = JsonConvert.SerializeObject(res["data"]); var dataList = JsonConvert.DeserializeObject>(dataJson)["tableData"]; var dataListJson = JsonConvert.SerializeObject(dataList); modelList.AddRange(JsonConvert.DeserializeObject>(dataListJson)); //提取数据 queryString = queryString.Replace("currentPage=" + i, "currentPage=" + (i + 1)); } int sort = 1;//添加序号 foreach (var item in modelList) { item.sort = sort++; item.user_type = item.user_type == "1" ? "否" : "是"; item.nickname = HttpUtility.UrlDecode(item.nickname); item.inviter_eid = item.inviter_eid == item.eid.ToString() ? "有" : "无"; item.is_wework = item.is_wework == "1" ? "有" : "无"; item.is_belong = item.is_belong == "1" ? "有" : "无"; } //拼接需要导出的列 List filds = new List(); List fildsName = new List(); foreach (var item in typeof(backplaySummayItem).GetProperties()) { var dispalyName = item.GetCustomAttributes(typeof(DisplayNameAttribute), true); if (dispalyName.Any()) { filds.Add(item.Name); DisplayNameAttribute attr = dispalyName[0] as DisplayNameAttribute; fildsName.Add(attr.DisplayName); } } string checkedFilds = $"[{string.Join("][", filds)}]"; string checkedTitle = string.Join(",", fildsName); return File(ExcelHelper.ExportListModelToExcel(modelList, fileName, 60000, checkedFilds, checkedTitle, null), "application/ms-excel", PageRequest.GetDlownLoadName($"{fileName}.xls")); } /// /// 导出回放客户明细 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_直播客户列表)] public FileResult LivePlaybackUserRealTimeExport() { var webapi = cache_BL.GetValue_Parameter(Parameter.CRM_CORE_WEBAPI); var url = webapi + "/api/Live/Playback/Detail"; var queryString = Request.QueryString.ToString(); var fileName = Request["filename"]; Dictionary header = new Dictionary(); var appid = System.Configuration.ConfigurationManager.AppSettings["appid"]; header.Add("appid", appid); header.Add("eid", Eid.ToString()); List modelList = new List(); var pageSize = int.Parse(Request["pageSize"]); queryString = queryString.Replace("pageSize=" + pageSize, "pageSize=10000"); var index = pageSize % 10000 > 0 ? pageSize / 10000 + 1 : pageSize / 10000; for (var i = 1; i <= index; i++) { var json = Utility.GetData(url, HttpUtility.UrlDecode(queryString), header, System.Text.Encoding.UTF8, 60000);//60秒 Dictionary res = JsonConvert.DeserializeObject>(json); var dataJson = JsonConvert.SerializeObject(res["data"]); var dataList = JsonConvert.DeserializeObject>(dataJson)["tableData"]; var dataListJson = JsonConvert.SerializeObject(dataList); modelList.AddRange(JsonConvert.DeserializeObject>(dataListJson)); //提取数据 queryString = queryString.Replace("currentPage=" + i, "currentPage=" + (i + 1)); } int sort = 1;//添加序号 foreach (var item in modelList) { item.sort = sort++; item.user_type = item.user_type == "1" ? "否" : "是"; item.nickname = HttpUtility.UrlDecode(item.nickname); item.inviter_eid = item.inviter_eid == item.eid.ToString() ? "有" : "无"; item.is_wework = item.is_wework == "1" ? "有" : "无"; item.is_belong = item.is_belong == "1" ? "有" : "无"; } //拼接需要导出的列 List filds = new List(); List fildsName = new List(); foreach (var item in typeof(backplayRealTimeItem).GetProperties()) { var dispalyName = item.GetCustomAttributes(typeof(DisplayNameAttribute), true); if (dispalyName.Any()) { filds.Add(item.Name); DisplayNameAttribute attr = dispalyName[0] as DisplayNameAttribute; fildsName.Add(attr.DisplayName); } } string checkedFilds = $"[{string.Join("][", filds)}]"; string checkedTitle = string.Join(",", fildsName); return File(ExcelHelper.ExportListModelToExcel(modelList, fileName, 60000, checkedFilds, checkedTitle, null), "application/ms-excel", PageRequest.GetDlownLoadName($"{fileName}.xls")); } } public class backplaySummayItem { [DisplayName("序号")] public int sort { get; set; } [DisplayName("事业部")] public string dept_name { get; set; } //[DisplayName("企业号")] //public string app_name { get; set; } //[DisplayName("企微客服ID")] //public string userid { get; set; } [DisplayName("组别")] public string group_name { get; set; } [DisplayName("工号")] public string eid { get; set; } [DisplayName("客服")] public string employee_name { get; set; } [DisplayName("好友关系")] public string is_wework { get; set; } [DisplayName("归属关系")] public string is_belong { get; set; } [DisplayName("课程邀请")] public string inviter_eid { get; set; } [DisplayName("回放课")] public string title { get; set; } [DisplayName("客户ID")] public string umid { get; set; } [DisplayName("真实姓名")] public string username { get; set; } [DisplayName("客户是否为员工账号")] public string user_type { get; set; } [DisplayName("头像")] public string headimgurl { get; set; } [DisplayName("昵称")] public string nickname { get; set; } [DisplayName("平均回放时长")] public string avgWatchTimeStr { get; set; } [DisplayName("回放天数")] public string watch_days { get; set; } [DisplayName("回放总时长")] public string totalWatchTimeStr { get; set; } [DisplayName("开始回放时间")] public string start_time { get; set; } [DisplayName("最后回放时间")] public string end_time { get; set; } public string appuserid { get; set; } public string city { get; set; } public string country { get; set; } public string customerid { get; set; } public string deptid { get; set; } public string groupid { get; set; } public string ip { get; set; } public string living_id { get; set; } public string province { get; set; } public string scheduleid { get; set; } public string self_deptid { get; set; } public string self_eid { get; set; } public string total_watch_time { get; set; } public string update_time { get; set; } [DisplayName("进线时间")] public string create_time { get; set; } } public class backplayRealTimeItem { [DisplayName("序号")] public int sort { get; set; } [DisplayName("事业部")] public string dept_name { get; set; } [DisplayName("组别")] public string group_name { get; set; } //[DisplayName("企业号")] //public string app_name { get; set; } //[DisplayName("企微客服ID")] //public string userid { get; set; } [DisplayName("工号")] public string eid { get; set; } [DisplayName("客服")] public string employee_name { get; set; } [DisplayName("好友关系")] public string is_wework { get; set; } [DisplayName("归属关系")] public string is_belong { get; set; } [DisplayName("课程邀请")] public string inviter_eid { get; set; } [DisplayName("回放课")] public string title { get; set; } [DisplayName("客户ID")] public string umid { get; set; } [DisplayName("真实姓名")] public string username { get; set; } [DisplayName("客户是否为员工账号")] public string user_type { get; set; } [DisplayName("头像")] public string headimgurl { get; set; } [DisplayName("昵称")] public string nickname { get; set; } [DisplayName("平均每次时长")] public string avgWatchTimeStr { get; set; } [DisplayName("回放次数")] public string avg_watch_times { get; set; } [DisplayName("回放时长")] public string totalWatchTimeStr { get; set; } [DisplayName("进入时间")] public string start_time { get; set; } [DisplayName("最后时间")] public string last_time { get; set; } [DisplayName("进线时间")] public string create_time { get; set; } } public class SummayItem { [DisplayName("序号")] public int sort { get; set; } [DisplayName("事业部")] public string dept_name { get; set; } //[DisplayName("企业号")] //public string app_name { get; set; } //[DisplayName("企微客服ID")] //public string userid { get; set; } [DisplayName("组别")] public string group_name { get; set; } [DisplayName("工号")] public string eid { get; set; } [DisplayName("客服")] public string employee_name { get; set; } [DisplayName("好友关系")] public string is_wework { get; set; } [DisplayName("归属关系")] public string is_belong { get; set; } [DisplayName("课程邀请")] public string inviter_eid { get; set; } [DisplayName("直播课")] public string title { get; set; } [DisplayName("客户ID")] public string umid { get; set; } [DisplayName("真实姓名")] public string username { get; set; } [DisplayName("互动行为")] public string interaction { get; set; } [DisplayName("客户是否为员工账号")] public string user_type { get; set; } [DisplayName("头像")] public string headimgurl { get; set; } [DisplayName("昵称")] public string nickname { get; set; } [DisplayName("平均听课时长")] public string avgWatchTime { get; set; } [DisplayName("听课天数")] public string watch_days { get; set; } [DisplayName("听课总时长")] public string totalWatchTimeStr { get; set; } [DisplayName("开始听课时间")] public string start_time { get; set; } [DisplayName("最后听课时间")] public string end_time { get; set; } public string appuserid { get; set; } public string city { get; set; } public string country { get; set; } public string customerid { get; set; } public string deptid { get; set; } public string groupid { get; set; } public string ip { get; set; } public string living_id { get; set; } public string province { get; set; } public string scheduleid { get; set; } public string self_deptid { get; set; } public string self_eid { get; set; } public string total_watch_time { get; set; } public string update_time { get; set; } [DisplayName("进线时间")] public string create_time { get; set; } } public class RealTimeItem { [DisplayName("序号")] public int sort { get; set; } [DisplayName("事业部")] public string dept_name { get; set; } [DisplayName("组别")] public string group_name { get; set; } //[DisplayName("企业号")] //public string app_name { get; set; } //[DisplayName("企微客服ID")] //public string userid { get; set; } [DisplayName("工号")] public string eid { get; set; } [DisplayName("客服")] public string employee_name { get; set; } [DisplayName("好友关系")] public string is_wework { get; set; } [DisplayName("归属关系")] public string is_belong { get; set; } [DisplayName("课程邀请")] public string inviter_eid { get; set; } [DisplayName("直播课")] public string title { get; set; } [DisplayName("直播课状态")] public string is_living { get; set; } [DisplayName("客户ID")] public string umid { get; set; } [DisplayName("真实姓名")] public string username { get; set; } [DisplayName("购买行为")] public string buy_action { get; set; } [DisplayName("产品名称")] public string subproductname { get; set; } [DisplayName("互动行为")] public string interaction { get; set; } [DisplayName("客户是否为员工账号")] public string user_type { get; set; } [DisplayName("头像")] public string headimgurl { get; set; } [DisplayName("昵称")] public string nickname { get; set; } [DisplayName("在线状态")] public string is_online { get; set; } [DisplayName("进入时间")] public string entry_time { get; set; } [DisplayName("直播中已离开时间")] public string offline_time { get; set; } [DisplayName("最后时间")] public string last_time { get; set; } [DisplayName("听课时长")] public string watch_time_str { get; set; } [DisplayName("进线时间")] public string create_time { get; set; } } public class WeworkItem { [DisplayName("序号")] public int sort { get; set; } [DisplayName("事业部")] public string dept_name { get; set; } [DisplayName("组别")] public string group_name { get; set; } //[DisplayName("企业号")] //public string app_name { get; set; } //[DisplayName("企微客服ID")] //public string userid { get; set; } [DisplayName("工号")] public string eid { get; set; } [DisplayName("好友关系")] public string is_wework { get; set; } [DisplayName("客服")] public string employee_name { get; set; } [DisplayName("直播企微")] public string appname { get; set; } [DisplayName("课程名称")] public string title { get; set; } [DisplayName("客户ID")] public string umid { get; set; } [DisplayName("真实姓名")] public string username { get; set; } [DisplayName("客户是否为员工账号")] public string user_type { get; set; } [DisplayName("头像")] public string headimgurl { get; set; } [DisplayName("昵称")] public string nickname { get; set; } [DisplayName("是否发言")] public string is_comment { get; set; } [DisplayName("是否连麦")] public string is_mic { get; set; } [DisplayName("听课时长")] public string watch_time_str { get; set; } [DisplayName("直播日期")] public string living_date { get; set; } [DisplayName("进线时间")] public string create_time { get; set; } } }