示例#1
0
 public void insertarDocsIndexados(ArchivosAnexos aIndex)
 {
     try
     {
         using (this.gd = new GestorDocumentalEnt())
         {
             if (this.gd.ArchivosAnexos.Any <ArchivosAnexos>(O => ((O.DocId == aIndex.DocId) & (O.NumPagina == aIndex.NumPagina)) & (O.NegId == aIndex.NegId)))
             {
                 ArchivosAnexos anexos = this.gd.ArchivosAnexos.First <ArchivosAnexos>(i => ((i.DocId == aIndex.DocId) & (i.NumPagina == aIndex.NumPagina)) & (i.NegId == aIndex.NegId));
                 anexos.NegId         = aIndex.NegId;
                 anexos.NumPagina     = aIndex.NumPagina;
                 anexos.FechaRegistro = aIndex.FechaRegistro;
                 anexos.DocId         = aIndex.DocId;
                 anexos.AADescripcion = aIndex.AADescripcion;
                 anexos.Usuario       = aIndex.Usuario;
                 this.gd.SaveChanges();
             }
             else
             {
                 this.gd.AddToArchivosAnexos(aIndex);
                 this.gd.SaveChanges();
             }
         }
     }
     catch (Exception exception)
     {
         LogRepository.registro("Error en DocumentosController metodo insertarDocsIndexados " + exception.Message + " stack " + exception.StackTrace);
         throw exception;
     }
 }
示例#2
0
        public bool IndexacionTerminada(ArchivosAnexos C)
        {
            bool flag2;

            try
            {
                bool flag = false;
                this.gd = new GestorDocumentalEnt();
                Captura n = new Captura
                {
                    NegId = C.NegId
                };
                if (int.Parse(this.gd.spContarPaginasIndexadas(new decimal?(C.NegId)).First().ToString()) == this.ObtenerNumPaginasNegocio(n))
                {
                    flag = true;
                }
                else
                {
                    flag = false;
                }
                flag2 = flag;
            }
            catch (Exception exception)
            {
                LogRepository.registro("Error en DocumentosController metodo IndexacionTerminada " + exception.Message + " stack " + exception.StackTrace);
                throw exception;
            }
            return(flag2);
        }
        protected void gvDocsIndexados_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                switch (e.CommandName)
                {
                case "DEL":
                    ArchivosAnexos D = new ArchivosAnexos();
                    D.DocId     = Convert.ToInt32(gvDocsIndexados.Rows[int.Parse(e.CommandArgument.ToString())].Cells[1].Text);
                    D.NumPagina = Convert.ToInt32(gvDocsIndexados.Rows[int.Parse(e.CommandArgument.ToString())].Cells[3].Text);
                    bdoc.BorrarDocumento(D, ((Captura)Session["NEGOCIO"]));

                    int num = this.bdoc.obtenerUltimaPagina(((Captura)Session["NEGOCIO"])) + 1;
                    this.txtPagina.Text = num.ToString();
                    UpdatePanel1.Update();
                    this.cargarPaginasIndexadas();
                    this.btnFinalizar.Visible = false;
                    Button1.Visible           = true;
                    this.txtDocumento.Text    = "";
                    this.txtDocumento.Enabled = true;
                    break;
                }
            }
            catch (Exception exception)
            {
                LogRepository.registro("Error en IndexacionImg.aspx metodo gvDocsIndexados_RowCommand " + exception.Message);
                throw;
            }
        }
        public void BorrarDocumento(int idDocumento, int numPagina, int negId)
        {
            ModelState.Clear();
            ArchivosAnexos D = new ArchivosAnexos();

            D.DocId     = idDocumento;
            D.NumPagina = numPagina;
            CDoc.BorrarDocumento(D, negId);
            n.NegId = negId;
            BuscarNegocio(Convert.ToDecimal(negId));
        }
示例#5
0
        public void BorrarDocumento(int idDocumento, int numPagina)
        {
            DocumentosController bdoc = new DocumentosController();
            //JFP; obtener nro negocio
            int _negocio = Convert.ToInt32(Session["_Negocio"].ToString());

            ModelState.Clear();
            ArchivosAnexos D = new ArchivosAnexos();

            D.DocId     = idDocumento;
            D.NumPagina = numPagina;
            bdoc.BorrarDocumento(D, ((Captura)Session["NEGOCIO"]));
        }
示例#6
0
 /// <summary>
 /// JFP; ABRIL/2016; SE CREA PARA REINDEXACION
 /// </summary>
 /// <param name="D"></param>
 /// <param name="N"></param>
 public void BorrarDocumento(ArchivosAnexos D, int _negId)
 {
     this.gd = new GestorDocumentalEnt();
     try
     {
         using (this.gd)
         {
             //JFP;Abril-2016;BcoPopular; cambio para que se elimine solo la pagina seleccionada
             //var entity = this.gd.ArchivosAnexos.Where(x => x.NegId == N.NegId).Where(x => x.NumPagina >= D.NumPagina);
             var entity = this.gd.ArchivosAnexos.Where(x => x.NegId == _negId).Where(x => x.NumPagina == D.NumPagina);
             foreach (var a in entity)
             {
                 this.gd.ArchivosAnexos.DeleteObject(a);
             }
             this.gd.SaveChanges();
         }
     }
     catch (Exception exception)
     {
         LogRepository.registro("Error en DocumentosController metodo BorrarDocumento " + exception.Message + " stack " + exception.StackTrace);
         throw exception;
     }
 }
示例#7
0
        public bool buscarPaginaDigitada(ArchivosAnexos C)
        {
            bool flag2;

            try
            {
                bool flag = false;
                if (this.gd.ArchivosAnexos.Any <ArchivosAnexos>(O => (O.NumPagina == C.NumPagina) & (O.NegId == C.NegId)))
                {
                    flag = true;
                }
                else
                {
                    flag = false;
                }
                flag2 = flag;
            }
            catch (Exception exception)
            {
                LogRepository.registro("Error en DocumentosController metodo buscarPaginaDigitada " + exception.Message + " stack " + exception.StackTrace);
                throw exception;
            }
            return(flag2);
        }
示例#8
0
        public JsonResult AgregaIndexacion(string _nroDocumento, string _nroPagina)
        {
            GestorDocumentalEnt    data  = new GestorDocumentalEnt();
            AsignacionesController bAsig = new AsignacionesController();
            DocumentosController   bdoc  = new DocumentosController();
            List <Documentos>      doc   = new List <Documentos>();
            int    negocio   = Convert.ToInt32(Session["_Negocio"].ToString());
            string txtPagina = _nroPagina;

            ViewData["MensajeError_"]        = "";
            Session["_Error"]                = 0;
            ViewData["ROtxtPagina"]          = "";
            ViewData["ROtxtDocumento"]       = "";
            ViewData["_btnFinalizarVisible"] = "hidden";
            ViewData["_disableCampDoc"]      = "";
            ViewData["_btnGuardarVisible"]   = "";
            ViewData["_ValorPagina_"]        = "";
            try
            {
                if (_nroDocumento.Equals("") || _nroDocumento.Equals(null))
                {
                    ViewData["MensajeError_"] = "Debe ingresar un documento para indexar.";
                }
                else
                {
                    //string txtDocumento = collection["txtDocumento"].ToString();
                    string txtDocumento = consultDcoId(_nroDocumento, negocio);


                    //Verifica que el numero de documento que digita este en la lista asignada
                    int NedId = int.Parse(((Captura)this.Session["NEGOCIO"]).NegId.ToString());
                    doc = bdoc.obtenerDocumentosIndexacion(NedId);
                    var DocumentosIdex = doc.Find(x => x.DocId == int.Parse(txtDocumento));

                    //JFP; abril-2016; verificar que no se indexe mas de un documento con la misma tipologia a no ser que se permita
                    int IndexaMultiple = data.sp_ValidaIndexaMultiple(Convert.ToInt32(txtDocumento), Convert.ToInt32(_nroDocumento), Convert.ToDecimal(NedId)).ToList().SingleOrDefault().Value;

                    //int sn_indexa = Convert.ToInt32(IndexaMultiple.ToString());
                    if (IndexaMultiple == 1)
                    {
                        if ((txtDocumento.Trim() != string.Empty) & (txtPagina.Trim() != string.Empty))
                        {
                            if (DocumentosIdex != null)
                            {
                                if (Convert.ToInt32(txtPagina) <= bdoc.ObtenerNumPaginasNegocio((Captura)this.Session["NEGOCIO"]))
                                {
                                    ArchivosAnexos c = new ArchivosAnexos
                                    {
                                        NegId         = ((Captura)this.Session["NEGOCIO"]).NegId,
                                        AADescripcion = ((Captura)this.Session["NEGOCIO"]).NegId.ToString(),
                                        DocId         = Convert.ToInt32(txtDocumento),
                                        NumPagina     = Convert.ToInt32(txtPagina),
                                        FechaRegistro = DateTime.Now,
                                        Usuario       = new decimal?(((Usuarios)this.Session["USUARIO"]).IdUsuario)
                                    };

                                    if (!bdoc.buscarPaginaDigitada(c))
                                    {
                                        bdoc.insertarDocsIndexados(c);
                                        cargarPaginasIndexadas();
                                        var a = (int.Parse(txtPagina) + 1).ToString();
                                        ViewData["_Pagina"] = (int.Parse(txtPagina) + 1).ToString();
                                        if (bdoc.IndexacionTerminada(c))
                                        {
                                            ViewData["_btnFinalizarVisible"] = "visible";
                                            ViewData["_disableCampDoc"]      = "disabled='disabled'";
                                            ViewData["_btnGuardarVisible"]   = "hidden";
                                            ViewData["ROtxtDocumento"]       = "readonly='true'";
                                            ViewData["ValorDocumento"]       = "";
                                            ViewData["MensajeError_"]        = "";
                                        }
                                        ViewData["_btnFinalizarVisible"] = "hidden";
                                        ViewData["MensajeError_"]        = "";
                                        Session["_NumPaginas_"]          = bdoc.ObtenerNumPaginasNegocio((Captura)this.Session["NEGOCIO"]).ToString();
                                    }
                                    else
                                    {
                                        ViewData["MensajeError_"] = "La pagina ingresada ya se encuentra asignada a otro documento";
                                    }
                                }
                                else
                                {
                                    ViewData["MensajeError_"] = "El numero de pagina es mayor al total de paginas del archivo";
                                }
                            }
                            else
                            {
                                ViewData["MensajeError_"] = "Digite un documento valido de la lista";
                            }
                        }
                        else
                        {
                            ViewData["MensajeError_"] = "Digite el documento y la pagina correspondiente.";
                        }
                    }
                    else
                    {
                        ViewData["MensajeError_"] = "Ya existe un documento clasificado con el código ingresado, por favor validar si es un anexo del tipo documental.";
                    }
                }

                // Modificacion 04/05/2016 William Eduardo Cicua
                // este if recargar la pagina si no hay ningun error al indexar
                // se cambia visibilidad de los botones y se desactivan los campos
                if (ViewData["MensajeError_"].ToString() == "")
                {
                    ViewData["_ValorPagina_"] = "1";
                    P_Etapas etapas = new P_Etapas
                    {
                        IdEtapa = 20
                    };

                    Captura n     = new Captura();
                    decimal dec   = ((Usuarios)this.Session["USUARIO"]).IdUsuario;
                    var     negId = bAsig.ObtenerNegociosXEntrada((Usuarios)this.Session["USUARIO"], etapas);
                    if (negId == 0M)
                    {
                        n.NegId = 0M;
                        this.Session["NEGOCIO"]    = n;
                        ViewData["ROtxtPagina"]    = "readonly='true'";
                        ViewData["ROtxtDocumento"] = "readonly='true'";
                        ViewData["MensajeError_"]  = "No existen negocios disponibles para esta etapa";
                        Session["TITULO"]          = "Indexación";
                    }
                    else
                    {
                        n.NegId = negId;
                        this.Session["NEGOCIO"] = n;
                        Session["TITULO"]       = "Indexación del Negocio:" + n.NegId.ToString();
                        AsignacionTareas a = new AsignacionTareas
                        {
                            NegId      = n.NegId,
                            IdEtapa    = etapas.IdEtapa,
                            Usuario    = ((Usuarios)this.Session["USUARIO"]).IdUsuario,
                            HoraInicio = DateTime.Now,
                            IdEstado   = 10
                        };

                        cargarPaginasIndexadas();
                        int     num;
                        decimal _usu      = ((Usuarios)this.Session["USUARIO"]).IdUsuario;
                        var     resultado = data.sp_ValIndexacion(Convert.ToDecimal(negId), _usu).SingleOrDefault();
                        if (resultado == 0)
                        {
                            var numN = data.sp_ObtSigPag(Convert.ToDecimal(negId)).SingleOrDefault();
                            num = Convert.ToInt32(numN);
                        }
                        else
                        {
                            num = bdoc.obtenerUltimaPagina(n) + 1;
                        }
                        ViewData["_ValorPagina_"] = num.ToString();
                        int num2 = bdoc.ObtenerNumPaginasNegocio(n);
                        if (num > num2)
                        {
                            ViewData["_btnFinalizarVisible"] = "visible";
                            ViewData["_disableCampDoc"]      = "disabled='disabled'";
                            ViewData["_btnGuardarVisible"]   = "hidden";
                        }
                        if (!bAsig.ExisteEtapa(a))
                        {
                            bAsig.insertarAsignacion(a);
                        }
                    }

                    Session["_Negocio"] = (int)n.NegId;
                    if (n.NegId == 0)
                    {
                        ViewData["MensajeError_"] = "No existen documentos asociados a el subgrupo.";
                    }


                    if (((Captura)this.Session["NEGOCIO"]).NegId != 0M)
                    {
                        Session["_NumPaginas_"] = bdoc.ObtenerNumPaginasNegocio((Captura)this.Session["NEGOCIO"]).ToString();
                    }
                    string[] ArrView = { ViewData["MensajeError_"].ToString(), ViewData["_ValorPagina_"].ToString(), ViewData["_btnFinalizarVisible"].ToString(), ViewData["_disableCampDoc"].ToString(), ViewData["_btnGuardarVisible"].ToString() };
                    return(Json(ArrView, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception exception)
            {
                LogRepository.registro("Error en IndexacionImg.aspx metodo Button1_Click " + exception.Message);
                ViewData["MensajeError_"] = "Error en el metodo Button1_Click en indexacion " + exception.InnerException.ToString();
                base.Response.Redirect("/IndexacionImg/Index");
            }


            string[] ArrView2 = { ViewData["MensajeError_"].ToString() };
            return(Json(ArrView2, JsonRequestBehavior.AllowGet));
        }
        public JsonResult AgregaIndexacion(string _nroDocumento, string _nroPagina, decimal _negId)
        {
            int    negocio      = Convert.ToInt32(Session["_Negocio"].ToString());
            string txtDocumento = consultDcoId(_nroDocumento, negocio);

            //string txtDocumento = collection["txtDocumento"].ToString();
            string txtPagina = _nroPagina;

            ViewData["MensajeError_"] = "";
            Session["_Error"]         = 0;
            try
            {
                //Verifica que el numero de documento que digita este en la lista asignada
                int NedId = int.Parse(((Captura)this.Session["NEGOCIO"]).NegId.ToString());
                this.tDocs = this.CDoc.obtenerDocumentosIndexacion(NedId);
                var DocumentosIdex = tDocs.Find(x => x.DocId == int.Parse(txtDocumento));

                //JFP; abril-2016; verificar que no se indexe mas de un documento con la misma tipologia a no ser que se permita
                int IndexaMultiple = dbo.sp_ValidaIndexaMultiple(Convert.ToInt32(txtDocumento), Convert.ToInt32(_nroDocumento), Convert.ToDecimal(NedId)).ToList().SingleOrDefault().Value;

                //int sn_indexa = Convert.ToInt32(IndexaMultiple.ToString());
                if (IndexaMultiple == 1)
                {
                    if ((txtDocumento.Trim() != string.Empty) & (txtPagina.Trim() != string.Empty))
                    {
                        if (DocumentosIdex != null)
                        {
                            if (Convert.ToInt32(txtPagina) <= this.CDoc.ObtenerNumPaginasNegocio((Captura)this.Session["NEGOCIO"]))
                            {
                                ArchivosAnexos c = new ArchivosAnexos
                                {
                                    NegId         = ((Captura)this.Session["NEGOCIO"]).NegId,
                                    AADescripcion = ((Captura)this.Session["NEGOCIO"]).NegId.ToString(),
                                    DocId         = Convert.ToInt32(txtDocumento),
                                    NumPagina     = Convert.ToInt32(txtPagina),
                                    FechaRegistro = DateTime.Now,
                                    Usuario       = new decimal?(((Usuarios)this.Session["USUARIO"]).IdUsuario)
                                };

                                if (!this.CDoc.buscarPaginaDigitada(c))
                                {
                                    this.CDoc.insertarDocsIndexados(c);
                                    this.cargarPaginasIndexadas();
                                    ViewData["_ValorPagina_"] = (int.Parse(txtPagina) + 1).ToString();
                                    if (this.CDoc.IndexacionTerminada(c))
                                    {
                                        ViewData["_btnFinalizarVisible"] = "visible";
                                        ViewData["_disableCampDoc"]      = "disabled='disabled'";
                                        ViewData["_btnGuardarVisible"]   = "hidden";
                                        ViewData["ROtxtDocumento"]       = "readonly='true'";
                                        ViewData["ValorDocumento"]       = "";
                                        ViewData["MensajeError_"]        = "";
                                    }
                                    ViewData["_btnFinalizarVisible"] = "hidden";
                                    ViewData["MensajeError_"]        = "";
                                    Session["_NumPaginas_"]          = this.CDoc.ObtenerNumPaginasNegocio((Captura)this.Session["NEGOCIO"]).ToString();
                                }
                                else
                                {
                                    ViewData["MensajeError_"] = "La pagina ingresada ya se encuentra asignada a otro documento";
                                }
                            }
                            else
                            {
                                ViewData["MensajeError_"] = "El numero de pagina es mayor al total de paginas del archivo";
                            }
                        }
                        else
                        {
                            ViewData["MensajeError_"] = "Digite un documento valido de la lista";
                        }
                    }
                    else
                    {
                        ViewData["MensajeError_"] = "Digite el documento y la pagina correspondiente.";
                    }
                }
                else
                {
                    ViewData["MensajeError_"] = "Ya existe un documento clasificado con el código ingresado, por favor validar si es un anexo del tipo documental.";
                }
            }
            catch (Exception exception)
            {
                LogRepository.registro("Error en IndexacionImg.aspx metodo Button1_Click " + exception.Message);
                ViewData["MensajeError_"] = "Error en el metodo Button1_Click en indexacion " + exception.InnerException.ToString();
                base.Response.Redirect("/ReIndexacionImg/Index");
            }

            string[] ArrView = { ViewData["MensajeError_"].ToString() };
            return(Json(ArrView, JsonRequestBehavior.AllowGet));
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                //Varifica que el numero de documento que digita este en la lista asignada
                int NedId = int.Parse(((Captura)this.Session["NEGOCIO"]).NegId.ToString());
                this.doc = this.bdoc.obtenerDocumentosIndexacion(NedId);
                var DocumentosIdex = doc.Find(x => x.DocId == int.Parse(this.txtDocumento.Text));


                if ((this.txtDocumento.Text.Trim() != string.Empty) & (this.txtPagina.Text.Trim() != string.Empty))
                {
                    if (DocumentosIdex != null)
                    {
                        if (Convert.ToInt32(this.txtPagina.Text) <= this.bdoc.ObtenerNumPaginasNegocio((Captura)this.Session["NEGOCIO"]))
                        {
                            ArchivosAnexos c = new ArchivosAnexos
                            {
                                NegId         = ((Captura)this.Session["NEGOCIO"]).NegId,
                                AADescripcion = ((Captura)this.Session["NEGOCIO"]).NegId.ToString(),
                                DocId         = Convert.ToInt32(this.txtDocumento.Text),
                                NumPagina     = Convert.ToInt32(this.txtPagina.Text),
                                FechaRegistro = DateTime.Now,
                                Usuario       = new decimal?(((Usuarios)this.Session["USUARIO"]).IdUsuario)
                            };
                            if (!this.bdoc.buscarPaginaDigitada(c))
                            {
                                this.bdoc.insertarDocsIndexados(c);
                                this.cargarPaginasIndexadas();
                                this.txtPagina.Text = (int.Parse(this.txtPagina.Text) + 1).ToString();
                                this.txtDocumento.Focus();
                                if (this.bdoc.IndexacionTerminada(c))
                                {
                                    this.btnFinalizar.Visible = true;
                                    this.Button1.Visible      = false;
                                    this.txtDocumento.Enabled = false;
                                    this.txtDocumento.Text    = "";
                                }
                            }
                            else
                            {
                                this.lblError.Text = "La pagina ingresada ya se encuentra asignada a otro documento";
                                this.cargarPaginasIndexadas();
                                this.UpdatePanel2.Update();
                                this.txtPagina.Focus();
                            }
                        }
                        else
                        {
                            this.lblError.Text = "El numero de pagina es mayor al total de paginas del archivo";
                            this.UpdatePanel2.Update();
                        }
                    }
                    else
                    {
                        this.lblError.Text = "Digite un documento valido de la lista";
                        this.UpdatePanel2.Update();
                    }
                }
                else
                {
                    this.lblError.Text = "Digite el documento y la pagina correspondiente.";
                    this.UpdatePanel2.Update();
                }
            }
            catch (Exception exception)
            {
                LogRepository.registro("Error en IndexacionImg.aspx metodo Button1_Click " + exception.Message);
                this.lblError.Text = "Error en el metodo Button1_Click en indexacion " + exception.InnerException.ToString();
                this.UpdatePanel2.Update();
            }
        }