Example #1
0
        /// <summary>
        /// 分页获取门店已结算订单
        /// </summary>
        /// <param name="page"></param>
        /// <param name="pagesize"></param>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        /// <param name="orderId"></param>
        /// <returns></returns>
        public DataGridModel <DTO.SettledOrders> GetSettlementOrders(int page           = 1, int pagesize = 10,
                                                                     DateTime?startDate = null, DateTime?endDate = null, long?orderId = null, long?WeekSettlementId = null)
        {
            CheckShopManageLogin();
            var  shop   = CurrentShop;
            long shopId = shop.Id;

            var query = new SettlementOrderQuery()
            {
                OrderStart       = startDate,
                OrderEnd         = endDate,
                PageNo           = page,
                PageSize         = pagesize,
                OrderId          = orderId,
                ShopId           = shopId,
                WeekSettlementId = WeekSettlementId
            };
            var model = BillingApplication.GetSettlementOrders(query);
            DataGridModel <DTO.SettledOrders> result = new DataGridModel <DTO.SettledOrders>()
            {
                rows  = model.Models,
                total = model.Total
            };

            return(result);
        }
        /// <summary>
        /// 分页获取已结算订单列表
        /// </summary>
        /// <param name="query">查询实体</param>
        /// <returns></returns>
        public static QueryPageModel <SettledOrders> GetSettlementOrders(SettlementOrderQuery query)
        {
            QueryPageModel <SettledOrders> orders = new QueryPageModel <SettledOrders>();
            var model = _iBillingService.GetSettlementOrders(query);

            orders.Total = model.Total;
            List <SettledOrders> SettledOrders = new List <SettledOrders>();

            foreach (var m in model.Models)
            {
                SettledOrders o = new SettledOrders();
                o.DistributorCommission = m.BrokerageAmount - m.ReturnBrokerageAmount;
                o.OrderAmount           = m.OrderAmount;
                o.OrderFinshTime        = m.OrderFinshDate.ToString("yyyy-MM-dd HH:mm:ss");
                o.OrderId          = m.OrderId;
                o.PlatCommission   = m.CommissionAmount - m.RefundCommisAmount;
                o.RefundAmount     = m.RefundTotalAmount;
                o.SettledTime      = m.Date.ToString("yyyy-MM-dd HH:mm:ss");
                o.SettlementAmount = m.SettlementAmount;
                o.ShopName         = m.ShopName;
                o.ShopId           = m.ShopId;
                o.PaymentTypeName  = m.PaymentTypeName;
                SettledOrders.Add(o);
            }
            orders.Models = SettledOrders;
            return(orders);
        }
Example #3
0
        /// <summary>
        /// 获取已结算订单
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public static List <SettledOrders> GetSettlementOrdersNoPage(SettlementOrderQuery query)
        {
            var models        = _iBillingService.GetSettlementOrdersNoPage(query);
            var settledOrders = new List <SettledOrders>();

            foreach (var m in models)
            {
                var o = new SettledOrders();
                o.DistributorCommission = m.BrokerageAmount - m.ReturnBrokerageAmount;
                o.OrderAmount           = m.OrderAmount;
                o.OrderFinshTime        = m.OrderFinshDate.ToString("yyyy-MM-dd HH:mm:ss");
                o.OrderId          = m.OrderId;
                o.PlatCommission   = m.CommissionAmount - m.RefundCommisAmount;
                o.RefundAmount     = m.RefundTotalAmount;
                o.SettledTime      = m.Date.ToString("yyyy-MM-dd HH:mm:ss");
                o.SettlementAmount = m.SettlementAmount;
                o.ShopName         = m.ShopName;
                o.ShopId           = m.ShopId;
                o.PaymentTypeName  = m.PaymentTypeName;
                o.OpenCommission   = m.OpenCommission;
                o.JoinCommission   = m.JoinCommission;
                settledOrders.Add(o);
            }
            return(settledOrders);
        }
Example #4
0
        private GetBuilder <AccountDetailInfo> ToWhere(SettlementOrderQuery query)
        {
            //var accountDetailQuery = Context.AccountDetailInfo.AsQueryable();
            var accountDetailQuery = DbFactory.Default.Get <AccountDetailInfo>();

            if (query.ShopId.HasValue)
            {
                accountDetailQuery.Where(a => a.ShopId == query.ShopId.Value);
            }
            if (query.OrderId.HasValue)
            {
                accountDetailQuery.Where(a => a.OrderId == query.OrderId.Value);
            }
            if (query.OrderStart.HasValue)
            {
                accountDetailQuery.Where(a => a.OrderFinshDate >= query.OrderStart.Value);
            }
            if (query.OrderEnd.HasValue)
            {
                var end = query.OrderEnd.Value.Date.AddDays(1);
                accountDetailQuery.Where(a => a.OrderFinshDate < end);
            }
            if (query.SettleStart.HasValue)
            {
                accountDetailQuery.Where(a => a.Date >= query.SettleStart.Value);
            }
            if (query.SettleEnd.HasValue)
            {
                var end = query.SettleEnd.Value.Date.AddDays(1);
                accountDetailQuery.Where(a => a.Date < end);
            }

            if (!string.IsNullOrEmpty(query.ShopName))
            {
                accountDetailQuery.Where(a => a.ShopName.Contains(query.ShopName));
            }
            if (!string.IsNullOrEmpty(query.PaymentName))
            {
                if (string.Equals(query.PaymentName, "组合支付"))
                {
                    accountDetailQuery.Where(a => a.PaymentTypeName.Contains("+"));
                }
                else
                {
                    accountDetailQuery.Where(a => a.PaymentTypeName.Contains(query.PaymentName));
                }
            }
            if (query.WeekSettlementId.HasValue && query.WeekSettlementId.Value != 0)
            {
                var detailId = query.WeekSettlementId.Value;
                accountDetailQuery.Where(a => a.AccountId == detailId);
            }
            return(accountDetailQuery);
        }
Example #5
0
        /// <summary>
        /// 分页获取已结算订单
        /// </summary>
        /// <param name="query">结算订单查询实体</param>
        /// <returns></returns>
        public QueryPageModel <AccountDetailInfo> GetSettlementOrders(SettlementOrderQuery query)
        {
            var accountDetailQuery = ToWhere(query);
            var models             = accountDetailQuery.OrderByDescending(o => o.Id).ToPagedList(query.PageNo, query.PageSize);
            QueryPageModel <AccountDetailInfo> pageModel = new QueryPageModel <AccountDetailInfo>()
            {
                Models = models, Total = models.TotalRecordCount
            };

            return(pageModel);
        }
        /// <summary>
        /// 分页获取已结算订单
        /// </summary>
        /// <param name="query">结算订单查询实体</param>
        /// <returns></returns>
        public QueryPageModel <AccountDetailInfo> GetSettlementOrders(SettlementOrderQuery query)
        {
            int total = 0;
            var accountDetailQuery = ToWhere(query);

            accountDetailQuery = accountDetailQuery.GetPage(out total, d => d.OrderByDescending(o => o.Id), query.PageNo, query.PageSize);
            QueryPageModel <AccountDetailInfo> pageModel = new QueryPageModel <AccountDetailInfo>()
            {
                Models = accountDetailQuery.ToList(), Total = total
            };

            return(pageModel);
        }
Example #7
0
        /// <summary>
        /// 导出已结算预约单
        /// </summary>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        /// <param name="orderId"></param>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public ActionResult ExportSettlementOrder(DateTime?startDate, DateTime?endDate, DateTime?BillingstartDate, DateTime?BillingendDate, long?orderId, long?detailId)
        {
            var query = new SettlementOrderQuery();

            query.OrderStart       = startDate;
            query.OrderEnd         = endDate;
            query.SettleStart      = BillingstartDate;
            query.SettleEnd        = BillingendDate;
            query.OrderId          = orderId;
            query.ShopId           = CurrentSellerManager.ShopId;
            query.WeekSettlementId = detailId;
            var models = BillingApplication.GetSettlementOrdersNoPage(query);

            return(ExcelView("已结算预约单", models));
        }
Example #8
0
        /// <summary>
        /// 导出已结算订单
        /// </summary>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        /// <param name="BillingstartDate"></param>
        /// <param name="BillingendDate"></param>
        /// <param name="shopName"></param>
        /// <param name="paymentName"></param>
        /// <param name="orderId"></param>
        /// <param name="detailId"></param>
        /// <returns></returns>
        public ActionResult ExportSettlementOrders(DateTime?startDate, DateTime?endDate, DateTime?BillingstartDate, DateTime?BillingendDate, long?shopId, string paymentName, long?orderId, long?detailId)
        {
            var query = new SettlementOrderQuery();

            query.OrderStart       = startDate;
            query.OrderEnd         = endDate;
            query.WeekSettlementId = detailId;
            query.SettleStart      = BillingstartDate;
            query.SettleEnd        = BillingendDate;
            query.PaymentName      = paymentName;
            query.OrderId          = orderId;
            query.ShopId           = shopId;
            var models = BillingApplication.GetAllSettlementOrders(query);

            return(ExcelView("已结算订单", models));
        }
        private IQueryable <AccountDetailInfo> ToWhere(SettlementOrderQuery query)
        {
            var accountDetailQuery = Context.AccountDetailInfo.AsQueryable();

            if (query.ShopId.HasValue)
            {
                accountDetailQuery = accountDetailQuery.Where(a => a.ShopId == query.ShopId.Value);
            }
            if (query.OrderId.HasValue)
            {
                accountDetailQuery = accountDetailQuery.Where(a => a.OrderId == query.OrderId.Value);
            }
            if (query.OrderStart.HasValue)
            {
                accountDetailQuery = accountDetailQuery.Where(a => a.OrderFinshDate >= query.OrderStart.Value);
            }
            if (query.OrderEnd.HasValue)
            {
                var end = query.OrderEnd.Value.Date.AddDays(1);
                accountDetailQuery = accountDetailQuery.Where(a => a.OrderFinshDate < end);
            }
            if (query.SettleStart.HasValue)
            {
                accountDetailQuery = accountDetailQuery.Where(a => a.Date >= query.SettleStart.Value);
            }
            if (query.SettleEnd.HasValue)
            {
                var end = query.SettleEnd.Value.Date.AddDays(1);
                accountDetailQuery = accountDetailQuery.Where(a => a.Date < end);
            }

            if (!string.IsNullOrEmpty(query.ShopName))
            {
                accountDetailQuery = accountDetailQuery.Where(a => a.ShopName.Contains(query.ShopName));
            }
            if (!string.IsNullOrEmpty(query.PaymentName))
            {
                accountDetailQuery = accountDetailQuery.Where(a => a.PaymentTypeName == query.PaymentName);
            }
            if (query.WeekSettlementId.HasValue && query.WeekSettlementId.Value != 0)
            {
                var detailId = query.WeekSettlementId.Value;
                accountDetailQuery = accountDetailQuery.Where(a => a.AccountId == detailId);
            }
            return(accountDetailQuery);
        }
Example #10
0
        public JsonResult SettlementOrderList(DateTime?startDate, DateTime?endDate, DateTime?BillingstartDate, DateTime?BillingendDate, long?orderId, long?detailId, int page, int rows)
        {
            var query = new SettlementOrderQuery();

            query.OrderStart       = startDate;
            query.OrderEnd         = endDate;
            query.SettleStart      = BillingstartDate;
            query.SettleEnd        = BillingendDate;
            query.WeekSettlementId = detailId;
            query.PageNo           = page;
            query.PageSize         = rows;
            query.OrderId          = orderId;
            query.ShopId           = CurrentSellerManager.ShopId;
            var model  = BillingApplication.GetSettlementOrders(query);
            var result = new { rows = model.Models, total = model.Total };

            return(Json(result));
        }
Example #11
0
        /// <summary>
        /// 获取已结算订单
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public List <AccountDetailInfo> GetAllSettlementOrders(SettlementOrderQuery query)
        {
            var accountDetailQuery = ToWhere(query);

            return(accountDetailQuery.ToList());
        }