Ejemplo n.º 1
0
        public void EditFromList(OrderForEditDTO orderDto, string role)
        {
            var order = new Order
            {
                Id          = orderDto.OrderId,
                EmployeeId  = orderDto.EmployeeId,
                IsDelivered = false,
                PlanId      = orderDto.PlanId,
                Shift       = orderDto.Shift,
                Plan        = _planRepository.GetById(orderDto.PlanId)
            };

            if (DateTime.Now > order.Plan.EditableFrom && DateTime.Now <= order.Plan.EditableTo.AddHours(23).AddMinutes(59).AddSeconds(59))
            {
                _orderRepository.Update(order);
            }
            else if (role == "HR")
            {
                var employee = _employeeRepository.GetById(order.EmployeeId);
                var oldMeal  = _orderRepository.GetById(order.Id).Plan.Meal.Name;

                _orderRepository.Update(order);
                var emailBody = _emailManager.PrepareEditEmail(employee.Rfid, order.Plan.Date, oldMeal, order.Plan.Meal.Name, employee.Company.Name);
                _emailManager.SendEmail("Променет оброк", emailBody, employee.User.Email);
                _emailManager.SendEmail("Додаден оброк", emailBody, "*****@*****.**");
            }
            else
            {
                throw new Exception("Моментално сте надвор од периодот за избирање на овој оброк");
            }
        }
Ejemplo n.º 2
0
        public IActionResult EditFromList([FromBody] OrderForEditDTO orderDto)
        {
            try
            {
                var claimRole = _httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.Role);
                if (claimRole == null || claimRole.Value != "HR")
                {
                    var claimEmployeeId = _httpContextAccessor.HttpContext.User.FindFirst("EmployeeId");
                    var employeeId      = (claimEmployeeId == null) ? 0 : Int32.Parse(claimEmployeeId.Value);
                    orderDto.EmployeeId = employeeId;
                }

                var roleValue = (claimRole != null) ? claimRole.Value : "";

                _orderManager.EditFromList(orderDto, roleValue);
                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }