You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

90 lines
2.4 KiB

using System.Xml.Serialization;
using BWP.ABCClient.Common;
namespace BWP.ABCClient.B2B
{
[XmlRoot(ElementName = "MSG")]
public class FundTransferRequest : MessageBase
{
public MessageContent Message { get; set; }
public static FundTransferRequest New()
{
return new FundTransferRequest {
Message = new MessageContent {
Merchant = new MerchantContent {
ECMerchantType = "B2B",
MerchantID = string.Empty
},
TrxRequest = new TrxRequestContent {
TrxType = TrxType.FundTransfer,
MerchantTrnxNo = string.Empty,
TrnxAmount = "0",
TrnxDate = string.Empty,
TrnxTime = string.Empty,
AccountDB = new AccountDBContent {
AccountDBNo = string.Empty,
AccountDBName = string.Empty,
AccountDBBank = string.Empty
},
TrnxInfo = new TrnxInfoContent {
TrnxOpr = string.Empty
},
ResultNotifyURL = string.Empty,
MerchantRemarks = string.Empty
}
},
SignatureAlgorithm = "SHA1withRSA",
Signature = string.Empty
};
}
public class MessageContent
{
public MerchantContent Merchant { get; set; }
public TrxRequestContent TrxRequest { get; set; }
}
public class TrxRequestContent
{
public string TrxType { get; set; }
public string MerchantTrnxNo { get; set; }
public string TrnxAmount { get; set; }
public string TrnxDate { get; set; }
public string TrnxTime { get; set; }
public AccountDBContent AccountDB { get; set; }
public TrnxInfoContent TrnxInfo { get; set; }
public string ResultNotifyURL { get; set; }
public string MerchantRemarks { get; set; }
}
public class TrnxInfoContent
{
public string TrnxOpr { get; set; }
[XmlArrayItem(ElementName = "Remark")]
public TrnxRemark[] TrnxRemarks { get; set; }
public TrnxItem[] TrnxItems { get; set; }
}
public class TrnxRemark
{
public string Key { get; set; }
public string Value { get; set; }
}
public class TrnxItem
{
public string ProductID { get; set; }
public string ProductName { get; set; }
public string UnitPrice { get; set; }
public string Qty { get; set; }
}
public class AccountDBContent
{
public string AccountDBNo { get; set; }
public string AccountDBName { get; set; }
public string AccountDBBank { get; set; }
}
}
}