using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using u=Util;
using s=System;
using ser=System.Runtime.Serialization;
using gt=GlobalType;
namespace DTO
{
#region CodeWindow 019
[ser.DataContract]
public class ConcurrencyFault
{
[ser.DataMember] public string Description{get; private set;}
public ConcurrencyFault(string strDescription)
{
Description = strDescription;
}
}
#endregion
[ser.DataContract]
public class Ownership
{
public int NWAccntID {get; private set;}
public int ParticipantID {get; private set;}
public int Share {get; private set;}
public Ownership(
int iNWAccntID ,
int iParticipantID ,
int iShare )
{
NWAccntID = iNWAccntID ;
ParticipantID = iParticipantID;
Share = iShare ;
}
}
[ser.DataContract]
public class Participant : gt.IParticipant
{
[ser.DataMember] public int ID {get; private set;}
[ser.DataMember] public string Name {get; private set;}
public Participant(
int argID ,
string argName )
{
ID = argID ;
Name = argName ;
}
public override string ToString()
{
return Name;
}
}
[ser.DataContract]
public class NWAccntDlt
{
[ser.DataMember] public int NWAccntID {get; private set;}
[ser.DataMember] public bool Budgeted {get; private set;}
[ser.DataMember] public int Amount {get; private set;}
public NWAccntDlt(
int argNWAccntID ,
bool argBudgeted ,
int argAmount )
{
NWAccntID = argNWAccntID ;
Budgeted = argBudgeted ;
Amount = argAmount ;
}
}
[ser.DataContract]
public class Item
{
[ser.DataMember] public int ID {get; private set;}
[ser.DataMember] public string Descrip {get; private set;}
[ser.DataMember] public int DltAllocAccntID {get; private set;}
[ser.DataMember] public bool DltAllocAccntIsBudgeted {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantAmounts {get; private set;}
public Item(
int argID ,
string argDescrip ,
int argDltAllocAccntID ,
bool argDltAllocAccntIsBudgeted ,
u.ROArray<int> argParticipantAmounts )
{
ID = argID ;
Descrip = argDescrip ;
DltAllocAccntID = argDltAllocAccntID ;
DltAllocAccntIsBudgeted = argDltAllocAccntIsBudgeted ;
ParticipantAmounts = argParticipantAmounts ;
}
}
#region CodeWindow 043
[ser.DataContract]
[ser.KnownType(typeof(OptionalDateRangeTransPred))]
[ser.KnownType(typeof(BeforeTransPred ))]
[ser.KnownType(typeof(OnOrAfterTransPred ))]
[ser.KnownType(typeof(DateRangeTransPred ))]
[ser.KnownType(typeof(IDTransPred ))]
[ser.KnownType(typeof(IDRangeTransPred ))]
[ser.KnownType(typeof(PostIDTransPred ))]
[ser.KnownType(typeof(PostIDRangeTransPred ))]
[ser.KnownType(typeof(MaxPostIDTransPred ))]
[ser.KnownType(typeof(MinPostIDTransPred ))]
[ser.KnownType(typeof(PostedTransPred ))]
[ser.KnownType(typeof(UnPostedTransPred ))]
public abstract class TransPred
{
}
#region TransPred derived classes
[ser.DataContract]
public class OptionalDateRangeTransPred : TransPred
{
[ser.DataMember]public s.DateTime? OnOrAfter{get; private set;}
[ser.DataMember]public s.DateTime? Before {get; private set;}
public OptionalDateRangeTransPred(
s.DateTime? dtOnOrAfter ,
s.DateTime? dtBefore )
{
OnOrAfter = dtOnOrAfter ;
Before = dtBefore ;
}
}
[ser.DataContract]
public class BeforeTransPred : TransPred
{
[ser.DataMember]public s.DateTime Before{get; private set;}
public BeforeTransPred(s.DateTime dtBefore)
{
Before = dtBefore;
}
}
[ser.DataContract]
public class OnOrAfterTransPred : TransPred
{
[ser.DataMember]public s.DateTime OnOrAfter{get; private set;}
public OnOrAfterTransPred(s.DateTime dtOnOrAfter)
{
OnOrAfter = dtOnOrAfter;
}
}
[ser.DataContract]
public class DateRangeTransPred : TransPred
{
[ser.DataMember]public s.DateTime OnOrAfter {get; private set;}
[ser.DataMember]public s.DateTime Before {get; private set;}
public DateRangeTransPred(
s.DateTime dtOnOrAfter ,
s.DateTime dtBefore )
{
OnOrAfter = dtOnOrAfter ;
Before = dtBefore ;
}
}
[ser.DataContract]
public class IDTransPred : TransPred
{
[ser.DataMember]public int ID{get; private set;}
public IDTransPred(int iID)
{
ID = iID;
}
}
[ser.DataContract]
public class IDRangeTransPred : TransPred
{
[ser.DataMember]public int SmallestID {get; private set;}
[ser.DataMember]public int LargestID {get; private set;}
public IDRangeTransPred(
int iSmallestID ,
int iLargestID )
{
SmallestID = iSmallestID ;
LargestID = iLargestID ;
}
}
[ser.DataContract]
public class PostIDTransPred : TransPred
{
[ser.DataMember]public int ID{get; private set;}
public PostIDTransPred(int iID)
{
ID = iID;
}
}
[ser.DataContract]
public class PostIDRangeTransPred : TransPred
{
[ser.DataMember]public int SmallestID {get; private set;}
[ser.DataMember]public int LargestID {get; private set;}
public PostIDRangeTransPred(
int iSmallestID ,
int iLargestID )
{
SmallestID = iSmallestID ;
LargestID = iLargestID ;
}
}
[ser.DataContract]
public class MaxPostIDTransPred : TransPred
{
[ser.DataMember]public int MaxID{get; private set;}
public MaxPostIDTransPred(int iMaxID)
{
MaxID = iMaxID;
}
}
[ser.DataContract]
public class MinPostIDTransPred : TransPred
{
[ser.DataMember]public int MinID{get; private set;}
public MinPostIDTransPred(int iMinID)
{
MinID = iMinID;
}
}
[ser.DataContract]
public class PostedTransPred : TransPred
{
}
[ser.DataContract]
public class UnPostedTransPred : TransPred
{
}
#endregion
#endregion
//******************************
[ser.DataContract]
public class Dog
{
[ser.DataMember]public string Name{ get; private set;}
[ser.DataMember]public int Age{ get; private set;}
public Dog(string strName, int iAge)
{
Name = strName ;
Age = iAge ;
}
}
[ser.DataContract]
public class ItemUpdate
{
[ser.DataMember] public int TransactionID {get; private set;}
[ser.DataMember] public int ItemID {get; private set;}
[ser.DataMember] public int DltAllocAccntID {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantAmounts{get; private set;}
public ItemUpdate(
int argTransactionID ,
int argItemID ,
int argDltAllocAccntID ,
u.ROArray<int> argParticipantAmounts)
{
TransactionID = argTransactionID ;
ItemID = argItemID ;
DltAllocAccntID = argDltAllocAccntID ;
ParticipantAmounts = argParticipantAmounts;
}
}
[ser.DataContract]
public class ItemEx
{
[ser.DataMember] public int ItemID {get; private set;}
[ser.DataMember] public int? PostID {get; private set;}
[ser.DataMember] public int TransactionID {get; private set;}
[ser.DataMember] public gt.RowVersion TransactionRowVersion {get; private set;}
[ser.DataMember] public int? ParticipantID {get; private set;}
[ser.DataMember] public string ParticipantName {get; private set;}
[ser.DataMember] public string TransactionDescrip {get; private set;}
[ser.DataMember] public s.DateTime TransactionDate {get; private set;}
[ser.DataMember] public string Descrip {get; private set;}
[ser.DataMember] public int? DltAllocAccntIDOrig {get; private set;}
[ser.DataMember] public string DltAllocAccntNameOrig {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantAmountsOrig {get; private set;}
public ItemEx(
int argItemID ,
int? argPostID ,
int argTransactionID ,
gt.RowVersion argTransactionRowVersion ,
int? argParticipantID ,
string argParticipantName ,
string argTransactionDescrip ,
s.DateTime argTransactionDate ,
string argDescrip ,
int? argDltAllocAccntIDOrig ,
string argDltAllocAccntNameOrig ,
u.ROArray<int> argParticipantAmountsOrig )
{
ItemID = argItemID ;
PostID = argPostID ;
TransactionID = argTransactionID ;
TransactionRowVersion = argTransactionRowVersion ;
ParticipantID = argParticipantID ;
ParticipantName = argParticipantName ;
TransactionDescrip = argTransactionDescrip ;
TransactionDate = argTransactionDate ;
Descrip = argDescrip ;
DltAllocAccntIDOrig = argDltAllocAccntIDOrig ;
DltAllocAccntNameOrig = argDltAllocAccntNameOrig ;
ParticipantAmountsOrig = argParticipantAmountsOrig ;
}
}
[ser.DataContract]
public class NWAccntDltSum
{
[ser.DataMember] public int NWAccntID {get; private set;}
[ser.DataMember] public bool Budgeted {get; private set;}
[ser.DataMember] public int Amount {get; private set;}
public NWAccntDltSum(
int argNWAccntID ,
bool argBudgeted ,
int argAmount )
{
NWAccntID = argNWAccntID ;
Budgeted = argBudgeted ;
Amount = argAmount ;
}
}
[ser.DataContract]
public class DltAllocSum
{
[ser.DataMember] public int DltAllocAccntID {get; private set;}
[ser.DataMember] public bool Budgeted {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantAmounts {get; private set;}
public DltAllocSum(
int argDltAllocAccntID ,
bool argBudgeted ,
u.ROArray<int> argParticipantAmounts )
{
DltAllocAccntID = argDltAllocAccntID ;
Budgeted = argBudgeted ;
ParticipantAmounts = argParticipantAmounts ;
}
}
[ser.DataContract]
public class BudgetDelta
{
[ser.DataMember] public int? Days {get; private set;}
[ser.DataMember] public int? Allocation {get; private set;}
[ser.DataMember] public int DltAllocs {get; private set;}
[ser.DataMember] public int NWDlts {get; private set;}
public BudgetDelta(
int? argDays ,
int? argAllocation ,
int argDltAllocs ,
int argNWDlts )
{
Days = argDays ;
Allocation = argAllocation ;
DltAllocs = argDltAllocs ;
NWDlts = argNWDlts ;
}
}
[ser.DataContract]
public class BudgetReport
{
[ser.DataMember]public BudgetDelta ClippedFromStartDate {get;private set;}
[ser.DataMember]public BudgetDelta ForMatchedTransactions {get;private set;}
public BudgetReport(
BudgetDelta oClippedFromStartDate ,
BudgetDelta oForMatchedTransactions )
{
ClippedFromStartDate = oClippedFromStartDate ;
ForMatchedTransactions = oForMatchedTransactions;
}
}
[ser.DataContract]
public class Summary
{
[ser.DataMember] public u.ROArray<NWAccntDltSum> NWAccntDltSums {get; private set;}
[ser.DataMember] public u.ROArray<DltAllocSum> DltAllocSums {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantWashes {get; private set;}
[ser.DataMember] public BudgetReport TheBudgetReport {get; private set;}
public Summary(
u.ROArray<NWAccntDltSum> argNWAccntDltSums ,
u.ROArray<DltAllocSum> argDltAllocSums ,
u.ROArray<int> argParticipantWashes ,
BudgetReport argTheBudgetReport )
{
NWAccntDltSums = argNWAccntDltSums ;
DltAllocSums = argDltAllocSums ;
ParticipantWashes = argParticipantWashes ;
TheBudgetReport = argTheBudgetReport ;
}
}
[ser.DataContract]
public class NWAccntDltEx
{
[ser.DataMember] public int TransID {get; private set;}
[ser.DataMember] public int? PostID {get; private set;}
[ser.DataMember] public string TransDescrip {get; private set;}
[ser.DataMember] public s.DateTime TransInstant {get; private set;}
[ser.DataMember] public int Amount {get; private set;}
public NWAccntDltEx(
int argTransID ,
int? argPostID ,
string argTransDescrip ,
s.DateTime argTransInstant ,
int argAmount )
{
TransID = argTransID ;
PostID = argPostID ;
TransDescrip = argTransDescrip ;
TransInstant = argTransInstant ;
Amount = argAmount ;
}
}
[ser.DataContract]
public class DltAlloc
{
[ser.DataMember] public int TransID {get; private set;}
[ser.DataMember] public int? PostID {get; private set;}
[ser.DataMember] public string TransDescrip {get; private set;}
[ser.DataMember] public DateTime TransInstant {get; private set;}
[ser.DataMember] public int ItemID {get; private set;}
[ser.DataMember] public string ItemDescrip {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantAmounts {get; private set;}
public DltAlloc(
int argTransID ,
int? argPostID ,
string argTransDescrip ,
DateTime argTransInstant ,
int argItemID ,
string argItemDescrip ,
u.ROArray<int> argParticipantAmounts )
{
TransID = argTransID ;
PostID = argPostID ;
TransDescrip = argTransDescrip ;
TransInstant = argTransInstant ;
ItemID = argItemID ;
ItemDescrip = argItemDescrip ;
ParticipantAmounts = argParticipantAmounts ;
}
}
[ser.DataContract]
public class Cache
{
[ser.DataContract]
public class NWAccnt
{
[ser.DataMember] public int ID {get; private set;}
[ser.DataMember] public bool Budgeted {get; private set;}
[ser.DataMember] public string Name {get; private set;}
public NWAccnt(
int argID ,
bool argBudgeted ,
string argName )
{
ID = argID ;
Budgeted = argBudgeted ;
Name = argName ;
}
}
[ser.DataContract]
public class DltAllocAccnt
{
[ser.DataMember] public int ID {get; private set;}
[ser.DataMember] public bool Budgeted {get; private set;}
[ser.DataMember] public string Name {get; private set;}
public DltAllocAccnt(
int argID ,
bool argBudgeted ,
string argName )
{
ID = argID ;
Budgeted = argBudgeted ;
Name = argName ;
}
}
[ser.DataContract]
public class Ownership
{
[ser.DataMember] public int NWAccntID {get; private set;}
[ser.DataMember] public int ParticipantID {get; private set;}
[ser.DataMember] public int Share {get; private set;}
public Ownership(
int argNWAccntID ,
int argParticipantID ,
int argShare )
{
NWAccntID = argNWAccntID ;
ParticipantID = argParticipantID ;
Share = argShare ;
}
}
[ser.DataMember]public u.ROArray<NWAccnt> NWAccnts;
[ser.DataMember]public u.ROArray<DltAllocAccnt> DltAllocAccnts;
[ser.DataMember]public u.ROArray<Ownership> Ownerships;
public Cache(
u.ROArray<NWAccnt> argNWAccnts ,
u.ROArray<DltAllocAccnt> argDltAllocAccnts ,
u.ROArray<Ownership> argOwnerships )
{
NWAccnts = argNWAccnts ;
DltAllocAccnts = argDltAllocAccnts ;
Ownerships = argOwnerships ;
}
}
[ser.DataContract]
public class Transaction
{
[ser.DataMember] public int? ID {get; private set;}
[ser.DataMember] public gt.RowVersion TheRowVersion {get; private set;}
[ser.DataMember] public int? PostID {get; private set;}
[ser.DataMember] public int? ParticipantID {get; private set;}
[ser.DataMember] public string Descrip {get; private set;}
[ser.DataMember] public s.DateTime Instant {get; private set;}
[ser.DataMember] public u.ROArray<int> ParticipantIDs {get; private set;}
[ser.DataMember] public u.ROArray<NWAccntDlt> NWAccntDlts {get; private set;}
[ser.DataMember] public u.ROArray<Item> Items {get; private set;}
[ser.DataMember] public u.ROArray<int> WashAmounts {get; private set;}
public Transaction(
int? argID ,
gt.RowVersion argRowVersion ,
int? argPostID ,
int? argParticipantID ,
string argDescrip ,
s.DateTime argInstant ,
u.ROArray<int> argParticipantIDs ,
u.ROArray<NWAccntDlt> argNWAccntDlts ,
u.ROArray<Item> argItems ,
u.ROArray<int> argWashAmounts )
{
ID = argID ;
TheRowVersion = argRowVersion ;
PostID = argPostID ;
ParticipantID = argParticipantID ;
Descrip = argDescrip ;
Instant = argInstant ;
ParticipantIDs = argParticipantIDs ;
NWAccntDlts = argNWAccntDlts ;
Items = argItems ;
WashAmounts = argWashAmounts ;
}
}
}