public string MessageUserInsert(Models.SysMessageUser.Edit vm) { using (var db = new XkSystem.Models.DbContext()) { var tb = new Sys.Entity.tbSysMessageUser(); tb.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(vm.MessageUserEdit.SysUserId); tb.IsRead = false; db.Set <Sys.Entity.tbSysMessageUser>().Add(tb); if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加消息接收人"); } return(string.Empty); } }
public ActionResult ImportMessage(Models.SysMessageUser.ImportMessage vm) { var error = new List <string>(); if (error.Count == decimal.Zero) { if (ModelState.IsValid) { var file = Request.Files[nameof(vm.UploadFile)]; var fileSave = System.IO.Path.GetTempFileName(); file.SaveAs(fileSave); using (var db = new XkSystem.Models.DbContext()) { if (Code.Common.GetFileType(file.FileName) != Code.FileType.Excel) { error.AddError("上传的文件不是正确的EXCLE文件!"); } var dt = Code.NpoiHelper.ExcelToDataTable(fileSave, System.IO.Path.GetExtension(file.FileName), string.Empty); if (dt == null) { error.AddError("无法读取上传的文件,请检查文件格式是否正确!"); } var tbOrgList = new List <string>() { "用户账号", "用户姓名", "私信标题", "私信内容" }; var Text = string.Empty; foreach (var a in tbOrgList) { if (!dt.Columns.Contains(a.ToString())) { Text += a + ","; } } if (!string.IsNullOrEmpty(Text)) { error.AddError("上传的EXCEL内容与预期不一致!缺少字段:" + Text); } var tbSysUserList = db.Table <Sys.Entity.tbSysUser>().ToList();//全部用户 vm.ImportMsgList = new List <Dto.SysMessageUser.ImportMessage>(); var index = 0; foreach (System.Data.DataRow dr in dt.Rows) { index++; var SysUser = new Dto.SysMessageUser.ImportMessage() { UserCode = Convert.ToString(dr["用户账号"]), UserName = Convert.ToString(dr["用户姓名"]), MessageTitle = Convert.ToString(dr["私信标题"]), MessageContent = Convert.ToString(dr["私信内容"]) }; var user = tbSysUserList.Where(d => d.UserCode == SysUser.UserCode); if (user != null && user.Count() > 0) { SysUser.Id = user.FirstOrDefault().Id; SysUser.UserName = user.FirstOrDefault().UserName; } else { var errorMsg = string.Format("第{0}行:用户{1}[{2}]不存在系统中;", index.ToString(), SysUser.UserCode, SysUser.UserName); error.AddError(errorMsg); continue; } if (string.IsNullOrEmpty(SysUser.MessageTitle)) { var errorMsg = string.Format("第{0}行:私信标题为空,请输入私信标题;", index.ToString()); error.AddError(errorMsg); continue; } if (string.IsNullOrEmpty(SysUser.MessageContent)) { var errorMsg = string.Format("第{0}行:私信内容为空,请输入私信内容;", index.ToString()); error.AddError(errorMsg); continue; } if (vm.ImportMsgList.Where(d => d.Id == SysUser.Id && d.UserCode == SysUser.UserCode && d.UserName == SysUser.UserName && d.MessageTitle == SysUser.MessageTitle && d.MessageContent == SysUser.MessageContent).Count() == 0) { vm.ImportMsgList.Add(SysUser); } } if (error != null && error.Count > decimal.Zero) { } else { foreach (var message in vm.ImportMsgList) { var tb = new Sys.Entity.tbSysMessage(); tb.MessageTitle = message.MessageTitle; tb.IsSms = false; tb.IsEmail = false; tb.IsPermit = true;//私信 tb.Url = ""; tb.MessageContent = message.MessageContent; tb.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(Code.Common.UserId); tb.tbProgram = db.Set <Admin.Entity.tbProgram>().Find(Code.Common.ProgramId); tb.InputDate = DateTime.Now; db.Set <Sys.Entity.tbSysMessage>().Add(tb); var tbUser = new Sys.Entity.tbSysMessageUser(); tbUser.IsRead = false; tbUser.tbSysMessage = tb; tbUser.ReadDate = DateTime.Now; tbUser.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(message.Id); tbUser.UpdateTime = DateTime.Now; db.Set <Sys.Entity.tbSysMessageUser>().Add(tbUser); } if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("导入私信"); } vm.Status = true; } } } } if (error != null && error.Count > decimal.Zero) { foreach (var msg in error) { ModelState.AddModelError("", msg); } vm.Status = false; } return(View(vm)); }
public ActionResult PrivateMessageEdit(Models.SysMessage.PrivateMessageEdit vm) { using (var db = new XkSystem.Models.DbContext()) { var error = new List <string>(); if (error.Count == decimal.Zero) { if (vm.PrivateMessageMyEdit.Id == 0) { if (string.IsNullOrEmpty(vm.PrivateMessageMyEdit.ReceiverUserIds) == false) { var userIds = vm.PrivateMessageMyEdit.ReceiverUserIds.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); var tb = new Sys.Entity.tbSysMessage(); tb.MessageTitle = vm.PrivateMessageMyEdit.MessageTitle; tb.IsSms = false; tb.IsEmail = false; tb.IsPermit = true;//私信 tb.Url = ""; tb.MessageContent = vm.PrivateMessageMyEdit.MessageContent; tb.tbProgram = db.Set <Admin.Entity.tbProgram>().Find(Code.Common.ProgramId); tb.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(Code.Common.UserId); tb.InputDate = DateTime.Now; db.Set <Sys.Entity.tbSysMessage>().Add(tb); foreach (var id in userIds) { var userid = id.ConvertToInt(); var tbUser = new Sys.Entity.tbSysMessageUser(); tbUser.IsRead = false; tbUser.tbSysMessage = tb; tbUser.ReadDate = DateTime.Now; tbUser.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(userid); tbUser.UpdateTime = DateTime.Now; db.Set <Sys.Entity.tbSysMessageUser>().Add(tbUser); } if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加私信"); } } else { error.AddError("请选择接收私信的用户"); return(Code.MvcHelper.Post(error)); } } else { var tb = (from p in db.Table <Sys.Entity.tbSysMessage>() where p.Id == vm.PrivateMessageMyEdit.Id select p).FirstOrDefault(); if (tb != null) { tb.MessageTitle = vm.PrivateMessageMyEdit.MessageTitle; tb.IsSms = false; tb.IsEmail = false; tb.Url = ""; tb.IsPermit = true; tb.MessageContent = vm.PrivateMessageMyEdit.MessageContent; tb.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(Code.Common.UserId); tb.tbProgram = db.Set <Admin.Entity.tbProgram>().Find(Code.Common.ProgramId); tb.InputDate = DateTime.Now; //删除之前 var tbUser = (from p in db.Table <Sys.Entity.tbSysMessageUser>() where p.tbSysMessage.Id == vm.PrivateMessageMyEdit.Id select p).ToList(); foreach (var a in tbUser) { a.IsDeleted = true; a.UpdateTime = DateTime.Now; } //重新增加 var userIds = vm.PrivateMessageMyEdit.ReceiverUserIds.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); foreach (var id in userIds) { var userid = id.ConvertToInt(); var tbUserNew = new Sys.Entity.tbSysMessageUser(); tbUserNew.IsRead = false; tbUserNew.tbSysMessage = tb; tbUserNew.ReadDate = DateTime.Now; tbUserNew.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(userid); tbUserNew.UpdateTime = DateTime.Now; db.Set <Sys.Entity.tbSysMessageUser>().Add(tbUserNew); } if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改私信"); } } else { error.AddError(Resources.LocalizedText.MsgNotFound); } } } return(Code.MvcHelper.Post(null, Url.Action("PrivateMessageList"), "提交成功!")); } }
public ActionResult AddMessage(Models.MyMessage.MyMessageEditModel vm) { using (var db = new XkSystem.Models.DbContext()) { var error = new List <string>(); if (error.Count == decimal.Zero) { string[] RoleIDs = null; if (Request["RoleIDs"] != null) { RoleIDs = Request["RoleIDs"].Split(','); } List <int> GobalUserIds = new List <int>(); string[] UserIDs = null; if (!string.IsNullOrEmpty(vm.MyMessageEditDto.UserIds)) { UserIDs = vm.MyMessageEditDto.UserIds.Split(','); foreach (var id in UserIDs) { int uid = int.Parse(id); GobalUserIds.Add(uid); } } var tb = new Sys.Entity.tbSysMessage(); tb.MessageTitle = vm.MyMessageEditDto.MessageTitle; tb.IsSms = false; tb.IsEmail = false; tb.IsPermit = true;//私信 tb.Url = ""; tb.MessageContent = vm.MyMessageEditDto.MessageContent; tb.tbProgram = db.Set <Admin.Entity.tbProgram>().Find(Code.Common.ProgramId); tb.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(Code.Common.UserId); tb.InputDate = DateTime.Now; db.Set <Sys.Entity.tbSysMessage>().Add(tb); if (RoleIDs != null) { foreach (var id in RoleIDs) { int rid = int.Parse(id); var UserIds = (from p in db.Table <Sys.Entity.tbSysUserRole>() where p.tbSysRole.Id == rid && p.IsDeleted == false select p.tbSysUser.Id).ToList(); GobalUserIds.AddRange(UserIds); } } GobalUserIds = GobalUserIds.Distinct().ToList(); foreach (var item in GobalUserIds) { var userid = item; var tbUser = new Sys.Entity.tbSysMessageUser(); tbUser.IsRead = false; tbUser.tbSysMessage = tb; tbUser.ReadDate = DateTime.Now; tbUser.tbSysUser = db.Set <Sys.Entity.tbSysUser>().Find(userid); tbUser.UpdateTime = DateTime.Now; db.Set <Sys.Entity.tbSysMessageUser>().Add(tbUser); } db.SaveChanges(); } //if (error.Count > 0) //{ // return Content("<script type='text/javascript'>$(function(){ mui.alert('" + string.Join("\r\n", error) + "');});</script>"); //} //return Content("<script type='text/javascript'> window.parent.location.href = '" + Url.Action("MyMessageIndex", "MyMessage", new { area = "wechat" }) + "';</script>"); return(Code.MvcHelper.Post(error, Url.Action("MyMessageIndex"))); } }