public override void insert(NpgsqlConnection con) { using (PetLineContext db = new PetLineContext()) { var settings = (from item in db.impostazioni select item).First(); using (var client = new WebClient()) { var values = new NameValueCollection(); string ordine = JsonConvert.SerializeObject(this); values["op"] = "insert_order"; values["ordine"] = ordine; values["private_key"] = settings.private_key; try { var response = client.UploadValues(settings.jerp_url + "/zwebServ/sync.jsp", values); var responseString = Encoding.Default.GetString(response); } catch (WebException e) { var messaggio = new StreamReader(e.Response.GetResponseStream()).ReadToEnd(); throw new Exception(messaggio); } } } }
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); } } }
private decimal getValoreCond(PetLineContext db, String id_cond_prezzo, String id_codice_art) { try { da_listini_articolo listino = db.da_listini_articolo .FirstOrDefault(x => x.id_codice_art == id_codice_art && x.id_cond_prezzo == id_cond_prezzo); return(listino.val_condizione); } catch { return(0); } }
private decimal getValoreScontoCliente(PetLineContext db, String id_cond_prezzo, String id_codice_art, String id_cliente) { try { da_sconti_cliente_articolo sconto = db.da_sconti_cliente_articolo .FirstOrDefault(x => x.id_codice_art == id_codice_art && x.id_cond_prezzo == id_cond_prezzo && x.id_cliente == id_cliente); return(sconto.val_condizione); } catch { return(0); } }
public override void delete(NpgsqlConnection con) { using (PetLineContext db = new PetLineContext()) { var settings = (from item in db.impostazioni select item).First(); using (var client = new WebClient()) { var values = new NameValueCollection(); values["op"] = "delete_order"; values["esercizio"] = esercizio.ToString(); values["id_ordine"] = id_ordine; values["private_key"] = settings.private_key; var response = client.UploadValues(settings.jerp_url + "/zwebServ/sync.jsp", values); var responseString = Encoding.Default.GetString(response); } } }
public override void update(NpgsqlConnection con) { using (PetLineContext db = new PetLineContext()) { var settings = (from item in db.impostazioni select item).First(); using (var client = new WebClient()) { var values = new NameValueCollection(); string ordine = JsonConvert.SerializeObject(this); values["op"] = "update_order"; values["ordine"] = ordine; values["private_key"] = settings.private_key; var response = client.UploadValues(settings.jerp_url + "/zwebServ/sync.jsp", values); var responseString = Encoding.Default.GetString(response); } } }
public void select() { using (PetLineContext db = new PetLineContext()) { var query = from art in db.ma_articoli_soc where art.id_codice_art.Equals(this.id_codice_art_rif) select art; var articoli_soc = query.FirstOrDefault <ma_articoli_soc>(); descrizione = articoli_soc.descrizione; id_um = articoli_soc.id_um; peso_lordo = articoli_soc.peso_lordo; prezzo_acquisto = getValoreCond(db, "AC01", this.id_codice_art_rif); prezzo_vendita = getValoreCond(db, "VA01", this.id_codice_art_rif); sconto_1 = getValoreSconto(db, "SC01", this.id_codice_art_rif); sconto_2 = getValoreSconto(db, "SC02", this.id_codice_art_rif); sconto_3 = getValoreSconto(db, "SC03", this.id_codice_art_rif); string sql = @"select va_clienti.* from (select distinct * from ( select id_cliente from da_sconti_cliente_articolo where id_codice_art = @id_codice_art_rif union select id_cliente from da_listini_cliente where id_codice_art = @id_codice_art_rif) as tab ) as elenco_clienti inner join va_clienti on elenco_clienti.id_cliente = va_clienti.id_cliente"; condizioni_cliente = db.CondizioneCliente.SqlQuery(sql, new NpgsqlParameter("id_codice_art_rif", this.id_codice_art_rif)).ToList(); foreach (var item in condizioni_cliente) { item.prezzo_acquisto = getValoreCondCliente(db, "AC01", this.id_codice_art_rif, item.id_cliente); item.prezzo_vendita = getValoreCondCliente(db, "VA01", this.id_codice_art_rif, item.id_cliente); item.sconto_1 = getValoreScontoCliente(db, "SC01", this.id_codice_art_rif, item.id_cliente); item.sconto_2 = getValoreScontoCliente(db, "SC02", this.id_codice_art_rif, item.id_cliente); item.sconto_3 = getValoreScontoCliente(db, "SC03", this.id_codice_art_rif, item.id_cliente); } //Leggi ultimo codice articolo using (var cmd = new NpgsqlCommand()) { cmd.Connection = (NpgsqlConnection)db.Database.Connection; cmd.Connection.Open(); //cmd.CommandText = "select max(cast(id_codice_art as integer)) as id_codice_art from ma_articoli_soc where id_codice_art ~ E'^\\d+$' \r\n"; cmd.CommandText = "select * from mb_range_int_stato where id_range_int = 'ARTICOLI' \r\n"; cmd.ExecuteNonQuery(); using (var reader = cmd.ExecuteReader()) { while (reader.Read()) { id_codice_art = "" + Convert.ToInt32(reader["ultimo_valore"]); } } cmd.Connection.Close(); } using (var cmd = new NpgsqlCommand()) { cmd.Connection = (NpgsqlConnection)db.Database.Connection; cmd.Connection.Open(); cmd.CommandText = "update mb_range_int_stato set ultimo_valore = ultimo_valore + 1 where id_range_int = 'ARTICOLI' \r\n"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); } try { id_codice_art = "" + int.Parse(id_codice_art) + 1; } catch { id_codice_art = "1"; } //Leggi codice a barre using (var cmd = new NpgsqlCommand()) { cmd.Connection = (NpgsqlConnection)db.Database.Connection; cmd.Connection.Open(); cmd.CommandText = "select codice_ean from ma_articoli_ean where id_societa = '1' and id_codice_art = @id_codice_art \r\n"; cmd.Parameters.AddWithValue("id_codice_art", id_codice_art_rif); cmd.ExecuteNonQuery(); using (var reader = cmd.ExecuteReader()) { while (reader.Read()) { codice_ean = reader["codice_ean"].ToString(); } } cmd.Connection.Close(); } } }