using System; using Yavsc; using System.Collections.Specialized; using Yavsc.Model.WorkFlow; using Yavsc.Model.FileSystem; using System.Web; namespace Yavsc.Model.FrontOffice { /// /// Commande. /// public class Commande { /// /// Gets or sets the creation date. /// /// The creation date. public DateTime CreationDate { get; set; } /// /// Gets or sets the identifier. /// /// The identifier. public long Id { get; set; } /// /// Gets or sets the product reference. /// /// The prod reference. public CommandStatus Status { get; set; } public string ProductRef { get; set; } /// /// The parameters. /// public StringDictionary Parameters = new StringDictionary(); FileInfoCollection Files { get { return GetFSM().GetFiles (Id.ToString()); } } /// /// Create a command using the specified collection /// as command parameters, handles the request files. /// /// Collection. /// Files. public Commande (NameValueCollection collection, NameObjectCollectionBase files) { // string catref=collection["catref"]; // Catalog Url from which formdata has been built ProductRef=collection["ref"]; // Required product reference CreationDate = DateTime.Now; Status = CommandStatus.Inserted; // stores the parameters: foreach (string key in collection.AllKeys) { if (key!="ref") Parameters.Add (key, collection [key]); } WorkFlowManager wfm = new WorkFlowManager (); wfm.RegisterCommand (this); // sets this.Id string strcmdid = Id.ToString (); GetFSM().Put (strcmdid, files); } private FileSystemManager GetFSM() { return new FileSystemManager ("~/commands"); } } }