public ActionResult Signup(RegisterModel model) { using (var db = new RIPPWebEntities()) { // Attempt to register the user MembershipCreateStatus createStatus = MembershipCreateStatus.Success; db.S_User.Add(new S_User() { RealName = model.RealName.Trim(), PhoneCell = model.CellPhone.Trim(), Email = model.Email.Trim(), GroupID = model.GroupID, Pwd = Common.MD5_Pass(model.Password), LastLoginTime = DateTime.Now, AddTime = DateTime.Now }); db.SaveChanges(); if (createStatus == MembershipCreateStatus.Success) { return(RedirectToAction("Waite", "Account")); } else { ModelState.AddModelError("", ErrorCodeToString(createStatus)); } } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult AjaxCell() { using (var db = new RIPPWebEntities()) { string uname = Request.Form["param"].ToString(); var t = db.S_User.Where(d => d.PhoneCell == uname && !d.Deleted).Count() > 0; if (Request.Form.AllKeys.Contains("ID")) { int id = Convert.ToInt32(Request.Form["ID"].ToString()); t = db.S_User.Where(d => d.PhoneCell == uname && d.ID != id && !d.Deleted).Count() > 0; } if (t) { return new RenderJsonResult() { ResultStr = "手机号码已经存在" } } ; else { return new RenderJsonResult() { ResultStr = "y" } }; } }
// // GET: /Admin/Spec/ public ActionResult Index(int?page, string t = "m", string instrument = "", string group = "") { if (!RIPP.Web.Chem.Tools.Common.IsLogin) { return(new HttpUnauthorizedResult()); } ViewBag.Title = "所有的光谱列表"; ViewBag.t = t; ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.System }; using (var db = new RIPPWebEntities()) { var user = RIPP.Web.Chem.Tools.Common.Get_User; IQueryable <spec> lst = null; if (t == "m") { lst = db.spec.Where(d => d.uid == user.ID); ViewBag.Title = "我上传的光谱列表"; ViewBag.Nav.Panel = Models.LeftNavPanel.User; } else { lst = db.spec.Where(d => 1 == 1); } var olst = lst.OrderByDescending(d => d.id); page = page.HasValue ? page.Value : 1; var pagingData = new Models.PaginatedList <spec>(olst, page.Value, 10, olst.Count()); return(View(pagingData)); } }
public ActionResult FindPassword(FormCollection form) { ViewBag.ok = false; var email = form["email"].Trim(); using (var db = new RIPPWebEntities()) { var has_member = db.S_User.FirstOrDefault(d => d.Email == email && !d.Deleted); if (has_member == null) { ViewBag.Msg = "该Email还未注册"; return(View()); } string guid = Guid.NewGuid().ToString(); string secret = Common.GetRnd(4, true, true, true); db.S_FindPWD.Add(new S_FindPWD() { uid = has_member.ID, Email = has_member.Email, Secret = secret, Guid = guid, SubmitDate = DateTime.Now }); db.SaveChanges(); Common.SendEmail(has_member.Email, has_member.RealName, guid, secret); ViewBag.ok = true; ViewBag.Msg = "重置密码的邮件已发送到" + has_member.Email + ",请尽快重置密码!"; } return(View()); }
/// <summary> /// 详细信息 /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult Detail(int id, int?page) { if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } using (var db = new RIPPWebEntities()) { var item = db.model.Where(d => d.id == id).FirstOrDefault(); var nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.User }; if (item != null && item.uid != Common.Get_UserID) { nav.Panel = Models.LeftNavPanel.System; } ViewBag.Nav = nav; ViewBag.model = item; var olst = db.results.Where(d => d.mid == id).OrderByDescending(d => d.id); page = page.HasValue ? page.Value : 1; var pagingData = new Models.PaginatedList <results>(olst, page.Value, 30, olst.Count()); return(View(pagingData)); } }
public static S_User GetUserByID(int id) { using (var db = new RIPPWebEntities()) { return(db.S_User.Where(d => d.ID == id && !d.Deleted).FirstOrDefault()); } }
public ActionResult Edit(int?id) { ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.User }; if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } if (!id.HasValue) { id = Common.Get_UserID; } using (var db = new RIPPWebEntities()) { //if (!Permission.Check(ModelEnum.Users, id.Value > 0 ? PermissionEnum.Edit : PermissionEnum.Add, Common.Get_User.Roles, out role, Common.Get_UserID, id.Value)) // return RedirectToAction("Forbid", "Home"); S_User u = null; if (id.HasValue) { u = db.S_User.Where(d => d.ID == id && !d.Deleted).FirstOrDefault(); if (!Common.Get_User.HasRole(RoleEnum.Administrator) && !(Common.Get_User.GroupID == u.GroupID && Common.Get_User.HasRole(RoleEnum.GroupMaster))) { return(RedirectToAction("Forbid", "Home")); } } else { u = Common.Get_User; } if (u == null) { u = new S_User() { GroupID = 0 }; } ViewBag.Groups = db.S_Group.Where(d => !d.Deleted).ToList().Select(d => new SelectListItem() { Text = d.Names, Value = d.ID.ToString(), Selected = d.ID == u.GroupID }).ToList(); ViewBag.Models = db.model.Where(d => d.gid == u.GroupID).ToList().Select(d => new SelectListItem() { Text = d.name, Value = d.id.ToString(), Selected = d.id == u.modelid }).ToList(); return(View(u)); } }
// // GET: /Account/Register /// <summary> /// 注册 /// </summary> /// <returns></returns> public ActionResult Signup() { using (var db = new RIPPWebEntities()) { ViewBag.Groups = db.S_Group.Where(d => !d.Deleted).ToList().Select(d => new SelectListItem() { Text = d.Names, Value = d.ID.ToString() }).ToList(); ViewBag.Groups.Insert(0, new SelectListItem() { Text = "--请选择--", Value = "0" }); } return(View()); }
// // GET: /Admin/Users/ /// <summary> /// /Admin/Users/Index?t=a表示所有用户t=g表示本小组用户 /// </summary> /// <param name="page"></param> /// <param name="t"></param> /// <returns></returns> public ActionResult Index(int?page, string t = "a", string u = "") { if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } ViewBag.Title = "所有用户列表"; ViewBag.t = t; ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.System }; using (var db = new RIPPWebEntities()) { var user = Common.Get_User; IOrderedQueryable <S_User> lst = null; //if (t == "a" && (user.Roles.Contains(RoleEnum.Administrator) || user.Roles.Contains(RoleEnum.Chairman))) if (t == "a" && user.HasRole(RoleEnum.Administrator)) { lst = db.S_User.Where(d => !d.Deleted).OrderByDescending(d => d.ID); } else if (t == "g" && user.HasRole(RoleEnum.GroupMaster)) { lst = db.S_User.Where(d => 1 == 2 && !d.Deleted).OrderByDescending(d => d.ID); ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.Group }; } else { lst = db.S_User.Where(d => 1 == 2 && !d.Deleted).OrderByDescending(d => d.ID); } //搜索 if (!string.IsNullOrWhiteSpace(u)) { lst = lst.Where(d => d.RealName.Contains(u)).OrderByDescending(d => d.ID); ViewBag.User = u; } page = page.HasValue ? page.Value : 1; var pagingData = new Models.PaginatedList <S_User>(lst, page.Value, 10, lst.Count()); return(View(pagingData)); } }
public ActionResult Choose(int?page) { if (!RIPP.Web.Chem.Tools.Common.IsLogin) { return(new HttpUnauthorizedResult()); } using (var db = new RIPPWebEntities()) { var user = RIPP.Web.Chem.Tools.Common.Get_User; var olst = db.spec.OrderByDescending(d => d.id); page = page.HasValue ? page.Value : 1; var pagingData = new Models.PaginatedList <spec>(olst, page.Value, 10, olst.Count()); return(View(pagingData)); } }
// // GET: /Admin/Home/ public ActionResult Index() { if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } using (var db = new RIPPWebEntities()) { var m = new Models.HomeIndexModel(); m.User = Common.Get_User; m.CountModel = db.model.Where(d => d.uid == Common.Get_UserID).Count(); m.CountSpec = db.spec.Where(d => d.uid == Common.Get_UserID).Count(); m.CountResult = db.results.Where(d => d.uid == Common.Get_UserID).Count(); return(View(m)); } }
public ActionResult EmailBack(string guid) { ViewBag.Msg = "请输入邮箱中的验证码"; using (var db = new RIPPWebEntities()) { var is_have = db.S_FindPWD.FirstOrDefault(d => d.Guid == guid); if (is_have == null) { ViewBag.hasval = false; ViewBag.Msg = "错误页面"; return(View()); } ViewBag.hasval = true; ViewBag.userName = db.S_User.FirstOrDefault(d => d.ID == is_have.uid && !d.Deleted).RealName; Session["EmailBackID"] = is_have.uid; } return(View()); }
public ActionResult Predict(int modelid, string specid) { ViewBag.Title = "预测结果"; ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.User }; if (string.IsNullOrWhiteSpace(specid)) { return(View()); } using (var db = new RIPPWebEntities()) { var model = db.model.Where(d => d.id == modelid).FirstOrDefault(); if (model == null) { return(View()); } //查询未被预测过的光谱 string sql = string.Format("select * from spec where id not in ( select sid from results where mid={0} and sid in ({1}) )", modelid, specid); var noResultSpecs = db.Database.SqlQuery <spec>(sql).ToList(); foreach (var s in noResultSpecs) { ComponentList c; var r = model.Predict(s, out c); db.results.Add(new results() { addtime = DateTime.Now, mid = modelid, sid = s.id, uid = RIPP.Web.Chem.Tools.Common.Get_UserID, contents = Serialize.ObjectToByte(r), componts = c != null ? Serialize.ObjectToByte(c) : null }); } db.SaveChanges(); sql = string.Format("select * from results where mid={0} and sid in ({1})", modelid, specid); return(View(db.Database.SqlQuery <results>(sql).ToList())); } }
// // GET: /API/Group/ public ActionResult Index(JQueryDataTablesModel param) { using (var db = new RIPPWebEntities()) { var lst = db.S_Group; var page = lst.OrderByDescending(d => d.ID).Skip(param.iDisplayStart).Take(param.iDisplayLength).ToList().Select(d => new GroupTable() { ID = d.ID, MasterUserID = d.MasterUserID, MasterName = d.MasterUser != null ? d.MasterUser.RealName : "", Name = d.Names, Remark = d.Remark }); return(new RenderJsonResult() { Result = new JQueryDataTablesResponse <GroupTable>(page, lst.Count(), lst.Count(), param.sEcho) }); } }
public ActionResult Delete(int id) { if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } using (var db = new RIPPWebEntities()) { var item = db.S_User.Where(d => d.ID == id && !d.Deleted).FirstOrDefault(); if (item != null) { item.Deleted = true; db.SaveChanges(); } return(RedirectToAction("Index")); } }
public ActionResult ResetPass(FormCollection form) { string newpwd = form["password"].Trim(); int uid = int.Parse(Session["EmailBackID"].ToString()); using (var db = new RIPPWebEntities()) { var changeUser = db.S_User.FirstOrDefault(d => d.ID == uid && !d.Deleted); changeUser.Pwd = Common.MD5_Pass(newpwd); var userSubmits = db.S_FindPWD.Where(d => d.uid == uid); foreach (var temp in userSubmits) { db.S_FindPWD.Remove(temp);//找回密码后删除 } db.SaveChanges(); ViewBag.allowChange = false; ViewBag.Msg = "您的密码已重置,请重新<a href=\"/Account/signin\">登录</a>。"; return(View()); } }
public ActionResult EmailBack(FormCollection form) { int uid = int.Parse(Session["EmailBackID"].ToString()); string secret = form["secret"].Trim(); using (var db = new RIPPWebEntities()) { var temp = db.S_FindPWD.FirstOrDefault(d => d.uid == uid && d.Secret.Equals(secret)); if (temp != null) { ViewBag.Msg = temp.Email + "用户您好,请在下方重新填写您的密码。"; ViewBag.allowChange = true; return(View("ResetPass")); } else { ViewBag.Msg = "验证码错误!"; ViewBag.hasval = true; return(View()); } } }
/// <summary> /// 个人基本信息 /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult Detail(int id = 0) { ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.User }; if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } if (id <= 0) { return(View(Common.Get_User)); } else { using (var db = new RIPPWebEntities()) { return(View(db.S_User.Where(d => d.ID == id && !d.Deleted).FirstOrDefault())); } } }
public static bool ValidateUser(string Email, string Password, bool remember, out string msg) { using (var db = new RIPPWebEntities()) { msg = ""; bool tag = false; string pass = Common.MD5_Pass(Password); var ulist = db.S_User.Where(u => (u.Email == Email || u.PhoneCell == Email) && !u.Deleted); if (ulist.Count() == 0) { msg = "您输入的手机号或邮箱未被注册,请先 <a href=\"/Account/signup\">注册</a>。"; return(false); } ulist = ulist.Where(d => d.Pwd == pass); tag = ulist.Count() > 0; if (!tag) { msg = "您输入的密码有误,您可 <a href=\"/Account/Getpass\">找回密码</a>。"; return(false); } else { var user = ulist.First(); user.LastLoginTime = DateTime.Now; if (!user.ApplyState) { tag = false; msg = "账号未被审核,无法登录,请联系管理员: [email protected]。"; } else { FormsAuthentication.SetAuthCookie(user.ID.ToString(), remember); } } return(tag); } }
public ActionResult Enable(int id) { ViewBag.Nav = new Models.LeftNavEntity() { Panel = Models.LeftNavPanel.User }; if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } using (var db = new RIPPWebEntities()) { var item = db.S_User.Where(d => d.ID == id && !d.Deleted).FirstOrDefault(); if (item != null) { item.Deleted = false; db.SaveChanges(); } return(RedirectToAction("Index")); } }
// // GET: /API/Spec/ /// <summary> /// 暂时不支持查询和排序 /// </summary> /// <param name="p"></param> /// <returns></returns> public ActionResult Index(JQueryDataTablesModel param) { if (!RIPP.Web.Chem.Tools.Common.IsLogin) { return(new HttpUnauthorizedResult()); } using (var db = new RIPPWebEntities()) { //string sql="select * from ( select top {0} * from ( select top {1} * from spec from var lst = db.spec.OrderByDescending(d => d.id); var page = db.spec.OrderByDescending(d => d.id).Skip(param.iDisplayStart).Take(param.iDisplayLength).ToList().Select(d => new SpecModel() { addtime = d.addtime, ext = d.ext, id = d.id, name = d.name }); return(new RenderJsonResult() { Result = new JQueryDataTablesResponse <SpecModel>(page, lst.Count(), page.Count(), param.sEcho) }); } }
private void DeliverFile(HttpContext context) { var type = context.Request["t"]; var id = Convert.ToInt32(context.Request["id"]); using (var db = new RIPPWebEntities()) { string path = ""; switch (type) { case "m": var model = db.model.Where(d => d.id == id).FirstOrDefault(); path = model != null ? model.path : null; break; case "s": var spec = db.spec.Where(d => d.id == id).FirstOrDefault(); path = spec != null ? spec.path : null; break; default: break; } var filePath = Path.Combine(System.Web.HttpContext.Current.Server.MapPath("~/Files/"), path); if (File.Exists(filePath)) { context.Response.AddHeader("Content-Disposition", "attachment; "); context.Response.ContentType = "application/octet-stream"; context.Response.ClearContent(); context.Response.WriteFile(filePath); } else { context.Response.StatusCode = 404; } } }
// Delete file from the server private void DeleteFile(HttpContext context) { var type = context.Request["t"]; var id = Convert.ToInt32(context.Request["id"]); using (var db = new RIPPWebEntities()) { string sql = "", filePath = ""; switch (type) { case "m": //删除模型 var m = db.model.Where(d => d.id == id).FirstOrDefault(); if (m != null) //删除文件 { filePath = Path.Combine(HttpContext.Current.Server.MapPath("~/"), m.path); if (File.Exists(filePath)) { File.Delete(filePath); } } //先删除模型所预测过的结果 sql = string.Format("delete from results where mid={0}", id); db.Database.ExecuteSqlCommand(sql); sql = string.Format("delete from model where id={0}", id); db.Database.ExecuteSqlCommand(sql); break; case "s": var s = db.spec.Where(d => d.id == id).FirstOrDefault(); if (s != null) //删除文件 { filePath = Path.Combine(HttpContext.Current.Server.MapPath("~/"), s.path); if (File.Exists(filePath)) { File.Delete(filePath); } } //先删除模型所预测过的结果 sql = string.Format("delete from results where sid={0}", id); db.Database.ExecuteSqlCommand(sql); sql = string.Format("delete from spec where id={0}", id); db.Database.ExecuteSqlCommand(sql); break; default: break; } context.Response.AddHeader("Vary", "Accept"); try { if (context.Request["HTTP_ACCEPT"].Contains("application/json")) { context.Response.ContentType = "application/json"; } else { context.Response.ContentType = "text/plain"; } } catch { context.Response.ContentType = "text/plain"; } context.Response.Write("{\"success\":true}"); } }
private FilesStatus upload(Stream inputStream, string fileName, HttpContext context) { var statu = new FilesStatus(); var filename = RIPP.Web.Chem.Tools.Common.GetRnd(10, true, true, false) + Path.GetExtension(fileName); var tempfullName = Path.Combine(StorageRoot, filename); statu.progress = "1.0"; statu.size = (int)inputStream.Length; statu.name = fileName; try { //先保存在服务器一个临时文件 using (var fs = new FileStream(tempfullName, FileMode.Append, FileAccess.Write)) { var buffer = new byte[1024]; var l = inputStream.Read(buffer, 0, 1024); while (l > 0) { fs.Write(buffer, 0, l); l = inputStream.Read(buffer, 0, 1024); } fs.Flush(); fs.Close(); } } catch { statu.error = "服务器错误,上传文件失败!"; return(statu); } //根据文件后缀尝试打开文件 var ftype = BindModel.CheckType(tempfullName); model dbmodel = new model(); spec sp = new spec(); try { statu.type = ftype.GetDescription(); dbmodel.path = Path.Combine(RIPP.Web.Chem.Tools.Common.GetUploadPath(), filename); sp.path = dbmodel.path; switch (ftype) { case FileExtensionEnum.Allmethods: var mBind = BindModel.ReadModel <BindModel>(tempfullName); statu.description = mBind.ToString(); dbmodel.createtime = mBind.CreateTime; dbmodel.name = mBind.Name; // ; // dbmodel.type = (int)ftype; // dbmodel. break; case FileExtensionEnum.PLSBind: var mPLS = BindModel.ReadModel <PLSModel>(tempfullName); statu.description = mPLS.ToString(); dbmodel.createtime = mPLS.CreateTime; dbmodel.name = mPLS.Name; break; case FileExtensionEnum.IdLib: var mId = BindModel.ReadModel <IdentifyModel>(tempfullName); statu.description = mId.ToString(); dbmodel.createtime = mId.CreateTime; dbmodel.name = mId.Name; break; case FileExtensionEnum.FitLib: var mFitting = BindModel.ReadModel <FittingModel>(tempfullName); statu.description = mFitting.ToString(); dbmodel.createtime = mFitting.CreateTime; dbmodel.name = mFitting.Name; break; case FileExtensionEnum.PLS1: case FileExtensionEnum.PLSANN: var mPLS1 = BindModel.ReadModel <PLSSubModel>(tempfullName); statu.description = mPLS1.ToString(); dbmodel.createtime = mPLS1.CreateTime; dbmodel.name = mPLS1.Name; break; case FileExtensionEnum.ItgBind: var itgSub = BindModel.ReadModel <IntegrateModel>(tempfullName); statu.description = itgSub.ToString(); dbmodel.createtime = itgSub.CreateTime; dbmodel.name = itgSub.Name; break; case FileExtensionEnum.Spec: default: var s = new Spectrum(tempfullName); ftype = FileExtensionEnum.Spec; sp.Spec = s; sp.name = Path.GetFileName(fileName); statu.description = "光谱文件"; break; } } catch (Exception ex)//读取文件失败 { statu.error = "上传的文件类型有误,服务器无法识别,上传文件失败!"; if (File.Exists(tempfullName)) { File.Delete(tempfullName); } return(statu); } //根据文件类型保存数据库 using (var db = new RIPPWebEntities()) { if (ftype != FileExtensionEnum.Unkown) { var user = RIPP.Web.Chem.Tools.Common.Get_User; if (user == null) { var uid = Convert.ToInt32(context.Request["uid"]); user = db.S_User.Where(d => d.ID == uid).FirstOrDefault(); } if (ftype == FileExtensionEnum.Spec)//光谱 { if (RIPP.Web.Chem.Tools.Common.UserCanPredict(user)) { sp.addtime = DateTime.Now; sp.ext = Path.GetExtension(fileName).Substring(1); sp.uid = user.ID; sp.gid = user.GroupID; db.spec.Add(sp); db.SaveChanges(); statu.deleteType = "DELETE"; statu.deleteUrl = "/upload/UploadHandler.ashx?t=s&id=" + sp.id; statu.url = "/admin/spec/detail/" + sp.id; statu.id = sp.id; File.Move(tempfullName, Path.Combine(HttpContext.Current.Server.MapPath("~/"), sp.path));//移动刚才上传的临时文件 } else { statu.error = "您无权上传光谱文件,请与管理员联系。"; if (File.Exists(tempfullName)) { File.Delete(tempfullName); } } } else//模型 { if (user.HasRole(RoleEnum.Administrator) || user.HasRole(RoleEnum.Engineer)) { dbmodel.addtime = DateTime.Now; dbmodel.type = (int)ftype; dbmodel.uid = user.ID; dbmodel.gid = user.GroupID; db.model.Add(dbmodel); db.SaveChanges(); statu.deleteType = "DELETE"; statu.deleteUrl = "/upload/UploadHandler.ashx?t=m&id=" + dbmodel.id; statu.url = "/admin/model/detail/" + dbmodel.id; statu.id = dbmodel.id; File.Move(tempfullName, Path.Combine(HttpContext.Current.Server.MapPath("~/"), dbmodel.path));//移动刚才上传的临时文件 } else { statu.error = "您无权上传模型文件,请与管理员联系。"; if (File.Exists(tempfullName)) { File.Delete(tempfullName); } } } } } return(statu); }
public ActionResult Edit(int id, S_User u, FormCollection form) { if (!Common.IsLogin) { return(new HttpUnauthorizedResult()); } //RoleEnum role; //if (!Permission.Check(ModelEnum.Users, id > 0 ? PermissionEnum.Edit : PermissionEnum.Add, Common.Get_User.Roles, out role, Common.Get_UserID, id)) // return RedirectToAction("Forbid", "Home"); if (!string.IsNullOrWhiteSpace(u.Pwd)) { u.Pwd = Common.MD5_Pass(u.Pwd.Trim()); } using (var db = new RIPPWebEntities()) { var dbu = db.S_User.Where(d => d.ID == u.ID && !d.Deleted).FirstOrDefault(); if (dbu != null) { //if (u.ICID != dbu.ICID)//通知系统,用户卡被修改过,方便终端同步 // Common.UserCardChanged(); dbu.Address = u.Address; dbu.ApplyState = u.ApplyState; dbu.Email = u.Email; dbu.GroupID = u.GroupID; dbu.PhoneCell = u.PhoneCell; dbu.PhoneOffice = u.PhoneOffice; if (!string.IsNullOrWhiteSpace(u.Pwd)) { dbu.Pwd = u.Pwd; } dbu.RealName = u.RealName; dbu.Remark = u.Remark; } else { if (db.S_User.Where(d => d.Email == u.Email && !d.Deleted).Count() > 0) { return(View("Info", new Models.InfoModel() { Icon = Models.InfoPage.highlight, Info = "Email重复,请重新输入!" })); } u.AddTime = DateTime.Now; u.LastLoginTime = DateTime.Now; db.S_User.Add(u); } db.SaveChanges(); //权限 List <int> roleid = new List <int>(); if (form.AllKeys.Contains(RoleEnum.Administrator.ToString()) && form[RoleEnum.Administrator.ToString()] == "1") { roleid.Add((int)RoleEnum.Administrator); } if (form.AllKeys.Contains(RoleEnum.Engineer.ToString()) && form[RoleEnum.Engineer.ToString()] == "1") { roleid.Add((int)RoleEnum.Engineer); } if (form.AllKeys.Contains(RoleEnum.GroupMaster.ToString()) && form[RoleEnum.GroupMaster.ToString()] == "1") { roleid.Add((int)RoleEnum.GroupMaster); } if (form.AllKeys.Contains(RoleEnum.Operator.ToString()) && form[RoleEnum.Operator.ToString()] == "1") { roleid.Add((int)RoleEnum.Operator); } var rlst = db.S_UserInRole.Where(r => r.UserID == u.ID); foreach (var r in rlst) { db.S_UserInRole.Remove(r); } foreach (var i in roleid) { db.S_UserInRole.Add(new S_UserInRole() { RoleID = i, UserID = u.ID }); } db.SaveChanges(); return(RedirectToAction("Index")); } }