Exemplo n.º 1
0
        public PlazoAperturaResponse CrearPlazoApertura(PlazoAperturaRequest request)
        {
            var jefeDpto = _jefeDptoRepository.FindFirstOrDefault(c => c.Identificacion == request.IdentificacionCreador);

            if (jefeDpto == null)
            {
                return(new PlazoAperturaResponse("No existe el Jefe de departamento", "error"));
            }
            var plazoApertura = new PlazoApertura(jefeDpto);
            var response      = plazoApertura.EstablecerPlazo(request.FechaInicio, request.FechaFin);

            if (response.Equals("El plazo fue correctamente ingresado"))
            {
                var currentPlazo = _plazoAperturaRepository.GetCurrentPlazoByCreador(jefeDpto.Identificacion);
                if (currentPlazo != null)
                {
                    currentPlazo.Deshabilitar();
                    _plazoAperturaRepository.Update(currentPlazo);
                }
                _plazoAperturaRepository.Add(plazoApertura);
                _unitOfWork.Commit();
                return(new PlazoAperturaResponse(response, "Ok"));
            }
            return(new PlazoAperturaResponse(response, "Info"));
        }
Exemplo n.º 2
0
        public string Handle(string identificacionCreador)
        {
            var plazo = _plazoAperturaRepository.GetCurrentPlazoByCreador(identificacionCreador);

            if (plazo == null)
            {
                return("Error: No se encontro ningun plazo de apertura");
            }
            var estaEntreElPlazoEstablecido = plazo.EstaEntreElPlazoEstablecido(DateTime.Now);

            if (!estaEntreElPlazoEstablecido)
            {
                return("Error: La fecha no esta dentro del plazo establecido por el jefe de departamento");
            }
            return("La fecha es válida");
        }