您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

169 行
7.6KB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using MySql.Data.MySqlClient;
  5. namespace CSVDownloader.Store.ElectronicMoneyDataStore {
  6. class GMOElectronicMoneyData : ElectronicMoneyCSVData {
  7. public String customer_code = "";
  8. public String acquirer_id = "";
  9. public String acquirer_name = "";
  10. public String customer_id = "";
  11. public String customer_name = "";
  12. public String shop_name = "";
  13. public String device_id = "";
  14. public String host_device_id = "";
  15. public String device_no = "";
  16. public DateTime adjust_datetime = DateTime.Now;
  17. public String trade_code = "";
  18. public int amount = 0;
  19. public int auto_charge_amount = 0;
  20. public int before_deposit = 0;
  21. public String brand = "";
  22. public String card_id = "";
  23. public String trade_status = "";
  24. public String last_proccesing_datetime = "";
  25. public String point = "";
  26. public String trade_no = "";
  27. public String origin_trade_no = "";
  28. public enum ColName {
  29. SpotID = 100,
  30. CustomerCode = 0,
  31. AcquirerID,
  32. AcquirerName,
  33. CustomerID, CustomerName,
  34. ShopName,
  35. DeviceID,
  36. HostDeviceID,
  37. DeviceNo,
  38. AdjustDatetime,
  39. TradeCode,
  40. Amount,
  41. AutoChargeAmount,
  42. BeforeDeposit,
  43. Brand,
  44. CardID,
  45. TradeStatus,
  46. LastProccesingDatetime,
  47. Point,
  48. TradeNo,
  49. OriginTradeNo,
  50. UpdDate,
  51. UpdStaff,
  52. RegDate,
  53. RegStaff
  54. };
  55. }
  56. class GMOElectronicMoneyDataStore : ElectronicMoneyCSVDataStore {
  57. private static readonly String table_name_ = "electronic_money_download_data_gmo";
  58. private String delete_sql_ = $"delete from {table_name_} where " +
  59. $"{GMOElectronicMoneyData.ColName.AdjustDatetime.ToString()} between " +
  60. $"@From{GMOElectronicMoneyData.ColName.AdjustDatetime.ToString()} and " +
  61. $"@To{GMOElectronicMoneyData.ColName.AdjustDatetime.ToString()};";
  62. public GMOElectronicMoneyDataStore(MySqlConnection conn) : base(conn) {
  63. }
  64. public override void Save(List<ElectronicMoneyCSVData> list) {
  65. Code.ResultCode ret;
  66. var table = new DataTable();
  67. table.Columns.Add($"{GMOElectronicMoneyData.ColName.SpotID}");
  68. table.Columns.Add($"{GMOElectronicMoneyData.ColName.CustomerCode}");
  69. table.Columns.Add($"{GMOElectronicMoneyData.ColName.AcquirerID}");
  70. table.Columns.Add($"{GMOElectronicMoneyData.ColName.AcquirerName}");
  71. table.Columns.Add($"{GMOElectronicMoneyData.ColName.CustomerID}");
  72. table.Columns.Add($"{GMOElectronicMoneyData.ColName.CustomerName}");
  73. table.Columns.Add($"{GMOElectronicMoneyData.ColName.ShopName}");
  74. table.Columns.Add($"{GMOElectronicMoneyData.ColName.DeviceID}");
  75. table.Columns.Add($"{GMOElectronicMoneyData.ColName.HostDeviceID}");
  76. table.Columns.Add($"{GMOElectronicMoneyData.ColName.DeviceNo}");
  77. table.Columns.Add($"{GMOElectronicMoneyData.ColName.AdjustDatetime}");
  78. table.Columns.Add($"{GMOElectronicMoneyData.ColName.TradeCode}");
  79. table.Columns.Add($"{GMOElectronicMoneyData.ColName.Amount}");
  80. table.Columns.Add($"{GMOElectronicMoneyData.ColName.AutoChargeAmount}");
  81. table.Columns.Add($"{GMOElectronicMoneyData.ColName.BeforeDeposit}");
  82. table.Columns.Add($"{GMOElectronicMoneyData.ColName.Brand}");
  83. table.Columns.Add($"{GMOElectronicMoneyData.ColName.CardID}");
  84. table.Columns.Add($"{GMOElectronicMoneyData.ColName.TradeStatus}");
  85. table.Columns.Add($"{GMOElectronicMoneyData.ColName.LastProccesingDatetime}");
  86. table.Columns.Add($"{GMOElectronicMoneyData.ColName.Point}");
  87. table.Columns.Add($"{GMOElectronicMoneyData.ColName.TradeNo}");
  88. table.Columns.Add($"{GMOElectronicMoneyData.ColName.OriginTradeNo}");
  89. table.Columns.Add($"{GMOElectronicMoneyData.ColName.UpdDate}");
  90. table.Columns.Add($"{GMOElectronicMoneyData.ColName.UpdStaff}");
  91. table.Columns.Add($"{GMOElectronicMoneyData.ColName.RegDate}");
  92. table.Columns.Add($"{GMOElectronicMoneyData.ColName.RegStaff}");
  93. foreach (GMOElectronicMoneyData data in list) {
  94. var row = table.NewRow();
  95. row[$"{GMOElectronicMoneyData.ColName.SpotID}"] = data.spot_id;
  96. row[$"{GMOElectronicMoneyData.ColName.CustomerCode}"] = data.customer_code;
  97. row[$"{GMOElectronicMoneyData.ColName.AcquirerID}"] = data.acquirer_id;
  98. row[$"{GMOElectronicMoneyData.ColName.AcquirerName}"] = data.acquirer_name;
  99. row[$"{GMOElectronicMoneyData.ColName.CustomerID}"] = data.customer_id;
  100. row[$"{GMOElectronicMoneyData.ColName.CustomerName}"] = data.customer_name;
  101. row[$"{GMOElectronicMoneyData.ColName.ShopName}"] = data.shop_name;
  102. row[$"{GMOElectronicMoneyData.ColName.DeviceID}"] = data.device_id;
  103. row[$"{GMOElectronicMoneyData.ColName.HostDeviceID}"] = data.host_device_id;
  104. row[$"{GMOElectronicMoneyData.ColName.DeviceNo}"] = data.device_no;
  105. row[$"{GMOElectronicMoneyData.ColName.AdjustDatetime}"] = data.adjust_datetime;
  106. row[$"{GMOElectronicMoneyData.ColName.TradeCode}"] = data.trade_code;
  107. row[$"{GMOElectronicMoneyData.ColName.Amount}"] = data.amount;
  108. row[$"{GMOElectronicMoneyData.ColName.AutoChargeAmount}"] = data.auto_charge_amount;
  109. row[$"{GMOElectronicMoneyData.ColName.BeforeDeposit}"] = data.before_deposit;
  110. row[$"{GMOElectronicMoneyData.ColName.Brand}"] = data.brand;
  111. row[$"{GMOElectronicMoneyData.ColName.CardID}"] = data.card_id;
  112. row[$"{GMOElectronicMoneyData.ColName.TradeStatus}"] = data.trade_status;
  113. row[$"{GMOElectronicMoneyData.ColName.LastProccesingDatetime}"] = data.last_proccesing_datetime;
  114. row[$"{GMOElectronicMoneyData.ColName.Point}"] = data.point;
  115. row[$"{GMOElectronicMoneyData.ColName.TradeNo}"] = data.trade_no;
  116. row[$"{GMOElectronicMoneyData.ColName.OriginTradeNo}"] = data.origin_trade_no;
  117. row[$"{GMOElectronicMoneyData.ColName.UpdDate}"] = data.upd_date;
  118. row[$"{GMOElectronicMoneyData.ColName.UpdStaff}"] = data.upd_staff;
  119. row[$"{GMOElectronicMoneyData.ColName.RegDate}"] = data.reg_date;
  120. row[$"{GMOElectronicMoneyData.ColName.RegStaff}"] = data.reg_staff;
  121. table.Rows.Add(row);
  122. }
  123. ret = BulkInsertData(table_name_, table);
  124. if (ret != Code.ResultCode.OK) {
  125. throw new Exception("登録失敗 GMO 電子マネー");
  126. }
  127. }
  128. public override int Delete(DateTime from, DateTime to) {
  129. var bindlist = new List<(String, object)> {
  130. ("From"+GMOElectronicMoneyData.ColName.AdjustDatetime.ToString(), from.ToString("yyyy-MM-dd")),
  131. ("To"+GMOElectronicMoneyData.ColName.AdjustDatetime.ToString(), to.AddDays(1).ToString("yyyy-MM-dd"))
  132. };
  133. var delete_count = DeleteData(delete_sql_, bindlist);
  134. if (delete_count == -1) {
  135. throw new Exception("削除失敗 大都QR");
  136. }
  137. return delete_count;
  138. }
  139. }
  140. }