hitting the performer
This commit is contained in:
parent
fbc72f0c85
commit
341b49cbfa
27 changed files with 1603 additions and 35 deletions
|
|
@ -4,8 +4,10 @@ namespace Yavsc.Models.Haircut
|
|||
{
|
||||
public enum HairDressings {
|
||||
|
||||
[Display(Name="Coiffage")]
|
||||
Coiffage,
|
||||
|
||||
[Display(Name="Brushing")]
|
||||
Brushing,
|
||||
|
||||
[Display(Name="Mise en plis")]
|
||||
|
|
|
|||
|
|
@ -1,12 +1,17 @@
|
|||
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Yavsc.Models.Haircut
|
||||
{
|
||||
public enum HairLength : int
|
||||
{
|
||||
[Display(Name="Cheveux mi-longs")]
|
||||
HalfLong=0,
|
||||
|
||||
[Display(Name="Cheveux courts")]
|
||||
Short=1,
|
||||
|
||||
[Display(Name="Cheveux longs")]
|
||||
Long=2
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Reflection;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Yavsc.Models.Haircut
|
||||
|
|
@ -40,6 +41,41 @@ namespace Yavsc.Models.Haircut
|
|||
[Display(Name="Soins")]
|
||||
public bool Cares { get; set; }
|
||||
|
||||
public string GetDisplayTitle()
|
||||
{
|
||||
return $"{GetEnumDisplayName(Gender)} · {GetEnumDisplayName(Length)}";
|
||||
}
|
||||
|
||||
public string GetDisplayDetails()
|
||||
{
|
||||
return string.Join(" · ", new[]
|
||||
{
|
||||
FormatFlag(nameof(Cut), Cut),
|
||||
GetEnumDisplayName(Dressing),
|
||||
GetEnumDisplayName(Tech),
|
||||
FormatFlag(nameof(Shampoo), Shampoo),
|
||||
FormatFlag(nameof(Cares), Cares),
|
||||
});
|
||||
}
|
||||
|
||||
private static string FormatFlag(string propertyName, bool enabled)
|
||||
{
|
||||
var label = GetPropertyDisplayName(propertyName);
|
||||
return enabled ? label : $"Sans {label.ToLowerInvariant()}";
|
||||
}
|
||||
|
||||
private static string GetPropertyDisplayName(string propertyName)
|
||||
{
|
||||
var property = typeof(HairPrestation).GetProperty(propertyName, BindingFlags.Public | BindingFlags.Instance);
|
||||
return property?.GetCustomAttribute<DisplayAttribute>()?.GetName() ?? propertyName;
|
||||
}
|
||||
|
||||
private static string GetEnumDisplayName<TEnum>(TEnum value) where TEnum : struct, Enum
|
||||
{
|
||||
var member = typeof(TEnum).GetMember(value.ToString()).FirstOrDefault();
|
||||
return member?.GetCustomAttribute<DisplayAttribute>()?.GetName() ?? value.ToString();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
public class HairTaintInstance {
|
||||
|
|
|
|||
|
|
@ -11,12 +11,14 @@ namespace Yavsc.Models.Haircut
|
|||
[Display(Name="Couleur")]
|
||||
Color,
|
||||
|
||||
[Display(Name="Permantante")]
|
||||
[Display(Name="Permanente")]
|
||||
Permanent,
|
||||
[Display(Name="Défrisage")]
|
||||
Defris,
|
||||
[Display(Name="Mêches")]
|
||||
Mech,
|
||||
|
||||
[Display(Name="Balayage")]
|
||||
Balayage
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue