private void QueryApplyForm(Pagination pagination)
 {
     try
     {
         IEnumerable <OrderListView> orderInfos = OrderQueryService.QueryOrders(getCondition(), pagination);
         dataList.DataSource = Enumerable.Select(orderInfos, order =>
         {
             return(new
             {
                 order.OrderId,
                 PNR = order.ETDZPNR == null ? string.Empty : order.ETDZPNR.ToListString(),
                 AirportPair = order.Flights.Join("<br />",
                                                  f =>
                                                  string.Format(
                                                      "{0}-{1}",
                                                      f.DepartureCity,
                                                      f.ArrivalCity)),
                 FlightInfo = order.Flights.Join("<br />",
                                                 f => string.Format(
                                                     "{0}{1}<br />{2} / {3}",
                                                     f.Carrier,
                                                     f.FlightNo,
                                                     string.IsNullOrEmpty(f.Bunk) ? "-" : f.Bunk, getDiscountText(f.Discount))),
                 TakeoffTime = order.Flights.Join("<br />",
                                                  f => f.TakeoffTime.ToString("yyyy-MM-dd<br />HH:mm")),
                 Passengers = string.Join("<br />", order.Passengers),
                 ProducedTime =
                     order.ProducedTime.ToString("yyyy-MM-dd HH:mm"),
                 order.ProducedAccount,
                 order.PurchaserName,
                 allTakeOff = order.Flights.All(item => item.TakeoffTime < DateTime.Now)
             });
         });
         dataList.DataBind();
         if (orderInfos.Any())
         {
             pager.Visible = true;
             if (pagination.GetRowCount)
             {
                 pager.RowCount = pagination.RowCount;
             }
         }
         else
         {
             pager.Visible = false;
         }
     }
     catch (Exception ex)
     {
         ShowExceptionMessage(ex, "查询");
     }
 }
Beispiel #2
0
 void queryOrders(Pagination pagination)
 {
     try {
         var isAdmin = CurrentUser.IsAdministrator;
         IEnumerable <OrderListView> orderListViews = OrderQueryService.QueryOrders(getCondition(), pagination).ToList();
         var lockInfos = LockService.Query(orderListViews.Select(form => form.OrderId.ToString())).ToList();
         var orders    = from item in orderListViews
                         let IsShowPNR = item.Source == OrderSource.CodeImport ||
                                         item.Source == OrderSource.ContentImport ||
                                         item.Source == OrderSource.InterfaceOrder ||
                                         (item.Status > OrderStatus.PaidForSupply && item.Status != OrderStatus.Canceled)
                                         let lockInfo = lockInfos.FirstOrDefault(l => l.Key == item.OrderId.ToString())
                                                        select new
         {
             OrderId                                                 = item.OrderId,
             PNR                                                     = item.ETDZPNR != null?item.ETDZPNR.ToListString() : item.ReservationPNR == null || !IsShowPNR ? string.Empty : item.ReservationPNR.ToListString(),
                                                 Product             = item.ProductType.GetDescription(),
                                                 AirportPair         = item.Flights.Join("<br />", f => string.Format("{0}-{1}", f.DepartureCity, f.ArrivalCity)),
                                                 FlightInfo          = item.Flights.Join("<br />", f => string.Format("{0}{1}<br />{2}/{3}", f.Carrier, f.FlightNo, string.IsNullOrEmpty(f.Bunk) ? "-" : f.Bunk, getDiscountText(f.Discount))),
                                                 TakeoffTime         = item.Flights.Join("<br />", f => f.TakeoffTime.ToString("yyyy-MM-dd<br />HH:mm")),
                                                 Passenger           = item.Passengers.Join("<br />"),
                                                 Fare                = item.Flights.Sum(f => f.Fare).TrimInvaidZero(),
                                                 AirportFee          = item.Flights.Sum(f => f.AirportFee).TrimInvaidZero(),
                                                 BAF                 = item.Flights.Sum(f => f.BAF).TrimInvaidZero(),
                                                 SettleAmount        = item.SettlementForPurchaser.Amount.TrimInvaidZero(),
                                                 RebateAndCommission = item.ProductType == ProductType.Special ? string.Empty : string.Format("{0}%/{1}",
                                                                                                                                              (item.SettlementForPurchaser.Rebate * 100).TrimInvaidZero(),
                                                                                                                                              item.SettlementForPurchaser.Commission.TrimInvaidZero()),
                                                 item.ProducedAccount,
                                                 ProducedTime = item.ProducedTime.ToString("yyyy-MM-dd<br />HH:mm:ss"),
                                                 item.ProducedAccountName,
                                                 UnLockEnable = isAdmin && lockInfo != null && lockInfo.Account != CurrentUser.UserName
         };
         this.dataList.DataSource = orders;
         this.dataList.DataBind();
         if (orders.Any())
         {
             this.pager.Visible = true;
             if (pagination.GetRowCount)
             {
                 this.pager.RowCount = pagination.RowCount;
             }
         }
         else
         {
             this.pager.Visible = false;
         }
     } catch (Exception ex) {
         ShowExceptionMessage(ex, "查询");
     }
 }
Beispiel #3
0
 void queryOrders(Pagination pagination)
 {
     try {
         var orderListViews = OrderQueryService.QueryOrders(getCondition(), pagination).ToList();
         var lockInfos      = LockService.Query(orderListViews.Select(form => form.OrderId.ToString())).ToList();
         var orders         = from item in orderListViews
                              let lockInfo = lockInfos.FirstOrDefault(l => l.Key == item.OrderId.ToString())
                                             select new
         {
             OrderId       = item.OrderId,
             AirportPair   = item.Flights.Join("<br />", f => string.Format("{0}-{1}", f.DepartureCity, f.ArrivalCity)),
             FlightInfo    = item.Flights.Join("<br />", f => f.Carrier + f.FlightNo),
             TakeoffTime   = item.Flights.Join("<br />", f => f.TakeoffTime.ToString("yyyy-MM-dd<br />HH:mm")),
             Passenger     = item.Passengers.Join("<br />"),
             Fare          = item.Flights.Sum(f => f.Fare).TrimInvaidZero(),
             AirportFee    = item.Flights.Sum(f => f.AirportFee).TrimInvaidZero(),
             BAF           = item.Flights.Sum(f => f.BAF).TrimInvaidZero(),
             Status        = Service.Order.StatusService.GetOrderStatus(item.Status, m_IsSupplier ? OrderRole.Supplier : OrderRole.Provider),
             ProducedTime  = item.ProducedTime.ToString("yyyy-MM-dd<br />HH:mm:ss"),
             LockInfo      = lockInfo == null ? string.Empty :  lockInfo.Name + "<br />",
             RemindContent = item.RemindTime.HasValue ? item.RemindContent : string.Empty,
             RemindIsShow  = item.IsNeedReminded
         };
         this.dataList.DataSource = orders;
         this.dataList.DataBind();
         if (orders.Any())
         {
             this.pager.Visible = true;
             if (pagination.GetRowCount)
             {
                 this.pager.RowCount = pagination.RowCount;
             }
         }
         else
         {
             this.pager.Visible = false;
         }
     } catch (Exception ex) {
         ShowExceptionMessage(ex, "查询");
     }
 }
Beispiel #4
0
        private void queryOrders(Pagination pagination)
        {
            try
            {
                List <OrderListView> orders       = OrderQueryService.QueryOrders(GetCondition(), pagination).ToList();
                List <OrderListView> SortedOrders = orders.Where(o => o.Flights.Min(f => f.TakeoffTime.Date) == DateTime.Today).ToList();
                SortedOrders.AddRange(orders.Where(o => o.Flights.Min(f => f.TakeoffTime.Date) != DateTime.Today).OrderByDescending(o => o.IsEmergentOrder).ThenBy(o => o.PayTime));
                var lockInfos = LockService.Query(orders.Select(form => form.OrderId.ToString())).ToList();

                dataList.DataSource = SortedOrders.Select(item =>
                {
                    LockInfo lockInfo      = lockInfos.FirstOrDefault(l => l.Key == item.OrderId.ToString());
                    DateTime?startStatTime = null;
                    if (CurrentCompany.CompanyType == CompanyType.Supplier)
                    {
                    }
                    else if (item.IsSpecial && item.Supplier.HasValue)
                    {
                        if (item.SupplyTime.HasValue && item.PayTime.HasValue)
                        {
                            startStatTime = item.SupplyTime.Value > item.PayTime.Value ? item.SupplyTime.Value : item.PayTime.Value;
                        }
                    }
                    else
                    {
                        startStatTime = item.PayTime;
                    }
                    bool isRelation = item.PurcharseProviderRelation == null || item.PurcharseProviderRelation == RelationType.Brother;

                    return(new
                    {
                        item.OrderId,
                        Product = item.ProductType.GetDescription(),
                        PNR =
                            item.ETDZPNR != null
                                                                            ? item.ETDZPNR.ToListString()
                                                                            : item.ReservationPNR == null ? string.Empty : item.ReservationPNR.ToListString(),
                        AirportPair =
                            item.Flights.Join("<br />",
                                              f =>
                                              string.Format(
                                                  "{0}{1} {2} {3}-{4}<br />{5:yyyy-MM-dd HH:mm}",
                                                  f.Carrier,
                                                  f.FlightNo,
                                                  string.IsNullOrEmpty(f.Bunk) ? "-" : f.Bunk,
                                                  f.DepartureCity,
                                                  f.ArrivalCity,
                                                  f.TakeoffTime)),
                        Passenger = item.Passengers.Join("<br />"),
                        Fare = item.Flights.Sum(f => f.Fare).TrimInvaidZero(),
                        AirportFee = item.Flights.Sum(f => f.AirportFee).TrimInvaidZero(),
                        BAF = item.Flights.Sum(f => f.BAF).TrimInvaidZero(),
                        SettleAmount = item.SettlementForProvider.Amount.TrimInvaidZero(),
                        Rebate = (item.SettlementForProvider.Rebate * 100).TrimInvaidZero() + "%",
                        Commission = item.SettlementForProvider.Commission.TrimInvaidZero(),
                        Status = StatusService.GetOrderStatus(item.Status, OrderRole.Provider),
                        EmergentOrderContnt = item.IsEmergentOrder ? string.Format("<a href='javascript:void(0);' id='{0}' class='tips_btn urgent'>紧急</a>", item.OrderId) : string.Empty,
                        // EmergentOrderContnt = isEmergentOrder ? string.Format("<a href='javascript:void(0);' class='tips_btn urgent'>紧急</a><div class='tips_box hidden'><div class='tips_bd'><p>{0}</p></div></div>", emergentOrderContnt) : string.Empty,
                        ProducedTime = item.ProducedTime.ToString("yyyy-MM-dd<br />HH:mm:ss"),
                        ProductType = item.ProviderProductType.GetDescription(),
                        LockInfo = lockInfo == null? string.Empty:lockInfo.Name + "<br />",
                        OfficeNum = item.OfficeNo,
                        PurchaseIsBother = isRelation,
                        Relation = isRelation ?
                                   "平台" : item.PurcharseProviderRelation == RelationType.Interior?"内部":"下级",
                        TodaysFlight = item.Flights.Any(f => f.TakeoffTime.Date == DateTime.Today),
                        PassengerType = item.PassengerType.GetDescription(),
                        IsChildTicket = item.PassengerType == PassengerType.Child,
                        ETDZTime = (startStatTime.HasValue && item.RefuseETDZTime.HasValue) ? Math.Round((item.RefuseETDZTime.Value - startStatTime.Value).TotalMinutes).ToString() : (startStatTime.HasValue) ? Math.Round(((item.ETDZTime ?? DateTime.Now) - startStatTime.Value).TotalMinutes).ToString() :string.Empty,
                        TicketType = item.IsSpecial ? string.Empty : string.Format("({0})", item.TicketType.ToString()),
                        RemindContent = item.RemindTime.HasValue ? item.RemindContent : string.Empty,
                        RemindIsShow = item.IsNeedReminded
                    });
                });
                dataList.DataBind();
                if (orders.Any())
                {
                    pager.Visible = true;
                    if (pagination.GetRowCount)
                    {
                        pager.RowCount = pagination.RowCount;
                    }
                }
                else
                {
                    pager.Visible = false;
                }
            }
            catch (Exception ex)
            {
                ShowExceptionMessage(ex, "查询");
            }
        }