Esempio n. 1
0
 public void SaveUpdateSubProductItems(List <SubProductItemModel> model, List <SubProductItemModel> deleteProducts)
 {
     try
     {
         List <SubProductItem> insertSubProductItem = new List <SubProductItem>();
         List <SubProductItem> updateSubProductItem = new List <SubProductItem>();
         List <SubProductItem> deleteSubProductItem = new List <SubProductItem>();
         model?.ForEach(x =>
         {
             SubProductItem updateStock = new SubProductItem(x.Id > 0 ? x.Id : 0, x.ParentProductId, x.Quantity, x.Retail, UserModelVm.UserId, null, CommonFunctions.ParseDateToFinclaveString(DateTime.Now.ToShortDateString()), string.Empty);
             if (x.Id > 0)
             {
                 updateSubProductItem.Add(updateStock);
             }
             else
             {
                 insertSubProductItem.Add(updateStock);
             }
         });
         ;
         if (deleteProducts.Any())
         {
             deleteSubProductItem.AddRange(deleteProducts.Select(x => new SubProductItem(x.Id, x.ParentProductId, x.Quantity, x.Retail, x.CreatedBy, UserModelVm.UserId, x.CreatedDate, CommonFunctions.ParseDateToFinclaveString(DateTime.Now.ToShortDateString()))));
         }
         _productRepository.SaveUpdateSubProductItems(updateSubProductItem, insertSubProductItem, deleteSubProductItem);
     }
     catch (Exception ex)
     {
         fault.Result       = false;
         fault.ErrorMessage = "Error in SaveUpdateSubProductItems method";
         fault.ErrorDetails = ex.ToString();
         throw new FaultException <FaultData>(fault);
     }
 }
Esempio n. 2
0
        //OPTIMIZED..



        //Need to Check update case



        //public List<StockModel> GetStocksById(int purchaseId, int companyId, int? branchId)
        // {
        //     List<Stock> stocks = _purchaseRepository.GetStocksById(purchaseId)
        //     return stocks?.Select(x => new StockModel(x.Id, x.PurchaseId, x.Quantity, x.CostPrice, x.SellingPrice, x.MRP, x.ItemTaxPercentage, x.BatchNo, x.ProductCode, x.PurchaseOrderId)).ToList();
        // }



        //Optimized



        public void SaveUpdateSubProductItems(List <SubProductItemModel> model, List <SubProductItemModel> deleteProducts)
        {
            List <SubProductItem> insertSubProductItem = new List <SubProductItem>();
            List <SubProductItem> updateSubProductItem = new List <SubProductItem>();
            List <SubProductItem> deleteSubProductItem = new List <SubProductItem>();

            model?.ForEach(x =>
            {
                SubProductItem updateStock = new SubProductItem(x.Id > 0 ? x.Id : 0, x.ParentProductId, x.Quantity, x.Retail, UserModelVm.UserId, null, DateTime.Now.ToShortDateString(), string.Empty);
                if (x.Id > 0)
                {
                    updateSubProductItem.Add(updateStock);
                }
                else
                {
                    insertSubProductItem.Add(updateStock);
                }
            });
            ;
            if (deleteProducts.Any())
            {
                deleteSubProductItem.AddRange(deleteProducts.Select(x => new SubProductItem(x.Id, x.ParentProductId, x.Quantity, x.Retail, x.CreatedBy, UserModelVm.UserId, x.CreatedDate, DateTime.Now.ToShortDateString())));
            }
            _productRepository.SaveUpdateSubProductItems(updateSubProductItem, insertSubProductItem, deleteSubProductItem);
        }
Esempio n. 3
0
 public void SaveSubProductItems(List <SubProductItemModel> model)
 {
     try
     {
         List <SubProductItem> insertSubProductItem = new List <SubProductItem>();
         model?.ForEach(x =>
         {
             SubProductItem updateStock = new SubProductItem(0, x.ParentProductId, x.Quantity, x.Retail, UserModelVm.UserId, null, CommonFunctions.ParseDateToFinclaveString(DateTime.Now.ToShortDateString()), string.Empty);
             insertSubProductItem.Add(updateStock);
         });
         _productRepository.SaveSubProductItems(insertSubProductItem);
     }
     catch (Exception ex)
     {
         fault.Result       = false;
         fault.ErrorMessage = "Error in SaveSubProductItems method";
         fault.ErrorDetails = ex.ToString();
         throw new FaultException <FaultData>(fault);
     }
 }