public async Task <ActionResult> CheckCode([FromBody] CheckCode phone) { if (ModelState.IsValid) { var code = (from aa in _context.SMSCodes join bb in _context.Auths on aa.phone equals bb.Phone where aa.phone == phone.phone && aa.code == phone.code && aa.dttm_add.AddMinutes(5) > DateTime.Now select aa).FirstOrDefault(); if (code == null) { return(new JsonResult(_responce.Return_Responce(System.Net.HttpStatusCode.NotFound, null, "Телефон не подтвержден"))); } else { var user = await _context.Auths.Where(x => x.Phone == phone.phone).ToListAsync(); Token token = null; if (user.Count != 0) { var uid = new UID { updateDttm = DateTime.Now, uid = phone.id, }; ServicesModel.Models.Auth.Auth findUser = null; if (user.Exists(x => x.role == "owner")) { findUser = user.Find(x => x.role == "owner"); } else { findUser = user.Find(x => x.role == "staff"); } token = await _context.Tokens.Where(x => x.user_id == findUser.id).FirstAsync(); _context.Remove(token); token = _auth.Generate_Tokens(findUser.id, findUser.role); await _context.Tokens.AddAsync(token); uid.id_user = findUser.id; await _context.Uids.AddAsync(uid); var send = await _account.ReturnAuth(findUser.id, findUser.role); await _context.SaveChangesAsync(); return(new JsonResult(_responce.Return_Responce(System.Net.HttpStatusCode.OK, send, "Пользователь найден"))); } else { return(new JsonResult(_responce.Return_Responce(System.Net.HttpStatusCode.NoContent, null, "Код подтвержден"))); } } } else { return(new JsonResult(_responce.Return_Responce(System.Net.HttpStatusCode.BadRequest, null, "Не заполнено"))); } }