You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
using System;using System.Collections;using System.Collections.Generic;using System.Data.Common;using System.Linq;using System.Text;using System.Text.Json;using System.Threading.Tasks;using Dapper;using Microsoft.Extensions.Configuration;using Npgsql;using Shentun.Utilities;namespace Shentun.WebPeis.PlugIns.ColumnReferences{
public class ColumnReferencePlugInsBase : PlugInsBase, IColumnReferencePlugIns {
protected string AppSql; private List<ColumnReferenceColumn> _columns; private List<ColumnReferenceColumn> _interfaceColumns;
public ColumnReferencePlugInsBase(string parmValue) : base(parmValue) {
AppSql = InterfaceConfig.GetSection("App").GetSection("Sql").Value; var columns = InterfaceConfig.GetSection("App").GetSection("Columns").Value; string[]? columnArry; if (columns != null) { columns = columns.Replace(",", ","); columnArry = columns.Split(','); _columns = new List<ColumnReferenceColumn>(); foreach (var column in columnArry) { var singleColumns = column.Split('='); if (singleColumns.Length == 2) { _columns.Add(new ColumnReferenceColumn() { Column = singleColumns[0], Name = singleColumns[1] }); } } }
columns = InterfaceConfig.GetSection("Interface").GetSection("Columns").Value; if (columns != null) { columns = columns.Replace(",", ","); columnArry = columns.Split(','); _interfaceColumns = new List<ColumnReferenceColumn>(); foreach (var columnName in columnArry) { var singleColumns = columnName.Split('='); if (singleColumns.Length == 2) { _interfaceColumns.Add(new ColumnReferenceColumn() { Column = singleColumns[0], Name = singleColumns[1] }); } } }
} public virtual List<ColumnReferenceColumn> GetAppColumns() { if (_columns == null || _columns.Count() == 0) { return new List<ColumnReferenceColumn>() { new ColumnReferenceColumn() { Column = "Code", Name = "编码" }, new ColumnReferenceColumn() { Column = "DisplayName", Name = "名称" }
}; } return _columns;
}
public virtual List<ColumnReferenceColumn> GetInterfaceColumns() { if (_interfaceColumns == null || _interfaceColumns.Count() == 0) { return new List<ColumnReferenceColumn>() { new ColumnReferenceColumn() { Column = "Code", Name = "编码" }, new ColumnReferenceColumn() { Column = "DisplayName", Name = "名称" }
}; } return _interfaceColumns; } public virtual async Task<List<ColumnReferenceCodeValue>> GetAppCodeValuesAsync() { using (DbConnection conn = new NpgsqlConnection(AppConnctionStr)) { var list = (await conn.QueryAsync<ColumnReferenceCodeValue>(AppSql)).ToList(); return list; } }
public virtual async Task<List<ColumnReferenceCodeValue>> GetInterfaceCodeValuesAsync() { return new List<ColumnReferenceCodeValue>() {
}; }
public virtual async Task<List<ColumnReferenceFilterCodeValue>> GetAppFilterCodeValuesAsync() { throw new NotImplementedException(); }
public virtual string GetAppFilterColumnName() { return null; }
}}
|