示例#1
0
 public SBList <Versandstaffelpreis> GetVersandstaffel(string customerPK)
 {
     if (!this.myVersandkostenDictionary.ContainsKey(customerPK))
     {
         var list = new SBList <Versandstaffelpreis>();
         var vRow = DataManager.SalesDataService.GetVersandkostenRow(customerPK);
         if (vRow != null)
         {
             if (vRow.AbWert1 > 0)
             {
                 var p1 = new Versandstaffelpreis();
                 p1.Kundennummer  = customerPK;
                 p1.AbWert        = vRow.AbWert1;
                 p1.Versandkosten = vRow.VKosten1;
                 list.Add(p1);
             }
             if (vRow.AbWert2 > 0)
             {
                 var p2 = new Versandstaffelpreis();
                 p2.Kundennummer  = customerPK;
                 p2.AbWert        = vRow.AbWert2;
                 p2.Versandkosten = vRow.VKosten2;
                 list.Add(p2);
             }
             if (vRow.AbWert3 > 0)
             {
                 var p3 = new Versandstaffelpreis();
                 p3.Kundennummer  = customerPK;
                 p3.AbWert        = vRow.AbWert3;
                 p3.Versandkosten = vRow.VKosten3;
                 list.Add(p3);
             }
             if (vRow.AbWert4 > 0)
             {
                 var p4 = new Versandstaffelpreis();
                 p4.Kundennummer  = customerPK;
                 p4.AbWert        = vRow.AbWert4;
                 p4.Versandkosten = vRow.VKosten4;
                 list.Add(p4);
             }
         }
         // Wir fügen die Liste auch hinzu, wenn sie leer ist.
         this.myVersandkostenDictionary.Add(customerPK, list);
     }
     return(this.myVersandkostenDictionary[customerPK].Sort("AbWert"));
 }
示例#2
0
        /// <summary>
        /// Gibt eine sortierbare Liste aller Sage Angebote für den angegebenen Kunden zurück.
        /// </summary>
        /// <param name="kundePK">10-stellige Kundennummer.</param>
        /// <returns></returns>
        public SBList <Angebot> GetAngeboteSageList(string kundePK)
        {
            var list = new SBList <Angebot>();

            foreach (var aRow in DataManager.SalesDataService.GetAngebotSageTable().Where(a => a.Kundennummer == kundePK))
            {
                list.Add(new Entities.Angebot(aRow));
            }
            return(list);
        }
示例#3
0
        /// <summary>
        /// Gibt eine sortierbare Liste mit allen Angeboten im System zurück.
        /// </summary>
        /// <returns></returns>
        public SBList <Angebot> GetAngeboteSageList()
        {
            var list = new SBList <Angebot>();

            foreach (var aRow in DataManager.SalesDataService.GetAngebotSageTable())
            {
                list.Add(new Angebot(aRow));
            }
            return(list);
        }
示例#4
0
 public SBList <OrderDetail> GetOrderDetailList(string customerPK)
 {
     if (!this.myOrderDetailDictionary.ContainsKey(customerPK))
     {
         var list = new SBList <OrderDetail>();
         foreach (var dRow in DataManager.OrderDataService.GetOrderDetailRows(customerPK))
         {
             list.Add(new OrderDetail(dRow));
         }
         this.myOrderDetailDictionary.Add(customerPK, list);
     }
     return(this.myOrderDetailDictionary[customerPK]);
 }
示例#5
0
 /// <summary>
 /// Gibt eine SalesStatsDataTable mit der Verkaufsstatistik für den angegebenen Kunden zurück.
 /// </summary>
 /// <param name="kunde">Instanz des Kunden.</param>
 /// <returns></returns>
 public SBList <KundenMonatsumsatz> GetSalesStats(Kunde kunde)
 {
     if (!this.mySalesStatsDictionary.ContainsKey(kunde.CustomerId))
     {
         var sList  = new SBList <KundenMonatsumsatz>();
         var sTable = DataManager.SalesDataService.GetSalesStatsTable(kunde.CustomerId);
         foreach (var sRow in sTable)
         {
             sList.Add(new KundenMonatsumsatz(sRow));
         }
         this.mySalesStatsDictionary.Add(kunde.CustomerId, sList);
     }
     return(this.mySalesStatsDictionary[kunde.CustomerId]);
 }
示例#6
0
        /// <summary>
        /// Gibt eine Liste der Interessenten für die angegebene Tour zurück.
        /// </summary>
        /// <param name="tour"></param>
        /// <returns></returns>
        public SBList <Interessent> GetInteressentenPerTour(Tour tour)
        {
            IEnumerable <dsSalesForce.TourInteressentXrefRow> xiRows = DataManager.SalesForceDataService.GetTourInteressentXrefListByTour(tour.UID);

            if (xiRows != null)
            {
                SBList <Interessent> list = new SBList <Interessent>();
                foreach (var xiRow in xiRows)
                {
                    list.Add(ModelManager.ProspectService.GetInteressent(xiRow.InteressentId));
                }
                return(list);
            }
            return(null);
        }
示例#7
0
        /// <summary>
        /// Gibt eine sortierbare Liste aller Kunden für die angegebene Tour zurück.
        /// </summary>
        /// <param name="tour"></param>
        /// <returns></returns>
        public SBList <Kunde> GetKundenPerTour(Tour tour)
        {
            IEnumerable <dsSalesForce.TourKundeXrefRow> xkRows = DataManager.SalesForceDataService.GetTourKundeXrefListByTour(tour.UID);

            if (xkRows != null)
            {
                SBList <Kunde> list = new SBList <Kunde>();
                foreach (var xkRow in xkRows)
                {
                    list.Add(ModelManager.CustomerService.GetKunde(xkRow.Kundennummer, false));
                }
                return(list);
            }
            return(null);
        }
示例#8
0
        /// <summary>
        /// Gibt eine sortierbare Liste der Software für die angegebene Maschine zurück.
        /// </summary>
        /// <param name="machine">Die Maschine, der die Software zugeordnet ist.</param>
        /// <returns></returns>
        public SBList <Kundensoftware> GetMachinesSoftware(Kundenmaschine machine)
        {
            var list = new SBList <Kundensoftware>();

            foreach (dsSoftware.KundenSoftwareRow sRow in DataManager.SoftwareDataService.GetMachineSoftwareRows(machine.UID))
            {
                var sw = this.myKundensoftwareList.FirstOrDefault(s => s.UID == sRow.UID);
                if (sw == null)
                {
                    sw = new Kundensoftware(sRow, machine.CurrentOwner, machine);
                    this.myKundensoftwareList.Add(sw);
                }
                list.Add(sw);
            }
            return(list);
        }
示例#9
0
        /// <summary>
        /// Erstellt eine neue Verknüpfung zwischen einer Datei und einer ILinkedItem Instanz.
        /// </summary>
        /// <param name="fileInfo">FileInfo Instanz der zu verknüpfenden Datei.</param>
        /// <param name="linkedItem">ILinkedItem Instanz des verknüpfenden Elements.</param>
        /// <param name="keepSourceFile">Wenn false, wird die Originaldatei gelöscht.</param>
        /// <returns></returns>
        public FileLink AddFileLink(FileInfo fileInfo, ILinkedItem linkedItem, bool keepSourceFile = true)
        {
            var builder = new Builder.FileLinkBuilder(DataManager.FileLinkDataService);

            builder
            .SetSourceFile(fileInfo)
            .SetLinkedItem(linkedItem)
            .SetKeepSourceFile(keepSourceFile);
            var newFileLink = builder.Build();

            if (this.myFileLinkDictionary.ContainsKey(linkedItem.Key))
            {
                this.myFileLinkDictionary[linkedItem.Key].Add(newFileLink);
            }
            else
            {
                var list = new SBList <FileLink>();
                list.Add(newFileLink);
                this.myFileLinkDictionary.Add(linkedItem.Key, list);
            }
            return(newFileLink);
        }