Esempio n. 1
0
        public OrderAddResponseDTO Delete(int id, string role)
        {
            var order    = _orderRepository.GetById(id);
            var employee = _employeeRepository.GetById(order.EmployeeId);

            if (DateTime.Now > order.Plan.EditableFrom && DateTime.Now <= order.Plan.EditableTo.AddHours(23).AddMinutes(59).AddSeconds(59))
            {
                _orderRepository.Delete(id);
                return(new OrderAddResponseDTO {
                    Message = ""
                });
            }
            else if (role == "HR")
            {
                _orderRepository.Delete(id);
                var emailBody = _emailManager.PrepareDeleteEmail(employee.Rfid, order.Plan.Date, employee.Company.Name);
                _emailManager.SendEmail("Откажан оброк", emailBody, employee.User.Email);
                _emailManager.SendEmail("Додаден оброк", emailBody, "*****@*****.**");
                return(new OrderAddResponseDTO {
                    Message = "Променет оброк надвор од периодот за промени"
                });
            }
            else
            {
                throw new Exception("Моментално сте надвор од периодот за избирање на овој оброк");
            }
        }