Snoopy 2 gadi atpakaļ
vecāks
revīzija
298f08412e
2 mainītis faili ar 50 papildinājumiem un 25 dzēšanām
  1. 11 1
      TCCInvoice/InvoiceGenerator.cs
  2. 39 24
      TCCInvoice/Program.cs

+ 11 - 1
TCCInvoice/InvoiceGenerator.cs

@@ -256,6 +256,16 @@ namespace TCCInvoice
                 string invoicedate = xDoc.Descendants("InvoiceDate").ElementAt(0).Value;
                 string invoicetime = xDoc.Descendants("InvoiceTime").ElementAt(0).Value;
                 string invoiceError = null;
+                string value;
+                if (DataRandomNoPair.TryGetValue(datanumber, out value))
+                {
+                    Console.WriteLine("Fetched value: {0}", value);
+                }
+                else
+                {
+                    value = "7878";
+                    Console.WriteLine("No such key: {0}", datanumber);
+                }
                 invoiceResponseItemList.Add(new InvoiceResponseItem 
                 {
                     ResponseStatus = "配號成功",
@@ -263,7 +273,7 @@ namespace TCCInvoice
                     ResponseDataNumber = datanumber,
                     ResponseInvoiceDate = invoicedate,
                     ResponseInvoiceTime = invoicetime,
-                    ResponseRandomNumber = DataRandomNoPair[datanumber],
+                    ResponseRandomNumber = value,
                     ResponseInvoiceError = invoiceError
                 });
             }

+ 39 - 24
TCCInvoice/Program.cs

@@ -10,34 +10,49 @@ namespace TCCInvoice
     {
         static void Main(string[] args)
         {
-            // 建立InvoiceGenerator類別的物件
-            InvoiceGenerator myInvoice = new InvoiceGenerator(2);
-
-            // 註冊發票號碼已處理完畢的事件通知
-            myInvoice.InvoiceCompleted += MyInvoice_InvoiceCompleted;
-            
-            for (int i = 0; i < 2; i++)
+            int count = 0;
+            int max = 30;
+            while (true)
             {
-                // 填具待開立發票的相關資料(Preinvoice)
-                string id = DateTime.Now.ToString("yyyyMMddHHmmssffff");
-                myInvoice.DataNumber = id;
-                myInvoice.DataDate = DateTime.Today;
-                myInvoice.BuyerId = null; // 一般消費者
-                myInvoice.TotalAmount = 524;
-                myInvoice.CarrierId1 = null;
-                myInvoice.MainRemark = "交易訂單號:" + id;
-                myInvoice.DonateMark = 0;
-                myInvoice.ContactEmail = null;
-                myInvoice.ContactPhone = null;
-                myInvoice.AddInvoiceItem(0, "充電服務費", 41.5793, "度", 12, 499, "充電服務費每度12元");
-                myInvoice.AddInvoiceItem(1, "占用費", 30, "分鐘", 50, 25, "占用費每小時50元");
-                // 開立發票
-                myInvoice.GetInvoiceResponse();
+                if (count < max)
+                {
+                    // 建立InvoiceGenerator類別的物件
+                    InvoiceGenerator myInvoice = new InvoiceGenerator(1);
+
+                    // 註冊發票號碼已處理完畢的事件通知
+                    myInvoice.InvoiceCompleted += MyInvoice_InvoiceCompleted;
+
+                    for (int i = 0; i < 1; i++)
+                    {
+                        // 填具待開立發票的相關資料(Preinvoice)
+                        string id = DateTime.Now.ToString("yyyyMMddHHmmssffff");
+                        myInvoice.DataNumber = id;
+                        myInvoice.DataDate = DateTime.Today;
+                        myInvoice.BuyerId = null; // 一般消費者
+                        myInvoice.TotalAmount = 524;
+                        myInvoice.CarrierId1 = null;
+                        myInvoice.MainRemark = "交易訂單號:" + id;
+                        myInvoice.DonateMark = 0;
+                        myInvoice.ContactEmail = null;
+                        myInvoice.ContactPhone = null;
+                        myInvoice.AddInvoiceItem(0, "充電服務費", 41.5793, "度", 12, 499, "充電服務費每度12元");
+                        myInvoice.AddInvoiceItem(1, "占用費", 30, "分鐘", 50, 25, "占用費每小時50元");
+                        // 開立發票
+                        myInvoice.GetInvoiceResponse();
+                    }
+                    System.Threading.Thread.Sleep(20000);
+                    myInvoice.InvoiceCompleted -= MyInvoice_InvoiceCompleted;
+                }
+                else
+                {
+                    System.Threading.Thread.Sleep(1000);
+                }
+                Console.WriteLine(count++);
             }
 
 
-            Console.WriteLine("Press enter to exit");
-            Console.ReadLine();
+            //Console.WriteLine("Press enter to exit");
+            //Console.ReadLine();
         }
 
         private static void MyInvoice_InvoiceCompleted(List<InvoiceGenerator.InvoiceResponseItem> responseItems)