public IHttpActionResult PutRoom_ElectricityConsumption(int id, Room_ElectricityConsumption room_ElectricityConsumption)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (id != room_ElectricityConsumption.Id)
            {
                return BadRequest();
            }


            try
            {
                _Room_ElectricityConsumptionService.Update(room_ElectricityConsumption);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!Room_ElectricityConsumptionExists(id))
                {
                    return NotFound();
                }
                else
                {
                    throw;
                }
            }

            return StatusCode(HttpStatusCode.NoContent);
        }
        public IHttpActionResult PostRoom_ElectricityConsumption(Room_ElectricityConsumption room_ElectricityConsumption)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            _Room_ElectricityConsumptionService.Create(room_ElectricityConsumption);

            return CreatedAtRoute("DefaultApi", new { id = room_ElectricityConsumption.Id }, room_ElectricityConsumption);
        }
        public async Task<ActionResult> Index(int? Id, string sortOrder, string currentFilter, int? page)
        {
            Room_ElectricityConsumption room_ElectricityConsumption = new Room_ElectricityConsumption();
            SearchRoom_ElectricityConsumption searchRoom_ElectricityConsumption = new SearchRoom_ElectricityConsumption();

            if (Id != null)
            { room_ElectricityConsumption = await _Room_ElectricityConsumptionRepository.GetById(Id.Value.ToString ());
            await GetType(room_ElectricityConsumption.RoomAllocationId );
            }
            else
                await GetType(1);
            await  GetSearchType(1);

            var room_ElectricityConsumptions = getList(sortOrder, currentFilter, page, await _Room_ElectricityConsumptionRepository.GetAll());
            Room_ElectricityConsumptionViewModel model = new Room_ElectricityConsumptionViewModel { List = room_ElectricityConsumptions, Room_ElectricityConsumption = room_ElectricityConsumption, SearchRoom_ElectricityConsumption = searchRoom_ElectricityConsumption };
            return View(model);
        }
        public async Task<ActionResult> Search(SearchRoom_ElectricityConsumption searchRoom_ElectricityConsumption)
        {
           Room_ElectricityConsumption room_ElectricityConsumption = new Room_ElectricityConsumption();
           await GetType(1);

           var roomelectric = await _Room_ElectricityConsumptionRepository.GetAll();
           roomelectric = roomelectric.Where(r => ((!string.IsNullOrEmpty(searchRoom_ElectricityConsumption.SearchFromDate.ToString())) && r.ForDate >= searchRoom_ElectricityConsumption.SearchFromDate && r.ForDate  >= searchRoom_ElectricityConsumption.SearchToDate)
                                          || ((searchRoom_ElectricityConsumption.SearchRoomAllocationId != 0) && searchRoom_ElectricityConsumption.SearchRoomAllocationId == r.RoomAllocationId)
                                          
                                      );

            var roomelectric_list = getList("", "", 1, roomelectric);

            await GetSearchType(searchRoom_ElectricityConsumption.SearchRoomAllocationId);
            Room_ElectricityConsumptionViewModel model = new Room_ElectricityConsumptionViewModel { List = roomelectric_list,  Room_ElectricityConsumption   = room_ElectricityConsumption, SearchRoom_ElectricityConsumption   = searchRoom_ElectricityConsumption };
            return View("Index", model);

        }