public void SalvarUmNovoAnuncioTest() { var identidadeDoAnuncio = Guid.NewGuid(); var idAnunciante = Guid.Parse("B2490150-D8A8-4F5F-89AB-A4EB28622BA4"); var periodo = Periodo.Novo(DateTime.Now, DateTime.Now.AddDays(10)); var identidadeDoVeiculo = Guid.NewGuid(); var detalheDeFabricacao = DetalheDeFabricacao.Novo("Honda", "Civic", 2010, 2010); var opcionais = ItensOpcicionais.Novo("trava, vidro,alarme, airbag,kit multimidia,ABS"); var detalheDoVeiculo = DetalheDoVeiculo.Novo ( "ABC1234", 50000, TipoDoCambio.Automatico, TipoDaCarroceria.Sedan, Cor.Branco, TipoDeCombustivel.Flex, 4, 30.500m); var veiculo = new Veiculo(identidadeDoAnuncio, detalheDeFabricacao, opcionais, detalheDoVeiculo); var novoAnuncio = new Anuncio(identidadeDoAnuncio, idAnunciante, periodo, veiculo); var iqual = novoAnuncio == veiculo; _repositorio.Salvar(novoAnuncio); }
private static void InserirAnuncio() { //AnuncioRepositorioSQL repo = new AnuncioRepositorioSQL(); AnuncioRepositorioRavenDB repo = new AnuncioRepositorioRavenDB(); var veiculoId = new Identidade(); var detalheDeFabricacao = DetalheDeFabricacao.Novo("Ford", "Focus Titanium 2.0", 2015, 2016); var opcionais = ItensOpcicionais.Novo("Ar Condicionado, Vidros Elétricos, Travas Elétricas, Teto Solar, Farois de Neblina, Farois de Milha"); var detalheDoVeiculo = DetalheDoVeiculo.Novo("ABC-1234", 10000, TipoDoCambio.Automatico, TipoDaCarroceria.Hatch, Cor.Branco, TipoDeCombustivel.Flex, 4, 65000); var veiculo = new Veiculo(veiculoId, detalheDeFabricacao, opcionais, detalheDoVeiculo); var vigencia = Periodo.Novo(DateTime.Now, DateTime.Now.AddDays(10)); var anuncioId = new Identidade(); var anuncianteId = new Identidade("86e080bc-e2a4-4328-948a-04db8ee95d2e"); var anuncio = new Anuncio(anuncioId, anuncianteId, vigencia, veiculo); repo.Salvar(anuncio); var anuncianteResult = repo.ObterPorId(anuncioId); Console.WriteLine(anuncianteResult.Veiculo.Detalhe.Cor); Console.WriteLine(anuncianteResult.Veiculo.Detalhe.Combustivel); Console.WriteLine(anuncianteResult.Veiculo.Detalhe.Cambio); Console.WriteLine(anuncianteResult.Veiculo.Opcionais.Itens); }
public void InserirAnuncioTest() { var veiculoId = new Identidade(); var detalheDeFabricacao = DetalheDeFabricacao.Novo("Ford", "Focus Titanium 2.0", 2015, 2016); var opcionais = ItensOpcicionais.Novo("Ar Condicionado, Vidros Elétricos, Travas Elétricas, Teto Solar, Farois de Neblina, Farois de Milha"); var detalheDoVeiculo = DetalheDoVeiculo.Novo("ABC-1234", 10000, TipoDoCambio.Automatico, TipoDaCarroceria.Hatch, Cor.Branco, TipoDeCombustivel.Flex, 4, 65000); var veiculo = new Veiculo(veiculoId, detalheDeFabricacao, opcionais, detalheDoVeiculo); var vigencia = Periodo.Novo(DateTime.Now, DateTime.Now.AddDays(10)); var anuncioId = new Identidade(); var anuncianteId = new Identidade("B2490150-D8A8-4F5F-89AB-A4EB28622BA4"); var anuncio = new Anuncio(anuncioId, anuncianteId, vigencia, veiculo); _repositorio.Salvar(anuncio); var anuncianteResult = _repositorio.ObterPorId(anuncioId); Console.WriteLine(anuncianteResult.Veiculo.Detalhe.Cor); Console.WriteLine(anuncianteResult.Veiculo.Detalhe.Combustivel); Console.WriteLine(anuncianteResult.Veiculo.Detalhe.Cambio); Console.WriteLine(anuncianteResult.Veiculo.Opcionais.Itens); }
public Anuncio ObterPorId(Identidade id) { using (SqlConnection cn = new SqlConnection(StringDeConexao)) { var select = @" SELECT [AnuncioId] ,[AnuncianteId] ,[DataDePublicacao] ,[PeriodoInicio] ,[PeriodoFinal] FROM [SeuCarroNaVitrine].[dbo].[Anuncio] WHERE AnuncioId = @id SELECT [VeiculoId] ,[Marca] ,[Modelo] ,[AnoFabricacao] ,[AnoModelo] ,[Placa] ,[Kilometragem] ,[Portas] ,[Cambio] ,[Carroceria] ,[Cor] ,[Combustivel] ,[Preco] ,[StatusDePublicacao] ,[Opcionais] FROM [SeuCarroNaVitrine].[dbo].[Veiculo] WHERE VeiculoId = @id "; using (var result = cn.QueryMultiple(select, new { id = id.ToString() })) { var anuncioDyn = result.ReadSingleOrDefault(); var veiculoDyn = result.ReadSingleOrDefault(); var anuncioId = new Identidade(Guid.Parse(anuncioDyn.AnuncioId.ToString())); var anuncianteId = new Identidade(Guid.Parse(anuncioDyn.AnuncianteId.ToString())); var veiculoId = new Identidade(Guid.Parse(veiculoDyn.VeiculoId.ToString())); var vigencia = Periodo.Novo(anuncioDyn.PeriodoInicio, anuncioDyn.PeriodoFinal); var detalheDoVeiculo = DetalheDoVeiculo.Novo(veiculoDyn.Placa.ToString(), (int)veiculoDyn.Kilometragem, Enumeration.FromDisplayName <TipoDoCambio>(veiculoDyn.Cambio.ToString()), Enumeration.FromDisplayName <TipoDaCarroceria>(veiculoDyn.Carroceria.ToString()), Enumeration.FromDisplayName <Cor>(veiculoDyn.Cor.ToString()), Enumeration.FromDisplayName <TipoDeCombustivel>(veiculoDyn.Combustivel.ToString()), (int)veiculoDyn.Portas, (decimal)veiculoDyn.Preco); var detalheDeFabricacao = DetalheDeFabricacao.Novo(veiculoDyn.Marca, veiculoDyn.Modelo, veiculoDyn.AnoFabricacao, veiculoDyn.AnoModelo); var opcionais = ItensOpcicionais.Novo(veiculoDyn.Opcionais); var veiculo = new Veiculo(veiculoId, detalheDeFabricacao, opcionais, detalheDoVeiculo); var anuncio = new Anuncio(anuncioId, anuncianteId, vigencia, veiculo); return(anuncio); } } }