24/05/2026 - Criando logica back-end Inicio.

This commit is contained in:
levelcode developed 2026-05-24 23:38:52 -03:00
parent b6f4aee971
commit 8251c6e38b
20 changed files with 3520 additions and 21 deletions

343
DAL/DALLBackup.cs Normal file
View File

@ -0,0 +1,343 @@
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
using Microsoft.Data.SqlClient;
namespace DAL
{
public class DALLBackup
{
private readonly string _connectionString;
public DALLBackup(string connectionString)
{
_connectionString = connectionString;
}//metodo constructor para receber a string de conexão com o banco de dados
public bool Inserir(ModeloBackup modelo)
{
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = @"
INSERT INTO Config_backup
(
nome,
tipo_backup,
origem,
destino_tipo,
destino_id,
caminho_destino,
compactar,
usar_criptografia,
algoritmo_criptografia,
frequencia,
horario,
manter_ultimos,
status_ultimo_backup,
data_ultimo_backup,
log_ultimo_backup,
ativo,
criado_em,
atualizado_em
)
VALUES
(
@nome,
@tipo_backup,
@origem,
@destino_tipo,
@destino_id,
@caminho_destino,
@compactar,
@usar_criptografia,
@algoritmo_criptografia,
@frequencia,
@horario,
@manter_ultimos,
@status_ultimo_backup,
@data_ultimo_backup,
@log_ultimo_backup,
@ativo,
@criado_em,
@atualizado_em
)";
SqlCommand cmd = new SqlCommand(query, conn);
PreencherParametros(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
}//incluir
public bool Atualizar(ModeloBackup modelo)
{
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = @"
UPDATE Config_backup
SET
nome = @nome,
tipo_backup = @tipo_backup,
origem = @origem,
destino_tipo = @destino_tipo,
destino_id = @destino_id,
caminho_destino = @caminho_destino,
compactar = @compactar,
usar_criptografia = @usar_criptografia,
algoritmo_criptografia = @algoritmo_criptografia,
frequencia = @frequencia,
horario = @horario,
manter_ultimos = @manter_ultimos,
status_ultimo_backup = @status_ultimo_backup,
data_ultimo_backup = @data_ultimo_backup,
log_ultimo_backup = @log_ultimo_backup,
ativo = @ativo,
atualizado_em = @atualizado_em
WHERE id = @id";
SqlCommand cmd = new SqlCommand(query, conn);
PreencherParametros(cmd, modelo);
cmd.Parameters.AddWithValue("@id", modelo.Id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
}//alterar
public bool Excluir(int id)
{
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "DELETE FROM Config_backup WHERE id = @id";
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
}//excluir
public ModeloBackup ObterPorId(int id)
{
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "SELECT * FROM Config_backup WHERE id = @id";
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}
}//CaregarModelo
public List<ModeloBackup> Listar()
{
List<ModeloBackup> lista = new List<ModeloBackup>();
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "SELECT * FROM Config_backup ORDER BY id DESC";
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
}
return lista;
}//Listar
public List<ModeloBackup> ListarAtivos()
{
List<ModeloBackup> lista = new List<ModeloBackup>();
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "SELECT * FROM Config_backup WHERE ativo = 1 ORDER BY id DESC";
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
}
return lista;
}//ListarAtivos
public bool Desativar(int id)
{
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "UPDATE Config_backup SET ativo = 0, atualizado_em = @atualizado_em WHERE id = @id";
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@atualizado_em", DateTime.Now);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
}//Desativar
public bool Ativar(int id)
{
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "UPDATE Config_backup SET ativo = 1, atualizado_em = @atualizado_em WHERE id = @id";
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@atualizado_em", DateTime.Now);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
}//Ativar
public DataTable LocalizarTodos()
{
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(_connectionString))
{
string query = "SELECT * FROM Config_backup ORDER BY id DESC";
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);
}
return dt;
}//LocalizarTodos
private static ModeloBackup PreencherModelo(SqlDataReader dr)
{
return new ModeloBackup
{
Id = Convert.ToInt32(dr["id"]),
Nome = Convert.ToString(dr["nome"]) ?? string.Empty,
TipoBackup = Convert.ToString(dr["tipo_backup"]) ?? string.Empty,
Origem = Convert.ToString(dr["origem"]) ?? string.Empty,
DestinoTipo = Convert.ToString(dr["destino_tipo"]) ?? string.Empty,
DestinoId = dr["destino_id"] == DBNull.Value
? null
: Convert.ToInt32(dr["destino_id"]),
CaminhoDestino = dr["caminho_destino"] == DBNull.Value
? null
: Convert.ToString(dr["caminho_destino"]),
Compactar = Convert.ToBoolean(dr["compactar"]),
UsarCriptografia = Convert.ToBoolean(dr["usar_criptografia"]),
AlgoritmoCriptografia = dr["algoritmo_criptografia"] == DBNull.Value
? null
: Convert.ToString(dr["algoritmo_criptografia"]),
Frequencia = Convert.ToString(dr["frequencia"]) ?? string.Empty,
Horario = dr["horario"] == DBNull.Value
? null
: (TimeSpan)dr["horario"],
ManterUltimos = Convert.ToInt32(dr["manter_ultimos"]),
StatusUltimoBackup = dr["status_ultimo_backup"] == DBNull.Value
? null
: Convert.ToString(dr["status_ultimo_backup"]),
DataUltimoBackup = dr["data_ultimo_backup"] == DBNull.Value
? null
: Convert.ToDateTime(dr["data_ultimo_backup"]),
LogUltimoBackup = dr["log_ultimo_backup"] == DBNull.Value
? null
: Convert.ToString(dr["log_ultimo_backup"]),
Ativo = Convert.ToBoolean(dr["ativo"]),
CriadoEm = Convert.ToDateTime(dr["criado_em"]),
AtualizadoEm = dr["atualizado_em"] == DBNull.Value
? null
: Convert.ToDateTime(dr["atualizado_em"])
};
}
private void PreencherParametros(SqlCommand cmd, ModeloBackup modelo)
{
cmd.Parameters.AddWithValue("@nome", modelo.Nome);
cmd.Parameters.AddWithValue("@tipo_backup", modelo.TipoBackup);
cmd.Parameters.AddWithValue("@origem", modelo.Origem);
cmd.Parameters.AddWithValue("@destino_tipo", modelo.DestinoTipo);
cmd.Parameters.AddWithValue("@destino_id",
modelo.DestinoId.HasValue
? (object)modelo.DestinoId.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@caminho_destino",
string.IsNullOrWhiteSpace(modelo.CaminhoDestino)
? DBNull.Value
: (object)modelo.CaminhoDestino);
cmd.Parameters.AddWithValue("@compactar", modelo.Compactar);
cmd.Parameters.AddWithValue("@usar_criptografia", modelo.UsarCriptografia);
cmd.Parameters.AddWithValue("@algoritmo_criptografia",
string.IsNullOrWhiteSpace(modelo.AlgoritmoCriptografia)
? DBNull.Value
: (object)modelo.AlgoritmoCriptografia);
cmd.Parameters.AddWithValue("@frequencia", modelo.Frequencia);
cmd.Parameters.AddWithValue("@horario",
modelo.Horario.HasValue
? (object)modelo.Horario.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@manter_ultimos", modelo.ManterUltimos);
cmd.Parameters.AddWithValue("@status_ultimo_backup",
string.IsNullOrWhiteSpace(modelo.StatusUltimoBackup)
? DBNull.Value
: (object)modelo.StatusUltimoBackup);
cmd.Parameters.AddWithValue("@data_ultimo_backup",
modelo.DataUltimoBackup.HasValue
? (object)modelo.DataUltimoBackup.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@log_ultimo_backup",
string.IsNullOrWhiteSpace(modelo.LogUltimoBackup)
? DBNull.Value
: (object)modelo.LogUltimoBackup);
cmd.Parameters.AddWithValue("@ativo", modelo.Ativo);
cmd.Parameters.AddWithValue("@criado_em", modelo.CriadoEm);
cmd.Parameters.AddWithValue("@atualizado_em",
modelo.AtualizadoEm.HasValue
? (object)modelo.AtualizadoEm.Value
: DBNull.Value);
}
}
}

282
DAL/DALLBackupAutomatico.cs Normal file
View File

@ -0,0 +1,282 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLBackupAutomatico
{
private readonly string connectionString;
public DALLBackupAutomatico(string connectionString)
{
this.connectionString = connectionString;
}
public bool Inserir(ModeloBackupAutomatico modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Config_backup_auto
(
id_backup,
ativo,
frequencia,
intervalo_minutos,
horario,
dia_semana,
dia_mes,
ultima_execucao,
proxima_execucao,
executando,
criado_em,
atualizado_em
)
VALUES
(
@id_backup,
@ativo,
@frequencia,
@intervalo_minutos,
@horario,
@dia_semana,
@dia_mes,
@ultima_execucao,
@proxima_execucao,
@executando,
@criado_em,
@atualizado_em
)";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//inserir
public bool Atualizar(ModeloBackupAutomatico modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Config_backup_auto
SET
id_backup = @id_backup,
ativo = @ativo,
frequencia = @frequencia,
intervalo_minutos = @intervalo_minutos,
horario = @horario,
dia_semana = @dia_semana,
dia_mes = @dia_mes,
ultima_execucao = @ultima_execucao,
proxima_execucao = @proxima_execucao,
executando = @executando,
atualizado_em = @atualizado_em
WHERE id = @id";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
cmd.Parameters.AddWithValue("@id", modelo.Id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//alterar
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = "DELETE FROM Config_backup_auto WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//excluir
public ModeloBackupAutomatico? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_auto WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//CarregarUsandoID
public List<ModeloBackupAutomatico> Listar()
{
List<ModeloBackupAutomatico> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_auto ORDER BY id DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//listar
public ModeloBackupAutomatico? ObterPorIdBackup(int idBackup)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_auto WHERE id_backup = @id_backup";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id_backup", idBackup);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//CarregarUsandoIDBackup
public bool AtualizarProximaExecucao(int id, DateTime proximaExecucao)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Config_backup_auto
SET proxima_execucao = @proxima_execucao, atualizado_em = @atualizado_em
WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@proxima_execucao", proximaExecucao);
cmd.Parameters.AddWithValue("@atualizado_em", DateTime.Now);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//AtualizarProximaExecucao
public DataTable LocalizarTodos()
{
DataTable dt = new();
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_auto";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
dt.Load(dr);
return dt;
}//ListarDataTable
private static ModeloBackupAutomatico PreencherModelo(SqlDataReader dr)
{
return new ModeloBackupAutomatico
{
Id = Convert.ToInt32(dr["id"]),
IdBackup = Convert.ToInt32(dr["id_backup"]),
Ativo = Convert.ToBoolean(dr["ativo"]),
Frequencia = Convert.ToString(dr["frequencia"]) ?? string.Empty,
IntervaloMinutos = dr["intervalo_minutos"] == DBNull.Value
? null
: Convert.ToInt32(dr["intervalo_minutos"]),
Horario = dr["horario"] == DBNull.Value
? null
: (TimeSpan)dr["horario"],
DiaSemana = dr["dia_semana"] == DBNull.Value
? null
: Convert.ToInt32(dr["dia_semana"]),
DiaMes = dr["dia_mes"] == DBNull.Value
? null
: Convert.ToInt32(dr["dia_mes"]),
UltimaExecucao = dr["ultima_execucao"] == DBNull.Value
? null
: Convert.ToDateTime(dr["ultima_execucao"]),
ProximaExecucao = dr["proxima_execucao"] == DBNull.Value
? null
: Convert.ToDateTime(dr["proxima_execucao"]),
Executando = Convert.ToBoolean(dr["executando"]),
CriadoEm = Convert.ToDateTime(dr["criado_em"]),
AtualizadoEm = dr["atualizado_em"] == DBNull.Value
? null
: Convert.ToDateTime(dr["atualizado_em"])
};
}
private static void PreencherParametros(SqlCommand cmd, ModeloBackupAutomatico modelo)
{
cmd.Parameters.AddWithValue("@id_backup", modelo.IdBackup);
cmd.Parameters.AddWithValue("@ativo", modelo.Ativo);
cmd.Parameters.AddWithValue("@frequencia", modelo.Frequencia);
cmd.Parameters.AddWithValue("@intervalo_minutos",
modelo.IntervaloMinutos.HasValue
? modelo.IntervaloMinutos.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@horario",
modelo.Horario.HasValue
? modelo.Horario.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@dia_semana",
modelo.DiaSemana.HasValue
? modelo.DiaSemana.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@dia_mes",
modelo.DiaMes.HasValue
? modelo.DiaMes.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@ultima_execucao",
modelo.UltimaExecucao.HasValue
? modelo.UltimaExecucao.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@proxima_execucao",
modelo.ProximaExecucao.HasValue
? modelo.ProximaExecucao.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@executando", modelo.Executando);
cmd.Parameters.AddWithValue("@criado_em", modelo.CriadoEm);
cmd.Parameters.AddWithValue("@atualizado_em",
modelo.AtualizadoEm.HasValue
? modelo.AtualizadoEm.Value
: DBNull.Value);
}
}
}

231
DAL/DALLBackupExecucao.cs Normal file
View File

@ -0,0 +1,231 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLBackupExecucao
{
private readonly string connectionString;
public DALLBackupExecucao(string connectionString)
{
this.connectionString = connectionString;
}
public bool Inserir(ModeloBackupExecucao modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Config_backup_execucao
(
id_backup,
data_execucao,
status,
mensagem,
tamanho_arquivo,
duracao_segundos
)
VALUES
(
@id_backup,
@data_execucao,
@status,
@mensagem,
@tamanho_arquivo,
@duracao_segundos
)";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//inserir
public bool Alterar(ModeloBackupExecucao modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Config_backup_execucao
SET
id_backup = @id_backup,
data_execucao = @data_execucao,
status = @status,
mensagem = @mensagem,
tamanho_arquivo = @tamanho_arquivo,
duracao_segundos = @duracao_segundos
WHERE id = @id";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
cmd.Parameters.AddWithValue("@id", modelo.Id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//alterar
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = "DELETE FROM Config_backup_execucao WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//excluir
public ModeloBackupExecucao? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_execucao WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//CarregarID
public List<ModeloBackupExecucao> Listar()
{
List<ModeloBackupExecucao> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_execucao ORDER BY id DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//Listar
public List<ModeloBackupExecucao> ListarPorIdBackup(int idBackup)
{
List<ModeloBackupExecucao> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_execucao WHERE id_backup = @id_backup ORDER BY id DESC";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id_backup", idBackup);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//ListarPorIdBackup
public int ContarExecucoesPorIdBackup(int idBackup)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT COUNT(*) FROM Config_backup_execucao WHERE id_backup = @id_backup";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id_backup", idBackup);
conn.Open();
return Convert.ToInt32(cmd.ExecuteScalar());
}//ContarExecucoesPorIdBackup
public ModeloBackupExecucao? ObterUltimaExecucaoPorIdBackup(int idBackup)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT TOP 1 * FROM Config_backup_execucao WHERE id_backup = @id_backup ORDER BY data_execucao DESC";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id_backup", idBackup);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//ObterUltimaExecucaoPorIdBackup
public DataTable LocalizarTodos()
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_backup_execucao";
using SqlCommand cmd = new(query, conn);
using SqlDataAdapter da = new(cmd);
DataTable dt = new();
da.Fill(dt);
return dt;
}//LocalizarTodos
private static ModeloBackupExecucao PreencherModelo(SqlDataReader dr)
{
return new ModeloBackupExecucao
{
Id = Convert.ToInt32(dr["id"]),
IdBackup = Convert.ToInt32(dr["id_backup"]),
DataExecucao = dr["data_execucao"] == DBNull.Value
? DateTime.MinValue
: Convert.ToDateTime(dr["data_execucao"]),
Status = Convert.ToString(dr["status"]) ?? string.Empty,
Mensagem = dr["mensagem"] == DBNull.Value
? null
: Convert.ToString(dr["mensagem"]),
TamanhoArquivo = dr["tamanho_arquivo"] == DBNull.Value
? null
: Convert.ToInt64(dr["tamanho_arquivo"]),
DuracaoSegundos = dr["duracao_segundos"] == DBNull.Value
? null
: Convert.ToInt32(dr["duracao_segundos"])
};
}
private static void PreencherParametros(SqlCommand cmd, ModeloBackupExecucao modelo)
{
cmd.Parameters.AddWithValue("@id_backup", modelo.IdBackup);
cmd.Parameters.AddWithValue("@data_execucao", modelo.DataExecucao);
cmd.Parameters.AddWithValue("@status", modelo.Status);
cmd.Parameters.AddWithValue("@mensagem",
string.IsNullOrWhiteSpace(modelo.Mensagem)
? DBNull.Value
: modelo.Mensagem);
cmd.Parameters.AddWithValue("@tamanho_arquivo",
modelo.TamanhoArquivo.HasValue
? modelo.TamanhoArquivo.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@duracao_segundos",
modelo.DuracaoSegundos.HasValue
? modelo.DuracaoSegundos.Value
: DBNull.Value);
}
}
}

193
DAL/DALLBancos.cs Normal file
View File

@ -0,0 +1,193 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLBancos
{
private readonly string connectionString;
public DALLBancos(string connectionString)
{
this.connectionString = connectionString;
}
public bool Inserir(ModeloBancos modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Bancos
(
NUMERO,
NOME
)
VALUES
(
@NUMERO,
@NOME
)";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//inserir
public bool Alterar(ModeloBancos modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Bancos
SET
NUMERO = @NUMERO,
NOME = @NOME
WHERE ID_BANCOS = @ID_BANCOS";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
cmd.Parameters.AddWithValue("@ID_BANCOS", modelo.ID_BANCOS);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//alterar
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = "DELETE FROM Bancos WHERE ID_BANCOS = @ID_BANCOS";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_BANCOS", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//excluir
public ModeloBancos? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Bancos WHERE ID_BANCOS = @ID_BANCOS";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_BANCOS", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//alterar
public List<ModeloBancos> Listar()
{
List<ModeloBancos> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Bancos ORDER BY NOME";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//Listar
public List<ModeloBancos> Listar(string valor)
{
List<ModeloBancos> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT * FROM Bancos
WHERE NOME LIKE @VALOR
ORDER BY NOME";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@VALOR", $"%{valor}%");
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//Listar
public int ObterQuantidade()
{
using SqlConnection conn = new(connectionString);
string query = "SELECT COUNT(*) FROM Bancos";
using SqlCommand cmd = new(query, conn);
conn.Open();
return Convert.ToInt32(cmd.ExecuteScalar());
}//ObterQuantidade
public bool VerificarExistencia(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT COUNT(*) FROM Bancos WHERE ID_BANCOS = @ID_BANCOS";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_BANCOS", id);
conn.Open();
return Convert.ToInt32(cmd.ExecuteScalar()) > 0;
}//VerificarExistencia
public DataTable LocalizarTodos()
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Bancos";
using SqlCommand cmd = new(query, conn);
using SqlDataAdapter da = new(cmd);
DataTable dt = new();
da.Fill(dt);
return dt;
}//LocalizarTodos
private static ModeloBancos PreencherModelo(SqlDataReader dr)
{
return new ModeloBancos
{
ID_BANCOS = Convert.ToInt32(dr["ID_BANCOS"]),
NUMERO = dr["NUMERO"] == DBNull.Value
? string.Empty
: Convert.ToString(dr["NUMERO"]) ?? string.Empty,
NOME = dr["NOME"] == DBNull.Value
? string.Empty
: Convert.ToString(dr["NOME"]) ?? string.Empty
};
}
private static void PreencherParametros(SqlCommand cmd, ModeloBancos modelo)
{
cmd.Parameters.AddWithValue("@NUMERO",
string.IsNullOrWhiteSpace(modelo.NUMERO)
? DBNull.Value
: modelo.NUMERO);
cmd.Parameters.AddWithValue("@NOME",
string.IsNullOrWhiteSpace(modelo.NOME)
? DBNull.Value
: modelo.NOME);
}
}
}

674
DAL/DALLBoletos.cs Normal file
View File

@ -0,0 +1,674 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLBoletos
{
private readonly string connectionString;
public DALLBoletos(string connectionString)
{
this.connectionString = connectionString;
}//Contrutor
public bool Inserir(ModeloBoletos modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Boletos
(
EMITIDO,
VENCE,
VALOR,
NUMERO,
PG,
SACADO,
CONTA,
OBSERVACAO,
COD_CONTA,
NOSSO_NUMERO,
ACEITE,
IMPRESSO,
IMPORTACAO,
CHAVE_BOLETO,
LINHA_DIGITAVEL,
DT_PAGAMENTO,
VL_PAGO,
VL_MULTA,
VL_DESCONTO,
ARQUIVO_NOME,
ARQUIVO_TIPO,
ARQUIVO_CAMINHO,
ARQUIVO_DADOS,
DT_CADASTRO,
DT_ALTERACAO,
ID_USUARIO,
STATUS
)
VALUES
(
@EMITIDO,
@VENCE,
@VALOR,
@NUMERO,
@PG,
@SACADO,
@CONTA,
@OBSERVACAO,
@COD_CONTA,
@NOSSO_NUMERO,
@ACEITE,
@IMPRESSO,
@IMPORTACAO,
@CHAVE_BOLETO,
@LINHA_DIGITAVEL,
@DT_PAGAMENTO,
@VL_PAGO,
@VL_MULTA,
@VL_DESCONTO,
@ARQUIVO_NOME,
@ARQUIVO_TIPO,
@ARQUIVO_CAMINHO,
@ARQUIVO_DADOS,
@DT_CADASTRO,
@DT_ALTERACAO,
@ID_USUARIO,
@STATUS
)";
using SqlCommand cmd = new(query, conn);
PreencherParametrosInserir(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//inserir
public bool Alterar(ModeloBoletos modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Boletos
SET
CODIGO = @CODIGO,
EMITIDO = @EMITIDO,
VENCE = @VENCE,
VALOR = @VALOR,
NUMERO = @NUMERO,
PG = @PG,
SACADO = @SACADO,
CONTA = @CONTA,
OBSERVACAO = @OBSERVACAO,
COD_CONTA = @COD_CONTA,
NOSSO_NUMERO = @NOSSO_NUMERO,
ACEITE = @ACEITE,
IMPRESSO = @IMPRESSO,
IMPORTACAO = @IMPORTACAO,
CHAVE_BOLETO = @CHAVE_BOLETO,
LINHA_DIGITAVEL = @LINHA_DIGITAVEL,
DT_PAGAMENTO = @DT_PAGAMENTO,
VL_PAGO = @VL_PAGO,
VL_MULTA = @VL_MULTA,
VL_DESCONTO = @VL_DESCONTO,
ARQUIVO_NOME = @ARQUIVO_NOME,
ARQUIVO_TIPO = @ARQUIVO_TIPO,
ARQUIVO_CAMINHO = @ARQUIVO_CAMINHO,
ARQUIVO_DADOS = @ARQUIVO_DADOS,
DT_ALTERACAO = @DT_ALTERACAO,
ID_USUARIO = @ID_USUARIO,
STATUS = @STATUS
WHERE ID_BOLETO = @ID_BOLETO";
using SqlCommand cmd = new(query, conn);
PreencherParametrosAlterar(cmd, modelo);
cmd.Parameters.AddWithValue("@ID_BOLETO", modelo.ID_BOLETO);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//alterar
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = "DELETE FROM Boletos WHERE ID_BOLETO = @ID_BOLETO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_BOLETO", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//excluir
public ModeloBoletos? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Boletos WHERE ID_BOLETO = @ID_BOLETO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_BOLETO", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//ObterPoriD
public ModeloBoletos CarregarModeloBoletos(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Boletos WHERE ID_BOLETO = @ID_BOLETO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_BOLETO", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//CarregarModeloBoletos
public List<ModeloBoletos> Listar()
{
List<ModeloBoletos> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Boletos ORDER BY ID_BOLETO DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//Listar
public List<ModeloBoletos> ListarPorStatus(string status)
{
List<ModeloBoletos> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Boletos WHERE STATUS = @STATUS ORDER BY ID_BOLETO DESC";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@STATUS", status);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//ListarPorStatus
public List<ModeloBoletos> ListarPorPeriodo(DateTime dataInicio, DateTime dataFim)
{
List<ModeloBoletos> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Boletos WHERE EMITIDO BETWEEN @DATA_INICIO AND @DATA_FIM ORDER BY ID_BOLETO DESC";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@DATA_INICIO", dataInicio);
cmd.Parameters.AddWithValue("@DATA_FIM", dataFim);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//ListarPorPeriodo
public List<ModeloBoletos> ListarPorSacado(string sacado)
{
List<ModeloBoletos> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Boletos WHERE SACADO LIKE @SACADO ORDER BY ID_BOLETO DESC";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@SACADO", $"%{sacado}%");
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//ListarPorSacado
private static ModeloBoletos PreencherModelo(SqlDataReader dr)
{
return new ModeloBoletos
{
ID_BOLETO = Convert.ToInt32(dr["ID_BOLETO"]),
CODIGO = Convert.ToString(dr["CODIGO"]) ?? string.Empty,
NUMERO = Convert.ToString(dr["NUMERO"]) ?? string.Empty,
NOSSO_NUMERO = Convert.ToString(dr["NOSSO_NUMERO"]) ?? string.Empty,
CHAVE_BOLETO = Convert.ToString(dr["CHAVE_BOLETO"]) ?? string.Empty,
LINHA_DIGITAVEL = Convert.ToString(dr["LINHA_DIGITAVEL"]) ?? string.Empty,
EMITIDO = dr["EMITIDO"] == DBNull.Value
? null
: Convert.ToDateTime(dr["EMITIDO"]),
VENCE = dr["VENCE"] == DBNull.Value
? null
: Convert.ToDateTime(dr["VENCE"]),
DT_PAGAMENTO = dr["DT_PAGAMENTO"] == DBNull.Value
? null
: Convert.ToDateTime(dr["DT_PAGAMENTO"]),
VALOR = dr["VALOR"] == DBNull.Value
? 0m
: Convert.ToDecimal(dr["VALOR"]),
VL_PAGO = dr["VL_PAGO"] == DBNull.Value
? null
: Convert.ToDecimal(dr["VL_PAGO"]),
VL_MULTA = dr["VL_MULTA"] == DBNull.Value
? null
: Convert.ToDecimal(dr["VL_MULTA"]),
VL_DESCONTO = dr["VL_DESCONTO"] == DBNull.Value
? null
: Convert.ToDecimal(dr["VL_DESCONTO"]),
STATUS = Convert.ToString(dr["STATUS"]) ?? "ABERTO",
PG = Convert.ToBoolean(dr["PG"]),
ACEITE = Convert.ToBoolean(dr["ACEITE"]),
IMPRESSO = Convert.ToBoolean(dr["IMPRESSO"]),
IMPORTACAO = Convert.ToBoolean(dr["IMPORTACAO"]),
SACADO = Convert.ToString(dr["SACADO"]) ?? string.Empty,
CONTA = Convert.ToString(dr["CONTA"]) ?? string.Empty,
COD_CONTA = Convert.ToString(dr["COD_CONTA"]) ?? string.Empty,
ARQUIVO_NOME = Convert.ToString(dr["ARQUIVO_NOME"]) ?? string.Empty,
ARQUIVO_TIPO = Convert.ToString(dr["ARQUIVO_TIPO"]) ?? string.Empty,
ARQUIVO_CAMINHO = Convert.ToString(dr["ARQUIVO_CAMINHO"]) ?? string.Empty,
ARQUIVO_DADOS = dr["ARQUIVO_DADOS"] == DBNull.Value
? null
: (byte[])dr["ARQUIVO_DADOS"],
OBSERVACAO = Convert.ToString(dr["OBSERVACAO"]) ?? string.Empty,
DT_CADASTRO = Convert.ToDateTime(dr["DT_CADASTRO"]),
DT_ALTERACAO = dr["DT_ALTERACAO"] == DBNull.Value
? null
: Convert.ToDateTime(dr["DT_ALTERACAO"]),
ID_USUARIO = dr["ID_USUARIO"] == DBNull.Value
? null
: Convert.ToInt32(dr["ID_USUARIO"])
};
}
private static void PreencherParametrosInserir(SqlCommand cmd, ModeloBoletos modelo)
{
cmd.Parameters.AddWithValue("@EMITIDO",
modelo.EMITIDO.HasValue
? modelo.EMITIDO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VENCE",
modelo.VENCE.HasValue
? modelo.VENCE.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VALOR", modelo.VALOR);
cmd.Parameters.AddWithValue("@NUMERO",
string.IsNullOrWhiteSpace(modelo.NUMERO)
? DBNull.Value
: modelo.NUMERO);
cmd.Parameters.AddWithValue("@PG", modelo.PG);
cmd.Parameters.AddWithValue("@SACADO",
string.IsNullOrWhiteSpace(modelo.SACADO)
? DBNull.Value
: modelo.SACADO);
cmd.Parameters.AddWithValue("@CONTA",
string.IsNullOrWhiteSpace(modelo.CONTA)
? DBNull.Value
: modelo.CONTA);
cmd.Parameters.AddWithValue("@OBSERVACAO",
string.IsNullOrWhiteSpace(modelo.OBSERVACAO)
? DBNull.Value
: modelo.OBSERVACAO);
cmd.Parameters.AddWithValue("@COD_CONTA",
string.IsNullOrWhiteSpace(modelo.COD_CONTA)
? DBNull.Value
: modelo.COD_CONTA);
cmd.Parameters.AddWithValue("@NOSSO_NUMERO",
string.IsNullOrWhiteSpace(modelo.NOSSO_NUMERO)
? DBNull.Value
: modelo.NOSSO_NUMERO);
cmd.Parameters.AddWithValue("@ACEITE", modelo.ACEITE);
cmd.Parameters.AddWithValue("@IMPRESSO", modelo.IMPRESSO);
cmd.Parameters.AddWithValue("@IMPORTACAO", modelo.IMPORTACAO);
cmd.Parameters.AddWithValue("@CHAVE_BOLETO",
string.IsNullOrWhiteSpace(modelo.CHAVE_BOLETO)
? DBNull.Value
: modelo.CHAVE_BOLETO);
cmd.Parameters.AddWithValue("@LINHA_DIGITAVEL",
string.IsNullOrWhiteSpace(modelo.LINHA_DIGITAVEL)
? DBNull.Value
: modelo.LINHA_DIGITAVEL);
cmd.Parameters.AddWithValue("@DT_PAGAMENTO",
modelo.DT_PAGAMENTO.HasValue
? modelo.DT_PAGAMENTO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VL_PAGO",
modelo.VL_PAGO.HasValue
? modelo.VL_PAGO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VL_MULTA",
modelo.VL_MULTA.HasValue
? modelo.VL_MULTA.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VL_DESCONTO",
modelo.VL_DESCONTO.HasValue
? modelo.VL_DESCONTO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@ARQUIVO_NOME",
string.IsNullOrWhiteSpace(modelo.ARQUIVO_NOME)
? DBNull.Value
: modelo.ARQUIVO_NOME);
cmd.Parameters.AddWithValue("@ARQUIVO_TIPO",
string.IsNullOrWhiteSpace(modelo.ARQUIVO_TIPO)
? DBNull.Value
: modelo.ARQUIVO_TIPO);
cmd.Parameters.AddWithValue("@ARQUIVO_CAMINHO",
string.IsNullOrWhiteSpace(modelo.ARQUIVO_CAMINHO)
? DBNull.Value
: modelo.ARQUIVO_CAMINHO);
cmd.Parameters.AddWithValue("@ARQUIVO_DADOS",
modelo.ARQUIVO_DADOS != null
? modelo.ARQUIVO_DADOS
: DBNull.Value);
cmd.Parameters.AddWithValue("@DT_CADASTRO", modelo.DT_CADASTRO);
cmd.Parameters.AddWithValue("@DT_ALTERACAO",
modelo.DT_ALTERACAO.HasValue
? modelo.DT_ALTERACAO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@ID_USUARIO",
modelo.ID_USUARIO.HasValue
? modelo.ID_USUARIO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@STATUS", modelo.STATUS);
}
private static void PreencherParametrosAlterar(SqlCommand cmd, ModeloBoletos modelo)
{
cmd.Parameters.AddWithValue("@CODIGO", modelo.CODIGO);
cmd.Parameters.AddWithValue("@EMITIDO",
modelo.EMITIDO.HasValue
? modelo.EMITIDO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VENCE",
modelo.VENCE.HasValue
? modelo.VENCE.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VALOR", modelo.VALOR);
cmd.Parameters.AddWithValue("@NUMERO",
string.IsNullOrWhiteSpace(modelo.NUMERO)
? DBNull.Value
: modelo.NUMERO);
cmd.Parameters.AddWithValue("@PG", modelo.PG);
cmd.Parameters.AddWithValue("@SACADO",
string.IsNullOrWhiteSpace(modelo.SACADO)
? DBNull.Value
: modelo.SACADO);
cmd.Parameters.AddWithValue("@CONTA",
string.IsNullOrWhiteSpace(modelo.CONTA)
? DBNull.Value
: modelo.CONTA);
cmd.Parameters.AddWithValue("@OBSERVACAO",
string.IsNullOrWhiteSpace(modelo.OBSERVACAO)
? DBNull.Value
: modelo.OBSERVACAO);
cmd.Parameters.AddWithValue("@COD_CONTA",
string.IsNullOrWhiteSpace(modelo.COD_CONTA)
? DBNull.Value
: modelo.COD_CONTA);
cmd.Parameters.AddWithValue("@NOSSO_NUMERO",
string.IsNullOrWhiteSpace(modelo.NOSSO_NUMERO)
? DBNull.Value
: modelo.NOSSO_NUMERO);
cmd.Parameters.AddWithValue("@ACEITE", modelo.ACEITE);
cmd.Parameters.AddWithValue("@IMPRESSO", modelo.IMPRESSO);
cmd.Parameters.AddWithValue("@IMPORTACAO", modelo.IMPORTACAO);
cmd.Parameters.AddWithValue("@CHAVE_BOLETO",
string.IsNullOrWhiteSpace(modelo.CHAVE_BOLETO)
? DBNull.Value
: modelo.CHAVE_BOLETO);
cmd.Parameters.AddWithValue("@LINHA_DIGITAVEL",
string.IsNullOrWhiteSpace(modelo.LINHA_DIGITAVEL)
? DBNull.Value
: modelo.LINHA_DIGITAVEL);
cmd.Parameters.AddWithValue("@DT_PAGAMENTO",
modelo.DT_PAGAMENTO.HasValue
? modelo.DT_PAGAMENTO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VL_PAGO",
modelo.VL_PAGO.HasValue
? modelo.VL_PAGO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VL_MULTA",
modelo.VL_MULTA.HasValue
? modelo.VL_MULTA.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@VL_DESCONTO",
modelo.VL_DESCONTO.HasValue
? modelo.VL_DESCONTO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@ARQUIVO_NOME",
string.IsNullOrWhiteSpace(modelo.ARQUIVO_NOME)
? DBNull.Value
: modelo.ARQUIVO_NOME);
cmd.Parameters.AddWithValue("@ARQUIVO_TIPO",
string.IsNullOrWhiteSpace(modelo.ARQUIVO_TIPO)
? DBNull.Value
: modelo.ARQUIVO_TIPO);
cmd.Parameters.AddWithValue("@ARQUIVO_CAMINHO",
string.IsNullOrWhiteSpace(modelo.ARQUIVO_CAMINHO)
? DBNull.Value
: modelo.ARQUIVO_CAMINHO);
cmd.Parameters.AddWithValue("@ARQUIVO_DADOS",
modelo.ARQUIVO_DADOS != null
? modelo.ARQUIVO_DADOS
: DBNull.Value);
cmd.Parameters.AddWithValue("@DT_CADASTRO", modelo.DT_CADASTRO);
cmd.Parameters.AddWithValue("@DT_ALTERACAO",
modelo.DT_ALTERACAO.HasValue
? modelo.DT_ALTERACAO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@ID_USUARIO",
modelo.ID_USUARIO.HasValue
? modelo.ID_USUARIO.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@STATUS", modelo.STATUS);
}
#region VIEWS
public List<ModeloBoletos> ListarAbertos()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosAbertos");
}//ListarAbertos
public List<ModeloBoletos> ListarVencidos()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosVencidos");
}//ListarVencidos
public List<ModeloBoletos> ListarPagos()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosPagos");
}//ListarPagos
public List<ModeloBoletos> ListarImportados()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosImportados");
}//ListarImportados
public List<ModeloBoletos> ListarComArquivo()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosComArquivo");
}//ListarComArquivo
public List<ModeloBoletos> ListarSemArquivo()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosSemArquivo");
}//ListarSemArquivo
public List<ModeloBoletos> ListarHoje()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosHoje");
}//ListarHoje
public List<ModeloBoletos> ListarSemana()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosSemana");
}//ListarSemana
public List<ModeloBoletos> ListarProximosVencimentos()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosProximosVencimentos");
}//ListarProximosVencimentos
public List<ModeloBoletos> ListarPendentesWebhook()
{
return ExecutarViewLista("SELECT * FROM VW_BoletosPendentesWebhook");
}//ListarPendentesWebhook
#endregion
#region DASHBOARD
public DataTable ObterResumoFinanceiro()
{
return ExecutarViewDataTable("SELECT * FROM VW_BoletosResumoFinanceiro");
}//ObterResumoFinanceiro
public DataTable ObterDashboard()
{
return ExecutarViewDataTable("SELECT * FROM VW_BoletosDashboard");
}//ObterDashboard
#endregion
#region HELPERS
private List<ModeloBoletos> ExecutarViewLista(string query)
{
List<ModeloBoletos> lista = [];
using SqlConnection conn = new(connectionString);
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//ExecutarViewLista
private DataTable ExecutarViewDataTable(string query)
{
DataTable dt = new();
using SqlConnection conn = new(connectionString);
using SqlDataAdapter da = new(query, conn);
da.Fill(dt);
return dt;
}//ExecutarViewDataTable
#endregion
}
}

245
DAL/DALLCalibracao.cs Normal file
View File

@ -0,0 +1,245 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLCalibracao
{
private readonly string connectionString;
public DALLCalibracao(string connectionString)
{
this.connectionString = connectionString;
}
#region CRUD
public bool Inserir(ModeloCalibracao modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Calibracao
(
OS_NUMERO,
DATA,
TEMP,
HUMIDADE,
RESPONSABEL,
OBSERV
)
VALUES
(
@OS_NUMERO,
@DATA,
@TEMP,
@HUMIDADE,
@RESPONSABEL,
@OBSERV
)";
using SqlCommand cmd = new(query, conn);
PreencherParametrosInserir(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Alterar(ModeloCalibracao modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Calibracao
SET
CODIGO = @CODIGO,
OS_NUMERO = @OS_NUMERO,
DATA = @DATA,
TEMP = @TEMP,
HUMIDADE = @HUMIDADE,
RESPONSABEL = @RESPONSABEL,
OBSERV = @OBSERV
WHERE ID_CALIBRACAO = @ID_CALIBRACAO";
using SqlCommand cmd = new(query, conn);
PreencherParametrosAlterar(cmd, modelo);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO", modelo.ID_CALIBRACAO);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
DELETE FROM Calibracao
WHERE ID_CALIBRACAO = @ID_CALIBRACAO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public ModeloCalibracao? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao
WHERE ID_CALIBRACAO = @ID_CALIBRACAO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}
public List<ModeloCalibracao> Listar()
{
List<ModeloCalibracao> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao
ORDER BY ID_CALIBRACAO DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}
#endregion
#region HELPERS
private static ModeloCalibracao PreencherModelo(SqlDataReader dr)
{
return new ModeloCalibracao
{
ID_CALIBRACAO = Convert.ToInt32(dr["ID_CALIBRACAO"]),
CODIGO = Convert.ToString(dr["CODIGO"]) ?? string.Empty,
OS_NUMERO = Convert.ToString(dr["OS_NUMERO"]) ?? string.Empty,
DATA = Convert.ToString(dr["DATA"]) ?? string.Empty,
TEMP = Convert.ToString(dr["TEMP"]) ?? string.Empty,
HUMIDADE = Convert.ToString(dr["HUMIDADE"]) ?? string.Empty,
RESPONSABEL = Convert.ToString(dr["RESPONSABEL"]) ?? string.Empty,
OBSERV = Convert.ToString(dr["OBSERV"]) ?? string.Empty
};
}
private static void PreencherParametrosInserir(SqlCommand cmd, ModeloCalibracao modelo)
{
cmd.Parameters.AddWithValue("@OS_NUMERO",
string.IsNullOrWhiteSpace(modelo.OS_NUMERO)
? DBNull.Value
: modelo.OS_NUMERO);
cmd.Parameters.AddWithValue("@DATA",
string.IsNullOrWhiteSpace(modelo.DATA)
? DBNull.Value
: modelo.DATA);
cmd.Parameters.AddWithValue("@TEMP",
string.IsNullOrWhiteSpace(modelo.TEMP)
? DBNull.Value
: modelo.TEMP);
cmd.Parameters.AddWithValue("@HUMIDADE",
string.IsNullOrWhiteSpace(modelo.HUMIDADE)
? DBNull.Value
: modelo.HUMIDADE);
cmd.Parameters.AddWithValue("@RESPONSABEL",
string.IsNullOrWhiteSpace(modelo.RESPONSABEL)
? DBNull.Value
: modelo.RESPONSABEL);
cmd.Parameters.AddWithValue("@OBSERV",
string.IsNullOrWhiteSpace(modelo.OBSERV)
? DBNull.Value
: modelo.OBSERV);
}
private static void PreencherParametrosAlterar(SqlCommand cmd, ModeloCalibracao modelo)
{
cmd.Parameters.AddWithValue("@CODIGO",
string.IsNullOrWhiteSpace(modelo.CODIGO)
? DBNull.Value
: modelo.CODIGO);
cmd.Parameters.AddWithValue("@OS_NUMERO",
string.IsNullOrWhiteSpace(modelo.OS_NUMERO)
? DBNull.Value
: modelo.OS_NUMERO);
cmd.Parameters.AddWithValue("@DATA",
string.IsNullOrWhiteSpace(modelo.DATA)
? DBNull.Value
: modelo.DATA);
cmd.Parameters.AddWithValue("@TEMP",
string.IsNullOrWhiteSpace(modelo.TEMP)
? DBNull.Value
: modelo.TEMP);
cmd.Parameters.AddWithValue("@HUMIDADE",
string.IsNullOrWhiteSpace(modelo.HUMIDADE)
? DBNull.Value
: modelo.HUMIDADE);
cmd.Parameters.AddWithValue("@RESPONSABEL",
string.IsNullOrWhiteSpace(modelo.RESPONSABEL)
? DBNull.Value
: modelo.RESPONSABEL);
cmd.Parameters.AddWithValue("@OBSERV",
string.IsNullOrWhiteSpace(modelo.OBSERV)
? DBNull.Value
: modelo.OBSERV);
}
#endregion
}
}

233
DAL/DALLCalibracaoEnsaio.cs Normal file
View File

@ -0,0 +1,233 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLCalibracaoEnsaio
{
private readonly string connectionString;
public DALLCalibracaoEnsaio(string connectionString)
{
this.connectionString = connectionString;
}
#region CRUD
public bool Inserir(ModeloCalibracaoEnsaio modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Calibracao_ensaio
(
COD_CALIBRACAO,
DESCRICAO,
MINIMO,
MAXIMO,
OBTIDO,
UNIDADE
)
VALUES
(
@COD_CALIBRACAO,
@DESCRICAO,
@MINIMO,
@MAXIMO,
@OBTIDO,
@UNIDADE
)";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Alterar(ModeloCalibracaoEnsaio modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Calibracao_ensaio
SET
COD_CALIBRACAO = @COD_CALIBRACAO,
DESCRICAO = @DESCRICAO,
MINIMO = @MINIMO,
MAXIMO = @MAXIMO,
OBTIDO = @OBTIDO,
UNIDADE = @UNIDADE
WHERE ID_CALIBRACAO_ENSAIO = @ID_CALIBRACAO_ENSAIO";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO_ENSAIO", modelo.ID_CALIBRACAO_ENSAIO);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
DELETE FROM Calibracao_ensaio
WHERE ID_CALIBRACAO_ENSAIO = @ID_CALIBRACAO_ENSAIO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO_ENSAIO", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public ModeloCalibracaoEnsaio? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_ensaio
WHERE ID_CALIBRACAO_ENSAIO = @ID_CALIBRACAO_ENSAIO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO_ENSAIO", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}
public List<ModeloCalibracaoEnsaio> Listar()
{
List<ModeloCalibracaoEnsaio> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_ensaio
ORDER BY ID_CALIBRACAO_ENSAIO DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}
public List<ModeloCalibracaoEnsaio> ListarPorCodigo(string codigoCalibracao)
{
List<ModeloCalibracaoEnsaio> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_ensaio
WHERE COD_CALIBRACAO = @COD_CALIBRACAO
ORDER BY ID_CALIBRACAO_ENSAIO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@COD_CALIBRACAO", codigoCalibracao);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}
#endregion
#region HELPERS
private static ModeloCalibracaoEnsaio PreencherModelo(SqlDataReader dr)
{
return new ModeloCalibracaoEnsaio
{
ID_CALIBRACAO_ENSAIO = Convert.ToInt32(dr["ID_CALIBRACAO_ENSAIO"]),
COD_CALIBRACAO = Convert.ToString(dr["COD_CALIBRACAO"]) ?? string.Empty,
DESCRICAO = Convert.ToString(dr["DESCRICAO"]) ?? string.Empty,
MINIMO = Convert.ToString(dr["MINIMO"]) ?? string.Empty,
MAXIMO = Convert.ToString(dr["MAXIMO"]) ?? string.Empty,
OBTIDO = Convert.ToString(dr["OBTIDO"]) ?? string.Empty,
UNIDADE = Convert.ToString(dr["UNIDADE"]) ?? string.Empty
};
}
private static void PreencherParametros(SqlCommand cmd, ModeloCalibracaoEnsaio modelo)
{
cmd.Parameters.AddWithValue("@COD_CALIBRACAO",
string.IsNullOrWhiteSpace(modelo.COD_CALIBRACAO)
? DBNull.Value
: modelo.COD_CALIBRACAO);
cmd.Parameters.AddWithValue("@DESCRICAO",
string.IsNullOrWhiteSpace(modelo.DESCRICAO)
? DBNull.Value
: modelo.DESCRICAO);
cmd.Parameters.AddWithValue("@MINIMO",
string.IsNullOrWhiteSpace(modelo.MINIMO)
? DBNull.Value
: modelo.MINIMO);
cmd.Parameters.AddWithValue("@MAXIMO",
string.IsNullOrWhiteSpace(modelo.MAXIMO)
? DBNull.Value
: modelo.MAXIMO);
cmd.Parameters.AddWithValue("@OBTIDO",
string.IsNullOrWhiteSpace(modelo.OBTIDO)
? DBNull.Value
: modelo.OBTIDO);
cmd.Parameters.AddWithValue("@UNIDADE",
string.IsNullOrWhiteSpace(modelo.UNIDADE)
? DBNull.Value
: modelo.UNIDADE);
}
#endregion
}
}

245
DAL/DALLCalibracaoPadrao.cs Normal file
View File

@ -0,0 +1,245 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLCalibracaoPadrao
{
private readonly string connectionString;
public DALLCalibracaoPadrao(string connectionString)
{
this.connectionString = connectionString;
}
#region CRUD
public bool Inserir(ModeloCalibracaoPadrao modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Calibracao_Padrao
(
OS_NUMERO,
DATA,
TEMP,
HUMIDADE,
RESPONSABEL,
OBSERV
)
VALUES
(
@OS_NUMERO,
@DATA,
@TEMP,
@HUMIDADE,
@RESPONSABEL,
@OBSERV
)";
using SqlCommand cmd = new(query, conn);
PreencherParametrosInserir(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Alterar(ModeloCalibracaoPadrao modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Calibracao_Padrao
SET
CODIGO = @CODIGO,
OS_NUMERO = @OS_NUMERO,
DATA = @DATA,
TEMP = @TEMP,
HUMIDADE = @HUMIDADE,
RESPONSABEL = @RESPONSABEL,
OBSERV = @OBSERV
WHERE ID_CALIBRACAO_PADRAO = @ID_CALIBRACAO_PADRAO";
using SqlCommand cmd = new(query, conn);
PreencherParametrosAlterar(cmd, modelo);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO_PADRAO", modelo.ID_CALIBRACAO_PADRAO);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
DELETE FROM Calibracao_Padrao
WHERE ID_CALIBRACAO_PADRAO = @ID_CALIBRACAO_PADRAO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO_PADRAO", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public ModeloCalibracaoPadrao? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_Padrao
WHERE ID_CALIBRACAO_PADRAO = @ID_CALIBRACAO_PADRAO";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CALIBRACAO_PADRAO", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}
public List<ModeloCalibracaoPadrao> Listar()
{
List<ModeloCalibracaoPadrao> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_Padrao
ORDER BY ID_CALIBRACAO_PADRAO DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}
#endregion
#region HELPERS
private static ModeloCalibracaoPadrao PreencherModelo(SqlDataReader dr)
{
return new ModeloCalibracaoPadrao
{
ID_CALIBRACAO_PADRAO = Convert.ToInt32(dr["ID_CALIBRACAO_PADRAO"]),
CODIGO = Convert.ToString(dr["CODIGO"]) ?? string.Empty,
OS_NUMERO = Convert.ToString(dr["OS_NUMERO"]) ?? string.Empty,
DATA = Convert.ToString(dr["DATA"]) ?? string.Empty,
TEMP = Convert.ToString(dr["TEMP"]) ?? string.Empty,
HUMIDADE = Convert.ToString(dr["HUMIDADE"]) ?? string.Empty,
RESPONSABEL = Convert.ToString(dr["RESPONSABEL"]) ?? string.Empty,
OBSERV = Convert.ToString(dr["OBSERV"]) ?? string.Empty
};
}
private static void PreencherParametrosInserir(SqlCommand cmd, ModeloCalibracaoPadrao modelo)
{
cmd.Parameters.AddWithValue("@OS_NUMERO",
string.IsNullOrWhiteSpace(modelo.OS_NUMERO)
? DBNull.Value
: modelo.OS_NUMERO);
cmd.Parameters.AddWithValue("@DATA",
string.IsNullOrWhiteSpace(modelo.DATA)
? DBNull.Value
: modelo.DATA);
cmd.Parameters.AddWithValue("@TEMP",
string.IsNullOrWhiteSpace(modelo.TEMP)
? DBNull.Value
: modelo.TEMP);
cmd.Parameters.AddWithValue("@HUMIDADE",
string.IsNullOrWhiteSpace(modelo.HUMIDADE)
? DBNull.Value
: modelo.HUMIDADE);
cmd.Parameters.AddWithValue("@RESPONSABEL",
string.IsNullOrWhiteSpace(modelo.RESPONSABEL)
? DBNull.Value
: modelo.RESPONSABEL);
cmd.Parameters.AddWithValue("@OBSERV",
string.IsNullOrWhiteSpace(modelo.OBSERV)
? DBNull.Value
: modelo.OBSERV);
}
private static void PreencherParametrosAlterar(SqlCommand cmd, ModeloCalibracaoPadrao modelo)
{
cmd.Parameters.AddWithValue("@CODIGO",
string.IsNullOrWhiteSpace(modelo.CODIGO)
? DBNull.Value
: modelo.CODIGO);
cmd.Parameters.AddWithValue("@OS_NUMERO",
string.IsNullOrWhiteSpace(modelo.OS_NUMERO)
? DBNull.Value
: modelo.OS_NUMERO);
cmd.Parameters.AddWithValue("@DATA",
string.IsNullOrWhiteSpace(modelo.DATA)
? DBNull.Value
: modelo.DATA);
cmd.Parameters.AddWithValue("@TEMP",
string.IsNullOrWhiteSpace(modelo.TEMP)
? DBNull.Value
: modelo.TEMP);
cmd.Parameters.AddWithValue("@HUMIDADE",
string.IsNullOrWhiteSpace(modelo.HUMIDADE)
? DBNull.Value
: modelo.HUMIDADE);
cmd.Parameters.AddWithValue("@RESPONSABEL",
string.IsNullOrWhiteSpace(modelo.RESPONSABEL)
? DBNull.Value
: modelo.RESPONSABEL);
cmd.Parameters.AddWithValue("@OBSERV",
string.IsNullOrWhiteSpace(modelo.OBSERV)
? DBNull.Value
: modelo.OBSERV);
}
#endregion
}
}

View File

@ -0,0 +1,246 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLCalibracaoPadraoEnsaios
{
private readonly string connectionString;
public DALLCalibracaoPadraoEnsaios(string connectionString)
{
this.connectionString = connectionString;
}
#region CRUD
public bool Inserir(ModeloCalibracaoPadraoEnsaios modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Calibracao_Padrao_ensaios
(
COD_CALIBRACAO,
DESCRICAO,
MINIMO,
MAXIMO,
OBTIDO,
UNIDADE
)
VALUES
(
@COD_CALIBRACAO,
@DESCRICAO,
@MINIMO,
@MAXIMO,
@OBTIDO,
@UNIDADE
)";
using SqlCommand cmd = new(query, conn);
PreencherParametrosInserir(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Alterar(ModeloCalibracaoPadraoEnsaios modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Calibracao_Padrao_ensaios
SET
CODIGO = @CODIGO,
COD_CALIBRACAO = @COD_CALIBRACAO,
DESCRICAO = @DESCRICAO,
MINIMO = @MINIMO,
MAXIMO = @MAXIMO,
OBTIDO = @OBTIDO,
UNIDADE = @UNIDADE
WHERE ID_CAL_PADRAO_ENSAIOS = @ID_CAL_PADRAO_ENSAIOS";
using SqlCommand cmd = new(query, conn);
PreencherParametrosAlterar(cmd, modelo);
cmd.Parameters.AddWithValue("@ID_CAL_PADRAO_ENSAIOS", modelo.ID_CAL_PADRAO_ENSAIOS);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
DELETE FROM Calibracao_Padrao_ensaios
WHERE ID_CAL_PADRAO_ENSAIOS = @ID_CAL_PADRAO_ENSAIOS";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CAL_PADRAO_ENSAIOS", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}
public ModeloCalibracaoPadraoEnsaios? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_Padrao_ensaios
WHERE ID_CAL_PADRAO_ENSAIOS = @ID_CAL_PADRAO_ENSAIOS";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@ID_CAL_PADRAO_ENSAIOS", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}
public List<ModeloCalibracaoPadraoEnsaios> Listar()
{
List<ModeloCalibracaoPadraoEnsaios> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_Padrao_ensaios
ORDER BY ID_CAL_PADRAO_ENSAIOS DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}
public List<ModeloCalibracaoPadraoEnsaios> ListarPorCodigo(string codigo)
{
List<ModeloCalibracaoPadraoEnsaios> lista = [];
using SqlConnection conn = new(connectionString);
string query = @"
SELECT *
FROM Calibracao_Padrao_ensaios
WHERE COD_CALIBRACAO = @COD_CALIBRACAO
ORDER BY ID_CAL_PADRAO_ENSAIOS";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@COD_CALIBRACAO", codigo);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}
#endregion
#region HELPERS
private static ModeloCalibracaoPadraoEnsaios PreencherModelo(SqlDataReader dr)
{
return new ModeloCalibracaoPadraoEnsaios
{
ID_CAL_PADRAO_ENSAIOS = Convert.ToInt32(dr["ID_CAL_PADRAO_ENSAIOS"]),
CODIGO = Convert.ToString(dr["CODIGO"]) ?? string.Empty,
COD_CALIBRACAO = Convert.ToString(dr["COD_CALIBRACAO"]) ?? string.Empty,
DESCRICAO = Convert.ToString(dr["DESCRICAO"]) ?? string.Empty,
MINIMO = Convert.ToString(dr["MINIMO"]) ?? string.Empty,
MAXIMO = Convert.ToString(dr["MAXIMO"]) ?? string.Empty,
OBTIDO = Convert.ToString(dr["OBTIDO"]) ?? string.Empty,
UNIDADE = Convert.ToString(dr["UNIDADE"]) ?? string.Empty
};
}
private static void PreencherParametrosInserir(SqlCommand cmd, ModeloCalibracaoPadraoEnsaios modelo)
{
cmd.Parameters.AddWithValue("@COD_CALIBRACAO",
string.IsNullOrWhiteSpace(modelo.COD_CALIBRACAO)
? DBNull.Value
: modelo.COD_CALIBRACAO);
cmd.Parameters.AddWithValue("@DESCRICAO",
string.IsNullOrWhiteSpace(modelo.DESCRICAO)
? DBNull.Value
: modelo.DESCRICAO);
cmd.Parameters.AddWithValue("@MINIMO",
string.IsNullOrWhiteSpace(modelo.MINIMO)
? DBNull.Value
: modelo.MINIMO);
cmd.Parameters.AddWithValue("@MAXIMO",
string.IsNullOrWhiteSpace(modelo.MAXIMO)
? DBNull.Value
: modelo.MAXIMO);
cmd.Parameters.AddWithValue("@OBTIDO",
string.IsNullOrWhiteSpace(modelo.OBTIDO)
? DBNull.Value
: modelo.OBTIDO);
cmd.Parameters.AddWithValue("@UNIDADE",
string.IsNullOrWhiteSpace(modelo.UNIDADE)
? DBNull.Value
: modelo.UNIDADE);
}
private static void PreencherParametrosAlterar(SqlCommand cmd, ModeloCalibracaoPadraoEnsaios modelo)
{
cmd.Parameters.AddWithValue("@CODIGO",
string.IsNullOrWhiteSpace(modelo.CODIGO)
? DBNull.Value
: modelo.CODIGO);
PreencherParametrosInserir(cmd, modelo);
}
#endregion
}
}

356
DAL/DALLCloudBackup.cs Normal file
View File

@ -0,0 +1,356 @@
using Microsoft.Data.SqlClient;
using MLL;
using System;
using System.Collections.Generic;
using System.Data;
namespace DALL
{
public class DALLCloudBackup
{
private readonly string connectionString;
public DALLCloudBackup(string connectionString)
{
this.connectionString = connectionString;
}
public bool Inserir(ModeloCloudBackup modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
INSERT INTO Config_cloud_backup
(
nome,
tipo,
client_id,
client_secret,
access_token,
refresh_token,
token_expira_em,
url,
usuario,
senha,
pasta_base,
ativo,
criado_em,
atualizado_em
)
VALUES
(
@nome,
@tipo,
@client_id,
@client_secret,
@access_token,
@refresh_token,
@token_expira_em,
@url,
@usuario,
@senha,
@pasta_base,
@ativo,
@criado_em,
@atualizado_em
)";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//Incluir
public bool Alterar(ModeloCloudBackup modelo)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Config_cloud_backup
SET
nome = @nome,
tipo = @tipo,
client_id = @client_id,
client_secret = @client_secret,
access_token = @access_token,
refresh_token = @refresh_token,
token_expira_em = @token_expira_em,
url = @url,
usuario = @usuario,
senha = @senha,
pasta_base = @pasta_base,
ativo = @ativo,
atualizado_em = @atualizado_em
WHERE id = @id";
using SqlCommand cmd = new(query, conn);
PreencherParametros(cmd, modelo);
cmd.Parameters.AddWithValue("@id", modelo.Id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//Alterar
public bool Excluir(int id)
{
using SqlConnection conn = new(connectionString);
string query = "DELETE FROM Config_cloud_backup WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//Excluir
public ModeloCloudBackup? ObterPorId(int id)
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_cloud_backup WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//ObterPorID
public List<ModeloCloudBackup> Listar()
{
List<ModeloCloudBackup> lista = [];
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_cloud_backup ORDER BY id DESC";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
lista.Add(PreencherModelo(dr));
}
return lista;
}//Listar
public ModeloCloudBackup? ObterAtivo()
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_cloud_backup WHERE ativo = 1";
using SqlCommand cmd = new(query, conn);
conn.Open();
using SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
return PreencherModelo(dr);
}
return null;
}//ObterAtivo
public bool DesativarTodos()
{
using SqlConnection conn = new(connectionString);
string query = "UPDATE Config_cloud_backup SET ativo = 0";
using SqlCommand cmd = new(query, conn);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//DesativarTodos
public bool Ativar(int id)
{
using SqlConnection conn = new(connectionString);
string query = "UPDATE Config_cloud_backup SET ativo = 1 WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//Ativar
public bool AtualizarToken(int id, string accessToken, string refreshToken, DateTime tokenExpiraEm)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Config_cloud_backup
SET
access_token = @access_token,
refresh_token = @refresh_token,
token_expira_em = @token_expira_em,
atualizado_em = @atualizado_em
WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@access_token", accessToken);
cmd.Parameters.AddWithValue("@refresh_token", refreshToken);
cmd.Parameters.AddWithValue("@token_expira_em", tokenExpiraEm);
cmd.Parameters.AddWithValue("@atualizado_em", DateTime.Now);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//AtualizarToken
public bool AtualizarCredenciais(int id, string clientId, string clientSecret)
{
using SqlConnection conn = new(connectionString);
string query = @"
UPDATE Config_cloud_backup
SET
client_id = @client_id,
client_secret = @client_secret,
atualizado_em = @atualizado_em
WHERE id = @id";
using SqlCommand cmd = new(query, conn);
cmd.Parameters.AddWithValue("@client_id", clientId);
cmd.Parameters.AddWithValue("@client_secret", clientSecret);
cmd.Parameters.AddWithValue("@atualizado_em", DateTime.Now);
cmd.Parameters.AddWithValue("@id", id);
conn.Open();
return cmd.ExecuteNonQuery() > 0;
}//AtualizarCredenciais
public DataTable LocalizarTodos()
{
using SqlConnection conn = new(connectionString);
string query = "SELECT * FROM Config_cloud_backup";
using SqlCommand cmd = new(query, conn);
using SqlDataAdapter da = new(cmd);
DataTable dt = new();
da.Fill(dt);
return dt;
}//LocalizarTodos
private static ModeloCloudBackup PreencherModelo(SqlDataReader dr)
{
return new ModeloCloudBackup
{
Id = Convert.ToInt32(dr["id"]),
Nome = Convert.ToString(dr["nome"]) ?? string.Empty,
Tipo = Convert.ToString(dr["tipo"]) ?? string.Empty,
ClientId = dr["client_id"] == DBNull.Value
? null
: Convert.ToString(dr["client_id"]),
ClientSecret = dr["client_secret"] == DBNull.Value
? null
: Convert.ToString(dr["client_secret"]),
AccessToken = dr["access_token"] == DBNull.Value
? null
: Convert.ToString(dr["access_token"]),
RefreshToken = dr["refresh_token"] == DBNull.Value
? null
: Convert.ToString(dr["refresh_token"]),
TokenExpiraEm = dr["token_expira_em"] == DBNull.Value
? null
: Convert.ToDateTime(dr["token_expira_em"]),
Url = dr["url"] == DBNull.Value
? null
: Convert.ToString(dr["url"]),
Usuario = dr["usuario"] == DBNull.Value
? null
: Convert.ToString(dr["usuario"]),
Senha = dr["senha"] == DBNull.Value
? null
: Convert.ToString(dr["senha"]),
PastaBase = dr["pasta_base"] == DBNull.Value
? null
: Convert.ToString(dr["pasta_base"]),
Ativo = Convert.ToBoolean(dr["ativo"]),
CriadoEm = dr["criado_em"] == DBNull.Value
? null
: Convert.ToDateTime(dr["criado_em"]),
AtualizadoEm = dr["atualizado_em"] == DBNull.Value
? null
: Convert.ToDateTime(dr["atualizado_em"])
};
}
private static void PreencherParametros(SqlCommand cmd, ModeloCloudBackup modelo)
{
cmd.Parameters.AddWithValue("@nome", modelo.Nome);
cmd.Parameters.AddWithValue("@tipo", modelo.Tipo);
cmd.Parameters.AddWithValue("@client_id",
string.IsNullOrWhiteSpace(modelo.ClientId)
? DBNull.Value
: modelo.ClientId);
cmd.Parameters.AddWithValue("@client_secret",
string.IsNullOrWhiteSpace(modelo.ClientSecret)
? DBNull.Value
: modelo.ClientSecret);
cmd.Parameters.AddWithValue("@access_token",
string.IsNullOrWhiteSpace(modelo.AccessToken)
? DBNull.Value
: modelo.AccessToken);
cmd.Parameters.AddWithValue("@refresh_token",
string.IsNullOrWhiteSpace(modelo.RefreshToken)
? DBNull.Value
: modelo.RefreshToken);
cmd.Parameters.AddWithValue("@token_expira_em",
modelo.TokenExpiraEm.HasValue
? modelo.TokenExpiraEm.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@url",
string.IsNullOrWhiteSpace(modelo.Url)
? DBNull.Value
: modelo.Url);
cmd.Parameters.AddWithValue("@usuario",
string.IsNullOrWhiteSpace(modelo.Usuario)
? DBNull.Value
: modelo.Usuario);
cmd.Parameters.AddWithValue("@senha",
string.IsNullOrWhiteSpace(modelo.Senha)
? DBNull.Value
: modelo.Senha);
cmd.Parameters.AddWithValue("@pasta_base",
string.IsNullOrWhiteSpace(modelo.PastaBase)
? DBNull.Value
: modelo.PastaBase);
cmd.Parameters.AddWithValue("@ativo", modelo.Ativo);
cmd.Parameters.AddWithValue("@criado_em",
modelo.CriadoEm.HasValue
? modelo.CriadoEm.Value
: DBNull.Value);
cmd.Parameters.AddWithValue("@atualizado_em",
modelo.AtualizadoEm.HasValue
? modelo.AtualizadoEm.Value
: DBNull.Value);
}
}
}

View File

@ -8,7 +8,27 @@ namespace MLL
{
}
public ModeloBackup(int id, string nome, string tipoBackup, string origem, string destinoTipo, int? destinoId, string caminhoDestino, bool compactar, bool usarCriptografia, string algoritmoCriptografia, string frequencia, TimeSpan? horario, int manterUltimos, string statusUltimoBackup, DateTime? dataUltimoBackup, string logUltimoBackup, bool ativo, DateTime criadoEm, DateTime? atualizadoEm)
public ModeloBackup(
int id,
string nome,
string tipoBackup,
string origem,
string destinoTipo,
int? destinoId,
string? caminhoDestino,
bool compactar,
bool usarCriptografia,
string? algoritmoCriptografia,
string frequencia,
TimeSpan? horario,
int manterUltimos,
string? statusUltimoBackup,
DateTime? dataUltimoBackup,
string? logUltimoBackup,
bool ativo,
DateTime criadoEm,
DateTime? atualizadoEm)
{
Id = id;
Nome = nome;
@ -33,35 +53,40 @@ namespace MLL
public int Id { get; set; }
public string Nome { get; set; }
public string TipoBackup { get; set; }
public string Origem { get; set; }
public string DestinoTipo { get; set; }
public string Nome { get; set; } = string.Empty;
public string TipoBackup { get; set; } = string.Empty;
public string Origem { get; set; } = string.Empty;
public string DestinoTipo { get; set; } = string.Empty;
public int? DestinoId { get; set; }
public string CaminhoDestino { get; set; }
public string? CaminhoDestino { get; set; }
public bool Compactar { get; set; }
public bool UsarCriptografia { get; set; }
public string AlgoritmoCriptografia { get; set; }
public string? AlgoritmoCriptografia { get; set; }
public string Frequencia { get; set; }
public string Frequencia { get; set; } = string.Empty;
public TimeSpan? Horario { get; set; }
public int ManterUltimos { get; set; }
public string StatusUltimoBackup { get; set; }
public string? StatusUltimoBackup { get; set; }
public DateTime? DataUltimoBackup { get; set; }
public string LogUltimoBackup { get; set; }
public string? LogUltimoBackup { get; set; }
public bool Ativo { get; set; }
public DateTime CriadoEm { get; set; }
public DateTime? AtualizadoEm { get; set; }
}
}

View File

@ -4,7 +4,25 @@ namespace MLL
{
public class ModeloBackupAutomatico
{
public ModeloBackupAutomatico(int id, int idBackup, bool ativo, string frequencia, int? intervaloMinutos, TimeSpan? horario, int? diaSemana, int? diaMes, DateTime? ultimaExecucao, DateTime? proximaExecucao, bool executando, DateTime criadoEm, DateTime? atualizadoEm)
public ModeloBackupAutomatico()
{
}
public ModeloBackupAutomatico(
int id,
int idBackup,
bool ativo,
string frequencia,
int? intervaloMinutos,
TimeSpan? horario,
int? diaSemana,
int? diaMes,
DateTime? ultimaExecucao,
DateTime? proximaExecucao,
bool executando,
DateTime criadoEm,
DateTime? atualizadoEm)
{
Id = id;
IdBackup = idBackup;
@ -20,15 +38,15 @@ namespace MLL
CriadoEm = criadoEm;
AtualizadoEm = atualizadoEm;
}
public ModeloBackupAutomatico()
{
}
public int Id { get; set; }
public int IdBackup { get; set; }
public bool Ativo { get; set; }
public string Frequencia { get; set; }
public string Frequencia { get; set; } = string.Empty;
public int? IntervaloMinutos { get; set; }
public TimeSpan? Horario { get; set; }

View File

@ -4,7 +4,19 @@ namespace MLL
{
public class ModeloBackupExecucao
{
public ModeloBackupExecucao(int id, int idBackup, DateTime dataExecucao, string status, string mensagem, long? tamanhoArquivo, int? duracaoSegundos)
public ModeloBackupExecucao()
{
}
public ModeloBackupExecucao(
int id,
int idBackup,
DateTime dataExecucao,
string status,
string? mensagem,
long? tamanhoArquivo,
int? duracaoSegundos)
{
Id = id;
IdBackup = idBackup;
@ -14,9 +26,6 @@ namespace MLL
TamanhoArquivo = tamanhoArquivo;
DuracaoSegundos = duracaoSegundos;
}
public ModeloBackupExecucao()
{
}
public int Id { get; set; }
@ -24,9 +33,9 @@ namespace MLL
public DateTime DataExecucao { get; set; }
public string Status { get; set; }
public string Status { get; set; } = string.Empty;
public string Mensagem { get; set; }
public string? Mensagem { get; set; }
public long? TamanhoArquivo { get; set; }

76
MLL/ModeloCloudBackup.cs Normal file
View File

@ -0,0 +1,76 @@
using System;
namespace MLL
{
public class ModeloCloudBackup
{
public ModeloCloudBackup()
{
}
public ModeloCloudBackup(
int id,
string nome,
string tipo,
string? clientId,
string? clientSecret,
string? accessToken,
string? refreshToken,
DateTime? tokenExpiraEm,
string? url,
string? usuario,
string? senha,
string? pastaBase,
bool ativo,
DateTime? criadoEm,
DateTime? atualizadoEm)
{
Id = id;
Nome = nome;
Tipo = tipo;
ClientId = clientId;
ClientSecret = clientSecret;
AccessToken = accessToken;
RefreshToken = refreshToken;
TokenExpiraEm = tokenExpiraEm;
Url = url;
Usuario = usuario;
Senha = senha;
PastaBase = pastaBase;
Ativo = ativo;
CriadoEm = criadoEm;
AtualizadoEm = atualizadoEm;
}
public int Id { get; set; }
public string Nome { get; set; } = string.Empty;
public string Tipo { get; set; } = string.Empty;
public string? ClientId { get; set; }
public string? ClientSecret { get; set; }
public string? AccessToken { get; set; }
public string? RefreshToken { get; set; }
public DateTime? TokenExpiraEm { get; set; }
public string? Url { get; set; }
public string? Usuario { get; set; }
public string? Senha { get; set; }
public string? PastaBase { get; set; }
public bool Ativo { get; set; }
public DateTime? CriadoEm { get; set; }
public DateTime? AtualizadoEm { get; set; }
}
}

View File

@ -0,0 +1,34 @@
CREATE OR ALTER TRIGGER TR_Boletos_GerarCodigo
ON Boletos
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @UltimoNumero INT;
SELECT @UltimoNumero =
ISNULL(
MAX(
CAST(
REPLACE(CODIGO, 'BO', '')
AS INT)
),
99)
FROM Boletos
WHERE CODIGO IS NOT NULL;
;WITH Numerados AS
(
SELECT
ID_BOLETO,
ROW_NUMBER() OVER (ORDER BY ID_BOLETO) AS Linha
FROM inserted
)
UPDATE B
SET CODIGO = 'BO' + RIGHT('0000' + CAST(@UltimoNumero + N.Linha AS VARCHAR), 4)
FROM Boletos B
INNER JOIN Numerados N
ON B.ID_BOLETO = N.ID_BOLETO;
END
GO

View File

@ -0,0 +1,34 @@
CREATE OR ALTER TRIGGER TR_Calibracao_GerarCodigo
ON Calibracao
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @UltimoNumero INT;
SELECT @UltimoNumero =
ISNULL(
MAX(
CAST(
REPLACE(CODIGO, 'CA', '')
AS INT)
),
99)
FROM Calibracao
WHERE CODIGO IS NOT NULL;
;WITH Numerados AS
(
SELECT
ID_CALIBRACAO,
ROW_NUMBER() OVER (ORDER BY ID_CALIBRACAO) AS Linha
FROM inserted
)
UPDATE C
SET CODIGO = 'CA' + RIGHT('0000' + CAST(@UltimoNumero + N.Linha AS VARCHAR), 4)
FROM Calibracao C
INNER JOIN Numerados N
ON C.ID_CALIBRACAO = N.ID_CALIBRACAO;
END
GO

View File

@ -0,0 +1,34 @@
CREATE OR ALTER TRIGGER TR_CalibracaoPadrao_GerarCodigo
ON Calibracao_Padrao
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @UltimoNumero INT;
SELECT @UltimoNumero =
ISNULL(
MAX(
CAST(
REPLACE(CODIGO, 'CP', '')
AS INT)
),
99)
FROM Calibracao_Padrao
WHERE CODIGO IS NOT NULL;
;WITH Numerados AS
(
SELECT
ID_CALIBRACAO_PADRAO,
ROW_NUMBER() OVER (ORDER BY ID_CALIBRACAO_PADRAO) AS Linha
FROM inserted
)
UPDATE CP
SET CODIGO = 'CP' + RIGHT('0000' + CAST(@UltimoNumero + N.Linha AS VARCHAR), 4)
FROM Calibracao_Padrao CP
INNER JOIN Numerados N
ON CP.ID_CALIBRACAO_PADRAO = N.ID_CALIBRACAO_PADRAO;
END
GO

View File

@ -0,0 +1,34 @@
CREATE OR ALTER TRIGGER TR_CalibracaoPadraoEnsaios_GerarCodigo
ON Calibracao_Padrao_ensaios
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @UltimoNumero INT;
SELECT @UltimoNumero =
ISNULL(
MAX(
CAST(
REPLACE(CODIGO, 'CE', '')
AS INT)
),
99)
FROM Calibracao_Padrao_ensaios
WHERE CODIGO IS NOT NULL;
;WITH Numerados AS
(
SELECT
ID_CAL_PADRAO_ENSAIOS,
ROW_NUMBER() OVER (ORDER BY ID_CAL_PADRAO_ENSAIOS) AS Linha
FROM inserted
)
UPDATE CE
SET CODIGO = 'CE' + RIGHT('0000' + CAST(@UltimoNumero + N.Linha AS VARCHAR), 4)
FROM Calibracao_Padrao_ensaios CE
INNER JOIN Numerados N
ON CE.ID_CAL_PADRAO_ENSAIOS = N.ID_CAL_PADRAO_ENSAIOS;
END
GO

View File

@ -0,0 +1,185 @@
USE [Levelcode-LevelOS]
GO
/* =========================================================
VIEW: BOLETOS ABERTOS
========================================================= */
CREATE OR ALTER VIEW VW_BoletosAbertos
AS
SELECT
*
FROM Boletos
WHERE
STATUS = 'ABERTO'
AND PG = 0;
GO
/* =========================================================
VIEW: BOLETOS VENCIDOS
========================================================= */
CREATE OR ALTER VIEW VW_BoletosVencidos
AS
SELECT
*,
DATEDIFF(DAY, VENCE, GETDATE()) AS DIAS_ATRASO
FROM Boletos
WHERE
PG = 0
AND VENCE < CAST(GETDATE() AS DATE)
AND STATUS = 'ABERTO';
GO
/* =========================================================
VIEW: BOLETOS PAGOS
========================================================= */
CREATE OR ALTER VIEW VW_BoletosPagos
AS
SELECT
*,
ISNULL(VL_PAGO, VALOR) AS VALOR_RECEBIDO
FROM Boletos
WHERE
PG = 1
OR STATUS = 'PAGO';
GO
/* =========================================================
VIEW: RESUMO FINANCEIRO
========================================================= */
CREATE OR ALTER VIEW VW_BoletosResumoFinanceiro
AS
SELECT
COUNT(*) AS TOTAL_BOLETOS,
SUM(CASE
WHEN STATUS = 'PAGO'
THEN VALOR
ELSE 0
END) AS TOTAL_PAGO,
SUM(CASE
WHEN STATUS = 'ABERTO'
THEN VALOR
ELSE 0
END) AS TOTAL_ABERTO,
SUM(CASE
WHEN STATUS = 'VENCIDO'
THEN VALOR
ELSE 0
END) AS TOTAL_VENCIDO
FROM Boletos;
GO
/* =========================================================
VIEW: DASHBOARD
========================================================= */
CREATE OR ALTER VIEW VW_BoletosDashboard
AS
SELECT
ID_BOLETO,
CODIGO,
SACADO,
STATUS,
VALOR,
VENCE,
CASE
WHEN PG = 1 THEN 'PAGO'
WHEN VENCE < GETDATE() THEN 'VENCIDO'
ELSE 'EM DIA'
END AS SITUACAO,
DATEDIFF(DAY, GETDATE(), VENCE) AS DIAS_PARA_VENCER
FROM Boletos;
GO
/* =========================================================
VIEW: BOLETOS COM ARQUIVO
========================================================= */
CREATE OR ALTER VIEW VW_BoletosComArquivo
AS
SELECT
*
FROM Boletos
WHERE
ARQUIVO_CAMINHO IS NOT NULL
OR ARQUIVO_DADOS IS NOT NULL;
GO
/* =========================================================
VIEW: BOLETOS IMPORTADOS
========================================================= */
CREATE OR ALTER VIEW VW_BoletosImportados
AS
SELECT
*
FROM Boletos
WHERE
IMPORTACAO = 1;
GO
/* =========================================================
VIEW: PRÓXIMOS VENCIMENTOS
========================================================= */
CREATE OR ALTER VIEW VW_BoletosProximosVencimentos
AS
SELECT
*
FROM Boletos
WHERE
PG = 0
AND VENCE BETWEEN CAST(GETDATE() AS DATE)
AND DATEADD(DAY, 7, CAST(GETDATE() AS DATE));
GO
/* =========================================================
VIEW: BOLETOS DE HOJE
========================================================= */
CREATE OR ALTER VIEW VW_BoletosHoje
AS
SELECT
*
FROM Boletos
WHERE
CAST(VENCE AS DATE) = CAST(GETDATE() AS DATE);
GO
/* =========================================================
VIEW: BOLETOS DA SEMANA
========================================================= */
CREATE OR ALTER VIEW VW_BoletosSemana
AS
SELECT
*
FROM Boletos
WHERE
VENCE BETWEEN CAST(GETDATE() AS DATE)
AND DATEADD(DAY, 7, CAST(GETDATE() AS DATE));
GO
/* =========================================================
VIEW: BOLETOS SEM ARQUIVO
========================================================= */
CREATE OR ALTER VIEW VW_BoletosSemArquivo
AS
SELECT
*
FROM Boletos
WHERE
ARQUIVO_CAMINHO IS NULL
AND ARQUIVO_DADOS IS NULL;
GO
/* =========================================================
VIEW: BOLETOS PENDENTES DE WEBHOOK
========================================================= */
CREATE OR ALTER VIEW VW_BoletosPendentesWebhook
AS
SELECT
*
FROM Boletos
WHERE
STATUS = 'PAGO'
AND IMPORTACAO = 0;
GO

View File

@ -26,6 +26,8 @@
</ItemGroup>
<ItemGroup>
<Folder Include="ArquivosAuxiliares\Triggers\" />
<Folder Include="ArquivosAuxiliares\Views\" />
<Folder Include="ArquivosAuxiliares\Txt\" />
</ItemGroup>