private void KontrahentEditForm_Load(object sender, EventArgs e) { if (this.DataSource != null) { setEnovaTextBox(); if (((Enova.Business.Old.DB.Web.Kontrahent) this.DataSource).EntityState != System.Data.EntityState.Detached && ((Enova.Business.Old.DB.Web.Kontrahent) this.DataSource).EntityState != System.Data.EntityState.Added) { Enova.Business.Old.Core.ContextManager.WebContext.Refresh(System.Data.Objects.RefreshMode.StoreWins, this.DataSource); ((Enova.Business.Old.DB.Web.Kontrahent) this.DataSource).Adresy.Load(); } Enova.Business.Old.DB.Web.Adres adres = ((Enova.Business.Old.DB.Web.Kontrahent) this.DataSource).DomyslnyAdresFaktury; if (adres == null) { adres = new Enova.Business.Old.DB.Web.Adres() { Domyslny = true, DomyslnyAdresFaktury = true, DomyslnyAdresWysylki = false, Kontrahent = (Enova.Business.Old.DB.Web.Kontrahent) this.DataSource } } ; adresBindingSource.DataSource = adres; Enova.Business.Old.DB.Web.Adres adresKor = ((Enova.Business.Old.DB.Web.Kontrahent) this.DataSource) .Adresy.Where(a => a.DomyslnyAdresWysylki == true && (a.Usuniety == null || a.Usuniety == false) && (a.DomyslnyAdresFaktury == null || a.DomyslnyAdresFaktury == false)).FirstOrDefault(); if (adresKor == null) { adresKor = new Enova.Business.Old.DB.Web.Adres() { Kontrahent = (Enova.Business.Old.DB.Web.Kontrahent) this.DataSource, DomyslnyAdresFaktury = false, DomyslnyAdresWysylki = true }; } else { checkBox1.Checked = false; } adresKorBindingSource.DataSource = adresKor; } }
public Enova.Business.Old.DB.Web.Kontrahent GetWebKontrahent(bool insert) { Web.Kontrahent kontrahent = ContextManager.WebContext.Kontrahenci.Where(k => k.Guid == this.Guid).FirstOrDefault(); if (kontrahent == null) { kontrahent = ContextManager.WebContext.Kontrahenci.Where(k => k.Kod == this.Kod && k.Nip == this.NIP).FirstOrDefault(); if (kontrahent == null && insert) { try { kontrahent = new Web.Kontrahent(this); ContextManager.WebContext.AddToKontrahenci(kontrahent); kontrahent.Synchronizacja = (int)Types.RowSynchronizeOld.Notsaved; kontrahent.DoSaveChanges(ContextManager.WebContext); //ContextManager.WebContext.SaveChanges(); Enova.Business.Old.DB.Web.Adres adres = null; Enova.Business.Old.DB.Web.Adres adresKor = null; if (this.Adres != null) { adres = new Web.Adres(this.Adres); kontrahent.Adresy.Add(adres); adres.DoSaveChanges(ContextManager.WebContext); } if (this.AdresKorespondencyjny != null && this.AdresKorespondencyjny.AdresKodPocztowy != null && this.AdresKorespondencyjny.AdresKodPocztowy.Value > 0) { adresKor = new Web.Adres(this.AdresKorespondencyjny); kontrahent.Adresy.Add(adresKor); adresKor.DoSaveChanges(ContextManager.WebContext); } if (adresKor == null) { adres.DomyslnyAdresWysylki = true; } foreach (var cenaGrupowa in this.CenyGrupowe) { Web.GrupaRabatowa grupaRabatowa = ContextManager.WebContext.GrupyRabatowe.Where(gr => gr.GUID == cenaGrupowa.GrupaTowarowa.Guid).FirstOrDefault(); if (grupaRabatowa == null) { grupaRabatowa = new Web.GrupaRabatowa() { EnovaStamp = cenaGrupowa.GrupaTowarowa.Stamp, GUID = cenaGrupowa.GrupaTowarowa.Guid, Kategoria = cenaGrupowa.GrupaTowarowa.Category, Wartosc = cenaGrupowa.GrupaTowarowa.Value } } ; kontrahent.GrupyRabatowe.Add(new Web.KontrahentRabatGrupowy() { EnovaStamp = cenaGrupowa.Stamp, GrupaRabatowa = grupaRabatowa, GUID = cenaGrupowa.Guid, Rabat = (decimal)cenaGrupowa.Rabat, RabatZdefiniowany = (bool)cenaGrupowa.RabatZdefiniowany }); } kontrahent.Synchronizacja = (int)Types.RowSynchronizeOld.NotsynchronizedNew; kontrahent.DoSaveChanges(ContextManager.WebContext); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else if (kontrahent != null) { kontrahent.Guid = this.Guid; } //ContextManager.WebContext.SaveChanges(); } return(kontrahent); }
public static Enova.Business.Old.DB.Web.Kontrahent GetWebKontrahent(API.CRM.Kontrahent enova, bool insert) { Web.Kontrahent kontrahent = Enova.Business.Old.Core.ContextManager.WebContext.Kontrahenci.Where(k => k.Guid == enova.Guid).FirstOrDefault(); if (kontrahent == null) { kontrahent = Core.ContextManager.WebContext.Kontrahenci.Where(k => k.Kod == enova.Kod && k.Nip == enova.NIP).FirstOrDefault(); if (kontrahent == null && insert) { try { kontrahent = new Web.Kontrahent(enova); Core.ContextManager.WebContext.AddToKontrahenci(kontrahent); kontrahent.Synchronizacja = (int)Types.RowSynchronizeOld.Notsaved; kontrahent.DoSaveChanges(Core.ContextManager.WebContext); //ContextManager.WebContext.SaveChanges(); Enova.Business.Old.DB.Web.Adres adres = null; Enova.Business.Old.DB.Web.Adres adresKor = null; if (enova.Adres != null) { adres = new Web.Adres(enova, enova.Adres, 1); kontrahent.Adresy.Add(adres); adres.DoSaveChanges(Core.ContextManager.WebContext); } if (enova.AdresDoKorespondencji != null && !string.IsNullOrEmpty(enova.AdresDoKorespondencji.KodPocztowy)) { adresKor = new Web.Adres(enova, enova.AdresDoKorespondencji, 2); kontrahent.Adresy.Add(adresKor); adresKor.DoSaveChanges(Core.ContextManager.WebContext); } if (adresKor == null) { adres.DomyslnyAdresWysylki = true; } /* * foreach (var cenaGrupowa in enova.CenyGrupowe) * { * Web.GrupaRabatowa grupaRabatowa = ContextManager.WebContext.GrupyRabatowe.Where(gr => gr.GUID == cenaGrupowa.GrupaTowarowa.Guid).FirstOrDefault(); * if (grupaRabatowa == null) * grupaRabatowa = new Web.GrupaRabatowa() * { * EnovaStamp = cenaGrupowa.GrupaTowarowa.Stamp, * GUID = cenaGrupowa.GrupaTowarowa.Guid, * Kategoria = cenaGrupowa.GrupaTowarowa.Category, * Wartosc = cenaGrupowa.GrupaTowarowa.Value * }; * * kontrahent.GrupyRabatowe.Add(new Web.KontrahentRabatGrupowy() * { * EnovaStamp = cenaGrupowa.Stamp, * GrupaRabatowa = grupaRabatowa, * GUID = cenaGrupowa.Guid, * Rabat = (decimal)cenaGrupowa.Rabat, * RabatZdefiniowany = (bool)cenaGrupowa.RabatZdefiniowany * }); * } */ kontrahent.Synchronizacja = (int)Types.RowSynchronizeOld.NotsynchronizedNew; kontrahent.DoSaveChanges(Core.ContextManager.WebContext); } catch (Exception ex) { BAL.Business.AppController.ThrowException(ex); } } else if (kontrahent != null) { kontrahent.Guid = enova.Guid; } //ContextManager.WebContext.SaveChanges(); } return(kontrahent); }
private void enovaButton_Click(object sender, EventArgs e) { if (((Enova.Business.Old.DB.Web.Kontrahent) this.DataSource).Guid != null) { DialogResult result = MessageBox.Show("Czy napewno chcesz zmienić kontrahenta ?", "EnovaTools", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == System.Windows.Forms.DialogResult.No) { return; } } var view = new Enova.Forms.CRM.KontrahenciView() { SelectionMode = true }; if (BAL.Forms.FormManager.Instance.ShowGridFormDialog(view) == System.Windows.Forms.DialogResult.OK) //if (form.SelectedItem != null) { //Enova.Business.Old.DB.Kontrahent enovaKontrahent = (Enova.Business.Old.DB.Kontrahent)form.SelectedItem; Enova.API.CRM.Kontrahent enovaKontrahent = (Enova.API.CRM.Kontrahent)view.Current; if (Enova.Business.Old.Core.ContextManager.WebContext.Kontrahenci.Any(k => k.Guid == enovaKontrahent.Guid)) { MessageBox.Show("Istnieje już konto dla tego kontrahenta", "EnovaTools", MessageBoxButtons.OK); return; } Enova.Business.Old.DB.Web.Kontrahent kontrahent = (Enova.Business.Old.DB.Web.Kontrahent) this.DataSource; kontrahent.Guid = enovaKontrahent.Guid; kontrahent.Kod = enovaKontrahent.Kod; kontrahent.Nazwa = enovaKontrahent.Nazwa; kontrahent.Nip = enovaKontrahent.NIP; string prKod = enovaKontrahent.Features["przedstawiciel"].ToString(); Enova.Business.Old.DB.Web.Kontrahent przedstawiciel = Enova.Business.Old.Core.ContextManager.WebContext.Kontrahenci .Where(k => k.CzyAgent == true && k.Kod == prKod).FirstOrDefault(); kontrahent.Przedstawiciel = przedstawiciel; przedstawicielComboBox.DataBindings["SelectedItem"].ReadValue(); var enovaAdres = enovaKontrahent.Adres; Enova.Business.Old.DB.Web.Adres adres = kontrahent.DomyslnyAdresFaktury; adres.KodPocztowy = enovaAdres.KodPocztowy; adres.Miasto = enovaAdres.Miejscowosc; adres.Adres1 = enovaAdres.Ulica + (enovaAdres.NrDomu != "" ? (" " + enovaAdres.NrDomu + (enovaAdres.NrLokalu != "" ? "/" + enovaAdres.NrLokalu : "")) : ""); adres.Alias = enovaKontrahent.Kod; adres.Firma = enovaKontrahent.Nazwa; adres.Telefon = enovaAdres.Telefon; var enovaAdresKor = enovaKontrahent.AdresDoKorespondencji; if (enovaAdresKor != null && !string.IsNullOrEmpty(enovaAdresKor.KodPocztowy) && enovaAdresKor.KodPocztowy != "0") { Enova.Business.Old.DB.Web.Adres adresKor = kontrahent.Adresy.Where(a => a.DomyslnyAdresFaktury == false && a.DomyslnyAdresWysylki == true).FirstOrDefault(); adresKor.Firma = enovaKontrahent.Nazwa; adresKor.Alias = enovaKontrahent.Kod; adresKor.Adres1 = enovaAdresKor.Ulica + (enovaAdresKor.NrDomu != "" ? (" " + enovaAdresKor.NrDomu + (enovaAdresKor.NrLokalu != "" ? "/" + enovaAdresKor.NrLokalu : "")) : ""); adresKor.KodPocztowy = enovaAdresKor.KodPocztowy; adresKor.Miasto = enovaAdresKor.Miejscowosc; adresKor.Telefon = enovaAdresKor.Telefon; } setEnovaTextBox(); } }