Практикум по курсу "Объектно-ориентированное программирование" на языке C#. Андрианова А.А - 109 стр.

UptoLike

108
нуждаются в комментариях. Главными же являются методы двух основных
операций с товарами поступление нового заказа и поступление товара на
склад. В первом случае нужно проверить наличие товара на складе. В
зависимости от того, выполнен заказ полностью или частично, будет
добавлена запись в список заказов на недостающее количество. Второй метод
предполагает, что требуется инспектировать список заказов на данный товар.
В результате заказы могут быть выполнены полностью или частично, а
оставшаяся часть товара должна быть отправлена на склад.
// оформление заказа
public void Zakaz(string cat,string tov,int c)
{
try
{
Tovar t = tovars.GetTovar(cat, tov);
// определение количества товаров на складе
int count_sklad = sklad.CountTovar(t);
if (count_sklad >= c)
{
// если товар на складе есть, обслуживаем заказ сразу
Console.WriteLine("Заказ обработан");
// меняем количество товара на складе
sklad.SaleTovar(t, c);
}
else
{
if (count_sklad > 0)
{
Console.WriteLine("Заказ обработан частично
({0})", count_sklad);
// запись оставшейся части заказа
list.AddZakaz(t, c - count_sklad);
// уменьшение товара на складе
sklad.SaleTovar(t, count_sklad);
}
else
{
// добавление заказа в список
list.AddZakaz(t, c);
}
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
нуждаются в комментариях. Главными же являются методы двух основных
операций с товарами – поступление нового заказа и поступление товара на
склад. В первом случае нужно проверить наличие товара на складе. В
зависимости от того, выполнен заказ полностью или частично, будет
добавлена запись в список заказов на недостающее количество. Второй метод
предполагает, что требуется инспектировать список заказов на данный товар.
В результате заказы могут быть выполнены полностью или частично, а
оставшаяся часть товара должна быть отправлена на склад.

   // оформление заказа
   public void Zakaz(string cat,string tov,int c)
   {
      try
      {
         Tovar t = tovars.GetTovar(cat, tov);
         // определение количества товаров на складе
         int count_sklad = sklad.CountTovar(t);
         if (count_sklad >= c)
         {
            // если товар на складе есть, обслуживаем заказ сразу
            Console.WriteLine("Заказ обработан");
            // меняем количество товара на складе
            sklad.SaleTovar(t, c);
         }
         else
         {
            if (count_sklad > 0)
            {
               Console.WriteLine("Заказ обработан частично
                                           ({0})", count_sklad);
               // запись оставшейся части заказа
               list.AddZakaz(t, c - count_sklad);
               // уменьшение товара на складе
               sklad.SaleTovar(t, count_sklad);
            }
            else
            {
               // добавление заказа в список
               list.AddZakaz(t, c);
            }
         }
      }
      catch (Exception e)
      {
         Console.WriteLine(e.Message);
      }
   }



                                                                       108