public bool Salvar(ConfigFiscalizacao configuracao) { var isCadastrar = configuracao.Id == 0; try { if (_validar.Salvar(configuracao)) { GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { bancoDeDados.IniciarTransacao(); _da.Salvar(configuracao, bancoDeDados); Validacao.Add(isCadastrar ? Mensagem.FiscalizacaoConfiguracao.Cadastrar(configuracao.Id.ToString()) : Mensagem.FiscalizacaoConfiguracao.Editar(configuracao.Id.ToString())); bancoDeDados.Commit(); } } } catch (Exception e) { Validacao.AddErro(e); } return(Validacao.EhValido); }
public ConfigFiscalizacao Obter(int id, BancoDeDados banco = null) { ConfigFiscalizacao entidade = null; try { entidade = _da.Obter(id); } catch (Exception exc) { Validacao.AddErro(exc); } return(entidade); }
public bool Salvar(ConfigFiscalizacao configuracao) { Mensagem msg = null; List <string> lstMsg = new List <string>(); if (configuracao.ClassificacaoId == 0) { Validacao.Add(Mensagem.FiscalizacaoConfiguracao.ClassificacaoObrigatorio); } if (configuracao.TipoId == 0) { Validacao.Add(Mensagem.FiscalizacaoConfiguracao.TipoObrigatorio); } else if (!_da.TipoIsAtivo(configuracao.TipoId)) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Tipo de infração", configuracao.TipoTexto); msg.Campo = "Configuracao_Tipo"; Validacao.Add(msg); } if (configuracao.ItemId == 0) { Validacao.Add(Mensagem.FiscalizacaoConfiguracao.ItemObrigatorio); } else if (!_da.ItemIsAtivo(configuracao.ItemId)) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Item", configuracao.ItemTexto); msg.Campo = "Configuracao_Item"; Validacao.Add(msg); } if (configuracao.Id == 0) { var config = _da.Obter(configuracao.ClassificacaoId, configuracao.TipoId, configuracao.ItemId); if (config.GetValue <int>("Id") > 0) { Validacao.Add(Mensagem.FiscalizacaoConfiguracao.ConfiguracaoCadastrada); } } configuracao.Subitens.ForEach(x => { if (!_da.SubitemIsAtivo(x.SubItemId)) { lstMsg.Add(x.SubItemTexto); } }); if (lstMsg.Count == 1) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Subitem", lstMsg[0]); msg.Campo = "fsSubitens"; Validacao.Add(msg); } else if (lstMsg.Count > 1) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Subitens", Mensagem.Concatenar(lstMsg), true); msg.Campo = "fsSubitens"; Validacao.Add(msg); } lstMsg = new List <string>(); configuracao.Perguntas.ForEach(x => { if (!_da.PerguntaIsAtivo(x.PerguntaId)) { lstMsg.Add(x.PerguntaTexto); } }); if (lstMsg.Count == 1) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Pergunta", lstMsg[0]); msg.Campo = "fsPerguntas"; Validacao.Add(msg); } else if (lstMsg.Count > 1) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Perguntas", Mensagem.Concatenar(lstMsg), true); msg.Campo = "fsPerguntas"; Validacao.Add(msg); } lstMsg = new List <string>(); configuracao.Campos.ForEach(x => { if (!_da.CampoIsAtivo(x.CampoId)) { lstMsg.Add(x.CampoTexto); } }); if (lstMsg.Count == 1) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Campo", lstMsg[0]); msg.Campo = "fsCampos"; Validacao.Add(msg); } else if (lstMsg.Count > 1) { msg = Mensagem.FiscalizacaoConfiguracao.ItemDesativado("Campos", Mensagem.Concatenar(lstMsg), true); msg.Campo = "fsCampos"; Validacao.Add(msg); } return(Validacao.EhValido); }