///// <summary> ///// 选择人员 ///// </summary> ///// <returns></returns> //public IActionResult OrgUserSelectPage() //{ // logcache.AddServiceLogForView(CurrentMenuID, "选择人员浏览", ""); // return View(); //} ///// <summary> ///// 密码初始化表单 ///// </summary> ///// <returns></returns> //public IActionResult InitializePassWord() //{ // logcache.AddServiceLogForView(CurrentMenuID, "密码初始化浏览", ""); // return View(); //} ///// <summary> ///// 修改密码页面 ///// </summary> ///// <param name="id"></param> ///// <returns></returns> //public IActionResult ModifyPassWord(String id) //{ // logcache.AddServiceLogForView(CurrentMenuID, "修改密码浏览", ""); // return View(); //} //#endregion //#region 用户的增、删、改、查 /// <summary> /// 添加或删除 /// </summary> /// <returns></returns> public void AddOrUpdate(Power_User data) { Power_User userModel = new Power_User(); //判断前端传过来的对象中的id是否为空 if (data.ID == Guid.Empty) { try { userModel = data; //userModel.U_AreaCode = ManageProvider.Current.U_AreaCode; userModel.PassWord = "******"; //MD5Helper.MD5Encrypt64("123456"); //对密码进行MD5加密 userModel.Isinitial = true; //userModel.U_IsSystem = false; //userModel.U_IsValid = true; userModel.IsSuperUser = false; userModel.IsTrilateral = false; //userModel.U_LastModifiedDate = DateTime.Now; _userRepository.Add(userModel); //人员表插入数据 //userModel = _userbll.Insert(userModel); //记录日志 //logcache.AddServiceLogForAdd<Power_UserView>(userModel, CurrentMenuID, "新增人员", "Power_User"); } catch (Exception ex) { //logcache.AddServiceLogForAdd<Power_UserView>(userModel, CurrentMenuID, "新增人员异常", "Power_User", Request.Path, ex.Message, ex.StackTrace); } } else { userModel = _userRepository.GetById(data.ID); //userModel = _db.Power_User.Find(data.ID); //userModel = _userbll.GetViewModel(data.ID.ToString()); //Power_UserView oldUserModel = ObjectClone.ToClone<Power_UserView>(userModel); try { userModel.Cn = data.Cn; userModel.UID = data.UID; userModel.StationsID = data.StationsID; //userModel.OrgID = data.OrgID; userModel.Status = data.Status; //修改用户表记录 _db.Entry(userModel).State = EntityState.Modified; _db.SaveChanges(); //userModel = _userbll.Update(userModel); //记录日志 //logcache.AddServiceLogForUpdate(userModel, oldUserModel, CurrentMenuID, "更新用户", "Power_User"); } catch (Exception ex) { //logcache.AddServiceLogForUpdate(userModel, oldUserModel, CurrentMenuID, "更新用户异常", "Power_User", Request.Path, ex.Message, ex.StackTrace); } } }
private void InitializeNetCoreBBSDatabase(IServiceProvider serviceProvider) { using (var serviceScope = serviceProvider.GetRequiredService <IServiceScopeFactory>().CreateScope()) { var db = serviceScope.ServiceProvider.GetService <DataContext>(); if (db.Database != null && db.Database.EnsureCreated()) { Power_User user = new Power_User(); user.ID = Guid.NewGuid(); user.IsSuperUser = true; user.Cn = "超级管理员"; user.PassWord = MD5Helper.MD5Encrypt32("123456"); user.UID = "Admin"; user.U_AreaCode = "A001"; user.U_IsValid = true; db.Power_User.Add(user); db.SaveChanges(); Power_Area area = new Power_Area(); area.Code = "A001"; area.ID = Guid.NewGuid(); area.IsEnable = true; area.Level = 1; area.ParentID = Guid.Empty; area.Title = "北京总公司"; db.Power_Area.Add(area); db.SaveChanges(); Power_Menu menu1 = new Power_Menu(); menu1.ID = Guid.NewGuid(); menu1.Code = "M001"; menu1.IsEnable = true; menu1.IsShow = true; menu1.Name = "系统管理"; menu1.U_CreateDate = DateTime.Now; menu1.U_IsSystem = true; menu1.U_IsValid = true; db.Power_Menu.Add(menu1); db.SaveChanges(); Power_Menu menu2 = new Power_Menu(); menu2.ID = Guid.NewGuid(); menu2.Code = "M002"; menu2.IsEnable = true; menu2.IsShow = true; menu2.Name = "区域管理"; menu2.U_CreateDate = DateTime.Now; menu2.U_IsSystem = true; menu2.U_IsValid = true; menu2.Path = "/SystemManage/Area/Index"; menu2.ParentID = menu1.ID; db.Power_Menu.Add(menu2); db.SaveChanges(); Power_Menu menu3 = new Power_Menu(); menu3.ID = Guid.NewGuid(); menu3.Code = "M003"; menu3.IsEnable = true; menu3.IsShow = true; menu3.Name = "菜单管理"; menu3.U_CreateDate = DateTime.Now; menu3.U_IsSystem = true; menu3.U_IsValid = true; menu3.Path = "/SystemManage/Menu/Index"; menu3.ParentID = menu1.ID; db.Power_Menu.Add(menu3); db.SaveChanges(); } else { //db.Database.Migrate(); } } }
public String LoginValidate(string uid, string password, string areaCode) { if (string.IsNullOrEmpty(uid) || string.IsNullOrEmpty(password) || string.IsNullOrEmpty(areaCode)) { return(GlobalStatus.GetStatus("HX06")); } //List<ParameterJson> list = new List<ParameterJson>(); //if (uid == "InforCenterAdmin") //{ // list.Add(new ParameterJson("U_IsValid", ConditionOperate.Equal.ToString(), "1")); // list.Add(new ParameterJson("UID", ConditionOperate.Equal.ToString(), uid)); // list.Add(new ParameterJson("PassWord", ConditionOperate.Equal.ToString(), MD5Helper.MD5Encrypt64(password))); // areaCode = "0CFD858E"; // list.Add(new ParameterJson("U_AreaCode", ConditionOperate.Equal.ToString(), areaCode)); //} //else //{ // list.Add(new ParameterJson("U_IsValid", ConditionOperate.Equal.ToString(), "1")); // list.Add(new ParameterJson("UID", ConditionOperate.Equal.ToString(), uid)); // list.Add(new ParameterJson("PassWord", ConditionOperate.Equal.ToString(), MD5Helper.MD5Encrypt64(password))); // list.Add(new ParameterJson("U_AreaCode", ConditionOperate.Equal.ToString(), areaCode)); //} //string sCondition = JsonConvert.SerializeObject(list); //#endregion string pwd = MD5Helper.MD5Encrypt32(password); Power_User model = _userRepository.List(x => x.U_IsValid == true && x.UID == uid && x.PassWord == pwd && x.U_AreaCode == areaCode).FirstOrDefault(); //用户、密码、区域验证不通过,不跳转页面 if (model == null) { return(GlobalStatus.GetStatus("HX02")); } //验证 账号同时只能一个在线 //bool IsOpenOnlyUser = _op.IsOpenOnlyUser; //if (IsOpenOnlyUser) //{ // bool flag = CacheHelper.HashExists((int)RedisDB.Power, "RegisterUCRelation", model.ID.ToString()); // if (flag) // { // return GlobalStatus.GetStatus("HX03"); // } //} //List<ParameterJson> listparam = new List<ParameterJson>(); //listparam.Add(new ParameterJson("U_IsValid", ConditionOperate.Equal.ToString(), "1")); //listparam.Add(new ParameterJson("UserId", ConditionOperate.Equal.ToString(), model.ID.ToString())); //string sCondition1 = JsonConvert.SerializeObject(listparam); //#endregion //string strRoleMenu = _userRolebll.GetListJson(sCondition1); //string roleIds = string.Empty; //if (!string.IsNullOrEmpty(strRoleMenu)) //{ // List<Power_RoleMenuView> aaa = JsonConvert.DeserializeObject<List<Power_RoleMenuView>>(strRoleMenu); // var ccc = aaa.Select(x => x.RoleID.ToString()).Distinct().ToList(); // roleIds = string.Join(",", ccc.ToArray()); //} //Guid? orgId = Guid.Empty; //#region 条件组合 //List<ParameterJson> listparam1 = new List<ParameterJson>(); //listparam1.Add(new ParameterJson("U_IsValid", ConditionOperate.Equal.ToString(), "1")); //listparam1.Add(new ParameterJson("UserId", ConditionOperate.Equal.ToString(), model.ID.ToString())); //string sCondition2 = JsonConvert.SerializeObject(listparam1); //#endregion //string strjson = _userorgbll.GetListJson(sCondition2); //if (strjson != null && strjson != "[]") //{ // List<Power_UserOrgView> userorglist = JsonConvert.DeserializeObject<List<Power_UserOrgView>>(strjson); // if (userorglist.Count > 0) // { // Power_UserOrgView entity = userorglist.FirstOrDefault(); // orgId = entity.OrgID; // } //} //else //{ // return GlobalStatus.GetStatus("HX04"); //} MessageUser mu = new MessageUser(); mu.ID = model.ID; mu.Cn = model.Cn; mu.IPAddress = CommonHelper.GetIP(); //??? mu.Isinitial = true; mu.IsSystem = true; mu.LogTime = DateTime.Now; mu.UID = model.UID; mu.U_AreaCode = model.U_AreaCode; //mu.RoleIds = roleIds; //mu.OrgId = orgId; //HttpContext.Current.Session.Set("CurrentUserId", ByteConvertHelper.Object2Bytes(mu.ID)); //HttpContext.Current.Session.Set("CurrentAreaCode", ByteConvertHelper.Object2Bytes(mu.U_AreaCode)); ManageProvider.UserId = mu.ID.ToString(); ManageProvider.Current = mu; //读取用户权限 //List<MenuPower> list11 = menuCache.GetAllMenuByRoleIds(roleIds, areaCode); //if (list11 == null || list11.Count == 0) //{ // return GlobalStatus.GetStatus("HX05"); //} //ManageProvider.CurrentMenuList = new LoginUserMenuPower() { UserId = mu.ID.ToString(), menuList = list11 }; //使用Form验证方式 List <Claim> claims = new List <Claim>(); claims.Add(new Claim(ClaimTypes.Name, model.Cn, ClaimValueTypes.String, model.ID.ToString())); var userIdentity = new ClaimsIdentity("管理员"); //角色 userIdentity.AddClaims(claims); var userPrincipal = new ClaimsPrincipal(userIdentity); HttpContext.SignInAsync(CookieAuthenInfo.WebCookieInstance, userPrincipal, new Microsoft.AspNetCore.Authentication.AuthenticationProperties { ExpiresUtc = DateTime.UtcNow.AddHours(12), IsPersistent = true, AllowRefresh = false }); //SignalR中缓存登录状态 //GlobalStatus.connection.Start().ContinueWith(task => //{ // if (!task.IsFaulted) // { // GlobalStatus.myHub.Invoke("Register", mu.ID, mu.U_AreaCode);//必須與 MyHub 的 Register 方法名稱一樣 // } // else // { // throw new Exception("连线失败!"); // } //}).Wait(); //记录日志 //string message = string.Format("{0}({1})登陆系统!", mu.Cn, mu.UID); //List<ParameterJson> areaList = new List<ParameterJson>(); //areaList.Add(new ParameterJson("U_IsValid", ConditionOperate.Equal.ToString(), "1")); //areaList.Add(new ParameterJson("Code", ConditionOperate.Equal.ToString(), areaCode)); //string areaCondition = JsonConvert.SerializeObject(areaList); //strJson = _areaBll.GetListJson(areaCondition); //Power_AreaView areaModel = !string.IsNullOrEmpty(strJson) ? JsonConvert.DeserializeObject<List<Power_AreaView>>(strJson).FirstOrDefault() : null; //if (areaModel != null) //{ // CookieOptions options = new CookieOptions(); // options.Expires = DateTime.Now.AddYears(6); // HttpContext.Response.Cookies.Append("loginAreaCode", areaCode, options); // HttpContext.Response.Cookies.Append("loginAreaName", areaModel.Title, options); //} //logcache.AddSystemLog(Guid.Empty, message, true, "", ""); return(GlobalStatus.GetStatus("HX00")); }