コード例 #1
0
        public HttpResponseMessage Create(Acompanhamento acompanhamento)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    if (AcompanhamentoRepository.existeAcompanhamento(acompanhamento))
                    {
                        return(Request.CreateResponse(HttpStatusCode.BadRequest, "Você já está acompanhando esta empresa."));
                    }

                    AcompanhamentoRepository.Create(acompanhamento);

                    return(Request.CreateResponse(HttpStatusCode.Created, "Acompanhamento realizado"));
                }
                else
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState + "Não foi possível cadastrar o usuário."));
                }
            }
            catch (DbEntityValidationException ex)
            {
                foreach (var eve in ex.EntityValidationErrors)
                {
                    foreach (var ve in eve.ValidationErrors)
                    {
                        return(Request.CreateResponse(HttpStatusCode.BadRequest + ". Solicitação não atendida. " + ve.ErrorMessage));
                    }
                }
                throw;
            }
        }
コード例 #2
0
        public AcompanhamentoVM(Acompanhamento acompanhamento, List <Setor> setoresLst, List <ReservaLegalLst> reservalegalTipoLst, List <CaracteristicaSoloAreaDanificada> caracteristicasSolo, bool isVisualizar = false)
        {
            Acompanhamento         = acompanhamento;
            IsVisualizar           = isVisualizar;
            ReservaLegalTipoLst    = reservalegalTipoLst;
            SetoresLst             = ViewModelHelper.CriarSelectList(setoresLst, true, true, selecionado: acompanhamento.SetorId.ToString());
            CaracteristicasSoloLst = caracteristicasSolo;

            List <Lista> resultouErosaoLst = new List <Lista>();

            resultouErosaoLst.Add(new Lista()
            {
                Id = "1", Texto = "Sim", IsAtivo = true
            });
            resultouErosaoLst.Add(new Lista()
            {
                Id = "2", Texto = "Não", IsAtivo = true
            });

            ResultouErosao = ViewModelHelper.CriarSelectList(resultouErosaoLst, true, true, selecionado: acompanhamento.InfracaoResultouErosao.ToString());

            AssinantesVM = new FiscalizacaoAssinanteVM();
            AssinantesVM.IsVisualizar = isVisualizar;
            AssinantesVM.Setores      = ViewModelHelper.CriarSelectList(setoresLst);
            AssinantesVM.Assinantes   = Acompanhamento.Assinantes;
            ArquivoVM.Anexos          = acompanhamento.Anexos;
            ArquivoVM.IsVisualizar    = isVisualizar;
        }
コード例 #3
0
        public async Task AddCardapio(T t)
        {
            //Cardapio.ValidateEntry(t.Nome); // validando entrada do nome

            var exist = await GetById(t.Id);

            var            obj            = typeof(T);
            Salada         salada         = null;
            Acompanhamento acompanhamento = null;

            if (exist == null)
            {
                if (obj.Equals(typeof(Salada)))
                {
                    salada = new Salada(t.Nome, t.Data);
                    _context.Add(salada);
                    return;
                }
                if (obj.Equals(typeof(Acompanhamento)))
                {
                    acompanhamento = new Acompanhamento(t.Nome, t.Data);
                    _context.Add(acompanhamento);
                    return;
                }
            }
            //update;

            exist.Nome = t.Nome;
            //_context.Entry(t).State = EntityState.Modified;
        }
コード例 #4
0
        private async void btnEnviar_Click(object sender, EventArgs e)
        {
            if (VerificaCamposVazios())
            {
                if (await HttpSolicitacaoCompras.AnexarNotaFiscal(openFileDialog1.FileName, idSolicitacao, usuarioLogado.token))
                {
                    Acompanhamento acompanhamento = await HttpAcompanhamento.GetBySolicitacaoId(idSolicitacao, usuarioLogado.token);

                    acompanhamento.StatusId = ConstantesProjeto.STATUS_EM_ANALISE_NF;
                    var acompanhamentoUpdate = await HttpAcompanhamento.Update(acompanhamento, acompanhamento.Id, usuarioLogado.token);

                    if (acompanhamentoUpdate != null)
                    {
                        MessageBox.Show("Nota fiscal anexada com sucesso");
                        form.AtualizaGridSolicitacoesPendentes();
                        form.AtualizaGridSolicitacoesUsuario();
                        this.Dispose();
                    }
                }
            }
            else
            {
                MessageBox.Show("Preencha todos os campos");
            }
        }
コード例 #5
0
        private async void btnAprovar_Click(object sender, EventArgs e)
        {
            Acompanhamento acompanhamento = await HttpAcompanhamento.GetBySolicitacaoId(idSolicitacao, usuarioLogado.token);

            BloqueiaCampos();
            this.Cursor = Cursors.WaitCursor;
            if (await HttpEmail.EnviarEmail(data, idSolicitacao, usuarioLogado.token))
            {
                acompanhamento.StatusId = ConstantesProjeto.STATUS_ANEXAR_NF;
                var acompanhamentoUpdate = await HttpAcompanhamento.Update(acompanhamento, acompanhamento.Id, usuarioLogado.token);

                DesbloqueiaCampos();
                this.Cursor = Cursors.Arrow;
                MessageBox.Show("Envio de e-mail feito com sucesso");
                if (acompanhamentoUpdate != null)
                {
                    this.Dispose();
                    frmPrecadastroEmail.Dispose();
                    frmAreaCoordenacao.AtualizaGridSolicitacoes();
                }
            }
            else
            {
                MessageBox.Show("Erro ao enviar e-mail");
                this.Dispose();
            }
        }
コード例 #6
0
        public bool Excluir(int id)
        {
            try
            {
                Acompanhamento entidade = Obter(id, true);
                if (_validar.Excluir(entidade))
                {
                    GerenciadorTransacao.ObterIDAtual();

                    using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia())
                    {
                        bancoDeDados.IniciarTransacao();

                        _da.Excluir(id, bancoDeDados);

                        bancoDeDados.Commit();

                        Validacao.Add(Mensagem.Acompanhamento.Excluir(entidade.Numero));
                    }
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(Validacao.EhValido);
        }
コード例 #7
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,nome")] Acompanhamento acompanhamento)
        {
            if (id != acompanhamento.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(acompanhamento);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AcompanhamentoExists(acompanhamento.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(acompanhamento));
        }
コード例 #8
0
        public static async Task <Acompanhamento> GetBySolicitacaoId(long id, string token)
        {
            Acompanhamento acompanhamento = new Acompanhamento();

            try
            {
                using (var client = new HttpClient())
                {
                    client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);
                    var response = await client.GetAsync($"{ConstantesProjeto.URL_BASE}/api/acompanhamento/{id}");

                    if (response.IsSuccessStatusCode)
                    {
                        var acompanhamentoStr = await response.Content.ReadAsStringAsync();

                        acompanhamento = JsonConvert.DeserializeObject <Acompanhamento>(acompanhamentoStr);
                        return(acompanhamento);
                    }
                    return(null);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Erro ao conectar com a api " + ex.Message);
                return(null);
            }
        }
コード例 #9
0
        public static async Task <Acompanhamento> Update(Acompanhamento acompanhamento, long id, string token)
        {
            Acompanhamento acompanhamentoCriado = new Acompanhamento();

            try
            {
                using (var client = new HttpClient())
                {
                    var parseJson = JsonConvert.SerializeObject(acompanhamento);
                    var content   = new StringContent(parseJson, Encoding.UTF8, "application/json");
                    client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);
                    var response = await client.PutAsync($"{ConstantesProjeto.URL_BASE}/api/acompanhamento/{id}", content);

                    if (response.IsSuccessStatusCode)
                    {
                        var acompanhamentoStr = await response.Content.ReadAsStringAsync();

                        acompanhamentoCriado = JsonConvert.DeserializeObject <Acompanhamento>(acompanhamentoStr);
                        return(acompanhamentoCriado);
                    }
                    return(null);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Erro ao conectar com a api " + ex.Message);
                return(null);
            }
        }
コード例 #10
0
        private async void btnReprovar_Click(object sender, EventArgs e)
        {
            Acompanhamento acompanhamento = await HttpAcompanhamento.GetBySolicitacaoId(idSolicitacao, usuarioLogado.token);

            FrmModalSolicitacao form = new FrmModalSolicitacao(ConstantesProjeto.SOLICITACAO_REPROVADA, acompanhamento, usuarioLogado, frmAreaCoordenacao);

            form.ShowDialog();
        }
コード例 #11
0
 public FrmModalSolicitacao(int acao, Acompanhamento acompanhamento, Usuario usuario, FrmAreaCoordenacao frmAreaCoordenacao)
 {
     InitializeComponent();
     this.acao               = acao;
     this.acompanhamento     = acompanhamento;
     this.usuarioLogado      = usuario;
     this.frmAreaCoordenacao = frmAreaCoordenacao;
 }
コード例 #12
0
        private async void btnReprovar_Click(object sender, EventArgs e)
        {
            this.Dispose();
            Acompanhamento acompanhamento = await HttpAcompanhamento.GetBySolicitacaoId(idSolicitacao, usuarioLogado.token);

            FrmModalSolicitacao modal = new FrmModalSolicitacao(ConstantesProjeto.SOLICITACAO_REPROVADA, acompanhamento, usuarioLogado, form);

            modal.ShowDialog();
        }
コード例 #13
0
        public bool PodeEditar(Acompanhamento acompanhamento)
        {
            if (acompanhamento.SituacaoId != (int)eAcompanhamentoSituacao.EmCadastro)
            {
                Validacao.Add(Mensagem.Acompanhamento.SituacaoInvalidaEditar(acompanhamento.SituacaoTexto));
                return(false);
            }

            return(Validacao.EhValido);
        }
コード例 #14
0
        public void Create(Acompanhamento acompanhamento)
        {
            Acompanhamento novoAcompanhamento = new Acompanhamento();

            novoAcompanhamento.IdConsumidor = acompanhamento.IdConsumidor;
            novoAcompanhamento.IdEmpresa    = acompanhamento.IdEmpresa;

            DataModel.Acompanhamento.Add(novoAcompanhamento);
            DataModel.SaveChanges();
        }
コード例 #15
0
        public async Task <IActionResult> Create([Bind("Id,nome")] Acompanhamento acompanhamento)
        {
            if (ModelState.IsValid)
            {
                _context.Add(acompanhamento);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(acompanhamento));
        }
コード例 #16
0
 public bool existeAcompanhamento(Acompanhamento acompanhamento)
 {
     if (DataModel.Acompanhamento.Where(e => e.IdEmpresa == acompanhamento.IdEmpresa && e.IdConsumidor == acompanhamento.IdConsumidor).Count() > 0)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
コード例 #17
0
 public HttpResponseMessage Delete(Acompanhamento acompanhamento)
 {
     try
     {
         AcompanhamentoRepository.DeletarAcompanhamento(acompanhamento);
         return(Request.CreateResponse(HttpStatusCode.OK + "Você não acompanha mais a empresa"));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.BadRequest + ". Não foi possível fazer requisição =>" + ex));
     }
 }
コード例 #18
0
        public Fiscalizacao ObterComAcompanhamento(int id, int acompanhamentoId, bool simplificado = false, BancoDeDados banco = null)
        {
            Fiscalizacao entidade = null;

            try
            {
                using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
                {
                    entidade = _da.Obter(id, bancoDeDados);

                    if (simplificado)
                    {
                        return(entidade);
                    }

                    entidade.LocalInfracao       = _daLocalInfracao.Obter(id, bancoDeDados);
                    entidade.ComplementacaoDados = _daComplementacaoDados.Obter(id, bancoDeDados);
                    entidade.Enquadramento       = _daEnquadramento.Obter(id, bancoDeDados);
                    entidade.Infracao            = _daInfracao.ObterHistoricoPorFiscalizacao(id, bancoDeDados);
                    entidade.ObjetoInfracao      = _daObjetoInfracao.Obter(id, bancoDeDados);
                    entidade.MaterialApreendido  = _daMaterialApreendido.Obter(id, bancoDeDados);
                    entidade.ConsideracaoFinal   = _daConsideracaoFinal.Obter(id, bancoDeDados);
                    entidade.ProjetoGeo          = _daPrjGeo.ObterProjetoGeograficoPorFiscalizacao(id, bancoDeDados);

                    entidade.AutuadoPessoa         = entidade.LocalInfracao.PessoaId.GetValueOrDefault() > 0 ? new PessoaBus().Obter(entidade.LocalInfracao.PessoaId.Value) : new Pessoa();
                    entidade.AutuadoEmpreendimento = entidade.LocalInfracao.EmpreendimentoId.GetValueOrDefault() > 0 ? new EmpreendimentoBus().Obter(entidade.LocalInfracao.EmpreendimentoId.Value) : new Empreendimento();

                    Acompanhamento acomp = _daAcompanhamento.Obter(acompanhamentoId);

                    entidade.ComplementacaoDados.AreaTotalInformada           = acomp.AreaTotal;
                    entidade.ComplementacaoDados.AreaCoberturaFlorestalNativa = acomp.AreaFlorestalNativa;
                    entidade.ComplementacaoDados.ReservalegalTipo             = acomp.ReservalegalTipo;
                    entidade.ObjetoInfracao.OpniaoAreaDanificada = acomp.OpniaoAreaEmbargo;
                    entidade.ObjetoInfracao.ExisteAtvAreaDegrad  = acomp.AtividadeAreaEmbargada;
                    entidade.ObjetoInfracao.ExisteAtvAreaDegradEspecificarTexto = acomp.AtividadeAreaEmbargadaEspecificarTexto;
                    entidade.ObjetoInfracao.UsoSoloAreaDanificada            = acomp.UsoAreaSoloDescricao;
                    entidade.ObjetoInfracao.CaracteristicaSoloAreaDanificada = acomp.CaracteristicaSoloAreaDanificada;
                    entidade.ObjetoInfracao.AreaDeclividadeMedia             = acomp.AreaDeclividadeMedia;
                    entidade.ObjetoInfracao.InfracaoResultouErosaoTipo       = acomp.InfracaoResultouErosao;
                    entidade.ObjetoInfracao.InfracaoResultouErosaoTipoTexto  = acomp.InfracaoResultouErosaoEspecificar;
                    entidade.MaterialApreendido.Opiniao   = acomp.OpniaoDestMaterialApreend;
                    entidade.ConsideracaoFinal.Assinantes = acomp.Assinantes;
                    entidade.ConsideracaoFinal.Anexos     = acomp.Anexos;
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(entidade);
        }
コード例 #19
0
        internal bool ExisteAcompanhamento(int fiscalizacao, BancoDeDados banco = null)
        {
            Acompanhamento acompanhamento = new Acompanhamento();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                Comando comando = bancoDeDados.CriarComando(@"select count(*) from tab_acompanhamento_fisc a where a.fiscalizacao = :fiscalizacao", EsquemaBanco);

                comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacao, DbType.Int32);

                return(Convert.ToBoolean(bancoDeDados.ExecutarScalar(comando)));
            }
        }
コード例 #20
0
        public String ObterNumeroAcompanhamento(Acompanhamento entidade)
        {
            List <Acompanhamento> acompanhamentos = ObterAcompanhamentos(entidade.FiscalizacaoId).Itens;

            if (acompanhamentos != null && acompanhamentos.Count <= 0)
            {
                return(ASCIIEncoding.ASCII.GetString(new byte[] { 65 }));
            }

            Acompanhamento auxilio = acompanhamentos.Single(x => x.Id == acompanhamentos.Max(y => y.Id));

            char[] sufixoChars = auxilio.NumeroSufixo.ToCharArray();
            byte[] sufixoBytes = ASCIIEncoding.ASCII.GetBytes(sufixoChars);

            if (sufixoBytes.Last() == 90)
            {
                if (sufixoBytes.Length == 1 || sufixoBytes.Count(x => x != 90) <= 0)
                {
                    byte[] sufixoBytesAux = new byte[sufixoBytes.Length + 1];

                    for (int i = 0; i < sufixoBytesAux.Length; i++)
                    {
                        sufixoBytesAux[i] = 65;
                    }

                    return(ASCIIEncoding.ASCII.GetString(sufixoBytesAux));
                }
                else
                {
                    for (int i = sufixoBytes.Length - 1; i >= 0; i--)
                    {
                        if (sufixoBytes[i] == 90)
                        {
                            sufixoBytes[i] = 65;
                            continue;
                        }

                        sufixoBytes[i] = (byte)(Convert.ToInt32(sufixoBytes[i]) + 1);
                        break;
                    }

                    return(ASCIIEncoding.ASCII.GetString(sufixoBytes));
                }
            }
            else
            {
                sufixoBytes[sufixoBytes.Length - 1] = (byte)(Convert.ToInt32(sufixoBytes[sufixoBytes.Length - 1]) + 1);
                return(ASCIIEncoding.ASCII.GetString(sufixoBytes));
            }
        }
コード例 #21
0
        private async void btnAprovar_Click(object sender, EventArgs e)
        {
            Acompanhamento acompanhamento = await HttpAcompanhamento.GetBySolicitacaoId(idSolicitacao, usuarioLogado.token);

            acompanhamento.StatusId = ConstantesProjeto.STATUS_FINALIZADO;

            var acompanhamentoEditado = await HttpAcompanhamento.Update(acompanhamento, acompanhamento.Id, usuarioLogado.token);

            if (acompanhamentoEditado != null)
            {
                MessageBox.Show("Solicitação de compras finalizada com sucesso!!", "Mensagem de sucesso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                form.AtualizaGridSolicitacoes();
                this.Dispose();
            }
        }
コード例 #22
0
        public bool PodeAlterarSituacao(Acompanhamento acompanhamento, Fiscalizacao fiscalizacao)
        {
            if (!_protocoloDa.EmPosse(fiscalizacao.ProtocoloId))
            {
                Validacao.Add(Mensagem.Acompanhamento.PosseProcessoAlterarSituacao);
                return(false);
            }

            if (acompanhamento.SituacaoId == (int)eAcompanhamentoSituacao.Nulo || acompanhamento.SituacaoId == (int)eAcompanhamentoSituacao.Cancelado)
            {
                Validacao.Add(Mensagem.Acompanhamento.SituacaoInvalidaAlterarSituacao(acompanhamento.SituacaoTexto));
                return(false);
            }

            return(Validacao.EhValido);
        }
コード例 #23
0
        public void DeletarAcompanhamento(Acompanhamento acompanhamento)
        {
            var acompanhamentos  = DataModel.Acompanhamento.ToList();
            int idAcompanhamento = 0;

            foreach (var item in acompanhamentos)
            {
                if (acompanhamento.IdConsumidor == item.IdConsumidor && acompanhamento.IdEmpresa == item.IdEmpresa)
                {
                    idAcompanhamento = item.IdAcompanhamento;
                }
            }
            acompanhamento = DataModel.Acompanhamento.Find(idAcompanhamento);
            DataModel.Acompanhamento.Remove(acompanhamento);
            DataModel.SaveChanges();
        }
コード例 #24
0
        internal bool Excluir(Acompanhamento entidade)
        {
            if (entidade.SituacaoId != (int)eAcompanhamentoSituacao.EmCadastro)
            {
                Validacao.Add(Mensagem.Acompanhamento.ExcluirInvalido(entidade.Numero, entidade.SituacaoTexto));
                return(false);
            }

            if (!_protocoloDa.EmPosse(_fiscalizacaoBus.Obter(entidade.FiscalizacaoId).ProtocoloId))
            {
                Validacao.Add(Mensagem.Acompanhamento.PosseProcessoAlterarSituacao);
                return(false);
            }

            return(Validacao.EhValido);
        }
コード例 #25
0
        private async void FrmGerenciarSolicitacaoCompra_Load(object sender, EventArgs e)
        {
            PreencheCombobox(cboEscola, "Nome", "Id");
            PreencheCombobox(cboOcupacao, "Nome", "Id");
            PreencheCombobox(cboTipoCompra, "Descricao", "Id");
            PreencheDadosEscola(1);
            if (idSolicitacao > 0)
            {
                PreencheDadosSolicitacao();
            }
            Acompanhamento acompanhamento = await HttpAcompanhamento.GetBySolicitacaoId(idSolicitacao, usuarioLogado.token);

            if (acompanhamento.StatusId == ConstantesProjeto.STATUS_EM_ANALISE_NF)
            {
                btnVisualizarNF.Visible = true;
            }
        }
コード例 #26
0
        internal Resultados <Acompanhamento> ObterAcompanhamentos(int fiscalizacao, BancoDeDados banco = null)
        {
            Resultados <Acompanhamento> retorno = new Resultados <Acompanhamento>();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                Comando comando = bancoDeDados.CriarComando(@"select t.id, t.numero_sufixo, ter.id arquivo_termo_id, ter.nome arquivo_termo_nome,
															t.data_vistoria, t.situacao, ls.texto situacao_texto, t.data_situacao 
															from tab_acompanhamento_fisc t, lov_acomp_fisc_situacao ls, tab_arquivo ter
															where t.situacao = ls.id and t.arquivo_termo = ter.id(+) and t.fiscalizacao = :fiscalizacao
															order by t.id"                                                            );

                comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacao, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    Acompanhamento acompanhamento;

                    while (reader.Read())
                    {
                        acompanhamento = new Acompanhamento();
                        acompanhamento.FiscalizacaoId         = fiscalizacao;
                        acompanhamento.Id                     = reader.GetValue <int>("id");
                        acompanhamento.NumeroSufixo           = reader.GetValue <string>("numero_sufixo");
                        acompanhamento.DataVistoria.DataTexto = reader.GetValue <string>("data_vistoria");
                        acompanhamento.SituacaoId             = reader.GetValue <int>("situacao");
                        acompanhamento.SituacaoTexto          = reader.GetValue <string>("situacao_texto");
                        acompanhamento.DataSituacao.DataTexto = reader.GetValue <string>("data_situacao");

                        if (reader["arquivo_termo_id"] != null && !Convert.IsDBNull(reader["arquivo_termo_id"]))
                        {
                            Arquivo arquivo = new Arquivo();
                            arquivo.Id             = reader.GetValue <int>("arquivo_termo_id");
                            arquivo.Nome           = reader.GetValue <string>("arquivo_termo_nome");
                            acompanhamento.Arquivo = arquivo;
                        }

                        retorno.Itens.Add(acompanhamento);
                    }

                    reader.Close();
                }
            }

            return(retorno);
        }
コード例 #27
0
        internal void SalvarArquivo(Acompanhamento acompanhamento, BancoDeDados banco = null)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                bancoDeDados.IniciarTransacao();

                Comando comando = bancoDeDados.CriarComando(@"update {0}tab_acompanhamento_fisc t set t.arquivo = :arquivo, t.tid = :tid where t.id = :id", EsquemaBanco);

                comando.AdicionarParametroEntrada("arquivo", acompanhamento.PdfLaudo.Id, DbType.Int32);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                comando.AdicionarParametroEntrada("id", acompanhamento.Id, DbType.Int32);

                bancoDeDados.ExecutarNonQuery(comando);

                bancoDeDados.Commit();
            }
        }
コード例 #28
0
        public bool AlterarSituacao(Acompanhamento entidade)
        {
            try
            {
                if (_validar.AlterarSituacao(entidade))
                {
                    GerenciadorTransacao.ObterIDAtual();

                    using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia())
                    {
                        bancoDeDados.IniciarTransacao();

                        _da.AlterarSituacao(entidade, bancoDeDados);

                        if (entidade.PdfLaudo.Id.GetValueOrDefault() <= 0)
                        {
                            ArquivoBus arquivoBus = new ArquivoBus(eExecutorTipo.Interno);
                            ArquivoDa  arquivoDa  = new ArquivoDa();

                            entidade.PdfLaudo.Nome        = "LaudoAcompanhamentoFiscalizacao";
                            entidade.PdfLaudo.Extensao    = ".pdf";
                            entidade.PdfLaudo.ContentType = "application/pdf";
                            entidade.PdfLaudo.Buffer      = new PdfFiscalizacao().GerarLaudoAcompanhamentoFiscalizacao(entidade.Id, false, banco: bancoDeDados);
                            arquivoBus.Salvar(entidade.PdfLaudo);

                            arquivoDa.Salvar(entidade.PdfLaudo, User.FuncionarioId, User.Name, User.Login, (int)eExecutorTipo.Interno, User.FuncionarioTid, bancoDeDados);

                            _da.SalvarArquivo(entidade, bancoDeDados);
                        }

                        _historico.Gerar(entidade.Id, eHistoricoArtefato.acompanhamento, eHistoricoAcao.alterarsituacao, bancoDeDados);

                        bancoDeDados.Commit();

                        Validacao.Add(Mensagem.Acompanhamento.SituacaoSalvar);
                    }
                }
            }
            catch (Exception e)
            {
                Validacao.AddErro(e);
            }

            return(Validacao.EhValido);
        }
コード例 #29
0
        public Acompanhamento Salvar(Acompanhamento acompanhamento, BancoDeDados banco = null)
        {
            if (acompanhamento == null)
            {
                throw new Exception("Acompanhamento é nulo.");
            }

            if (acompanhamento.Id <= 0)
            {
                acompanhamento = Criar(acompanhamento, banco);
            }
            else
            {
                acompanhamento = Editar(acompanhamento, banco);
            }

            return(acompanhamento);
        }
コード例 #30
0
        internal void AlterarSituacao(Acompanhamento acompanhamento, BancoDeDados banco)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                bancoDeDados.IniciarTransacao();

                Comando comando = bancoDeDados.CriarComando(@"update {0}tab_acompanhamento_fisc t set 
				t.situacao = :situacao, t.data_situacao = :data_situacao, t.motivo_situacao = :motivo_situacao, t.tid = :tid where t.id = :id"                , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", acompanhamento.Id, DbType.Int32);
                comando.AdicionarParametroEntrada("situacao", acompanhamento.SituacaoId, DbType.Int32);
                comando.AdicionarParametroEntrada("data_situacao", acompanhamento.DataSituacao.DataTexto, DbType.Date);
                comando.AdicionarParametroEntrada("motivo_situacao", DbType.String, 500, acompanhamento.Motivo);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                bancoDeDados.ExecutarNonQuery(comando);

                bancoDeDados.Commit();
            }
        }
コード例 #31
0
ファイル: Usuário.cs プロジェクト: andrepontesmelo/imjoias
 /// <summary>
 /// Notifica ação sobre entidade.
 /// </summary>
 /// <param name="tipo">Tipo da entidade.</param>
 /// <param name="dados">Dados da ação e da entidade.</param>
 internal void NotificarDbAção(Type tipo, Acompanhamento.DbAçãoDados dados)
 {
     usuários.NotificarDbAção(tipo, dados);
 }