#region --------------- Copyright Dresser Wayne Pignone -------------
/*
* $Log: /Wrk/Support/ForecourtControl/Wrk/ForecourtControl/Com/IAuthorizeParameters.cs $
*
* 2 07-02-26 14:06 roger.månsson
* Mark the Preset value as MarshalAs Currency
*
* 1 07-01-05 9:00 roger.månsson
* Created
*/
#endregion
using System;
using System.Runtime.InteropServices;
namespace Wayne.ForecourtControl
{
///
/// The AuthorizeParameters is a data structure that contains the
/// parameters that is used when authorizing a fuelling.
///
[ComVisible(true)]
public interface IAuthorizeParameters
{
///
/// Specifies if the PresetValue should be regarded as a volume or an amount.
///
///
PresetType PresetType { get; set; }
///
/// Maximum fuelling amount in domestic currency or volume.
/// May be overridden by the configured maximum volume or
/// amount in the pump controller. The lowest value will be used.
///
decimal PresetValue
{
[return: MarshalAs(UnmanagedType.Currency)]
get;
[param: MarshalAs(UnmanagedType.Currency)]
set;
}
///
/// Specifies the price group for the fuelling that should be used for the price calculation.
///
int PriceGroup { get; set; }
///
/// Fuel grades allowed to use for the fuelling are set to true.
///
IAllowedFuelGrades AllowedFuelGrade { get; }
///
/// Fuel grades maximum volumes authorized.
///
IFuelGradeMaxVolumes FuelGradeMaxVolume { get; }
///
/// The fuelling can only be reserved and set as paid by the releasing client if this
/// property is set to true.
///
bool LockToReleaseClient { get; set; }
///
/// Prepay flag is true for bank note sale
///
bool Prepay { get; set; }
///
/// Specifies if operator consent is given
///
bool ConsentGiven { get; set; }
///
/// Specifies if treat zero sale as a valid transaction
///
bool ProcessZeroSale { get; set; }
///
/// True, customer has chance to Retried for auth/preset
///
bool ApplyAuthPresetRetries { get; set; }
///
/// Specifies receipt number where filling was paid (only for prepay)
///
int PrepayReceiptNo { get; set; }
///
/// Optional authorization id to use when authorizing the pump.
/// Dependent on forecourt implementation this may or may not be used
/// as authorization id for the authorization. No assumptions should be made that this
/// id is used.
///
int? AuthorizationId { get; set; }
}
}