public ActionResult List() { using (var db = new XkSystem.Models.DbContext()) { var vm = new Models.SmsTo.List(); vm.SendStatus = typeof(Code.EnumHelper.SmsSendStatus).ToItemList(); vm.SendStatus.Insert(0, new SelectListItem { Text = "==状态==", Value = "-999999" }); var tb = from p in db.Table <Entity.tbSmsTo>() select p; if (string.IsNullOrEmpty(vm.SearchText) == false) { tb = tb.Where(d => d.Mobile.Contains(vm.SearchText)); } if (vm.StatusId != -999999) { tb = tb.Where(d => d.Status == vm.StatusId); } //开始日期 if (string.IsNullOrEmpty(vm.DateSearchFrom)) { vm.DateSearchFrom = DateTime.Now.AddDays(-7).ToString(XkSystem.Code.Common.StringToDate); } //结束日期 if (string.IsNullOrEmpty(vm.DateSearchTo)) { vm.DateSearchTo = DateTime.Now.ToString(XkSystem.Code.Common.StringToDate); } var fromDate = Convert.ToDateTime(vm.DateSearchFrom); var toDate = Convert.ToDateTime(vm.DateSearchTo).AddDays(1); vm.SmsToList = (from p in tb join m in db.Table <Entity.tbSms>() on p.tbSms.Id equals m.Id into n from k in n.DefaultIfEmpty() where p.SendDate >= fromDate && p.SendDate < toDate orderby p.SendDate descending select new Dto.SmsTo.List { Id = p.Id, Mobile = p.Mobile, No = p.No, Remark = p.Remark, Retry = p.Retry, SmsId = p.tbSms.Id, SmsTitle = k == null ? "" : k.SmsTitle, Status = p.Status, SendDate = p.SendDate, SysUserName = p.tbSysUser.UserName }).ToPageList(vm.Page); return(View(vm)); } }
public ActionResult GetSmsToList(SmsSendRequestModel model) { using (var db = new XkSystem.Models.DbContext()) { var vm = new Models.SmsTo.List(); var tb = (from p in db.TableRoot <Entity.tbSmsTo>() where (p.Status == decimal.Zero || p.Status == -decimal.One) && p.tbTenant.Id == model.TenantId && p.tbTenant.IsDeleted == false && p.tbSms.PlanDate.Day == DateTime.Now.Day select p); var tbSmsToList = (from p in tb join m in db.TableRoot <Entity.tbSms>() on p.tbSms.Id equals m.Id into n from k in n.DefaultIfEmpty() orderby p.SendDate select new Dto.SmsTo.List { Id = p.Id, Mobile = p.Mobile, No = p.No, Remark = p.Remark, Retry = p.Retry, SmsId = p.tbSms.Id, SmsTitle = k == null ? "" : k.SmsTitle, Status = p.Status, SendDate = p.SendDate, SysUserName = p.tbSysUser.UserName }).Take(50).ToList(); return(Json(tbSmsToList)); } }
public ActionResult List(Models.SmsTo.List vm) { return(Code.MvcHelper.Post(null, Url.Action("List", new { searchText = vm.SearchText, dateSearchFrom = vm.DateSearchFrom, dateSearchTo = vm.DateSearchTo, statusId = vm.StatusId, pageSize = vm.Page.PageSize, pageCount = vm.Page.PageCount, pageIndex = vm.Page.PageIndex }))); }
public ActionResult Export() { using (var db = new XkSystem.Models.DbContext()) { var file = System.IO.Path.GetTempFileName(); var vm = new Models.SmsTo.List(); var tb = from p in db.Table <Entity.tbSmsTo>() select p; if (string.IsNullOrEmpty(vm.SearchText) == false) { tb = tb.Where(d => d.Mobile.Contains(vm.SearchText)); } if (vm.StatusId != -999999) { tb = tb.Where(d => d.Status == vm.StatusId); } //开始日期 if (string.IsNullOrEmpty(vm.DateSearchFrom)) { vm.DateSearchFrom = DateTime.Now.AddDays(-7).ToString(XkSystem.Code.Common.StringToDate); } //结束日期 if (string.IsNullOrEmpty(vm.DateSearchTo)) { vm.DateSearchTo = DateTime.Now.ToString(XkSystem.Code.Common.StringToDate); } var fromDate = Convert.ToDateTime(vm.DateSearchFrom); var toDate = Convert.ToDateTime(vm.DateSearchTo).AddDays(1); vm.SmsToList = (from p in tb join m in db.Table <Entity.tbSms>() on p.tbSms.Id equals m.Id into n from k in n.DefaultIfEmpty() where p.SendDate >= fromDate && p.SendDate < toDate orderby p.SendDate descending select new Dto.SmsTo.List { Id = p.Id, Mobile = p.Mobile, No = p.No, Remark = p.Remark, Retry = p.Retry, SmsId = p.tbSms.Id, SmsTitle = k == null ? "" : k.SmsTitle, Status = p.Status, SendDate = p.SendDate, SysUserName = p.tbSysUser.UserName }).ToList(); var dt = new System.Data.DataTable(); dt.Columns.AddRange(new System.Data.DataColumn[] { new System.Data.DataColumn("序号"), new System.Data.DataColumn("手机号"), new System.Data.DataColumn("发送时间"), new System.Data.DataColumn("状态"), new System.Data.DataColumn("重试次数"), new System.Data.DataColumn("接收人员"), new System.Data.DataColumn("短信内容"), new System.Data.DataColumn("备注") }); var index = 0; foreach (var a in vm.SmsToList) { index++; var dr = dt.NewRow(); dr["序号"] = index; dr["手机号"] = a.Mobile; dr["接收人员"] = a.SysUserName; dr["发送时间"] = a.SendDate.ToString(XkSystem.Code.Common.StringToDateTime); if (a.Status == decimal.Zero) { dr["状态"] = "未发送"; } else if (a.Status == decimal.One) { dr["状态"] = "发送成功"; } else if (a.Status == -decimal.One) { dr["状态"] = "失败"; } dr["重试次数"] = a.Retry; dr["短信内容"] = a.SmsTitle; dr["备注"] = a.Remark; dt.Rows.Add(dr); } Code.NpoiHelper.DataTableToExcel(file, dt); if (string.IsNullOrEmpty(file) == false) { return(File(file, Code.Common.DownloadType, Code.Common.ExportByExcel)); } else { return(View()); } } }