Esempio n. 1
0
        public long Add(int Id_Prensa)
        {
            long Id_Request = -1;

            try
            {
                log.Debug("MemoryGeneratedRequest. Add(). ");
                //Add Request
                Solicitudes            model     = new Solicitudes();
                Model.BL.DTO.Solicitud solicitud = new Model.BL.DTO.Solicitud();
                solicitud.Id_Prensa        = Id_Prensa;
                solicitud.Fecha_Generacion = DateTime.Now;
                Id_Request = model.Agregar(solicitud);

                PendingRequestLogic pendingRequestLogic = new PendingRequestLogic();
                pendingRequestLogic.SetConfiguration(Estado_Solicitud.Pendiente, null, null);

                _dicRequest.Add(Id_Request, pendingRequestLogic);

                //Add to History
                Model.BL.Historico_Solicitud     modelHistoric = new Model.BL.Historico_Solicitud(ConfigurationManager.ConnectionStrings["PrensasConfigDB"].ConnectionString);
                Model.BL.DTO.Historico_Solicitud historico     = new Model.BL.DTO.Historico_Solicitud();
                historico.Fecha        = solicitud.Fecha_Generacion;
                historico.Id_Solicitud = Id_Request;
                historico.Estado       = Estado_Solicitud.Pendiente;

                modelHistoric.Agregar(historico);
            }
            catch (Exception er)
            {
                log.Error("Add()", er);
            }
            return(Id_Request);
        }
Esempio n. 2
0
        public long MarkAs(long Id_Request, Estado_Solicitud state, int?id_Usuario, int?id_Device)
        {
            long idRequestCambioEstado = -1;

            try
            {
                // Configuramos el estado de las notificaciones en memoria
                log.Debug("MarkAs. Guardando el estado en memoria");
                PendingRequestLogic confRequest = null;

                if (_dicRequest.TryGetValue(Id_Request, out confRequest))
                {
                    // Obtenemos el estado actual
                    Estado_Solicitud?estadoSolicitud = confRequest.GetRequestState;

                    if (estadoSolicitud != null && state < estadoSolicitud)
                    {
                        //Add to History
                        Model.BL.Historico_Solicitud     modelHistoric = new Model.BL.Historico_Solicitud(ConfigurationManager.ConnectionStrings["PrensasConfigDB"].ConnectionString);
                        Model.BL.DTO.Historico_Solicitud historico     = new Model.BL.DTO.Historico_Solicitud();
                        historico.Fecha        = DateTime.Now;
                        historico.Id_Solicitud = Id_Request;
                        historico.Estado       = state;
                        idRequestCambioEstado  = modelHistoric.Agregar(historico);

                        //Change State
                        confRequest.SetConfiguration(state, id_Usuario, id_Device);
                    }
                }
            }
            catch (Exception er)
            {
                log.Error("MarkAs()", er);
            }

            return(idRequestCambioEstado);
        }