예제 #1
0
        //[CheckSession(item = "MAR810")]
        public ActionResult ResolucionCustomizada(ResolucionCustomizada tramite)
        {
            if (IsAuth)
            {
                var solicitud = _expedienteManager.GetExpedienteDeMarcasPorId(tramite.ExpedienteId);
                tramite.DOCUMENT = JObject.Parse(tramite.JSONDOC);

                tramite.UsuarioId      = sessionToken.UsuarioId;
                tramite.EstatusId      = (int)tramite.EstatusId;
                tramite.EstatusFinalId = (int)tramite.EstatusId;
                tramite.UpdatesEstatus = tramite.UpdatesEstatus;
                tramite.Observaciones  = "Cambio de Estatus";

                ViewBag.Solicitud = solicitud;
                ViewBag.Tramite   = tramite;

                var htmlString = RenderRazorViewToString("ResolucionCustomizada", null);
                tramite.HTMLDOC = htmlString;

                var cronologiaResult = _expedienteManager.SaveEventoCronologicoDeMarcas(tramite);

                return(Content(htmlString, "text/html"));
            }

            throw new HttpException(401, "");//Not Authorized
        }
예제 #2
0
/// <summary>
/// MARCAS
/// </summary>
        public ResultInfo SaveEventoCronologicoDeMarcas(ResolucionCustomizada resolucion)
        {
            return(_transaction.ExecuteInTransactionScope <ResultInfo>(() =>
            {
                var result = ((IExpedienteRepository)Repository).SaveEventoCronologicoDeMarcas(resolucion);
                return result;
            }));
        }
예제 #3
0
        ///
        /// SaveEventoCronologico DE PATENTES
        ///
        public ResultInfo SaveEventoCronologicoDePatentes(ResolucionCustomizada resolucion)
        {
            var exp = DbContext.Expedientes.Where(e => e.Id == resolucion.ExpedienteId).First();

            if (resolucion.EstatusFinalId == (int)PatenteEstatus.NO_CAMBIA)
            {
                resolucion.EstatusId      = exp.EstatusId;
                resolucion.EstatusFinalId = exp.EstatusId;
            }

            if (resolucion.Registrar)
            {
                var tipo = string.Empty;
                if (resolucion.Tipo == "10")
                {
                    tipo = "p.A.Numero";
                }
                else if (resolucion.Tipo == "9")
                {
                    tipo = "p.U.Numero";
                }
                else if (resolucion.Tipo == "8")
                {
                    tipo = "p.P.Numero"; // Pendiente
                }
                else if (resolucion.Tipo == "7")
                {
                    tipo = "p.S.Numero";
                }
                else if (resolucion.Tipo == "6")
                {
                    tipo = "p.F.Numero"; // Pendiente
                }
                var sequence = DbContext.Sequence.Where(s => s.KeyName == tipo).First();
                if (resolucion.Registro == 0)
                {
                    resolucion.Registro = sequence.NextValue;
                    sequence.NextValue++;
                    DbContext.SaveChanges();
                }

                var pat = DbContext.Patentes.Where(p => p.ExpedienteId == resolucion.ExpedienteId).First();
                pat.Tomo     = resolucion.Tomo;
                pat.Folio    = resolucion.Folio;
                pat.Registro = resolucion.Registro;
                //pat.Libro = resolucion.Libro;
                DbContext.SaveChanges();
            }

            return(MakeCronologia(resolucion));
        }
예제 #4
0
        private ResultInfo MakeCronologia(ResolucionCustomizada resolucion)
        {
            // agregar registro en cronologia
            var cronologia = new Cronologia();

            cronologia.ExpedienteId  = resolucion.ExpedienteId;
            cronologia.Fecha         = resolucion.Fecha;
            cronologia.EstatusId     = resolucion.EstatusId;
            cronologia.Referencia    = resolucion.Referencia;
            cronologia.UsuarioId     = resolucion.UsuarioId;
            cronologia.Observaciones = resolucion.Observaciones;
            //cronologia.UsuarioIniciales = resolucion.UsuarioId.ToString();
            DbContext.Cronologia.Add(cronologia);
            if (resolucion.EstatusId != resolucion.EstatusFinalId)
            {
                // agregar segundo reg en cronologia
                var cronologia2 = new Cronologia();
                cronologia2.ExpedienteId = resolucion.ExpedienteId;
                cronologia2.Fecha        = resolucion.Fecha;
                cronologia2.EstatusId    = resolucion.EstatusFinalId;
                cronologia2.Referencia   = resolucion.Referencia;
                cronologia2.UsuarioId    = resolucion.UsuarioId;
                DbContext.Cronologia.Add(cronologia2);
            }
            if (resolucion.UpdatesEstatus)
            {
                var expediente = DbContext.Expedientes.Where(e => e.Id == resolucion.ExpedienteId).First();
                // cambiar estatus en expediente con estatus EstatusFinalId
                expediente.EstatusId      = resolucion.EstatusFinalId;
                expediente.FechaDeEstatus = resolucion.Fecha;
            }
            DbContext.SaveChanges();
            var cronologiaDocto = new CronologiaDocto();

            cronologiaDocto.CronologiaId            = cronologia.Id;
            cronologiaDocto.JSONDOC                 = resolucion.JSONDOC;
            cronologiaDocto.HTMLDOC                 = resolucion.HTMLDOC;
            cronologiaDocto.FechaActualizacion      = DateTime.Now;
            cronologiaDocto.ActualizadoPorUsuarioId = resolucion.UsuarioId;
            cronologiaDocto.EsTitulo                = resolucion.esTitulo;
            cronologiaDocto.Llave = resolucion.Llave;
            DbContext.CronologiaDoctos.Add(cronologiaDocto);

            var result = new ResultInfo()
            {
                Succeeded = true
            };

            return(result);
        }
예제 #5
0
        private ResolucionCustomizada SetEstatusDeNotificacion(ResolucionCustomizada tramite)
        {
            var exp = _expedienteManager.GetBaseDeExpedientePorId(tramite.ExpedienteId);

            switch (exp.EstatusId)
            {
            case (int)MarcaEstatus.Estatus_Temporal:
                tramite.EstatusId      = (int)MarcaEstatus.Estatus_Temporal;
                tramite.EstatusFinalId = (int)MarcaEstatus.Estatus_Temporal;
                //tramite.Observaciones = "Vencimiento Plazo por Observaciones:" + tramite.Fecha.ToShortDateString() + ", Fecha en que se notifico " + tramite.Fecha.ToShortDateString();
                break;

            default:     //ERROR
                tramite.EstatusId      = (int)MarcaEstatus.Estatus_Temporal;
                tramite.EstatusFinalId = (int)MarcaEstatus.Estatus_Temporal;
                tramite.Observaciones  = "ERROR DEL SISTEMA";
                break;
            }
            return(tramite);
        }
예제 #6
0
        private ResolucionCustomizada SetEstatusDeNotificacion(ResolucionCustomizada tramite)
        {
            var exp = _expedienteManager.GetBaseDeExpedientePorId(tramite.ExpedienteId);

/*
 *          switch (exp.EstatusId)
 *          {
 *              case (int)PatenteEstatus.Requerimiento_de_forma_pendiente_de_notificar:
 *                  tramite.EstatusId = (int)PatenteEstatus.Requerimiento_Forma_Notificado;
 *                  tramite.EstatusFinalId = (int)PatenteEstatus.Requerimiento_Forma_Notificado;
 *                  break;
 *              case (int)PatenteEstatus.Edicto_Emitido_Pendiente_De_Entregar:
 *                  tramite.EstatusId = (int)PatenteEstatus.Edicto_Notificado;
 *                  tramite.EstatusFinalId = (int)PatenteEstatus.Edicto_Notificado;
 *                  break;
 *          }
 */

            return(tramite);
        }
예제 #7
0
        //
        // Save evento cronologico de MARCAS
        //
        public ResultInfo SaveEventoCronologicoDeMarcas(ResolucionCustomizada resolucion)
        {
            if (resolucion.Registrar)
            {
                var sequence = DbContext.Sequence.Where(s => s.KeyName == "ma.Registro").First();
                if (resolucion.Registro == 0)
                {
                    resolucion.Registro = sequence.NextValue;
                    sequence.NextValue++;
                    DbContext.SaveChanges();
                }

                var marca = DbContext.Marcas.Where(e => e.ExpedienteId == resolucion.ExpedienteId).First();
                marca.Tomo     = resolucion.Tomo;
                marca.Folio    = resolucion.Folio;
                marca.Registro = resolucion.Registro;
                DbContext.SaveChanges();
            }

            return(MakeCronologia(resolucion));
        }
예제 #8
0
 public ActionResult RecursoRevocatoria(ResolucionCustomizada tramite)
 {
     return(resolucion("DA006", tramite));
 }
예제 #9
0
 public ActionResult LevantarSuspenso(ResolucionCustomizada tramite)
 {
     return(resolucion("DA005", tramite));
 }
예제 #10
0
 public ActionResult OperarMemorial(ResolucionCustomizada tramite)
 {
     return(resolucion("DA004", tramite));
 }
예제 #11
0
 public ActionResult Titulo(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT015", tramite));
 }
예제 #12
0
 public ActionResult ReposiciondeTitulo(ResolucionCustomizada tramite)
 {
     return(resolucion("DA012", tramite));
 }
예제 #13
0
 public ActionResult EmitirTitulo(ResolucionCustomizada tramite)
 {
     return(resolucion("DA010", tramite));
 }
예제 #14
0
 public ActionResult PorRecibidoMINECOArchivo(ResolucionCustomizada tramite)
 {
     return(resolucion("DA008A", tramite));
 }
예제 #15
0
 public ActionResult Razon_De_Abandono(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT013", tramite));
 }
예제 #16
0
 public ActionResult Certificaciones(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT021", tramite));
 }
예제 #17
0
 public ActionResult Reposicion_Titulo_Patente(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT020", tramite));
 }
예제 #18
0
 public ActionResult Titulo_Renovacion(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT019", tramite));
 }
예제 #19
0
 public ActionResult Cambio_De_Nombre(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT018", tramite));
 }
예제 #20
0
 public ActionResult Traspaso(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT017", tramite));
 }
예제 #21
0
 public ActionResult Notificacion(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT016", tramite));
 }
예제 #22
0
 public ActionResult ElevandoRecurso(ResolucionCustomizada tramite)
 {
     return(resolucion("DA007", tramite));
 }
예제 #23
0
 public ActionResult PorRecibidoMINECOaRegistro(ResolucionCustomizada tramite)
 {
     return(resolucion("DA008R", tramite));
 }
예제 #24
0
 public ActionResult Informe_de_Busqueda(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT012", tramite));
 }
예제 #25
0
 public ActionResult Notificar(ResolucionCustomizada tramite)
 {
     return(resolucion("DA009", tramite));
 }
예제 #26
0
        private ActionResult resolucion(string item, ResolucionCustomizada tramite)
        {
            var solicitud = _expedienteManager.GetExpedienteDerechoAutorPorId(tramite.ExpedienteId);

            tramite.DOCUMENT = JObject.Parse(tramite.JSONDOC);
            tramite          = StampResolucion(tramite);

            switch (item)
            {
            case "DA001":     //ConLugar
                tramite.EstatusId      = (int)DAExpedienteEstatus.Se_declara_con_Lugar;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Pendiente_de_Registrar;
                break;

            case "DA002":     //Rechazo
                tramite.EstatusId      = (int)DAExpedienteEstatus.Rechazo_de_plano;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Rechazo_de_plano;
                break;

            case "DA003":     //Admision_Tramite
                tramite.EstatusId      = (int)DAExpedienteEstatus.Suspenso_x_Requerimiento;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Suspenso_x_Requerimiento;
                break;

            case "DA004":     //OperarMemorial
                tramite.EstatusId      = (int)DAExpedienteEstatus.Memorial_Pendiente_de_Operar;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Memorial_Pendiente_de_Operar;
                break;

            case "DA005":     //LevantarSuspenso
                tramite.EstatusId      = (int)DAExpedienteEstatus.Levantar_Suspension_x_Sentencia;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Pendiente_de_Registrar;
                break;

            case "DA006":     //RecursoRevocatoria
                tramite.EstatusId      = (int)DAExpedienteEstatus.Recurso_de_Revocatoria;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Recurso_de_Revocatoria;
                break;

            case "DA007":     //ElevandoRecurso
                tramite.EstatusId      = (int)DAExpedienteEstatus.Elevando_Recurso_de_Revocatoria;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Elevando_Recurso_de_Revocatoria;
                break;

            case "DA008R":     //PorRecibidoMINECOaRegistro
                tramite.EstatusId      = (int)DAExpedienteEstatus.Por_recibido_MINECO_a_Registro;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Por_recibido_MINECO_a_Registro;
                break;

            case "DA008A":     //PorRecibidoMINECOArchivo
                tramite.EstatusId      = (int)DAExpedienteEstatus.Por_recibido_MINECO_a_Archivo;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Por_recibido_MINECO_a_Archivo;
                break;

            case "DA009":     //Notificacion
                tramite.EstatusId      = (int)DAExpedienteEstatus.Notificado;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Notificado;
                break;

            case "DA010":     //Titulo
                tramite.EstatusId      = (int)DAExpedienteEstatus.Registrada;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Registrada;
                tramite.UpdatesEstatus = true;
                tramite.Registrar      = true;
                break;

            case "DA011":     //Cambio de Estatus
                tramite.EstatusId      = (int)tramite.EstatusId;
                tramite.EstatusFinalId = (int)tramite.EstatusId;
                tramite.UpdatesEstatus = true;
                tramite.Observaciones  = "Cambio de Estatus";
                break;

            case "DA012":     //Reposición Titulo
                tramite.EstatusId      = (int)DAExpedienteEstatus.Registrada;
                tramite.EstatusFinalId = (int)DAExpedienteEstatus.Registrada;
                tramite.UpdatesEstatus = false;
                tramite.Observaciones  = "Reposición del Título";
                tramite.IsRepo         = true;
                tramite.Folio          = solicitud.DerechoDeAutor.Folio;
                tramite.Tomo           = solicitud.DerechoDeAutor.Tomo;
                tramite.Libro          = solicitud.DerechoDeAutor.Libro;
                tramite.Registro       = solicitud.DerechoDeAutor.Registro;
                break;
            }
            tramite.UpdatesEstatus = true;

            ViewBag.Solicitud = solicitud;
            ViewBag.Tramite   = tramite;

            var htmlString = String.Empty;

            switch (item)
            {
            case "DA001":     //ConLugar
                htmlString = RenderRazorViewToString("ConLugar", null);
                break;

            case "DA002":     //Rechazo
                htmlString = RenderRazorViewToString("Rechazo", null);
                break;

            case "DA003":     //Admision_Tramite
                htmlString = RenderRazorViewToString("Suspenso", null);
                break;

            case "DA004":     //OperarMemorial
                htmlString = RenderRazorViewToString("OperarMemorial", null);
                break;

            case "DA005":     //LevantarSuspenso
                htmlString = RenderRazorViewToString("LevantarSuspenso", null);
                break;

            case "DA006":     //RecursoRevocatoria
                htmlString = RenderRazorViewToString("RecursoRevocatoria", null);
                break;

            case "DA007":     //ElevandoRecurso
                htmlString = RenderRazorViewToString("ElevandoRecurso", null);
                break;

            case "DA008R":     //PorRecibidoMINECOaRegistro
                htmlString = RenderRazorViewToString("PorRecibidoMINECOaRegistro", null);
                break;

            case "DA008A":     //PorRecibidoMINECOArchivo
                htmlString = RenderRazorViewToString("PorRecibidoMINECOArchivo", null);
                break;

            case "DA009":     //Notificacion
                htmlString = RenderRazorViewToString("Notificacion", null);
                break;

            case "DA010":     //Titulo
                htmlString = RenderRazorViewToString("Titulo", null);
                break;

            case "DA011":     //Cambio de Estatus
                htmlString = "Cambio de Estatus";
                break;

            case "DA012":     //Reposición Titulo
                htmlString = RenderRazorViewToString("Titulo", null);
                break;
            }

            tramite.HTMLDOC = htmlString;
            var cronologiaResult = _expedienteManager.SaveEventoCronologicoDeDA(tramite);

            // save again and update res...
            return(Content(htmlString, "text/html"));
        }
예제 #27
0
 public ActionResult CambiarEstatus(ResolucionCustomizada tramite)
 {
     return(resolucion("DA011", tramite));
 }
예제 #28
0
 //public ContentResult ConLugar(ResolucionCustomizada tramite)
 public ActionResult ConLugar(ResolucionCustomizada tramite)
 {
     return(resolucion("DA001", tramite));
 }
예제 #29
0
 public ActionResult Rechazo(ResolucionCustomizada tramite)
 {
     return(resolucion("DA002", tramite));
 }
예제 #30
0
 public ActionResult Desistimiento_Solicitud(ResolucionCustomizada tramite)
 {
     return(resolucion("PAT014", tramite));
 }