summaryrefslogtreecommitdiff
path: root/Codemerx/Gestor.Infrastructure/Gestor.Infrastructure.Mappings.Seguros/ItemMap.cs
blob: 659373e8a473d0a02ada358eb77977113d3fee70 (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
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 ItemMap : ClassMap<ItemDb>
	{
		public ItemMap()
		{
			base.Table("item");
			base.LazyLoad();
			base.Id((ItemDb x) => (object)x.Id).GeneratedBy.Identity().Column("iditem");
			base.References<DocumentoDb>((ItemDb x) => x.Documento).Column("iddocumento").Not.Nullable().Fetch.Join();
			base.Map((ItemDb x) => (object)x.Endosso).Column("idendosso");
			base.Map((ItemDb x) => (object)x.Substituicao).Column("idsubstituicao");
			base.Map((ItemDb x) => (object)x.Substituido).Column("idsubstituido");
			base.Map((ItemDb x) => (object)x.Ordem).Column("ordem");
			base.Map((ItemDb x) => x.Descricao).Column("descricao");
			base.Map((ItemDb x) => x.Status).Column("status");
			base.Map((ItemDb x) => x.StatusInclusao).Column("statusinc");
			base.Map((ItemDb x) => x.Observacao).Column("obs").CustomType("StringClob").CustomSqlType("varchar(MAX)");
			base.Map((ItemDb x) => (object)x.IdDocumentoCancelado);
			base.Map((ItemDb x) => (object)x.Cancelado).Column("cancelado").CustomType<CustomBoolType>();
			base.Map((ItemDb x) => (object)x.Sinistrado).Column("sinistrado").CustomType<CustomBoolType>();
			base.HasMany<ControleSinistroDb>((ItemDb x) => x.Sinistros).Not.KeyUpdate();
			base.HasMany<CoberturaDb>((ItemDb x) => x.Coberturas).Not.KeyUpdate();
		}
	}
}