GestionDeDommerceInformatiq.../fivhier pata/A_LSTArticle.cs

113 lines
3.9 KiB
C#

#region Ressources extérieures
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Projet_GestionCommerceInfo.Classes;
#endregion
namespace Projet_GestionCommerceInfo.Acces
{
/// <summary>
/// Couche d'accès aux données (Data Access Layer)
/// </summary>
public class A_LSTArticle : ADBase
{
#region Constructeurs
public A_LSTArticle(string sChaineConnexion)
: base(sChaineConnexion)
{ }
#endregion
public int Ajouter(int PanierID, int ArticleID, int Quantite, decimal? PrixHTVA, int? TVA)
{
CreerCommande("AjouterLSTArticle");
int res = 0;
Commande.Parameters.Add("ID", SqlDbType.Int);
Direction("ID", ParameterDirection.Output);
Commande.Parameters.AddWithValue("@PanierID", PanierID);
Commande.Parameters.AddWithValue("@ArticleID", ArticleID);
Commande.Parameters.AddWithValue("@Quantite", Quantite);
if(PrixHTVA == null) Commande.Parameters.AddWithValue("@PrixHTVA", Convert.DBNull);
else Commande.Parameters.AddWithValue("@PrixHTVA", PrixHTVA);
if(TVA == null) Commande.Parameters.AddWithValue("@TVA", Convert.DBNull);
else Commande.Parameters.AddWithValue("@TVA", TVA);
Commande.Connection.Open();
Commande.ExecuteNonQuery();
res = int.Parse(LireParametre("ID"));
Commande.Connection.Close();
return res;
}
public int Modifier(int ID, int PanierID, int ArticleID, int Quantite, decimal? PrixHTVA, int? TVA)
{
CreerCommande("ModifierLSTArticle");
int res = 0;
Commande.Parameters.AddWithValue("@ID", ID);
Commande.Parameters.AddWithValue("@PanierID", PanierID);
Commande.Parameters.AddWithValue("@ArticleID", ArticleID);
Commande.Parameters.AddWithValue("@Quantite", Quantite);
if(PrixHTVA == null) Commande.Parameters.AddWithValue("@PrixHTVA", Convert.DBNull);
else Commande.Parameters.AddWithValue("@PrixHTVA", PrixHTVA);
if(TVA == null) Commande.Parameters.AddWithValue("@TVA", Convert.DBNull);
else Commande.Parameters.AddWithValue("@TVA", TVA);
Commande.Connection.Open();
Commande.ExecuteNonQuery();
Commande.Connection.Close();
return res;
}
public List<C_LSTArticle> Lire(string Index)
{
CreerCommande("SelectionnerLSTArticle");
Commande.Parameters.AddWithValue("@Index", Index);
Commande.Connection.Open();
SqlDataReader dr = Commande.ExecuteReader();
List<C_LSTArticle> res = new List<C_LSTArticle>();
while (dr.Read())
{
C_LSTArticle tmp = new C_LSTArticle();
tmp.ID = int.Parse(dr["ID"].ToString());
tmp.PanierID = int.Parse(dr["PanierID"].ToString());
tmp.ArticleID = int.Parse(dr["ArticleID"].ToString());
tmp.Quantite = int.Parse(dr["Quantite"].ToString());
if(dr["PrixHTVA"] != DBNull.Value) tmp.PrixHTVA = decimal.Parse(dr["PrixHTVA"].ToString());
if(dr["TVA"] != DBNull.Value) tmp.TVA = int.Parse(dr["TVA"].ToString());
res.Add(tmp);
}
dr.Close();
Commande.Connection.Close();
return res;
}
public C_LSTArticle Lire_ID(int ID)
{
CreerCommande("SelectionnerLSTArticle_ID");
Commande.Parameters.AddWithValue("@ID", ID);
Commande.Connection.Open();
SqlDataReader dr = Commande.ExecuteReader();
C_LSTArticle res = new C_LSTArticle();
while (dr.Read())
{
res.ID = int.Parse(dr["ID"].ToString());
res.PanierID = int.Parse(dr["PanierID"].ToString());
res.ArticleID = int.Parse(dr["ArticleID"].ToString());
res.Quantite = int.Parse(dr["Quantite"].ToString());
if(dr["PrixHTVA"] != DBNull.Value) res.PrixHTVA = decimal.Parse(dr["PrixHTVA"].ToString());
if(dr["TVA"] != DBNull.Value) res.TVA = int.Parse(dr["TVA"].ToString());
}
dr.Close();
Commande.Connection.Close();
return res;
}
public int Supprimer(int ID)
{
CreerCommande("SupprimerLSTArticle");
int res = 0;
Commande.Parameters.AddWithValue("@ID", ID);
Commande.Connection.Open();
res = Commande.ExecuteNonQuery();
Commande.Connection.Close();
return res;
}
}
}