yavsc/Yavsc/Models/Workflow/PerformerProfile.cs

65 lines
2.2 KiB
C#

using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
7 years ago
namespace Yavsc.Models.Workflow
{
using System;
8 years ago
using Models.Relationship;
7 years ago
using Newtonsoft.Json;
using Yavsc.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")]
7 years ago
[Display(Name="Activity"), JsonIgnore]
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; }
7 years ago
[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 ;
} }
7 years ago
}
7 years ago
}