Esempio n. 1
0
        public ExchangeBagLogModel ExchangeBagLogDataBind(MailExchangeBagLogsParam filterModel)
        {
            filterModel.StartTime = filterModel.StartTime ?? DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " " + "00:00");;
            filterModel.EndTime   = filterModel.EndTime ?? DateTime.Parse(DateTime.Now.AddDays(1).ToString("yyyy-MM-dd") + " " + "00:00");;

            var model = new ExchangeBagLogModel()
            {
                FilterModel = filterModel,
                PagedList   = _fubService.GetMailExchangeBagLogsList(new  MailExchangeBagLogsParam()
                {
                    Page        = filterModel.Page,
                    PageSize    = filterModel.PageSize,
                    TrackNumber = filterModel.TrackNumber,
                    StartTime   = filterModel.StartTime,
                    EndTime     = filterModel.EndTime
                })
            };

            return(model);
        }
        /// <summary>
        /// 换袋记录查询
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public IPagedList <MailExchangeBagLogsExt> GetMailExchangeBagLogsList(MailExchangeBagLogsParam param)
        {
            Expression <Func <MailExchangeBagLog, bool> > filter = o => true;
            var numberList = new List <string>();

            if (!string.IsNullOrWhiteSpace(param.TrackNumber))
            {
                numberList =
                    param.TrackNumber
                    .Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries)
                    .ToList();
            }

            if (numberList.Any())
            {
                filter = filter.And(a => numberList.Contains(a.TrackNumber));
            }
            else
            {
                filter = filter.AndIf(a => param.StartTime <= a.ExchangeTime, param.StartTime.HasValue)
                         .AndIf(a => a.ExchangeTime <= param.EndTime, param.EndTime.HasValue);
            }

            using (var ctx = new LMS_DbContext())
            {
                ctx.Configuration.AutoDetectChangesEnabled = false;
                var result = from a in ctx.MailExchangeBagLogs.AsNoTracking().Where(filter)
                             join b in ctx.WayBillInfos.AsNoTracking() on a.TrackNumber equals b.TrackingNumber
                             orderby a.ExchangeTime descending
                             select new MailExchangeBagLogsExt
                {
                    TrackNumber      = a.TrackNumber,
                    PostBagNumber    = a.PostBagNumber,           //旧云途邮袋号
                    NewPostBagNumber = a.NewPostBagNumber,        //新云途邮袋号
                    ExchangeTime     = a.ExchangeTime,
                    RecordBy         = a.RecordBy,
                    CountryCode      = b.CountryCode
                };
                return(result.ToPagedList(param.Page, param.PageSize));
            }
        }
Esempio n. 3
0
 public ExchangeBagLogModel()
 {
     FilterModel = new MailExchangeBagLogsParam();
     PagedList   = new PagedList <MailExchangeBagLogsExt>();
 }
Esempio n. 4
0
 /// <summary>
 /// 换袋记录查询
 /// add by yungchu
 /// </summary>
 /// <returns></returns>
 public ActionResult ExchangeBagLogList(MailExchangeBagLogsParam filterModel)
 {
     return(View(ExchangeBagLogDataBind(filterModel)));
 }
Esempio n. 5
0
 public IPagedList <MailExchangeBagLogsExt> GetMailExchangeBagLogsList(MailExchangeBagLogsParam param)
 {
     return(_mailExchangeBagLogRepository.GetMailExchangeBagLogsList(param));
 }