private void DeleteAllAffiliationsAndChildren(Snapshot_WorksWriter writer) { var allAffiliations = _snapshotAffiliationRepository.GetAllAffiliationsForWriterSnapshotId(writer.SnapshotWorksWriterId); if (allAffiliations != null) { foreach (var affilation in allAffiliations) { var baseAffiliations = _affiliationBaseRepository.GetAllAffiliationBasesForAffilationId( affilation.SnapshotAffiliationId); if (baseAffiliations != null) { foreach (var baseAffiliation in baseAffiliations) { _affiliationBaseRepository.DeleteAffilationByAffiliationBaseSnapshotId( baseAffiliation.SnapshotAffiliationBaseId); } } _snapshotAffiliationRepository.DeleteAffilationByAffiliationSnapshotId( affilation.SnapshotAffiliationId); } } }
public Snapshot_WorksWriter SaveWorksWriter(Snapshot_WorksWriter worksWriter) { using (var context = new DataContext()) { context.Snapshot_WorksWriters.Add(worksWriter); context.SaveChanges(); return(worksWriter); } }
private List <Snapshot_WorksWriter> CastToSnapshotWorksWriter(List <WorksWriter> writers, int workTrackId) { var snapshotList = new List <Snapshot_WorksWriter>(); if (writers != null) { foreach (var writer in writers) { var snapshot = new Snapshot_WorksWriter(); //cast writer base! snapshot.CloneWorksTrackId = workTrackId; if (writer.Contribution != null) { snapshot.Contribution = (int)writer.Contribution; } if (writer.OriginalPublishers != null) { snapshot.OriginalPublishers = CastOriginalPublishersToSnapshot(writer.OriginalPublishers, writer.CaeNumber); } if (writer.LicenseProductRecordingWriter != null) { // snapshot.LicenseProductRecordingWriter = TURNED OFF *** // CastToLicensProductRecordingSnapshot(writer.LicenseProductRecordingWriter, writer.CaeNumber); } snapshot.ParentSongDuration = writer.ParentSongDuration; snapshot.CloneCaeNumber = writer.CaeNumber; snapshot.IpCode = writer.IpCode; snapshot.FullName = writer.FullName; snapshot.Controlled = writer.Controlled; snapshot.CapacityCode = writer.CapacityCode; snapshot.Capacity = writer.Capacity; snapshot.MechanicalCollectablePercentage = writer.MechanicalCollectablePercentage.ToString(); snapshot.MechanicalOwnershipPercentage = writer.MechanicalOwnershipPercentage.ToString(); snapshot.Affiliation = CastToAffiliationSnapshot(writer.Affiliation, writer.CaeNumber); if (writer.KnownAs != null) { snapshot.KnownAs = CastToKnownAs(writer.KnownAs, writer.CaeNumber); } snapshotList.Add(snapshot); } } return(snapshotList); }
private void DeleteOriginalPublisherSnapshotAndChildern(Snapshot_WorksWriter writer) { var allOriginalPublishers = _snapshotOriginalPublisherRepository.GetAllOriginalPublishersForSnapshotWriterId(writer.SnapshotWorksWriterId); foreach (var originalPublisher in allOriginalPublishers) { var affiliationList = _originalPublisherAffiliationRepository.GetAllOriginalPublisherAffiliationsByOriginalBuplisherId( originalPublisher.SnapshotOriginalPublisherId); if (affiliationList != null) { foreach (var affiliation in affiliationList) { var affiliationBases = _originalPubAffiliationBaseRepository.GetAllOriginalPubAffiliationBasesByAffilationId( affiliation.SnapshotOriginalPublisherAffiliationId); if (affiliationBases != null) { foreach (var affiliationBase in affiliationBases) { _originalPubAffiliationBaseRepository.DeletePhoneBySnapshotPhoneId( affiliationBase.SnapshotOriginalPubAffiliationBaseId); } } _originalPublisherAffiliationRepository.DeleteOriginalPublisherSnapshotById( affiliation.SnapshotOriginalPublisherAffiliationId); } } var admins = _snapshotAdministratorRepository.GetAllAdministratorsForOriginalPublisherId( originalPublisher.SnapshotOriginalPublisherId); if (admins != null) { foreach (var admin in admins) { var adminAffiliations = _adminAffiliationRepository.GetAllAdminAffiliationsForSnapshotAdminId( admin.SnapshotAdministratorId); if (adminAffiliations != null) { foreach (var adminAffiliation in adminAffiliations) { var adminAFfiliationBase = _adminAffiliationBaseRepository.GetAllAdminAffiliationBaseForSnapshotAdminId( adminAffiliation.SnapshotAdminAffiliationId); if (adminAFfiliationBase != null) { foreach (var adminBase in adminAFfiliationBase) { _adminAffiliationBaseRepository.DeleteConfigurationSnapshot( adminBase.SnapshotAdminAffiliationBaseId); } } _adminAffiliationRepository.DeletePhoneBySnapshotPhoneId( adminAffiliation.SnapshotAdminAffiliationId); } } _snapshotAdministratorRepository.DeleteConfigurationSnapshot(admin.SnapshotAdministratorId); } } var knownAsList = _snapshotKnownAsRepository.GetAllKnownAsForWriterCaeCode( originalPublisher.CloneCaeNumber); if (knownAsList != null) { foreach (var knownAs in knownAsList) { _snapshotKnownAsRepository.DeleteKnownAsBySnapshotId(knownAs.SnapshotKnownAsId); } } _snapshotOriginalPublisherRepository.DeleteOriginalPublisherSnapshotBySnapshotId( originalPublisher.SnapshotOriginalPublisherId); } }