DbModelConstructors.cs 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. using SinoChemCommonUtilities;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Data.SqlClient;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace SinochemInternetPlusApp
  9. {
  10. public static class DbModelConstructors
  11. {
  12. public static Xiaofei2Model ConstructXiaofei2Model(SqlDataReader reader)
  13. {
  14. //var identifiableEntity = new IdentifiableEntity(0, "EpsMain", "", null);
  15. //DebugLogger debugLogger = new DebugLogger(identifiableEntity);
  16. if (reader.Read())
  17. {
  18. Xiaofei2Model xiaofei2Model = new Xiaofei2Model();
  19. xiaofei2Model.jihao = DbFieldReader.SafelyReadDbField<int>(reader["jihao"]);
  20. xiaofei2Model.youpin = DbFieldReader.SafelyReadDbField <string>(reader["youpin"]);
  21. xiaofei2Model.qty = DbFieldReader.SafelyReadDbField<double>(reader["qty"]);
  22. xiaofei2Model.danjia = DbFieldReader.SafelyReadDbField<double>(reader["danjia"]);
  23. xiaofei2Model.amount = DbFieldReader.SafelyReadDbField<double>(reader["amount"]);
  24. xiaofei2Model.xf_date = DbFieldReader.SafelyReadDbField<DateTime>(reader["xf_date"]);
  25. xiaofei2Model.xf_time = DbFieldReader.SafelyReadDbField <string>(reader["xf_time"]);
  26. xiaofei2Model.liushuino = DbFieldReader.SafelyReadDbField <string>(reader["liushuino"]);
  27. xiaofei2Model.fzqty = DbFieldReader.SafelyReadDbField <string>(reader["fzqty"]);
  28. xiaofei2Model.fzamount = DbFieldReader.SafelyReadDbField<double>(reader["fzamount"]);
  29. return xiaofei2Model;
  30. }
  31. else
  32. {
  33. return null;
  34. }
  35. }
  36. public static JyInfoModel ConstructJyInfoModel(SqlDataReader reader)
  37. {
  38. if (reader.Read())
  39. {
  40. JyInfoModel jyInfoModel = new JyInfoModel();
  41. jyInfoModel.jihao = DbFieldReader.SafelyReadDbField<int>(reader["jihao"]);
  42. jyInfoModel.status = DbFieldReader.SafelyReadDbField<string>(reader["status"]);
  43. jyInfoModel.youpin = DbFieldReader.SafelyReadDbField<string>(reader["youpin"]);
  44. jyInfoModel.qty = DbFieldReader.SafelyReadDbField<double>(reader["qty"]);
  45. jyInfoModel.amount = DbFieldReader.SafelyReadDbField<double>(reader["amount"]);
  46. jyInfoModel.fzqty = DbFieldReader.SafelyReadDbField <string>(reader["fzqty"]);
  47. jyInfoModel.fzamount = DbFieldReader.SafelyReadDbField<double>(reader["fzamount"]);
  48. return jyInfoModel;
  49. }
  50. else
  51. {
  52. return null;
  53. }
  54. }
  55. public static List<EpsTransactionModel> ConstructEpsTrxModelList(SqlDataReader reader)
  56. {
  57. List<EpsTransactionModel> epsTrxModelList = new List<EpsTransactionModel>();
  58. while (reader.Read())
  59. {
  60. EpsTransactionModel epxTrxModel = FillEpsTrxModelWithReaderReady(reader);
  61. epsTrxModelList.Add(epxTrxModel);
  62. }
  63. return epsTrxModelList;
  64. }
  65. public static List<EpsTransaction> ConstructEpsTrxList(SqlDataReader reader)
  66. {
  67. List<EpsTransaction> epsTrxList = new List<EpsTransaction>();
  68. while (reader.Read())
  69. {
  70. EpsTransactionModel epxTrxModel = FillEpsTrxModelWithReaderReady(reader);
  71. epsTrxList.Add(EpsTransaction.RestroeEpsTrxFrom(epxTrxModel));
  72. }
  73. return epsTrxList;
  74. }
  75. // assume the reader on the valid table row
  76. private static EpsTransactionModel FillEpsTrxModelWithReaderReady(SqlDataReader reader)
  77. {
  78. #region for debugging purpose
  79. /*
  80. int vid = (int)reader["id"];
  81. int vjihao = (int)reader["jihao"];
  82. string vyoupin = (string)reader["youpin"];
  83. double vqty = (double)reader["qty"];
  84. double vdanjia = (double)reader["danjia"];
  85. double vamount = (double)reader["amount"];
  86. DateTime vxf_date = (DateTime)reader["xf_date"];
  87. string vxf_time = (string)reader["xf_time"];
  88. string vliushuino = (string)reader["liushuino"];
  89. string vfzqty = (string)reader["fzqty"];
  90. double vfzamount = (double)reader["fzamount"];
  91. EpsTrxStatus vtrx_status = (EpsTrxStatus)reader["trx_status"];
  92. TransactionMode vmop = (TransactionMode)reader["mop"];
  93. string vcar_number = (string)reader["car_number"];
  94. string vcard_no = (string)reader["card_no"];
  95. string vttc = (string)reader["ttc"];
  96. string vtoken = (string)reader["token"];
  97. string vtid = (string)reader["tid"];
  98. string vmac = (string)reader["mac"];
  99. double vbalance_before_trx = (double)reader["balance_before_trx"];
  100. double vreal_pay_amount = (double)reader["real_pay_amount"];
  101. string vauth_time = (string)reader["auth_time"];
  102. string vbill_id = (string)reader["bill_id"];
  103. DateTime v_created_time = (DateTime)reader["created_time"];
  104. string v_shift_id = (string)reader["shift_id"];
  105. string v_business_date = (string)reader["business_date"];
  106. NotifyPosFlag v_notify_pos = (NotifyPosFlag)reader["notify_pos"];
  107. string vcardNo_masked = (string)reader["cardNo_masked"];
  108. */
  109. #endregion
  110. EpsTransactionModel epxTrxModel = new EpsTransactionModel
  111. {
  112. id = DbFieldReader.SafelyReadDbField<int>(reader["id"]),
  113. jihao = DbFieldReader.SafelyReadDbField<int>(reader["jihao"]),
  114. youpin = DbFieldReader.SafelyReadDbField<string>(reader["youpin"]),
  115. qty = DbFieldReader.SafelyReadDbField<double>(reader["qty"]),
  116. danjia = DbFieldReader.SafelyReadDbField<double>(reader["danjia"]),
  117. amount = DbFieldReader.SafelyReadDbField<double>(reader["amount"]),
  118. xf_date = DbFieldReader.SafelyReadDbField<DateTime>(reader["xf_date"]),
  119. xf_time = DbFieldReader.SafelyReadDbField<string>(reader["xf_time"]),
  120. liushuino = DbFieldReader.SafelyReadDbField<string>(reader["liushuino"]),
  121. fzqty = DbFieldReader.SafelyReadDbField<string>(reader["fzqty"]),
  122. fzamount = DbFieldReader.SafelyReadDbField<double>(reader["fzamount"]),
  123. trx_status = (EpsTrxStatus)DbFieldReader.SafelyReadDbField<int>(reader["trx_status"]),
  124. mop = (TransactionMode)DbFieldReader.SafelyReadDbField<int>(reader["mop"]),
  125. car_number = DbFieldReader.SafelyReadDbField<string>(reader["car_number"]),
  126. card_no = DbFieldReader.SafelyReadDbField<string>(reader["card_no"]),
  127. ttc = DbFieldReader.SafelyReadDbField<string>(reader["ttc"]),
  128. token = DbFieldReader.SafelyReadDbField<string>(reader["token"]),
  129. tid = DbFieldReader.SafelyReadDbField<string>(reader["tid"]),
  130. mac = DbFieldReader.SafelyReadDbField<string>(reader["mac"]),
  131. balance_before_trx = DbFieldReader.SafelyReadDbField<double>(reader["balance_before_trx"]),
  132. real_pay_amount = DbFieldReader.SafelyReadDbField<double>(reader["real_pay_amount"]),
  133. auth_time = DbFieldReader.SafelyReadDbField<string>(reader["auth_time"]),
  134. bill_id = DbFieldReader.SafelyReadDbField<string>(reader["bill_id"]),
  135. created_time = DbFieldReader.SafelyReadDbField<DateTime>(reader["created_time"]),
  136. shift_id = DbFieldReader.SafelyReadDbField<string>(reader["shift_id"]),
  137. business_date = DbFieldReader.SafelyReadDbField<string>(reader["business_date"]),
  138. notify_pos = (NotifyPosFlag)DbFieldReader.SafelyReadDbField<int>(reader["notify_pos"]),
  139. cardNo_masked = DbFieldReader.SafelyReadDbField<string>(reader["cardNo_masked"]),
  140. };
  141. return epxTrxModel;
  142. }
  143. }
  144. }