Example #1
0
 internal static PRODUCT FindProductByCode(string codeProduct)
 {
     using (IDalProduct dal = new DalProduct())
     {
         return(dal.GetProductByCode(codeProduct));
     }
 }
Example #2
0
        internal static void AddNewTransactionDetail(string codeProduct, string terminal, string transaction, bool minus)
        {
            using (IDalTransaction dal = new DalTransaction())
            {
                //find productId with codeProduct
                PRODUCT prod;
                using (IDalProduct dalP = new DalProduct())
                {
                    prod = dalP.GetProductByCode(codeProduct);
                }

                //verify if product exist in detail and Add or Remove itemDetail
                IList <TRANSACTION_DETAILS> detailList = FindTransactionDetailsListById(transaction);
                var result = VerifyProductInDetail(prod.idProduct, detailList);
                if (result)
                {
                    //Product exist --> Modify qty
                    foreach (var item in detailList)
                    {
                        if (item.productId == prod.idProduct)
                        {
                            var newqty = 0;
                            if (minus)
                            {
                                //qty--
                                newqty = item.quantity - 1;
                                if (newqty == 0)
                                {
                                    dal.DeleteDetail(item.idTransactionDetails);
                                    break;
                                }
                                dal.EditQtyToDetailById(item.idTransactionDetails, newqty);
                                break;
                            }
                            else
                            {
                                //qty++
                                newqty = item.quantity + 1;
                                dal.EditQtyToDetailById(item.idTransactionDetails, newqty);
                                break;
                            }
                        }
                    }
                }
                else
                {
                    //Add new detail --> param product, terminalId, transactionId, vatItem
                    decimal vatItem;
                    using (IDalVat dalV = new DalVat())
                    {
                        vatItem = dalV.GetVatValById(prod.vatId);
                    }
                    int terminalId    = int.Parse(terminal);
                    int transactionId = int.Parse(transaction);
                    dal.CreateDetail(prod, terminalId, transactionId, vatItem);
                }
            }
        }
Example #3
0
 internal static IList <TrDetailsViewModel> TranslateDetailList(IList <TrDetailsViewModel> listDetails, int lang)
 {
     using (IDalProduct dal = new DalProduct())
     {
         foreach (var item in listDetails)
         {
             var prod = dal.GetProductByCode(item.ProductCode);
             item.ProductName = dal.GetNameProductById(prod.idProduct, lang);
         }
         return(listDetails);
     }
 }