예제 #1
0
        public async Task <IActionResult> Update(RiskDTO riskDto, int id)
        {
            var risk = _mapper.Map <Risk>(riskDto);
            await _riskService.Update(risk, id);

            return(Ok(risk));
        }
        public bool UpdateRisk(UpdateRiskCommand command)
        {
            var newValue = _riskService.Update(command);

            _relationshipService.Delete(x => x.FromType == ObjectType.Risk && x.ToType == ObjectType.Vulnerabilitie && x.FromId == command.RootId);
            _relationshipService.Delete(x => x.FromType == ObjectType.Risk && x.ToType == ObjectType.Risk && x.FromId == command.RootId);
            _relationshipService.Delete(x => x.FromType == ObjectType.Risk && x.ToType == ObjectType.Treatment && x.FromId == command.RootId);
            foreach (var item in command.Vulnerabilities)
            {
                _relationshipService.Create(new CreateRelationshipCommand()
                {
                    FromType = ObjectType.Risk, FromId = command.RootId, ToType = ObjectType.Vulnerabilitie, ToId = item
                });
            }

            foreach (var item in command.Risks)
            {
                _relationshipService.Create(new CreateRelationshipCommand()
                {
                    FromType = ObjectType.Risk, FromId = command.RootId, ToType = ObjectType.Risk, ToId = item
                });
            }

            foreach (var item in command.Treatments)
            {
                _relationshipService.Create(new CreateRelationshipCommand()
                {
                    FromType = ObjectType.Risk, FromId = command.RootId, ToType = ObjectType.Treatment, ToId = item.Id
                });
            }

            return(true);
        }
예제 #3
0
        public IActionResult UpdateRisk(string rid, [FromBody] FullRisk fullRisk)
        {
            fullRisk.Id = Guid.Parse(rid);
            Risk risk = fullRisk.GetRisk();
            List <RiskProperty> riskProperties = ProduceRiskModelProperties(fullRisk);

            try
            {
                _riskService.UpdateProperties(riskProperties);
                _riskService.Update(risk);
                return(Ok(risk));
            }
            catch (AppException ex)
            {
                // return error message if there was an exception
                return(BadRequest(new { message = ex.Message }));
            }
        }