예제 #1
0
        /// <summary>
        /// Gửi tin nhắn cho phụ huynh
        /// </summary>
        /// <param name="studentID"></param>
        /// <param name="classID"></param>
        /// <param name="message"></param>
        /// <returns></returns>
        public JsonResult SendContact(int classID)
        {
            var CurrentConfig = (int)Session["ConfigID"];

            try
            {
                List <string> phoneList = db.MemberRepository.GetAll()
                                          .Where(c => c.ConfigureID == CurrentConfig && c.ClassID == classID)
                                          .Select(c => c.User.Identifier)
                                          .ToList();
                if (phoneList.Count() > 0)
                {
                    SpeedSMSAPI api     = new SpeedSMSAPI();
                    String[]    phones  = phoneList.ToArray(); //{ "0368273672" };
                    String      content = "Da co diem tren he thong VinhEdu, moi ban truy cap website de xem.";
                    int         type    = 4;

                    /**
                     * sms_type có các giá trị như sau:
                     * 2: tin nhắn gửi bằng đầu số ngẫu nhiên
                     * 3: tin nhắn gửi bằng brandname
                     * 4: tin nhắn gửi bằng brandname mặc định (Verify hoặc Notify)
                     * 5: tin nhắn gửi bằng app android
                     */
                    String sender   = "VinhEdu";
                    String response = api.sendSMS(phones, content, type, sender);
                }
                return(Json(new { success = true, message = "Đã gửi tin nhắn thành công" }, JsonRequestBehavior.AllowGet));
            }
            catch
            {
                return(Json(new { success = false, message = "Lỗi xảy ra, vui lòng thử lại sau" }, JsonRequestBehavior.AllowGet));
            }
        }
예제 #2
0
        //
        // GET: /Guest/


        public ActionResult QuenMatKhau_Ac()
        {
            string taikhoan = Request.Form["phone"].ToString();

            Session["taikhoan"] = taikhoan;

            User user = db.Users.SingleOrDefault(x => x.username == taikhoan);

            if (user != null)
            {
                StringBuilder sb = new StringBuilder();
                char          c;
                string        c1;
                Random        rand = new Random();
                for (int i = 0; i < 5; i++)
                {
                    c = Convert.ToChar(Convert.ToInt32(rand.Next(65, 87)));
                    sb.Append(c);
                }
                c1 = sb.ToString();
                Session["maxacnhan"] = c1;

                SpeedSMSAPI api      = new SpeedSMSAPI();
                String      userInfo = api.getUserInfo();
                String      response = api.sendSMS(user.phone, "Ma xac nhan cua ban la: " + c1, 2, "");

                return(Redirect("~/Guest/XacNhanMatKhau"));
            }


            return(Json("Tài khoản của bạn không tồn tại", JsonRequestBehavior.AllowGet));
        }
예제 #3
0
        public String sendSMS(String email, String phone, String sender, String token)
        {
            try
            {
                UserDataDataContext context = new UserDataDataContext();
                User user = context.Users.FirstOrDefault(x => x.TokenUser == token);

                if (user == null)
                {
                    return("User không hợp lệ");
                }

                CreateOTP   create  = new CreateOTP();
                String      otp     = create.getOTP(token);
                string      message = "Your OTP Number is " + otp + " ( Sent By : XuanHoi )";
                SpeedSMSAPI speed   = new SpeedSMSAPI("N4PkqqiO8UVGFtRKrZUCs5A2z5MIdPPA");
                String      u       = speed.sendSMS(phone, message, SpeedSMSAPI.TYPE_BRANDNAME_NOTIFY, sender);
                if (u != null)
                {
                    //return otp;
                    return(CreateToken(otp.ToString(), key));
                }
            }
            catch (Exception e1)
            {
                return("Send OTP thất bại" + e1.ToString());
            }

            return("THAT BAI");
        }
예제 #4
0
        public async System.Threading.Tasks.Task <ActionResult> Checkout(Order model, FormCollection form)
        {
            if (ModelState.IsValid)
            {
                var sms = new SpeedSMSAPI();
                //Validate Cart
                if (cart.Count == 0)
                {
                    Warning(string.Format("<h5>{0}</h4>", "Bạn chưa có sản phẩm nào trong giỏ hàng, Vui lòng chọn sản phẩm trước khi thanh toán."), true);
                    return(RedirectToAction("Index", "Home"));
                }


                var    user = db.Users.Find(model.UserId);
                string em   = form["Email"];
                var    us   = db.Users.Where(o => o.Email == em).FirstOrDefault();
                //Kiểm tra nếu là người dùng mới thì tạo tài khoản
                if (us == null)
                {
                    if (true)
                    {
                        //var password = Xstring.GeneratePassword();
                        //var newUser = new ApplicationUser
                        //{
                        //    UserName = form["Email"],
                        //    Email = form["Email"],
                        //    PhoneNumber = model.ReceivePhone,
                        //    PasswordHash = password,
                        //};

                        //var UserManager = HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();

                        //var result = await UserManager.CreateAsync(newUser, password);

                        //if (result.Succeeded)
                        //{
                        //    var SignInManager = HttpContext.GetOwinContext().Get<ApplicationSignInManager>();
                        //    await SignInManager.SignInAsync(newUser, isPersistent: false, rememberBrowser: false);
                        //    model.UserId = newUser.Id;

                        //    //Gửi sms
                        //    string smsAcc = "FashionGo: Tai khoan quan ly don hang cua ban tren FashionGo la: Email:" + form["Email"] + ", mat khau:" + password;
                        //    string sent = sms.sendSMS(model.ReceivePhone, smsAcc, 2, "");

                        //    //Gửi tin nhắn tài khoản cho người dùng.
                        //    var subject = "Tài khoản quản lý đơn hàng tại ZdealVN.!";
                        //    var msg = "Xin chào, " + model.ReceiveName;
                        //    msg += "<br>Tài khoản quản lý đơn hàng của bạn tại <a href='http://FashionGo.vn'>FashionGo.vn</a> là:";
                        //    msg += "<br>-Tên đăng nhập: " + form["Email"];
                        //    msg += "<br>-Mật khẩu của bạn: " + password;
                        //    msg += "<br>Bạn có thể sử dụng tài khoản này đăng nhập trên FashionGo.vn để quản lý đơn hàng và sử dụng các dịch vụ khác do FashionGo cung cấp.!";
                        //    msg += "<br>Cảm ơn bạn đã quan tâm sử dụng dịch vụ của FashionGo. mọi thắc mắc xin liên hệ hotline: 0901.002.822-0965.002.822.";
                        //    msg += "<br>FashionGo Hân hạnh được phục vụ bạn.";
                        //    msg += "<br>Chúc bạn một ngày tốt lành.";
                        //    msg += "<p></p><p></p>-BQT ZdealVN!.</p>";

                        //    XMail.Send(newUser.Email, subject, msg);
                        //}
                        //else
                        //{
                        //    foreach (var error in result.Errors)
                        //    {
                        //        ModelState.AddModelError("", "-" + error);
                        //    }
                        //}
                    }
                    var password = "******";
                    var newUser  = new ApplicationUser
                    {
                        UserName     = form["Email"],
                        Email        = form["Email"],
                        PhoneNumber  = model.ReceivePhone,
                        PasswordHash = password,
                    };

                    var UserManager = HttpContext.GetOwinContext().GetUserManager <ApplicationUserManager>();

                    var result = await UserManager.CreateAsync(newUser, password);

                    if (result.Succeeded)
                    {
                        var SignInManager = HttpContext.GetOwinContext().Get <ApplicationSignInManager>();
                        await SignInManager.SignInAsync(newUser, isPersistent : false, rememberBrowser : false);

                        model.UserId = newUser.Id;

                        //Gửi sms
                        string smsAcc = "FashionGo: Tai khoan quan ly don hang cua ban tren FashionGo la: Email:" + form["Email"] + ", mat khau:" + password;
                        string sent   = sms.sendSMS(model.ReceivePhone, smsAcc, 2, "");

                        //Gửi tin nhắn tài khoản cho người dùng.
                        var subject = "Tài khoản quản lý đơn hàng tại ZdealVN.!";
                        var msg     = "Xin chào, " + model.ReceiveName;
                        msg += "<br>Tài khoản quản lý đơn hàng của bạn tại <a href='http://FashionGo.vn'>FashionGo.vn</a> là:";
                        msg += "<br>-Tên đăng nhập: " + form["Email"];
                        msg += "<br>-Mật khẩu của bạn: " + password;
                        msg += "<br>Bạn có thể sử dụng tài khoản này đăng nhập trên FashionGo.vn để quản lý đơn hàng và sử dụng các dịch vụ khác do FashionGo cung cấp.!";
                        msg += "<br>Cảm ơn bạn đã quan tâm sử dụng dịch vụ của FashionGo. mọi thắc mắc xin liên hệ hotline: 0901.002.822-0965.002.822.";
                        msg += "<br>FashionGo Hân hạnh được phục vụ bạn.";
                        msg += "<br>Chúc bạn một ngày tốt lành.";
                        msg += "<p></p><p></p>-BQT ZdealVN!.</p>";

                        XMail.Send(newUser.Email, subject, msg);
                    }
                    else
                    {
                        foreach (var error in result.Errors)
                        {
                            ModelState.AddModelError("", "-" + error);
                        }
                    }
                    ViewBag.Email = form["Email"];
                }
                // ngược lại thì  gán order cho user tìm được
                else if (us != null)
                {
                    model.UserId = us.Id;
                }

                //Update order info
                model.TotalAmount = cart.Total;
                model.TotalOrder  = cart.OrderTotal;
                if (cart.Transport != null)
                {
                    model.TransportId = cart.Transport.Id;
                }
                model.Coupon    = cart.CouponCode;
                model.Discount  = cart.Discount;
                model.OrderDate = DateTime.Now;
                model.StatusId  = 1;
                // add
                db.Orders.Add(model);
                try
                {
                    foreach (var p in cart.Items)
                    {
                        var d = new OrderDetail
                        {
                            OrderId    = model.Id,
                            ProductId  = p.Id,
                            PriceAfter = p.PriceAfter.Value,
                            Discount   = p.Discount == null ? 0 : p.Discount.Value,
                            // Amount = p.Amount
                            S  = p.S,
                            M  = p.M,
                            L  = p.L,
                            XL = p.XL
                        };
                        //ViewBag.ProductDetail = cart.Items;
                        db.OrderDetails.Add(d);
                        // update thêm đang chờ bán
                        var pending = db.Products.Find(p.Id);
                        pending.Pending = (pending.Pending == null ? pending.Pending = 1 : pending.Pending += 1);
                    }
                    if (db.SaveChanges() > 0)
                    {
                        cart.Clear();

                        Success(string.Format("<b><h5>{0}</h4></b>", "Đặt hàng thành công, chúng tôi sẽ liên hệ lại với bạn để xác nhận đơn hàng trước khi tiến hành giao hàng."), true);

                        //Gửi SMS xác nhận và báo tin cho Sale

                        var customerMsg = "FashionGo: Dat hang thanh cong don hang:#" + model.Id + ", Voi so tien: " + string.Format("{0:0,0}vnđ", model.TotalAmount);
                        var saleSMS     = "FashionGo: Don hang moi #" + model.Id + " tu KH: " + model.ReceiveName + " - " + model.ReceivePhone;
                        //string response = sms.sendSMS(model.ReceivePhone, customerMsg, 2, "");
                        //response = sms.sendSMS("0327835923", saleSMS, 2, "");
                        string subject = "Đơn hàng ";
                        var    msg     = "Xin chào, " + model.ReceiveName;
                        msg += "<br>bạn đã đặt hàng thành công đơn hàng: " + model.Id + ", Voi so tien: " + string.Format("{0:0,0}vnđ", model.TotalAmount);
                        msg += "<br>Chi tiết:";
                        foreach (var item in model.OrderDetails)
                        {
                            msg += "<br>Sản phẩm: " + item.Product.Name;
                            msg += "<br>Số lượng: " + item.SoLuong;
                            msg += "<br>Chú thích: " + item.Note;
                        }
                        msg += "<br>Cảm ơn bạn đã quan tâm sử dụng dịch vụ của FashionGo. mọi thắc mắc xin liên hệ hotline: 0901.002.822-0965.002.822.";
                        msg += "<br>FashionGo Hân hạnh được phục vụ bạn.";
                        msg += "<br>Chúc bạn một ngày tốt lành.";
                        msg += "<p></p><p></p>-BQT NguyenAnhDung!.</p>";
                        bool ok = XMail.Sended(em, subject, msg);
                        // int ok = vnMail.GuiMail(subject, msg, em, "*****@*****.**", "");
                        //if (!ok) {
                        //    ModelState.AddModelError("","Không gửi đc mail");
                        //    Debug.WriteLine("Không gửi đc mail");
                        //}

                        return(RedirectToAction("Detail", new { id = model.Id }));
                    }
                }
                catch (Exception ex)
                {
                    //  Danger(string.Format("-{0}<br>", ex.Message), true);
                    ModelState.AddModelError("", ex.Message);
                    Debug.WriteLine(ex.Message);
                }
            }
            else
            {
                // Validate Email
                if (!Request.IsAuthenticated && String.IsNullOrEmpty(form["Email"]))
                {
                    ModelState.AddModelError("", "-Bạn chưa nhập email nhận đơn hàng!");
                }

                //Check quận huyện
                if (String.IsNullOrEmpty(form["DistrictId"]))
                {
                    ModelState.AddModelError("", "-Bạn chưa chọn quận huyện nơi chuyển hàng tới!");
                }

                //Check phuong thuc van chuyen
                if (String.IsNullOrEmpty(form["TransportId"]))
                {
                    ModelState.AddModelError("", "-Bạn chưa chọn nhà vận chuyển trước khi đặt hàng!");
                }
            }
            var provinceId = form["ProvinceId"];

            ViewBag.ProvinceId = new SelectList(db.Provinces.Select(x => new { ProvinceId = x.ProvinceId, NameFull = x.Type + " " + x.Name }), "ProvinceId", "NameFull", provinceId);
            ViewBag.DistrictId = new SelectList(db.Districts.Where(d => d.ProvinceId == provinceId).Select(x => new { DistrictId = x.DistrictId, NameFull = x.Type + " " + x.Name }), "DistrictId", "NameFull", form["DistrictId"].ToString());

            return(View(model));
        }