Esempio n. 1
0
 public ActionResult EditAgriUser(AgriUserViewModel uvm)
 {
     ViewBag.CostCentreList = _agriUserViewModelBuilder.CostCentre();
     ViewBag.UserList = _agriUserViewModelBuilder.uts();
     try
     {
         _agriUserViewModelBuilder.Save(uvm);
         TempData["msg"] = "User Succesfully Edited";
         return RedirectToAction("ListAgriUsers");
     }
     catch (DomainValidationException dve)
     {
         ValidationSummary.DomainValidationErrors(dve, ModelState);
         return View();
     }
     catch (Exception ex)
     {
         ViewBag.lsUsers = ex.Message;
         return View();
     }
 }
Esempio n. 2
0
        public ActionResult CreateAgriUser(AgriUserViewModel uvm)
        {

            try
            {
                uvm.Id = Guid.NewGuid();
                uvm.Password = "******";
                _agriUserViewModelBuilder.Save(uvm);
                TempData["msg"] = "User Succesfully Created";

                ViewBag.showInactive = false;
                return RedirectToAction("ListAgriUsers");

            }
            catch (DomainValidationException dve)
            {

                ViewBag.UserList = _agriUserViewModelBuilder.uts();
                ViewBag.CostCentreList = _agriUserViewModelBuilder.CostCentre();
                ValidationSummary.DomainValidationErrors(dve, ModelState);

                return View();
            }
            catch (Exception ex)
            {
                ViewBag.UserList = _agriUserViewModelBuilder.uts();
                ViewBag.CostCentreList = _agriUserViewModelBuilder.CostCentre();
                ViewBag.lsUsers = ex.Message;

                return View();
            }

        }
        AgriUserViewModel Map(User user)
        {
            var UserTypes = from Enum e in Enum.GetValues(typeof(UserType))
                            select new { Key = e, Value = e.ToString() };
            var selectedCostCentre = _costCentreRepository.GetAll().ToList().OrderBy(n => n.Name).ToDictionary(n => n.Id, n => n.Name);

            var userViewModel = new AgriUserViewModel
            {

                Id = user.Id,
                Name = user.Username,
                Username = user.Username,
                DateCreated = user._DateCreated,
                Password = user.Password,
                CostCentre = user.CostCentre,
                UserCostCentreId = user.CostCentre,
                Mobile = user.Mobile,
                PIN = user.PIN,
                UserType = user.UserType,
                TillNumber = user.TillNumber == null ? "" : user.TillNumber,
                isActive = user._Status == EntityStatus.Active ? true : false,

            };

            var userCC = _costCentreRepository.GetById(user.CostCentre);
            if (userCC != null)
            {
                userViewModel.CostCentreCode = userCC.CostCentreCode ?? "";
                userViewModel.CostCentreName = userCC.Name;
            }
            userViewModel.UserList = new SelectList(UserTypes, "key", "Value");
            userViewModel.CostCentreList = new SelectList(selectedCostCentre, "key", "value", user.CostCentre);

            return userViewModel;
        }
        public void Save(AgriUserViewModel agrimanagrUserViewModel)
        {

            CostCentre fieldClerkCc = null;
            User user = null;
            var userId = Guid.Empty;
            Guid salesmanCcId = Guid.NewGuid();
            if (agrimanagrUserViewModel.UserType == UserType.PurchasingClerk)
            {
                user = _userRepository.GetById(agrimanagrUserViewModel.Id);
                //create or update
                if (user == null)
                {

                    Hub parentCC =
                        _costCentreRepository.GetById(agrimanagrUserViewModel.CostCentre) as Hub;
                    if (parentCC == null)
                        throw new ArgumentException("Creat User", "Selected Cost Centre is not  Hub");
                    fieldClerkCc = _costCentreFactory.CreateCostCentre(salesmanCcId,
                                                                                CostCentreType.PurchasingClerk,
                                                                                parentCC);

                    user = new User(agrimanagrUserViewModel.Id);
                }
                else
                {
                    //update
                    fieldClerkCc = _costCentreRepository.GetById(user.CostCentre);
                    salesmanCcId = fieldClerkCc.Id;


                }
                fieldClerkCc.Name = agrimanagrUserViewModel.Username;
                fieldClerkCc.CostCentreCode = agrimanagrUserViewModel.CostCentreCode;

                user.Username = agrimanagrUserViewModel.Username;
                user.Password = EncryptorMD5.GetMd5Hash(agrimanagrUserViewModel.Password);
                user.CostCentre = salesmanCcId;
                user.PIN = agrimanagrUserViewModel.PIN;
                user.Mobile = agrimanagrUserViewModel.Mobile;
                user.UserType = agrimanagrUserViewModel.UserType;
                user.Group = _userGroupRepository.GetById(agrimanagrUserViewModel.Group);
                user.TillNumber = agrimanagrUserViewModel.TillNumber == null ? "" : agrimanagrUserViewModel.TillNumber;

                PurchasingClerk purchasingClerk = fieldClerkCc as PurchasingClerk;
                if (purchasingClerk != null)
                    purchasingClerk.User = user;
                var id = _costCentreRepository.Save(purchasingClerk);

            }
            else
            {
                  user = _userRepository.GetById(agrimanagrUserViewModel.Id);
                if (user==null)
                {
                    user = new User(agrimanagrUserViewModel.Id);
                }
               

                user.Username = agrimanagrUserViewModel.Username;
                user.Password = EncryptorMD5.GetMd5Hash(agrimanagrUserViewModel.Password);
                user.CostCentre = agrimanagrUserViewModel.CostCentre;
                user.PIN = agrimanagrUserViewModel.PIN;
                user.Mobile = agrimanagrUserViewModel.Mobile;
                user.UserType = agrimanagrUserViewModel.UserType;
                user.Group = _userGroupRepository.GetById(agrimanagrUserViewModel.Group);
                user.TillNumber = agrimanagrUserViewModel.TillNumber == null ? "" : agrimanagrUserViewModel.TillNumber;

                _userRepository.Save(user);
            }
            
        }
 AgriUserViewModel MapUser(User usr)
 {
     AgriUserViewModel uuvm = new AgriUserViewModel();
     uuvm.Id = usr.Id;
     uuvm.Mobile = usr.Mobile;
     uuvm.PIN = usr.PIN == null ? "" : usr.PIN;
     uuvm.Username = usr.Username;
     uuvm.UserType = (UserType)usr.UserType;
     uuvm.isActive = usr._Status == EntityStatus.Active ? true : false;
     uuvm.TillNumber = usr.TillNumber == null ? "" : usr.TillNumber;
     if (usr.CostCentre != Guid.Empty)
     {
         uuvm.CostCentre = _costCentreRepository.GetById(usr.CostCentre) == null ? Guid.Empty : _costCentreRepository.GetById(usr.CostCentre).Id;
         uuvm.CostCentreCode = _costCentreRepository.GetById(usr.CostCentre) == null ? "" : _costCentreRepository.GetById(usr.CostCentre).CostCentreCode;
         uuvm.CostCentreName = _costCentreRepository.GetById(usr.CostCentre) == null ? "" : _costCentreRepository.GetById(usr.CostCentre).Name;
     }
     return uuvm;
 }