public void ActualizarFacturas(ref OperationResult pobjOperationResult, List<FacturaDto> Temp_Insertar, List<FacturaDto> Temp_Modificar, List<FacturaDto> Temp_Eliminar)
        {
            try
            {
                using (BdEntities dbContext = new BdEntities())
                {
                    #region Insertar
                    foreach (FacturaDto _Factura in Temp_Insertar)
                    {
                        factura Entidad = new factura();
                        Entidad.Data = _Factura.Data;
                        Entidad.n_Factura = _Factura.n_Factura;
                        Entidad.id_Client = _Factura.id_Client;
                        Entidad.IVA = _Factura.IVA;
                        Entidad.Descompte = _Factura.Descompte;
                        dbContext.factura.Add(Entidad);
                    }
                    #endregion

                    #region Modificar
                    foreach (FacturaDto _Factura in Temp_Modificar)
                    {
                        factura Entidad = (from n in dbContext.factura
                                           where n.id_Client == _Factura.id_Client
                                           select n).FirstOrDefault();
                        Entidad.Data = _Factura.Data;
                        Entidad.n_Factura = _Factura.n_Factura;
                        Entidad.id_Client = _Factura.id_Client;
                        Entidad.IVA = _Factura.IVA;
                        Entidad.Descompte = _Factura.Descompte;
                        dbContext.Entry(Entidad).CurrentValues.SetValues(Entidad);
                    }
                    #endregion

                    #region Eliminar
                    foreach (FacturaDto _Factura in Temp_Eliminar)
                    {
                        factura Entidad = (from n in dbContext.factura
                                           where n.id_Client == _Factura.id_Client
                                           select n).FirstOrDefault();
                        dbContext.factura.Remove(Entidad);
                    }
                    #endregion

                    dbContext.SaveChanges();
                    pobjOperationResult.Succes = 1;
                }
            }
            catch (Exception ex)
            {
                pobjOperationResult.Succes = 0;
                pobjOperationResult.ErrorMensaje = ex.Message;
                pobjOperationResult.InnerException = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                pobjOperationResult.AdditionalInformation = "FacturaBL.ActualizarFacturas()";
                return;
            }

        }
        public void ActualizarFactures_detall(ref OperationResult pobjOperationResult, List<Factures_detallDto> Temp_Insertar, List<Factures_detallDto> Temp_Modificar, List<Factures_detallDto> Temp_Eliminar)
        {
            try
            {
                using (BdEntities dbContext = new BdEntities())
                {
                    #region Insertar
                    foreach (Factures_detallDto _Factures_detall in Temp_Insertar)
                    {
                        factures_detall Entidad = new factures_detall();
                        Entidad.id_Producte = _Factures_detall.id_Producte;
                        Entidad.n_Factura = _Factures_detall.n_Factura;
                        Entidad.Quantitat = _Factures_detall.Quantitat;
                        dbContext.factures_detall.Add(Entidad);
                    }
                    #endregion

                    #region Modificar
                    foreach (Factures_detallDto _Factures_detall in Temp_Modificar)
                    {
                        factures_detall Entidad = (from n in dbContext.factures_detall
                                           where n.id_Producte == _Factures_detall.id_Producte
                                           select n).FirstOrDefault();
                        Entidad.id_Producte = _Factures_detall.id_Producte;
                        Entidad.n_Factura = _Factures_detall.n_Factura;
                        Entidad.Quantitat = _Factures_detall.Quantitat;
                        dbContext.Entry(Entidad).CurrentValues.SetValues(Entidad);
                    }
                    #endregion

                    #region Eliminar
                    foreach (Factures_detallDto _Factures_detall in Temp_Eliminar)
                    {
                        factures_detall Entidad = (from n in dbContext.factures_detall
                                           where n.id_Producte == _Factures_detall.id_Producte
                                           select n).FirstOrDefault();
                        dbContext.factures_detall.Remove(Entidad);
                    }
                    #endregion

                   
                    dbContext.SaveChanges();
                    pobjOperationResult.Succes = 1;
                }
            }
            catch (Exception ex)
            {
                pobjOperationResult.Succes = 0;
                pobjOperationResult.ErrorMensaje = ex.Message;
                pobjOperationResult.InnerException = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                pobjOperationResult.AdditionalInformation = "Factures_detallBL.ActualizarFactures_detall()";
                return;
            }
        }
        public void ActualizarProductes(ref OperationResult pobjOperationResult, List<ProductesDto> Temp_Insertar, List<ProductesDto> Temp_Modificar, List<ProductesDto> Temp_Eliminar)
        {
            try
            {
                using (BdEntities dbContext = new BdEntities())
                {
                    #region Insertar
                    foreach (ProductesDto _Productes in Temp_Insertar)
                    {
                        productes Entidad = new productes();
                        Entidad.idProducte = _Productes.idProducte;
                        Entidad.Preu = _Productes.Preu;
                        Entidad.Producte = _Productes.Producte;
                        dbContext.productes.Add(Entidad);
                    }
                    #endregion

                    #region Modificar
                    foreach (ProductesDto _Productes in Temp_Modificar)
                    {
                        productes Entidad = (from n in dbContext.productes
                                                   where n.idProducte == _Productes.idProducte
                                                   select n).FirstOrDefault();
                        Entidad.idProducte = _Productes.idProducte;
                        Entidad.Preu = _Productes.Preu;
                        Entidad.Producte = _Productes.Producte;
                        dbContext.Entry(Entidad).CurrentValues.SetValues(Entidad);
                    }
                    #endregion

                    #region Eliminar
                    foreach (ProductesDto _Productes in Temp_Eliminar)
                    {
                        productes Entidad = (from n in dbContext.productes
                                                   where n.idProducte == _Productes.idProducte
                                                   select n).FirstOrDefault();
                        dbContext.productes.Remove(Entidad);
                    }
                    #endregion

                    dbContext.SaveChanges();
                    pobjOperationResult.Succes = 1;
                }
            }
            catch (Exception ex)
            {
                pobjOperationResult.Succes = 0;
                pobjOperationResult.ErrorMensaje = ex.Message;
                pobjOperationResult.InnerException = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                pobjOperationResult.AdditionalInformation = "ProductesBL.ActualizarProductes()";
                return;
            }
        }
        public void ActualizarClientes(ref OperationResult pobjOperationResult, List<ClientDto> Temp_Insertar, List<ClientDto> Temp_Modificar, List<ClientDto> Temp_Eliminar)
        {
            try
            {
                using (BdEntities dbContext = new BdEntities())
                {
                    #region Insertar
                    foreach (ClientDto _Clients in Temp_Insertar)
                    {
                        clients Entidad = new clients();
                        Entidad.Nom = _Clients.Nom;
                        Entidad.Cognom1 = _Clients.Cognom1;
                        Entidad.id_Client = _Clients.id_Client;
                        Entidad.Adreça = _Clients.Adreça;
                        Entidad.CodiPostal = _Clients.CodiPostal;
                        Entidad.Poblacio = _Clients.Poblacio;
                        Entidad.Provincia = _Clients.Provincia;
                        Entidad.Telefon = _Clients.Telefon;
                        Entidad.Fax = _Clients.Fax;
                        Entidad.E_mail = _Clients.E_mail;

                        dbContext.clients.Add(Entidad);
                    }
                    #endregion

                    #region Modificar
                    foreach (ClientDto _Clients in Temp_Modificar)
                    {
                        clients Entidad = (from n in dbContext.clients
                                           where n.id_Client == _Clients.id_Client
                                           select n).FirstOrDefault();
                        Entidad.Nom = _Clients.Nom;
                        Entidad.Cognom1 = _Clients.Cognom1;
                        Entidad.id_Client = _Clients.id_Client;
                        Entidad.Adreça = _Clients.Adreça;
                        Entidad.CodiPostal = _Clients.CodiPostal;
                        Entidad.Poblacio = _Clients.Poblacio;
                        Entidad.Provincia = _Clients.Provincia;
                        Entidad.Telefon = _Clients.Telefon;
                        Entidad.Fax = _Clients.Fax;
                        Entidad.E_mail = _Clients.E_mail;
                        dbContext.Entry(Entidad).CurrentValues.SetValues(Entidad);
                    }
                    #endregion

                    #region Eliminar
                    foreach (ClientDto _Clients in Temp_Eliminar)
                    {
                        clients Entidad = (from n in dbContext.clients
                                           where n.id_Client == _Clients.id_Client
                                           select n).FirstOrDefault();
                        dbContext.clients.Remove(Entidad);
                    }
                    #endregion

                    dbContext.SaveChanges();
                    pobjOperationResult.Succes = 1;
                }
            }
            catch (Exception ex)
            {
                pobjOperationResult.Succes = 0;
                pobjOperationResult.ErrorMensaje = ex.Message;
                pobjOperationResult.InnerException = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                pobjOperationResult.AdditionalInformation = "ClientBL.ActualizarClientes()";
                return;
            }
        }