示例#1
0
        public ActionResult crearItem(FormCollection form)
        {
            items nuevoItem = new items();
            nuevoItem.nombre = (string)form["nombre"];
            nuevoItem.descripcion=(string)form["descripcion"];
            nuevoItem.unidad=(string)form["unidad"];
            nuevoItem.dimensiones=(string)form["dimensiones"];

            //bool verificar=nuevoItem.guardarNuevoItem();
            //ViewBag.verifica_creacion = verificar;

            return View("nuevoItem");
        }
        public static string obtener_valor_material(string partida, string faena, string material)
        {
            items elItem = new items();
            elItem.nombre = material;
            elItem = elItem.obtenerItem(partida, faena);

            string asignada = "";

            asignada = elItem.obtenerSaldo().ToString();

            return asignada;
        }
示例#3
0
        public void leerPrecioUnitario(DataSet ds, string id_faena, List<string> listaPartidas, SqlConnection cnx, string nombreHoja)
        {
            int i = 0;

                int codigo = 0;
                int subcodigo = 0;
                string codigotemporal = "";
                string codigoActual = "";
                string codigo_partida = "";
                string subcodigo_partida = "";
                int verificador_espacios = 0;
                int numeroItem = 0;
                string Error = "";
                string nombre_partida = "";
                while (i < ds.Tables[0].Rows.Count - 1)
                {

                    string campo_0 = Convert.ToString(ds.Tables[0].Rows[i].ItemArray[0]);
                    string campo_1 = Convert.ToString(ds.Tables[0].Rows[i].ItemArray[1]);
                    string campo_2 = Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]);
                    string campo_3 = Convert.ToString(ds.Tables[0].Rows[i].ItemArray[3]);

                    if (campo_1.Equals("ITEM"))
                    {
                        char[] CharDelete = { '-', '.', ',', '$', ' ' };
                        string descripcion_item = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]).TrimEnd(CharDelete));

                        string codigo_partida_actual = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i + 1].ItemArray[2]).TrimEnd(CharDelete));
                        string codigo_item_actual = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i + 2].ItemArray[2]).TrimEnd(CharDelete));
                        string partidaBuscar = codigo_partida_actual + "." + codigo_item_actual;// +"." + descripcion_item;
                        if (!listaPartidas.Contains(partidaBuscar))
                        {
                            Error = "No se encuentra la partida:" + partidaBuscar + " en la hoja de  Presupuesto, solo esta en hoja Precio Unitario en la linea " + (i + 2);
                            throw new System.InvalidOperationException("No se encuentra la partida:" + partidaBuscar + " en la hoja de Presupuesto, solo esta en hoja Precio Unitario, en la linea " + (i + 2));

                        }
                        else
                        {
                            listaPartidas.Remove(partidaBuscar);
                            Console.Write("");

                        }

                    }

                    if (campo_0.Equals("") && (!campo_1.Equals("") && !campo_3.Equals("")))
                    {

                        throw new System.InvalidOperationException("Falta asignar tipo de Item en la hoja de Precio Unitario, en la linea " + (i + 2));
                    }

                    if (campo_0.Equals("") && campo_1.Equals(""))
                    {
                        verificador_espacios++;
                        campo_2 = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]));
                        if (campo_2.Equals("RESUMEN GLOBAL") || campo_2.Equals("Resumen Global"))
                        {

                            i = ds.Tables[0].Rows.Count;
                            break;
                        }

                        else if (verificador_espacios > 1 && campo_3.Equals(""))
                        {
                            Error = "Hay mas de un salto de linea en la linea" + (i + 2) + " de la hoja " + nombreHoja;
                            throw new System.InvalidOperationException("Hay mas de un salto de linea en la linea" + (i + 2) + " de la hoja " + nombreHoja);

                        }

                        nombre_partida = campo_1;
                        i = i + 1;
                    }

                    if (!Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]).Equals("RESUMEN GLOBAL") && !Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]).Equals("MATERIALES"))
                    {

                        if (campo_1.Equals("CODIGO"))
                        {
                            numeroItem = 0;
                            verificador_espacios = 0;
                            codigoActual = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]));

                            char[] CharDelete = { '-', '.', ',', '$' };
                            codigo_partida = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]).TrimEnd(CharDelete));

                            if (!codigoActual.Equals(codigotemporal))
                            {
                                codigotemporal = codigoActual;
                                codigo++;
                                subcodigo = 0;
                            }
                        }
                        else if (campo_1.Equals("SUBCODIGO"))
                        {
                            char[] CharDelete = { ' ', '-', '.', ',', '$' };

                            subcodigo_partida = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]).TrimEnd(CharDelete));
                            verificador_espacios = 0;
                            subcodigo++;
                            i = i + 3;
                        }

                        //GUARDAR ITEM
                        else if (!campo_2.Equals("") && !campo_3.Equals(""))
                        {
                            verificador_espacios = 0;
                            items NuevoItem = new items();
                            NuevoItem.nombre = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[2]));
                            NuevoItem.unidad = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[3]));
                            string cant = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[4]));
                            NuevoItem.cantidad = Math.Round(Convert.ToDouble(ds.Tables[0].Rows[i].ItemArray[4]), 3);

                            NuevoItem.precio_unitario = Convert.ToDouble(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[5]));
                            NuevoItem.costo_unitario = Math.Round(Convert.ToDouble(ds.Tables[0].Rows[i].ItemArray[6]), MidpointRounding.ToEven); //Toeven
                            NuevoItem.cantidad_comprar = Math.Round(Convert.ToDouble(ds.Tables[0].Rows[i].ItemArray[7]), 2);
                            NuevoItem.presupuesto_compra = Math.Round(Convert.ToDouble(ds.Tables[0].Rows[i].ItemArray[8]), MidpointRounding.ToEven);
                            NuevoItem.tipo = formatearCadena(Convert.ToString(ds.Tables[0].Rows[i].ItemArray[0]));
                            try
                            {
                                NuevoItem.numero = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[1]);
                            }
                            catch (Exception ex)
                            {
                                numeroItem++;
                                NuevoItem.numero = numeroItem;
                            }

                            char[] CharDelete = { ' ', '-', '.', ',', '$' };
                            subcodigo_partida = subcodigo_partida.TrimEnd(CharDelete);
                            string id_partida = codigo_partida + "." + subcodigo_partida;
                            NuevoItem.guardarNuevoItem(id_partida, id_faena, cnx);
                        }
                        else
                        {
                            verificador_espacios++;

                        }

                    }
                    else
                    {
                        if (listaPartidas.Count > 0)
                        {
                            for (int x = 0; x < listaPartidas.Count; x++)
                            {

                                Error = Error + "\nLa partida " + listaPartidas[x] + " esta solo en la hoja de Presupuesto. No existe en la hoja Precio Unitario";
                            }

                            throw new System.InvalidOperationException("Hay mas de un salto de linea en la linea" + (i + 2) + " de la hoja " + nombreHoja);

                        }
                        i = ds.Tables[0].Rows.Count;
                    }
                    i++;
                }
        }
 public JsonResult obtenerItem(string idItem,string id_partida,string id_faena)
 {
     items Item = new items();
     Item.nombre = idItem;
     Item=Item.obtenerItem(id_partida,id_faena);
     var partidas = Item;
     return Json(partidas, JsonRequestBehavior.AllowGet);
 }
示例#5
0
        public items obtenerItem(string id_partida,string id_faena)
        {
            items Item = new items();

            SqlConnection cnx = conexion.crearConexion();

            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cnx;
            cmd.CommandText = "SELECT * from items WHERE ( nombre = '" + nombre + "' AND id_partida = '" + id_partida + "' AND id_faena = '" + id_faena + "')";
            cmd.CommandType = CommandType.Text;
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {

                /*Item.nombre = (string)dr["nombre"];
                //Item.descripcion = (string)dr["descripcion"];
                try
                {
                    Item.dimensiones = (string)dr["dimensiones"];
                }
                catch (Exception)
                {
                    Item.dimensiones = "";
                }

                Item.unidad = (string)dr["unidad"];
                //Item.cantidad_inventario = Convert.ToString((double)dr["cantidad_inventario"]);//*/

                Item.nombre = (string)dr["nombre"];

                if (typeof(DBNull).Equals(dr["descripcion"].GetType()))
                {
                    Item.descripcion = "";
                }
                else
                {
                    Item.descripcion = (string)dr["descripcion"];
                }

                Item.unidad = (string)dr["unidad"];

                if (typeof(DBNull).Equals(dr["dimensiones"].GetType()))
                {
                    Item.dimensiones = "";
                }
                else
                {
                    Item.dimensiones = (string)dr["dimensiones"];
                }

                Item.cantidad = double.Parse(dr["cantidad"].ToString());
                Item.precio_unitario = int.Parse(dr["precio_unitario"].ToString());
                Item.costo_unitario = int.Parse(dr["costo_unitario"].ToString());
                Item.cantidad_comprar = double.Parse(dr["cantidad_comprar"].ToString());
                Item.presupuesto_compra = int.Parse(dr["presupuesto_compra"].ToString());
                Item.id_partida = (string)dr["id_partida"];
                Item.id_faena = (string)dr["id_faena"];
                Item.tipo = (string)dr["tipo"];
                Item.numero = int.Parse(dr["numero"].ToString());

            }
            cnx.Close();

            return Item;
        }
示例#6
0
        public static List<items> obtenerTodosFaenaPartida(string faena, string partida)
        {
            List<items> retorno = new List<items>();

            SqlConnection cnx = conexion.crearConexion();

            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cnx;
            cmd.CommandText = "SELECT * from items WHERE id_partida='" + partida + "' AND id_faena='" + faena + "'";
            cmd.CommandType = CommandType.Text;
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                items Item = new items();

                Item.nombre = (string)dr["nombre"];

                if (typeof(DBNull).Equals(dr["descripcion"].GetType()))
                {
                    Item.descripcion = "";
                }
                else
                {
                    Item.descripcion = (string)dr["descripcion"];
                }

                Item.unidad = (string)dr["unidad"];

                if (typeof(DBNull).Equals(dr["dimensiones"].GetType()))
                {
                    Item.dimensiones = "";
                }
                else
                {
                    Item.dimensiones = (string)dr["dimensiones"];
                }

                Item.cantidad = double.Parse(dr["cantidad"].ToString());
                Item.precio_unitario = int.Parse(dr["precio_unitario"].ToString());
                Item.costo_unitario = int.Parse(dr["costo_unitario"].ToString());
                Item.cantidad_comprar = double.Parse(dr["cantidad_comprar"].ToString());
                Item.presupuesto_compra = int.Parse(dr["presupuesto_compra"].ToString());
                Item.id_partida = (string)dr["id_partida"];
                Item.id_faena = (string)dr["id_faena"];
                Item.tipo = (string)dr["tipo"];
                Item.numero = int.Parse(dr["numero"].ToString());

                retorno.Add(Item);
            }
            cnx.Close();

            return retorno;
        }
示例#7
0
        public static List<items> obtenerTodos()
        {
            List<items> retorno = new List<items>();

            SqlConnection cnx = conexion.crearConexion();

            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cnx;
            cmd.CommandText = "SELECT * from items ORDER BY nombre ASC";
            cmd.CommandType = CommandType.Text;
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                items Item = new items();

                Item.nombre = (string)dr["nombre"];
              //  Item.descripcion = (string)dr["descripcion"];
                try
                {
                    Item.dimensiones = (string)dr["dimensiones"];
                }
                catch (Exception) {
                    Item.dimensiones = "";
                }

                Item.unidad= (string)dr["unidad"];
                Item.cantidad_inventario = Convert.ToString((double)dr["cantidad_inventario"]);

                retorno.Add(Item);
            }
            cnx.Close();

            return retorno;
        }
示例#8
0
        public static items obtenerItem(string id_faena, string id_partida, string nombreMaterial)
        {
            items retorno = new items();

            SqlConnection cnx = conexion.crearConexion();

            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cnx;
            cmd.CommandText = "SELECT * from items WHERE ( id_partida = '" + id_partida + "' AND id_faena = '" + id_faena
                + "' AND nombre='"+nombreMaterial+"') ORDER BY nombre ASC";
            cmd.CommandType = CommandType.Text;
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                retorno.nombre = (string)dr["nombre"];
                retorno.numero = (int)dr["numero"];
                retorno.id_faena = id_faena;
                retorno.id_partida = id_partida;
                //  Item.descripcion = (string)dr["descripcion"];
                /*try
                {
                    Item.dimensiones = (string)dr["dimensiones"];
                }
                catch (Exception)
                {
                    Item.dimensiones = "";
                }

                Item.unidad = (string)dr["unidad"];
                Item.cantidad_inventario = Convert.ToString((double)dr["cantidad_inventario"]);
                */
            }
            cnx.Close();

            return retorno;
        }