public void Given_valid_request_When_SaveRiskAssessment_Then_should_call_correct_methods()
        {

            //Given
            var accidentRecordService = GetTarget();

            //When
            var request = new SaveAccidentRecordSummaryRequest
                              {
                                  CompanyId = default(long),
                                  Reference = "Reference",
                                  Title = "Title"
                              };

            accidentRecordService.CreateAccidentRecord(request);

            //Then
            _accidentRecordRepository.Verify(x=>x.SaveOrUpdate(It.IsAny<AccidentRecord>()));
            _jurisdictionRepository.Verify(x => x.GetById(It.IsAny<long>()));
            _userRepository.Verify(x => x.GetByIdAndCompanyId(_user.Id, request.CompanyId), Times.Once());

        }
        public void SaveAccidentRecordSummary(SaveAccidentRecordSummaryRequest request)
        {
            _log.Add(request);
            var user = _userForAuditingRepository.GetByIdAndCompanyId(request.UserId, request.CompanyId);
            var jurisdiction = _jurisdictionRepository.GetById(request.JurisdictionId);

            var accidentRecord = _accidentRecordRepository.GetById(request.AccidentRecordId);
            accidentRecord.SetSummaryDetails(request.Title, request.Reference, jurisdiction, user);
            _accidentRecordRepository.SaveOrUpdate(accidentRecord);
        }
        public long CreateAccidentRecord(SaveAccidentRecordSummaryRequest request)
        {
            _log.Add(request);
            var user = _userForAuditingRepository.GetByIdAndCompanyId(request.UserId, request.CompanyId);
            var jurisdiction = _jurisdictionRepository.GetById(request.JurisdictionId);

            var accidentRecord = AccidentRecord.Create(request.Title, request.Reference, jurisdiction, request.CompanyId, user);
            _accidentRecordRepository.SaveOrUpdate(accidentRecord);

            return accidentRecord.Id;
        }