Beispiel #1
0
        public async Task <IActionResult> RejectTimeSheet(int id)
        {
            var _timeSheet = await repo.GetTimeSheet(id);

            _timeSheet.Approved = "afgewezen";
            var result = await repo.UpdateTimeSheet(_timeSheet);

            ApplicationUser user = await userManager.FindByIdAsync(_timeSheet.Id);


            var activeUser = userManager.FindByIdAsync(userManager.GetUserId(HttpContext.User)).Result;

            repox.LogActivity(activeUser, "RejectTimeSheet", $"{activeUser.Firstname[0]}. {activeUser.Lastname} heeft urenformulier {_timeSheet.Month} van {user.Firstname[0]}. {user.Lastname} afgewezen.");

            mailServer.SendApprovalMail(user.UserName, user.Firstname + " " + user.Lastname, _timeSheet.Month, "rejected");

            var admins = await userManager.GetUsersInRoleAsync("Admin");

            foreach (ApplicationUser admin in admins)
            {
                mailServer.AdminRejectedTimeSheet(admin.UserName, _timeSheet.Url, user.Firstname + " " + user.Lastname, admin.Firstname + " " + admin.Lastname, _timeSheet.Month);
            }

            return(RedirectToAction("confirmtimesheet", "sheet", new { url = _timeSheet.Url }));
        }