示例#1
0
 public ProductDto ToDto(Product product)
 {
     return new ProductDto()
     {
         MedicineId = product.Medicine.Id,
         ProductId = product.Id,
         PharmacyId = product.Pharmacy.Id,
         OnStock = product.OnStock,
         Price = product.Price
     };
 }
示例#2
0
        public bool IsMatch(Product product)
        {
            //Puste wyszukiwanie
            if (!ByProductId.HasValue && !ByMedicineId.HasValue && !ByPharmacyId.HasValue)
                return true;

            if (ByProductId.HasValue && product.Id == ByProductId.Value ||
                ByMedicineId.HasValue && product.Medicine.Id == ByMedicineId.Value ||
                ByPharmacyId.HasValue && product.Pharmacy.Id == ByPharmacyId.Value)
                return true;

            return false;
        }
示例#3
0
 private DataGridViewRow Obsluga_FindRowWithProduct(Product product)
 {
     foreach (DataGridViewRow row in obslugaDataGridView.Rows)
     {
         if (row.Tag == product)
             return row;
     }
     return null;
 }
示例#4
0
        //Sprawdza czy string jest poprawną ilością, a jeśli jest zwraca ją (int)
        private int Obsluga_CheckStringIsValidQuantity(string quantityString, Product product)
        {
            var quantity = int.Parse(quantityString);
            if (quantity <= 0)
                throw new ArgumentException("Liczba nie może być <= 0!");
            if (quantity > product.OnStock)
                throw new ArgumentException("W magazynie nie ma wystarczającej liczby sztuk produktu: " +
                                            product.Medicine.CommercialName);

            return quantity;
        }
示例#5
0
        private void Obsluga_AddRow(Product product)
        {
            if (Obsluga_FindRowWithProduct(product) != null)
            {
                MessageBox.Show("Produkt jest juz w zamówieniu");
                return;
            }

            obslugaDataGridView.Rows.Add();
            int rowIndex = obslugaDataGridView.Rows.Count - 1;
            DataGridViewRow newRow = obslugaDataGridView.Rows[rowIndex];
            newRow.Cells["Obsluga_LpHeader"].Value = (rowIndex + 1).ToString();
            newRow.Cells["Obsluga_NazwaHeader"].Value = product.Medicine.CommercialName;
            newRow.Cells["Obsluga_CenaHeader"].Value = String.Format("{0:N2}", product.Price);
            newRow.Cells["Obsluga_IloscHeader"].Value = "1";
            newRow.Tag = product;
        }
示例#6
0
 private void Zarzadzanie_StanMagazynu_AddRow(Product p)
 {
     zarzadzanieStanMagazynuDataGridView.Rows.Add();
     int rowIndex = zarzadzanieStanMagazynuDataGridView.Rows.Count - 1;
     DataGridViewRow newRow = zarzadzanieStanMagazynuDataGridView.Rows[rowIndex];
     newRow.Cells["Zarzadzanie_ProductNameHeader"].Value = p.Medicine.CommercialName;
     newRow.Cells["Zarzadzanie_ProductPriceHeader"].Value = String.Format("{0:N2}", p.Price);
     newRow.Cells["Zarzadzanie_ProductOnStockHeader"].Value = p.OnStock.ToString();
     newRow.Tag = p;
 }
示例#7
0
        private void Zarzadzanie_StanMagazynu_AddNewProduct(Medicine medicine)
        {
            try
            {
                Product newProduct = null;
                AsyncTaskRunner task = new AsyncTaskRunner(
                    new Task(
                        () =>
                        {
                            var activePharmacy =
                                UnitOfWork.PharmacyRepository.GetPharmacyById(AptekaGlobals.ActivePharmacyId);

                            newProduct = new Product()
                                {
                                    Pharmacy = activePharmacy,
                                    Medicine = medicine,
                                    OnStock = 1,
                                    Price = 10.00
                                };
                            activePharmacy.Products.Add(newProduct);
                            UnitOfWork.SaveChanges();
                        }),
                        () =>
                        {
                            Zarzadzanie_StanMagazynu_AddRow(newProduct);
                        });
                task.StartInTransaction();
            }
            catch (Exception xcp)
            {
                MessageBox.Show(xcp.Message);
            }
        }