Beispiel #1
0
        public virtual ActionResult EditEmployee(RegistrationModel model)
        {
            var employee = EmployeeRepository.First(x => x.Id == model.Id);
            var role     = RoleRepository.First(x => x.Name == model.NewRole);

            employee.VacationDays     = model.VacationDays;
            employee.ContractEnd      = model.End;
            employee.ContractStart    = model.Start;
            employee.PhoneNumber      = model.Phone;
            employee.Skype            = model.Skype;
            employee.SocialSecurityID = model.SocialSecurityID;

            if (model.BirthDay != null)
            {
                employee.Birthdate = model.BirthDay;
            }

            employee.Role = role;

            EmployeeRepository.SaveOrUpdate(employee);
            EmployeeRepository.Commit();


            return(View(MVC.Admin.Views.EditEmployees, new WorkersViewModel()
            {
                Employees = EmployeeRepository.AsDto()
            }));
        }
Beispiel #2
0
        public virtual ActionResult ParseCsv(CsvImportViewModel model)
        {
            var parsedEmployees = CsvImportService.parseEmployees(model.CsvFile.InputStream);

            var employees = EmployeeRepository.ToList();

            foreach (var parsedEmployee in parsedEmployees)
            {
                try
                {
                    var employee = employees.Single(x => x.Name == parsedEmployee.Name);
                    employee.Birthdate        = parsedEmployee.Birthdate;
                    employee.ContractStart    = parsedEmployee.ContractStart;
                    employee.SocialSecurityID = parsedEmployee.SocialSecurityID;
                    employee.PhoneNumber      = parsedEmployee.PhoneNumber;
                    employee.Skype            = parsedEmployee.Skype;
                    employee.Email            = parsedEmployee.Email;
                    EmployeeRepository.SaveOrUpdate(employee);
                }
                catch (Exception)
                {
                    continue;
                }
            }
            EmployeeRepository.Commit();

            return(View(MVC.Admin.Views.EditEmployees, new WorkersViewModel()
            {
                Employees = EmployeeRepository.AsDto()
            }));
        }
Beispiel #3
0
 public virtual ActionResult EditEmployees()
 {
     return(View(new WorkersViewModel()
     {
         Employees = EmployeeRepository.AsDto()
     }));
 }
Beispiel #4
0
        public virtual async Task <ActionResult> SyncUsers()
        {
            string token = await ADService.GetTokenForApplication();

            if (token == null)
            {
                return(RedirectToAction("SignIn", MVC.Account.Name));
            }

            var result = await ADService.GetUsers();

            IEnumerable <IUser> users = result.CurrentPage.ToList();

            var myId             = CurrentUserId;
            var defaultRole      = RoleRepository.Single(x => x.Name == "User");
            var currentEmployees = EmployeeRepository.Select(x => x.Id);

            var appUsers = users.Where(x => x.GivenName != null).Select(x => new Employee()
            {
                Id                      = x.ObjectId,
                Email                   = x.Mail,
                Role                    = defaultRole,
                Name                    = x.DisplayName,
                PhoneNumber             = x.Mobile,
                IsInitialized           = false,
                VacationMessages        = false,
                RequestMessages         = false,
                MonthlyBirthdayMessages = false,
                DailyBirthdayMessages   = false,
                VacationDays            = 28
            });

            var newUsers = appUsers.Where(x => !currentEmployees.Contains(x.Id));

            EmployeeRepository.AddRange(newUsers);

            EmployeeRepository.Commit();

            return(View(MVC.Admin.Views.EditEmployees, new WorkersViewModel()
            {
                Employees = EmployeeRepository.AsDto()
            }));
        }
Beispiel #5
0
 protected IEnumerable <EmployeeDto> GetEmployees()
 {
     return(EmployeeRepository.AsDto());
 }