Example #1
0
        internal void select(NpgsqlConnection con, string id_cliente = "", string query = "")
        {
            using (PetLineContext db = new PetLineContext())
            {
                using (var cmd = new NpgsqlCommand())
                {
                    cmd.Connection  = con;
                    cmd.CommandText = "SELECT *, \r\n" +
                                      "   (select sum(stock_libero) from mg_stock_magazzino where id_divisione = '1' and id_codice_art = ma_articoli_soc.id_codice_art) as giacenza \r\n" +
                                      "from ma_articoli_soc \r\n" +
                                      "where (upper(id_codice_art) like (@query) or upper(descrizione)  like (@query) ) \r\n" +
                                      "order by id_codice_art asc \r\n" +
                                      "limit 5";

                    cmd.Parameters.AddWithValue("query", query.ToUpper() + "%");
                    cmd.ExecuteNonQuery();

                    using (var reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            Articolo r = new Articolo();
                            r.id_codice_art = reader["id_codice_art"].ToString();
                            r.descrizione   = reader["descrizione"].ToString();
                            r.id_iva        = reader["id_iva"].ToString();
                            r.peso_lordo    = Convert.ToDecimal(reader["peso_lordo"]);
                            r.giacenza      = !string.IsNullOrEmpty(reader["giacenza"].ToString()) ?  Convert.ToDecimal(reader["giacenza"]) : 0;

                            CodiceIva codiceIva = db.codiceIva.FirstOrDefault(x => x.id_iva == r.id_iva);
                            r.aliquota = codiceIva.aliquota;

                            r.name = r.id_codice_art + " - " + r.descrizione;

                            rs.Add(r);
                        }
                    }
                }

                foreach (var r in rs)
                {
                    RecordListinoModel listinoCliente = new RecordListinoModel();
                    listinoCliente.id_codice_art = r.id_codice_art;
                    listinoCliente.leggiPrezziCliente(con, id_cliente);

                    RecordListinoModel listinoArticolo = new RecordListinoModel();
                    listinoArticolo.id_codice_art = r.id_codice_art;
                    listinoArticolo.leggiPrezzi(con);

                    r.prezzo_acquisto = listinoArticolo.prezzo_acquisto;
                    r.prezzo_vendita  = listinoCliente.prezzo_vendita > 0 ? listinoCliente.prezzo_vendita : listinoArticolo.prezzo_vendita;
                    r.sconto_1        = listinoCliente.sconto_1 > 0 ? listinoCliente.sconto_1 : listinoArticolo.sconto_1;
                    r.sconto_2        = listinoCliente.sconto_2 > 0 ? listinoCliente.sconto_2 : listinoArticolo.sconto_2;
                    r.sconto_3        = listinoCliente.sconto_3 > 0 ? listinoCliente.sconto_3 : listinoArticolo.sconto_3;
                    r.sconto_agente   = 0;
                    r.leggiUltimoOrdine(con);
                }
            }
        }
Example #2
0
        public void select(NpgsqlConnection conn, string query, string cod_cat_merc = "", int pagina = 0, int REC_X_PAGINA = 0)
        {
            using (var cmd = new NpgsqlCommand())
            {
                cmd.Connection  = conn;
                cmd.CommandText = "SELECT * from ma_articoli_soc \r\n" +
                                  "where id_societa = '1' \r\n";
                if (!string.IsNullOrEmpty(query))
                {
                    cmd.CommandText += "  and (upper(id_codice_art) LIKE( @query) or upper(descrizione) like( @query ) ) \r\n";
                }
                if (!string.IsNullOrEmpty(cod_cat_merc))
                {
                    cmd.CommandText += " and id_categoria_merc like ('" + cod_cat_merc + "')";
                }

                if (REC_X_PAGINA > 0)
                {
                    cmd.CommandText += "limit " + REC_X_PAGINA + " offset " + (pagina * REC_X_PAGINA);
                }
                if (!string.IsNullOrEmpty(query))
                {
                    cmd.Parameters.AddWithValue("query", query.ToUpper() + "%");
                }
                cmd.ExecuteNonQuery();

                using (var reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        RecordListinoModel r = new RecordListinoModel();
                        r.id_codice_art = reader.GetString(reader.GetOrdinal("id_codice_art"));
                        r.descrizione   = reader.GetString(reader.GetOrdinal("descrizione"));
                        recordlistino.Add(r);
                    }
                }

                foreach (RecordListinoModel r in recordlistino)
                {
                    r.leggiPrezzi(conn);
                }
            }
        }
Example #3
0
        public void update_massivo_sconto_cliente(NpgsqlConnection con, String id_condizione, decimal sconto_massivo, string query, string cod_cat_merc, String id_cliente)
        {
            using (var cmd = new NpgsqlCommand())
            {
                cmd.Connection  = con;
                cmd.CommandText = "SELECT * from ma_articoli_soc \r\n" +
                                  "where id_societa = '1' \r\n";
                if (!string.IsNullOrEmpty(query))
                {
                    cmd.CommandText += "  and (upper(id_codice_art) LIKE( @query) or upper(descrizione) like( @query ) ) \r\n";
                }
                if (!string.IsNullOrEmpty(cod_cat_merc))
                {
                    cmd.CommandText += " and id_categoria_merc like ('" + cod_cat_merc + "')";
                }

                if (!string.IsNullOrEmpty(query))
                {
                    cmd.Parameters.AddWithValue("query", "%" + query.ToUpper() + "%");
                }
                cmd.ExecuteNonQuery();

                using (var reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        RecordListinoModel r = new RecordListinoModel();
                        r.id_cliente    = id_cliente;
                        r.id_codice_art = reader.GetString(reader.GetOrdinal("id_codice_art"));
                        r.descrizione   = reader.GetString(reader.GetOrdinal("descrizione"));
                        recordlistino.Add(r);
                    }
                }

                foreach (RecordListinoModel r in recordlistino)
                {
                    r.updateScontoCliente(con, sconto_massivo, id_condizione);
                }
            }
        }