yavsc/Yavsc/Models/Workflow/PerformerProfile.cs

63 lines
2.2 KiB
C#

using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Yavsc.Models.Workflow
{
using System;
8 years ago
using Models.Relationship;
8 years ago
using YavscLib.Workflow;
8 years ago
public class PerformerProfile : IPerformerProfile {
[Key]
public string PerformerId { get; set; }
8 years ago
[ForeignKey("PerformerId")]
public virtual ApplicationUser Performer { get; set; }
[InverseProperty("User")]
[Display(Name="Activity")]
public virtual List<UserActivity> Activity { get; set; }
[Required,StringLength(14),Display(Name="SIREN"),
RegularExpression(@"^[0-9]{9,14}$", ErrorMessage = "Only numbers are allowed here")]
public string SIREN { get; set; }
public long OrganizationAddressId { get; set; }
[Required,Display(Name="Organization address"),ForeignKey("OrganizationAddressId")]
public virtual Location OrganizationAddress { get; set; }
[Display(Name="Accept notifications on client query")]
public bool AcceptNotifications { get; set; }
[Display(Name="Accept notifications from non-VIP users")]
public bool AcceptPublicContact { get; set; }
8 years ago
[Display(Name="Use my geo-localization, and give me clients near by me")]
public bool UseGeoLocalizationToReduceDistanceWithClients { get; set; }
[Display(Name="Web site")]
public string WebSite { get; set; }
[Display(Name="Active")]
public bool Active { get; set; }
[Obsolete("Implement and use a new specialization setting")]
8 years ago
[Display(Name="Maximal Daily Cost (euro/day)"),DisplayFormat(DataFormatString="{0:C}")]
public int? MaxDailyCost { get; set; }
[Obsolete("Implement and use a new specialization setting")]
8 years ago
[Display(Name="Minimal Daily Cost (euro/day)"),DisplayFormat(DataFormatString="{0:C}")]
public int? MinDailyCost { get; set; }
[Display(Name="Rate from clients")]
public int Rate { get; set; }
[NotMapped]
public bool DoesBlog { get {
8 years ago
return Performer?.Posts?.Count > 0 ;
} }
}
}