Пример #1
0
        public bool Update(CsCentre pCentre)
        {
            try
            {
                //return Entities.UpdateEntity<Galatee.Entity.Model.CENTRE>(Entities.ConvertObject<Galatee.Entity.Model.CENTRE, CsCentre>(pCentre));

                List <int> lstIdCentreInit  = new List <int>();
                List <int> lstIdProduitAnc  = new List <int>();
                List <int> lstIdProduitNouv = new List <int>();

                List <int> lstIdProduitAJouter     = new List <int>();
                List <int> lstIdProduitSupprimer   = new List <int>();
                List <int> lstIdProduitNonModifier = new List <int>();

                List <CsProduit> lstProduitAsupp = new List <CsProduit>();
                List <CsProduit> lstProduitAjout = new List <CsProduit>();

                List <CsProduit> lstProduitCentre = Entities.GetEntityListFromQuery <CsProduit>(ParamProcedure.PARAM_PRODUIT_CENTRE(pCentre.FK_IDCODESITE));

                foreach (CsProduit items in lstProduitCentre)
                {
                    lstIdProduitAnc.Add(items.FK_IDPRODUIT);
                }

                foreach (CsProduit items in pCentre.LESPRODUITSDUSITE)
                {
                    lstIdProduitNouv.Add(items.FK_IDPRODUIT);
                }

                lstIdProduitAJouter = lstIdProduitNouv.Where(t => !lstIdProduitAnc.Contains(t)).ToList();
                lstProduitAjout     = pCentre.LESPRODUITSDUSITE.Where(t => lstIdProduitAJouter.Contains(t.FK_IDPRODUIT)).ToList();

                // Supprimer
                lstIdProduitSupprimer = lstIdProduitAnc.Where(t => !lstIdProduitNouv.Contains(t)).ToList();
                lstProduitAsupp       = lstProduitCentre.Where(t => lstIdProduitSupprimer.Contains(t.FK_IDPRODUIT)).ToList();
                lstProduitAsupp.ForEach(t => t.DATEFIN = System.DateTime.Today);
                //

                CENTRE leCentre = new CENTRE();
                leCentre = Entities.ConvertObject <Galatee.Entity.Model.CENTRE, CsCentre>(pCentre);
                leCentre.PRODUITCENTRE = Entities.ConvertObject <Galatee.Entity.Model.PRODUITCENTRE, CsProduit>(pCentre.LESPRODUITSDUSITE);
                int result = -1;
                using (galadbEntities ctx = new galadbEntities())
                {
                    Entities.UpdateEntity <Galatee.Entity.Model.CENTRE>(leCentre, ctx);
                    Entities.InsertEntity <Galatee.Entity.Model.PRODUITCENTRE>(Entities.ConvertObject <Galatee.Entity.Model.PRODUITCENTRE, CsProduit>(lstProduitAsupp), ctx);
                    Entities.InsertEntity <Galatee.Entity.Model.PRODUITCENTRE>(Entities.ConvertObject <Galatee.Entity.Model.PRODUITCENTRE, CsProduit>(lstProduitAjout), ctx);
                    result = ctx.SaveChanges();
                }
                return(result == -1 ? false : true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
 public bool Insert(List <CsCentre> pCentreCollection)
 {
     try
     {
         List <CENTRE> lstCentre = new List <CENTRE>();
         foreach (CsCentre item in pCentreCollection)
         {
             CENTRE leCentre = new CENTRE();
             leCentre = Entities.ConvertObject <Galatee.Entity.Model.CENTRE, CsCentre>(item);
             leCentre.PRODUITCENTRE = Entities.ConvertObject <Galatee.Entity.Model.PRODUITCENTRE, CsProduit>(item.LESPRODUITSDUSITE);
             lstCentre.Add(leCentre);
         }
         return(Entities.InsertEntity <Galatee.Entity.Model.CENTRE>(lstCentre));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }