Example #1
0
 public ActionResult Edit(User user)
 {
     using (var um = new UserManager())
     {
         user = um.Edit(user);
     }
     return RedirectToAction("List");
 }
Example #2
0
 public ActionResult Edit(int id)
 {
     using (var cm = new CompanyManager())
     {
         ViewBag.CompanyList = cm.All().OrderBy(c => c.Name).ToList();
     }
     using (var um = new UserManager())
     {
         var user = um.Single(id);
         ViewBag.User = user;
         return View("Edit");
     }
 }
Example #3
0
        public void CreateUserTest()
        {
            User user = new User();
            user.CompanyID = 1;
            user.CreatedOn = DateTime.Now;
            user.Email = "*****@*****.**";
            user.FirstName = "John2";
            user.LastName = "Ocker2s";
            user.Username = "******";

            using (var um = new UserManager())
            {
                user = um.Create(user);
            }

            Assert.IsTrue(user.ID > 0);
        }
Example #4
0
        public ActionResult List(int? companyID)
        {
            List<User> users = new List<User>();
            using (var um = new UserManager())
            {
                // any user tied to a company can only see their users
                var currentUser = um.ByUsername(User.Identity.Name);
                if (currentUser.CompanyID != null)
                {
                    companyID = currentUser.CompanyID;
                }

                users = companyID != null ? um.ByCompany(companyID.GetValueOrDefault()).OrderByDescending(u => u.CreatedOn).ToList()
                    : um.All().OrderByDescending(u => u.CreatedOn).ToList();
                ViewBag.Users = users;
            }
            return View("List");
        }
Example #5
0
 public ActionResult Profile()
 {
     Company company;
     using (var um = new UserManager())
     {
         int companyID = 0;
         // any user tied to a company can only see their users
         var currentUser = um.ByUsername(User.Identity.Name);
         if (currentUser.CompanyID != null)
         {
             companyID = currentUser.CompanyID.GetValueOrDefault();
         }
         using (var cm = new CompanyManager())
         {
             company = cm.Single(companyID);
         }
     }
     return RedirectToAction("Edit", "Company", new { id = company.ID});
 }
Example #6
0
 public ActionResult Create()
 {
     // We create a shell of a quote and redirect to the edit
     var quote = new Quote();
     quote.CreatedOn = DateTime.Now;
     quote.ModifiedOn = DateTime.Now;
     quote.IsActive = false;
     using (var um = new UserManager())
     {
         var user = um.ByUsername(User.Identity.Name);
         if (user.CompanyID != null)
             quote.CompanyID = user.CompanyID;
         quote.EmployeeID = user.ID;
     }
     using (var qm = new QuoteManager())
     {
         quote = qm.Create(quote);
     }
     return RedirectToAction("Options", new { id = quote.ID});
 }
Example #7
0
        public ActionResult MaterialProductsGrid(int? supplierID)
        {
            using (var um = new UserManager())
            {
                var currentUser = um.ByUsername(User.Identity.Name);
                if (currentUser.SupplierID != null)
                {
                    supplierID = currentUser.SupplierID.GetValueOrDefault();
                }
            }

            var model = new MaterialProductGridModel();
            var materialToProductModels = new List<MaterialToProductModel>();

            using (var mm = new MaterialsManager())
            {
                var products = mm.ActiveProducts().ToList();
                var materials = mm.BySupplier(supplierID.GetValueOrDefault()).ToList();
                var materialToProducts = mm.ByManufacturerID(supplierID.GetValueOrDefault()).ToList();

                model.Products = products.AsEnumerable();
                model.Materials = materials.AsEnumerable();

                // create the list based on our product and material list
                foreach (var material in materials)
                {
                    foreach (var product in products)
                    {
                        materialToProductModels.Add(new MaterialToProductModel
                        {
                            IsActive = materialToProducts.Any(mp => mp.ProductID == product.ID && mp.MaterialID == material.ID),
                            ProductID = product.ID,
                            MaterialID = material.ID,
                            ProductName = product.Name,
                            MaterialName = material.Name,
                            MaterialToProductID = materialToProducts.Any(mp => mp.ProductID == product.ID && mp.MaterialID == material.ID) ? materialToProducts.First(mp => mp.ProductID == product.ID && mp.MaterialID == material.ID).ID : 0
                        });
                    }
                }
                model.MaterialProducts = materialToProductModels.AsEnumerable();
            }

            return View("MaterialProductsGrid", model);
        }
Example #8
0
        public ActionResult BySupplier(int id)
        {
            List<Pricing> prices;
            List<Material> materials;
            int supplierID = id;
            using (var um = new UserManager())
            {
                // any user tied to a supplier can only see their supplier rates
                var currentUser = um.ByUsername(User.Identity.Name);
                if (currentUser.SupplierID != null)
                {
                    supplierID = currentUser.SupplierID.GetValueOrDefault();
                }
            }

            using (var mm = new MaterialsManager())
            {
                materials = mm.BySupplier(supplierID).ToList();
            }

            using (var pm = new PricingManager())
            {
                prices = pm.BySupplier(supplierID).ToList();
            }

            // populate the model
            List<PricingModel> model = new List<PricingModel>();
            foreach (var mat in materials)
            {
                var m = new PricingModel();
                if (prices.Any(p => p.MaterialID == mat.ID))
                {
                    var price = prices.FirstOrDefault(p => p.MaterialID == mat.ID);
                    m.ID = price.ID;
                    m.CompanyID = price.CompanyID;
                    m.MaterialID = price.MaterialID;
                    m.SupplierID = price.SupplierID;
                    m.CreatedOn = price.CreatedOn;
                    m.CreatedBy = price.CreatedBy;
                    m.ModifiedBy = price.ModifiedBy;
                    m.ModifiedOn = price.ModifiedOn;
                    m.Price = price.Price;
                    m.MaterialName = mat.Name;
                }
                else
                {
                    m.ID = 0;
                    m.MaterialID = mat.ID;
                    m.SupplierID = supplierID;
                    m.CreatedOn = DateTime.Now;
                    m.CreatedBy = User.Identity.Name;
                    m.ModifiedBy = User.Identity.Name;
                    m.ModifiedOn = DateTime.Now;
                    m.MaterialName = mat.Name;
                }

                model.Add(m);
            }

            return View("PricingList", model);
        }
Example #9
0
        public ActionResult Login(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
            {
                // update the user record
                using (var um = new UserManager())
                {
                    var user = um.ByUsername(model.UserName);
                    if (user != null)
                    {
                        user.LastLoggedIn = DateTime.Now;
                        user = um.Edit(user);
                    }
                }
                return RedirectToLocal(returnUrl);
            }

            // If we got this far, something failed, redisplay form
            ModelState.AddModelError("", "The user name or password provided is incorrect.");
            return View(model);
        }
Example #10
0
 public ActionResult ListByCompany()
 {
     List<User> users = new List<User>();
     int companyID = 0;
     using (var um = new UserManager())
     {
         var currentUser = um.ByUsername(User.Identity.Name);
         if (currentUser.CompanyID != null)
         {
             companyID = currentUser.CompanyID.GetValueOrDefault();
         }
         users = um.ByCompany(companyID).OrderByDescending(u => u.CreatedOn).ToList();
         ViewBag.Users = users;
     }
     return View("List");
 }
Example #11
0
 public ActionResult ListAll(int? companyID)
 {
     List<User> users = new List<User>();
     using (var um = new UserManager())
     {
         users = companyID != null ? um.ByCompany(companyID.GetValueOrDefault()).OrderByDescending(u => u.CreatedOn).ToList()
             : um.All().OrderByDescending(u => u.CreatedOn).ToList();
         ViewBag.Users = users;
     }
     return View("List");
 }
Example #12
0
        public ActionResult ListByEmployee()
        {
            List<Quote> quotes;
            int userID = 0;
            using (var um = new UserManager())
            {
                // any normal user can only see their own quotes
                var currentUser = um.ByUsername(User.Identity.Name);
                userID = currentUser.ID;
            }
            using (var qm = new QuoteManager())
            {
                quotes = qm.ActiveByEmployee(userID).OrderByDescending(q => q.CreatedOn).ToList();
            }

            ViewBag.Quotes = quotes;
            return View("QuoteList");
        }
Example #13
0
        public ActionResult ListByCompany()
        {
            List<Quote> quotes;
            int companyID = 0;
            using (var um = new UserManager())
            {
                // any user tied to a company can only see their company quotes
                var currentUser = um.ByUsername(User.Identity.Name);
                if (currentUser.CompanyID != null)
                {
                    companyID = currentUser.CompanyID.GetValueOrDefault();
                }
            }
            using (var qm = new QuoteManager())
            {
                quotes = qm.ActiveByCompany(companyID).OrderByDescending(q => q.CreatedOn).ToList();
            }

            ViewBag.Quotes = quotes;
            return View("QuoteList");
        }