113 lines
3.9 KiB
C#
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;
|
|
}
|
|
}
|
|
}
|