public void SendMailForDisapprove(string email)
        {
            string     from1  = "*****@*****.**";
            GmailClass g      = new GmailClass();
            string     email1 = g.Email;

            try
            {
                using (MailMessage mail = new MailMessage(from1, email))
                {
                    mail.Subject    = "Registration Request";
                    mail.Body       = "Your request has been disapproved due to security reasons.";
                    mail.IsBodyHtml = false;
                    SmtpClient smtp = new SmtpClient();
                    smtp.Host      = "smtp.gmail.com";
                    smtp.EnableSsl = true;
                    NetworkCredential networkCredential = new NetworkCredential(from1, "Harry#123");
                    smtp.UseDefaultCredentials = true;
                    smtp.Credentials           = networkCredential;
                    smtp.Port = 587;
                    smtp.Send(mail);
                    ViewBag.Message     = "Sent";
                    ViewData["Message"] = "Your Request Has been Accepted You can now login... ";
                }
            }
            catch (Exception ex)
            {
                String msg = ex.Message;
            }
        }
Esempio n. 2
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.Email, Email = model.Email
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    UserManager.AddToRole(user.Id, "Client");
                    Client client = new Client();
                    client.Client_ID = user.Id;
                    //client.user_name = model.user_name;
                    client.Client_Email = model.Email;
                    client.ClientCat_ID = 1;
                    db.Clients.Add(client);
                    db.SaveChanges();

                    #region MailCreate



                    string body = "Good Day" + "<br/>"
                                  + "<br/>"
                                  + "<h3>Thank You For Registering At Messanger King.. </h3>"
                                  + "<br/>"
                                  + "<br/>" + "<h4>Please Update Your Personal Details if You Have Not Already <br/> As Soon As You Have Done This You May Make A Booking With Us </h4>" +
                                  "<br/>" +
                                  "<br/>" +
                                  "<br/>" +

                                  "Regards, " +
                                  "<br/>" +
                                  "Messenger Kings Courier Management";

                    GmailClass gm = new GmailClass();
                    gm.Gmail("Messanger King ~ Account Creation", body, model.Email);;
                    #endregion MailCreate

                    await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                    // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771
                    // Send an email with this link
                    // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                    // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                    return(RedirectToAction("Index", "Home"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Esempio n. 3
0
        public ActionResult Decline(int id)
        {
            var booking = (from b in db.Bookings
                           where b.Book_ID == id
                           select b).SingleOrDefault();

            booking.paymentstatus = false;

            booking.BookDecline = true;

            db.Entry(booking).State = EntityState.Modified;
            db.SaveChanges();

            #region MailDecline

            var emails       = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Email).FirstOrDefault();
            var name         = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Name).FirstOrDefault();
            var description  = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Quote.Quote_Description).FirstOrDefault();
            var deliveryDate = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Book_DeliveryDate).FirstOrDefault();
            var totcost      = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Book_TotalCost).FirstOrDefault();
            // fetch current user details
            var lastName = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Surname).FirstOrDefault();
            var IdNo     = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();
            var contact  = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Cellnumber).FirstOrDefault();
            var addr     = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Address).FirstOrDefault();
            var Tell     = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();

            var pickup = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Book_PickupDate).FirstOrDefault();


            string body = "Dear " + name + " " + lastName + "<br/>"
                          + "<br/>"
                          + "<h2>Your order with description name " + description + " has been declined for delivery by Messenger King Courier...</h2> "
                          + "<br/>"
                          + "<br/>"
                          + "<br/><b>" + "The Total Cost (R" + totcost + ") Will Be Refunded To Your Payment Method.</b>" +

                          "<br/>" +
                          "<br/>" +
                          " If you wish to create another booking please visit our website " +
                          "<br/>" +
                          "<br/>" +


                          "Regards, " +
                          "<br/>" +
                          "Messenger Kings Courier Management";

            GmailClass gm = new GmailClass();
            gm.Gmail("Messanger King ~ Order Declined", body, emails);
            #endregion MailDecline

            return(RedirectToAction("OrderList"));
        }
Esempio n. 4
0
        public ActionResult Create([Bind(Include = "Order_ID,Order_DateTime,Order_DeliveryDate,Book_ID,Driver_ID")] Order order)
        {
            if (ModelState.IsValid)
            {
                var booking = (from b in db.Bookings
                               where b.Book_ID == order.Book_ID
                               select b).SingleOrDefault();

                booking.BookStatus = true;


                var orderDate = (from f in db.Bookings
                                 where f.Book_ID == order.Book_ID
                                 select f.Book_PickupDate).FirstOrDefault();

                order.Order_DateTime = DateTime.Now;


                Tracking tracking = new Tracking();
                //Booking book = db.Bookings.Find(order);

                tracking.Track_ID     = "MK-" + booking.Book_ID + "87448972";
                tracking.Order_Status = "Your order has been approved!";

                tracking.Track_Message = "The Order Has Been Approved!";


                #region MailApproved

                var emails       = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Email).FirstOrDefault();
                var name         = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Name).FirstOrDefault();
                var description  = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Quote.Quote_Description).FirstOrDefault();
                var deliveryDate = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Book_DeliveryDate).FirstOrDefault();
                var totcost      = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Book_TotalCost).FirstOrDefault();
                // fetch current user details
                var lastName = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Surname).FirstOrDefault();
                var IdNo     = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();
                var contact  = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Cellnumber).FirstOrDefault();
                var addr     = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Address).FirstOrDefault();
                var Tell     = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();

                var pickup = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Book_PickupDate).FirstOrDefault();



                string body = "Dear " + name + " " + lastName + "<br/>"
                              + "<br/>"
                              + "<h3>Your order with description name " + description + " has been approved for delivery by Messenger King Courier...</h3> "
                              + "<br/>" +
                              "<h3>You Are Now Able To Track Your Package Using The Following Tracking Number : <u>" + tracking.Track_ID + "</u></h3>" +

                              "<br/>" +
                              "<br/>" +
                              " If you wish to create another booking please visit our website " +
                              "<br/>" +
                              "<br/>" +

                              "Regards, " +
                              "<br/>" +
                              "Messenger Kings Courier Management";

                GmailClass gm = new GmailClass();
                gm.Gmail("Messanger King ~ Order Approved!", body, emails);
                #endregion MailApproved



                db.Trackings.Add(tracking);

                db.Orders.Add(order);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.Book_ID   = new SelectList(db.Bookings, "Book_ID", "Book_RecipientName", order.Book_ID);
            ViewBag.Driver_ID = new SelectList(db.Drivers, "Driver_ID", "Driver_Name", order.Driver_ID);
            return(View(order));
        }
Esempio n. 5
0
        public ActionResult Create([Bind(Include = "Book_ID,Book_PickupDate,Book_DeliveryDate,Book_RecipientName,Book_RecipientSurname,Book_RecipientNumber,Book_DeliveryNote,Book_TotalCost,BookStatus,Quote_ID,Client_ID")] Booking booking)
        {
            if (ModelState.IsValid)
            {
                var cost = (from cl in db.Quotes
                            where cl.Quote_ID == booking.Quote_ID
                            select cl.Quote_Cost).SingleOrDefault();
                booking.Book_TotalCost = cost;
                if (booking.Book_DeliveryNote == null || booking.Book_DeliveryNote == "")
                {
                    booking.Book_DeliveryNote = "None";
                }

                var uid    = User.Identity.GetUserId();
                var getCat = (from c in db.Clients
                              where c.Client_ID == uid
                              select c.ClientCategory.ClientCat_Type).FirstOrDefault();

                //Validate dates selected
                if (booking.Book_PickupDate > booking.Book_DeliveryDate || booking.Book_PickupDate == booking.Book_DeliveryDate || booking.Book_PickupDate < DateTime.Today || booking.Book_DeliveryDate == DateTime.Today || booking.Book_DeliveryDate < DateTime.Today)
                {
                    ViewBag.ErrorDate = "Please check if your dates are correct and try again.";
                    return(View(booking));
                }
                db.Bookings.Add(booking);
                db.SaveChanges();

                var emails       = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Email).FirstOrDefault();
                var id           = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Book_ID).FirstOrDefault();
                var deliveryDate = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Book_DeliveryDate).FirstOrDefault();
                var totcost      = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Book_TotalCost).FirstOrDefault();
                // fetch current user details
                var name        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Name).FirstOrDefault();
                var lastName    = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Surname).FirstOrDefault();
                var IdNo        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();
                var contact     = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Cellnumber).FirstOrDefault();
                var addr        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_Address).FirstOrDefault();
                var Tell        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();
                var description = db.Bookings.Where(c => c.Client_ID == booking.Client_ID && c.Book_ID == booking.Book_ID).Select(c => c.Quote.Quote_Description).FirstOrDefault();

                var pickup = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == booking.Book_ID).Select(c => c.Book_PickupDate).FirstOrDefault();
                // check if the user details are complete before proceding with booking
                if (name == null || lastName == null || IdNo == null || contact == null || addr == null || Tell == null)
                {
                    //ViewBag.ErrorData = $"Your profile may be incomplete check if your details are complete.";
                    ////Task.WaitAll(Task.Delay(1000));
                    db.Bookings.Find(booking.Book_ID);
                    db.Bookings.Remove(booking);
                    return(RedirectToAction("Edit", "Clients", new { id = uid }));
                }

                //create instance for emails
                // Email objmail = new Email();
                // objmail.SendConfirmation(emails, name, id, deliveryDate, (double)totcost);
                #region MailBooking

                string body = "Dear " + name + " " + lastName + "<br/>"
                              + "<br/>"
                              + "<h2>Congratulations You have successfully booked for a courier on contract</h2>"

                              + "<br/>"
                              + "<br/>"
                              + "<h3>Your Booking Details:</h3>"


                              + "ID Number: " + IdNo + "<br/>"
                              + "Contact Number: " + contact + "<br/>" + "<br/>" + "<br/>"
                              + "Your Item's Description: " + description + "<br/>"
                              + "The Pick-up Date Is: " + pickup + "<br/>"
                              + "The Delivery Date Is: " + deliveryDate.Date
                              + "<br/>" + "The Total Cost: R" + totcost +
                              "<br/>" +
                              "<h3>You will be notified as soon as your order is approved by one of our admins</h3>" +
                              "<br/>" +
                              "<br/>" +
                              "<br/>" +

                              "Regards," +
                              "<br/>" +
                              "Messenger Kings Courier Management";

                GmailClass gm = new GmailClass();
                gm.Gmail("Messanger King ~ Booking Confirmation", body, emails);
                #endregion MailBooking

                return(RedirectToAction("Details", new { id = booking.Book_ID }));
            }

            ViewBag.Client_ID = new SelectList(db.Clients, "Client_ID", "Client_IDNo", booking.Client_ID);
            ViewBag.Quote_ID  = new SelectList(db.Quotes, "Quote_ID", "Quote_PickupAddress", booking.Quote_ID);
            return(View(booking));
        }
Esempio n. 6
0
        public ActionResult Validate(int id)
        {
            // Email objmail = new Email();
            var uid      = User.Identity.GetUserId();
            var bookingt = (from h in db.Bookings
                            where h.Book_ID == id
                            select h).FirstOrDefault();
            var getCat = (from c in db.Bookings
                          where c.Book_ID == id
                          select c.Client.ClientCategory.ClientCat_Type).FirstOrDefault();
            var Qid = (from c in db.Bookings
                       where c.Book_ID == id
                       select c.Quote_ID).FirstOrDefault();
            var getTempCat = (from c in db.Quotes
                              where c.Quote_ID == Qid
                              select c.ClientCategory.ClientCat_Type).FirstOrDefault();

            var emails       = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_Email).FirstOrDefault();
            var idy          = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Book_ID).FirstOrDefault();
            var deliveryDate = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Book_DeliveryDate).FirstOrDefault();
            var totcost      = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Book_TotalCost).FirstOrDefault();
            // fetch current user details
            var name        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_Name).FirstOrDefault();
            var lastName    = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_Surname).FirstOrDefault();
            var IdNo        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();
            var contact     = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_Cellnumber).FirstOrDefault();
            var addr        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_Address).FirstOrDefault();
            var Tell        = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Client.Client_IDNo).FirstOrDefault();
            var description = db.Bookings.Where(c => c.Client_ID == bookingt.Client_ID && c.Book_ID == bookingt.Book_ID).Select(c => c.Quote.Quote_Description).FirstOrDefault();
            var pickup      = db.Bookings.Where(c => c.Client_ID == uid && c.Book_ID == bookingt.Book_ID).Select(c => c.Book_PickupDate).FirstOrDefault();

            if (getCat.ToUpper() == "Pay as you go".ToUpper() && getTempCat.ToUpper() == "Pay as you go".ToUpper())
            {
                // send  emails and redirect to
                #region MailBooking

                string body = "Dear " + name + " " + lastName + "<br/>"
                              + "<br/>"
                              + "<h2>Congratulations You have successfully booked for a courier As a Pay as You go Customer</h2>"

                              + "<br/>"
                              + "<br/>"
                              + "<h3>Your Booking Details:</h3>"


                              + "ID Number: " + IdNo + "<br/>"
                              + "Contact Number: " + contact + "<br/>" + "<br/>" + "<br/>"
                              + "Your Item's Description: " + description + "<br/>"
                              + "The Pick-up Date Is: " + pickup + "<br/>"
                              + "The Delivery Date Is: " + deliveryDate.Date
                              + "<br/>" + "The Total Cost: R" + totcost +
                              "<br/>" +
                              "<h3>You will be notified as soon as your order is approved by one of our admins</h3>" +
                              "<br/>" +
                              "<br/>" +
                              "<br/>" +

                              "Regards," +
                              "<br/>" +
                              "Messenger Kings Courier Management";

                GmailClass gm = new GmailClass();
                gm.Gmail("Messanger King ~ Booking Confirmation", body, emails);
                #endregion MailBooking
                // objmail.SendConfirmation(emails, name, id, deliveryDate, (double)totcost);
                return(RedirectToAction("OnceOff", new { id = id }));
            }
            else if (getCat.ToUpper() == "On contract".ToUpper() && getTempCat.ToUpper() == "Pay as you go".ToUpper())
            {
                #region MailBooking

                string body = "Dear " + name + " " + lastName + "<br/>"
                              + "<br/>"
                              + "<h2>Congratulations You have successfully booked for a courier As a Pay as You go Customer</h2>"

                              + "<br/>"
                              + "<br/>"
                              + "<h3>Your Booking Details:</h3>"


                              + "ID Number: " + IdNo + "<br/>"
                              + "Contact Number: " + contact + "<br/>" + "<br/>" + "<br/>"
                              + "Your Item's Description: " + description + "<br/>"
                              + "The Pick-up Date Is: " + pickup + "<br/>"
                              + "The Delivery Date Is: " + deliveryDate.Date
                              + "<br/>" + "The Total Cost: R" + totcost +
                              "<br/>" +
                              "<h3>You will be notified as soon as your order is approved by one of our admins</h3>" +
                              "<br/>" +
                              "<br/>" +
                              "<br/>" +

                              "Regards," +
                              "<br/>" +
                              "Messenger Kings Courier Management";

                GmailClass gm = new GmailClass();
                gm.Gmail("Messanger King ~ Booking Confirmation", body, emails);
                #endregion MailBooking
                // objmail.SendConfirmation(emails, name, id, deliveryDate, (double)totcost);
                return(RedirectToAction("OnceOff", new { id = id }));
            }
            else
            {
                var booking = db.Bookings.Find(id);
                #region MailBooking

                string body = "Dear " + name + " " + lastName + "<br/>"
                              + "<br/>"
                              + "<h2>Congratulations You have successfully booked for a courier As a Contract Customer</h2>"

                              + "<br/>"
                              + "<br/>"
                              + "<h3>Your Booking Details:</h3>"


                              + "ID Number: " + IdNo + "<br/>"
                              + "Contact Number: " + contact + "<br/>" + "<br/>" + "<br/>"
                              + "Your Item's Description: " + description + "<br/>"
                              + "The Pick-up Date Is: " + pickup + "<br/>"
                              + "The Delivery Date Is: " + deliveryDate.Date
                              + "<br/>" + "The Total Cost: R" + totcost +
                              "<br/>" +
                              "<h3>You will be notified as soon as your order is approved by one of our admins</h3>" +
                              "<br/>" +
                              "<br/>" +
                              "<br/>" +

                              "Regards," +
                              "<br/>" +
                              "Messenger Kings Courier Management";

                GmailClass gm = new GmailClass();
                gm.Gmail("Messanger King ~ Booking Confirmation", body, emails);
                #endregion MailBooking
                booking.paymentstatus   = true;
                db.Entry(booking).State = EntityState.Modified;
                db.SaveChanges();
                // objmail.SendConfirmation(emails, name, id, deliveryDate, (double)totcost);
                return(RedirectToAction("SuccessfulBooking", new { id = id }));
            }
        }
Esempio n. 7
0
        public ActionResult Win(Coupon coupon)
        {
            var chars       = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
            var stringChars = new char[4];
            var random      = new Random();

            for (int i = 0; i < stringChars.Length; i++)
            {
                stringChars[i] = chars[random.Next(chars.Length)];
            }

            var finalString = new String(stringChars);
            var uid         = User.Identity.GetUserId();

            coupon.Coupon_Code = coupon.Coupon_Value + "RandOFF" + finalString;
            coupon.Client_ID   = User.Identity.GetUserId();


            var spin = (from b in db.Spins
                        where b.Client_ID == uid
                        select b).FirstOrDefault();

            spin.No_Spins -= 1;

            ViewBag.SpinsLeft    = spin.No_Spins;
            ViewBag.CouponCode   = coupon.Coupon_Code;
            TempData["Coupons"]  = "TEST";
            db.Entry(spin).State = EntityState.Modified;
            db.Coupons.Add(coupon);
            db.SaveChanges();


            var emails = db.Clients.Where(c => c.Client_ID == uid).Select(c => c.Client_Email).FirstOrDefault();

            var name     = db.Clients.Where(c => c.Client_ID == uid).Select(c => c.Client_Name).FirstOrDefault();
            var lastName = db.Clients.Where(c => c.Client_ID == uid).Select(c => c.Client_Surname).FirstOrDefault();


            // send  emails and redirect to
            #region MailBooking

            string body = "Dear " + name + " " + lastName + "<br/>"
                          + "<br/>"
                          + "<h2>Congratulations You Have Won A R" + coupon.Coupon_Value + " Coupon</h2>"

                          + "<br/>"
                          + "<br/>"
                          + "<h3>Your Coupon Code Is: " +
                          coupon.Coupon_Code +
                          "</h3>" +


                          "<br/>" +
                          "<br/>" +

                          "You may use it at checkout to recieve a discount of the specified value." +
                          "<br/>" +
                          "<br/>" +
                          "Regards," +
                          "<br/>" +
                          "Messenger Kings Courier Management";

            GmailClass gm = new GmailClass();
            gm.Gmail("Messanger King ~ You Won a Coupon!", body, emails);
            #endregion



            return(View(coupon));
        }
Esempio n. 8
0
        public ActionResult ManagePackageDispatch([Bind(Include = "Waybill_ID,Date_Packages_CheckedOut,Date_Packages_CheckedIN,Order_ID,Track_ID,Status_ID")] Waybill waybill)
        {
            if (ModelState.IsValid)
            {
                waybill.Status_ID = 7;

                Tracking tracking = db.Trackings.Where(t => t.Order_ID == waybill.Order_ID).FirstOrDefault();


                tracking.Track_Message = "Package has been dispatched from Warehouse";

                var date = (from d in db.Orders
                            where waybill.Order_ID == d.Order_ID
                            select d.Bookings).FirstOrDefault();

                if (date.Book_DeliveryDate != DateTime.Now.Date)
                {
                    var book = db.Bookings.Find(date.Book_ID);

                    book.Book_DeliveryDate = DateTime.Now.Date;

                    db.Entry(book).State = EntityState.Modified;



                    var emails = db.Clients.Where(c => c.Client_ID == book.Client_ID).Select(c => c.Client_Email).FirstOrDefault();

                    var name     = db.Clients.Where(c => c.Client_ID == book.Client_ID).Select(c => c.Client_Name).FirstOrDefault();
                    var lastName = db.Clients.Where(c => c.Client_ID == book.Client_ID).Select(c => c.Client_Surname).FirstOrDefault();


                    // send  emails to notify client of early delivery
                    #region MailBooking

                    string body = "Dear " + name + " " + lastName + "<br/>"
                                  + "<br/>"
                                  + "<h2>Your package with tracking No: " + waybill.Track_ID + " has been rescheduled to dispatch today</h2>"

                                  + "<br/>"
                                  + "<br/>" +


                                  "<br/>" +
                                  "<br/>" +

                                  "If you have any queries please reply to this email" +
                                  "<br/>" +
                                  "<br/>" +
                                  "Regards," +
                                  "<br/>" +
                                  "Messenger Kings Courier Management";

                    GmailClass gm = new GmailClass();
                    gm.Gmail("Messanger King ~ Your Package Has Been Dispatched", body, emails);

                    #endregion
                }

                db.Entry(waybill).State  = EntityState.Modified;
                db.Entry(tracking).State = EntityState.Modified;
                db.SaveChanges();

                TempData["Success"] = "You have successfully updated the status of this package, please scan a new package or Type in a Tracking number";
                return(RedirectToAction("Store"));
            }



            ViewBag.Status_ID = new SelectList(db.Status, "Status_ID", "Storage_Status", waybill.Order_ID);
            ViewBag.Order_ID  = new SelectList(db.Orders, "Order_ID", "Driver_ID", waybill.Order_ID);
            return(View(waybill));
        }