public async Task <PageBase <EntityTask> > GetPageTaskAsync(EntityTaskQuery entityTaskQuery) { var result = new PageBase <EntityTask> { CurrentPage = entityTaskQuery.CurrentPage, PageSize = entityTaskQuery.PageSize }; var strTotalSql = new StringBuilder(); var strSql = new StringBuilder(); //计算总数 strTotalSql.Append(@" SELECT COUNT(1) FROM T_Task where 1=1 "); if (!entityTaskQuery.IsAll) { strTotalSql.Append(" and Status = @isEnable "); } if (!string.IsNullOrEmpty(entityTaskQuery.Name)) { strTotalSql.Append(" and Name like @name "); } //分页信息 strSql.Append(@"; SELECT Id , GroupId , Name , CreateAt , UpdateAt , TaskType , RequestVerb , RequestUrl , Remark, Description, CronExpress, Status FROM T_Task where 1=1 "); if (!entityTaskQuery.IsAll) { strSql.Append(" and Status=@isEnable "); } if (!string.IsNullOrEmpty(entityTaskQuery.Name)) { strSql.Append(" and Name like @name "); } strSql.Append(@" order by CreateAt desc "); strSql.Append(@" limit @startIndex,@pageSize "); var paras = new DynamicParameters(new { isEnable = entityTaskQuery.TaskStatus, name = "%" + entityTaskQuery.Name + "%", startIndex = (entityTaskQuery.CurrentPage - 1) * entityTaskQuery.PageSize, pageSize = entityTaskQuery.PageSize }); var taskRep = GetRepositoryInstance <TableTask>(); var sqlQuery = new SqlQuery(strSql.ToString(), paras); var listResult = await taskRep.FindAllAsync(sqlQuery); result.Items = Mapper.Map <List <TableTask>, List <EntityTask> >(listResult.AsList()); result.TotalCounts = taskRep.Connection.ExecuteScalar <int>(strTotalSql.ToString(), paras); result.TotalPages = Convert.ToInt32(Math.Ceiling(result.TotalCounts / (entityTaskQuery.PageSize * 1.0))); return(result); }
public async Task <ResponseModel> GetPageTaskAsync([FromQuery] EntityTaskQuery entityPageQuery) { var result = await TaskService.GetPageTaskAsync(entityPageQuery); return(Success(result)); }