Exemple #1
0
        public static void Add(ProductType product)
        {
            if (product.CustomerId == Guid.Empty)
            {
                product.CustomerId = Guid.NewGuid();
            }
            if (product.ProductsWebCustomerId == Guid.Empty)
            {
                product.ProductsWebCustomerId = Guid.NewGuid();
            }
            if (product.CusumerIdRealStock == Guid.Empty)
            {
                product.CusumerIdRealStock = Guid.NewGuid();
            }

            RepositoryStockReal.AddOrUpdateCounts(product.CustomerId, Config.IdEstablishment, product.Qty, product.Qty,
                                                  product.Price);
            RepositoryStockReal.AddOrUpdateCounts(product.CustomerId, Config.IdEstablishmentGros, product.Qty,
                                                  product.Qty, product.PriceGros);

            SetStockReal(product);

            AddToXml(product);
            //if (SyncData.IsConnect) AddToDb(product);
        }
Exemple #2
0
        public static void UpdateProductPrice(ProductType product)
        {
            Update(product);

            var stockReal = RepositoryStockReal.GetByProduct(product);

            if (stockReal != null)
            {
                RepositoryStockReal.UpdatePrice(stockReal, product.Price);
            }
        }
Exemple #3
0
        private static void TestDubl(List <StockReal> stockReals, ProductType product)
        {
            try
            {
                var sr1 = stockReals.FirstOrDefault(p => p.IdEstablishment == Config.IdEstablishment);
                var sr2 = stockReals.FirstOrDefault(p => p.IdEstablishment == Config.IdEstablishmentGros);

                if (sr1 == null && sr2 == null)
                {
                    LogService.Log(TraceLevel.Error, 321);
                }
                else if (sr1 == null || sr2 == null)
                {
                    LogService.Log(TraceLevel.Error, 322);
                }

                var sr1Id = sr1?.CustomerId ?? Guid.Empty;
                var sr2Id = sr2?.CustomerId ?? Guid.Empty;
                foreach (var sr in stockReals.Where(sr => sr.CustomerId != sr1Id && sr.CustomerId != sr2Id))
                {
                    RepositoryStockReal.DeleteById(sr.CustomerId);
                }

                if (sr1 == null)
                {
                    sr1 = RepositoryStockReal.AddAsNull(product.CustomerId, Config.IdEstablishment);
                }
                if (sr2 == null)
                {
                    sr2 = RepositoryStockReal.AddAsNull(product.CustomerId, Config.IdEstablishmentGros);
                }

                product.StockReal.Add(sr1);
                product.StockReal.Add(sr2);

                product.Price              = sr1.Price;
                product.PriceGros          = sr2.Price;
                product.Qty                = sr1.Qty;
                product.CusumerIdRealStock = sr1.CustomerId;
            }
            catch (Exception ex)
            {
                LogService.Log(TraceLevel.Error, 0356, "Product : " + product.Name + " - " + product.CodeBare + " - " + product.CustomerId + " - " + ex.Message + ".");
            }
        }
Exemple #4
0
        public static void Sync()
        {
            RepositoryGroupProduct.Sync();
            RepositoryTva.Sync();
            RepositoryStockReal.Sync();

            if (SyncData.IsConnect)
            {
                SetFromDb();
                SetStockReals(Products);
                SaveFile();
            }
            else
            {
                LoadFile();
                SetStockReals(Products);
            }
        }
Exemple #5
0
        public static List <PriceGrosType> GetFromDbByProductIds(Guid[] productIds)
        {
            var stockReals = RepositoryStockReal.GetFromDbByProductIds(productIds);

            return(stockReals.Select(sr => new PriceGrosType(sr.CustomerId, sr.ProductsCustomerId, sr.Price)).ToList());
        }