Example #1
0
        public SupervisorLugaresVisitaModuleQuery(ISerializeJsonRequest serializerJson, Func <string, IEncrytRequestProvider> encryptRequestProvider,
                                                  ITokenizer tokenizer, IVisitaRepositoryReadOnly repository)
        {
            Post["/movil/supervisor/lugaresVisita/"] = _ =>
            {
                var movilRequest = this.Bind <MovilRequest>();
                var userId       = tokenizer.Detokenize(movilRequest.token, Context);
                if (userId == null)
                {
                    return(new Response().WithStatusCode(HttpStatusCode.Unauthorized));
                }



                var actualUser = userId.UserName;
                var user       = new User(actualUser, "", "", "", "", new RolNull());
                var supervisor = repository.getAgendaSupervisor(user);
                if (supervisor == null)
                {
                    return(new Response().WithStatusCode(HttpStatusCode.NotFound));
                }

                var agenda              = getSupervisorRequest(supervisor);
                var agendaString        = serializerJson.toJson(agenda);
                var respuestaEncryptada = encryptRequestProvider(movilRequest.token).encryptString(agendaString);
                return(respuestaEncryptada);
            };
        }
Example #2
0
        public SupervisorAvailableModuleQuery(IVisitaRepositoryReadOnly repositoryRead)
        {
            Get["/visita/supervisores/available/{fechaInicial:datetime(yyyy-MM-dd)}/{fechaFinal:datetime(yyyy-MM-dd)}"] =
                parameters =>

            {
                DateTime fechaInicial = parameters.fechaInicial;
                DateTime fechaFinal   = parameters.fechaFinal;
                if (fechaInicial < fechaFinal)
                {
                    var userMapping    = new UserMapping();
                    var usersAvailable = repositoryRead.usuariosSinVisitaAgendada(fechaInicial, fechaFinal);
                    return(Response.AsJson(userMapping.convertToRequest(usersAvailable))
                           .WithStatusCode(HttpStatusCode.OK));
                }
                return(new Response()
                       .WithStatusCode(HttpStatusCode.BadRequest));
            };
        }
Example #3
0
        public VisitaModuleQuery(IVisitaRepositoryReadOnly repository)
        {
            Get["/visita"] = parameters =>
            {
                var visitas = repository.getAll();

                return(Response.AsJson(visitas.Select(getVisitaRequest)));
            };
            Get["/visita/{id:guid}"] = parameters =>
            {
                Guid id     = parameters.id;
                var  visita = repository.get(id);
                return(visita != null?Response.AsJson(getVisitaRequest(visita)) : new Response().WithStatusCode(HttpStatusCode.NotFound));
            };

            Get["/visita/{fechaInicial:datetime(yyyy-MM-dd)}/{fechaFinal:datetime(yyyy-MM-dd)}"] = parameters =>
            {
                DateTime fechaInicial = parameters.fechaInicial;
                DateTime fechaFinal   = parameters.fechaFinal;
                var      visitas      = repository.visitasEntreFechas(fechaInicial, fechaFinal);
                return(Response.AsJson(visitas.Select(getVisitaRequest)));
            };
        }
Example #4
0
 public CommandUpdateVisita(IVisitaRepositoryReadOnly repositoryRead,
                            IRepositoryCommands <Visita> repository, Func <IUnitOfWork> unitOfWork) : base(repository, unitOfWork)
 {
     _repositoryRead = repositoryRead;
 }