public bool ExistePremioParceria(OportunidadePremioParceria premioParceria) { using (OracleConnection con = new OracleConnection(Config.StringConexao())) { var parametros = new DynamicParameters(); parametros.Add(name: "OportunidadeId", value: premioParceria.OportunidadeId, direction: ParameterDirection.Input); return(con.Query <bool>(@"SELECT * FROM TB_CRM_OPORTUNIDADE_PREMIOS WHERE StatusPremioParceria = 2 AND OportunidadeId = :OportunidadeId", parametros).Any()); } }
public int Cadastrar(OportunidadePremioParceria premioParceria) { using (OracleConnection con = new OracleConnection(Config.StringConexao())) { con.Open(); using (var transaction = con.BeginTransaction()) { var parametros = new DynamicParameters(); parametros.Add(name: "OportunidadeId", value: premioParceria.OportunidadeId, direction: ParameterDirection.Input); parametros.Add(name: "StatusPremioParceria", value: premioParceria.StatusPremioParceria, direction: ParameterDirection.Input); parametros.Add(name: "Favorecido1", value: premioParceria.Favorecido1, direction: ParameterDirection.Input); parametros.Add(name: "Favorecido2", value: premioParceria.Favorecido2, direction: ParameterDirection.Input); parametros.Add(name: "Favorecido3", value: premioParceria.Favorecido3, direction: ParameterDirection.Input); parametros.Add(name: "Instrucao", value: premioParceria.Instrucao, direction: ParameterDirection.Input); parametros.Add(name: "ContatoId", value: premioParceria.ContatoId, direction: ParameterDirection.Input); parametros.Add(name: "PremioReferenciaId", value: premioParceria.PremioReferenciaId, direction: ParameterDirection.Input); parametros.Add(name: "TipoServicoPremioParceria", value: premioParceria.TipoServicoPremioParceria, direction: ParameterDirection.Input); parametros.Add(name: "Observacoes", value: premioParceria.Observacoes, direction: ParameterDirection.Input); parametros.Add(name: "AnexoId", value: premioParceria.AnexoId, direction: ParameterDirection.Input); parametros.Add(name: "PremioRevisaoId", value: premioParceria.PremioRevisaoId, direction: ParameterDirection.Input); parametros.Add(name: "UrlPremio", value: premioParceria.UrlPremio, direction: ParameterDirection.Input); parametros.Add(name: "DataUrlPremio", value: premioParceria.DataUrlPremio, direction: ParameterDirection.Input); parametros.Add(name: "EmailFavorecido1", value: premioParceria.EmailFavorecido1, direction: ParameterDirection.Input); parametros.Add(name: "EmailFavorecido2", value: premioParceria.EmailFavorecido2, direction: ParameterDirection.Input); parametros.Add(name: "EmailFavorecido3", value: premioParceria.EmailFavorecido3, direction: ParameterDirection.Input); parametros.Add(name: "CriadoPor", value: premioParceria.CriadoPor, direction: ParameterDirection.Input); parametros.Add(name: "Id", dbType: DbType.Int32, direction: ParameterDirection.Output); con.Execute(@" INSERT INTO CRM.TB_CRM_OPORTUNIDADE_PREMIOS ( Id, OportunidadeId, StatusPremioParceria, Favorecido1, Favorecido2, Favorecido3, Instrucao, ContatoId, PremioReferenciaId, TipoServicoPremioParceria, Observacoes, AnexoId, PremioRevisaoId, UrlPremio, DataUrlPremio, EmailFavorecido1, EmailFavorecido2, EmailFavorecido3, CriadoPor, DataCadastro ) VALUES ( CRM.SEQ_CRM_OPORTUNIDADE_PREMIOS.NEXTVAL, :OportunidadeId, :StatusPremioParceria, :Favorecido1, :Favorecido2, :Favorecido3, :Instrucao, :ContatoId, :PremioReferenciaId, :TipoServicoPremioParceria, :Observacoes, :AnexoId, :PremioRevisaoId, :UrlPremio, :DataUrlPremio, :EmailFavorecido1, :EmailFavorecido2, :EmailFavorecido3, :CriadoPor, SYSDATE ) RETURNING Id INTO :Id", parametros); var id = parametros.Get <int>("Id"); foreach (var modalidade in premioParceria.Modalidades) { parametros = new DynamicParameters(); parametros.Add(name: "OportunidadeId", value: premioParceria.OportunidadeId, direction: ParameterDirection.Input); parametros.Add(name: "OportunidadePremioId", value: id, direction: ParameterDirection.Input); parametros.Add(name: "Modalidade", value: modalidade, direction: ParameterDirection.Input); con.Execute(@"INSERT INTO CRM.TB_CRM_PREMIOS_MODALIDADES (Id, OportunidadeId, OportunidadePremioId, Modalidade) VALUES (CRM.SEQ_CRM_PREMIOS_MODALIDADES.NEXTVAL, :OportunidadeId, :OportunidadePremioId, :Modalidade)", parametros); } transaction.Commit(); return(id); } } }
public void Atualizar(OportunidadePremioParceria premioParceria) { using (OracleConnection con = new OracleConnection(Config.StringConexao())) { con.Open(); using (var transaction = con.BeginTransaction()) { var parametros = new DynamicParameters(); parametros.Add(name: "OportunidadeId", value: premioParceria.OportunidadeId, direction: ParameterDirection.Input); parametros.Add(name: "Favorecido1", value: premioParceria.Favorecido1, direction: ParameterDirection.Input); parametros.Add(name: "Favorecido2", value: premioParceria.Favorecido2, direction: ParameterDirection.Input); parametros.Add(name: "Favorecido3", value: premioParceria.Favorecido3, direction: ParameterDirection.Input); parametros.Add(name: "Instrucao", value: premioParceria.Instrucao, direction: ParameterDirection.Input); parametros.Add(name: "ContatoId", value: premioParceria.ContatoId, direction: ParameterDirection.Input); parametros.Add(name: "PremioReferenciaId", value: premioParceria.PremioReferenciaId, direction: ParameterDirection.Input); parametros.Add(name: "TipoServicoPremioParceria", value: premioParceria.TipoServicoPremioParceria, direction: ParameterDirection.Input); parametros.Add(name: "Observacoes", value: premioParceria.Observacoes, direction: ParameterDirection.Input); parametros.Add(name: "AnexoId", value: premioParceria.AnexoId, direction: ParameterDirection.Input); parametros.Add(name: "UrlPremio", value: premioParceria.UrlPremio, direction: ParameterDirection.Input); parametros.Add(name: "DataUrlPremio", value: premioParceria.DataUrlPremio, direction: ParameterDirection.Input); parametros.Add(name: "EmailFavorecido1", value: premioParceria.EmailFavorecido1, direction: ParameterDirection.Input); parametros.Add(name: "EmailFavorecido2", value: premioParceria.EmailFavorecido2, direction: ParameterDirection.Input); parametros.Add(name: "EmailFavorecido3", value: premioParceria.EmailFavorecido3, direction: ParameterDirection.Input); parametros.Add(name: "Id", value: premioParceria.Id, direction: ParameterDirection.Input); con.Execute(@" UPDATE CRM.TB_CRM_OPORTUNIDADE_PREMIOS SET Favorecido1 = :Favorecido1, Favorecido2 = :Favorecido2, Favorecido3 = :Favorecido3, Instrucao = :Instrucao, ContatoId = :ContatoId, PremioReferenciaId = :PremioReferenciaId, TipoServicoPremioParceria = :TipoServicoPremioParceria, Observacoes = :Observacoes, AnexoId = :AnexoId, UrlPremio = :UrlPremio, DataUrlPremio = :DataUrlPremio, EmailFavorecido1 = :EmailFavorecido1, EmailFavorecido2 = :EmailFavorecido2, EmailFavorecido3 = :EmailFavorecido3 WHERE Id = :Id", parametros); con.Execute(@"DELETE FROM CRM.TB_CRM_PREMIOS_MODALIDADES WHERE OportunidadePremioId = :premioParceriaId AND OportunidadeId = :oportunidadeId", new { premioParceriaId = premioParceria.Id, oportunidadeId = premioParceria.OportunidadeId }); foreach (var modalidade in premioParceria.Modalidades) { parametros = new DynamicParameters(); parametros.Add(name: "OportunidadeId", value: premioParceria.OportunidadeId, direction: ParameterDirection.Input); parametros.Add(name: "OportunidadePremioId", value: premioParceria.Id, direction: ParameterDirection.Input); parametros.Add(name: "Modalidade", value: modalidade, direction: ParameterDirection.Input); con.Execute(@"INSERT INTO CRM.TB_CRM_PREMIOS_MODALIDADES (Id, OportunidadeId, OportunidadePremioId, Modalidade) VALUES (CRM.SEQ_CRM_PREMIOS_MODALIDADES.NEXTVAL, :OportunidadeId, :OportunidadePremioId, :Modalidade)", parametros); } transaction.Commit(); } } }