summaryrefslogtreecommitdiff
path: root/Gestor.Infrastructure/Gestor.Infrastructure.Mappings.Seguros/DocumentoMap.cs
blob: bbb4721a01a28f1aff687c270bad2aebf54ffe7e (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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
using FluentNHibernate.Mapping;
using Gestor.Infrastructure.Entities.Common;
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 DocumentoMap : ClassMap<DocumentoDb>
	{
		public DocumentoMap()
		{
			base.Table("documento");
			base.LazyLoad();
			base.Id((DocumentoDb x) => (object)x.Id).GeneratedBy.Identity().Column("iddocumento");
			base.References<ControleDb>((DocumentoDb x) => x.Controle).Column("idcontrole").Not.Nullable().Fetch.Join();
			base.References<UsuarioDb>((DocumentoDb x) => x.UsuarioCriacao).Column("usuariocriacao");
			base.References<StatusDb>((DocumentoDb x) => x.Status).Column("idstatus").Fetch.Join();
			base.Map((DocumentoDb x) => (object)x.DataCriacao).Column("cri_data");
			base.Map((DocumentoDb x) => (object)x.Ordem).Column("ordem").Not.Nullable();
			base.Map((DocumentoDb x) => (object)x.Tipo).Column("tipo").Not.Nullable();
			base.Map((DocumentoDb x) => x.Proposta).Column("proposta");
			base.Map((DocumentoDb x) => x.PropostaEndosso).Column("pedadit");
			base.Map((DocumentoDb x) => x.ApoliceAnterior).Column("apol_antes");
			base.Map((DocumentoDb x) => x.Apolice).Column("contrato");
			base.Map((DocumentoDb x) => x.Endosso).Column("aditamento");
			base.Map((DocumentoDb x) => (object)x.DataControle).Column("datacontrole");
			base.Map((DocumentoDb x) => (object)x.Excluido).Column("excluido").Not.Nullable().CustomType<CustomBoolType>();
			base.Map((DocumentoDb x) => (object)x.PropostaAssinada).Column("propassinada").CustomType<CustomBoolType>();
			base.Map((DocumentoDb x) => (object)x.ApoliceConferida).Column("apoconferida").CustomType<CustomBoolType>();
			base.Map((DocumentoDb x) => (object)x.AdicionalComiss).Column("adinacomis").CustomType<CustomBoolType>();
			base.Map((DocumentoDb x) => (object)x.Comissao).Column("com01");
			base.Map((DocumentoDb x) => (object)x.PremioLiquido).Column("pr_liq");
			base.Map((DocumentoDb x) => (object)x.PremioAdicional).Column("pr_adic");
			base.Map((DocumentoDb x) => (object)x.PremioTotal).Column("pr_total");
			base.Map((DocumentoDb x) => (object)x.NumeroParcelas).Column("n_parc");
			base.Map((DocumentoDb x) => (object)x.Custo).Column("pr_custo");
			base.Map((DocumentoDb x) => (object)x.Iof).Column("pr_iof");
			base.Map((DocumentoDb x) => (object)x.Diferenca).Column("diferenca");
			base.Map((DocumentoDb x) => (object)x.Negocio).CustomType<Negocio>().Column("idnegocio");
			base.Map((DocumentoDb x) => x.Observacao).Column("obs").CustomType("StringClob").CustomSqlType("varchar(MAX)");
			base.Map((DocumentoDb x) => x.Pasta).Column("pasta");
			base.Map((DocumentoDb x) => x.Agencia).Column("agencia");
			base.Map((DocumentoDb x) => x.Conta).Column("conta");
			base.Map((DocumentoDb x) => (object)x.TipoEndosso).CustomType<CustomEnumType<TipoEndosso>>().Column("tipoadit");
			base.Map((DocumentoDb x) => (object)x.TipoRecebimento).CustomType<TipoRecebimento>().Column("tiporecebimento");
			base.Map((DocumentoDb x) => (object)x.Situacao).CustomType<TipoSeguro>().Column("situacao").Not.Nullable();
			base.Map((DocumentoDb x) => (object)x.SituacaoAnterior).CustomType<CustomEnumType<TipoSeguro>>().Column("situant");
			base.Map((DocumentoDb x) => x.NumeroCartao).Column("numerocart");
			base.Map((DocumentoDb x) => x.VencimentoCartao).Column("vencimentocart");
			base.Map((DocumentoDb x) => x.NomeProponente).Column("nomeprop");
			base.Map((DocumentoDb x) => (object)x.Vigencia1).Column("vigencia1").Not.Nullable();
			base.Map((DocumentoDb x) => (object)x.Vigencia2).Column("vigencia2");
			base.Map((DocumentoDb x) => (object)x.Emissao).Column("emissao");
			base.Map((DocumentoDb x) => (object)x.Remessa).Column("remessa");
			base.Map((DocumentoDb x) => (object)x.ComissaoTotal).Column("comissaototal");
			base.Map((DocumentoDb x) => (object)x.NegocioCorretora).CustomType<NegocioCorretora?>().Column("NegocioCorretora");
			base.Map((DocumentoDb x) => (object)x.Bandeira).CustomType<BandeiraCartao>().Column("idbandeira");
			base.References<BancoDb>((DocumentoDb x) => x.Banco).Column("idbanco").Cascade.None();
			base.References<EstipulanteDb>((DocumentoDb x) => x.Estipulante1).Column("idestipulante").Fetch.Join();
			base.References<EstipulanteDb>((DocumentoDb x) => x.Estipulante2).Column("idestipulante2").Fetch.Join();
			base.References<EstipulanteDb>((DocumentoDb x) => x.Estipulante3).Column("idestipulante3").Fetch.Join();
			base.References<EstipulanteDb>((DocumentoDb x) => x.Estipulante4).Column("idestipulante4").Fetch.Join();
			base.References<EstipulanteDb>((DocumentoDb x) => x.Estipulante5).Column("idestipulante5").Fetch.Join();
			base.Map((DocumentoDb x) => (object)x.FormaPagamento).CustomType<CustomEnumType<FormaPagamento>>().Column("formapagamento");
		}
	}
}