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;        }
    }}
  |