/// <summary>
        /// Crea un nuevo registro en la tabla radicacion
        /// </summary>
        /// <param name="nueva">Datos</param>
        /// <returns>Id del regitro almacenado</returns>
        public long Add(Radicacion nueva)
        {
            long id = long.Parse(db.spInsertarRadicacion(nueva.CliNit,
                                                         nueva.Oficina,
                                                         nueva.IdProducto,
                                                         nueva.SubProducto,
                                                         nueva.FechaRadicacion,
                                                         nueva.Estado,
                                                         nueva.CodBarras,
                                                         nueva.IdUsusario,
                                                         nueva.TipoRadicacion, nueva.FechaLocal).ToArray()[0].ToString());

            return(id);
        }
Exemplo n.º 2
0
        public void RadicacionUTest()
        {
            // ** Arrange
            // Create instance calculadora
            Radicacion radicacion = new Radicacion();

            // Definir una entrada y una salida
            double expectedResult = 5;
            double input1         = 25;
            //  Arrange **


            // ** Act
            // Ejecutar el metodo bajo prueba:
            double actualResult = radicacion.Operar(input1, -1);

            //  Act **

            // ** Assert
            // Verificar el resultado:
            Assert.AreEqual(expectedResult, actualResult);
            // Assert **
        }
Exemplo n.º 3
0
        public ActionResult Guardar(FormCollection collection)
        {
            try
            {
                ConsecutivosModel        consecutivo     = new ConsecutivosModel();
                CamposController         camposCon       = new CamposController();
                RadicacionModelo         radicacionModel = new RadicacionModelo();
                CapturaRadicacionModel   capRadMod       = new CapturaRadicacionModel();
                List <CapturaRadicacion> liscaptura      = new List <CapturaRadicacion>();
                Radicacion data    = new Radicacion();
                Extends    extends = new Extends();

                data.CliNit          = ((GestorDocumental.Models.Clientes)Session["CLIENTE"]).CliNit;
                data.Oficina         = Convert.ToInt32(collection["Oficinas"]);
                data.IdProducto      = Convert.ToInt32(collection["Productos"]);
                data.SubProducto     = Convert.ToInt32(collection["SubProductos"]);
                data.Estado          = Convert.ToInt32(collection["Estados"]);
                data.FechaRadicacion = DateTime.Now;
                data.IdUsusario      = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                data.TipoRadicacion  = collection["Tipo"].ToString();

                //JFP; BcoPopular; abril-2016
                //data.FechaLocal = DateTime.Parse(collection["FechaLugarActual"].ToString());
                LogRepository.registro("RadicacionController metodo Guardar data.FechaLocal: " + DateTime.Now + " ;data.FechaRadicacion: " + data.FechaRadicacion);
                data.FechaLocal = DateTime.Now;


                if (data.Estado == 120)
                {
                    if (collection["NegAnuladoConfirmado"].ToString().Trim() == "")
                    {
                        data.CodBarras = ConsecutivosModel.ConsecutivoRadicado(((Clientes)Session["CLIENTE"]).Codlabel, ((Clientes)Session["CLIENTE"]).CodParametros);
                    }
                    else
                    {
                        /*EN ESTA PARTE SE HACE LA ANULACION DE NEGOCIO*/
                        var datos = db.spAnulacionNegocios(decimal.Parse(collection["NegAnuladoConfirmado"].ToString()), ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario, string.Empty, 1);
                        data.CodBarras = datos.ToArray()[0];

                        AuditoriaModel am             = new AuditoriaModel();
                        Auditoria      nuevaAuditoria = new Auditoria();

                        nuevaAuditoria.aud_idUsuario     = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                        nuevaAuditoria.aud_fechaHora     = DateTime.Now;
                        nuevaAuditoria.aud_evento        = "Anulaciones";
                        nuevaAuditoria.aud_observaciones = "Se anulo el negocio No. " + collection["NegAnuladoConfirmado"].ToString() + " y se genero con el codigo de barras " + data.CodBarras;
                        //Inserta Auditoria
                        am.AddAuditoria(nuevaAuditoria);
                    }

                    ViewData["Lable"] = data.CodBarras;

                    string valor = collection["SubProductos"].ToString();

                    valor = subProducto(int.Parse(collection["SubProductos"].ToString()));

                    if (collection["Sociedad"] != "-1" && (!(string.IsNullOrEmpty(collection["Sociedad"].ToString().Trim())) || !(string.IsNullOrWhiteSpace(collection["Sociedad"].ToString().Trim()))))
                    {
                        ViewData["descSociedad"] = CodigosCampos(int.Parse(collection["Sociedad"]));
                    }

                    //Recepcion del archivo virtual
                    if (data.TipoRadicacion == "virtual")
                    {
                        RecepcionarArchivo(data);
                    }
                }
                else if (data.Estado == 130)
                {
                    if (collection["Causal"] != "-1" && (!(string.IsNullOrEmpty(collection["Causal"].ToString().Trim())) || !(string.IsNullOrWhiteSpace(collection["Causal"].ToString().Trim()))))
                    {
                        ViewData["motivoDevolucion"] = CodigosCampos(int.Parse(collection["Causal"]));
                    }

                    if (collection["NegAnuladoConfirmado"].ToString().Trim() != "")
                    {
                        /*EN ESTA PARTE SE HACE LA ANULACION DE NEGOCIO*/
                        var datos = db.spAnulacionNegocios(decimal.Parse(collection["NegAnuladoConfirmado"].ToString()), ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario, string.Empty, 1);

                        AuditoriaModel am             = new AuditoriaModel();
                        Auditoria      nuevaAuditoria = new Auditoria();

                        nuevaAuditoria.aud_idUsuario     = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                        nuevaAuditoria.aud_fechaHora     = DateTime.Now;
                        nuevaAuditoria.aud_evento        = "Anulaciones";
                        nuevaAuditoria.aud_observaciones = "Se anulo el negocio No. " + collection["NegAnuladoConfirmado"].ToString() + " y se genero como una devolucion ";
                        //Inserta Auditoria
                        am.AddAuditoria(nuevaAuditoria);
                    }
                }

                var idRadicacion = radicacionModel.Add(data);

                //Consulto el formulario
                var formulario = collection["SubProductos"] + collection["Estados"];

                //Obtengo lo campos del formulario
                //    var campos = camposCon.getCamposFormulario(int.Parse(formulario));
                IEnumerable <dynamic> campos = Session["listaCampos"] as dynamic;

                //obtengo los datos desde la interfaz
                //  var values = (collection["_value"]).Split(',').ToArray();
                var llaves = collection.AllKeys;

                for (int i = 0; i < llaves.Length; i++)
                {
                    if (llaves[i].Contains("idCampo_"))
                    {
                        CapturaRadicacion nueva = new CapturaRadicacion();

                        string idcampo = llaves[i].Split(new String[] { "idCampo_" },
                                                         StringSplitOptions.RemoveEmptyEntries)[0].ToString();

                        var campo = campos.Where(x => Extends.ObtenerValorReflexion(x, "CampId").ToString() == idcampo).FirstOrDefault();

                        if (campo.TcId == 5)
                        {
                            nueva.IdRadicacion = idRadicacion;
                            nueva.IdCampo      = campo.CampId;
                            nueva.Valor        = CodigoDelItemLista(int.Parse(collection[llaves[i]]));
                            nueva.IdUsuario    = data.IdUsusario;
                            nueva.FechaCaptura = DateTime.Now;
                            nueva.IdFormulario = campo.CodFormulario;
                        }
                        else
                        {
                            nueva.IdRadicacion = idRadicacion;
                            nueva.IdCampo      = campo.CampId;
                            nueva.Valor        = collection[llaves[i]];
                            nueva.IdUsuario    = data.IdUsusario;
                            nueva.FechaCaptura = DateTime.Now;
                            nueva.IdFormulario = campo.CodFormulario;
                        }

                        liscaptura.Add(nueva);
                    }
                }


                capRadMod.InsertarCapturaRadicacion(liscaptura);

                ViewData["estado"]           = (collection["Estados"]).ToString();
                ViewData["estadoDescrip"]    = estado(int.Parse(collection["Estados"].ToString()));
                ViewData["subProducto"]      = subProducto(int.Parse(collection["SubProductos"].ToString()));
                ViewData["Oficina"]          = oficina(int.Parse(collection["Oficinas"].ToString()));
                ViewData["estadoRadicacion"] = data.TipoRadicacion;
                ViewData["idRadicacion"]     = idRadicacion;

                //BUSCO EN LOS STRING ESTOS CARACTERES ESPECIALES Y LOS REEMPLAZO, PRINCIPALMENTE EN LA SOCIEDAD
                char cr  = (char)13;
                char lf  = (char)10;
                char tab = (char)9;

                ///Se valida estado de la radicacion para guardar el codigo de barrar y almacenarlo en la tabla codigoBarras
                if (data.Estado == 120)
                {
                    if (data.TipoRadicacion.Trim() == "fisico")
                    {
                        char[] MyChar          = { ' ' };
                        var    nombreImpresora = db.Usuarios.Where(x => x.IdUsuario == data.IdUsusario).First().Periferico_Impresora;
                        var    respuesta       = extends.CrearEImprimirEtiqueta(ViewData["Oficina"].ToString().TrimStart(MyChar).TrimEnd(MyChar),
                                                                                collection["FechaLugarActual"].ToString().TrimStart(MyChar).TrimEnd(MyChar),
                                                                                ViewData["descSociedad"].ToString().Trim().Replace("\r", "").Replace("\n", "").Replace(cr, ' ').Replace(lf, ' ').Replace(tab, ' ').Trim(),
                                                                                data.CodBarras.Trim(),
                                                                                nombreImpresora.Trim(),
                                                                                data.IdUsusario,
                                                                                (idRadicacion).ToString().Trim());
                    }
                }

                return(View());
            }
            catch (Exception exception)
            {
                //LogRepository.registro("Error en RadicacionController metodo Guardar " + exception.Message + " linea " + exception.StackTrace + "Usuario" + ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario);
                LogRepository.registro("Error en RadicacionController metodo Guardar " + exception.Message + " linea " + exception.StackTrace + "Usuario" + ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario);
                return(base.RedirectToAction("Index", "Radicacion"));
                //throw;
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Recepcion del archivo
        /// </summary>
        /// <param name="collection"></param>
        public void RecepcionarArchivo(Radicacion collection)
        {
            try
            {
                Recepcion         data        = new Recepcion();
                ConsecutivosModel consecutivo = new ConsecutivosModel();
                RecepcionModel    modelo      = new RecepcionModel();
                CargueLotesModel  carguemodel = new CargueLotesModel();

                data.nitCliente     = ((GestorDocumental.Models.Clientes)Session["CLIENTE"]).CliNit;
                data.subgrupo       = collection.SubProducto;
                data.idUsuario      = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                data.principales    = 1;
                data.activo         = true;
                data.estado         = 0;
                data.numeroLote     = ConsecutivosModel.getConsecutivo("LOTES");
                data.fechaRecepcion = DateTime.Now;
                data.observaciones  = "Recepcion virtual";

                //Insertar Recepcion
                int id_lote = int.Parse(modelo.insert(data).ToString());

                int numeroPaginas = int.Parse(Session["NumPages"].ToString());

                //Hace la incercion a la tabla carge lotes
                db.spInsertarCargueLotes(data.nitCliente,
                                         id_lote.ToString(),
                                         id_lote,
                                         DateTime.Now,
                                         RenombrarArchivoExttiff(Path.GetFileName(Session["CURRENT_FILE"].ToString())),
                                         numeroPaginas, 1,
                                         int.Parse(data.id.ToString()),
                                         collection.CodBarras,
                                         DateTime.Now,
                                         data.idUsuario,
                                         id_lote.ToString(),
                                         null);

                string lote  = id_lote.ToString();
                var    negId = db.CargueLotes.Where(x => x.LoteScaner == lote).Select(x => x.NegId).FirstOrDefault();

                //Renombro los archivos
                MueveArchivosYRenombrar(negId.ToString());

                //Actualizar Carguelotes
                carguemodel.ActualizarNegocioCargado(negId);

                //Actualiza la tabla recepcion
                modelo.update(data);

                //Actualiza la tabla carge lotes
                db.spActualizarLotesCargados(id_lote.ToString(), id_lote, collection.IdUsusario);

                Recepcion_Detalle data1 = new Recepcion_Detalle();

                data1.DET_idrecepcion = modelo.idRecepcion;
                data1.DET_Oficina     = collection.Oficina;
                data1.DET_Anexo       = numeroPaginas;
                modelo.insert_detalle(data1);
            }
            catch (Exception e)
            {
                LogRepository.registro("Error en RadicacionController metodo RecepcionarArchivo " + e.Message + " stack trace " + e.StackTrace);
                throw;
            }
        }