Пример #1
0
        public SmartController()
        {
            var connectionString = System.Configuration.ConfigurationManager.
                                   ConnectionStrings["ModuleContext"].ConnectionString;
            NinjectModule smartModule   = new SmartModule();
            NinjectModule serviceModule = new ServiceModule(connectionString);
            var           kernel        = new StandardKernel(smartModule, serviceModule);
            var           processor     = kernel.Get <ISmartService>();

            smartService = processor;
        }
Пример #2
0
 public MvcController(ISmartService smartService)
 {
 }
Пример #3
0
        private void AdditionalMenu(ISmartService smartService, string str)
        {
            ArrayList Places = new ArrayList {
                "In house", "In room"
            };

            ArrayList Durations = new ArrayList {
                "Day", "Month", "Year"
            };

            int option;

            switch (str)
            {
            case "EnterValueOfTemperature":
                option = ChooseOption("Back", Places);
                if (option == 0)
                {
                    return;
                }
                EnterValueMenu(smartService, (string)Places[option - 1]);
                break;

            case "CalculateTheAverageTemperature":
                option = ChooseOption("Back", Places);
                if (option == 0)
                {
                    return;
                }
                CalculateAverageMenu(smartService, (string)Places[option - 1]);
                break;
            }

            void EnterValueMenu(ISmartService smartService, string myStr)
            {
                int    number;
                string data;
                int    house;
                int    room;

                switch (myStr)
                {
                case "In house":
                    houses = GetHouseList();
                    number = ChooseOption("Back", houses);
                    if (number == 0)
                    {
                        return;
                    }
                    house = houses[number - 1].Id;

                    Console.WriteLine("Enter value of temperature in house");
                    data = Console.ReadLine();
                    while (IsDigit(data) == false)
                    {
                        data = Console.ReadLine();
                    }
                    try
                    {
                        smartService.EnterValueOfTemperature(Convert.ToInt32(data), house);
                    }
                    catch (ValidationException ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                    break;

                case "In room":
                    houses = GetHouseList();
                    number = ChooseOption("Back", houses);
                    if (number == 0)
                    {
                        return;
                    }
                    house = houses[number - 1].Id;

                    var RoomsDtos  = smartService.ShowRoomsInHouse(house);
                    var mapperRoom = new MapperConfiguration(cfg => cfg.CreateMap <RoomDTO, RoomViewModel>()).CreateMapper();
                    var rooms      = mapperRoom.Map <IEnumerable <RoomDTO>, List <RoomViewModel> >(RoomsDtos);

                    int numberRoom = ChooseOption("Back", rooms);
                    if (numberRoom == 0)
                    {
                        return;
                    }
                    room = rooms[numberRoom - 1].Id;
                    Console.WriteLine($"Enter value of temperature in room {room} house {house}");
                    data = Console.ReadLine();
                    while (IsDigit(data) == false)
                    {
                        data = Console.ReadLine();
                    }
                    try
                    {
                        smartService.EnterValueOfTemperature(house, room, Convert.ToInt32(data));
                    }
                    catch (ValidationException ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                    break;
                }
            }

            void CalculateAverageMenu(ISmartService smartService, string myStr)
            {
                int    number;
                int    numberDuration;
                int    numberRoom;
                int    house;
                int    room;
                int    duration;
                string strDur = "";

                switch (myStr)
                {
                case "In house":
                    houses = GetHouseList();
                    number = ChooseOption("Back", houses);
                    if (number == 0)
                    {
                        return;
                    }
                    house = houses[number - 1].Id;

                    numberDuration = ChooseOption("Back", Durations);
                    if (numberDuration == 0)
                    {
                        return;
                    }
                    duration = numberDuration - 1;
                    if (duration == 0)
                    {
                        strDur = "day";
                    }
                    else
                    if (duration == 1)
                    {
                        strDur = "month";
                    }
                    else
                    {
                        strDur = "year";
                    }
                    try
                    {
                        Console.WriteLine($"Average for {strDur} in House Id {house} is {smartService.CalculateAverage(house, duration, 0)}");
                    }
                    catch (ValidationException ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                    break;

                case "In room":
                    houses = GetHouseList();
                    number = ChooseOption("Back", houses);
                    if (number == 0)
                    {
                        return;
                    }
                    house = houses[number - 1].Id;

                    var RoomsDtos = smartService.ShowRoomsInHouse(house);

                    var mapperRoom = new MapperConfiguration(cfg => cfg.CreateMap <RoomDTO, RoomViewModel>()).CreateMapper();
                    var rooms      = mapperRoom.Map <IEnumerable <RoomDTO>, List <RoomViewModel> >(RoomsDtos);

                    numberRoom = ChooseOption("Back", rooms);
                    if (numberRoom == 0)
                    {
                        return;
                    }
                    room = rooms[numberRoom - 1].Id;

                    numberDuration = ChooseOption("Back", Durations);
                    if (numberDuration == 0)
                    {
                        return;
                    }
                    duration = numberDuration - 1;

                    if (duration == 0)
                    {
                        strDur = "day";
                    }
                    else
                    if (duration == 1)
                    {
                        strDur = "month";
                    }
                    else
                    {
                        strDur = "year";
                    }

                    try {
                        Console.WriteLine($"Average for {strDur} in House Id {house} in Room ID {room} is {smartService.CalculateAverage(house, duration, room)}");
                    }
                    catch (ValidationException ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                    break;
                }
            }
        }