refactoring the haircut messaging
This commit is contained in:
parent
ea5e1a37dd
commit
8ec60de3f3
12 changed files with 199 additions and 80 deletions
|
|
@ -6,6 +6,10 @@ using System.ComponentModel.DataAnnotations.Schema;
|
|||
using Yavsc.Models.Billing;
|
||||
using Yavsc.Models.Relationship;
|
||||
using Yavsc.Billing;
|
||||
using System.Globalization;
|
||||
using Yavsc.Helpers;
|
||||
using Yavsc.Models.Messaging;
|
||||
using System.Linq;
|
||||
|
||||
namespace Yavsc.Models.Haircut
|
||||
{
|
||||
|
|
@ -337,5 +341,33 @@ Prestation.Gender == HairCutGenders.Women ?
|
|||
|
||||
public virtual BrusherProfile SelectedProfile { get; set; }
|
||||
|
||||
public HairCutQueryEvent CreateEvent(string subTopic, string reason, string sender, string message) {
|
||||
|
||||
string evdate = EventDate?.ToString("dddd dd/MM/yyyy à HH:mm")??"[pas de date spécifiée]";
|
||||
string address = Location?.Address??"[pas de lieu spécifié]";
|
||||
var p = Prestation;
|
||||
string total = GetBillItems().Addition().ToString("C",CultureInfo.CurrentUICulture);
|
||||
string strprestation = GetDescription();
|
||||
string bill = string.Join("\n", GetBillItems().Select(
|
||||
l=> $"{l.Name} {l.Description} {l.UnitaryCost} € " +
|
||||
((l.Count != 1) ? "*"+l.Count.ToString() : "")));
|
||||
var yaev = new HairCutQueryEvent(subTopic)
|
||||
{
|
||||
Client = new ClientProviderInfo {
|
||||
UserName = Client.UserName ,
|
||||
UserId =ClientId,
|
||||
Avatar = Client.Avatar } ,
|
||||
Previsional = Previsional,
|
||||
EventDate = EventDate,
|
||||
Location = Location,
|
||||
Id = Id,
|
||||
ActivityCode = ActivityCode,
|
||||
Reason = reason,
|
||||
Sender = sender,
|
||||
Message = message
|
||||
};
|
||||
return yaev;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ namespace Yavsc.Models.Haircut
|
|||
{
|
||||
public class HairCutQueryEvent : RdvQueryProviderInfo, IEvent
|
||||
{
|
||||
public HairCutQueryEvent()
|
||||
public HairCutQueryEvent(string subTopic)
|
||||
{
|
||||
Topic = "HairCutQuery";
|
||||
}
|
||||
|
||||
Topic = GetType().Name+"/"+subTopic;
|
||||
}
|
||||
public string Message
|
||||
{
|
||||
get;
|
||||
|
|
@ -27,9 +27,9 @@ namespace Yavsc.Models.Haircut
|
|||
{
|
||||
get;
|
||||
|
||||
set;
|
||||
private set;
|
||||
}
|
||||
|
||||
|
||||
HairCutQuery Data { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,15 +19,13 @@
|
|||
// You should have received a copy of the GNU Lesser General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Yavsc.Models.Messaging
|
||||
{
|
||||
using Interfaces.Workflow;
|
||||
using Yavsc;
|
||||
|
||||
/// <summary>
|
||||
/// Base event.
|
||||
/// /// Base event.
|
||||
/// </summary>
|
||||
|
||||
public class BaseEvent : IEvent {
|
||||
|
|
@ -37,29 +35,12 @@ namespace Yavsc.Models.Messaging
|
|||
}
|
||||
public BaseEvent(string topic)
|
||||
{
|
||||
Topic = topic;
|
||||
Topic = GetType().Name+"/"+topic;
|
||||
}
|
||||
public string Topic { get; set; }
|
||||
public string Topic { get; private set; }
|
||||
public string Sender { get; set; }
|
||||
|
||||
public string Message { get; set; }
|
||||
}
|
||||
|
||||
public class GeneralEvent: BaseEvent, ITitle
|
||||
{
|
||||
/// <summary>
|
||||
/// The title.
|
||||
/// </summary>
|
||||
[Required(ErrorMessageResourceName="ChooseATitle")]
|
||||
[Display(Name="Title")]
|
||||
public string Title { get; set; }
|
||||
/// <summary>
|
||||
/// The description.
|
||||
/// </summary>
|
||||
[Required(ErrorMessageResourceName="ChooseADescription")]
|
||||
[Display(Name="Description")]
|
||||
public string Description { get; set; }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
43
Yavsc/Models/Messaging/GeneralEvent.cs
Normal file
43
Yavsc/Models/Messaging/GeneralEvent.cs
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
//
|
||||
// BaseEvent.cs
|
||||
//
|
||||
// Author:
|
||||
// Paul Schneider <paul@pschneider.fr>
|
||||
//
|
||||
// Copyright (c) 2015 GNU GPL
|
||||
//
|
||||
// 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 <http://www.gnu.org/licenses/>.
|
||||
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Yavsc.Models.Messaging
|
||||
{
|
||||
public class GeneralEvent: BaseEvent, ITitle
|
||||
{
|
||||
/// <summary>
|
||||
/// The title.
|
||||
/// </summary>
|
||||
[Required(ErrorMessageResourceName="ChooseATitle")]
|
||||
[Display(Name="Title")]
|
||||
public string Title { get; set; }
|
||||
/// <summary>
|
||||
/// The description.
|
||||
/// </summary>
|
||||
[Required(ErrorMessageResourceName="ChooseADescription")]
|
||||
[Display(Name="Description")]
|
||||
public string Description { get; set; }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -27,9 +27,10 @@ using Interfaces.Workflow;
|
|||
|
||||
public class RdvQueryEvent: RdvQueryProviderInfo, IEvent
|
||||
{
|
||||
public RdvQueryEvent()
|
||||
|
||||
public RdvQueryEvent(string subTopic)
|
||||
{
|
||||
Topic = "RdvQuery";
|
||||
Topic = GetType().Name+"/"+subTopic;
|
||||
}
|
||||
|
||||
public string Message
|
||||
|
|
@ -44,7 +45,7 @@ public class RdvQueryEvent: RdvQueryProviderInfo, IEvent
|
|||
|
||||
public string Topic
|
||||
{
|
||||
get; set;
|
||||
get; private set;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue