Beispiel #1
0
        /// <summary>
        /// 获取入库单列表
        /// </summary>
        /// <param name="filter">查询参数</param>
        /// <param name="pageSize">页大小</param>
        /// <returns>返回入库单列表 Ilist</returns>
        /// <remarks>2013-06-08 周唐炬 创建</remarks>
        public PagedList <WhStockIn> GetStockInList(ParaInStockFilter filter, int pageSize)
        {
            PagedList <WhStockIn> model = null;

            if (filter != null)
            {
                model = new PagedList <WhStockIn>();
                var pager = IInStockDao.Instance.GetWhStockInList(filter, pageSize);
                if (null != pager)
                {
                    model.TData            = pager.Rows;
                    model.TotalItemCount   = pager.TotalRows;
                    model.CurrentPageIndex = filter.CurrentPage;
                }
            }
            return(model);
        }
Beispiel #2
0
 /// <summary>
 /// 获取入库单列表
 /// </summary>
 /// <param name="filter">查询参数</param>
 /// <param name="pageSize">页大小</param>
 /// <returns>返回入库单列表 Ilist</returns>
 /// <remarks>2013-06-08 周唐炬 创建</remarks>
 public abstract Pager <WhStockIn> GetWhStockInList(ParaInStockFilter filter, int pageSize);
Beispiel #3
0
        /// <summary>
        /// 获取入库单列表
        /// </summary>
        /// <param name="filter">查询参数</param>
        /// <param name="pageSize">页大小</param>
        /// <returns>返回入库单列表 Ilist</returns>
        /// <remarks>2013-06-08 周唐炬 创建</remarks>
        public override Pager <WhStockIn> GetWhStockInList(ParaInStockFilter filter, int pageSize)
        {
            #region  原始调试Sql

            /*
             * --此处构造参数
             * select count(1)
             *  from WhStockIn w                                                                        --入库单
             *    inner join WhWarehouse b
             *    ON w.WarehouseSysNo = b.Sysno                                                         --仓库系统编号
             *  where (:WarehouseSysNo is null or w.WarehouseSysNo = :WarehouseSysNo)
             *     and (:SourceType is null or w.SourceType = :SourceType)
             *     and (:SourceSysNo is null or w.SourceSysNo = :SourceSysNo)
             *     and (:CreatedDate is null
             *         or to_char(w.CreatedDate,'YYYY MM DD') = to_char(:CreatedDate,'YYYY MM DD'))     --日期=YYYY MM DD
             */
            #endregion

            #region Sql 获取入库单列表
            const string sql =
                @"(SELECT w.*
                FROM WhStockIn w
                WHERE (@0 IS NULL OR EXISTS
                        (SELECT 1
                            FROM splitstr(@0, ',') tmp
                        WHERE tmp.col = w.Warehousesysno))
                   AND (@1 IS NULL OR @1<>0 AND w.SourceType = @1)
                   AND (@2 IS NULL OR w.SourceSysNo = @2)
                   AND (@3 IS NULL OR w.Status=@3)
                   AND (@4 IS NULL OR w.IsPrinted=@4)
                   AND (@5 IS NULL OR Convert(nvarchar(10),w.CreatedDate,120) = Convert(nvarchar(10),@5,120))
                ) tb     
            ";
            #endregion

            var dataList           = Context.Select <WhStockIn>("tb.*").From(sql);
            var dataCount          = Context.Select <int>("count(1)").From(sql);
            var warehouseSysNoList = string.Empty;
            if (null != filter.WarehouseSysNoList && filter.WarehouseSysNoList.Any())
            {
                warehouseSysNoList = string.Join(",", filter.WarehouseSysNoList);
            }
            var paras = new object[]
            {
                warehouseSysNoList,
                filter.SourceType,
                filter.SourceSysNo,
                filter.Status,
                filter.IsPrinted,
                filter.CreatedDate
            };
            dataList.Parameters(paras);
            dataCount.Parameters(paras);

            var pager = new Pager <WhStockIn>
            {
                Rows      = dataList.OrderBy(@"tb.SysNo desc").Paging(filter.CurrentPage, pageSize).QueryMany(),
                TotalRows = dataCount.QuerySingle()
            };

            return(pager);
        }