Example #1
0
 public static PreAuthorization Simple()
 {
     return(new PreAuthorization(
                "bbc5ea2f74d2da9377eacd2f19ac108fffe165558baaddcaf48267c7b0adc1c6",
                MerchantFactory.HM1(),
                CardPaymentFactory.HC1()));
 }
Example #2
0
        static void Main(string[] args)
        {
            var filePath = GetTransactionFilePath();

            using (StreamReader file = new StreamReader(filePath))
            {
                string line;
                var    merchantFactory = new MerchantFactory();
                var    merchants       = new Dictionary <string, Merchant>();
                while ((line = file.ReadLine()) != null)
                {
                    var words           = line.Split(' ');
                    var date            = words[0];
                    var transactionDate = DateTime.Parse(words[0]);
                    var amount          = decimal.Parse(words[2]);
                    var transaction     = new Transaction(transactionDate, amount);

                    var merchantName = words[1];
                    if (merchants.ContainsKey(merchantName))
                    {
                        merchants[merchantName].AddTransaction(transaction);
                    }
                    else
                    {
                        var merchant = merchantFactory.CreateMerchant(merchantName, transaction, TRANSACTION_COMMISION, INVOICE_FEE);
                        merchants.Add(merchantName, merchant);
                    }
                    merchants[merchantName].CalculateMerchantFee();
                    Console.WriteLine(merchants[merchantName].GetMerchantFeeInformation());
                }
            };
        }
Example #3
0
        public void Merchant_Factory_Create_Standart_Merchant(string merchantName, decimal transactionAmount, decimal transactionCommsion, decimal invoiceFee)
        {
            var transaction     = new Transaction(DateTime.Now, transactionAmount);
            var merchantFactory = new MerchantFactory();

            var merchant = merchantFactory.CreateMerchant(merchantName, transaction, transactionCommsion, invoiceFee);

            Assert.AreEqual(typeof(StandartMerchant), merchant.GetType());
        }
 /// <summary>
 /// 转换为商户实体
 /// </summary>
 /// <param name="dto">商户数据传输对象</param>
 public static Merchant ToEntity3(this MerchantDto dto)
 {
     if (dto == null)
     {
         return(new Merchant());
     }
     return(MerchantFactory.Create(
                merchantId: dto.Id.ToGuid(),
                name: dto.Name,
                isEnabled: dto.IsEnabled,
                type: dto.Type,
                isDistribution: dto.IsDistribution,
                creationTime: dto.CreationTime,
                creatorId: dto.CreatorId,
                lastModificationTime: dto.LastModificationTime,
                lastModifierId: dto.LastModifierId,
                isDeleted: dto.IsDeleted,
                version: dto.Version
                ));
 }