Example #1
0
        public IActionResult LoginAdmin([FromBody] AdminLoginInput Vlogin)
        {
            if (!FAd.IsAdmin(123456789))
            {
                AdministradoresParams adp = new AdministradoresParams();
                adp.Id_card     = 123456789;
                adp.Name        = "Adrian";
                adp.LastName    = "Costa";
                adp.Phone       = 3008053163;
                adp.Password    = "******";
                adp.SesionValue = "123";
                adp.State       = true;
                adp.SuperAdmin  = true;
                db.ADMINISTRADORES.Add(adp);
                db.SaveChanges();
            }
            if (Vlogin.Id == null || Vlogin.Pss == null)
            {
                return(Json(""));
            }
            long IdCard = ManyFuncs.str2long(Vlogin.Id);

            if (IdCard < 0)
            {
                return(Json(""));
            }
            if (!FAd.InitSes(IdCard, Vlogin.Pss, HttpContext))
            {
                return(Json(""));
            }
            return(Json("Ok: " + Vlogin.Id + ":" + Vlogin.Pss));
        }
        public async Task <IActionResult> AdminLogin([Bind("AdminId,Password,ReturnURL")] AdminLoginInput AdminLoginInput)
        {
            if (ModelState.IsValid)
            {
                var aUser = await _context.Admin.FirstOrDefaultAsync(u => u.AdminId == AdminLoginInput.AdminId && u.Password == AdminLoginInput.Password);

                if (aUser != null)
                {
                    var claims = new List <Claim>();
                    claims.Add(new Claim(ClaimTypes.Role, aUser.UserRoleFk.ToString()));
                    string[] roles = aUser.UserRoleFk.ToString().Split(",");

                    foreach (string role in roles)
                    {
                        claims.Add(new Claim(ClaimTypes.Role, role));
                    }
                    var identity  = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);
                    var principal = new ClaimsPrincipal(identity);
                    await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal);

                    return(Redirect(AdminLoginInput?.ReturnURL ?? "~/Events/ApproveDenyEvents"));
                }
                else
                {
                    ViewData["message"] = "Invalid credentials";
                }
            }
            return(View(AdminLoginInput));
        }
Example #3
0
        public async Task <AdminLoginOutput> AdminLogin(AdminLoginInput dto)
        {
            var output = new AdminLoginOutput {
                Result = dto.Result
            };

            if (!await this.AccountRpository.ExistedAsync(dto.Model.UserName))
            {
                output.Result.ResultCode = (int)AccountResultCode.UserNotExist;
                output.Result.Message    = "用户不存在";
                return(output);
            }

            var accounts = this.DbContext.TAccount
                           .Where(a => a.Type == AccountType.Admin)
                           .Where(a => a.Name == dto.Model.UserName)
                           .Join(this.DbContext.TAdmin, m => m.Id, f => f.AccountId, (m, f) =>
                                 new
            {
                m.Id,
                m.Password,
                m.Name,
                m.Type,
                f.JobNumber,
            }
                                 );

            var account = await accounts.FirstOrDefaultAsync();

            if (!dto.Model.Password.Equals(account.Password))
            {
                output.Result.ResultCode = (int)AccountResultCode.PasswordError;
                output.Result.Message    = "密码错误";
                return(output);
            }

            var admin = await this.AdminRpository.GetAdmin(account.Id);

            await this.AdminRpository.SetLoginInfo(account.Id, dto.LoginIP, admin);

            //写登陆日志
            var loginLog = new TAdminLoginLog
            {
                AccountId = admin.AccountId,
                LoginIp   = dto.LoginIP,
            };
            await AdminLoginLogRpository.AddAsync(loginLog);

            if (!await this.SaveChangesAsync())
            {
                return(output);
            }

            output.Result.ResultCode = (int)ResultCode.Successful;
            return(output);
        }
Example #4
0
        public IActionResult Login([FromBody] AdminLoginInput adminLoginModel)
        {
            HbCrm.Core.Domain.Admin.SysAdmin admin             = _adminService.GetAdminAllInforByUserName(adminLoginModel.UserName);
            AdminLoginSuccessOutput          loginSuccessModel = new AdminLoginSuccessOutput();

            loginSuccessModel.LoginStatus = LoginStatus.Error;
            if (admin != null && admin.Password == adminLoginModel.Password)
            {
                var r = HttpContext.Request;
                _authenticationService.SignIn(admin, adminLoginModel.IsPersistent);
                loginSuccessModel.LoginStatus = LoginStatus.Success;
                loginSuccessModel.ReturnUrl   = adminLoginModel.ReturnUrl;
            }
            string responseData = JsonConvert.SerializeObject(loginSuccessModel);

            return(new JsonResult(responseData));
        }
Example #5
0
        public async Task <IActionResult> Login(AdminLoginInput model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var currentUser = await _service.Login(model);

            if (currentUser != null)
            {
                HttpContext.Session.Set(CommConstant.AdminLoginCurrentUser, currentUser);
                return(RedirectToAction("Index", "Home"));
            }

            ModelState.AddModelError("", "用户名或密码错误");
            return(View());
        }
Example #6
0
 /// <summary>
 /// 登录
 /// </summary>
 /// <param name="input"></param>
 /// <returns></returns>
 public async Task <AdminLoginUserInfo> Login(AdminLoginInput input)
 {
     return(Mapper.Map <Administrator, AdminLoginUserInfo>(await _repository.Login(input)));
 }
        /// <summary>
        /// 管理员登录
        /// </summary>
        /// <param name="input">管理员登录输入</param>
        /// <returns>系统用户实体</returns>
        public async Task <Administrator> Login(AdminLoginInput input)
        {
            var user = await _context.Administrator.Where(i => i.LoginName == input.LoginName && i.Password == EnctypeHelper.GetEncryptedStr(input.Password)).FirstOrDefaultAsync();

            return(user);
        }