Esempio n. 1
0
        public async Task <IActionResult> AddDeviceAttribute([FromBody] DeviceAttributeSaveResource deviceAttributeSaveResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var deviceAttribute = _mapper.Map <MdaDeviceAttribute>(deviceAttributeSaveResource);

            /*  Confirm Attribute Type Does Not Exist */
            var query = new MdaDeviceAttributeQuery {
                DeviceId = deviceAttribute.DeviceId,
                DeviceAttributeTypeId = deviceAttribute.DeviceAttributeTypeId
            };
            var deviceAttributeFromRepo = await _repo.GetDeviceAttributes(query);

            if (deviceAttributeFromRepo.Any())
            {
                return(BadRequest("This attribute type already exists for the specified device"));
            }

            deviceAttribute.CreatedBy = User.Identity.Name;

            _repo.Add(deviceAttribute);

            if (await _repo.SaveAll())
            {
                return(Ok(deviceAttribute));
            }

            return(BadRequest("Failed to add device attribute"));
        }