Example #1
0
        public DealListApiModel GetDealList(string query = "", int pageSize = 0, int currentPage = 1, List <string> sort = null)
        {
            var dbDeals  = _dealRepository.GetAllDeals(query, pageSize, currentPage, sort);
            var apiModel = new DealListApiModel();
            //var temp = dbDeals.Select(c => new DealListApiModel.DealInfo() { id = c.ID, name = c.Name, expectedDate = c.ClosingDate.GetValueOrDefault(), amount = c.Amount.GetValueOrDefault(), accountName = c.ACCOUNT.Name, priority = c.PRIORITY.Name});
            var results = new List <DealListApiModel.DealInfo>();

            foreach (var deal in dbDeals.deals)
            {
                var dealInfo = new DealListApiModel.DealInfo();
                dealInfo.id           = deal.ID;
                dealInfo.name         = deal.Name;
                dealInfo.createdAt    = deal.CreatedAt.GetValueOrDefault();
                dealInfo.expectedDate = deal.ExpectedClosingDate.GetValueOrDefault();
                dealInfo.endOn        = deal.ClosingDate.GetValueOrDefault();
                dealInfo.amount       = deal.Amount.GetValueOrDefault();
                dealInfo.accountName  = deal.ACCOUNT != null ? deal.ACCOUNT.Name : "";
                dealInfo.priority     = deal.PRIORITY != null ? deal.PRIORITY.Name : "";
                dealInfo.owner        = deal.Owner != null ? deal.Owner.Username : "";
                if (deal.STAGE_HISTORY.Count > 0)
                {
                    var stageHistory = deal.STAGE_HISTORY.MaxBy(c => c.ModifiedAt).FirstOrDefault();
                    if (stageHistory != null)
                    {
                        dealInfo.stage = stageHistory.STAGE.Name;
                    }
                }
                results.Add(dealInfo);
            }
            apiModel.deals    = results;
            apiModel.pageInfo = dbDeals.p;
            return(apiModel);
        }
Example #2
0
 public List <Deal> GetAllDeals()
 {
     return(dealRepository.GetAllDeals());
 }