erp-platform/api/modules/Erp.SqlQueryManager/Erp.SqlQueryManager.Application.Contracts/ISqlQueryAppService.cs

40 lines
981 B
C#
Raw Normal View History

2025-12-05 08:56:53 +00:00
using System;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
namespace Erp.SqlQueryManager.Application.Contracts;
public interface ISqlQueryAppService : ICrudAppService<
SqlQueryDto,
Guid,
PagedAndSortedResultRequestDto,
CreateSqlQueryDto,
UpdateSqlQueryDto>
{
/// <summary>
/// Execute a SQL query
/// </summary>
Task<SqlQueryExecutionResultDto> ExecuteQueryAsync(ExecuteSqlQueryDto input);
/// <summary>
/// Execute a saved query by ID
/// </summary>
Task<SqlQueryExecutionResultDto> ExecuteSavedQueryAsync(Guid id);
/// <summary>
/// Validate SQL query syntax
/// </summary>
Task<(bool IsValid, string ErrorMessage)> ValidateQueryAsync(string sql);
/// <summary>
/// Activate query
/// </summary>
Task ActivateAsync(Guid id);
/// <summary>
/// Archive query
/// </summary>
Task ArchiveAsync(Guid id);
}