public async Task Update(OuterInnerResourcePnDbContext dbContext) { ResourceTimeRegistration resourceTimeRegistration = dbContext.ResourceTimeRegistrations.FirstOrDefault(x => x.Id == Id); if (resourceTimeRegistration == null) { throw new NullReferenceException($"Could not find area with id: {Id}"); } resourceTimeRegistration.InnerResourceId = InnerResourceId; resourceTimeRegistration.OuterResourceId = OuterResourceId; resourceTimeRegistration.DoneAt = DoneAt; resourceTimeRegistration.SDKCaseId = SDKCaseId; resourceTimeRegistration.SDKFieldValueId = SDKFieldValueId; resourceTimeRegistration.TimeInSeconds = TimeInSeconds; resourceTimeRegistration.TimeInMinutes = TimeInMinutes; resourceTimeRegistration.TimeInHours = TimeInHours; resourceTimeRegistration.SDKSiteId = SDKSiteId; if (dbContext.ChangeTracker.HasChanges()) { resourceTimeRegistration.UpdatedAt = DateTime.Now; resourceTimeRegistration.Version += 1; dbContext.ResourceTimeRegistrationVersions.Add(MapVersions(resourceTimeRegistration)); dbContext.SaveChanges(); } }
public async Task Delete(OuterInnerResourcePnDbContext dbContext) { ResourceTimeRegistration resourceTimeRegistration = dbContext.ResourceTimeRegistrations.FirstOrDefault(x => x.Id == Id); if (resourceTimeRegistration == null) { throw new NullReferenceException($"Could not find area with id: {Id}"); } resourceTimeRegistration.WorkflowState = eForm.Infrastructure.Constants.Constants.WorkflowStates.Removed; if (dbContext.ChangeTracker.HasChanges()) { resourceTimeRegistration.UpdatedAt = DateTime.Now; resourceTimeRegistration.Version += 1; dbContext.ResourceTimeRegistrationVersions.Add(MapVersions(resourceTimeRegistration)); dbContext.SaveChanges(); } }
private ResourceTimeRegistrationVersion MapVersions(ResourceTimeRegistration resourceTimeRegistration) { ResourceTimeRegistrationVersion resourceTimeRegistrationVersion = new ResourceTimeRegistrationVersion(); resourceTimeRegistrationVersion.InnerResourceId = resourceTimeRegistration.InnerResourceId; resourceTimeRegistrationVersion.OuterResourceId = resourceTimeRegistration.OuterResourceId; resourceTimeRegistrationVersion.DoneAt = resourceTimeRegistration.DoneAt; resourceTimeRegistrationVersion.SDKCaseId = resourceTimeRegistration.SDKCaseId; resourceTimeRegistrationVersion.SDKFieldValueId = resourceTimeRegistration.SDKFieldValueId; resourceTimeRegistrationVersion.TimeInSeconds = resourceTimeRegistration.TimeInSeconds; resourceTimeRegistrationVersion.TimeInMinutes = resourceTimeRegistration.TimeInMinutes; resourceTimeRegistrationVersion.TimeInHours = resourceTimeRegistration.TimeInHours; resourceTimeRegistrationVersion.SDKSiteId = resourceTimeRegistration.SDKSiteId; resourceTimeRegistrationVersion.Version = resourceTimeRegistration.Version; resourceTimeRegistrationVersion.MachineAreaTimeRegistrationId = resourceTimeRegistration.Id; resourceTimeRegistrationVersion.CreatedAt = resourceTimeRegistration.CreatedAt; resourceTimeRegistrationVersion.UpdatedAt = resourceTimeRegistration.UpdatedAt; return(resourceTimeRegistrationVersion); }