コード例 #1
0
        public ActionResult DodajPozycjeFakturySprzedazy(int id, FormCollection collection)
        {
            PozycjaFakturySprzedazy PozycjaFakturySprzedazy = new PozycjaFakturySprzedazy()
            {
                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;
                PozycjaFakturySprzedazy.CzyBrutto = true;
            }

            PozycjaFakturySprzedazy.CenaJednostkowa  = Decimal.Parse(collection["CenaJednostkowa"]);
            PozycjaFakturySprzedazy.StawkaVat        = Int32.Parse(collection["StawkaVat"]);
            PozycjaFakturySprzedazy.IdJednostkiMiary = Int32.Parse(collection["IdJednostkiMiary"]);
            PozycjaFakturySprzedazy.Ilosc            = Int32.Parse(collection["Ilosc"]);
            PozycjaFakturySprzedazy.Opis             = collection["Opis"];
            string DialogElementId = collection["DialogElementId"];
            string GridElementId   = collection["GridElementId"];

            // nadanie kolejnego numeru pozycji
            FakturaSprzedazy Faktura = FakturySprzedazyRepository.FakturaSprzedazy(id);

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

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

            if (PozycjaFakturySprzedazy.IsValid)
            {
                // lista pozycji przed dodaniem tej nowej do bazy
                var Model = FakturySprzedazyRepository.FakturaSprzedazy(id);

                // dodanie nowej pozycji do bazy
                FakturySprzedazyRepository.DodajPozycjeFakturySprzedazy(PozycjaFakturySprzedazy);
                FakturySprzedazyRepository.Save();

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

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

            return(Content("Nie powiodło się dodawane pozycji faktury"));
        }
コード例 #2
0
        public ActionResult Dodaj(FormCollection collection)
        {
            var Model = new FakturaSprzedazy();

            try
            {
                Model.IdFirmy = KancelariaSettings.IdFirmy(User.Identity.Name);
                Model.IdRoku  = KancelariaSettings.IdRoku(User.Identity.Name);
                UpdateModel(Model);

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

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

                if (Model.IsValid)
                {
                    FakturySprzedazyRepository.Dodaj(Model);
                    FakturySprzedazyRepository.Save();

                    TempData["Message"] = "Dodano fakturę sprzedaży";

                    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 sprzedaży\n{0}", ex);

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

                return(View(Model));
            }
        }
コード例 #3
0
        public ActionResult CreateProduktySprzedazy(int dokumentSprzedazyID, FakturaSprzedazy dokumentSprzedazy, int Towary)
        {
            try
            {
                if (UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name) == null)
                {
                    return(RedirectToAction("LogOn", "Account"));
                }


                if (ModelState.IsValid)
                {
                    using (FakturyDBEntitiess db = new FakturyDBEntitiess())
                    {
                        ProduktyFakturySprzedazy nowyProdukt = new ProduktyFakturySprzedazy();
                        Uzytkownicy wlasciciel = UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name);
                        nowyProdukt.WlascicielID        = wlasciciel.UzytkownikID;
                        nowyProdukt.DataWprowadzenia    = DateTime.Now;
                        nowyProdukt.DokumentSprzedazyID = dokumentSprzedazyID;
                        nowyProdukt.TowarID             = Towary;
                        nowyProdukt.Ilosc = dokumentSprzedazy.ProduktFakturySprzedazy.Ilosc;
                        TowaryUslugi Towar = TowaryUslugiModel.PobierzTowarUsugePoID(Towary);
                        if (Towar.Marza > 0)
                        {
                            nowyProdukt.WartoscNetto = (Towar.CenaNetto * (1 + (Towar.Marza / 100))) * nowyProdukt.Ilosc;
                        }
                        else
                        {
                            nowyProdukt.WartoscNetto = Towar.CenaNetto * nowyProdukt.Ilosc;
                        }

                        nowyProdukt.WartoscBrutto = nowyProdukt.WartoscNetto *
                                                    (1 + (((decimal)StawkiVatModel.PobierzStawkeVatPoID(Towar.StawkaVatID).Wartosc) / 100));

                        ProduktyFakturySprzedazyModel.DodajProduktDoFakturySprzedazy(nowyProdukt);
                        SprzedazModel.WyliczWartosciFaktury(dokumentSprzedazyID);
                    }
                    return(RedirectToAction("CreateProduktySprzedazy", "FakturySprzedaz", new { dokumentSprzedazyID = dokumentSprzedazyID }));
                }
                else
                {
                    FakturaSprzedazy faktura = new FakturaSprzedazy();
                    faktura.dokumentSprzedazy       = SprzedazModel.PobierzFakturePoID(dokumentSprzedazyID);
                    faktura.ListaProduktowSprzedazy = ProduktyFakturySprzedazyModel.PobierzProduktyPoID(dokumentSprzedazyID);
                    ViewData["Towary"] = new SelectList(TowaryUslugiModel.PobierzListTowarow(), "TowarID", "Nazwa");
                    return(View("CreateProduktySprzedazy", faktura));
                }
            }
            catch
            {
                return(View());
            }
        }
コード例 #4
0
        public ActionResult CreateRozliczenieSprzedazy(int dokumentSprzedazyID)
        {
            if (UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name) == null)
            {
                return(RedirectToAction("LogOn", "Account"));
            }

            FakturaSprzedazy faktura = new FakturaSprzedazy();

            faktura.dokumentSprzedazy         = SprzedazModel.PobierzFakturePoID(dokumentSprzedazyID);
            faktura.ListaRozliczeniaSprzedazy = RozliczenieFakturySprzedazyModel.PobierzListeRozliczenSprzedazyPoID(dokumentSprzedazyID);
            return(View(faktura));
        }
コード例 #5
0
        public ActionResult CreateProduktySprzedazy(int dokumentSprzedazyID)
        {
            if (UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name) == null)
            {
                return(RedirectToAction("LogOn", "Account"));
            }

            FakturaSprzedazy faktura = new FakturaSprzedazy();

            faktura.dokumentSprzedazy       = SprzedazModel.PobierzFakturePoID(dokumentSprzedazyID);
            faktura.ListaProduktowSprzedazy = ProduktyFakturySprzedazyModel.PobierzProduktyPoID(dokumentSprzedazyID);
            ViewData["Towary"] = new SelectList(TowaryUslugiModel.PobierzListTowarow(), "TowarID", "Nazwa");
            return(View(faktura));
        }
コード例 #6
0
        public ActionResult Details(int id)
        {
            if (UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name) == null)
            {
                return(RedirectToAction("LogOn", "Account"));
            }

            FakturaSprzedazy faktura = new FakturaSprzedazy();

            faktura.dokumentSprzedazy         = SprzedazModel.DokumentSprzdazyPoID(id);
            faktura.ListaProduktowSprzedazy   = ProduktyFakturySprzedazyModel.PobierzProduktyPoID(id);
            faktura.ListaRozliczeniaSprzedazy = RozliczenieFakturySprzedazyModel.PobierzListeRozliczenSprzedazyPoID(id);

            return(View(faktura));
        }
コード例 #7
0
        public ActionResult CreateRozliczenieSprzedazy(int dokumentSprzedazyID, FakturaSprzedazy dokumentSprzedazy)
        {
            try
            {
                if (UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name) == null)
                {
                    return(RedirectToAction("LogOn", "Account"));
                }


                if (ModelState.IsValid)
                {
                    using (FakturyDBEntitiess db = new FakturyDBEntitiess())
                    {
                        RozliczeniaSprzedazy noweRozliczenie = new RozliczeniaSprzedazy();
                        Uzytkownicy          wlasciciel      = UzytkownikModel.PobierzUzytkownikaPoLoginie(User.Identity.Name);
                        noweRozliczenie.WlascicielID        = wlasciciel.UzytkownikID;
                        noweRozliczenie.DataWprowadzenia    = DateTime.Now;
                        noweRozliczenie.DokumentSprzedazyID = dokumentSprzedazyID;
                        noweRozliczenie.DataWplaty          = dokumentSprzedazy.RozliczenieSprzedazy.DataWplaty;
                        noweRozliczenie.Kwota = dokumentSprzedazy.RozliczenieSprzedazy.Kwota;

                        RozliczenieFakturySprzedazyModel.DodajRozliczenieFakturySprzedazy(noweRozliczenie);
                        SprzedazModel.WyliczWartosciFaktury(dokumentSprzedazyID);
                    }
                    return(RedirectToAction("CreateRozliczenieSprzedazy", "FakturySprzedaz", new { dokumentSprzedazyID = dokumentSprzedazyID }));
                }
                else
                {
                    FakturaSprzedazy faktura = new FakturaSprzedazy();
                    faktura.dokumentSprzedazy         = SprzedazModel.PobierzFakturePoID(dokumentSprzedazyID);
                    faktura.ListaRozliczeniaSprzedazy = RozliczenieFakturySprzedazyModel.PobierzListeRozliczenSprzedazyPoID(dokumentSprzedazyID);
                    return(View("CreateRozliczenieSprzedazy", faktura));
                }
            }
            catch
            {
                return(View());
            }
        }
コード例 #8
0
 public ZaplatyFakturySprzedazyModel(FakturaSprzedazy fakturaSprzedazy, GridSettings <ZaplataFakturySprzedazy> gridSettings)
 {
     GridSettings     = gridSettings;
     FakturaSprzedazy = fakturaSprzedazy;
 }
コード例 #9
0
 public void Usun(FakturaSprzedazy FakturaSprzedazy)
 {
     db.FakturaSprzedazies.DeleteOnSubmit(FakturaSprzedazy);
 }
コード例 #10
0
 public void Dodaj(FakturaSprzedazy fakturaSprzedazy)
 {
     db.FakturaSprzedazies.InsertOnSubmit(fakturaSprzedazy);
 }