public Result <bool> ReadNotification(int userId, int notificationId) { try { var model = new NotificationEntity { Id = notificationId, IsSeen = true, ReceiverId = userId, }; Update(model, n => n.IsSeen); var result = SaveChanges(); if (!result) { throw new Exception(EResultMessage.DatabaseError.ToString()); } return(ResultHelper.Succeeded(result)); } catch (Exception e) { return(ResultHelper.Failed(false, message: e.Message)); } }
public Result <List <CommentViewModel> > GetItemComments(int itemId, int pageNo, int pageSize) { try { var comments = GetAllPaginated(c => c.ItemId == itemId, pageNo, pageSize, "User"); if (comments.Data == null) { throw new Exception(EResultMessage.DatabaseError.ToString()); } var result = comments.Data.Select(c => new CommentViewModel { Id = c.Id, Content = c.Content, Date = c.Date, User = new UserViewModel { Id = c.User.Id, Name = c.User.Name, Picture = c.User.Picture } }).ToList(); return(ResultHelper.Succeeded(result, result.Count)); } catch (Exception e) { return(ResultHelper.Failed <List <CommentViewModel> >(message: e.Message)); } }
public Result <bool> ChangePassword(int userId, UserPasswordViewModel password) { try { if (password.NewPassword != password.RepeatedNewPassword) { throw new Exception(EResultMessage.InvalidData.ToString()); } var user = Get(u => u.Id == userId); if (user == null) { throw new Exception(EResultMessage.NotFound.ToString()); } if (!Protected.Validate(password.OldPassword, user.HashPassword)) { throw new Exception(EResultMessage.WrongPassword.ToString()); } user.HashPassword = Protected.CreatePasswordHash(password.NewPassword); Update(user); if (!SaveChanges()) { throw new Exception(EResultMessage.DatabaseError.ToString()); } return(ResultHelper.Succeeded(true, message: EResultMessage.RegistrationDone.ToString())); } catch (Exception e) { return(ResultHelper.Failed <bool>(message: e.Message)); } }
public HttpResponseMessage DelStudent([FromBody] DelStuOrTch m) { lock (_locker) { var exam = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info);//找到这次考试 if (exam == null) { return(ResultHelper.Failed("未找到该次考试")); } St_Info st = MongoDbHelper.FindOne <St_Info>(m.UserID, DbName.St_Info);//找到这个学生 if (st == null) { return(ResultHelper.Failed("未找到该考生信息")); } var ppnm = MongoDbHelper.QueryOne <Pp_Nm>(DbName.Pp_Nm, w => w.sid == st.sid && w.eid == exam._id);//找到这个学校试卷数量 ppnm.ct--; for (int i = 0; i < st.subEs.Count; i++) { var sb = exam.sbs.Where(w => w._id == st.subEs[i].sbid).FirstOrDefault(); var pp = ppnm.sbnms.Where(w => w.sbid == st.subEs[i].sbid).FirstOrDefault(); sb.stct--; pp.sct--; } MongoDbHelper.ReplaceOne(ppnm._id.ToString(), ppnm, DbName.Pp_Nm); MongoDbHelper.ReplaceOne(m.ExamID, exam, DbName.E_Info); MongoDbHelper.DeleteOne <St_Info>(m.UserID, DbName.St_Info); return(ResultHelper.OK()); } }
public Result <List <MessageViewModel> > GetMessages(int chatId) { try { var Messages = GetAll(i => i.ChatId == chatId); if (Messages == null) { throw new Exception(EResultMessage.DatabaseError.ToString()); } var result = Messages.Select(i => { return(new MessageViewModel { Id = i.Id, Content = i.Content, Time = i.Time, Type = i.Type, SenderId = i.UserId }); }).ToList(); return(ResultHelper.Succeeded(result)); } catch (Exception e) { return(ResultHelper.Failed <List <MessageViewModel> >(message: e.Message)); } }
/// <summary> /// 删除学校所有学生导入结束也可以删 /// </summary> /// <param name="m"></param> /// <returns></returns> public HttpResponseMessage DelSchStudent1([FromBody] DelStuOrTch m) { lock (_locker) { var exam = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info);//找到这次考试 if (exam == null) { return(ResultHelper.Failed("未找到该次考试")); } var sts = MongoDbHelper.QueryBy <St_Info>(DbName.St_Info, w => w.sid == m.UserID && w.eid == exam._id); //找到这个学校学生 var ppnm = MongoDbHelper.QueryOne <Pp_Nm>(DbName.Pp_Nm, w => w.sid == m.UserID && w.eid == exam._id); //找到这个学校试卷数量 if (ppnm != null) { MongoDbHelper.DeleteOne <Pp_Nm>(ppnm._id.ToString(), DbName.Pp_Nm); } foreach (var st in sts) { for (int i = 0; i < st.subEs.Count; i++) { var sb = exam.sbs.Where(w => w._id == st.subEs[i].sbid).FirstOrDefault(); sb.stct--; } MongoDbHelper.DeleteOne <St_Info>(st._id.ToString(), DbName.St_Info); } var filter = new BsonDocument(); filter.Add("sid", m.UserID); filter.Add("eid", exam._id); MongoDbHelper.DeleteByBson <St_Info>(filter, DbName.St_Info); MongoDbHelper.ReplaceOne(m.ExamID, exam, DbName.E_Info); return(ResultHelper.OK()); } }
public Result <List <NotificationViewModel> > GetUserNotifications(int userId, int pageNo, int pageSize) { try { var notifications = GetAllPaginated(n => n.ReceiverId == userId, pageNo, pageSize, "Sender"); if (notifications.Data == null) { throw new Exception(EResultMessage.DatabaseError.ToString()); } var result = notifications.Data.Select(n => new NotificationViewModel { Id = n.Id, Content = n.Content, IsSeen = n.IsSeen, Link = n.Link, Type = n.Type, Date = n.Date, Sender = n.Sender != null ? new UserViewModel { Id = n.Sender.Id, Name = n.Sender.Name, Picture = n.Sender.Picture } : null }).ToList(); return(ResultHelper.Succeeded(result, notifications.Count)); } catch (Exception e) { return(ResultHelper.Failed <List <NotificationViewModel> >(message: e.Message)); } }
public HttpResponseMessage Login([FromBody] UserLogin m) { var info = MongoDbHelper.QueryOne <U_Info>(DbName.U_Info, w => w._id == m.Account); if (info != null) { if (m.Password == CommonHelper.SecurityHelper.DecryptString(info.pwd)) { Models.User su = new Models.User() { ID = info._id, Email = info.em, PersonName = info.pnm, QQ = info.qq, SchoolFullName = info.sfnm, SchoolName = info.snm, Tel = info.ph, AreaID = info.area, Area = info.tp == 0 ? null : Dict.Area.GetVal(info.area), Type = info.tp, SchoolID = info.tp != 1 ? null : info._id }; return(ResultHelper.OK(su)); } else { return(ResultHelper.Failed("密码不正确")); } } else { return(ResultHelper.Failed("用户不存在")); } }
public Result <bool> Confirm(int?id, string token) { try { if (id == null || token == null) { throw new Exception("Wrong Link"); } var user = Get(u => u.Id == id); if (user == null) { throw new Exception("Not found User"); } int userId = _tokenManager.ValidateToken(token, user.Type).Id; if (userId != id) { throw new Exception("Wrong Link"); } user.IsConfirmed = true; Update(user); SaveChanges(); return(ResultHelper.Succeeded(data: true)); } catch (Exception e) { return(ResultHelper.Failed <bool>(message: e.Message)); } }
public Result <UserViewModel> Login(LoginViewModel user) { try { var userResult = Get(u => u.Email.ToUpper() == user.Email.ToUpper()); if (userResult == null) { throw new Exception(EResultMessage.EmailOrPasswordWrong.ToString()); } if (!userResult.IsConfirmed) { throw new Exception(EResultMessage.UserNotConfirmed.ToString()); } if (!Protected.Validate(user.Password, userResult.HashPassword)) { throw new Exception(EResultMessage.EmailOrPasswordWrong.ToString()); } return(ResultHelper.Succeeded(_tokenManager.GenerateUserToken(userResult))); } catch (Exception e) { return(ResultHelper.Failed <UserViewModel>(message: e.Message)); } }
public HttpResponseMessage SendScore([FromBody] SendScore m) { var eInfo = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info); if (eInfo == null) { return(ResultHelper.Failed("未查到当前考试")); } if (m.School.ToLower() == "all") { var allsch = MongoDbHelper.QueryBy <Sch_Sc>(DbName.Sch_Sc, w => w.eid == eInfo._id); for (int i = 0; i < allsch.Count; i++) { allsch[i].state = 1; MongoDbHelper.ReplaceOne(allsch[i]._id.ToString(), allsch[i], DbName.Sch_Sc); } return(ResultHelper.OK()); } var sch = MongoDbHelper.QueryOne <Sch_Sc>(DbName.Sch_Sc, w => w.eid == eInfo._id && w.sid == m.School); if (sch != null) { sch.state = 1; MongoDbHelper.ReplaceOne(sch._id.ToString(), sch, DbName.Sch_Sc); return(ResultHelper.OK()); } return(ResultHelper.Failed("未找到该学校")); }
public async Task <Result <bool> > ContactUs(int userId, ContactUsViewModel contactUs) { try { var body = File.ReadAllText("wwwroot/html/contactus.html"); body = body.Replace("{user-email}", contactUs.Email); body = body.Replace("{user-id}", userId.ToString()); body = body.Replace("{user-message}", contactUs.Message); await _mailProvider.SendAsync(new MailMessageViewModel { From = contactUs.Email, To = MailProvider.SMTP_USER, Subject = contactUs.Subject, Body = body, IsBodyHtml = true }); return(ResultHelper.Succeeded(true)); } catch (Exception e) { return(ResultHelper.Failed <bool>(message: e.Message)); } }
public Result <bool> EditItem(int userId, int itemId, ItemViewModel item) { try { var data = new ItemEntity { Id = itemId, Content = item.Content, UserId = userId }; Update(data, i => i.Content); var result = SaveChanges(); if (!result) { throw new Exception(EResultMessage.DatabaseError.ToString()); } return(ResultHelper.Succeeded(result)); } catch (Exception e) { return(ResultHelper.Failed <bool>(message: e.Message)); } }
public Result <List <ItemDetailsViewModel> > GetItems(int?userId, bool isLost, int pageNo, int pageSize) { try { var items = GetAllPaginated(i => i.UserId == (userId ?? i.UserId) && i.IsLost == isLost && i.MatchDate == null, pageNo, pageSize, "Images", "Attributes", "User"); if (items.Data == null) { throw new Exception(EResultMessage.DatabaseError.ToString()); } var result = items.Data.Select(i => new ItemDetailsViewModel { Id = i.Id, Content = i.Content, CreationDate = i.CreationDate, Type = i.Type, Attributes = i.Attributes.ToDictionary(i => i.Key, i => i.Value), Images = i.Images.Select(i => i.Image).ToList(), User = new UserViewModel { Name = i.User.Name, Picture = i.User.Picture } }).OrderByDescending(i => i.CreationDate).ToList(); return(ResultHelper.Succeeded(result, items.Count)); } catch (Exception e) { return(ResultHelper.Failed <List <ItemDetailsViewModel> >(message: e.Message)); } }
public Result <bool> AddFeedback(int userId, FeedbackViewModel feedbackViewModel) { try { var feedback = new FeedbackEntity { Rate = feedbackViewModel.Rate, Opinion = feedbackViewModel.Opinion, UserId = userId }; Add(feedback); var result = SaveChanges(); if (!result) { throw new Exception(EResultMessage.DatabaseError.ToString()); } return(ResultHelper.Succeeded(data: true)); } catch (Exception e) { return(ResultHelper.Failed(data: false, message: e.Message)); } }
public Result <int> AddComment(int userId, int itemId, CommentViewModel comment) { try { var data = new CommentEntity { Content = comment.Content, Date = DateTime.UtcNow, ItemId = itemId, UserId = userId }; var result = Add(data); if (result == null || !SaveChanges()) { throw new Exception(EResultMessage.DatabaseError.ToString()); } return(ResultHelper.Succeeded(result.Id)); } catch (Exception e) { return(ResultHelper.Failed <int>(message: e.Message)); } }
public HttpResponseMessage SelStudentNum([FromBody] ExamAndID m) { var eInfo = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info); ObjectId objectId = new ObjectId(); if (ObjectId.TryParse(m.ExamID, out objectId)) { var data = MongoDbHelper.QueryOne <Pp_Nm>(DbName.Pp_Nm, w => w.sid == m.ID && w.eid == objectId); if (data == null) { return(ResultHelper.OK(new { Data = new List <PaperNum>(), Count = 0 })); } PaperNum t = new PaperNum(); t.IsSure = data.iss; for (int j = 0; j < eInfo.sbs.Count; j++) { SubNum sub = new SubNum(); var s = data.sbnms.Where(w => w.sbid == eInfo.sbs[j]._id).FirstOrDefault(); sub.SubID = s.sbid.ToString(); sub.SubName = s.sbnm; sub.SubCount = s.sct; sub.AcCount = s.ac; t.Subs.Add(sub); } return(ResultHelper.OK(t)); } return(ResultHelper.Failed("未找到该次考试")); }
public Result <bool> EditSettings(int userId, UserViewModel user) { try { var data = new UserEntity { Id = userId, Name = user.Name, Picture = user.Picture, Address = user.Address, PhoneNumber = user.PhoneNumber }; Update(data, i => i.Name, i => i.Picture, i => i.Address, i => i.PhoneNumber); var result = SaveChanges(); if (!result) { throw new Exception(EResultMessage.DatabaseError.ToString()); } return(ResultHelper.Succeeded(result)); } catch (Exception e) { return(ResultHelper.Failed <bool>(message: e.Message)); } }
public HttpResponseMessage ExportPaperExcel([FromBody] ExportPaper m) { var eInfo = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info); if (eInfo == null) { return(ResultHelper.Failed("未查到当前考试")); } var filter = new BsonDocument(); filter.Add("eid", eInfo._id); if (!string.IsNullOrEmpty(m.School)) { int id = -1; if (int.TryParse(m.School, out id)) { filter.Add("sid", m.School); } else { filter.Add("snm", m.School); } } var sts = MongoDbHelper.GetPagedList1 <Pp_Nm, string>(DbName.Pp_Nm, 0, 0, filter, w => w.sid); List <string> data = ExcelBLL.GetPaperColumn(eInfo); DataTable dt = new DataTable(); for (int j = 0; j < data.Count; j++) { dt.Columns.Add(data[j]); } for (int i = 0; i < sts.Count; i++) { DataRow dr = dt.NewRow(); var count = 0; dr[0] = sts[i].sid; dr[1] = sts[i].snm; for (int j = 0; j < eInfo.sbs.Count; j++) { var pp = sts[i].sbnms.Where(w => w.sbnm == eInfo.sbs[j].sbnm).FirstOrDefault(); if (pp != null) { dr[3 + j] = pp.sct; count += pp.sct; } else { dr[3 + j] = 0; } } dr[2] = count; dt.Rows.Add(dr); } string file = ExcelBLL.BuildExcel1(data.ToArray(), dt); string url = RequestContext.Url.Request.RequestUri.Authority + "\\" + file; return(ResultHelper.OK(url)); }
public HttpResponseMessage ImportScore([FromBody] ExamID m) { try { var exam = MongoDbHelper.FindOne <E_Info>(m.ID, DbName.E_Info); if (exam == null) { return(ResultHelper.Failed("未找到考试信息")); } if (exam.btstate == 1) { var exam2 = MongoDbHelper.QueryOne <E_Info>(DbName.E_Info, w => w.btstate == 0 && w.IsDel == 0); if (exam2 != null) { return(ResultHelper.Failed("考试已结束,无法再次导入成绩")); } } var filter = new BsonDocument(); filter.Add("eid", exam._id); string path = AppDomain.CurrentDomain.BaseDirectory + "ftp\\"; string path1 = AppDomain.CurrentDomain.BaseDirectory + "ScoreBackUp\\"; string zipfile = path + "StudentScore.zip"; //Function.UnZipFile(zipfile, path); if (!File.Exists(zipfile)) { return(ResultHelper.Failed("暂未发布成绩")); } if (!Function.UnRarOrZip(zipfile, path, null)) { return(ResultHelper.Failed("成绩获取失败,请联系管理员")); } //File.Delete(zipfile); string filepath = path + "StudentScore.xls"; string filepath1 = path1 + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls"; if (!System.IO.Directory.Exists(path1)) { // 目录不存在,建立目录 System.IO.Directory.CreateDirectory(path1); } System.IO.File.Copy(filepath, filepath1, true); MongoDbHelper.DeleteByBson <St_Sc>(filter, DbName.St_Sc); exam.btstate = 1; MongoDbHelper.ReplaceOne(exam._id.ToString(), exam, DbName.E_Info); int errnum = 0; string msg = BLL.ExcelBLL.ImportScoreExcel(filepath, exam, out errnum); if (msg != "") { string url = RequestContext.Url.Request.RequestUri.Authority + "\\" + msg; return(ResultHelper.Failed("导入失败" + errnum + "条--" + url)); } return(ResultHelper.OK()); } catch (Exception e) { return(ResultHelper.Failed("导入失败" + e.Message)); } }
public HttpResponseMessage ExportTchExcel([FromBody] ExportTchInfo m) { var eInfo = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info); if (eInfo == null) { return(ResultHelper.Failed("未查到当前考试")); } var filter = new BsonDocument(); filter.Add("eid", eInfo._id); if (!string.IsNullOrEmpty(m.School)) { int id = -1; if (int.TryParse(m.School, out id)) { filter.Add("sid", m.School); } else { filter.Add("snm", m.School); } } if (!string.IsNullOrEmpty(m.Subject)) { filter.Add("sb", m.Subject); } if (!string.IsNullOrEmpty(m.Name)) { filter.Add("nm", m.Name); } var tchs = MongoDbHelper.GetPagedList1 <Tch_Info, string>(DbName.Tch_Info, 0, 0, filter, w => w.nm); List <string> data = ExcelBLL.GetTchColumn(); DataTable dt = new DataTable(); for (int j = 0; j < data.Count; j++) { dt.Columns.Add(data[j]); } for (int i = 0; i < tchs.Count; i++) { DataRow dr = dt.NewRow(); dr[0] = tchs[i].sid; dr[1] = tchs[i].snm; dr[2] = tchs[i].sb; dr[3] = tchs[i].nm; dr[4] = tchs[i].sx == 0 ? "女" : "男"; dr[5] = tchs[i].zc; dr[6] = tchs[i].ph; dt.Rows.Add(dr); } string file = ExcelBLL.BuildExcel1(data.ToArray(), dt); string url = RequestContext.Url.Request.RequestUri.Authority + "\\" + file; return(ResultHelper.OK(url)); }
public HttpResponseMessage DelExam([FromBody] ExamID m) { var eInfo = MongoDbHelper.FindOne <E_Info>(m.ID, DbName.E_Info); if (eInfo == null) { return(ResultHelper.Failed("未找到该次考试信息")); } eInfo.IsDel = 1; MongoDbHelper.ReplaceOne <E_Info>(m.ID, eInfo, DbName.E_Info); return(ResultHelper.OK()); }
public HttpResponseMessage ReadMsg([FromBody] ExamID m) { var mg = MongoDbHelper.FindOne <Msg_S>(m.ID, DbName.Msg_S); if (mg == null) { return(ResultHelper.Failed("未找到该消息")); } mg.ir = 1; MongoDbHelper.ReplaceOne(m.ID, mg, DbName.Msg_S); return(ResultHelper.OK()); }
public HttpResponseMessage DelUser([FromBody] ExamID m) { var sch = MongoDbHelper.QueryOne <U_Info>(DbName.U_Info, w => w._id == m.ID); if (sch != null) { var filter = new BsonDocument(); filter.Add("_id", m.ID); MongoDbHelper.DeleteByBson <U_Info>(filter, DbName.U_Info); return(ResultHelper.OK()); } return(ResultHelper.Failed("未找到该学校")); }
public HttpResponseMessage EditStudent([FromBody] StudentInfo m) { St_Info st = MongoDbHelper.FindOne <St_Info>(m.ID, DbName.St_Info); if (st == null) { return(ResultHelper.Failed("未找到该学生信息")); } if (m.StudentID != st.stid) { St_Info st1 = MongoDbHelper.QueryOne <St_Info>(DbName.St_Info, w => w.stid == m.StudentID); if (st1 != null) { return(ResultHelper.Failed("考号已存在")); } } if (!Function.MathIdCard(m.IdCard)) { return(ResultHelper.Failed("身份证号不正确")); } if (m.IdCard != st.idcd) { St_Info st1 = MongoDbHelper.QueryOne <St_Info>(DbName.St_Info, w => w.idcd == m.IdCard); if (st1 != null) { return(ResultHelper.Failed("身份证号已存在")); } } st.cls = m.Class; st.idcd = m.IdCard; st.nm = m.Name; st.stid = m.StudentID; //st.subEs = new List<SubE>(); //for (int i = 0; i < m.Subs.Count; i++) //{ // ObjectId objectid1 = new ObjectId(); // if (ObjectId.TryParse(m.Subs[i].SubID, out objectid1)) // { // SubE sb = new SubE(); // sb.sbid = objectid1; // sb.sbnm = m.Subs[i].SubName; // sb.sbrm = m.Subs[i].SubRoom; // sb.sbst = m.Subs[i].SubSite; // sb.sbtch = m.Subs[i].SubTeacher; // st.subEs.Add(sb); // } //} MongoDbHelper.ReplaceOne(m.ID, st, DbName.St_Info); return(ResultHelper.OK()); }
public HttpResponseMessage SelectExam([FromBody] ExamID m) { if (m == null) { return(ResultHelper.Failed("类容不能为空")); } var eInfo = MongoDbHelper.FindOne <E_Info>(m.ID, DbName.E_Info); if (eInfo == null) { return(ResultHelper.Failed("未找到该次考试信息")); } ExamInfo e = new ExamInfo(); e.ID = eInfo._id.ToString(); e.PublishID = eInfo.ppid; e.PublishTime = eInfo.pt; e.PublishName = MongoDbHelper.QueryOne <U_Info>(DbName.U_Info, w => w._id == eInfo.ppid) == null ? "未知" : MongoDbHelper.QueryOne <U_Info>(DbName.U_Info, w => w._id == eInfo.ppid).pnm; e.ExamName = eInfo.enm; e.StuStartTime = eInfo.sst; e.StuEndTime = eInfo.set; e.TchStartTime = eInfo.tst; e.TchEndTime = eInfo.tet; e.StuConfirm = eInfo.stcfm; e.TchConfirm = eInfo.tchcfm; e.ButtonState = eInfo.btstate; e.StuStart = Function.ConvertDateI(DateTime.Now) > eInfo.sst ? 1 : 0; e.TchStart = Function.ConvertDateI(DateTime.Now) > eInfo.tst ? 1 : 0; e.StuEnd = Function.ConvertDateI(DateTime.Now) > eInfo.set ? 1 : 0; e.TchEnd = Function.ConvertDateI(DateTime.Now) > eInfo.tet ? 1 : 0; if (Function.ConvertDateI(DateTime.Now) < eInfo.sst && Function.ConvertDateI(DateTime.Now) < eInfo.tst) { e.IsScan = 0; } else { e.IsScan = 1; } foreach (var item in eInfo.sbs) { e.subNames.Add(item._id, item.sbnm); } foreach (var item in eInfo.stps) { e.stuTypes += item.tp + ","; } e.stuTypes = e.stuTypes.Remove(e.stuTypes.Length - 1); return(ResultHelper.OK(e)); }
public HttpResponseMessage ReSetPwd([FromBody] ReSetPwd m) { var info = MongoDbHelper.QueryOne <U_Info>(DbName.U_Info, w => w._id == m.Account); if (info != null) { info.pwd = SecurityHelper.EncryptString("666666"); MongoDbHelper.ReplaceOne1 <U_Info>(m.Account, info, DbName.U_Info); return(ResultHelper.OK()); } else { return(ResultHelper.Failed("用户不存在")); } }
public Result <List <ChatViewModel> > GetChatList(int userId) { try { var chatList = GetAll(i => i.Users.Any(j => j.UserId == userId), "Messages.User", "Users.User"); if (chatList == null) { throw new Exception(EResultMessage.DatabaseError.ToString()); } var result = chatList.Select(i => { var user = i.Users.FirstOrDefault(j => userId != j.UserId).User; var lastMessage = i.Messages.OrderByDescending(j => j.Time).FirstOrDefault(); return(new ChatViewModel { Id = i.Id, User = new UserViewModel { Id = user.Id, Name = user.Name, Picture = user.Picture }, LastMessage = lastMessage == null ? null : new MessageViewModel { Content = lastMessage.Content, Time = lastMessage.Time, Type = lastMessage.Type, Sender = new UserViewModel { Id = lastMessage.User.Id, Name = lastMessage.User.Name, Picture = lastMessage.User.Picture } } }); }).ToList(); return(ResultHelper.Succeeded(result)); } catch (Exception e) { return(ResultHelper.Failed <List <ChatViewModel> >(message: e.Message)); } }
public HttpResponseMessage EditAdmin([FromBody] AdminUser m) { if (m == null || m.Account == "") { return(ResultHelper.Failed("账号不能为空")); } var u = MongoDbHelper.QueryOne <U_Info>(DbName.U_Info, w => w._id == m.Account); if (u == null) { return(ResultHelper.Failed("该用户不存在")); } u.pnm = m.Name; MongoDbHelper.ReplaceOne1 <U_Info>(m.Account, u, DbName.U_Info); return(ResultHelper.OK()); }
public HttpResponseMessage Update0([FromBody] ExamID m) { ObjectId objectid = new ObjectId(); if (ObjectId.TryParse(m.ID, out objectid)) { var stus = MongoDbHelper.QueryBy <St_Info>(DbName.St_Info, w => w.eid == objectid); for (int i = 0; i < stus.Count; i++) { stus[i].stid = stus[i].stid.PadLeft(10, '0'); MongoDbHelper.ReplaceOne(stus[i]._id.ToString(), stus[i], DbName.St_Info); } return(ResultHelper.OK()); } return(ResultHelper.Failed("考试ID不对")); }