public void Excluir(PdvPlanoPagamento objeto) { using (ISession Session = NHibernateHelper.GetSessionFactory().OpenSession()) { NHibernateDAL <PdvPlanoPagamento> DAL = new NHibernateDAL <PdvPlanoPagamento>(Session); DAL.Delete(objeto); Session.Flush(); } }
public PdvPlanoPagamento ConsultarObjeto(int id) { PdvPlanoPagamento Resultado = null; using (ISession Session = NHibernateHelper.GetSessionFactory().OpenSession()) { NHibernateDAL <PdvPlanoPagamento> DAL = new NHibernateDAL <PdvPlanoPagamento>(Session); Resultado = DAL.SelectId <PdvPlanoPagamento>(id); } return(Resultado); }
public PdvPlanoPagamento ConsultarObjetoFiltro(string filtro) { PdvPlanoPagamento Resultado = null; using (ISession Session = NHibernateHelper.GetSessionFactory().OpenSession()) { var consultaSql = "from PdvPlanoPagamento where " + filtro; NHibernateDAL <PdvPlanoPagamento> DAL = new NHibernateDAL <PdvPlanoPagamento>(Session); Resultado = DAL.SelectObjetoSql <PdvPlanoPagamento>(consultaSql); } return(Resultado); }
public IActionResult InserirPdvPlanoPagamento([FromBody] ObjetoPagSeguro objJson) { try { if (!ModelState.IsValid) { return(StatusCode(400, new RetornoJsonErro(400, "Objeto inválido [Inserir PdvPlanoPagamento]", null))); } PdvPlanoPagamento retorno = _service.Atualizar(objJson); return(CreatedAtRoute("ConsultarObjetoPdvPlanoPagamento", new { id = retorno.Id }, objJson)); } catch (Exception ex) { return(StatusCode(500, new RetornoJsonErro(500, "Erro no Servidor [Inserir PdvPlanoPagamento]", ex))); } }
public int ConfirmarTransacao(string codigoTransacao, string cnpj) { // remove qualquer hifen que tenha sido colocado pelo usuário codigoTransacao = codigoTransacao.Replace("-", ""); // primeiro verifica se existe o código da transação string filtro = "CODIGO_TRANSACAO = '" + codigoTransacao + "'"; PdvPlanoPagamento pdvPlanoPagamento = ConsultarObjetoFiltro(filtro); if (pdvPlanoPagamento != null) { if (pdvPlanoPagamento.Empresa != null) { // achou o código da transação, mas o código já foi utilizado return(418); } else { // achou o código da transação e não está vinculado a nenhuma empresa // vamos vincular o id da empresa e o e-mail de pagamento // retorna 200 EmpresaService empresaService = new EmpresaService(); filtro = "CNPJ = '" + cnpj + "'"; Empresa empresa = empresaService.ConsultarObjetoFiltro(filtro); empresa.EmailPagamento = pdvPlanoPagamento.EmailPagamento; empresaService.Alterar(empresa); pdvPlanoPagamento.Empresa = empresa; Alterar(pdvPlanoPagamento); return(200); } } else { // não achou o código da transação, retorna 404 return(404); } }
public PdvPlanoPagamento Atualizar(ObjetoPagSeguro objetoPagSeguroEnviado) { using (ISession Session = NHibernateHelper.GetSessionFactory().OpenSession()) { // primeiro verifica se já existe um registro armazenado para a transação, pois neste caso iremos apenas atualizar o registro string filtro = ""; filtro = "CodigoTransacao = '" + objetoPagSeguroEnviado.CodigoTransacao + "'"; PdvPlanoPagamento pdvPlanoPagamentoDB = ConsultarObjetoFiltro(filtro); if (pdvPlanoPagamentoDB != null) { // atualiza o status pdvPlanoPagamentoDB.StatusPagamento = objetoPagSeguroEnviado.CodigoStatusTransacao; // se o status for pago, então atualiza a data de pagamento e de expiração do plano if (pdvPlanoPagamentoDB.StatusPagamento == "3") { pdvPlanoPagamentoDB.DataPagamento = DateTime.Now; switch (pdvPlanoPagamentoDB.Plano) { case "M": pdvPlanoPagamentoDB.DataPlanoExpira = DateTime.Now.AddMonths(1); break; case "S": pdvPlanoPagamentoDB.DataPlanoExpira = DateTime.Now.AddMonths(6); break; case "A": pdvPlanoPagamentoDB.DataPlanoExpira = DateTime.Now.AddMonths(12); break; default: break; } } Inserir(pdvPlanoPagamentoDB); Session.Flush(); return(pdvPlanoPagamentoDB); } else { // a falta de registro no banco indica que devemos criar um novo registro no banco de dados // que só será inserido se tiver vindo um tipo de plano válido na requisição String planoContratado = Biblioteca.PegarPlanoPdv(objetoPagSeguroEnviado.DescricaoProduto); String moduloFiscal = Biblioteca.PegarModuloFiscalPdv(objetoPagSeguroEnviado.DescricaoProduto); filtro = "Plano = '" + planoContratado + "' AND ModuloFiscal = '" + moduloFiscal + "'"; PdvTipoPlano tipoPlano = new PdvTipoPlanoService().ConsultarObjetoFiltro(filtro); if (tipoPlano != null) { PdvPlanoPagamento pdvPlanoPagamento = new PdvPlanoPagamento(); pdvPlanoPagamento.PdvTipoPlano = tipoPlano; pdvPlanoPagamento.CodigoTransacao = objetoPagSeguroEnviado.CodigoTransacao; pdvPlanoPagamento.StatusPagamento = objetoPagSeguroEnviado.CodigoStatusTransacao; pdvPlanoPagamento.MetodoPagamento = objetoPagSeguroEnviado.MetodoPagamento; pdvPlanoPagamento.CodigoTipoPagamento = objetoPagSeguroEnviado.CodigoTipoPagamento; pdvPlanoPagamento.Valor = objetoPagSeguroEnviado.ValorUnitario; pdvPlanoPagamento.EmailPagamento = objetoPagSeguroEnviado.EmailCliente; pdvPlanoPagamento.DataSolicitacao = DateTime.Now; pdvPlanoPagamento.Plano = planoContratado; // tenta encontrar a empresa pelo e-mail - se não encontrar, o usuário terá // que informar o código da transação na App para reconhecer o seu pagamento filtro = "Email = '" + objetoPagSeguroEnviado.EmailCliente + "'"; Empresa empresa = new EmpresaService().ConsultarObjetoFiltro(filtro); if (empresa != null) { pdvPlanoPagamento.Empresa = empresa; } Alterar(pdvPlanoPagamento); Session.Flush(); return(pdvPlanoPagamento); } else { return(null); } } } }