summaryrefslogtreecommitdiff
path: root/Gestor.Infrastructure/Gestor.Infrastructure.Mappings.Seguros/AutoMap.cs
blob: 0f11065aa9ecf335bcb6dc4afa837042d658c4a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using FluentNHibernate.Mapping;
using Gestor.Infrastructure.Entities.Generic;
using Gestor.Infrastructure.Entities.Seguros;
using System;
using System.Linq.Expressions;
using System.Runtime.CompilerServices;

namespace Gestor.Infrastructure.Mappings.Seguros
{
	public class AutoMap : ClassMap<AutoDb>
	{
		public AutoMap()
		{
			base.Table("auto");
			base.LazyLoad();
			base.Id((AutoDb x) => (object)x.Id).GeneratedBy.Identity().Column("idauto");
			base.References<ItemDb>((AutoDb x) => x.Item).Column("iditem").Not.Nullable().Fetch.Join();
			base.References<FabricanteDb>((AutoDb x) => x.Fabricante).Column("idfabricante").NotFound.Ignore().Cascade.None();
			base.Map((AutoDb x) => (object)x.Combustivel).CustomType<Combustivel>().Column("idcombustivel");
			base.Map((AutoDb x) => x.Fipe).Column("codfipe");
			base.Map((AutoDb x) => x.Modelo).Column("modelo");
			base.Map((AutoDb x) => (object)x.Categoria).CustomType<CustomEnumType<Categoria>>().Column("idcategoria");
			base.Map((AutoDb x) => (object)x.UsoVeiculo).CustomType<UsoVeiculo>();
			base.Map((AutoDb x) => x.Chassi).Column("chassi");
			base.Map((AutoDb x) => x.Placa).Column("placa").Not.Nullable();
			base.Map((AutoDb x) => x.AnoFabricacao).Column("anofab");
			base.Map((AutoDb x) => x.AnoModelo).Column("anomod");
			base.Map((AutoDb x) => x.Renavam).Column("renavam");
			base.Map((AutoDb x) => x.Capacidade).Column("capacidade");
			base.Map((AutoDb x) => x.Portas).Column("portas");
			base.Map((AutoDb x) => (object)x.Cor).CustomType<Cor>().Column("idcor");
			base.Map((AutoDb x) => x.Observacao).Column("obs").CustomType("StringClob").CustomSqlType("varchar(MAX)");
			base.Map((AutoDb x) => x.RegiaoCirculacao).Column("regiaocirculacao");
			base.Map((AutoDb x) => (object)x.TipoCobertura).CustomType<CustomEnumType<TipoCobertura>>().Column("idtipocobertura");
			base.Map((AutoDb x) => (object)x.TabelaReferencia).CustomType<CustomEnumType<TabelaReferencia>>().Column("idtabelareferencia");
			base.Map((AutoDb x) => (object)x.Bonus).Column("bonus");
			base.Map((AutoDb x) => (object)x.PorcentagemReferencia).Column("porcentagemreferencia");
			base.Map((AutoDb x) => (object)x.ValorDeterminado).Column("valordeterminado");
			base.Map((AutoDb x) => x.Ci).Column("ci");
			base.Map((AutoDb x) => x.CepPernoite).Column("ceppernoite");
			base.Map((AutoDb x) => (object)x.Financiado).Column("financiado").CustomType<CustomBoolType>();
			base.Map((AutoDb x) => (object)x.ZeroKm).Column("zerokm").CustomType<CustomBoolType>();
			base.Map((AutoDb x) => (object)x.Isencao).CustomType<CustomEnumType<Isencao>>().Column("isencao");
			base.Map((AutoDb x) => (object)x.Pcd).Column("pcd").CustomType<CustomBoolType>();
			base.Map((AutoDb x) => (object)x.Correcao).CustomType<CustomEnumType<Correcao>>().Column("correcao");
			base.Map((AutoDb x) => (object)x.Rastreador).CustomType<CustomEnumType<Rastreador>>().Default("0");
			base.Map((AutoDb x) => (object)x.Blindagem).CustomType<CustomBoolType>().Column("blindagem");
			base.Map((AutoDb x) => (object)x.KitGas).Column("kitgas");
		}
	}
}