public async Task <IActionResult> PutImobiliaria(int id, Imobiliaria imobiliaria) { if (id != imobiliaria.IdImobiliaria) { return(BadRequest()); } _context.Entry(imobiliaria).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ImobiliariaExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public AgenciaController( ILogger <HomeController> logger, Imobiliaria injectedContext, IHttpClientFactory httpClientFactory) { _logger = logger; db = injectedContext; clientFactory = httpClientFactory; }
public void preencheModelImobiliaria() { if (TextBoxEmpresaImobiliaria.Text != string.Empty) { Imobiliaria oImobiliaria = new Imobiliaria(); oImobiliaria.nomeImobiliaria = TextBoxEmpresaImobiliaria.Text; oImobiliaria.telefoneImobiliaria = TextBoxTelefoneImobiliaria.Text; oImobiliaria.Contato = TextBoxContatoImobiliaria.Text; oProprietarioModel.imobiliaria = oImobiliaria; } }
public IActionResult Create(Imobiliaria imobiliaria) { if (ModelState.IsValid) { _mongoDBContext.Imobiliarias.InsertOne(imobiliaria); return(RedirectToAction("Index")); } ViewBag.categorias = _mongoDBContext.Imobiliarias.Find(s => true).ToList(); return(View()); }
public ActionResult Edit(Imobiliaria imobiliaria, String Id) { if (ModelState.IsValid) { imobiliaria.Id = ObjectId.Parse(Id); var filter = new BsonDocument("_id", ObjectId.Parse(Id)); //var filter = Builders<Servidor>.Filter.Eq(s => s.Id, servidor.Id); _mongoDBContext.Imobiliarias.ReplaceOne(filter, imobiliaria); return(RedirectToAction("Index")); } return(View()); }
public void cadastraImobiliaria(Imobiliaria imobiliaria, ApartamentoModel pAp) { string clausulaSQL = "CADASTRAR_IMOBILIARIA"; SqlCommand comandoSQL = new SqlCommand(clausulaSQL); //Cadastro de imobiliaria comandoSQL.Parameters.AddWithValue("@NOME_IMOBILIARIA", imobiliaria.nomeImobiliaria); comandoSQL.Parameters.AddWithValue("@TELEFONE_IMOBILIARIA", imobiliaria.telefoneImobiliaria); comandoSQL.Parameters.AddWithValue("@CONTATO_IMOBILIARIA", imobiliaria.Contato); comandoSQL.Parameters.AddWithValue("@BLOCO", pAp.bloco); comandoSQL.Parameters.AddWithValue("@AP", pAp.apartamento); ExecutaComando(comandoSQL); }
public string Deletar(Imobiliaria i) { ImobiliariaDao login = new ImobiliariaDao(); string aviso = null; if (login.DeletaImobiliariaProc(i)) { aviso = "Excluído com sucesso!"; } else { aviso = "Não foi possivel excluír a imobiliária"; } return(aviso); }
public string alterar(Imobiliaria i, Endereco e, Email m, Telefone t) { ImobiliariaDao login = new ImobiliariaDao(); string aviso = VerificarCampos(i, e, m, t); if (aviso == "") { if (login.AlteraImobiliariaProc(i, e, m, t)) { aviso = "Alterado com sucesso!"; } else { aviso = "Não foi possivel alterar a imobiliária"; } } return(aviso); }
public async Task <ActionResult <Imobiliaria> > PostImobiliaria(Imobiliaria imobiliaria) { _context.Imobiliaria.Add(imobiliaria); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { if (ImobiliariaExists(imobiliaria.IdImobiliaria)) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetImobiliaria", new { id = imobiliaria.IdImobiliaria }, imobiliaria)); }
private void toolStripButton1_Click(object sender, EventArgs e) { Imobiliaria imb = new Imobiliaria(); imb.Id = Convert.ToInt32(cod); try { ImobiliariaModel login = new ImobiliariaModel(); string mensagem = login.Deletar(imb); if (mensagem != "") { MessageBox.Show(mensagem); this.Close(); } } catch (Exception ex) { MessageBox.Show("Erro: " + ex); } }
public Imobiliaria buscaImobiliariaByBlocoAp(DataTable dt) { Imobiliaria oImobiliaria = new Imobiliaria(); foreach (DataRow dr in dt.Rows) { if (dr.Table.Columns.Contains("NOME_IMOBILIARIA") && !Convert.IsDBNull(dr["NOME_IMOBILIARIA"])) { oImobiliaria.nomeImobiliaria = dr["NOME_IMOBILIARIA"].ToString(); } if (dr.Table.Columns.Contains("TELEFONE_IMOBILIARIA") && !Convert.IsDBNull(dr["TELEFONE_IMOBILIARIA"])) { oImobiliaria.telefoneImobiliaria = dr["TELEFONE_IMOBILIARIA"].ToString(); } if (dr.Table.Columns.Contains("CONTATO") && !Convert.IsDBNull(dr["CONTATO"])) { oImobiliaria.Contato = dr["CONTATO"].ToString(); } } return(oImobiliaria); }
public bool AlteraImobiliariaProc(Imobiliaria imb, Endereco end, Email mail, Telefone tel) { string sql = " AlteraImobiliaria null,null,'" + imb.Id + "',null,'" + imb.Fantasia + "','" + end.Cep + "', '" + end.Logradouro + "','" + end.Numero + "','" + end.Bairro + "','" + end.Cidade + "','" + end.Uf + "', '" + mail.Mail + "','" + tel.Fixo + "','" + tel.Celular + "','" + imb.Plano + "'"; Console.WriteLine(sql); try { SqlCommand cmd = new SqlCommand(sql, conn); int res = cmd.ExecuteNonQuery(); if (res > 0) { var = true; } } catch (Exception ex) { Console.WriteLine("erro: " + ex.ToString()); } finally { Conexao.fechaConexao(); } return(var); }
public bool DeletaImobiliariaProc(Imobiliaria imb) { string sql = "exec deletaImobiliaria " + imb.Id.ToString(); Console.WriteLine(sql); try { SqlCommand cmd = new SqlCommand(sql, conn); int res = cmd.ExecuteNonQuery(); if (res > 0) { var = true; } } catch (Exception ex) { Console.WriteLine("erro: " + ex.ToString()); } finally { Conexao.fechaConexao(); } return(var); }
public Imoveis(Imobiliaria db) { this.db = db; }
private string VerificarCampos(Imobiliaria i, Endereco e, Email m, Telefone t) { string msg = ""; //plano if (i.Plano == "") { msg += "- Selecione um plano! -\n"; } //email var rg = new Regex(@"^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$"); if (!rg.IsMatch(m.Mail)) { msg += " - E-mail não é valido! -\n"; } //bairro if (e.Bairro == "") { msg += "- Preencha o Bairro! -\n"; } //cep rg = new Regex(@"\d{2}[.\s]?\d{3}[-.\s]?\d{3}"); if (!rg.IsMatch(e.Cep)) { msg += " - CEP não é valido! -\n"; } //Logradouro if (e.Logradouro == "") { msg += "- Preencha o Logradouro! -\n"; } //Municipio if (e.Cidade == "") { msg += "- Preencha o Municipio! -\n"; } //CNPJ rg = new Regex(@"(^\d{3}\.\d{3}\.\d{3}\-\d{2}$)|(^\d{2}\.\d{3}\.\d{3}\/\d{4}\-\d{2}$)"); if (!rg.IsMatch(i.Cnpj)) { msg += " - CNPJ não é valido! -\n"; } /*//CPF * rg = new Regex(@"(^\d{3}\.\d{3}\.\d{3}\-\d{2}$)|(^\d{2}\.\d{3}\.\d{3}\/\d{4}\-\d{2}$)"); * if (!rg.IsMatch(txtCPF.Text)) * msg += " - CPF não é valido! -\n"; */ //Numero rg = new Regex(@"^\d+$"); if (!rg.IsMatch(e.Numero)) { msg += " - Número não é valido! -\n"; } //Creci if (i.Creci == "") { msg += "- Preencha o Creci! -\n"; } //Tel Fixo rg = new Regex(@"^(?:(?:\+|00)?(55)\s?)?(?:\(?([1-9][0-9])\)?\s?)?(?:((?:9\d|[2-9])\d{3})\-?(\d{4}))$"); if (!rg.IsMatch(t.Fixo)) { msg += " - Telefone não é valido! -\n"; } //Tel Celular rg = new Regex(@"^(?:(?:\+|00)?(55)\s?)?(?:\(?([1-9][0-9])\)?\s?)?(?:((?:9\d|[2-9])\d{3})\-?(\d{4}))$"); if (!rg.IsMatch(t.Celular)) { msg += " - Telefone não é valido! -\n"; } //UF rg = new Regex(@"^[a-zA-Z]{2}$"); if (!rg.IsMatch(e.Uf)) { msg += " - UF não é valida! -\n"; } //Fantasia if (i.Fantasia == "") { msg += "- Preencha o Nome Fantasia! -\n"; } //IE if (i.Ie == "") { msg += "- Preencha a Inscrição Estadual! -\n"; } //IM if (i.Im == "") { msg += "- Preencha a Inscrição Municipal! -\n"; } //Razao if (i.Razao == "") { msg += "- Preencha a Razão Social! -\n"; } return(msg); }
public Agencias(Imobiliaria db) { this.db = db; }
public bool Processar(ref Conexao conexao) { List <string> status_antecipacao = new List <string> { "C21" }; //Lista de status de Antecipação. this.erros.classe = "Retorno_Debito_Automatico"; this.erros.funcao = "Processar"; this.erros.descErro = ""; bool result; try { string text = ""; this.complDados.prmRetorno = this.prmRetorno; if (!this.complDados.dados_venda_pagamento(ref conexao)) { this.erros = this.complDados.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } this.dtHr_Alteracao = this.dtHr_Alteracao.AddMilliseconds(1.0); this.iHistPagamento.pagamento = this.complDados.pagamento; this.iHistPagamento.pagamento.data_alteracaoHist = this.dtHr_Alteracao; this.aPagamento.pagamento = this.iHistPagamento.pagamento; this.aPagamento.pagamento.cod_movimento = this.prmRetorno.detalhe.F12; if (this.aPagamento.pagamento.status_pagamento == "P07") { this.erros.codErro = "10"; this.erros.descErro = "PAGAMENTO JA EFETUADO ANTERIORMENTE, REGISTRO NAO PROCESSADO. ID_REGISTRO: " + this.prmRetorno.detalhe.F08; this.logErrosTxt.gravaLogProcesso(this.erros); this.pagamento = this.aPagamento.pagamento; result = true; return(result); } if (this.prmRetorno.detalhe.F07 == "55" && this.prmRetorno.header.A05 != "399") { result = true; return(result); } if (this.aPagamento.pagamento.cod_movimento == "0") { if (this.prmRetorno.detalhe.cad_optante_itau) { if (!(this.aPagamento.pagamento.status_pagamento == "P02")) { this.erros.codErro = "100"; this.erros.descErro = "STATUS PAGAMENTO INVALIDO PARA CONFIRMACAO DE AGENDAMENTO: ID_PAGAMENTO:" + this.aPagamento.pagamento.id_pagamento; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } text = "P03"; } else { if (this.prmRetorno.detalhe.F07 == "00" || this.prmRetorno.detalhe.F07 == "31") { text = "P07"; this.aPagamento.pagamento.data_pagamento = this.func.montaDataddMMyyyy(this.prmRetorno.detalhe.F05); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { //TODO: Peter checar com o Robson. A condicional do IF é código novo. Antes, estava sempre alterando o status para C05. if (current.id_status_ant == "C01") { current.id_status = "C05"; } else if (status_antecipacao.Contains(current.id_status_ant)) //AntecipaçãoC21 { current.id_status = "C19"; } else { current.id_status = current.id_status_ant; } } } if (this.prmRetorno.detalhe.F07 == "01") { //TODO: Verificar se neste ponto do código teremos que validar se o número de reapresentação foi excedido text = "P08"; this.descricaoRetorno(this.prmRetorno.detalhe.F07, ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = current.id_status_ant; //Mantem antecipacao } else { current.id_status = "C04"; } current.desc_hist = this.descRetorno; } } if (this.prmRetorno.detalhe.F07 == "02" || this.prmRetorno.detalhe.F07 == "04" || this.prmRetorno.detalhe.F07 == "05" || this.prmRetorno.detalhe.F07 == "10" || this.prmRetorno.detalhe.F07 == "12" || this.prmRetorno.detalhe.F07 == "14" || this.prmRetorno.detalhe.F07 == "15" || this.prmRetorno.detalhe.F07 == "18" || this.prmRetorno.detalhe.F07 == "19" || this.prmRetorno.detalhe.F07 == "20" || this.prmRetorno.detalhe.F07 == "30" || this.prmRetorno.detalhe.F07 == "31" || this.prmRetorno.detalhe.F07 == "96") { //TODO: Verificar se neste ponto do código teremos que validar se o número de reapresentação foi excedido if (this.aPagamento.pagamento.cod_banco == "33" && this.prmRetorno.detalhe.F07 == "04") { text = "P08"; this.descricaoRetorno(this.prmRetorno.detalhe.F07, ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = current.id_status_ant; //Mantem antecipacao } else if (current.id_status_ant == "C02") { current.id_status = "C02"; } else { current.id_status = "C04"; } current.desc_hist = this.descRetorno; } } else { text = "P04"; this.descricaoRetorno(this.prmRetorno.detalhe.F07, ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = "C20"; //Antecipacao Problema Cobrança } else if (current.id_status_ant == "C02") { current.id_status = "C02"; } else { current.id_status = "C13"; } current.desc_hist = this.descRetorno; } } } if (this.prmRetorno.detalhe.F07 == "13") { text = "P05"; } if (this.prmRetorno.detalhe.F07 == "99") { if (this.prmRetorno.header.A05 != "104") { text = "P04"; this.descricaoRetorno("60", ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = "C20"; //Antecipação Problema Cobrança. } else if (current.id_status_ant == "C02") { current.id_status = "C02"; } else { current.id_status = "C15"; } current.desc_hist = this.descRetorno; } } else { //Verificar se pagamento é relativo a antecipacao if (this.aPagamento.pagamento.antecipacao == false) { text = "P13"; this.descricaoRetorno(this.prmRetorno.detalhe.F07, ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = "C20"; //Antecipação Problema Cobrança } else if (current.id_status_ant == "C02") { current.id_status = "C02"; } else { current.id_status = "C12"; } current.desc_hist = this.descRetorno; } } else { this.erros.codErro = "11"; this.erros.descErro = "CANCELAMENTO NEGADO. PAGAMENTO COM UMA COMISSÃO ANTECIPADA: " + this.prmRetorno.detalhe.F07; result = false; return(result); } } } if (text == "") { this.erros.codErro = "11"; this.erros.descErro = "CODIGO DO RETORNO INVALIDO PARA UM DEBITO: " + this.prmRetorno.detalhe.F07; result = false; return(result); } } } if (this.aPagamento.pagamento.cod_movimento == "1") { if (this.prmRetorno.detalhe.F07 == "99") { text = "P13"; this.descricaoRetorno(this.prmRetorno.detalhe.F07, ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = "C20"; //Antecipação Problema Cobrança } else if (current.id_status_ant == "C02") { current.id_status = "C02"; } else { current.id_status = "C12"; } current.desc_hist = this.descRetorno; } } if (this.prmRetorno.detalhe.F07 == "96" || this.prmRetorno.detalhe.F07 == "97" || this.prmRetorno.detalhe.F07 == "98") { text = "P14"; this.descricaoRetorno(this.prmRetorno.detalhe.F07, ref conexao); foreach (Comissionamento current in this.aPagamento.pagamento.comissionamento) { if (status_antecipacao.Contains(current.id_status_ant)) { current.id_status = "C20"; //Antecipação Problema Cobrança } else if (current.id_status_ant == "C02") { current.id_status = "C02"; } else { current.id_status = "C12"; } current.desc_hist = this.descRetorno; } } if (text == "") { this.erros.codErro = "11"; this.erros.descErro = "CODIGO DO RETORNO INVALIDO PARA UM CANCELAMENTO: " + this.prmRetorno.detalhe.F07 + " SOLDEBAUT " + this.prmRetorno.detalhe.F08; result = false; return(result); } } if (this.aPagamento.pagamento.cod_movimento != "0" && this.aPagamento.pagamento.cod_movimento != "1") { this.erros.codErro = "11"; this.erros.descErro = "CODIGO DO MOVIMENTO INVALIDO: " + this.aPagamento.pagamento.cod_movimento; result = false; return(result); } if (!this.iHistPagamento.gravaHistPagamento(ref conexao)) { this.erros = this.iHistPagamento.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } if (!this.aPagamento.statusPagamento(ref conexao, text, this.prmRetorno.detalhe.F07)) { this.erros = this.aPagamento.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } this.pagamento = this.aPagamento.pagamento; if (this.pagamento.cod_movimento == "0" && this.pagamento.seq_solicitacao_deb_aut != "0") { this.aSol_Deb_Aut.pagamento = this.pagamento; if (!this.aSol_Deb_Aut.atualiza_sol_deb_aut(ref conexao, this.prmRetorno.detalhe.F07, this.descRetorno)) { this.erros = this.aSol_Deb_Aut.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } } if (text != "P03" && text != "P05") { this.iHistComissao.pagamento = this.pagamento; this.aComissao.pagamento = this.pagamento; this.iHistComStatus.pagamento = this.pagamento; bool enviaEmail = false; //Tratamento Bradesco Cancelamentos for (int i = 0; i < this.pagamento.comissionamento.Count; i++) { //Adicionados C04, C11, C12, C13, C15 - Tratamento falha ao cancelar Bradesco if (text == "P07" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C00" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C01" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C02" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C21" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C04" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C11" & this.aComissao.pagamento.comissionamento[i].id_status_ant != "C12" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C13" && this.aComissao.pagamento.comissionamento[i].id_status_ant != "C15") { this.erros.codErro = "100"; this.erros.descErro = "PAGAMENTO EFETUADO--->STATUS COMISSAO INVALIDO PARA LIBERACAO DE RESGATE-->ID_COMISSAO:" + this.aComissao.pagamento.comissionamento[i].id_comissionamento; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } else { //C04, C11, C12, C13, C15 - Tratamento falha ao cancelar Bradesco if (text == "P07" && (this.aComissao.pagamento.comissionamento[i].id_status_ant == "C04" || this.aComissao.pagamento.comissionamento[i].id_status_ant == "C11" || this.aComissao.pagamento.comissionamento[i].id_status_ant == "C12" || this.aComissao.pagamento.comissionamento[i].id_status_ant == "C13" || this.aComissao.pagamento.comissionamento[i].id_status_ant == "C15")) { this.aComissao.pagamento.comissionamento[i].id_status = "C02"; //bloqueia comissão enviaEmail = true; } // busca dados da imobiliaria para calcular a taxa de comissão Imobiliaria imob = new Imobiliaria(); imob.id_imobiliaria = this.pagamento.codImobiliaria; this.cImobiliaria.imobiliaria = imob; if (!this.cImobiliaria.buscaImobiliaria(ref conexao)) { this.erros = this.cImobiliaria.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } if (!this.iHistComissao.gravaHistComissionamento(ref conexao, i)) { this.erros = this.iHistComissao.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } if (this.aComissao.pagamento.comissionamento[i].valor_percentual_banco <= 0) { //inicio do calculo da taxa de comissão double txComissao = 0; if (this.aComissao.pagamento.comissionamento[i].cpf_autonomo.Length <= 11) { txComissao = imob.percentual_banco; } else { txComissao = imob.taxa_de_servico_cnpj; } this.aComissao.pagamento.comissionamento[i].valor_percentual_banco = this.aComissao.pagamento.comissionamento[i].valor * (txComissao / 100.0); } if (!this.aComissao.updateComissao(ref conexao, i, this.aComissao.pagamento.comissionamento[i].id_status)) { this.erros = this.aComissao.erros; this.logErrosTxt.gravaLogProcesso(this.erros); result = false; return(result); } } /*this.vlr_ted = this.prmLibCom.Tarifa_ted; * if (this.prmLibCom.pagamento.Tp_pagamento == "1") * { * this.vlr_deb_boleto_comprador = this.prmLibCom.pagamento.Valor_tot_deb_aut / (double)this.prmLibCom.pagamento.Tot_corretores; * }*/ //if (this.aComissao.pagamento.comissionamento[i].id_status_ant != "C00") //{ // if (this.aComissao.pagamento.comissionamento[i].id_status_ant == "C02") // { // this.iHistComStatus.pagamento.data_alteracaoHist = this.iHistComStatus.pagamento.data_alteracaoHist.AddMilliseconds(1.0); // if (!this.iHistComStatus.gravaHistComissionamento(ref conexao, i)) // { // this.erros = this.iHistComissao.erros; // this.logErrosTxt.gravaLogProcesso(this.erros); // result = false; // return result; // } // } // else // { // if (!this.iHistComissao.gravaHistComissionamento(ref conexao, i)) // { // this.erros = this.iHistComissao.erros; // this.logErrosTxt.gravaLogProcesso(this.erros); // result = false; // return result; // } // if (!this.aComissao.updateComissao(ref conexao, i, this.aComissao.pagamento.comissionamento[i].id_status)) // { // this.erros = this.aComissao.erros; // this.logErrosTxt.gravaLogProcesso(this.erros); // result = false; // return result; // } // } //} } if (enviaEmail) { try { string textoEmail = ("Verificar necessidade de estorno (debito falhou ao cancelar e debitou), imob: " + this.pagamento.codImobiliaria + " pv: " + this.pagamento.id_venda_imobiliaria + " id_pag_imob: " + this.pagamento.id_pagamento_imobiliaria); this.EnviaEmail("Falha Debito Não Cancelado e Debitado", textoEmail); } catch (Exception ex) { Console.WriteLine("Erro ao enviar Email: " + ex.Message); } } } } catch (Exception ex) { this.erros.descErro = "EXCEPTION:" + ex.Message; this.erros.rc = 5; result = false; return(result); } result = true; return(result); }
public Corretores(Imobiliaria db) { this.db = db; }
public Donos(Imobiliaria db) { this.db = db; }
public CorretorController(ILogger <CorretorController> logger, Imobiliaria injectedContext, IHttpClientFactory httpClient) { _logger = logger; db = injectedContext; clientFactory = httpClient; }