示例#1
0
        public ActionResult Detail(int id)
        {
            ViewBag.titulo = "Detalle Justificación";

            var model = DataBase.Permisos.Get(p => p.IdPermiso == id).FirstOrDefault();

            PermisoEdit permisoEdit = new PermisoEdit();

            permisoEdit.IdPermiso = model.IdPermiso;
            permisoEdit.IdAgente  = model.IdAgente;
            permisoEdit.IdGrupo   = model.IdGrupo;
            permisoEdit.Agente    = model.IdAgente != null ? model.Agente.Descripcion : null;
            permisoEdit.Grupo     = model.IdGrupo != null ? model.Grupo.Descripcion : null;

            permisoEdit.EsPrevio = false;

            if (model.IdAgente != null && model.Agente.Usuario != null && !String.IsNullOrEmpty(model.Agente.Usuario.Contact.PhoneNumber))
            {
                permisoEdit.Agente = String.Format("{0} - {1}: {2}", permisoEdit.Agente, Rp3.AgendaComercial.Resources.LabelFor.Telefono, model.Agente.Usuario.Contact.PhoneNumber);
            }

            permisoEdit.Motivo = model.Motivo;
            permisoEdit.Tipo   = model.Tipo;

            permisoEdit.FechaInicio = model.FechaInicio.Date.AddHours(model.HoraInicio.Hour).AddMinutes(model.HoraInicio.Minute);
            permisoEdit.FechaFin    = model.FechaFin.Date.AddHours(model.HoraFin.Hour).AddMinutes(model.HoraFin.Minute);

            permisoEdit.Observacion           = model.Observacion;
            permisoEdit.ObservacionSupervisor = model.ObservacionSupervisor;

            return(PartialView("_PermisoEdit", permisoEdit));
        }
示例#2
0
        public ActionResult Detail(int id)
        {
            ViewBag.titulo = "Detalle Permiso";

            var model = DataBase.Permisos.Get(p => p.IdPermiso == id).FirstOrDefault();

            PermisoEdit permisoEdit = new PermisoEdit();

            permisoEdit.IdPermiso = model.IdPermiso;
            permisoEdit.IdAgente  = model.IdAgente;
            permisoEdit.IdGrupo   = model.IdGrupo;
            permisoEdit.Agente    = model.IdAgente != null ? model.Agente.Descripcion : null;
            permisoEdit.Grupo     = model.IdGrupo != null ? model.Grupo.Descripcion : null;

            permisoEdit.EsPrevio = true;

            permisoEdit.Motivo = model.Motivo;
            permisoEdit.Tipo   = model.Tipo;

            permisoEdit.FechaInicio = model.FechaInicio.Date.AddHours(model.HoraInicio.Hour).AddMinutes(model.HoraInicio.Minute);
            permisoEdit.FechaFin    = model.FechaFin.Date.AddHours(model.HoraFin.Hour).AddMinutes(model.HoraFin.Minute);

            permisoEdit.Observacion           = model.Observacion;
            permisoEdit.ObservacionSupervisor = model.ObservacionSupervisor;

            return(PartialView("_PermisoEdit", permisoEdit));
        }
示例#3
0
        public ActionResult Crear()
        {
            ViewBag.titulo = "Nuevo Permiso";

            PermisoEdit permisoEdit = new PermisoEdit();

            permisoEdit.EsPrevio = true;

            DateTime fechaActual = GetCurrentDateTime();

            return(PartialView("_PermisoEdit", permisoEdit));
        }
示例#4
0
        public ActionResult Crear(PermisoEdit permisoEdit)
        {
            try
            {
                DateTime fechaActual = GetCurrentDateTime();

                //CLIENTE/CONTACTO EXISTA
                if (permisoEdit.IdAgente == null && permisoEdit.IdGrupo == null)
                {
                    this.AddErrorMessage(Rp3.AgendaComercial.Resources.ErrorMessageValidation.PermisoAgenteOGrupoRequerido);
                }
                //TIEMPO VALIDACION
                else if (permisoEdit.FechaInicio > permisoEdit.FechaFin)
                {
                    this.AddErrorMessage(Rp3.AgendaComercial.Resources.ErrorMessageValidation.HoraInicioMayorHoraFin);
                }
                else if (permisoEdit.FechaFin < this.GetCurrentDateTime())
                {
                    this.AddErrorMessage(Rp3.AgendaComercial.Resources.ErrorMessageValidation.PermisoPrevioFechaMenorFechaActual);
                }
                else if (String.IsNullOrEmpty(permisoEdit.ObservacionSupervisor))
                {
                    this.AddErrorMessage(Rp3.AgendaComercial.Resources.ErrorMessageValidation.ObservacionSupervisorObligatoria);
                }


                if (!this.MessageCollection.HasError())
                {
                    var model = new Rp3.AgendaComercial.Models.Marcacion.Permiso();

                    model.AsignarId();

                    model.IdAgente = permisoEdit.IdAgente;
                    model.IdGrupo  = permisoEdit.IdGrupo;

                    model.FechaInicio = permisoEdit.FechaInicio.Date;
                    model.FechaFin    = permisoEdit.FechaFin.Date;

                    model.HoraInicio = permisoEdit.FechaInicio;
                    model.HoraFin    = permisoEdit.FechaFin;

                    model.MotivoTabla = Rp3.AgendaComercial.Models.Constantes.MotivoPermiso.Tabla;
                    model.Motivo      = permisoEdit.Motivo;
                    model.TipoTabla   = Rp3.AgendaComercial.Models.Constantes.TipoPermiso.Tabla;
                    model.Tipo        = permisoEdit.Tipo;

                    model.EstadoTabla = Rp3.AgendaComercial.Models.Constantes.EstadoPermiso.Tabla;
                    model.Estado      = Rp3.AgendaComercial.Models.Constantes.EstadoPermiso.Aprobado;

                    model.Observacion           = permisoEdit.Observacion;
                    model.ObservacionSupervisor = permisoEdit.ObservacionSupervisor;

                    model.EsPrevio = true;

                    model.UsrIng = this.UserLogonName;
                    model.FecIng = this.GetCurrentDateTime();

                    DataBase.Permisos.Insert(model);

                    DataBase.Save();

                    try
                    {
                        DataBase.Permisos.Permiso(model.IdPermiso);
                        var agente = DataBase.Agentes.Get(p => p.IdAgente == permisoEdit.IdAgente).FirstOrDefault();
                        if (agente != null && agente.IdSupervisor != null)
                        {
                            var device = DataBase.Devices.Get(p => p.IdUsuario == agente.Supervisor.IdUsuario).FirstOrDefault();

                            if (device != null && !String.IsNullOrEmpty(device.GCMId))
                            {
                                var    agenteSup = DataBase.Agentes.Get(p => p.Usuario.LogonName == this.UserLogonName).FirstOrDefault();
                                string footer    = String.Format("Enviada por: {0} - el {1:g}", agenteSup.Descripcion, this.GetCurrentDateTime());

                                AndroidNotificationPusher.PushNotification(device.GCMId, "Solicitud de Justificación", String.Format("{0} ha solicitado una Justificación.", agente.Descripcion), "APROBAR_JUSTIFICACION", footer);
                            }
                        }
                    }
                    catch
                    {
                    }

                    this.AddDefaultSuccessMessage();
                }
            }
            catch
            {
                this.AddDefaultErrorMessage();
            }

            return(Json());
        }