示例#1
0
        public async Task <ActionResult> Edit(Guid id)
        {
            var admin = await adminsService.GetAdminById(id);

            if (admin == null)
            {
                return(NotFound());
            }
            string spletedGregorianDate     = "";
            string spletedActivationEndDate = "";

            if (admin.ActivationStartDate != null)
            {
                var gregorianDate = ConvertDatetime.ConvertDateCalendar(admin.ActivationStartDate.AddDays(1), "Gregorian", "en-US");
                spletedGregorianDate = gregorianDate.Split()[0];
            }
            if (admin.ActivationEndDate != null)
            {
                var gregorianDate = ConvertDatetime.ConvertDateCalendar(((DateTime)admin.ActivationEndDate).AddDays(1), "Gregorian", "en-US");
                spletedActivationEndDate = gregorianDate.Split()[0];
            }
            var model = new AdminViewModel()
            {
                Id                             = admin.Id,
                FirstName                      = admin.FirstName,
                SecondName                     = admin.SecondName,
                ThirdName                      = admin.ThirdName,
                LastName                       = admin.LastName,
                Title                          = admin.Title,
                NationalId                     = admin.NationalId,
                MobileNumber                   = admin.MobileNumber,
                Email                          = admin.Email,
                CanApprove                     = admin.CanApprove,
                IsActive                       = admin.IsActive,
                ActivationStartDate            = admin.ActivationStartDate,
                ActivationEndDate              = admin.ActivationEndDate,
                EmplyeeNo                      = admin.EmplyeeNo,
                RootPath                       = $"{Constants.AdminsUploadDirectory.Replace('/', '\\')}",
                ProfileImage                   = admin.ProfileImage,
                SignatureImage                 = admin.SignatureImage,
                IsManager                      = admin.IsManager,
                DepartmentCode                 = admin.DepartmentCode,
                SelectedRolesIds               = admin.Roles.Select(i => i.RoleId).ToList(),
                Ger_ActivationStartDate_string = spletedGregorianDate,
                Ger_ActivationEndDate_string   = spletedActivationEndDate
            };
            await model.FillRolesList(adminsService);

            return(View(model));
        }
示例#2
0
        public IHttpActionResult GetAdminByID(string id)
        {
            string userId = ((ClaimsPrincipal)RequestContext.Principal).FindFirst(x => x.Type == "UserId").Value;

            logger.Info($"Admin {userId} Getting admin by admin ID, controller");
            return(Ok(adminsService.GetAdminById(id)));
        }
示例#3
0
        public async Task <IActionResult> ChangePassword(changePasswordViewModel model)
        {
            if (ModelState.IsValid)
            {
                var account = await adminsService.GetAdminById(sessionService.User.Id);

                if (account != null)
                {
                    var password = hasherService.ComputeSha256Hash(model.CurrentPassword);
                    if (password == account.Password)
                    {
                        account.Password = hasherService.ComputeSha256Hash(model.NewPassword);

                        await adminsService.Update(account);

                        TempData[Constants.ChangePasswordSuccessMessage] = Messages.EditSuccess;
                        return(View());
                    }
                    else
                    {
                        TempData[Constants.ChangePasswordErrorMessage] = Messages.InCorrectPassword;
                        return(View(model));
                    }
                }
                else
                {
                    return(RedirectToAction(nameof(AccessDenied)));
                }
            }
            return(View(model));
        }
示例#4
0
        public IHttpActionResult GetAdminById(int adminId)
        {
            var userData = IdentityHelper.GetLoggedInUser(RequestContext);

            logger.Info("Get Admin {@adminId} by {@userData}", adminId, userData);

            return(Ok(service.GetAdminById(adminId)));
        }