ВУЗ:
Составители:
Рубрика:
103
Класс Sklad также имеет методы, которые регистрируют операции
поступления товара на склад (AddTovar()) и реализации товара
покупателю (SaleTovar()). Метод AddTovar() с помощью запроса
находит в словаре запись о поступившем товаре. Если такого товара на
складе не было, добавляется новая запись об этом товаре, в противном случае
в найденной записи корректируется количество с учетом поступления.
// метод, регистрирующий поступление товара на склад
public void AddTovar(Tovar t, int count)
{
// запрос к словарю на поиск записи с заданным ключом-товаром
List<Tovar> items = (from s in sklad
where s.Key.Equals(t)
select s.Key).ToList<Tovar>();
if (items.Count() == 0)
{
// товара не было найдено –
// добавляем информацию о его поступлении
sklad.Add(t, count);
return;
}
// товар уже есть на складе – увеличиваем его количество
sklad[t] = sklad[t] + count;
}
Алгоритм метода SaleTovar() предусматривает поиск записи в
словаре, соответствующей продаваемому товару. Отсутствие такой записи
приводит к генерации исключения (товара нет на складе). Аналогичное
исключение возникает, когда товар имеется, но в недостаточном количестве.
Если же данные корректны, в найденной записи словаря изменяется
количество товара с учетом реализации.
// метод, регистрирующий покупку товара
public void SaleTovar(Tovar t, int count)
{
List<KeyValuePair<Tovar, int>> items =
(from s in sklad where s.Key.Equals(t)
select s).ToList <KeyValuePair<Tovar, int>>();
if(items.Count() == 0)
throw new Exception("Необходимого товара нет на складе");
foreach (KeyValuePair<Tovar,int> p in items)
{
if (p.Value < count)
throw new Exception("Необходимого количества
нет на складе");
sklad[p.Key] = sklad[p.Key] - count;
Класс Sklad также имеет методы, которые регистрируют операции поступления товара на склад (AddTovar()) и реализации товара покупателю (SaleTovar()). Метод AddTovar() с помощью запроса находит в словаре запись о поступившем товаре. Если такого товара на складе не было, добавляется новая запись об этом товаре, в противном случае в найденной записи корректируется количество с учетом поступления. // метод, регистрирующий поступление товара на склад public void AddTovar(Tovar t, int count) { // запрос к словарю на поиск записи с заданным ключом-товаром Listitems = (from s in sklad where s.Key.Equals(t) select s.Key).ToList (); if (items.Count() == 0) { // товара не было найдено – // добавляем информацию о его поступлении sklad.Add(t, count); return; } // товар уже есть на складе – увеличиваем его количество sklad[t] = sklad[t] + count; } Алгоритм метода SaleTovar() предусматривает поиск записи в словаре, соответствующей продаваемому товару. Отсутствие такой записи приводит к генерации исключения (товара нет на складе). Аналогичное исключение возникает, когда товар имеется, но в недостаточном количестве. Если же данные корректны, в найденной записи словаря изменяется количество товара с учетом реализации. // метод, регистрирующий покупку товара public void SaleTovar(Tovar t, int count) { List > items = (from s in sklad where s.Key.Equals(t) select s).ToList >(); if(items.Count() == 0) throw new Exception("Необходимого товара нет на складе"); foreach (KeyValuePair p in items) { if (p.Value < count) throw new Exception("Необходимого количества нет на складе"); sklad[p.Key] = sklad[p.Key] - count; 103
Страницы
- « первая
- ‹ предыдущая
- …
- 102
- 103
- 104
- 105
- 106
- …
- следующая ›
- последняя »