啊鑫
2024-10-22 e08a2e8a24be0996dec3b681f3c4ab45333f331c
MES.Service/DB/Repository.cs
@@ -7,7 +7,7 @@
{
    protected static SqlSugarScope Db = new(new ConnectionConfig
        {
            DbType = DbType.Oracle,
            DbType = DbType.SqlServer,
            ConnectionString = AppsettingsUtility.Settings.DataBaseConn,
            IsAutoCloseConnection = true
        },
@@ -16,7 +16,7 @@
            db.Aop.OnLogExecuting = (sql, pars) =>
            {
                Console.WriteLine(
                    UtilMethods.GetSqlString(DbType.Oracle, sql, pars));
                    UtilMethods.GetSqlString(DbType.SqlServer, sql, pars));
            };
        });
@@ -40,63 +40,4 @@
            throw; // 重新抛出异常
        }
    }
    public object CommonPage(QueryParameters pars, int pageIndex, int pagesize)
    {
        var tolCount = 0;
        var sugarParamters = pars.Parameters.Select(it =>
            (IConditionalModel)new ConditionalModel
            {
                ConditionalType = it.ConditionalType,
                FieldName = it.FieldName,
                FieldValue = it.FieldValue
            }).ToList();
        var query = Db.Queryable<T>();
        if (pars.OrderBys != null)
            foreach (var item in pars.OrderBys)
                query.OrderBy(item.ToSqlFilter());
        var result = query.Where(sugarParamters)
            .ToPageList(pageIndex, pagesize, ref tolCount);
        return new
        {
            count = tolCount,
            data = result
        };
    }
    public object CommonPage<ViewModel>(ISugarQueryable<ViewModel> query,
        QueryParameters pars, int pageIndex, int pagesize)
    {
        var tolCount = 0;
        var sugarParamters = pars.Parameters.Select(it =>
            (IConditionalModel)new ConditionalModel
            {
                ConditionalType = it.ConditionalType,
                FieldName = it.FieldName,
                FieldValue = it.FieldValue
            }).ToList();
        if (pars.OrderBys != null)
            foreach (var item in pars.OrderBys)
                query.OrderBy(item.ToSqlFilter());
        var result = query.Where(sugarParamters)
            .ToPageList(pageIndex, pagesize, ref tolCount);
        return new
        {
            count = tolCount,
            data = result
        };
    }
}
public class QueryParameters
{
    public List<QueryParameter> Parameters { get; set; }
    public List<string> OrderBys { get; set; }
}
public class QueryParameter
{
    public string FieldName { get; set; }
    public string FieldValue { get; set; }
    public ConditionalType ConditionalType { get; set; }
}