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 Dapper;using Microsoft.Extensions.Configuration;using Npgsql;using Shentun.Utilities;using Shentun.WebPeis.PlugIns.ColumnReferences;using Shentun.WebPeis.ThirdInterfaces;using System;using System.Collections.Generic;using System.Data.Common;using System.Linq;using System.Text;using System.Threading.Tasks;
namespace Shentun.WebPeis.PlugIns{    public class ThirdPlugInsBase: PlugInsBase    {        //private Guid _thirdInterfaceId;
        protected ThirdInterfaceDto _thirdInterfaceDto;        public ThirdPlugInsBase(Guid thirdInterfaceId):base()        {                        using (DbConnection conn = new NpgsqlConnection(AppConnctionStr))            {                string sql;                sql = @"
                    SELECT *                   from third_interface                  where id =@ThirdInterfaceId                     ";
                _thirdInterfaceDto = ( conn.Query<ThirdInterfaceDto>(sql,                 new { ThirdInterfaceId = thirdInterfaceId })).Single();                Init(_thirdInterfaceDto.ParmValue);            }        }        public ThirdPlugInsBase(string parmValue):base(parmValue)         {                    }
        public async Task<List<ColumnReferenceInterfaceCodeValue>> GetColumnReferenceInterfaceCodeValuesAsync(Guid columnReferenceId,            string appCodeValue)        {            using (DbConnection conn = new NpgsqlConnection(AppConnctionStr))            {                string sql;                sql = @"
                    SELECT 			        column_reference_interface.interface_code_value			        from column_reference			        join column_reference_code on column_reference.id = column_reference_code.column_reference_id					join column_reference_interface on column_reference_code.id = column_reference_interface.column_reference_code_id                    where column_reference.id = @ColumnReferenceId and                          column_reference_code.code_value = @CodeValue                     ";
                var columnReferenceInterfaceCodeValues = (await conn.QueryAsync<ColumnReferenceInterfaceCodeValue>(sql,                 new { ColumnReferenceId = columnReferenceId, CodeValue =appCodeValue })).ToList();                return columnReferenceInterfaceCodeValues;            }        }
        public async Task<List<ColumnReferenceCodeValue>> GetColumnReferenceCodeValuesAsync(Guid columnReferenceId,            string interfaceCodeValue)        {            if(string.IsNullOrWhiteSpace(interfaceCodeValue))            {                throw new Exception("第三方编码不能为空");            }            interfaceCodeValue = interfaceCodeValue.Trim();            using (DbConnection conn = new NpgsqlConnection(AppConnctionStr))            {                string sql;                sql = @"
                    SELECT 			        column_reference_code.code_value			        from column_reference			        join column_reference_code on column_reference.id = column_reference_code.column_reference_id					join column_reference_interface on column_reference_code.id = column_reference_interface.column_reference_code_id                    where column_reference.id = @ColumnReferenceId and                          column_reference_interface.interface_code_value = @InterfaceCodeValue                     ";
                var columnReferenceCodeValues = (await conn.QueryAsync<ColumnReferenceCodeValue>(sql,                 new { ColumnReferenceId = columnReferenceId, InterfaceCodeValue = interfaceCodeValue })).ToList();                //if(columnReferenceCodeValues.Count == 0)
                //{
                //    throw new Exception($"{interfaceCodeValue}没有找到对照");
                //}
                return columnReferenceCodeValues;            }        }    }}
  |