public ActionResult DoCrCustomerRebatesRecordQuery(ParaCustomerRebatesRecordFilter filter)
        {
            filter.PageSize = 10;
            var pager = CrCustomerRebatesRecordBo.Instance.GetCrCustomerRebatesRecordList(filter);
            var list  = new PagedList <CBCrCustomerRebatesRecord>
            {
                TData            = pager.Rows,
                CurrentPageIndex = pager.CurrentPage,
                TotalItemCount   = pager.TotalRows
            };

            return(PartialView("_CustomerRebatesRecordPager", list));
        }
        /// <summary>
        /// 返利记录信息
        /// </summary>
        /// <param name="filter">返利记录信息</param>
        /// <returns>返回返利记录信息</returns>
        /// <remarks>2015-09-15 王耀发 创建</remarks>
        public override Pager <CBCrCustomerRebatesRecord> GetCrCustomerRebatesRecordList(ParaCustomerRebatesRecordFilter filter)
        {
            string where = "";
            if (!string.IsNullOrWhiteSpace(filter.SysNoList))
            {
                where += " and a.sysNo in(" + filter.SysNoList + ") ";
            }
            string sql = @"(select a.*, b.Account as RecommendAccount,b.Name as RecommendName,c.Account as ComplyAccount,c.Name as ComplyName,rd.DealerName as RDealerName  
                            ,so.OrderAmount+so.OrderDiscountAmount as OrderAmount,ware.BackWarehouseName as WarehouseName,
                            so.ProductAmount,so.ProductChangeAmount,so.FreightAmount,so.CouponAmount
                    from CrCustomerRebatesRecord a left join CrCustomer b on a.RecommendSysNo = b.SysNo 
                    left join CrCustomer c on a.ComplySysNo = c.SysNo 
                    left join DsDealer rd on b.DealerSysNo = rd.SysNo   
                    left join SoOrder so on so.SysNo=a.OrderSysNo 
                    left join WhWarehouse ware on so.DefaultWarehouseSysNo=ware.SysNo
                    where (@0 = 0 or a.OrderSysNo = @1)  
                    " + where + @"
                                   ) tb";

            var dataList  = Context.Select <CBCrCustomerRebatesRecord>("tb.*").From(sql);
            var dataCount = Context.Select <int>("count(1)").From(sql);

            var paras = new object[]
            {
                filter.OrderSysNo, filter.OrderSysNo
            };

            dataList.Parameters(paras);
            dataCount.Parameters(paras);

            var pager = new Pager <CBCrCustomerRebatesRecord>
            {
                CurrentPage = filter.Id,
                PageSize    = filter.PageSize
            };
            var totalRows = dataCount.QuerySingle();
            var rows      = dataList.OrderBy("tb.RebatesTime desc").Paging(pager.CurrentPage, pager.PageSize).QueryMany();

            pager.TotalRows = totalRows;
            pager.Rows      = rows;

            return(pager);
        }
 /// <summary>
 /// 分页获取返利记录
 /// </summary>
 /// <param name="filter">筛选条件</param>
 /// <returns>分页列表</returns>
 /// <remarks>2015-08-06 王耀发 创建</remarks>
 public Pager <CBCrCustomerRebatesRecord> GetCrCustomerRebatesRecordList(ParaCustomerRebatesRecordFilter filter)
 {
     return(ICrCustomerRebatesRecordDao.Instance.GetCrCustomerRebatesRecordList(filter));
 }
示例#4
0
 /// <summary>
 /// 获取返利记录列表
 /// </summary>
 /// <param name="sysNo">返利记录系统编号</param>
 /// <returns>返利记录列表</returns>
 /// <remarks>2015-08-30 王耀发 创建</remarks>
 public abstract Pager <CBCrCustomerRebatesRecord> GetCrCustomerRebatesRecordList(ParaCustomerRebatesRecordFilter filter);
        /// <summary>
        /// 提现订单导出
        /// </summary>
        /// <param name="id"></param>
        /// <param name="userIp"></param>
        /// <param name="operatorSysno"></param>
        /// <remarks>2017-2-10 杨云奕 创建</remarks>
        public void ExportPredepositCashOrders(int id, string userIp, int operatorSysno)
        {
            try
            {
                // 查询订单
                var predepositCashInfo = BLL.SellBusiness.CrPredepositCashBo.Instance.GetModel(id);

                var preCashAssoInfo = CrPredepositCashRebatesRecordAssociationBo.Instance.GetModel(id, predepositCashInfo.PdcUserId);
                IList <CBCrCustomerRebatesRecord> orderList = new List <CBCrCustomerRebatesRecord>();
                if (preCashAssoInfo != null)
                {
                    var filter = new ParaCustomerRebatesRecordFilter();
                    filter.SysNoList = preCashAssoInfo.CrCustomerRebatesRecordSysNos;
                    filter.Id        = 1;
                    filter.PageSize  = 999999;
                    var pager = CrCustomerRebatesRecordBo.Instance.GetCrCustomerRebatesRecordList(filter);
                    orderList = pager.Rows;
                }
                List <int> orderSysNos = new List <int>();
                foreach (var mod in orderList)
                {
                    orderSysNos.Add(mod.OrderSysNo);
                }
                List <CBSoOrderItem> items = Hyt.BLL.Order.SoOrderBo.Instance.GetOrderItemsByOrderId(orderSysNos.ToArray());

                List <OutputCustomerRebatesRecord> recordList = new List <OutputCustomerRebatesRecord>();

                foreach (var mod in orderList)
                {
                    List <CBSoOrderItem> tempItems = items.FindAll(p => p.OrderSysNo == mod.OrderSysNo);
                    recordList.Add(new OutputCustomerRebatesRecord()
                    {
                        订单编号  = mod.OrderSysNo.ToString(),
                        推荐人名称 = mod.RecommendName,
                        消费者名称 = mod.ComplyName,
                        返利金额  = mod.Rebates.ToString(),
                        返利状态  = mod.Status == "0" ? "冻结" : mod.Status == "1" ? "完结" : mod.Status == "2" ? "作废" : "",
                        分销商等级 = mod.Genre + "级佣金",
                        出库仓库  = mod.WarehouseName,
                        订单金额  = mod.OrderAmount.ToString(),
                        商品金额  = mod.ProductAmount,
                        优惠金额  = mod.CouponAmount,
                        运费金额  = mod.FreightAmount,
                        商品调价  = mod.ProductChangeAmount,
                        商品名称  = tempItems[0].ProductName,
                        商品编号  = tempItems[0].ProductSysNo.ToString(),
                        购买数量  = tempItems[0].Quantity.ToString(),
                        购买金额  = tempItems[0].SalesAmount.ToString()
                    });
                    for (int i = 1; i < tempItems.Count; i++)
                    {
                        recordList.Add(new OutputCustomerRebatesRecord()
                        {
                            商品名称 = tempItems[i].ProductName,
                            商品编号 = tempItems[i].ProductSysNo.ToString(),
                            购买数量 = tempItems[i].Quantity.ToString(),
                            购买金额 = tempItems[i].SalesAmount.ToString()
                        });
                    }
                }


                var fileName = string.Format("会员提现订单明细({0})", DateTime.Now.ToString("yyyyMMddHHmmss"));


                Util.ExcelUtil.ExportSoOrders <OutputCustomerRebatesRecord>(recordList,
                                                                            new List <string> {
                    "订单编号", "推荐人名称", "消费者名称", "分销商等级",
                    "返利金额", "返利状态", "出库仓库", "商品金额", "商品调价", "优惠金额", "运费金额", "订单金额",
                    "商品编号", "商品名称", "购买数量", "购买金额"
                },
                                                                            fileName);
                SysLog.Instance.WriteLog(LogStatus.SysLogLevel.Info, LogStatus.系统日志来源.后台, "销售订单导出excel",
                                         LogStatus.系统日志目标类型.ExcelExporting, 0, null, userIp, operatorSysno);
            }
            catch (Exception ex)
            {
                SysLog.Instance.WriteLog(LogStatus.SysLogLevel.Error, LogStatus.系统日志来源.后台, "销售订单导出excel",
                                         LogStatus.系统日志目标类型.ExcelExporting, 0, ex, userIp, operatorSysno);
            }
        }