mirror of
https://github.com/anjoy8/Blog.Core.git
synced 2024-09-20 23:48:27 +08:00
Optimize PageModel
This commit is contained in:
parent
831299929e
commit
d166b02cd5
|
@ -16,7 +16,7 @@ namespace Blog.Core.Controllers
|
|||
response = data,
|
||||
};
|
||||
}
|
||||
// [NonAction]
|
||||
// [NonAction]
|
||||
//public MessageModel<T> Success<T>(T data, string msg = "成功",bool success = true)
|
||||
//{
|
||||
// return new MessageModel<T>()
|
||||
|
@ -59,20 +59,15 @@ namespace Blog.Core.Controllers
|
|||
};
|
||||
}
|
||||
[NonAction]
|
||||
public MessageModel<PageModel<T>> SuccessPage<T>(int page, int dataCount, List<T> data, int pageCount, string msg = "获取成功")
|
||||
public MessageModel<PageModel<T>> SuccessPage<T>(int page, int dataCount, int pageSize, List<T> data, int pageCount, string msg = "获取成功")
|
||||
{
|
||||
|
||||
return new MessageModel<PageModel<T>>()
|
||||
{
|
||||
success = true,
|
||||
msg = msg,
|
||||
response = new PageModel<T>()
|
||||
{
|
||||
page = page,
|
||||
dataCount = dataCount,
|
||||
data = data,
|
||||
pageCount = pageCount,
|
||||
}
|
||||
response = new PageModel<T>(page, dataCount, pageSize, data)
|
||||
|
||||
};
|
||||
}
|
||||
[NonAction]
|
||||
|
@ -83,13 +78,7 @@ namespace Blog.Core.Controllers
|
|||
{
|
||||
success = true,
|
||||
msg = msg,
|
||||
response = new PageModel<T>()
|
||||
{
|
||||
page = pageModel.page,
|
||||
dataCount = pageModel.dataCount,
|
||||
data = pageModel.data,
|
||||
pageCount = pageModel.pageCount,
|
||||
}
|
||||
response = pageModel
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
using System.Collections.Generic;
|
||||
using AutoMapper;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Blog.Core.Model
|
||||
{
|
||||
|
@ -14,7 +16,7 @@ namespace Blog.Core.Model
|
|||
/// <summary>
|
||||
/// 总页数
|
||||
/// </summary>
|
||||
public int pageCount { get; set; } = 6;
|
||||
public int pageCount => (int)Math.Ceiling((decimal)dataCount / PageSize);
|
||||
/// <summary>
|
||||
/// 数据总数
|
||||
/// </summary>
|
||||
|
@ -22,12 +24,53 @@ namespace Blog.Core.Model
|
|||
/// <summary>
|
||||
/// 每页大小
|
||||
/// </summary>
|
||||
public int PageSize { set; get; }
|
||||
public int PageSize { set; get; } = 20;
|
||||
/// <summary>
|
||||
/// 返回数据
|
||||
/// </summary>
|
||||
public List<T> data { get; set; }
|
||||
|
||||
public PageModel() { }
|
||||
|
||||
public PageModel(int page, int dataCount, int pageSize, List<T> data)
|
||||
{
|
||||
this.page = page;
|
||||
this.dataCount = dataCount;
|
||||
PageSize = pageSize;
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
public PageModel<TOut> ConvertTo<TOut>()
|
||||
{
|
||||
return new PageModel<TOut>(page, dataCount, PageSize, default);
|
||||
}
|
||||
|
||||
|
||||
public PageModel<TOut> ConvertTo<TOut>(IMapper mapper)
|
||||
{
|
||||
var model = ConvertTo<TOut>();
|
||||
|
||||
if (data != null)
|
||||
{
|
||||
model.data = mapper.Map<List<TOut>>(data);
|
||||
}
|
||||
|
||||
return model;
|
||||
}
|
||||
|
||||
|
||||
public PageModel<TOut> ConvertTo<TOut>(IMapper mapper, Action<IMappingOperationOptions> options)
|
||||
{
|
||||
var model = ConvertTo<TOut>();
|
||||
if (data != null)
|
||||
{
|
||||
model.data = mapper.Map<List<TOut>>(data, options);
|
||||
}
|
||||
|
||||
return model;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -97,7 +97,7 @@ namespace Blog.Core.Repository.Base
|
|||
//return (int)i;
|
||||
|
||||
var insert = _db.Insertable(entity);
|
||||
|
||||
|
||||
//这里你可以返回TEntity,这样的话就可以获取id值,无论主键是什么类型
|
||||
//var return3 = await insert.ExecuteReturnEntityAsync();
|
||||
|
||||
|
@ -453,8 +453,7 @@ namespace Blog.Core.Repository.Base
|
|||
.WhereIF(whereExpression != null, whereExpression)
|
||||
.ToPageListAsync(intPageIndex, intPageSize, totalCount);
|
||||
|
||||
int pageCount = (Math.Ceiling(totalCount.ObjToDecimal() / intPageSize.ObjToDecimal())).ObjToInt();
|
||||
return new PageModel<TEntity>() { dataCount = totalCount, pageCount = pageCount, page = intPageIndex, PageSize = intPageSize, data = list };
|
||||
return new PageModel<TEntity>(intPageIndex, totalCount, intPageSize, list);
|
||||
}
|
||||
|
||||
|
||||
|
@ -510,8 +509,7 @@ namespace Blog.Core.Repository.Base
|
|||
.OrderByIF(!string.IsNullOrEmpty(strOrderByFileds), strOrderByFileds)
|
||||
.WhereIF(whereExpression != null, whereExpression)
|
||||
.ToPageListAsync(intPageIndex, intPageSize, totalCount);
|
||||
int pageCount = (Math.Ceiling(totalCount.ObjToDecimal() / intPageSize.ObjToDecimal())).ObjToInt();
|
||||
return new PageModel<TResult>() { dataCount = totalCount, pageCount = pageCount, page = intPageIndex, PageSize = intPageSize, data = list };
|
||||
return new PageModel<TResult>(intPageIndex, totalCount, intPageSize, list);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -543,8 +541,7 @@ namespace Blog.Core.Repository.Base
|
|||
.OrderByIF(!string.IsNullOrEmpty(strOrderByFileds), strOrderByFileds)
|
||||
.WhereIF(whereExpression != null, whereExpression)
|
||||
.ToPageListAsync(intPageIndex, intPageSize, totalCount);
|
||||
int pageCount = (Math.Ceiling(totalCount.ObjToDecimal() / intPageSize.ObjToDecimal())).ObjToInt();
|
||||
return new PageModel<TResult>() { dataCount = totalCount, pageCount = pageCount, page = intPageIndex, PageSize = intPageSize, data = list };
|
||||
return new PageModel<TResult>(intPageIndex, totalCount, intPageSize, list);
|
||||
}
|
||||
|
||||
//var exp = Expressionable.Create<ProjectToUser>()
|
||||
|
|
Loading…
Reference in New Issue
Block a user