Пример #1
0
        // POST: api/Artikel

        public IHttpActionResult Post(Art item)
        {
            if (ModelState.IsValid)
            {
                var artikel = new Artikelstamm(unitOfWork)
                {
                    ArtNrInt           = item.ArtNr,
                    ArtNr              = item.ArtNr.ToString(),
                    Bestand            = item.Bestand,
                    Bezeichnung        = item.Bezeichnung,
                    Artikeltext1       = item.Artikeltext1,
                    Artikeltext2       = item.Artikeltext2,
                    Artikeltext3       = item.Artikeltext3,
                    Stueckzahl         = item.Stueckzahl,
                    Verpackungseinheit = item.Verpackungseinheit
                };
                artikel.Save();
                new ArtikelLieferbar(unitOfWork)
                {
                    Artikel             = artikel,
                    StueckzahlLieferbar = item.StueckzahlLieferbar
                };
                unitOfWork.CommitChanges();
                item.Oid = artikel.Oid;
                return(Ok(item));
            }
            else
            {
                return(BadRequest());
            }
        }
Пример #2
0
        public void CopyKundenAndArtikels(MassOrder massOrder)
        {
            //var kundens = new XPCollection<Kundenstamm>(externalUow, CriteriaOperator.Parse("Oid==", massOrder.KundenIds));
            foreach (var item in massOrder.KundenIds)
            {
                var kunden = externalUow.FindObject <Kundenstamm>(CriteriaOperator.Parse("Oid==?", item));
                var check  = unitOfWork.FindObject <Kundenstamm>(CriteriaOperator.Parse("KDNr==?", kunden.KDNr));
                if (check == null)
                {
                    Kundenstamm newKunden = new Kundenstamm(unitOfWork)
                    {
                        Oid             = kunden.Oid,
                        Anrede          = kunden.Anrede,
                        eMail           = kunden.eMail,
                        kdauftrgesperrt = kunden.kdauftrgesperrt,
                        KDNr            = kunden.KDNr,
                        Name1           = kunden.Name1,
                        Name2           = kunden.Name2,
                        Name3           = kunden.Name3,
                        Nation          = kunden.Nation,
                        Ort             = kunden.Ort,
                        PLZ             = kunden.PLZ,
                        Selektion       = kunden.Selektion,
                        Strasse         = kunden.Strasse,
                        Suchname        = kunden.Suchname,
                        Titel           = kunden.Titel
                    };

                    unitOfWork.CommitChanges();
                }
            }


            foreach (var item in massOrder.ArtikelIds)
            {
                var artikel = externalUow.FindObject <Artikelstamm>(CriteriaOperator.Parse("Oid==?", item));
                var check   = unitOfWork.FindObject <Artikelstamm>(CriteriaOperator.Parse("ArtNrInt==?", artikel.ArtNrInt));
                if (check == null)
                {
                    Artikelstamm newArtikel = new Artikelstamm(unitOfWork)
                    {
                        Oid                = artikel.Oid,
                        Artikeltext1       = artikel.Artikeltext1,
                        Artikeltext2       = artikel.Artikeltext2,
                        Artikeltext3       = artikel.Artikeltext3,
                        Bestand            = artikel.Bestand,
                        Bezeichnung        = artikel.Bezeichnung,
                        Stueckzahl         = artikel.Stueckzahl,
                        Verpackungseinheit = artikel.Verpackungseinheit,
                        ArtNr              = artikel.ArtNr,
                        ArtNrInt           = artikel.ArtNrInt
                    };
                    unitOfWork.CommitChanges();
                }
            }
        }
Пример #3
0
        public static Art GetArtikel(Artikelstamm item)
        {
            var model = new Art
            {
                Artikeltext1       = item.Artikeltext1,
                Artikeltext2       = item.Artikeltext2,
                Artikeltext3       = item.Artikeltext3,
                Bestand            = item.Bestand,
                Bezeichnung        = item.Bezeichnung,
                Stueckzahl         = item.Stueckzahl,
                Verpackungseinheit = item.Verpackungseinheit
            };

            return(model);
        }
Пример #4
0
        public ActionResult GridViewPartialAddNew(Art obj)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    // Insert here a code to insert the new item in your model

                    var artikel = new Artikelstamm(externalUow)
                    {
                        ArtNr              = obj.ArtNr.ToString(),
                        ArtNrInt           = obj.ArtNr,
                        Artikeltext1       = obj.Artikeltext1,
                        Artikeltext2       = obj.Artikeltext2,
                        Artikeltext3       = obj.Artikeltext3,
                        Bestand            = obj.Bestand,
                        Bezeichnung        = obj.Bezeichnung,
                        Stueckzahl         = obj.Stueckzahl,
                        Verpackungseinheit = obj.Verpackungseinheit
                    };
                    //new ArtikelLieferbar(unitOfWork)
                    //{
                    //    Artikel = artikel,
                    //    StueckzahlLieferbar = obj.StueckzahlLieferbar
                    //};
                    externalUow.CommitChanges();
                }
                catch (Exception e)
                {
                    ViewData["EditError"] = e.Message;
                }
            }
            else
            {
                ViewData["EditError"] = "Please, correct all errors.";
            }
            var model = new XPCollection <Artikelstamm>(externalUow, true);

            return(PartialView("~/Views/Items/_GridViewPartial.cshtml", model));
        }
Пример #5
0
        public List <BestellungSummen> BestellSummen(int Oid)
        {
            decimal summe = 0;
            List <BestellungSummen> bestellungSummenList = new List <BestellungSummen>();
            //check if stock is available
            //var bestellArtikels = unitOfWork.GetObjects(unitOfWork.GetClassInfo(typeof(BestellArtikel)), CriteriaOperator.Parse("Oid==?", Oid), null, 10, null, true);
            var bestellung      = unitOfWork.FindObject <Bestellung>(CriteriaOperator.Parse("Oid==?", Oid));
            var bestellArtikels = unitOfWork.GetObjects(unitOfWork.GetClassInfo(typeof(BestellArtikel)), CriteriaOperator.Parse("Bestellung==?", bestellung), null, 10, null, true);


            foreach (BestellArtikel bestellArtikel in bestellArtikels)
            {
                Artikelstamm _artikelstamm = externalUow.FindObject <Artikelstamm>(CriteriaOperator.Parse("Oid==?", bestellArtikel.Artikel));
                summe = Convert.ToDecimal(unitOfWork.Evaluate <BestellArtikel>(CriteriaOperator.Parse("sum(Stueckzahl)"), CriteriaOperator.Parse("Bestellung.Status == false AND Bestellung.Fertig == true AND Artikel == ?", _artikelstamm)));
                if (summe > 0)
                {
                    BestellungSummen bestellungSummen = new BestellungSummen(unitOfWork)
                    {
                        StueckSumme = summe,
                        Artikel     = _artikelstamm
                    };
                    decimal difference = bestellungSummen.Artikel.Bestand - bestellungSummen.StueckSumme;
                    if (difference < 0)
                    {
                        bestellungSummen.Lieferbar = false;
                    }
                    else
                    {
                        bestellungSummen.Lieferbar = true;
                    }
                    bestellungSummenList.Add(bestellungSummen);
                }
            }

            unitOfWork.CommitChanges();
            return(bestellungSummenList);
        }
Пример #6
0
        public string Put(int Oid)
        {
            //create a list of BestellungSummen
            List <BestellungSummen> bestellungSummenList = new List <BestellungSummen>();
            decimal summe = 0;

            //Bestellung
            var bestellung = unitOfWork.FindObject <Bestellung>(CriteriaOperator.Parse("Oid==?", Oid));

            //list of all bestellArtikels
            var bestellArtikels = unitOfWork.GetObjects(unitOfWork.GetClassInfo(typeof(BestellArtikel)), CriteriaOperator.Parse("Bestellung==?", bestellung), null, 10, null, true);

            foreach (BestellArtikel bestellArtikel in bestellArtikels)
            {
                Artikelstamm     _artikelstamm    = externalUow.FindObject <Artikelstamm>(CriteriaOperator.Parse("Oid==?", bestellArtikel.Artikel));
                ArtikelLieferbar artikelLieferbar = unitOfWork.FindObject <ArtikelLieferbar>(CriteriaOperator.Parse("Artikel.Oid==?", _artikelstamm.Oid));
                _artikelstamm.Stueckzahl = artikelLieferbar.StueckzahlLieferbar;
                _artikelstamm.Save();
                summe = Convert.ToDecimal(unitOfWork.Evaluate <BestellArtikel>(CriteriaOperator.Parse("sum(Stueckzahl)"), CriteriaOperator.Parse("Bestellung.Status == false AND Bestellung.Fertig == true AND Artikel == ?", _artikelstamm)));
                if (summe > 0)
                {
                    BestellungSummen bestellungSummen = new BestellungSummen(unitOfWork)
                    {
                        StueckSumme = summe,
                        Artikel     = _artikelstamm
                    };
                    decimal difference = bestellungSummen.Artikel.Bestand - bestellungSummen.StueckSumme;
                    if (difference < 0)
                    {
                        bestellungSummen.Lieferbar = false;
                    }
                    else
                    {
                        bestellungSummen.Lieferbar = true;
                    }
                    bestellungSummenList.Add(bestellungSummen);
                }
            }

            //bestellungSummenList is ready

            if (bestellungSummenList.Count != 0)
            {
                var newbestellungSummenList = bestellungSummenList.Where(i => i.Lieferbar == false);
                if (newbestellungSummenList.Count() == 0)
                {
                    MassBestellung   _massbestellung;
                    BestellAuftraege _bestellauftrag;
                    SQLConnection    _sqlconnection = unitOfWork.FindObject <SQLConnection>(CriteriaOperator.Parse("Oid==?", 1));
                    if (_sqlconnection.Mitarbeiter != 0)
                    {
                        if (bestellung.Fertig == true && bestellung.Status == false)
                        {
                            foreach (BestellArtikel bestellArtikel in bestellArtikels)
                            {
                                _massbestellung             = new MassBestellung(unitOfWork);
                                _massbestellung.mboid       = _sqlconnection.Mitarbeiter + DateTime.Now.ToString("ddMMyyyy") + bestellArtikel.BestellKunden.Bestellung.Oid.ToString() + bestellArtikel.BestellKunden.KDNr;
                                _massbestellung.ArtikelNr   = bestellArtikel.ArtikelNr;
                                _massbestellung.BestellNr   = bestellArtikel.BestellKunden.Bestellung.Oid;
                                _massbestellung.KDNr        = bestellArtikel.BestellKunden.KDNr;
                                _massbestellung.Stueck      = bestellArtikel.Stueckzahl;
                                _massbestellung.Mitarbeiter = null;
                                _massbestellung.Datum       = DateTime.Now.Date;
                                bestellArtikel.mboid        = _sqlconnection.Mitarbeiter + DateTime.Now.ToString("ddMMyyyy") + bestellArtikel.BestellKunden.Bestellung.Oid.ToString() + bestellArtikel.BestellKunden.KDNr;
                                _massbestellung.Save();
                                //try
                                //{
                                //    externalUow.CommitChanges();
                                //}
                                //catch (Exception e)
                                //{

                                //    throw;
                                //}
                                bestellArtikel.Save();
                                bestellArtikel.BestellKunden.Bestellung.Save();
                                bestellArtikel.Bestellung.Status = true;
                                // Neue Bestellung für BestellAuftrag - Zuweisung
                                _bestellauftrag            = new BestellAuftraege(unitOfWork);
                                _bestellauftrag.mboid      = _massbestellung.mboid;
                                _bestellauftrag.Bestellung = bestellArtikel.Bestellung;
                            }
                            bestellung.Fertig = true;
                            bestellung.Save();
                            unitOfWork.CommitChanges();
                            //return Content("Bestellungen erfolgreich abgesendet");
                            return("Bestellungen erfolgreich abgesendet");
                        }
                        else
                        {
                            //return Content("No Bistell to send");
                            return("No Bistell to send");
                        }
                    }
                    else
                    {
                        //return Content("Bitte tragen Sie unter 'Einstellungen' einen Mitarbeiter ein");
                        return("Bitte tragen Sie unter 'Einstellungen' einen Mitarbeiter ein");
                    }
                }
                else
                {
                    //return Content("Nicht alle Artikel sind lieferbar! Bitte ändern Sie die Stückzahlen");
                    return("Nicht alle Artikel sind lieferbar! Bitte ändern Sie die Stückzahlen");
                }
            }
            else
            {
                //return Content("Es wurde keine Bestellung versendet");
                return("Es wurde keine Bestellung versendet");
            }
        }
        public IHttpActionResult Get(int Oid)
        {
            //create a list of BestellungSummen
            List <BestellungSummen> bestellungSummenList = new List <BestellungSummen>();
            decimal summe = 0;

            //Bestellung
            var bestellung = unitOfWork.FindObject <Bestellung>(CriteriaOperator.Parse("Oid==?", Oid));

            //list of all bestellArtikels
            //var bestellArtikels = unitOfWork.GetObjects(unitOfWork.GetClassInfo(typeof(BestellArtikel)), CriteriaOperator.Parse("Bestellung==?", bestellung), null, 10, null, true);
            var bestellArtikels = new XPCollection <BestellArtikel>(unitOfWork, CriteriaOperator.Parse("Bestellung==?", bestellung));

            foreach (BestellArtikel bestellArtikel in bestellArtikels)
            {
                Artikelstamm _artikelstamm = unitOfWork.FindObject <Artikelstamm>(CriteriaOperator.Parse("Oid==?", bestellArtikel.Artikel.Oid));
                //ArtikelLieferbar artikelLieferbar = unitOfWork.FindObject<ArtikelLieferbar>(CriteriaOperator.Parse("Artikel.Oid==?", _artikelstamm.Oid));
                //_artikelstamm.Stueckzahl = artikelLieferbar.StueckzahlLieferbar;

                summe = Convert.ToDecimal(unitOfWork.Evaluate <BestellArtikel>(CriteriaOperator.Parse("sum(Stueckzahl)"), CriteriaOperator.Parse("Bestellung.Status == false AND Bestellung.Fertig == true AND Artikel == ?", _artikelstamm)));
                if (summe > 0)
                {
                    BestellungSummen bestellungSummen = new BestellungSummen(unitOfWork)
                    {
                        StueckSumme = summe,
                        Artikel     = _artikelstamm
                    };
                    decimal difference = bestellungSummen.Artikel.Bestand - bestellungSummen.StueckSumme;
                    if (difference < 0)
                    {
                        bestellungSummen.Lieferbar = false;
                    }
                    else
                    {
                        bestellungSummen.Lieferbar = true;
                    }
                    bestellungSummenList.Add(bestellungSummen);
                }
            }

            //bestellungSummenList is ready

            if (bestellungSummenList.Count != 0)
            {
                //var newbestellungSummenList = bestellungSummenList.Where(i => i.Lieferbar == false);
                MassBestellung   _massbestellung;
                BestellAuftraege _bestellauftrag;
                SQLConnection    _sqlconnection = unitOfWork.FindObject <SQLConnection>(CriteriaOperator.Parse("Oid==?", 1));
                if (_sqlconnection.Mitarbeiter != 0)
                {
                    if (bestellung.Fertig == true && bestellung.Status == false)
                    {
                        int newQty = 0;
                        foreach (BestellArtikel bestellArtikel in bestellArtikels)
                        {
                            _massbestellung             = new MassBestellung(externalUow);
                            _massbestellung.mboid       = _sqlconnection.Mitarbeiter + DateTime.Now.ToString("ddMMyyyy") + bestellArtikel.BestellKunden.Bestellung.Oid.ToString() + bestellArtikel.BestellKunden.KDNr;
                            _massbestellung.ArtikelNr   = bestellArtikel.ArtikelNr;
                            _massbestellung.BestellNr   = bestellArtikel.BestellKunden.Bestellung.Oid;
                            _massbestellung.KDNr        = bestellArtikel.BestellKunden.KDNr;
                            _massbestellung.Stueck      = bestellArtikel.Stueckzahl;
                            _massbestellung.Mitarbeiter = _sqlconnection.Mitarbeiter.ToString();
                            _massbestellung.Datum       = DateTime.Now.Date;
                            bestellArtikel.mboid        = _sqlconnection.Mitarbeiter + DateTime.Now.ToString("ddMMyyyy") + bestellArtikel.BestellKunden.Bestellung.Oid.ToString() + bestellArtikel.BestellKunden.KDNr;
                            _massbestellung.Save();
                            bestellArtikel.Save();
                            bestellArtikel.BestellKunden.Bestellung.Save();
                            bestellArtikel.Bestellung.Status = true;
                            // Neue Bestellung für BestellAuftrag - Zuweisung
                            _bestellauftrag            = new BestellAuftraege(unitOfWork);
                            _bestellauftrag.mboid      = _massbestellung.mboid;
                            _bestellauftrag.Bestellung = bestellArtikel.Bestellung;

                            //update available quantity
                            //newQty = bestellArtikel.Artikel.Bestand - Convert.ToInt32(bestellArtikel.Stueckzahl);
                            //bestellArtikel.Artikel.Bestand = newQty;
                            //bestellArtikel.Artikel.Save();
                            externalUow.CommitChanges();
                            unitOfWork.CommitChanges();
                        }
                        bestellung.Fertig = true;
                        unitOfWork.CommitChanges();
                        return(Json("Bestellungen erfolgreich abgesendet"));
                    }
                    else
                    {
                        return(Json("No Bistell to send"));
                    }
                }
                else
                {
                    return(Json("Bitte tragen Sie unter 'Einstellungen' einen Mitarbeiter ein"));
                }
            }
            else
            {
                return(Json("Es wurde keine Bestellung versendet"));
            }
        }