public ReturnItem <RetUserLoginInfo> UserLogout(string tokenid) { ReturnItem <RetUserLoginInfo> r = new ReturnItem <RetUserLoginInfo>(); r.TimerEnd(); return(r); }
/// <summary> /// 1.登录方法 /// </summary> /// <param name="userId"></param> /// <param name="pws"></param> /// <returns>成功返回用户封装好的对象,失败返回Null.</returns> public ReturnItem <RetUserLoginInfo> UserLogin(UserLoginModel parameter) { ReturnItem <RetUserLoginInfo> r = new ReturnItem <RetUserLoginInfo>(); if (parameter.PassWord.Length < pwsmin) { return(new ReturnItem <RetUserLoginInfo>() { Code = -1, Msg = "密码小于" + pwsmin + "位" }); } if (parameter.PassWord.Length > pwsmax) { return(new ReturnItem <RetUserLoginInfo>() { Code = -1, Msg = "密码大于" + pwsmax + "位" }); } using (UserEntities user = new UserEntities()) { try { var getuserinfo = user.U_User.Where(u => u.AccountId == parameter.UserName).FirstOrDefault(); if (getuserinfo == null) { r.Data = null; r.Code = -1; r.Msg = "未找到该用户"; return(r); } var datetime = DateTime.Now.AddHours(-1); if (user.U_UserLoginErrorInfo.Where(ule => ule.UserID == getuserinfo.ID && ule.CreateTime > datetime).Count() >= 5) { r.Data = null; r.Code = -1; r.Msg = "密码错误5次,请一小时后再试"; return(r); } if (getuserinfo != null) { if (getuserinfo.PassWord == parameter.PassWord) { if (getuserinfo.Status != "1") //1 账号禁用 0 账号启用 { if (getuserinfo.LockState != "1") //0 已审核 1 未审核 { try { getuserinfo.LastLoginDate = DateTime.Now; //判断是否为移动端,是则发出推送给最后登录的移动端 if (parameter.LoginType == (int)LoginForm.App) { try//推送消息(设备更换 踢设备下线) { } catch { //推送出错 日志模块未启用.暂时为空 } } var newtoken = GetNewToken(getuserinfo.ID, (LoginForm)parameter.LoginType); //获取组织ID 取默认最新创建的组织 long userorgid = -1; var Org = user.U_UserOrganizationRel.Where(x => x.UserID == getuserinfo.ID).OrderByDescending(x => x.CreateTime).FirstOrDefault(); if (Org != null) { userorgid = Org.OrgID.Value; } r.Data = new RetUserLoginInfo() { HeadImgUrl = getuserinfo.HeadImgUrl, UserId = getuserinfo.ID.ToString(), RealName = getuserinfo.Name, Address = "", BirthDay = "", CreationDate = getuserinfo.CreateTime.HasValue ? getuserinfo.CreateTime.Value : DateTime.MinValue, Email = getuserinfo.Email, ContactPhone = getuserinfo.ContactPhone, NickName = "", Phone = "", AccountId = getuserinfo.AccountId, Type = getuserinfo.Type, LocationHref = (getuserinfo.IsManageAdmin == 1) ? "/user/" : "/manage/", IsPlatformAdmin = getuserinfo.IsManageAdmin == 1 ? true : false, TokenDisabledTime = newtoken.DisabledTime.HasValue ? newtoken.DisabledTime.Value : DateTime.Now, OrgID = userorgid }; r.Code = 0; } catch { r.Msg = "内部错误请重试"; r.Code = -1; } } else { r.Msg = "账号暂未审核,请尝试切换账号登陆"; r.Code = -1; } } else { r.Msg = "账号已被禁用,请尝试切换账号登陆"; r.Code = -1; } } else { U_UserLoginErrorInfo uei = new U_UserLoginErrorInfo() { CreateTime = DateTime.Now, UserID = getuserinfo.ID }; user.U_UserLoginErrorInfo.Add(uei); user.SaveChanges(); //密码错误 r.Msg = "密码错误"; r.Code = -1; } } else { r.Msg = "找不到用户"; r.Code = -1; //找不到用户 } } catch (Exception e) { r.Msg = "内部错误请重试"; r.Code = -1; } } r.TimerEnd(); return(r); }