// // HaircutQueryInfo.cs // // Author: // Paul Schneider // // Copyright (c) 2015 - 2017 Paul Schneider // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public License // along with this program. If not, see . using System; using System.ComponentModel.DataAnnotations; using Yavsc.Abstract.Identity; using Yavsc.Models.Relationship; namespace Yavsc.Models.Haircut.Views { public class HaircutQueryProviderInfo : HaircutQueryComonInfo { public HaircutQueryProviderInfo(HairCutQuery query) : base (query) { ClientInfo = new UserInfo(query.Client.Id, query.Client.UserName, query.Client.Avatar); } public UserInfo ClientInfo { get; set; } } public class HaircutQueryClientInfo : HaircutQueryComonInfo { public HaircutQueryClientInfo(HairCutQuery query) : base (query) { var user = query.PerformerProfile.Performer; ProviderInfo = new UserInfo(user.Id, user.UserName, user.Avatar); } public UserInfo ProviderInfo { get; set; } } public class HaircutQueryComonInfo { public HaircutQueryComonInfo(HairCutQuery query) { Id = query.Id; Prestation = query.Prestation; Status = query.Status; Location = query.Location; EventDate = query.EventDate; AdditionalInfo = query.AdditionalInfo; } public long Id { get; set; } public HairPrestation Prestation { get; set; } public QueryStatus Status { get; set; } public virtual Location Location { get; set; } public DateTime? EventDate { get; set; } [Display(Name="Informations complémentaires")] public string AdditionalInfo { get; set; } } }