157 lines
6.9 KiB
C#
157 lines
6.9 KiB
C#
using CPM;
|
|
using MLL;
|
|
using System;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
|
|
namespace UI
|
|
{
|
|
public class OSPersonConfigPanel : FormularioModelo
|
|
{
|
|
private TabControl tabPrincipal;
|
|
private ModeloOSPerson _configAtual;
|
|
|
|
// --- CAMPOS DA ABA: GERAL E EQUIPAMENTO ---
|
|
private LV_TEXTBOX1 txtDesc, txtMarca, txtModelo, txtSerie, txtPat, txtTituloOS, txtEquipam;
|
|
|
|
// --- CAMPOS DA ABA: FINANCEIRO E TAXAS ---
|
|
private LV_TEXTBOX1 txtVDesloca, txtVTerceiros, txtMaxDesc;
|
|
private CheckBox chkCobraDesloca, chkCobraTerceiros, chkBaixaEstoque;
|
|
|
|
// --- CAMPOS DA ABA: GARANTIA E TEXTOS ---
|
|
private LV_TEXTBOX1 txtPrazoGar, txtTermoGar, txtObsRec1, txtObsRec2, txtObsRec3, txtObsRec4;
|
|
|
|
// --- CAMPOS DA ABA: IMPRESSÃO (ESC/P) ---
|
|
private LV_TEXTBOX1 txtPortaPrn, txtSaltos, txtCopiasRec, txtCopiasEnt;
|
|
private CheckBox chkNoEpson, chk40Colunas;
|
|
|
|
// --- CAMPOS DA ABA: WEB E E-MAIL ---
|
|
private LV_TEXTBOX1 txtEmailAbrir, txtEmailFechar, txtWeb1, txtWeb2, txtWeb3, txtWeb4, txtWeb5;
|
|
|
|
public OSPersonConfigPanel()
|
|
{
|
|
this.Titulo = "PARAMETRIZAÇÃO GLOBAL DO SISTEMA (LEVELOS)";
|
|
_configAtual = new ModeloOSPerson();
|
|
MontarInterfaceCompleta();
|
|
}
|
|
|
|
private void MontarInterfaceCompleta()
|
|
{
|
|
// Inicializando o TabControl
|
|
tabPrincipal = new TabControl
|
|
{
|
|
Location = new Point(10, 10),
|
|
Size = new Size(1060, 520),
|
|
Font = new Font("Segoe UI", 9.5f)
|
|
};
|
|
|
|
// Criando as Abas
|
|
var tpGeral = new TabPage("Equipamento / Geral");
|
|
var tpFinanceiro = new TabPage("Financeiro / Regras");
|
|
var tpGarantia = new TabPage("Textos / Garantia");
|
|
var tpImpressao = new TabPage("Impressão / PDV");
|
|
var tpWeb = new TabPage("Web / Integração");
|
|
|
|
tabPrincipal.TabPages.AddRange(new[] { tpGeral, tpFinanceiro, tpGarantia, tpImpressao, tpWeb });
|
|
content.Controls.Add(tabPrincipal);
|
|
|
|
ConfigurarAbaGeral(tpGeral);
|
|
ConfigurarAbaFinanceiro(tpFinanceiro);
|
|
ConfigurarAbaGarantia(tpGarantia);
|
|
ConfigurarAbaImpressao(tpImpressao);
|
|
ConfigurarAbaWeb(tpWeb);
|
|
}
|
|
|
|
private void ConfigurarAbaGeral(TabPage tp)
|
|
{
|
|
txtTituloOS = AddInput(tp, "TÍTULO DA ORDEM DE SERVIÇO", 20, 20, 450, 28);
|
|
txtDesc = AddInput(tp, "DESCRIÇÃO PADRÃO", 20, 80, 450, 28);
|
|
txtMarca = AddInput(tp, "MARCA", 20, 140, 200, 28);
|
|
txtModelo = AddInput(tp, "MODELO", 240, 140, 230, 28);
|
|
txtSerie = AddInput(tp, "Nº SÉRIE", 20, 200, 200, 28);
|
|
txtPat = AddInput(tp, "PATRIMÔNIO", 240, 200, 230, 28);
|
|
txtEquipam = AddInput(tp, "TEXTO EQUIPAMENTO", 20, 260, 450, 60);
|
|
}
|
|
|
|
private void ConfigurarAbaFinanceiro(TabPage tp)
|
|
{
|
|
txtVDesloca = AddInput(tp, "VALOR DESLOCAMENTO (PADRÃO)", 20, 20, 180, 28);
|
|
txtVTerceiros = AddInput(tp, "VALOR TERCEIROS (PADRÃO)", 220, 20, 180, 28);
|
|
|
|
chkCobraDesloca = CreateCheckBox(tp, "Cobrar Deslocamento por Padrão?", 20, 70);
|
|
chkCobraTerceiros = CreateCheckBox(tp, "Cobrar Terceiros por Padrão?", 20, 95);
|
|
chkBaixaEstoque = CreateCheckBox(tp, "Baixa de estoque automática no lançamento?", 20, 120);
|
|
|
|
txtMaxDesc = AddInput(tp, "% MÁXIMO DESCONTO VENDAS", 20, 160, 180, 28);
|
|
}
|
|
|
|
private void ConfigurarAbaGarantia(TabPage tp)
|
|
{
|
|
txtPrazoGar = AddInput(tp, "PRAZO DE GARANTIA (EX: 90 DIAS)", 20, 20, 250, 28);
|
|
txtTermoGar = AddInput(tp, "TERMO DE GARANTIA COMPLETO", 20, 80, 600, 100);
|
|
|
|
txtObsRec1 = AddInput(tp, "OBS. RECEBIMENTO LINHA 1", 20, 200, 400, 28);
|
|
txtObsRec2 = AddInput(tp, "OBS. RECEBIMENTO LINHA 2", 20, 245, 400, 28);
|
|
}
|
|
|
|
private void ConfigurarAbaImpressao(TabPage tp)
|
|
{
|
|
txtPortaPrn = AddInput(tp, "PORTA IMPRESSORA (EX: LPT1, COM1)", 20, 20, 200, 28);
|
|
txtSaltos = AddInput(tp, "SALTOS DE LINHA (DRAFT)", 240, 20, 100, 28);
|
|
|
|
chkNoEpson = CreateCheckBox(tp, "Não utilizar comandos Epson (ESC/P)?", 20, 70);
|
|
chk40Colunas = CreateCheckBox(tp, "Habilitar modo 40 colunas (Bobina)?", 20, 95);
|
|
|
|
txtCopiasRec = AddInput(tp, "Nº CÓPIAS RECIBO", 20, 130, 100, 28);
|
|
txtCopiasEnt = AddInput(tp, "Nº CÓPIAS ENTREGA", 140, 130, 100, 28);
|
|
}
|
|
|
|
private void ConfigurarAbaWeb(TabPage tp)
|
|
{
|
|
txtEmailAbrir = AddInput(tp, "ASSUNTO E-MAIL (ABERTURA)", 20, 20, 450, 28);
|
|
txtEmailFechar = AddInput(tp, "ASSUNTO E-MAIL (FECHAMENTO)", 20, 80, 450, 28);
|
|
|
|
txtWeb1 = AddInput(tp, "URL/TEXTO WEB 1", 20, 140, 450, 28);
|
|
txtWeb2 = AddInput(tp, "URL/TEXTO WEB 2", 20, 190, 450, 28);
|
|
}
|
|
|
|
// Helper para criar CheckBoxes no padrão do sistema
|
|
private CheckBox CreateCheckBox(Control parent, string text, int x, int y)
|
|
{
|
|
var ck = new CheckBox { Text = text, Location = new Point(x, y), AutoSize = true, ForeColor = Color.FromArgb(64, 64, 64) };
|
|
parent.Controls.Add(ck);
|
|
return ck;
|
|
}
|
|
|
|
// --- IMPLEMENTAÇÃO DA LÓGICA DE PERSISTÊNCIA ---
|
|
|
|
protected override void OnSalvar()
|
|
{
|
|
// Mapeando todos os campos de volta para o objeto de modelo
|
|
_configAtual.TX_DESC = txtDesc.Text;
|
|
_configAtual.TX_MARCA = txtMarca.Text;
|
|
_configAtual.TX_MODELO = txtModelo.Text;
|
|
_configAtual.TX_SERIE = txtSerie.Text;
|
|
_configAtual.TX_PAT = txtPat.Text;
|
|
_configAtual.OS_TITULO = txtTituloOS.Text;
|
|
_configAtual.PRAZO_GARANTIA = txtPrazoGar.Text;
|
|
_configAtual.TERMO_GARANTIA = txtTermoGar.Text;
|
|
|
|
// Tratando os "booleanos" que no banco são string (S/N)
|
|
_configAtual.COBRA_DESLOCA = chkCobraDesloca.Checked ? "S" : "N";
|
|
_configAtual.COBRA_TERCEIROS = chkCobraTerceiros.Checked ? "S" : "N";
|
|
_configAtual.BAIXA_ESTOQUE_NAHORA = chkBaixaEstoque.Checked ? "S" : "N";
|
|
_configAtual.NO_EPSON = chkNoEpson.Checked ? "S" : "N";
|
|
_configAtual.VENDA_40COLUNAS = chk40Colunas.Checked ? "S" : "N";
|
|
|
|
// Chamada para a sua BLL (LevelCode)
|
|
MessageBox.Show("Parâmetros do sistema salvos com sucesso!", "LevelOS", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
}
|
|
|
|
protected override void OnNovo() { /* Carregar padrão */ }
|
|
protected override void OnAlterar() { /* Habilitar campos */ }
|
|
protected override void OnExcluir() { /* Bloqueado para configurações */ }
|
|
protected override void OnLocalizar() { /* Buscar configuração ativa */ }
|
|
protected override void OnCancelar() { OnLocalizar(); }
|
|
}
|
|
} |