private async Task <bool> RequestAdminApproval(int holidayId, string clientStatus, int?confirmerId)
        {
            var holiday = await _repositoryHolidays.GetById(holidayId);

            var employee = await _repositoryEmployees.GetById(holiday.EmployeeId);

            if (clientStatus == EmployeeClientStatus.CLIENT_CONFIRMED)
            {
                var updateHolidayDto = _mapper.Map <UpdateHolidayDto>(holiday);
                updateHolidayDto.ConfirmerClientId = Convert.ToInt32(confirmerId);
                updateHolidayDto.Status            = HolidayStatus.ClientConfirmed;
                await _holidaysService.Update(holidayId, updateHolidayDto);
            }

            var admins = await _repositoryEmployees.GetAllAdmins();

            var overtimeSentence = _overtimeUtility.GetOvertimeSentence(OvertimeEmail.CONFIRMATION, holiday.OvertimeDays);
            await _emailService.ConfirmHolidayWithAdmin(admins, employee, holiday, clientStatus, overtimeSentence);

            return(true);
        }
Exemple #2
0
        public async Task <IActionResult> Update(int id, [FromBody] UpdateHolidayDto updateHolidayDto)
        {
            await _holidaysService.Update(id, updateHolidayDto);

            return(NoContent());
        }