81 lines
2.5 KiB
C#
81 lines
2.5 KiB
C#
using LevelCode.License.Business;
|
|
using LevelCode.License.DataAccess;
|
|
using LevelCode.License.Models;
|
|
using LevelCode.License.Models.Enums;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Windows.Forms;
|
|
|
|
namespace LevelCode.License.Forms
|
|
{
|
|
public partial class FrmLicencas : Form
|
|
{
|
|
public FrmLicencas()
|
|
{
|
|
InitializeComponent();
|
|
CarregarTipos();
|
|
}
|
|
|
|
private void CarregarTipos()
|
|
{
|
|
cmbTipoLicenca.DataSource = Enum.GetValues(typeof(TipoLicencaEnum));
|
|
}
|
|
private void chkSemExpiracao_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
dtpExpiraEm.Enabled = !chkSemExpiracao.Checked;
|
|
}
|
|
|
|
|
|
private void btnSalvar_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
// 🔹 1. LER OS MÓDULOS MARCADOS
|
|
List<string> modulosSelecionados = new List<string>();
|
|
|
|
foreach (var item in chkModulos.CheckedItems)
|
|
{
|
|
modulosSelecionados.Add(item.ToString());
|
|
}
|
|
|
|
// 🔹 2. CRIAR O MODELO COM OS MÓDULOS
|
|
ModeloLicenca licenca = new ModeloLicenca
|
|
{
|
|
Cliente = txtCliente.Text.Trim(),
|
|
CodigoTipoLicenca = (int)(TipoLicencaEnum)cmbTipoLicenca.SelectedItem,
|
|
TipoLicenca = cmbTipoLicenca.SelectedItem.ToString(),
|
|
LimiteMaquinas = Convert.ToInt32(txtLimiteMaquinas.Text),
|
|
ExpiraEm = chkSemExpiracao.Checked
|
|
? (DateTime?)null
|
|
: dtpExpiraEm.Value,
|
|
|
|
// ✅ AQUI ESTAVA FALTANDO
|
|
ModulosLista = modulosSelecionados
|
|
};
|
|
|
|
using (DbConexao db = new DbConexao())
|
|
{
|
|
LicencaDAL dal = new LicencaDAL(db);
|
|
LicencaService service = new LicencaService(dal);
|
|
|
|
int id = service.CriarLicenca(licenca);
|
|
|
|
MessageBox.Show(
|
|
"Licença criada com sucesso!\nID: " + id,
|
|
"Sucesso",
|
|
MessageBoxButtons.OK,
|
|
MessageBoxIcon.Information);
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(
|
|
ex.Message,
|
|
"Erro",
|
|
MessageBoxButtons.OK,
|
|
MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
}
|
|
}
|