public ZaplatyFakturyZakupuModel(FakturaZakupu fakturaZakupu, GridSettings <ZaplataFakturyZakupu> gridSettings)
 {
     GridSettings  = gridSettings;
     FakturaZakupu = fakturaZakupu;
 }
 public void Usun(FakturaZakupu FakturaZakupu)
 {
     db.FakturaZakupus.DeleteOnSubmit(FakturaZakupu);
 }
        public ActionResult DodajPozycjeFakturyZakupu(int id, FormCollection collection)
        {
            PozycjaFakturyZakupu PozycjaFakturyZakupu = new PozycjaFakturyZakupu()
            {
                IdFaktury = id
            };

            if (collection["BruttoNettoRadio"] != null && collection["BruttoNettoRadio"].ToString() == "Brutto")
            {
                //Decimal Brutto = Decimal.Parse(collection["CenaJednostkowa"]);
                //// B = N + N*S/100 => N = B/(1 + S/100)
                //Int32 StawkaVat = Int32.Parse(collection["StawkaVat"]);
                //Decimal Netto = Brutto / (1 + new Decimal(StawkaVat) / 100);
                //PozycjaFakturyZakupu.CenaJednostkowa = Netto;
                PozycjaFakturyZakupu.CzyBrutto = true;
            }
            //else
            //{
            //    PozycjaFakturyZakupu.CenaJednostkowa = Decimal.Parse(collection["CenaJednostkowa"]);
            //}

            PozycjaFakturyZakupu.CenaJednostkowa = Decimal.Parse(collection["CenaJednostkowa"]);

            PozycjaFakturyZakupu.StawkaVat        = Int32.Parse(collection["StawkaVat"]);
            PozycjaFakturyZakupu.IdInwestycji     = Int32.Parse(collection["IdInwestycji"]);
            PozycjaFakturyZakupu.IdJednostkiMiary = Int32.Parse(collection["IdJednostkiMiary"]);
            PozycjaFakturyZakupu.Ilosc            = Int32.Parse(collection["Ilosc"]);
            PozycjaFakturyZakupu.Opis             = collection["Opis"];
            string DialogElementId = collection["DialogElementId"];
            string GridElementId   = collection["GridElementId"];

            // nadanie kolejnego numeru pozycji
            FakturaZakupu Faktura = FakturyZakupuRepository.FakturaZakupu(id);

            if (Faktura == null)
            {
                return(Content("Nie powiodło się dodawane pozycji faktury")); // TODO: zwracac content?
            }

            if (Faktura.PozycjaFakturyZakupus != null && Faktura.PozycjaFakturyZakupus.Count > 0)
            {
                PozycjaFakturyZakupu.NumerPozycji = (Faktura.PozycjaFakturyZakupus.Max(p => p.NumerPozycji)) + 1;
            }
            else
            {
                PozycjaFakturyZakupu.NumerPozycji = 1;
            }

            if (PozycjaFakturyZakupu.IsValid)
            {
                // lista pozycji przed dodaniem tej nowej do bazy
                var Model = FakturyZakupuRepository.FakturaZakupu(id);

                // dodanie nowej pozycji do bazy
                FakturyZakupuRepository.DodajPozycjeFakturyZakupu(PozycjaFakturyZakupu);
                FakturyZakupuRepository.Save();

                // dodanie nowej do juz wyciagnietej listy - takie sztuczki, bo zaciagniecie listy pozycji zaraz po DodajPozycjeFakturyZakupu
                // nie zawsze zwracalo nowa pozycje - baza nie zdazyla przetworzyc INSERTa i zwracala liste bez nowej pozycji
                Model.PozycjaFakturyZakupus.Add(PozycjaFakturyZakupu);

                return(PartialView("_GridPozycjeFakturyZakupu", new ReadOnlyAbleModel <FakturaZakupu>(Model, false, DialogElementId, GridElementId)));
            }

            return(Content("Nie powiodło się dodawane pozycji faktury"));
        }
 public void Dodaj(FakturaZakupu fakturaZakupu)
 {
     db.FakturaZakupus.InsertOnSubmit(fakturaZakupu);
 }
        public ActionResult Dodaj(FormCollection collection)
        {
            var Model = new FakturaZakupu();

            try
            {
                Model.IdFirmy = KancelariaSettings.IdFirmy(User.Identity.Name);
                Logger.DebugFormat("Model.IdFirmy = {0}", Model.IdFirmy);
                Model.IdRoku = KancelariaSettings.IdRoku(User.Identity.Name);
                Logger.DebugFormat("Model.IdRoku = {0}", Model.IdRoku);
                UpdateModel(Model);
                Logger.DebugFormat("After update model");

                if (collection["CheckCzyZaliczka"] != null && collection["CheckCzyZaliczka"].ToString() == "on")
                {
                    Model.CzyZaliczka = true;
                }
                else
                {
                    Model.CzyZaliczka = false;
                }

                // dodane dla debugu - usunac

                Logger.ErrorFormat("Model.CzyZaliczka = {0}", Model.CzyZaliczka);
                Logger.ErrorFormat("Model.DataFaktury = {0}", Model.DataFaktury);
                Logger.ErrorFormat("Model.DataZakupu = {0}", Model.DataZakupu);
                Logger.ErrorFormat("Model.IdFirmy = {0}", Model.IdFirmy);
                Logger.ErrorFormat("Model.IdKontrahenta = {0}", Model.IdKontrahenta);
                Logger.ErrorFormat("Model.IdRoku = {0}", Model.IdRoku);
                Logger.ErrorFormat("Model.IdSposobuPlatnosci = {0}", Model.IdSposobuPlatnosci);
                Logger.ErrorFormat("Model.KwotaBrutto = {0}", Model.KwotaBrutto);
                Logger.ErrorFormat("Model.KwotaNetto = {0}", Model.KwotaNetto);
                Logger.ErrorFormat("Model.KwotaNiezaplacona = {0}", Model.KwotaNiezaplacona);
                Logger.ErrorFormat("Model.KwotaVat = {0}", Model.KwotaVat);
                Logger.ErrorFormat("Model.KwotaZaplacona = {0}", Model.KwotaZaplacona);
                Logger.ErrorFormat("Model.NumerFaktury = {0}", Model.NumerFaktury);
                Logger.ErrorFormat("Model.WlasnyNumerFaktury = {0}", Model.WlasnyNumerFaktury);
                Logger.ErrorFormat("Model.Opis = {0}", Model.Opis);
                Logger.ErrorFormat("Model.TerminPlatnosci = {0}", Model.TerminPlatnosci);

                // koniec debugu

                Logger.DebugFormat("After Model.CzyZaliczka");

                if (Model.IsValid)
                {
                    FakturyZakupuRepository.Dodaj(Model);
                    Logger.DebugFormat("After FakturyZakupuRepository.Dodaj(Model);");
                    FakturyZakupuRepository.Save();
                    Logger.DebugFormat("After FakturyZakupuRepository.Save();");

                    TempData["Message"] = "Dodano fakturę zakupu";

                    return(RedirectToAction("Edytuj", new { @id = Model.Id }));
                }
                else
                {
                    foreach (var rule in Model.GetRuleViolations())
                    {
                        ModelState.AddModelError(rule.PropertyName, rule.ErrorMessage);
                    }

                    return(View(Model));
                }
            }
            catch (Exception ex)
            {
                Logger.ErrorFormat("Dodawanie faktur zakupu\n{0}", ex);

                ViewBag.ErrorMessage = String.Format("Nie powiodło się dodawnie faktury\n{0}", ex.Message);

                return(View(Model));
            }
        }