예제 #1
0
파일: Journal.cs 프로젝트: hytdadmin/OA
        /// <summary>
        /// 多表连接查询
        /// </summary>
        public DataTable GetJournalListByTB(JournalTO TO, int pageIndex, int pageSize, string orderBy, out int rowCount)
        {
            string table  = " Journal j left join UserInfo u on j.PublishUserCode=u.UserCode ";
            string pk     = " j.ID ";
            string fields = " j.Id,j.Contents,j.PublishTime,j.PublishUserCode,u.UserName,u.HeadImg ";
            string filter = "";// string.Format(" Status={0} ", ConstantsManager.JiLuZhuangTai.Normal);

            #region 组织查询条件


            //if (!string.IsNullOrEmpty(TO.MC))
            //{
            //	filter += string.Format(" and MC like '%{0}%' ", StringHelper.SQLFilter(TO.MC));
            //}
            filter += " j.IsDel=1 and u.UserStatus=1 ";
            if (!string.IsNullOrEmpty(TO.Contents))
            {
                filter += string.Format(" and j.Contents like '%{0}%' ", StringHelper.SQLFilter(TO.Contents));
            }
            if (TO.DepId > 0)
            {
                filter += string.Format(" and u.DepartmentId={0} ", TO.DepId);
            }
            if (!string.IsNullOrEmpty(TO.SearchTime))
            {
                filter += string.Format(" and datediff(day,publishTime,'{0}')=0", StringHelper.SQLFilter(TO.SearchTime));
            }
            #endregion

            string sort = " j.ID DESC ";//排序
            if (!string.IsNullOrEmpty(orderBy))
            {
                sort = orderBy;
            }

            SqlParameter[] parameters =
            {
                new SqlParameter("@Tables",    SqlDbType.VarChar, 1000),
                new SqlParameter("@PK",        SqlDbType.VarChar,  100),
                new SqlParameter("@Fields",    SqlDbType.VarChar, 1000),
                new SqlParameter("@Pageindex", SqlDbType.Int),
                new SqlParameter("@PageSize",  SqlDbType.Int),
                new SqlParameter("@Filter",    SqlDbType.VarChar, 1000),
                new SqlParameter("@Sort",      SqlDbType.VarChar,  200),
                new SqlParameter("@RowCount",  SqlDbType.Int)
            };
            parameters[0].Value     = table;
            parameters[1].Value     = pk;
            parameters[2].Value     = fields;
            parameters[3].Value     = pageIndex;
            parameters[4].Value     = pageSize;
            parameters[5].Value     = filter;
            parameters[6].Value     = sort;
            parameters[7].Direction = ParameterDirection.Output;

            DataSet ds = SqlHelper.RunProcedure("SP_DividePage", parameters, "JournalList");
            rowCount = (int)parameters[7].Value;
            return(ds.Tables[0]);
        }
예제 #2
0
 /// <summary>
 /// 多表连接查询
 /// </summary>
 public DataTable GetJournalListByTB(JournalTO TO, int pageIndex, int pageSize, string orderBy, out int rowCount)
 {
     return(service.GetJournalListByTB(TO, pageIndex, pageSize, orderBy, out rowCount));
 }