Beispiel #1
0
        private static QuoteRevenue GetMainQuoteRevenue(IEnumerable <QuoteRevenue> quoteRevenues)
        {
            QuoteRevenue qR           = quoteRevenues.Where(q => q.Type.ToLower() == OrderType.NewProject).FirstOrDefault();
            float        totalBooking = 0;

            totalBooking    = quoteRevenues.Sum(q => q.Amount);
            qR.TotalBooking = totalBooking;

            if (qR == null)
            {
                throw new NullReferenceException();
            }
            return(qR);
        }
Beispiel #2
0
        public static Project GetProject(IEnumerable <QuoteRevenue> flatObjs)
        {
            QuoteRevenue quoteRevenue = GetMainQuoteRevenue(flatObjs);
            Project      project      = new Project
            {
                AccountName      = quoteRevenue.AccountName,
                OpportunityOwner = quoteRevenue.OpportunityOwner,
                Territory        = quoteRevenue.Territory,
                QuoteNumber      = quoteRevenue.QuoteNumber.Trim(),
                StudySite        = quoteRevenue.StudySite,
                ProjectLine      = quoteRevenue.ProjectLine,
                TotalBooking     = quoteRevenue.TotalBooking,
                USDCurrency      = Currency.USD
            };

            project.Format();
            return(project);
        }
Beispiel #3
0
        public static Order GetOrder(QuoteRevenue flatObj, Guid projectId, string quoteNumber)
        {
            if (flatObj == null)
            {
                throw new NullReferenceException("flatObj");
            }
            Order order = new Order
            {
                QuoteNumber      = quoteNumber,
                ProjectId        = projectId,
                Type             = flatObj.Type,
                AmountCurrency   = flatObj.AmountCurrency,
                Amount           = flatObj.Amount,
                BookingCloseDate = flatObj.BookingCloseDate
            };

            order.Check();
            order.Format();
            return(order);
        }