LevelOS-Core/UI/Dashboards/Cadastros/NfeUfCidadeCadastroPanel.cs

89 lines
2.8 KiB
C#

using CPM;
using MLL;
using System;
using System.Drawing;
using System.Windows.Forms;
using UI;
namespace UI
{
public partial class NfeUfCidadeCadastroPanel : FormularioModelo
{
private ModeloNFEUfCidade _localidade = new ModeloNFEUfCidade();
// Controles - UF
private LV_TEXTBOX1 txtId, txtUfCod, txtUfNome;
// Controles - Cidade
private LV_TEXTBOX1 txtCidCod, txtCidNome;
public NfeUfCidadeCadastroPanel()
{
this.Titulo = "Cadastro de Cidades e Estados (IBGE)";
MontarInterface();
}
private void MontarInterface()
{
// --- SEÇÃO 1: Unidade Federativa (Estado) ---
content.Controls.Add(CreateSectionHeader("ESTADO (UF)", 20));
txtId = AddInput(content, "ID INTERNO", 20, 50, 90, 30, true);
txtUfCod = AddInput(content, "CÓD. UF (IBGE)", 120, 50, 100, 30);
txtUfNome = AddInput(content, "NOME DO ESTADO", 230, 50, 250, 30);
// --- SEÇÃO 2: Município ---
content.Controls.Add(CreateSectionHeader("MUNICÍPIO", 115));
txtCidCod = AddInput(content, "CÓD. MUNICÍPIO (IBGE)", 20, 145, 180, 30);
txtCidNome = AddInput(content, "NOME DA CIDADE", 210, 145, 450, 30);
// Dica visual para o desenvolvedor (você)
Label lblInfo = new Label
{
Text = "* Estes dados são essenciais para as Tags <cMun> e <cUF> do XML da NF-e.",
Location = new Point(20, 190),
AutoSize = true,
ForeColor = Color.Gray,
Font = new Font("Segoe UI", 8, FontStyle.Italic)
};
content.Controls.Add(lblInfo);
content.Height = 230;
}
private void PreencherModel()
{
_localidade.UF_COD = txtUfCod.Text;
_localidade.UF_NOME = txtUfNome.Text;
_localidade.CID_COD = txtCidCod.Text;
_localidade.CID_NOME = txtCidNome.Text;
}
protected override void OnNovo()
{
_localidade = new ModeloNFEUfCidade();
txtUfCod.Focus();
}
protected override void OnSalvar()
{
if (txtCidCod.Text.Length != 7)
{
MessageBox.Show("O código de município do IBGE deve ter exatamente 7 dígitos.", "Validação Fiscal");
return;
}
PreencherModel();
MessageBox.Show("Localidade registrada com sucesso!", "LevelOS Database");
}
protected override void OnCancelar() { }
protected override void OnExcluir() { }
protected override void OnAlterar() { }
protected override void OnLocalizar()
{
}
}
}