|
|
|
@ -218,4 +218,94 @@ public class Ghrh_TemplateServices : BaseServices<Ghrh_Template, Ghrh_TemplateDt |
|
|
|
|
return await Task.FromResult(ServiceResult<string>.OprateSuccess("查询成功!", result)); |
|
|
|
|
} |
|
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
public override async Task<ServicePageResult<Ghrh_TemplateDto>> QueryFilterPage(QueryBody filter, string condition, bool? IsEnable = true) |
|
|
|
|
{ |
|
|
|
|
if (string.IsNullOrWhiteSpace(filter.orderBy)) |
|
|
|
|
filter.orderBy = "CreateTime1 DESC"; |
|
|
|
|
|
|
|
|
|
if (filter.pageSize == 0) |
|
|
|
|
filter.pageSize = 10000; |
|
|
|
|
|
|
|
|
|
Type entityType = typeof(Ghrh_Template); |
|
|
|
|
|
|
|
|
|
var countSql = @$" SELECT COUNT(1) FROM {entityType.GetEntityTableName()}"; |
|
|
|
|
var sql1 = @$"DECLARE @langId INT = {filter.langId};"; |
|
|
|
|
var sql = @$" SELECT A.Id,
|
|
|
|
|
A.CreateBy, |
|
|
|
|
A.CreateTime, |
|
|
|
|
A.CreateProg, |
|
|
|
|
A.CreateIP, |
|
|
|
|
A.UpdateBy, |
|
|
|
|
A.UpdateTime, |
|
|
|
|
A.UpdateProg, |
|
|
|
|
A.UpdateIP, |
|
|
|
|
A.OperateLogID, |
|
|
|
|
A.TemplateName, |
|
|
|
|
A.TemplateType, |
|
|
|
|
NULL TemplateContent, |
|
|
|
|
A.IsPublish, |
|
|
|
|
A.RemarkSz, |
|
|
|
|
A.IsDefault, |
|
|
|
|
A.IsEnable, |
|
|
|
|
A.Reverse1, |
|
|
|
|
A.Reverse2, |
|
|
|
|
A.Reverse3, |
|
|
|
|
A.Reverse4, |
|
|
|
|
A.Reverse5, |
|
|
|
|
A.Reverse6, |
|
|
|
|
A.Reverse7, |
|
|
|
|
A.Reverse8, |
|
|
|
|
A.Reverse9, |
|
|
|
|
A.Reverse10, |
|
|
|
|
A.ReverseI1, |
|
|
|
|
A.ReverseI2, |
|
|
|
|
ISNULL ((SELECT CASE WHEN @langId = 1 THEN UserName ELSE UserEname END |
|
|
|
|
FROM Ghrs_User B |
|
|
|
|
WHERE B.UserId = A.CreateBy), |
|
|
|
|
'') CreateDataInfo, |
|
|
|
|
ISNULL ((SELECT CASE WHEN @langId = 1 THEN UserName ELSE UserEname END |
|
|
|
|
FROM Ghrs_User B |
|
|
|
|
WHERE B.UserId = A.UpdateBy), |
|
|
|
|
'') UpdateDataInfo, |
|
|
|
|
ISNULL (A.UpdateTime, A.CreateTime) CreateTime1 |
|
|
|
|
FROM Ghrh_Template A";
|
|
|
|
|
|
|
|
|
|
string conditions = " WHERE 1=1 "; |
|
|
|
|
|
|
|
|
|
if (IsEnable == true) |
|
|
|
|
conditions += " AND IsEnable = 1"; |
|
|
|
|
else if (IsEnable == false) |
|
|
|
|
conditions += " AND IsEnable = 0"; |
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(condition)) |
|
|
|
|
conditions += " AND " + condition; |
|
|
|
|
|
|
|
|
|
var properties = entityType.GetGenericProperties(); |
|
|
|
|
|
|
|
|
|
if (filter.jsonParam != null) |
|
|
|
|
foreach (JProperty jProperty in filter.jsonParam.Properties()) |
|
|
|
|
{ |
|
|
|
|
var name = jProperty.Name; |
|
|
|
|
var value = jProperty.Value.ToString(); |
|
|
|
|
if (name == "page" || name == "pageSize" || !properties.Any(x => x.Name == name)) |
|
|
|
|
continue; |
|
|
|
|
if (!string.IsNullOrWhiteSpace(value)) |
|
|
|
|
conditions = DealConditions(conditions, name, value); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
sql += conditions; |
|
|
|
|
countSql += conditions; |
|
|
|
|
int total = await Db.Ado.GetIntAsync(countSql); |
|
|
|
|
|
|
|
|
|
sql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY " + filter.orderBy + ") NUM FROM (SELECT * FROM (" + sql + " "; |
|
|
|
|
sql += ") A ) B ) C"; |
|
|
|
|
|
|
|
|
|
sql += " WHERE NUM <= " + filter.pageNum * filter.pageSize + " AND NUM >" + (filter.pageNum - 1) * filter.pageSize; |
|
|
|
|
sql = sql1 + sql; |
|
|
|
|
var entitys = await Db.Ado.SqlQueryAsync<Ghrh_TemplateDto>(sql); |
|
|
|
|
|
|
|
|
|
return new ServicePageResult<Ghrh_TemplateDto>(filter.pageNum, total, filter.pageSize, entitys); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |