コード例 #1
0
 protected override IServiceRequestDto <IServiceRequestOptionDto, IServiceRequestUserInputDto> Create(int performingUserId, IServiceRequestDto <IServiceRequestOptionDto, IServiceRequestUserInputDto> serviceRequestDto)
 {
     using (var context = new PrometheusContext())
     {
         var serviceRequest = context.ServiceRequests.Find(serviceRequestDto.Id);
         if (serviceRequest != null)
         {
             throw new InvalidOperationException(string.Format("Service Request with ID {0} already exists.", serviceRequestDto.Id));
         }
         var saved = context.ServiceRequests.Add(ManualMapper.MapDtoToServiceRequest(serviceRequestDto));
         context.SaveChanges(performingUserId);
         return(ManualMapper.MapServiceRequestToDto(saved));
     }
 }
コード例 #2
0
 protected override IServiceRequestDto <IServiceRequestOptionDto, IServiceRequestUserInputDto> Update(int performingUserId, IServiceRequestDto <IServiceRequestOptionDto, IServiceRequestUserInputDto> serviceRequestDto)
 {
     using (var context = new PrometheusContext())
     {
         if (!context.ServiceRequests.Any(x => x.Id == serviceRequestDto.Id))
         {
             throw new InvalidOperationException(string.Format("Service Request with ID {0} cannot be updated since it does not exist.", serviceRequestDto.Id));
         }
         var updated = ManualMapper.MapDtoToServiceRequest(serviceRequestDto);
         context.ServiceRequests.Attach(updated);
         context.Entry(updated).State = EntityState.Modified;
         context.SaveChanges(performingUserId);
         return(ManualMapper.MapServiceRequestToDto(updated));
     }
 }
コード例 #3
0
        private int CreateFakeRequest(ServiceRequestState state)
        {
            var fakeRequest = A.Fake <IServiceRequestDto <IServiceRequestOptionDto, IServiceRequestUserInputDto> >();

            A.CallTo(() => fakeRequest.State).Returns(state);
            A.CallTo(() => fakeRequest.CreationDate).Returns(DateTime.UtcNow);
            A.CallTo(() => fakeRequest.RequestedForDate).Returns(DateTime.UtcNow);
            A.CallTo(() => fakeRequest.DepartmentId).Returns(DepartmentId);
            A.CallTo(() => fakeRequest.RequestedByUserId).Returns(UserId);

            using (var context = new PrometheusContext())
            {
                var request = ManualMapper.MapDtoToServiceRequest(fakeRequest);
                context.ServiceRequests.Add(request);
                context.SaveChanges();

                return(request.Id);
            }
        }