Zbiór zmian 613 dla branches/ReklamaReorganizacja/BazaReklam/ZamowieniaForm.cs
- Data:
- 2009-04-27 11:12:42 (17 years ago)
- Pliki:
-
- 1 zmodyfikowane
-
branches/ReklamaReorganizacja/BazaReklam/ZamowieniaForm.cs (zmodyfikowane) (15 diffs)
Legenda:
- Bez zmian
- Dodane
- Usunięte
-
branches/ReklamaReorganizacja/BazaReklam/ZamowieniaForm.cs
r593 r613 6 6 using System.Windows.Forms; 7 7 using Baza_Reklam.Classes.Helpers; 8 using Baza_Reklam.Classes.Interfaces; 8 9 9 10 namespace Baza_Reklam … … 294 295 if (zamowieniaBindingSource.Current == null) return; 295 296 296 if (rEKLAMADataSet.REKLAMA.Rows.Count <= 0) 297 { 298 MessageBox.Show("Proszê dodaæ przynajmniej jedn¹ reklamê do zamówienia.", "Faktura"); 299 return; 300 } 301 302 Cursor = Cursors.WaitCursor; 303 304 DataRowView z = (DataRowView) zamowieniaBindingSource.Current; 305 REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow) z.Row; 306 307 REKLAMADataSet.KLIENCIRow _klient = 308 (REKLAMADataSet.KLIENCIRow) klienciTableAdapter.GetDataByCustomerId(zamowienie.idKlienta).Rows[0]; 309 string errorMessage = czyMoznaZafakturowac(zamowienie, _klient); 310 311 if (errorMessage != string.Empty) 312 { 313 MessageBox.Show(errorMessage); 297 try 298 { 299 Cursor = Cursors.WaitCursor; 300 301 DataRowView z = (DataRowView) zamowieniaBindingSource.Current; 302 REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow) z.Row; 303 304 REKLAMADataSet.KLIENCIRow klientRow = 305 (REKLAMADataSet.KLIENCIRow) klienciTableAdapter.GetDataByCustomerId(zamowienie.idKlienta).Rows[0]; 306 307 InitIssueTables(zamowienie); 308 309 string errorMessage = CzyMoznaZafakturowac(zamowienie, klientRow); 310 311 if (errorMessage != string.Empty) 312 { 313 MessageBox.Show(errorMessage, "Fakturowanie"); 314 Cursor = Cursors.Default; 315 return; 316 } 317 318 WystawFakture(zamowienie, klientRow, false); 319 320 RestoreConnections(); 321 322 zamowieniaBindingSource.ResetBindings(false); 323 324 fAKTURYBindingSource.MoveLast(); 325 } 326 finally 327 { 314 328 Cursor = Cursors.Default; 315 return; 316 } 317 318 WystawFakture(zamowienie, _klient, false); 319 320 RestoreConnections(); 321 322 zamowieniaBindingSource.ResetBindings(false); 323 324 fAKTURYBindingSource.MoveLast(); 325 326 Cursor = Cursors.Default; 329 } 327 330 } 328 331 … … 523 526 } 524 527 525 private void PobierzOznaczEmisje(REKLAMADataSet.zamowieniaRow zamowienie, REKLAMADataSet.FAKTURYRow naglowekFaktury) 528 529 private void InitIssueTables(REKLAMADataSet.zamowieniaRow zamowienie) 526 530 { 527 531 emisjeTableAdapter.ClearBeforeFill = false; 528 532 datyWydanTableAdapter.ClearBeforeFill = false; 533 rEKLAMADataSet.UKAZE_SIE_W_NR.Clear(); 534 rEKLAMADataSet.DatyWydan.Clear(); 529 535 530 536 REKLAMADataSet.DatyWydanDataTable t = datyWydanTableAdapter.GetDataByPierwszaEmisjaWZamowieniu(zamowienie.idZamowienia); 531 532 if (t.Rows.Count == 0) 533 { 534 //TODO: moze lepiej uzyc MessageBox'a i return niz wywalac wyjatek...? 535 // wyjatki sa dosc kosztowne dla aplikacji 536 throw new Exception("Nie ma co fakturowaæ!"); 537 } 537 if (t.Rows.Count <= 0) return; 538 538 539 539 DateTime d = t[0].DATA_W; … … 575 575 reklama.EndEdit(); 576 576 } 577 578 if (rEKLAMADataSet.UKAZE_SIE_W_NR.Rows.Count <= 0) 579 throw new ApplicationException("Nie znaleziono ¿adnych emisji do zafakturowania! (" + 580 zamowienie.idZamowienia + ": " + StringHelper.ListToString(adIds, ",") + ")"); 581 577 } 578 579 580 private void PobierzOznaczEmisje(REKLAMADataSet.zamowieniaRow zamowienie, REKLAMADataSet.FAKTURYRow naglowekFaktury) 581 { 582 //InitIssueTables(zamowienie); 582 583 583 584 if (zamowienie.IsdataOstatniejZafakturowanejEmisjiNull()) … … 635 636 { 636 637 SLOWNIKDataSet.AGENCIRow agent = (SLOWNIKDataSet.AGENCIRow)agenciTableAdapter.GetDataByKodAgenta(zamowienie.kodAgenta).Rows[0]; 637 I nvoiceProvider invoiceProvider = InvoiceProviderFactory.GetInvoiceProviderById(agent.InvoiceProviderId);638 IInvoiceProvider invoiceProvider = InvoiceProviderFactory.GetInvoiceProviderById(agent.InvoiceProviderId); 638 639 639 640 … … 709 710 if (kurs.Count == 0) 710 711 { 711 throw new Exception("B³¹d przy pobieraniu kursu waluty.");712 throw new ApplicationException("B³¹d przy pobieraniu kursu waluty."); 712 713 } 713 714 … … 730 731 731 732 732 private string czyMoznaZafakturowac(REKLAMADataSet.zamowieniaRow zamowienie, REKLAMADataSet.KLIENCIRow klientRow)733 private string CzyMoznaZafakturowac(REKLAMADataSet.zamowieniaRow zamowienie, REKLAMADataSet.KLIENCIRow klientRow) 733 734 { 734 735 string errorMessage = string.Empty; … … 738 739 errorMessage += zamowienie.IsidKontaNull() ? "Nie wybrano konta. \n" : ""; 739 740 errorMessage += zamowienie.IssposobZaplatyNull() ? "Nie wybrano sposobu zap³aty. \n" : ""; 740 errorMessage += klientRow.IsCountryNull() || klientRow.Country == string.Empty? "Brak pañstwa klienta. \n" : "";741 errorMessage += klientRow.IsAdres_FkaturaNull() || klientRow.Adres_Fkatura == string.Empty? "Brak adresu faktury klienta. \n" : "";742 errorMessage += klientRow.IsNipNull() || klientRow.Nip == string.Empty? "Brak nipu klienta. \n" : "";741 errorMessage += string.IsNullOrEmpty(klientRow.Country) ? "Brak pañstwa klienta. \n" : ""; 742 errorMessage += string.IsNullOrEmpty(klientRow.Adres_Fkatura) ? "Brak adresu faktury klienta. \n" : ""; 743 errorMessage += string.IsNullOrEmpty(klientRow.Nip) ? "Brak nipu klienta. \n" : ""; 743 744 744 745 if (klientRow.Country != "Polska") 745 { 746 errorMessage += klientRow.IsnipKrajNull() || klientRow.nipKraj == string.Empty ? "Brak symbolu kraju w nipie klienta. \n" : ""; 746 errorMessage += string.IsNullOrEmpty(klientRow.nipKraj) ? "Brak symbolu kraju w nipie klienta. \n" : ""; 747 748 if (rEKLAMADataSet.REKLAMA.Rows.Count <= 0) 749 { 750 // try to load the ads once again in case something went wrong before... 751 rEKLAMATableAdapter.FillByIdZamowienia(rEKLAMADataSet.REKLAMA, zamowienie.idZamowienia); 752 753 if (rEKLAMADataSet.REKLAMA.Rows.Count <= 0) 754 errorMessage += "Proszê dodaæ przynajmniej jedn¹ reklamê do zamówienia \n"; 747 755 } 748 756 749 757 if (rEKLAMADataSet.REKLAMA.Select("[ZATWIERDZONO DO DRUKU] = 0").Length > 0) 750 {751 758 errorMessage += "W zamówieniu s¹ reklamy niezatwierdzone do druku \n"; 752 } 759 760 if (errorMessage.Length > 0) 761 return errorMessage; 762 763 if (rEKLAMADataSet.UKAZE_SIE_W_NR.Rows.Count <= 0) 764 { 765 errorMessage += "Nie znaleziono ¿adnych emisji do zafakturowania \n"; 766 return errorMessage; 767 } 768 769 REKLAMADataSet.DatyWydanDataTable t = datyWydanTableAdapter.GetDataByPierwszaEmisjaWZamowieniu(zamowienie.idZamowienia); 770 if (t.Rows.Count == 0) 771 errorMessage += "Nie znaleziono ¿adnych emisji do zafakturowania \n"; 753 772 754 773 return errorMessage; … … 893 912 private REKLAMADataSet.FAKTURYRow utworzNaglowekKorekty(REKLAMADataSet.FAKTURYRow faktura) 894 913 { 895 SLOWNIKDataSet.AGENCIRow agent = (SLOWNIKDataSet.AGENCIRow)agenciTableAdapter.GetDataByKodAgenta(faktura.NUMER_ROZ).Rows[0];896 InvoiceProvider invoiceProvider = InvoiceProviderFactory.GetInvoiceProviderById(agent.InvoiceProviderId);897 898 899 914 REKLAMADataSet.FAKTURYRow naglowekKorekty = rEKLAMADataSet.FAKTURY.NewFAKTURYRow(); 900 915 naglowekKorekty.KOREKTA = true; … … 906 921 907 922 naglowekKorekty.NUMER_ROZ = faktura.NUMER_ROZ; 908 naglowekKorekty.NUMER = DbUtils.numerNowejFakturyKorekty(DateTime.Today.Year);923 naglowekKorekty.NUMER = FakturaHelper.GetNewCorrectionInvoiceNumber(DateTime.Today.Year, faktura.SystemKsiegowyId); 909 924 naglowekKorekty.NUMER_ROK = DateTime.Today.Year; 910 925 naglowekKorekty.DATA_WYSTAWIENIA = DateTime.Today; … … 919 934 920 935 naglowekKorekty.MIEJSCOWOSC_WYSTAWIENIA = faktura.MIEJSCOWOSC_WYSTAWIENIA; 921 naglowekKorekty.SPRZEDAWCA_ADRES = invoiceProvider.GetAddress();922 naglowekKorekty.SPRZEDAWCA_NIP = invoiceProvider.TaxNumber;936 naglowekKorekty.SPRZEDAWCA_ADRES = faktura.SPRZEDAWCA_ADRES; 937 naglowekKorekty.SPRZEDAWCA_NIP = faktura.SPRZEDAWCA_NIP; 923 938 naglowekKorekty.SystemKsiegowyId = faktura.SystemKsiegowyId; 924 939 … … 944 959 if (!faktura.Iswaluta_mianoNull()) 945 960 { 946 naglowekKorekty.SPRZEDAWCA_NIP = invoiceProvider.TaxCountryPrefix + " " + invoiceProvider.TaxNumber;961 naglowekKorekty.SPRZEDAWCA_NIP = faktura.SPRZEDAWCA_NIP; 947 962 naglowekKorekty.NABYWCA_NIP = faktura.NABYWCA_NIP; 948 963 naglowekKorekty.waluta_miano = faktura.waluta_miano; … … 1363 1378 if (zamowieniaBindingSource.Current == null) return; 1364 1379 1365 if (rEKLAMADataSet.REKLAMA.Rows.Count <= 0)1366 {1367 MessageBox.Show("Proszê dodaæ przynajmniej jedn¹ reklamê do zamówienia.", "Faktura proforma");1368 return;1369 }1370 1371 1380 Cursor = Cursors.WaitCursor; 1372 1381 … … 1376 1385 REKLAMADataSet.KLIENCIRow _klient = 1377 1386 (REKLAMADataSet.KLIENCIRow) klienciTableAdapter.GetDataByCustomerId(zamowienie.idKlienta).Rows[0]; 1378 string errorMessage = czyMoznaZafakturowac(zamowienie, _klient); 1387 1388 InitIssueTables(zamowienie); 1389 1390 string errorMessage = CzyMoznaZafakturowac(zamowienie, _klient); 1379 1391 1380 1392 if (errorMessage != string.Empty) 1381 1393 { 1382 MessageBox.Show(errorMessage );1394 MessageBox.Show(errorMessage, "Fakturowanie - Proforma"); 1383 1395 Cursor = Cursors.Default; 1384 1396 return; … … 1395 1407 { 1396 1408 DataRow[] rows = rEKLAMADataSet.FAKTURY.Select("id_faktury=" + id); 1397 usunFakture((REKLAMADataSet.FAKTURYRow) rows[0]); 1409 if (rows.Length > 0) 1410 usunFakture((REKLAMADataSet.FAKTURYRow) rows[0]); 1411 1398 1412 RestoreConnections(); 1399 1413 Cursor = Cursors.Default;
