コード例 #1
0
        private void prndingOrder()
        {
            var date  = DateTime.UtcNow.ToString("MM/dd/yyyy");
            var date3 = db.PM_Order.ToList();

            foreach (var k in date3)
            {
                var test      = k.CreatedDate;
                var tesdnkdnk = db.PM_Order.Where(x => x.CreatedDate == test).ToList();
            }
            var item = db.CM_User_Notification.Where(x => x.PendingDate == date && x.PendingOrderStatus == false).ToList();

            if (item.Count > 0)
            {
                foreach (var i in item)
                {
                    CM_User_Notification model = new CM_User_Notification();
                    var PoNo = db.PM_Order.Where(x => x.ID == i.orderID).Select(x => x.ORAPoNumber).FirstOrDefault();
                    model.EntityID           = i.EntityID;
                    model.ActorID            = i.ActorID;
                    model.AttributeName      = i.AttributeName;
                    model.CreatedOn          = i.CreatedOn;
                    model.FromValue          = i.FromValue;
                    model.IsSentInMail       = i.IsSentInMail;
                    model.IsViewed           = i.IsViewed;
                    model.orderStatus        = i.orderStatus;
                    model.PendingDate        = i.PendingDate;
                    model.PendingOrderStatus = i.PendingOrderStatus;
                    model.ToValue            = i.ToValue;
                    model.TypeID             = i.TypeID;
                    model.TypeName           = i.TypeName;
                    model.UserID             = i.UserID;
                    model.orderID            = model.orderID;
                    model.Content            = PoNo + "" + "This Order Is Pending From Supplier";
                    db.CM_User_Notification.Add(model);
                    db.SaveChanges();
                }
            }
        }
コード例 #2
0
        private bool SendNotification(long orderid, int ToValue)
        {
            string uname = (string)User.Identity.Name;
            bool   SendEmailNotification = Convert.ToBoolean(db.Users.Where(x => x.Email == User.Identity.Name).Select(x => x.IsEmailNotificationActive).FirstOrDefault());
            var    item = db.PM_Order.Where(x => x.ID == orderid).FirstOrDefault();

            if (item != null)
            {
                var ToEmail       = db.Users.Where(x => x.Id == ToValue).Select(x => x.Email).FirstOrDefault();
                var IsEmailActive = db.Users.Where(x => x.Id == ToValue).Select(x => x.IsEmailNotificationActive).FirstOrDefault();
                //var SupplierEmail = db.Users.Where(x => x.Id == item.SupplierID).Select(x => x.Email).FirstOrDefault();
                var AttributeName          = db.Users.Where(x => x.Id == item.ReqUID).Select(x => x.FirstName).FirstOrDefault();
                var userType               = db.Users.Where(x => x.UserName == uname).Select(x => x.UserType).FirstOrDefault();
                CM_User_Notification model = new CM_User_Notification();
                model.orderStatus        = item.Status;
                model.UserID             = Convert.ToInt32(User.Identity.GetUserId());
                model.TypeName           = userType;
                model.orderID            = (int)orderid;
                model.PendingOrderStatus = false;
                model.AttributeName      = AttributeName;
                model.CreatedOn          = System.DateTime.Now.ToString("dd/MM/yyyy h:mm tt");
                model.IsViewed           = false;
                model.Content            = "Order" + " " + item.ORAPoNumber + "Has Been" + " " + item.Status;
                model.PendingDate        = DateTime.Now.AddDays(30).ToString("MM/dd/yyyy");
                model.EntityID           = Convert.ToInt32(ToValue);
                model.FromValue          = User.Identity.Name;
                model.ToValue            = ToEmail;
                db.CM_User_Notification.Add(model);
                db.SaveChanges();
                if (SendEmailNotification)
                {
                    mail.sendMail(ToEmail, "Order Creation Mail", model.Content);
                }
            }
            return(true);
        }
コード例 #3
0
        public void AlertCallOff()
        {
            var callOffOrderDate = db.tblStock.Where(x => x.IsCallOff == true && x.CallOffStatus == false).Select(x => x.CallOffDate).ToList();
            var data             = (from x in db.tblStock where x.IsCallOff == true && x.CallOffStatus == false select new { x.CallOffDate, x.PMOrderId }).ToList();

            foreach (var items in data)
            {
                if (DateTime.Now.Date <= Convert.ToDateTime(items.CallOffDate))
                {
                    DateTime date = Convert.ToDateTime(items.CallOffDate).AddDays(-7);
                    if (date == DateTime.Now.Date)
                    {
                        var userids = (from x in UnitOfWork.OrderRepository.GetAll() where x.ID == items.PMOrderId select new { x.SupplierID, x.Consolidator, x.ReqUID, x.OrgUID }).ToList();
                        foreach (var user in userids)
                        {
                            string usertype  = UnitOfWork.UserRepository.Get(x => x.Id == user.ReqUID).UserType;
                            string FromValue = UnitOfWork.UserRepository.Get(x => x.Id == user.ReqUID).Email;
                            if (usertype == "Requisitioner")
                            {
                                if (user.SupplierID > 0)
                                {
                                    CM_User_Notification model = new CM_User_Notification();
                                    model.UserID             = Convert.ToInt32(user.ReqUID);
                                    model.CreatedOn          = System.DateTime.Now.ToString("dd/MM/yyyy h:mm tt");
                                    model.IsViewed           = false;
                                    model.PendingOrderStatus = false;
                                    model.PendingDate        = DateTime.Now.AddDays(-30).ToString("MM/dd/yyyy");
                                    var orderno = UnitOfWork.OrderRepository.Get(x => x.ID == items.PMOrderId).ORAPoNumber;
                                    model.Content   = "Call Off Order" + orderno.ToString();
                                    model.EntityID  = user.SupplierID;
                                    model.FromValue = FromValue;
                                    model.ToValue   = UnitOfWork.UserRepository.Get(x => x.Id == user.SupplierID).Email;
                                    model.orderID   = Convert.ToInt32(items.PMOrderId);
                                    db.CM_User_Notification.Add(model);
                                    db.SaveChanges();
                                }
                                if (user.Consolidator > 0)
                                {
                                    CM_User_Notification model = new CM_User_Notification();
                                    model.UserID             = Convert.ToInt32(user.ReqUID);
                                    model.CreatedOn          = System.DateTime.Now.ToString("dd/MM/yyyy h:mm tt");
                                    model.IsViewed           = false;
                                    model.PendingOrderStatus = false;
                                    model.PendingDate        = DateTime.Now.AddDays(-30).ToString("MM/dd/yyyy");
                                    var orderno = UnitOfWork.OrderRepository.Get(x => x.ID == items.PMOrderId).ORAPoNumber;
                                    model.Content   = "Call Off Order" + orderno.ToString();
                                    model.EntityID  = user.SupplierID;
                                    model.FromValue = FromValue;
                                    model.ToValue   = UnitOfWork.UserRepository.Get(x => x.Id == user.Consolidator).Email;
                                    model.orderID   = Convert.ToInt32(items.PMOrderId);
                                    db.CM_User_Notification.Add(model);
                                    db.SaveChanges();
                                }
                                if (user.OrgUID > 0)
                                {
                                    CM_User_Notification model = new CM_User_Notification();
                                    model.UserID             = Convert.ToInt32(user.ReqUID);
                                    model.CreatedOn          = System.DateTime.Now.ToString("dd/MM/yyyy h:mm tt");
                                    model.IsViewed           = false;
                                    model.PendingOrderStatus = false;
                                    model.PendingDate        = DateTime.Now.AddDays(-30).ToString("MM/dd/yyyy");
                                    var orderno = UnitOfWork.OrderRepository.Get(x => x.ID == items.PMOrderId).ORAPoNumber;
                                    model.Content   = "Call Off Order" + orderno.ToString();
                                    model.EntityID  = user.SupplierID;
                                    model.FromValue = FromValue;
                                    model.ToValue   = UnitOfWork.UserRepository.Get(x => x.Id == user.OrgUID).Email;
                                    model.orderID   = Convert.ToInt32(items.PMOrderId);
                                    db.CM_User_Notification.Add(model);
                                    db.SaveChanges();
                                }
                                if (user.ReqUID > 0)
                                {
                                    CM_User_Notification model = new CM_User_Notification();
                                    model.UserID             = Convert.ToInt32(user.ReqUID);
                                    model.CreatedOn          = System.DateTime.Now.ToString("dd/MM/yyyy h:mm tt");
                                    model.IsViewed           = false;
                                    model.PendingOrderStatus = false;
                                    model.PendingDate        = DateTime.Now.AddDays(-30).ToString("MM/dd/yyyy");
                                    var orderno = UnitOfWork.OrderRepository.Get(x => x.ID == items.PMOrderId).ORAPoNumber;
                                    model.Content   = "Call Off Order" + orderno.ToString();
                                    model.EntityID  = user.SupplierID;
                                    model.FromValue = FromValue;
                                    model.ToValue   = UnitOfWork.UserRepository.Get(x => x.Id == user.ReqUID).Email;
                                    model.orderID   = Convert.ToInt32(items.PMOrderId);
                                    db.CM_User_Notification.Add(model);
                                    db.SaveChanges();
                                }
                            }
                        }
                    }
                    //OrderId.Add(Convert.ToInt32(items.PMOrderId));
                }
            }
        }
コード例 #4
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            var countryList = new SelectList(Country.CountryList());

            ViewBag.country = countryList;
            if (ModelState.IsValid)
            {
                //var user = new UM_User() { UserName = model.Email, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, Password = model.Password, Image = model.Image.FileName, TimeZone = model.TimeZone, StartPage = model.StartPage, FeedSelection = model.FeedSelection, Gender = model.Gender, Address = model.Address, City = model.City, ZipCode = model.ZipCode, IsActive = false, Country = model.Country, UserType = model.UserType };
                UM_User user = new UM_User();

                user.UserName  = model.Email;
                user.Email     = model.Email;
                user.FirstName = model.FirstName;
                user.LastName  = model.LastName;
                user.Password  = model.Password;
                //user.Image = model.Image.FileName;
                user.TimeZone                  = model.TimeZone;
                user.StartPage                 = model.StartPage;
                user.FeedSelection             = model.FeedSelection;
                user.Gender                    = model.Gender;
                user.IsEmailNotificationActive = model.IsEmailNotificationActive;
                user.Address                   = model.Address;
                user.City    = model.City;
                user.ZipCode = model.ZipCode;
                if (model.UserType == "Admin")
                {
                    user.IsActive = true;
                }
                else
                {
                    user.IsActive = false;
                }
                user.Country  = model.Country;
                user.UserType = model.UserType;
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    List <string> AdminEmail = db.Users.Where(x => x.UserType == "Admin").Select(x => x.Email).ToList();
                    foreach (string admin in AdminEmail)
                    {
                        int    AdminId          = UnitOfWork.UserRepository.Get(x => x.UserType == "Admin").Id;
                        string Userid           = model.Email;
                        CM_User_Notification cm = new CM_User_Notification();
                        cm.UserID   = Convert.ToInt32(AdminId);
                        cm.EntityID = Convert.ToInt32(AdminId);

                        cm.ToValue     = admin;
                        cm.IsViewed    = false;
                        cm.FromValue   = Userid;
                        cm.CreatedOn   = DateTime.Now.ToString("dd/MM/yyyy h:mm tt");
                        cm.Content     = model.Email + " " + "Has Registered.";
                        cm.orderStatus = "Created";
                        db.CM_User_Notification.Add(cm);
                        db.SaveChanges();
                        mail.sendMail(admin, "User Registration Notification", cm.Content);
                    }
                    var 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 this link: <a href=\"" + callbackUrl + "\">link</a>");

                    ViewBag.Link    = callbackUrl;
                    TempData["Msg"] = "Successfully Registered!";
                    return(RedirectToAction("Login"));
                }
                AddErrors(result);
            }


            // If we got this far, something failed, redisplay form
            return(View(model));
        }