コード例 #1
0
        private void tbTrackReleases_ButtonClicked(object sender, Framework.UI.Controls.MRTitleBar.ActionButtonEventArgs e)
        {
            if (e.Action == Framework.UI.Controls.MRTitleBar.eButtonAction.Add)
            {
                var record = new EditXmlFileModel();

                using (var frm = new FileForm(record))
                {
                    if (frm.ShowDialog() == DialogResult.OK)
                    {
                        Model.Files.Add(record);
                        dgvFiles.ClearSelection();

                        var model = new AudioAlbumModel()
                        {
                            FullFileName = record.FullName
                        };
                        using (var frmEdit = new Generation.ERN_382.ERN_382GenerationFormAudioAlbumMusicOnly(model))
                        {
                            frmEdit.ShowDialog();
                        }
                    }
                }
            }
        }
コード例 #2
0
        private void ERN_382GenerationFormAudioAlbumMusicOnly_Load(object sender, EventArgs e)
        {
            AudioAlbumModel m = GetModelFromFile(Model.FullFileName);

            if (m != null)
            {
                Model.CopyFromSource(m);
                lblPath.Text = Model.FullFileName;
            }
            InitBindings();
            dgvSoundRecordingsAndReleases.ClearSelection();
        }
コード例 #3
0
        private AudioAlbumModel GetModelFromFile(string fileName)
        {
            AudioAlbumModel ret = null;

            try
            {
                ret = (AudioAlbumModel)Binder.GetModelFromXmlObject(Binder.GetXmlObjectFromFile(fileName));
            }
            catch (Exception ex)
            {
                MRMessageBox.Show(string.Format("Unable to read file {1}.\n{0}", ex.Message, fileName), MRMessageBox.eMessageBoxStyle.OK, MRMessageBox.eMessageBoxType.Error);
            }

            return(ret);
        }
コード例 #4
0
        private void dgvFiles_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            EditXmlFileModel record = (EditXmlFileModel)dgvFiles.CurrentRow.DataBoundItem;

            if (record != null)
            {
                var model = new AudioAlbumModel()
                {
                    FullFileName = record.FullName
                };
                var frm = new Generation.ERN_382.ERN_382GenerationFormAudioAlbumMusicOnly((AudioAlbumModel)model)
                {
                    Editable = true
                };
                frm.MdiParent = Globals.MDIMainForm;
                frm.Show();
            }
        }
コード例 #5
0
        //private static NewReleaseMessage BindToObject()
        //{
        //    if (XmlObject == null)
        //    {
        //        XmlObject = new NewReleaseMessage()
        //        {
        //            ReleaseProfileVersionId = "CommonReleaseTypesTypes/13/AudioAlbumMusicOnly",
        //            LanguageAndScriptCode = "en",
        //            MessageSchemaVersionId = "ern/382",
        //            IsBackfill = false,
        //            IsBackfillSpecified = true
        //        };
        //    }
        //    XmlObject.UpdateIndicator = UpdateIndicator.OriginalMessage;
        //    if (XmlObject.MessageHeader == null)
        //    {
        //        XmlObject.MessageHeader = new MessageHeader();
        //    }

        //    XmlObject.MessageHeader.MessageId = messageID;
        //    XmlObject.MessageHeader.MessageThreadId = messageID;
        //    if (XmlObject.MessageHeader.MessageSender == null)
        //    {
        //        XmlObject.MessageHeader.MessageSender = new MessagingParty();
        //    }
        //    if (XmlObject.MessageHeader.MessageSender.PartyId == null)
        //    {
        //        PartyId[] senderIDs = { new PartyId() };
        //        XmlObject.MessageHeader.MessageSender.PartyId = senderIDs;
        //    }
        //    XmlObject.MessageHeader.MessageSender.PartyId[0].Value = senderPartyID;

        //    if (XmlObject.MessageHeader.MessageSender.PartyName == null)
        //    {
        //        XmlObject.MessageHeader.MessageSender.PartyName = new PartyName();
        //    }
        //    if (XmlObject.MessageHeader.MessageSender.PartyName.FullName == null)
        //    {
        //        XmlObject.MessageHeader.MessageSender.PartyName.FullName = new Name();
        //    }
        //    XmlObject.MessageHeader.MessageSender.PartyName.FullName.Value = senderPartyName;

        //    if (XmlObject.MessageHeader.MessageRecipient == null)
        //    {
        //        var o = new MessagingParty();
        //        MessagingParty[] messageRecipient = { o };
        //        XmlObject.MessageHeader.MessageRecipient = messageRecipient;
        //    }
        //    if (XmlObject.MessageHeader.MessageRecipient[0].PartyId == null)
        //    {
        //        PartyId[] recipientIDs = { new PartyId() };
        //        XmlObject.MessageHeader.MessageRecipient[0].PartyId = recipientIDs;
        //    }

        //    XmlObject.MessageHeader.MessageRecipient[0].PartyId[0].Value = recipientPartyID;

        //    if (XmlObject.MessageHeader.MessageRecipient[0].PartyName == null)
        //    {
        //        XmlObject.MessageHeader.MessageRecipient[0].PartyName = new PartyName();
        //    }
        //    if (XmlObject.MessageHeader.MessageRecipient[0].PartyName.FullName == null)
        //    {
        //        XmlObject.MessageHeader.MessageRecipient[0].PartyName.FullName = new Name();
        //    }

        //    XmlObject.MessageHeader.MessageRecipient[0].PartyName.FullName.Value = recipientPartyName;
        //    XmlObject.MessageHeader.MessageCreatedDateTime = new DateTime(messageCreatedDateTime.Value.Ticks, DateTimeKind.Local);

        //    XmlObject.UpdateIndicator = updateIndicator;
        //    XmlObject.UpdateIndicatorSpecified = true;

        //    if (XmlObject.ReleaseList == null)
        //    {
        //        XmlObject.ReleaseList = new ReleaseList();
        //    }
        //    if (XmlObject.ReleaseList.Release == null || XmlObject.ReleaseList.Release.Length == 0)
        //    {
        //        XmlObject.ReleaseList.Release = new Release[0];
        //    }
        //    if (XmlObject.ReleaseList.Release[0].ReleaseId == null || XmlObject.ReleaseList.Release[0].ReleaseId.Length == 0)
        //    {
        //        XmlObject.ReleaseList.Release[0].ReleaseId = new ReleaseId[0];
        //    }
        //    XmlObject.ReleaseList.Release[0].ReleaseId[0].ICPN.Value = EAN;


        //    return XmlObject;
        //}

        //private void BindToForm()
        //{
        //    if (XmlObject != null)
        //    {
        //        if (XmlObject.MessageHeader != null)
        //        {
        //            txtMessageID.Text = XmlObject.MessageHeader.MessageId;
        //            if (XmlObject.MessageHeader.MessageSender.PartyId.Length > 0)
        //            {
        //                txtMessageSender_PartyID.Text = XmlObject.MessageHeader.MessageSender.PartyId[0].Value;
        //            }
        //            if (XmlObject.MessageHeader.MessageSender.PartyName != null && XmlObject.MessageHeader.MessageSender.PartyName.FullName != null)
        //            {
        //                txtMessageSender_PartyName.Text = XmlObject.MessageHeader.MessageSender.PartyName.FullName.Value;
        //            }
        //            if (XmlObject.MessageHeader.MessageRecipient != null && XmlObject.MessageHeader.MessageRecipient.Length > 0 && XmlObject.MessageHeader.MessageRecipient[0].PartyId != null && XmlObject.MessageHeader.MessageRecipient[0].PartyId.Length > 0)
        //            {
        //                txtMessageRecipient_PartyID.Text = XmlObject.MessageHeader.MessageRecipient[0].PartyId[0].Value;
        //            }
        //            if (XmlObject.MessageHeader.MessageRecipient != null && XmlObject.MessageHeader.MessageRecipient.Length > 0 && XmlObject.MessageHeader.MessageRecipient[0].PartyName != null && XmlObject.MessageHeader.MessageRecipient[0].PartyName.FullName != null)
        //            {
        //                txtMessageRecipient_PartyName.Text = XmlObject.MessageHeader.MessageRecipient[0].PartyName.FullName.Value;
        //            }
        //            dpMessageCreatedDateTime.Value = XmlObject.MessageHeader.MessageCreatedDateTime;

        //            var val = ((List<ComboBoxItem>)cbUpdateIndicator.DataSource).Find(x => (UpdateIndicator)x.Value == XmlObject.UpdateIndicator);
        //            for (int i = 0; i < cbUpdateIndicator.Items.Count; i++)
        //            {
        //                if (cbUpdateIndicator.Items[i] == val)
        //                {
        //                    cbUpdateIndicator.SelectedIndex = i;
        //                }
        //            }

        //            txtEAN.Text = "";
        //            if (XmlObject.ReleaseList != null && XmlObject.ReleaseList.Release != null && XmlObject.ReleaseList.Release.Length > 0 && XmlObject.ReleaseList.Release[0].ReleaseId != null && XmlObject.ReleaseList.Release[0].ReleaseId.Length > 0)
        //            {
        //                txtEAN.Text = XmlObject.ReleaseList.Release[0].ReleaseId[0].ICPN.Value;
        //            }
        //        }
        //    }
        //}
        //public override IXmlObject GetXmlObject()
        //{
        //    var ret = new NewReleaseMessage()
        //    {
        //        ReleaseProfileVersionId = "CommonReleaseTypes/13/AudioSingle",
        //        LanguageAndScriptCode ="en",
        //        MessageSchemaVersionId = "ern/382"
        //    };

        //    PartyId[] senderIDs = { new PartyId() { Value = "DPID_OF_THE_SENDER" } };
        //    PartyId[] recipientIDs = { new PartyId() { Value = "DPID_OF_THE_RECIPIENT" } };
        //    var o = new MessagingParty() { PartyId = recipientIDs };
        //    MessagingParty[] messageRecipient = { o };

        //    ret.MessageHeader = new MessageHeader()
        //    {
        //        MessageThreadId = "", // unique za seriju poruka
        //        MessageId = "", // svaka poruka ima ovo unique (new guid ili sl)
        //        MessageSender = new MessagingParty() { PartyId = senderIDs },
        //        MessageRecipient = messageRecipient,
        //        MessageCreatedDateTime = DateTime.Now
        //    };

        //    ret.UpdateIndicator = UpdateIndicator.OriginalMessage;
        //    ret.UpdateIndicatorSpecified = true;
        //    ret.IsBackfill = false;
        //    ret.IsBackfillSpecified = true;

        //    ret.ResourceList = new ResourceList();
        //    var lsSoundRecordings = new List<SoundRecording>();
        //    lsSoundRecordings.Add(
        //        new SoundRecording()
        //        {
        //            SoundRecordingCollectionReferenceList = new SoundRecordingCollectionReferenceList() {  SoundRecordingCollectionReference = new SoundRecordingCollectionReference[] { new SoundRecordingCollectionReference() {  SequenceNumber = "1" } } },
        //            SoundRecordingType = new SoundRecordingType1() {  Value =  SoundRecordingType.MusicalWorkSoundRecording },
        //            SoundRecordingId = new List<SoundRecordingId>() { new SoundRecordingId() {  ISRC = "CASE00000001" } }.ToArray(),
        //            IndirectSoundRecordingId = new List<MusicalWorkId>() { new MusicalWorkId() { ISWC = "T1234567890" } }.ToArray(), // ovo maknuti
        //            ResourceReference = "A1",
        //            ReferenceTitle = new ReferenceTitle() {  TitleText = new TitleText() { Value = "Prva pjesma" } },
        //            Duration = "PT3M33S",
        //            RightsAgreementId = new RightsAgreementId() { ProprietaryId = new ProprietaryId[] { new ProprietaryId() { Value = "DPID:xxx" } } }
        //        }
        //    );
        //    ret.ResourceList.SoundRecording = lsSoundRecordings.ToArray();
        //    var lsImages = new List<Image>();
        //    var lsImageId = new List<ResourceProprietaryId>();
        //    var lsProprietaryId = new List<ProprietaryId>();
        //    var lsImageDetailsByTerritory = new List<ImageDetailsByTerritory>();
        //    lsImageDetailsByTerritory.Add(
        //        new ImageDetailsByTerritory()
        //                {
        //                    ParentalWarningType = new ParentalWarningType1[] { new ParentalWarningType1() {  Value = ParentalWarningType.NotExplicit } },
        //                }
        //        );
        //    lsProprietaryId.Add(
        //        new ProprietaryId() {  Namespace = "DPID:xxx", Value = "PID0001" }
        //    );
        //    lsImageId.Add(
        //        new ResourceProprietaryId() {  ProprietaryId = lsProprietaryId.ToArray() }
        //        );
        //    lsImages.Add(
        //        new Image()
        //        {
        //            ImageType = new ImageType1() { Value = ImageType.FrontCoverImage },
        //            ImageId = lsImageId.ToArray(),
        //            ResourceReference = "A2",
        //            ImageDetailsByTerritory = lsImageDetailsByTerritory.ToArray()

        //        }
        //    );
        //    ret.ResourceList.Image = lsImages.ToArray();

        //    ret.ReleaseList = new ReleaseList()
        //    {
        //         Release = new Release[] {
        //             new Release()
        //             {
        //                  IsMainRelease = true,
        //                  ReleaseId = new ReleaseId[] { new ReleaseId() {  GRid = "A1UCASE00000001X", ISRC = "CASE000001" } },
        //                  ReleaseReference = new string[] { "R0" },
        //                  ReferenceTitle = new ReferenceTitle() {  TitleText = new TitleText() { Value = "Moj prvi release" } },
        //                  //ReleaseCollectionReferenceList = new ReleaseCollectionReferenceList() {  }
        //                  //ReleaseType = new ReleaseType1[] { new ReleaseType1() {  Value = ReleaseType.Single } },
        //                  ReleaseDetailsByTerritory = new ReleaseDetailsByTerritory []
        //                  {
        //                      new ReleaseDetailsByTerritory()
        //                      {
        //                          DisplayArtistName = new Name[] { new Name() {  Value = "Lima"} },
        //                          LabelName = new  LabelName [] { new LabelName() {  Value = "Longplay records" } },
        //                          Title = new Title[]
        //                          {
        //                              new Title() {  TitleText = new TitleText() {  Value = "Moj prvi release" } , TitleType = TitleType.FormalTitle },
        //                              new Title() {  TitleText = new TitleText() {  Value = "Moj prvi release display" } , TitleType = TitleType.DisplayTitle }
        //                          },
        //                          DisplayArtist = new Artist[]
        //                          {
        //                              new Artist()
        //                              {
        //                                  SequenceNumber = "1",
        //                                  Items = new object[] { new PartyName() { FullName = new Name() {  Value = "Lima" } } }
        //                              },
        //                              new Artist()
        //                              {
        //                                  SequenceNumber = "2",
        //                                  Items = new object[] { new PartyName() { FullName = new Name() {  Value = "Miro" } } }
        //                              }
        //                          },
        //                          ParentalWarningType = new ParentalWarningType1[]
        //                          {
        //                              new ParentalWarningType1() {  Value = ParentalWarningType.NotExplicit }
        //                          },
        //                          ResourceGroup = new ResourceGroup[]
        //                          {
        //                              new ResourceGroup()
        //                              {
        //                                  Title = new Title[]
        //                                  {
        //                                      new Title() {  TitleText = new TitleText() {  Value = "Moja prva pjesma" } }
        //                                  },
        //                                  SequenceNumber = "1"
        //                              }
        //                          },
        //                          PLine = new PLine[]
        //                          {
        //                              new PLine() {  Year = "2016", PLineText = "(P) 2010 Longplay music" }
        //                          },
        //                          CLine = new CLine[]
        //                          {
        //                              new CLine() {  Year = "2016", CLineText = "(P) 2010 Longplay music"}
        //                          },
        //                          OriginalReleaseDate = new EventDate() {  Value = "2016-12-01" }

        //                      }
        //                  }

        //             }
        //         }
        //    };

        //    return ret;
        //}
        //private NewReleaseMessage XmlObject { get; set; }
        #endregion
        private void btnLoadXml_Click(object sender, EventArgs e)
        {
            using (var dlg = new OpenFileDialog())
            {
                dlg.RestoreDirectory = true;
                if (dlg.ShowDialog() == DialogResult.OK)
                {
                    lblPath.Text = dlg.FileName;

                    var xmlObject = Binder.GetXmlObjectFromFile(dlg.FileName);

                    Model = (AudioAlbumModel)Binder.GetModelFromXmlObject(xmlObject);
                    Model.FullFileName = dlg.FileName;

                    dgvSoundRecordingsAndReleases.ClearSelection();
                }
            }
        }
コード例 #6
0
ファイル: Binder.cs プロジェクト: kapscudi/DDEX
        public IXmlObject GetXmlObjectFromModel(IBindableModel model)
        {
            NewReleaseMessage ret;
            AudioAlbumModel   m = (AudioAlbumModel)model;

            ret = new NewReleaseMessage()
            {
                ReleaseProfileVersionId = "CommonReleaseTypesTypes/13/AudioAlbumMusicOnly",
                LanguageAndScriptCode   = "en",
                MessageSchemaVersionId  = "ern/382",
                IsBackfill          = false,
                IsBackfillSpecified = true
            };

            if (ret.MessageHeader == null)
            {
                ret.MessageHeader = new MessageHeader();
            }

            ret.MessageHeader.MessageId       = m.MessageID;
            ret.MessageHeader.MessageThreadId = m.MessageID;
            if (ret.MessageHeader.MessageSender == null)
            {
                ret.MessageHeader.MessageSender = new MessagingParty();
            }
            if (ret.MessageHeader.MessageSender.PartyId == null)
            {
                PartyId[] senderIDs = { new PartyId() };
                ret.MessageHeader.MessageSender.PartyId = senderIDs;
            }
            ret.MessageHeader.MessageSender.PartyId[0].Value = m.SenderPartyID;

            if (ret.MessageHeader.MessageSender.PartyName == null)
            {
                ret.MessageHeader.MessageSender.PartyName = new PartyName();
            }
            if (ret.MessageHeader.MessageSender.PartyName.FullName == null)
            {
                ret.MessageHeader.MessageSender.PartyName.FullName = new Name();
            }
            ret.MessageHeader.MessageSender.PartyName.FullName.Value = m.SenderPartyName;

            if (ret.MessageHeader.MessageRecipient == null)
            {
                var o = new MessagingParty();
                MessagingParty[] messageRecipient = { o };
                ret.MessageHeader.MessageRecipient = messageRecipient;
            }
            if (ret.MessageHeader.MessageRecipient[0].PartyId == null)
            {
                PartyId[] recipientIDs = { new PartyId() };
                ret.MessageHeader.MessageRecipient[0].PartyId = recipientIDs;
            }

            ret.MessageHeader.MessageRecipient[0].PartyId[0].Value = m.RecipientPartyID;

            if (ret.MessageHeader.MessageRecipient[0].PartyName == null)
            {
                ret.MessageHeader.MessageRecipient[0].PartyName = new PartyName();
            }
            if (ret.MessageHeader.MessageRecipient[0].PartyName.FullName == null)
            {
                ret.MessageHeader.MessageRecipient[0].PartyName.FullName = new Name();
            }

            ret.MessageHeader.MessageRecipient[0].PartyName.FullName.Value = m.RecipientPartyName;
            ret.MessageHeader.MessageCreatedDateTime = new DateTime(m.MessageCreatedDateTime.Ticks, DateTimeKind.Local);

            ret.UpdateIndicator          = m.UpdateIndicator;
            ret.UpdateIndicatorSpecified = true;

            if (ret.ReleaseList == null)
            {
                ret.ReleaseList = new ReleaseList();
            }
            if (ret.ReleaseList.Release == null || ret.ReleaseList.Release.Length == 0)
            {
                ret.ReleaseList.Release    = new Release[1];
                ret.ReleaseList.Release[0] = new Release();
            }
            if (ret.ReleaseList.Release[0].ReleaseId == null || ret.ReleaseList.Release[0].ReleaseId.Length == 0)
            {
                ret.ReleaseList.Release[0].ReleaseId    = new ReleaseId[1];
                ret.ReleaseList.Release[0].ReleaseId[0] = new ReleaseId();
            }
            if (ret.ReleaseList.Release[0].ReleaseId[0].ICPN == null)
            {
                ret.ReleaseList.Release[0].ReleaseId[0].ICPN = new ICPN();
            }
            ret.ReleaseList.Release[0].ReleaseId[0].ICPN.IsEan          = true;
            ret.ReleaseList.Release[0].ReleaseId[0].ICPN.IsEanSpecified = true;
            ret.ReleaseList.Release[0].ReleaseId[0].ICPN.Value          = m.EAN;

            //Ordinal = Convert.ToInt32(rel.ReleaseReference.FirstOrDefault().TrimStart('R')),
            //                    ISRC = rel.ReleaseId.FirstOrDefault().ISRC,
            //                    Title = rel.ReferenceTitle.TitleText.Value,
            //                    Genre = rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre.FirstOrDefault().GenreText.Value,
            //                    SubGenre = rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre.FirstOrDefault().SubGenre.Value

            if (m.Tracks.Any())
            {
                if (ret.ReleaseList == null)
                {
                    ret.ReleaseList = new ReleaseList();
                }
                if (ret.ReleaseList.Release == null)
                {
                    ret.ReleaseList.Release = new Release[m.Tracks.Count];
                }
                for (int i = 0; i < m.Tracks.Count; i++)
                {
                    var track = m.Tracks[i];
                    if (ret.ReleaseList.Release.Length <= (i + 1))
                    {
                        var x = ret.ReleaseList.Release;
                        Array.Resize(ref x, i + 2);
                        ret.ReleaseList.Release        = x;
                        ret.ReleaseList.Release[i + 1] = new Release();
                    }
                    var rel = ret.ReleaseList.Release[i + 1];
                    if (rel.ReleaseReference == null || rel.ReleaseReference.Length == 0)
                    {
                        rel.ReleaseReference = new string[1];
                    }
                    rel.ReleaseReference[0] = "R" + track.Ordinal;
                    if (rel.ReleaseId == null || rel.ReleaseId.Length == 0)
                    {
                        rel.ReleaseId = new ReleaseId[1];
                    }
                    if (rel.ReleaseId[0] == null)
                    {
                        rel.ReleaseId[0] = new ReleaseId();
                    }
                    rel.ReleaseId[0].ISRC = track.ISRC;
                    if (rel.ReferenceTitle == null)
                    {
                        rel.ReferenceTitle = new ReferenceTitle();
                    }
                    if (rel.ReferenceTitle.TitleText == null)
                    {
                        rel.ReferenceTitle.TitleText = new TitleText();
                    }
                    rel.ReferenceTitle.TitleText.Value = track.Title;
                    if (rel.ReleaseDetailsByTerritory == null || rel.ReleaseDetailsByTerritory.Length == 0)
                    {
                        rel.ReleaseDetailsByTerritory = new ReleaseDetailsByTerritory[1];
                    }
                    if (rel.ReleaseDetailsByTerritory[0] == null)
                    {
                        rel.ReleaseDetailsByTerritory[0] = new ReleaseDetailsByTerritory();
                    }
                    if (rel.ReleaseDetailsByTerritory[0].Genre == null || rel.ReleaseDetailsByTerritory[0].Genre.Length == 0)
                    {
                        rel.ReleaseDetailsByTerritory[0].Genre = new Genre[1];
                    }
                    if (rel.ReleaseDetailsByTerritory[0].Genre[0] == null)
                    {
                        rel.ReleaseDetailsByTerritory[0].Genre[0] = new Genre();
                    }
                    if (rel.ReleaseDetailsByTerritory[0].Genre[0].GenreText == null)
                    {
                        rel.ReleaseDetailsByTerritory[0].Genre[0].GenreText = new Description();
                    }
                    rel.ReleaseDetailsByTerritory[0].Genre[0].GenreText.Value = track.Genre;
                    if (rel.ReleaseDetailsByTerritory[0].Genre[0].SubGenre == null)
                    {
                        rel.ReleaseDetailsByTerritory[0].Genre[0].SubGenre = new Description();
                    }
                    rel.ReleaseDetailsByTerritory[0].Genre[0].SubGenre.Value = track.SubGenre;
                }
                // TODO - tracks zapisati u soundrecordings
            }
            return(ret);
        }
コード例 #7
0
ファイル: Binder.cs プロジェクト: kapscudi/DDEX
        public IBindableModel GetModelFromXmlObject(IXmlObject xmlObject)
        {
            AudioAlbumModel ret = new AudioAlbumModel();

            ret.FullFileName = xmlObject.FullFileName;

            NewReleaseMessage nrm = (NewReleaseMessage)xmlObject;

            if (nrm != null)
            {
                if (nrm.MessageHeader != null)
                {
                    ret.MessageID = nrm.MessageHeader.MessageId;
                    if (nrm.MessageHeader.MessageSender.PartyId.Length > 0)
                    {
                        ret.SenderPartyID = nrm.MessageHeader.MessageSender.PartyId[0].Value;
                    }
                    if (nrm.MessageHeader.MessageSender.PartyName != null && nrm.MessageHeader.MessageSender.PartyName.FullName != null)
                    {
                        ret.SenderPartyName = nrm.MessageHeader.MessageSender.PartyName.FullName.Value;
                    }
                    if (nrm.MessageHeader.MessageRecipient != null && nrm.MessageHeader.MessageRecipient.Length > 0 && nrm.MessageHeader.MessageRecipient[0].PartyId != null && nrm.MessageHeader.MessageRecipient[0].PartyId.Length > 0)
                    {
                        ret.RecipientPartyID = nrm.MessageHeader.MessageRecipient[0].PartyId[0].Value;
                    }
                    if (nrm.MessageHeader.MessageRecipient != null && nrm.MessageHeader.MessageRecipient.Length > 0 && nrm.MessageHeader.MessageRecipient[0].PartyName != null && nrm.MessageHeader.MessageRecipient[0].PartyName.FullName != null)
                    {
                        ret.RecipientPartyName = nrm.MessageHeader.MessageRecipient[0].PartyName.FullName.Value;
                    }
                    ret.MessageCreatedDateTime = nrm.MessageHeader.MessageCreatedDateTime;
                    ret.UpdateIndicator        = nrm.UpdateIndicator;

                    if (nrm.ReleaseList != null && nrm.ReleaseList.Release != null && nrm.ReleaseList.Release.Length > 0 && nrm.ReleaseList.Release[0].ReleaseId != null && nrm.ReleaseList.Release[0].ReleaseId.Length > 0 && nrm.ReleaseList.Release[0].ReleaseId[0].ICPN != null)
                    {
                        ret.EAN = nrm.ReleaseList.Release[0].ReleaseId[0].ICPN.Value;
                    }

                    if (nrm.ReleaseList != null && nrm.ReleaseList.Release != null && nrm.ReleaseList.Release.Any())
                    {
                        ret.Tracks.RaiseListChangedEvents = false;
                        foreach (var rel in nrm.ReleaseList.Release.Where(x => !x.IsMainRelease))
                        {
                            var track = new TrackModel()
                            {
                                Ordinal = Convert.ToInt32(rel.ReleaseReference.FirstOrDefault().TrimStart('R')),
                                ISRC    = rel.ReleaseId.FirstOrDefault().ISRC,
                                Title   = rel.ReferenceTitle.TitleText.Value
                            };
                            if (rel.ReleaseDetailsByTerritory != null && rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre != null && rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre.FirstOrDefault().GenreText != null)
                            {
                                track.Genre = rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre.FirstOrDefault().GenreText.Value;
                            }
                            if (rel.ReleaseDetailsByTerritory != null && rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre != null && rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre.FirstOrDefault().SubGenre != null)
                            {
                                track.SubGenre = rel.ReleaseDetailsByTerritory.FirstOrDefault().Genre.FirstOrDefault().SubGenre.Value;
                            }

                            ret.Tracks.Add(track);
                        }
                        ret.Tracks.RaiseListChangedEvents = true;
                        ret.Tracks.ResetBindings();
                    }
                }
            }

            return(ret);
        }
コード例 #8
0
 public ERN_382GenerationFormAudioAlbumMusicOnly(AudioAlbumModel model) : this()
 {
     Model.CopyFromSource(model);
 }
コード例 #9
0
 //
 #region 专辑添加-编辑
 public ActionResult AlbumAdd(AudioAlbumModel model, string ReturnUrl, Nullable <int> myid = 0)
 {
     #region 获取来路路径
     if (System.Web.HttpContext.Current.Request.UrlReferrer != null)
     {
         ViewBag.ReturnUrl = System.Web.HttpContext.Current.Request.UrlReferrer.PathAndQuery;
     }
     #endregion
     ViewBag.Headline    = "专辑添加";                                         //栏目主题
     ViewBag.ButtonValue = "添加";                                           //按钮名称
     using (chefuzi_dataEntities myOperating = new chefuzi_dataEntities()) //数据库操作
     {
         if ((myid > 0) && (model.Operate == null))
         {
             int mySelfId = 0;
             int.TryParse(myid.ToString(), out mySelfId);
             ViewBag.Headline    = "专辑编辑";
             ViewBag.ButtonValue = "修改";
             model.Operate       = "edit";
             //
             #region 取出数据
             Child_Audio_Album editRecord = myOperating.Child_Audio_Album.FirstOrDefault(p => p.AlbumId == mySelfId);
             if (editRecord != null)
             {
                 model.AlbumId      = editRecord.AlbumId;
                 model.AlbumTitle   = editRecord.AlbumTitle;
                 model.Anchor       = editRecord.Anchor;
                 model.AlbumImage   = editRecord.AlbumImage;
                 model.AlbumDescrib = editRecord.AlbumDescrib;
                 model.OrderBy      = editRecord.OrderBy;
             }
             #endregion
         }
         else if (model.Operate == "add")
         {
             #region 保存添加
             if (ModelState.IsValid)
             {
                 Child_Audio_Album addRecord = new Child_Audio_Album();
                 addRecord.ClassId      = 0;
                 addRecord.AlbumTitle   = model.AlbumTitle;
                 addRecord.Anchor       = model.Anchor;
                 addRecord.AlbumImage   = model.AlbumImage;
                 addRecord.AlbumDescrib = model.AlbumDescrib;
                 addRecord.AddDate      = DateTime.Now;
                 addRecord.AudioCount   = 0;
                 addRecord.PlayTimes    = 0;
                 addRecord.OrderBy      = model.OrderBy;
                 addRecord.Status       = 200;
                 //
                 myOperating.Child_Audio_Album.Add(addRecord);
                 myOperating.SaveChanges();
                 model = null;
                 //
                 return(RedirectToLocal(ReturnUrl));
             }
             else
             {
                 ModelState.AddModelError("", "输入错误");
             }
             #endregion
         }
         else if (model.Operate == "edit")
         {
             #region 保存编辑
             if (ModelState.IsValid)
             {
                 Child_Audio_Album editSaveRecord = myOperating.Child_Audio_Album.FirstOrDefault(p => p.AlbumId == model.AlbumId);
                 if (editSaveRecord != null)
                 {
                     editSaveRecord.AlbumTitle   = model.AlbumTitle;
                     editSaveRecord.Anchor       = model.Anchor;
                     editSaveRecord.AlbumImage   = model.AlbumImage;
                     editSaveRecord.AlbumDescrib = model.AlbumDescrib;
                     editSaveRecord.OrderBy      = model.OrderBy;
                     //
                     myOperating.SaveChanges();
                     //
                     return(RedirectToLocal(ReturnUrl));
                 }
             }
             else
             {
                 ModelState.AddModelError("", "输入错误");
             }
             #endregion
         }
         else
         {
             model.Operate = "add";
             #region 默认值
             try
             {
                 model.OrderBy = myOperating.Child_Audio_Album.Max(p => p.OrderBy) + 1;
             }
             catch
             {
                 model.OrderBy = 0;
             }
             if (model.OrderBy == null)
             {
                 model.OrderBy = 1;
             }
             #endregion
         }
     }
     //
     return(View(model));
 }