//[Authorize(Roles = "admin")] public async Task <IActionResult> Role(string id) { AppUsern user = await muser.FindByIdAsync(id); //await muser.AddToRoleAsync(user, "Admin"); var userRoles = await muser.GetRolesAsync(user); // var addedRoles = roles.Except(userRoles); var allRoles = role.Roles.ToList(); //ChangeRoleViewModel model = new ChangeRoleViewModel //{ // UserId = user.Id, // UserEmail = user.UserName, // UserRoles = userRoles, // AllRoles = allRoles //}; //if (user != null) //{ // var addedrolee = role.RoleExistsAsync("adminstration"); // await muser.AddToRolesAsync(user, userRoles); //} // IdentityResult result = await role.CreateAsync(new IdentityRole(id)); return(Json(userRoles)); }
public async Task <IActionResult> Edit(string userId, List <string> roles) { // получаем пользователя AppUsern user = await _userManager.FindByIdAsync(userId); if (user != null) { // получем список ролей пользователя var userRoles = await _userManager.GetRolesAsync(user); // получаем все роли var allRoles = _roleManager.Roles.ToList(); // получаем список ролей, которые были добавлены var addedRoles = roles.Except(userRoles); // получаем роли, которые были удалены var removedRoles = userRoles.Except(roles); await _userManager.AddToRolesAsync(user, addedRoles); await _userManager.RemoveFromRolesAsync(user, removedRoles); return(RedirectToAction("UserList")); } return(NotFound()); }
public async Task <IActionResult> Orderqiwi([FromBody] OrderQiwiViewModel body) { if (!ModelState.IsValid) { return(BadRequest()); } AppUsern user = await userManager.FindByNameAsync(body.num); if (user == null) { return(Json(BadRequest())); } string date = DateTime.Now.ToString("MMddHHmmss"); string nnum = user.UserName; var aaa = nnum.Substring(nnum.Length - 4); string acount = aaa + date; string prv = date + aaa; var oldorder = await db.Qiwipays.Where(x => x.number == body.num& x.type == body.type& x.pay == false).FirstOrDefaultAsync(); if (oldorder == null) { await db.Qiwipays.AddAsync(new Qiwipay { account = acount, txn_date = DateTime.Now, sum = body.price, type = body.type, number = body.num, prv_txn = prv, pan = body.pan }); } else { return(Json("already")); } await db.SaveChangesAsync(); return(new OkObjectResult(new { acount })); }
public async Task <IActionResult> Checknum([FromBody] CheckViewModel request) { AppUsern reUser = await userManager.FindByNameAsync(request.num); if (reUser == null) { return(Json(Ok())); } return(Json(BadRequest())); }
public async Task <IActionResult> Tolem(string user_id, string type, int pg_result, string pg_amount, DateTime pg_payment_date, string pg_user_phone, string ptype) { AppUsern user = await userManager.FindByIdAsync(user_id); if (pg_result == 1) { if (user == null) { return(new ObjectResult(new { result = "user not found" })); } if (ptype == "pan") { await db.AddAsync(new Ofpay { IdentityId = user_id, type = type, Price = pg_amount.Split(".")[0] }); await db.Tolems.AddAsync(new Tolem { IdentityId = user_id, type = type, success = true, price = pg_amount, date = pg_payment_date }); await db.SaveChangesAsync(); return(new OkObjectResult(new { result = type, bl = "pann" })); } if (type == "search") { await db.Tolems.AddAsync(new Tolem { IdentityId = user_id, type = type, success = true, price = pg_amount, date = pg_payment_date }); var searcher = db.Searches.FirstOrDefault(x => x.IdentityId == user_id); searcher.date = pg_payment_date; searcher.pay = true; searcher.enable = false; searcher.count = 0; await db.SaveChangesAsync(); return(new OkObjectResult(new { result = type, bl = "sr" })); } else { await db.Tolems.AddAsync(new Tolem { IdentityId = user_id, type = type, success = true, price = pg_amount, date = pg_payment_date }); await db.AddAsync(new Blok { IdentityId = user_id, blok = type, enable = true, BuyDate = pg_payment_date }); await db.SaveChangesAsync(); return(new OkObjectResult(new { result = type, bl = "blok" })); } } return(BadRequest()); }
public async Task <IActionResult> Resetpass([FromBody] ResetPassViewModel model) { AppUsern user = await userManager.FindByIdAsync(model.Id); if (user == null) { return(new ObjectResult(new { result = "not found" })); } if (!ModelState.IsValid) { return(new ObjectResult(new { result = "all required" })); } if (model.Id != user.Id) { return(new ObjectResult(new { result = "not found" })); } #region //if (model.Email != user.Email) //{ // return new ObjectResult(new { result = "not found" }); //} //var cd = ""; //var code = cache.TryGetValue(model.Email, out cd); //if (model.Code != cd) //{ // return new ObjectResult(new { result = "Code" }); //} #endregion var _passwordValidator = HttpContext.RequestServices.GetService(typeof(IPasswordValidator <AppUsern>)) as IPasswordValidator <AppUsern>; var _passwordHasher = HttpContext.RequestServices.GetService(typeof(IPasswordHasher <AppUsern>)) as IPasswordHasher <AppUsern>; IdentityResult result = await _passwordValidator.ValidateAsync(userManager, user, user.PasswordHash); if (result.Succeeded) { user.PasswordHash = _passwordHasher.HashPassword(user, model.NewPassword); await userManager.UpdateAsync(user); return(new OkObjectResult(new { result = "success" })); } return(BadRequest()); }
public async Task <IActionResult> Edit(string userId) { // получаем пользователя AppUsern user = await _userManager.FindByIdAsync(userId); if (user != null) { // получем список ролей пользователя var userRoles = await _userManager.GetRolesAsync(user); var allRoles = _roleManager.Roles.ToList(); ChangeRoleViewModel model = new ChangeRoleViewModel { UserId = user.Id, UserEmail = user.FirstName, UserRoles = userRoles, AllRoles = allRoles }; return(PartialView(model)); } return(NotFound()); }
public async Task <IActionResult> Resetnum([FromBody] ResetNumViewModel model) { AppUsern user = await userManager.FindByIdAsync(model.Id); if (user == null) { return(new ObjectResult(new { result = "not found" })); } if (!ModelState.IsValid) { return(new ObjectResult(new { result = "all required" })); } if (model.Id != user.Id) { return(new ObjectResult(new { result = "not found" })); } IQueryable <AppUsern> st = (from c in db.Usernew select c); bool cut; cut = false; foreach (AppUsern s in st) { if (s.UserName == model.NewTelNum) { cut = true; } } if (cut) { return(new ObjectResult(new { result = "number" })); } user.UserName = model.NewTelNum; await userManager.UpdateAsync(user); return(new OkObjectResult(new { result = "success" })); }
public AdminBuyViewModel() { Satilims = new List <Satilim>(); IUser = new AppUsern(); Bought = new List <string>(); }
public async Task <IActionResult> Register([FromBody] RegisterViewModel body) { if (!ModelState.IsValid) { return(new ObjectResult(new { result = "all required" })); } var userIdentity = mapper.Map <AppUsern>(body); var ext = await userManager.FindByNameAsync(body.TelNum); if (ext != null) { return(new ObjectResult(new { result = "number" })); } // var cd = ""; //var code = cache.TryGetValue(body.Email, out cd); //if(body.Code != cd) //{ // return new ObjectResult(new { result = "Code" }); //} var result = await userManager.CreateAsync(userIdentity, body.Password); if (!result.Succeeded) { return(BadRequest("jj")); } AppUsern newuser = await userManager.FindByNameAsync(body.TelNum); // newuser.regdate = DateTime.Today.Date; //if (body.Type == "on") //{ // newuser.offenable = true; //} //else //{ // newuser.enable = true; //} //await db.Searches.AddAsync(new Search { IdentityId = userIdentity.Id, count = 30, enable = true, date = DateTime.Now }); await userManager.AddToRoleAsync(userIdentity, "user"); await db.SaveChangesAsync(); //var claims = new[] // { // new Claim(ClaimTypes.Name,userIdentity.UserName) // }; //var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("dfghdfghdfghjsfjgwtyieyutlhknljsad")); //var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); //var token = new JwtSecurityToken( // issuer: "Issuer", // audience: "Audience", // claims: claims, // //expires: DateTime.Now.AddMinutes(30), // signingCredentials: creds); var tokenstring = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiODc0NzkwODE4OTgiLCJpc3MiOiJJc3N1ZXIiLCJhdWQiOiJBdWRpZW5jZSJ9.pjbZR4Ac6Axl4qrM1YucW1lokXjPshbcOZEXLm2nj3c"; var id = userIdentity.Id; return(new ObjectResult(new { result = "success", id, tokenstring })); }
public async Task <IActionResult> Offlogin([FromBody] LoginViewModel request) { #region //if (!ModelState.IsValid) //{ // return new ObjectResult(new { result = "all required" }); //} //bool bar=false; //bool enables= false; //IQueryable<AppUser> user = (from c in db.User select c); //foreach (AppUser s in user) //{ // if (s.UserName == request.TelNum) // { // bar = true; // enables = s.offenable; // } //} //if (!bar) //{ // return new ObjectResult(new { result = "not found" }); //} #endregion AppUsern reUser = await userManager.FindByNameAsync(request.TelTrue); if (reUser == null) { return(new ObjectResult(new { result = "not found" })); } var sign = signInManager.PasswordSignInAsync(reUser.UserName, request.Password, false, false); //if (enables) //{ if (sign.Result.Succeeded) { #region // if (bar) // { // var claims = new[] // { // new Claim(ClaimTypes.Name, request.TelNum) // }; // var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("dfghdfghdfghjsfjgwtyieyutlhknljsad")); // var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); // var token = new JwtSecurityToken( // issuer: "Issuer", // audience: "Audience", // claims: claims, // //expires: DateTime.Now.AddMinutes(30), // signingCredentials: creds); // var tokenstring = new JwtSecurityTokenHandler().WriteToken(token); // reUser.offenable = false; // await db.SaveChangesAsync(); // return new OkObjectResult(new { tokenstring = tokenstring, reUser.Id }); // } #endregion var tokenstring = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiODc0NzkwODE4OTgiLCJpc3MiOiJJc3N1ZXIiLCJhdWQiOiJBdWRpZW5jZSJ9.pjbZR4Ac6Axl4qrM1YucW1lokXjPshbcOZEXLm2nj3c"; return(new OkObjectResult(new { tokenstring, reUser.Id })); } // //} return(new ObjectResult(new { result = "username or password" })); }
public async Task <IActionResult> Qiwi(string command, string txn_id, string account, double sum, string txn_date) { try { var alo = await db.Qiwipays.Where(x => x.account == account).FirstAsync(); } catch { string nulaccount = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>5</result> <comment></comment> </response>"; return(Content(nulaccount, "text/xml")); } var qaccount = await db.Qiwipays.Where(x => x.account == account).FirstAsync(); if (command == "check") { if (qaccount.type == "search") { string ser = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>0</result> <fields> <field1 name='number'>{qaccount.number}</field1> <field2 name='sum'>{qaccount.sum}</field2> <field3 name='type'>Поиск</field3> </fields> <comment></comment> </response>"; return(Content(ser, "text/xml")); } else if (qaccount.type == "all") { string xmlString1 = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>0</result> <fields> <field1 name='number'>{qaccount.number}</field1> <field2 name='sum'>{qaccount.sum}</field2> <field3 name='type'>Подписка блоков</field3> </fields> <comment></comment> </response>"; return(Content(xmlString1, "text/xml")); } else { string xmlString1 = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>0</result> <fields> <field1 name='number'>{qaccount.number}</field1> <field2 name='sum'>{qaccount.sum}</field2> <field3 name='type'>{qaccount.type} ЕСКЕРТУ! НАҒЫЗ ҰБТ-ДА ЖАУАПТАРДЫҢ ШЫҒУЫНА ГАРАНТИЯ ЖОҚ! ПРОБНЫЙДЫҢ СҰРАҚТАРЫ ҚОСЫЛҒАН. ҰБТ-ДА ҚОЛДАНУҒА БОЛМАЙДЫ!</field3> </fields> <comment>ЕСКЕРТУ! НАҒЫЗ ҰБТ-ДА ЖАУАПТАРДЫҢ ШЫҒУЫНА ГАРАНТИЯ ЖОҚ! ПРОБНЫЙДЫҢ СҰРАҚТАРЫ ҚОСЫЛҒАН. ҰБТ-ДА ҚОЛДАНУҒА БОЛМАЙДЫ!</comment> </response>"; return(Content(xmlString1, "text/xml")); } } bool pan = true; if (command == "pay") { if (sum < qaccount.sum) { string menwe = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>241</result> <comment></comment> </response>"; return(Content(menwe, "text/xml")); } else if (sum > qaccount.sum) { string moree = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>242</result> <comment></comment> </response>"; return(Content(moree, "text/xml")); } string formatString = "yyyyMMddHHmmss"; DateTime dt = DateTime.ParseExact(txn_date, formatString, null); AppUsern user = await userManager.FindByNameAsync(qaccount.number); if (qaccount.pan & pan) { var pays = await db.Ofpays.Where(x => x.IdentityId == user.Id& x.type == qaccount.type).ToListAsync(); if (pays.Count == 0) { await db.Ofpays.AddAsync(new Ofpay { IdentityId = user.Id, type = qaccount.type, Price = String.Format("{0:0.##}", sum) }); qaccount.txn_date = dt; qaccount.txn_id = txn_id; qaccount.pay = true; qaccount.sum = sum; pan = false; await db.SaveChangesAsync(); } string xmlString1 = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <prv_txn>{qaccount.prv_txn}</prv_txn> <sum>{qaccount.sum}</sum> <result>0</result> <comment>СҰРАҚТАРДЫҢ БАРЛЫҒЫ ШЫҒУЫНА ГАРАНТИЯ ЖОҚ! ТЕК ҚАНА ПРОБНЫЙ СҰРАҚТАРЫ!</comment> </response>"; return(Content(xmlString1, "text/xml")); } if (qaccount.type == "search") { var searcher = await db.Searches.FirstOrDefaultAsync(x => x.IdentityId == user.Id); searcher.date = dt; searcher.count = 0; searcher.enable = false; searcher.pay = true; qaccount.txn_date = dt; qaccount.txn_id = txn_id; qaccount.pay = true; qaccount.sum = sum; await db.SaveChangesAsync(); string sre = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <prv_txn>{qaccount.prv_txn}</prv_txn> <sum>{qaccount.sum}</sum> <result>0</result> <comment>search</comment> </response>"; return(Content(sre, "text/xml")); } if (qaccount.type != "all" && qaccount.type != "search" && !qaccount.pan) { var phpay = await db.Phtest_Pays.Where(x => x.Number == qaccount.number && x.Type == qaccount.type).ToListAsync(); if (phpay.Count == 0) { await db.Phtest_Pays.AddAsync(new Phtest_pay { Number = qaccount.number, Price = qaccount.sum, dateTime = dt, Type = qaccount.type }); qaccount.txn_date = dt; qaccount.txn_id = txn_id; qaccount.pay = true; qaccount.sum = sum; await db.SaveChangesAsync(); } string phay = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <prv_txn>{qaccount.prv_txn}</prv_txn> <sum>{qaccount.sum}</sum> <result>0</result> <comment>{qaccount.type} ЕСКЕРТУ! НАҒЫЗ ҰБТ-ДА ЖАУАПТАРДЫҢ ШЫҒУЫНА ГАРАНТИЯ ЖОҚ! ПРОБНЫЙДЫҢ СҰРАҚТАРЫ ҚОСЫЛҒАН. ҰБТ-ДА ҚОЛДАНУҒА БОЛМАЙДЫ!</comment> </response>"; return(Content(phay, "text/xml")); } if (qaccount.type == "all") { var blokss = await db.Bloks.Where(x => x.IdentityId == user.Id& x.blok == qaccount.type& x.enable == true).ToListAsync(); var hasblok = await db.Bloks.Where(x => x.IdentityId == user.Id& x.blok == qaccount.type& x.enable == false).ToListAsync(); if (blokss.Count == 0 && hasblok.Count == 0) { await db.Bloks.AddAsync(new Blok { IdentityId = user.Id, blok = qaccount.type, enable = true, BuyDate = dt }); qaccount.txn_date = dt; qaccount.txn_id = txn_id; qaccount.pay = true; qaccount.sum = sum; await db.SaveChangesAsync(); } if (blokss.Count == 0 && hasblok.Count == 1) { var blok = await db.Bloks.FirstOrDefaultAsync(x => x.IdentityId == user.Id& x.blok == qaccount.type); blok.enable = true; blok.BuyDate = dt; qaccount.txn_date = dt; qaccount.txn_id = txn_id; qaccount.pay = true; qaccount.sum = sum; await db.SaveChangesAsync(); } string ble = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <prv_txn>{qaccount.prv_txn}</prv_txn> <sum>{qaccount.sum}</sum> <result>0</result> <comment>blok</comment> </response>"; return(Content(ble, "text/xml")); } } string err = $@"<?xml version=""1.0"" encoding=""UTF-8""?> <response> <osmp_txn_id>{txn_id}</osmp_txn_id> <result>8</result> <comment></comment> </response>"; return(Content(err, "text/xml")); }