public OperationalReportDto Put(int id, [FromBody] OperationalReportDto dto)
        {
            var entity = repository.Get <MaintenanceObject>(id);
            var report = entity.Report;

            report.StartMaintenance       = dto.StartMaintenance;
            report.EndMaintenance         = dto.EndMaintenance;
            report.UsageBeforeMaintenance = dto.UsageBeforeMaintenance;
            report.UsageAfterMaintenance  = dto.UsageAfterMaintenance;
            report.State                 = dto.State;
            report.OfferForPlan          = dto.OfferForPlan == null? null : repository.Get <MaintenanceType>(dto.OfferForPlan.Value);
            report.ReasonForOffer        = dto.ReasonForOffer == null? null: repository.Get <MaintenanceReason>(dto.ReasonForOffer.Value);
            report.UnplannedReason       = dto.UnplannedReason == null? null: repository.Get <MaintenanceReason>(dto.UnplannedReason.Value);
            report.ActualMaintenanceType = dto.ActualMaintenanceType == null ? null : repository.Get <MaintenanceType>(dto.ActualMaintenanceType.Value);

            repository.Save(entity);

            return(query.FindOperationalReportByObjectId(entity.Id));
        }