using Dapper; using Npgsql; using Ventas.Core.Interfaces; namespace Ventas.Infrastructure.Repositories; public class CotizacionRepository : ICotizacionRepository { private readonly string _connectionString; public CotizacionRepository(string connectionString) { _connectionString = connectionString; } public async Task PersonaIngresarAsync(string apoderado, string vendedor, int solicitudDescuento, int descuento, int tipoDescuento, string fecha, int alumnos, int curso, int monto, string validez, int leadId) { using var connection = new NpgsqlConnection(_connectionString); return await connection.QuerySingleOrDefaultAsync( "sige_sam_v3.IngresarCotizacionLead", new { apoderado, vendedor, solicituddescuento = solicitudDescuento, desctoid = descuento, tipodesctoid = tipoDescuento, fecha, alumno = alumnos, cantidad = curso, monto, validez, leadnum = leadId }, commandType: System.Data.CommandType.StoredProcedure) ?? "ok"; } public async Task PersonaPagarAsync(int cotizacionId) { using var connection = new NpgsqlConnection(_connectionString); await connection.ExecuteAsync( "sige_sam_v3.PagarCotizacion", new { cotizacionid = cotizacionId }, commandType: System.Data.CommandType.StoredProcedure); return "ok"; } public async Task DesactivarAsync(int cotizacionId) { using var connection = new NpgsqlConnection(_connectionString); await connection.ExecuteAsync( "sige_sam_v3.DesactivarCotizacion", new { cotizacionid = cotizacionId }, commandType: System.Data.CommandType.StoredProcedure); return "ok"; } }