Ejemplo n.º 1
0
        public ActionResult Edit(RoomMetadataEntity model)
        {
            var room = _roomRepository.GetRoomInfo(model.Id);

            if (null == room || room.OrganizationId != CurrentOrganization.Id)
            {
                return(HttpNotFound());
            }

            var floor = _floorRepository.Get(model.FloorId);

            if (floor.OrganizationId != CurrentOrganization.Id)
            {
                return(HttpNotFound());
            }

            model.OrganizationId = CurrentOrganization.Id;
            model.BuildingId     = floor.BuildingId;

            // values to keep
            model.BeaconUid               = room.BeaconUid;
            model.GdoDeviceId             = room.GdoDeviceId;
            model.DistanceFromFloorOrigin = room.DistanceFromFloorOrigin;

            _roomRepository.Update(model);
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 2
0
 private async Task AssertRoomIsFromOrg(RoomMetadataEntity room)
 {
     if (null == room)
     {
         throw new ArgumentException();
     }
     if (room.OrganizationId != _contextService.CurrentOrganization.Id)
     {
         throw new AccessDeniedException("Access Denied", null);
     }
 }
Ejemplo n.º 3
0
        public ActionResult Create(RoomMetadataEntity model)
        {
            var floor = _floorRepository.Get(model.FloorId);

            if (floor.OrganizationId != CurrentOrganization.Id)
            {
                return(HttpNotFound());
            }

            model.Id             = null;
            model.OrganizationId = CurrentOrganization.Id;
            model.BuildingId     = floor.BuildingId;
            _roomRepository.Update(model);
            return(RedirectToAction("Index"));
        }
 private RoomInfo BuildRoomInfo(string roomName, bool canControl, RoomMetadataEntity roomMetadata, BuildingEntity building, FloorEntity floor)
 {
     return(new RoomInfo()
     {
         CurrentTime = _dateTimeService.Now,
         DisplayName = (roomName ?? "").Replace("(Meeting Room ", "("),
         CanControl = canControl,
         Size = roomMetadata.Size,
         BuildingId = roomMetadata.BuildingId,
         BuildingName = building.Name,
         FloorId = roomMetadata.FloorId,
         Floor = floor.Number,
         FloorName = floor.Name,
         DistanceFromFloorOrigin = roomMetadata.DistanceFromFloorOrigin ?? new Point(),
         Equipment = roomMetadata.Equipment,
         HasControllableDoor = !string.IsNullOrEmpty(roomMetadata.GdoDeviceId),
         BeaconUid = roomMetadata.BeaconUid,
     });
 }