Exemplo n.º 1
0
        public async Task <IActionResult> Put(UpdateAssetApiDto assetApiDto)
        {
            var assetDto = _mapper.Map <AssetDto>(assetApiDto);

            //assetApiDto.LastUpdatedDate = DateTime.Now;

            if (assetApiDto.ChangePlanId != null && assetApiDto.ChangePlanId != Guid.Empty)
            {
                var changePlanId  = assetApiDto.ChangePlanId ?? Guid.Empty;
                var originalAsset = _mapper.Map <GetAssetApiDto>(await _assetService.GetAssetAsync(assetApiDto.Id));
                //this is when you are updating a change plan's created asset
                if (originalAsset == null)
                {
                    var createdItem = await _changePlanService.GetChangePlanItemAsync(changePlanId, assetApiDto.Id);

                    var    newAsset = _mapper.Map <CreateAssetApiDto>(assetApiDto);
                    string newData  = JsonConvert.SerializeObject(newAsset);
                    createdItem.NewData = newData;
                    await _changePlanService.UpdateChangePlanItemAsync(createdItem);

                    return(NoContent());
                }
                var newInfo = JsonConvert.SerializeObject(assetApiDto);
                var oldInfo = JsonConvert.SerializeObject(originalAsset);
                await _changePlanService.CreateChangePlanItemAsync(changePlanId, assetApiDto.Id, newInfo, oldInfo);
            }
            else
            {
                await _assetService.UpdateAssetAsync(assetDto);
            }

            return(NoContent());
        }
Exemplo n.º 2
0
        private static UpdateAssetApiDto UpdateAssetApiDto()
        {
            var powerPorts = new List <UpdateAssetPowerPortApiDto>()
            {
                new UpdateAssetPowerPortApiDto()
                {
                    Id        = Guid.NewGuid(),
                    PduPortId = Guid.NewGuid()
                },
                new UpdateAssetPowerPortApiDto()
                {
                    Id        = Guid.NewGuid(),
                    PduPortId = Guid.NewGuid()
                }
            };
            var networkPorts = new List <UpdateAssetNetworkPortApiDto>()
            {
                new UpdateAssetNetworkPortApiDto()
                {
                    Id = Guid.NewGuid(),
                    ConnectedPortId = Guid.NewGuid(),
                    MacAddress      = "00:11:22:33:44:55",
                },
                new UpdateAssetNetworkPortApiDto()
                {
                    Id = Guid.NewGuid(),
                    ConnectedPortId = Guid.NewGuid(),
                    MacAddress      = "aa:bb:cc:dd:ee:ff",
                }
            };
            var apiDto = new UpdateAssetApiDto()
            {
                Id           = Guid.NewGuid(),
                ModelId      = Guid.NewGuid(),
                RackId       = Guid.NewGuid(),
                OwnerId      = Guid.NewGuid(),
                Hostname     = "foo-hostname",
                RackPosition = 20,
                Comment      = "this is a comment",
                PowerPorts   = powerPorts,
                NetworkPorts = networkPorts,
                AssetNumber  = 100000
            };

            return(apiDto);
        }