Ejemplo n.º 1
0
        public IActionResult Index()
        {
            ViewBag.p = 0;
            var Captcha = new web_lib.stat.Captcha(this.HttpContext);

            ViewBag.Captcha = Captcha.ImageAsBaseSrc;
            return(View());
        }
Ejemplo n.º 2
0
        public IActionResult Login(string error)
        {
            ViewBag.p     = 1;
            ViewBag.error = error;
            var Captcha = new web_lib.stat.Captcha(this.HttpContext);

            ViewBag.Captcha = Captcha.ImageAsBaseSrc;
            return(View());
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> Index(int p, web_db._queu.TblQueu model, string captcha, List <Guid> Product, List <Guid> Packing)
        {
            if (model.mob.IsMobile() == false)
            {
                ViewBag.error = "شماره موبایل اشتباه است";
                p             = 0;
            }


            if (p == 0)
            {
            }
            else
            if (p == 1)
            {
                if (web_lib.stat.Captcha.CheckCaptcha(this.HttpContext, captcha) == false)
                {
                    ViewBag.error = "متن امنیتی اشتباه است";
                    var Captcha = new web_lib.stat.Captcha(this.HttpContext);
                    ViewBag.Captcha = Captcha.ImageAsBaseSrc;
                    p = 0;

                    return(View());
                }
                var row = db.TblQueus.FirstOrDefault(a => a.mob == model.mob && a.KindQueu == web_db._queu.TblQueu.QueuEnum.Empty);

                if (row == null)
                {
                    row = new web_db._queu.TblQueu
                    {
                        Id   = Guid.NewGuid(),
                        mob  = model.mob,
                        date = DateTime.Now,

                        Code        = (db.TblQueus.Max(a => (long?)a.Code) ?? 0) + 1,
                        KindQueu    = web_db._queu.TblQueu.QueuEnum.Empty,
                        Addras      = "",
                        codemeli    = "",
                        CodeMahsuls = "",
                        Weight      = 0,
                        Name        = "",
                        Txt         = "",
                    };
                    db.TblQueus.Add(row);
                }
                if (row.datecodesend.HasValue == false || (DateTime.Now - row.datecodesend.Value > TimeSpan.FromMinutes(15)))
                {
                    await sendsmsAsync(row);
                }
                db.SaveChanges();
                model = row;
            }
            else
            {
                var row = db.TblQueus.SingleOrDefault(a => a.Id == model.Id);

                var z = db.TblProducts.Where(a => Product.Contains(a.Id)).Select(a => a.Title).ToList();
                z.AddRange(db.TblPackings.Where(a => Packing.Contains(a.Id)).Select(a => a.Title).ToList());

                Product.AddRange(Packing);
                row.CodeMahsuls = Product.ToJson();


                if (row.codesend != model.codesend)
                {
                    ViewBag.error = "کد ارسالی به موبایل اشتباه است ";
                    p             = 1;
                }
                else
                {
                    row.Addras = model.Addras;


                    row.Mahsuls  = string.Join(',', z);
                    row.Weight   = model.Weight;
                    row.codemeli = model.codemeli;
                    row.KindQueu = web_db._queu.TblQueu.QueuEnum.Save;

                    row.Name = model.Name;
                    row.Txt  = model.Txt;

                    db.SaveChanges();

                    await sendsmsloginAsync(row);
                }

                model = row;
            }



            ViewBag.p      = p;
            model.codesend = null;
            if (p == 0)
            {
                var Captcha = new web_lib.stat.Captcha(this.HttpContext);
                ViewBag.Captcha = Captcha.ImageAsBaseSrc;

                return(View(model));
            }
            else
            if (p == 1)
            {
                ViewBag.listPacking = db.TblPackings.AsEnumerable().Where(a => a.ForContractType().Contains(web_db._Weighing.TblContractType.KindCotractTypeEnum.ASardKhane) && a.IsActive == true)
                                      .OrderBy(a => a.Code).ToList();
                ViewBag.listProduct = db.TblProducts.Where(a => a.IsActive).OrderBy(a => a.Ord).ToList();
                return(View("indexEdit", model));
            }
            else
            {
                return(RedirectToAction("success", new { model.Id }));
            }
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> Login(string username, string password, string Captcha, int p)
        {
            ViewBag.username = username;
            ViewBag.p        = 1;
            if (web_lib.stat.Captcha.CheckCaptcha(this.HttpContext, Captcha) == false)
            {
                ViewBag.error = "متن امنیتی اشتباه است";
                var captcha = new web_lib.stat.Captcha(this.HttpContext);
                ViewBag.Captcha = captcha.ImageAsBaseSrc;

                return(View());
            }

            if (username.IsEmpty() || username.IsCodemeli() == false)
            {
                ViewBag.error = "کد ملی اشتباه است";
                var captcha = new web_lib.stat.Captcha(this.HttpContext);
                ViewBag.Captcha = captcha.ImageAsBaseSrc;

                return(View());
            }
            // var def = db.TblConfigs.First();
            var x = db.TblCustomers.OrderByDescending(a => a.FkSalmali).FirstOrDefault(a => /*a.FkSalmali == def.SalMaliMain*/ a.NationalCode == username);

            if (x == null)
            {
                ViewBag.error = "کد ملی شما در سیستم ثبت نیست";
                var captcha = new web_lib.stat.Captcha(this.HttpContext);
                ViewBag.Captcha = captcha.ImageAsBaseSrc;
                return(View());
            }


            if (p == 1)
            {
                if (x.Datesendpassword.HasValue == false)
                {
                    await sendsmsAsync(x);

                    db.SaveChanges();
                    ViewBag.p   = 2;
                    ViewBag.txt = "رمز عبور برای شما ارسال گردید";
                }
                else
                {
                    //ViewBag.txt = "رمز عبور قبلا برای شما ارسال گردیده";
                    ViewBag.p = 2;
                    if (x.Datesendpassword.HasValue == false || ((DateTime.Now - x.Datesendpassword.Value) > TimeSpan.FromMinutes(5)))
                    {
                        await sendsmsAsync(x);

                        db.SaveChanges();
                        ViewBag.txt = "رمز عبور برای شما ارسال گردید";
                    }
                    else
                    {
                        ViewBag.error = "رمز عبور قبلا برای شما ارسال گردیده";
                    }
                }
            }



            else if (p == 2)
            {
                if (x.Password == password)
                {
                    x.Dateloginlast = DateTime.Now;
                    db.SaveChanges();

                    var claims = new List <Claim>
                    {
                        new Claim(ClaimTypes.NameIdentifier, x.NationalCode.ToString()),
                        new Claim(ClaimTypes.Name, x.NationalCode.ToString()),
                    };
                    ClaimsIdentity  userIdentity = new ClaimsIdentity(claims, "login");
                    ClaimsPrincipal principal    = new ClaimsPrincipal(userIdentity);
                    await HttpContext.SignInAsync(principal);
                    await sendsmsloginAsync(x);

                    return(Redirect("/"));
                }
                else
                {
                    ViewBag.p   = 2;
                    ViewBag.txt = "رمز عبوراشتباه است";
                }
            }

            else if (p == 3)
            {
                ViewBag.p = 2;
                if (x.Datesendpassword.HasValue == false || ((DateTime.Now - x.Datesendpassword.Value) > TimeSpan.FromMinutes(5)))
                {
                    await sendsmsAsync(x);

                    db.SaveChanges();
                    ViewBag.txt = "رمز عبور برای شما ارسال گردید";
                }
                else
                {
                    ViewBag.error = "رمز عبور قبلا برای شما ارسال گردیده";
                }
            }


            return(View());
        }