yavsc/web/ApiControllers/BasketController.cs
Paul Schneider 2a1301d93c Un bouton "Demander un devis"
* INominative.cs: Interface d'un objet destiné à un préstataire
  spécifié,
par une propriété `PerformerName`

* NominativeSimpleBookingQuery.cs: implémente l'interface INominative

* packages.config:
* packages.config:
* packages.config:
* ITContentProvider.csproj:
* NpgsqlBlogProvider.csproj:
* NpgsqlContentProvider.csproj: mise à niveau Npgsql

* NpgsqlContentProvider.cs: stocke la classe de commande

* AccountController.cs: implémente la methode de login de l'API

* BasketController.cs: implémente la methode de recupération du panier

* AccountController.cs: enléve un commaentaire obsolète

* YavscHelpers.cs:
* FrontOfficeController.cs: refabrication de l'ajout au panier

* yavsc.user.js: enlève un message de debuggage js

* Performer.ascx: formattage

* Performers.aspx: implémente le bouton de demande de reservation

* Yavsc.csproj: validate unobtrusive

* packages.config: référence M$ Owin

* UserFileSystemManager.cs: Fixe: Ne pas créer un dossier de
  destination si on a aucun fichier à recevoir.

* Commande.cs: * Ajoute le nom du client dans l'objet commande
* Factorise le positionnement des paramêtres
* La commande est une instance du type spécifié à la commande, dans
  son paramêtre `type`

* SimpleBookingQuery.cs: refabrication

* LocalizedText.resx:
* LocalizedText.fr.resx: traducations

* UserNameBase.cs: implemente l'interface `IUserName`

* IContentProvider.cs: doc xml

* YavscModel.csproj: reference le nouveau code source

* Web.config: retour à une version d'équère

* IUserName.cs: Définit l'interface d'un objet associé à un
  utilisateur.
2015-12-23 13:14:50 +01:00

79 lines
No EOL
1.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.Http;
using Yavsc.Model.WorkFlow;
using System.Collections.Specialized;
using Yavsc.Model.FrontOffice;
using Yavsc.Helpers;
namespace Yavsc.ApiControllers
{
/// <summary>
/// Basket controller.
/// Maintains a collection of articles
/// qualified with name value pairs
/// </summary>
[Authorize]
public class BasketController : ApiController
{
/// <summary>
/// Gets the current basket, creates a new one, if it doesn't exist.
/// </summary>
/// <value>The current basket.</value>
protected CommandSet CurrentBasket {
get {
CommandSet b = WorkFlowManager.GetCommands (
Membership.GetUser ().UserName);
if (b == null) b = new CommandSet ();
return b;
}
}
/// <summary>
/// Get the basket.
/// </summary>
public CommandSet Get() {
return CurrentBasket;
}
/// <summary>
/// Create the specified basket item using specified command parameters.
/// </summary>
public long Create()
{
return YavscHelpers.CreateCommandFromRequest ();
}
/// <summary>
/// Read the specified basket item.
/// </summary>
/// <param name="itemid">Itemid.</param>
Command Read(long itemid){
return CurrentBasket[itemid];
}
/// <summary>
/// Update the specified item parameter using the specified value.
/// </summary>
/// <param name="itemid">Item identifier.</param>
/// <param name="param">Parameter name.</param>
/// <param name="value">Value.</param>
public void UpdateParam(long itemid, string param, string value)
{
CurrentBasket [itemid].Parameters [param] = value;
}
/// <summary>
/// Delete the specified item.
/// </summary>
/// <param name="itemid">Item identifier.</param>
public void Delete(long itemid)
{
CurrentBasket.Remove (itemid);
}
}
}