示例#1
0
        public IPagedList <CustomerExt> CustomerList(SearchCustomerParam param)
        {
            var ctx = this.UnitOfWork as LMS_DbContext;

            ctx.Configuration.AutoDetectChangesEnabled = false;
            ctx.Configuration.LazyLoadingEnabled       = false;      //不延迟加载
            Check.Argument.IsNotNull(ctx, "数据库对象");
            Expression <Func <Customer, bool> > filter = o => true;

            filter = filter.AndIf(a => a.Name.Contains(param.CustomerCode) || a.CustomerCode.Contains(param.CustomerCode),
                                  !string.IsNullOrEmpty(param.CustomerCode))
                     .AndIf(a => a.Status == param.Status, param.Status != null);

            var result = from a in ctx.Customers.Where(filter)
                         orderby a.CreatedOn descending
                         select new CustomerExt
            {
                CustomerID      = a.CustomerID,
                CustomerCode    = a.CustomerCode,
                Name            = a.Name,
                Status          = a.Status,
                LinkMan         = a.LinkMan,
                Tele            = a.Tele,
                CustomerManager = a.CustomerManager,
                CreatedOn       = a.CreatedOn,
                Balance         = a.CustomerBalance.Balance.HasValue?a.CustomerBalance.Balance.Value:0
            };

            return(result.ToPagedList(param.Page, param.PageSize));
        }
 //客户列表显示 add by yungchu
 public IPagedList <CustomerExt> GetCustomerList(SearchCustomerParam param)
 {
     return(_customerRepository.CustomerList(param));
 }