OnceRunPowerMattersProvider.cs 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Linq;
  5. using System.Text;
  6. using Dapper;
  7. using Winsoft.GOV.Framework.Model;
  8. namespace Winsoft.GOV.Framework.Provider
  9. {
  10. public class OnceRunPowerMattersProvider : BaseProvider<PowerMattersBase>
  11. {
  12. private static string cols = " `QL_INNER_CODE`, "
  13. + "`QL_NAME` ";
  14. public void CreateTable()
  15. {
  16. string sql = "create table if not exists oncerunpowermatters("
  17. + "QL_NAME varchar(200),"
  18. + "QL_INNER_CODE varchar(50),"
  19. + "QL_DEP varchar(50),"
  20. + "OUGUID varchar(50)"
  21. + "); "
  22. + "call add_index('oncerunpowermatters', 'index1', 'index1(QL_INNER_CODE, OUGUID)'); "
  23. + "call add_index('oncerunpowermatters', 'index2', 'index2(QL_INNER_CODE)'); "
  24. + "call add_index('oncerunpowermatters', 'index3', 'index3(OUGUID)'); ";
  25. //+ "call add_index('PowerMattersBase', 'index4', 'index4(QL_NAME)'); ";
  26. using (var con = GetDbConnection())
  27. {
  28. con.Execute(sql);
  29. }
  30. }
  31. public OnceRunPowerMattersProvider(County county) : base(county)
  32. {
  33. }
  34. public void DeleteAll()
  35. {
  36. using (IDbConnection connection = GetDbConnection())
  37. {
  38. connection.Execute("delete from OnceRunPowerMatters");
  39. }
  40. }
  41. public void Insert(IList<PowerMattersBase> list)
  42. {
  43. string select = "select count(*) from oncerunpowermatters where QL_INNER_CODE=@QL_INNER_CODE and OUGUID=@OUGUID;";
  44. string update = "update oncerunpowermatters set QL_NAME=@QL_NAME, QL_DEP=@QL_DEP where QL_INNER_CODE=@QL_INNER_CODE and OUGUID=@OUGUID;";
  45. string insert = "insert oncerunpowermatters(QL_NAME, QL_INNER_CODE, OUGUID, QL_DEP) values(@QL_NAME, @QL_INNER_CODE, @OUGUID, @QL_DEP);";
  46. using (var conn = GetDbConnection())
  47. {
  48. foreach (PowerMattersBase p in list)
  49. {
  50. try
  51. {
  52. //int count = conn.QueryFirstOrDefault<int>(select, p);
  53. //if (count <= 0)
  54. conn.Execute(insert, p);
  55. //else
  56. // conn.Execute(update, p);
  57. }
  58. catch (Exception e)
  59. {
  60. }
  61. }
  62. }
  63. }
  64. public void Insert(PowerMattersBase p)
  65. {
  66. string select = "select count(*) from oncerunpowermatters where QL_INNER_CODE=@QL_INNER_CODE and OUGUID=@OUGUID;";
  67. string update = "update oncerunpowermatters set QL_NAME=@QL_NAME, QL_DEP=@QL_DEP where QL_INNER_CODE=@QL_INNER_CODE and OUGUID=@OUGUID;";
  68. string insert = "delete from oncerunpowermatters where QL_INNER_CODE=@QL_INNER_CODE and OUGUID=@OUGUID; "
  69. + "insert oncerunpowermatters(QL_NAME, QL_INNER_CODE, OUGUID, QL_DEP) values(@QL_NAME, @QL_INNER_CODE, @OUGUID, @QL_DEP);";
  70. using (var conn = GetDbConnection())
  71. {
  72. try
  73. {
  74. //int count = conn.QueryFirstOrDefault<int>(select, p);
  75. //if (count <= 0)
  76. conn.Execute(insert, p);
  77. //else
  78. // conn.Execute(update, p);
  79. }
  80. catch (Exception e)
  81. {
  82. }
  83. }
  84. }
  85. public PowerMattersBase FindByQLNameAndOUORGCODE(string ql_name, string ouguid)
  86. {
  87. string sql = "select " + cols + " from oncerunpowermatters where ql_name=@ql_name and ouguid=@ouguid";
  88. using (IDbConnection connection = GetDbConnection())
  89. {
  90. return connection.QueryFirstOrDefault<PowerMattersBase>(sql, new { ouguid = ouguid, ql_name = ql_name });
  91. }
  92. }
  93. public IEnumerable<PowerMattersBase> FindOnceRunPowerMattersByBranchGUID(string guid)
  94. {
  95. string sql = "select " + cols + " from oncerunpowermatters where ouguid=@guid";
  96. using (IDbConnection connection = GetDbConnection())
  97. {
  98. return connection.Query<PowerMattersBase>(sql, new { guid = guid });
  99. }
  100. }
  101. public IEnumerable<PowerMattersBase> FindByBranchGUIDAndApplyType(string guid, int type)
  102. {
  103. string sql = " SELECT QL_INNER_CODE, QL_NAME FROM powermattertype WHERE ouguid=@ouguid and ApplyCode=@code";
  104. using (IDbConnection connection = GetDbConnection())
  105. {
  106. return connection.Query<PowerMattersBase>(sql, new { code = type, ouguid = guid });
  107. }
  108. //if (type > -1 && type < ApplyType.Names.Length)
  109. //{
  110. // string sql = "select " + cols + " from oncerunpowermatters where ouguid=@ouguid and QL_INNER_CODE in (SELECT QL_INNER_CODE FROM powermattertype WHERE ouguid=@ouguid and ApplyCode=@code)";
  111. // using (IDbConnection connection = GetDbConnection())
  112. // {
  113. // return connection.Query<PowerMattersBase>(sql, new { code = type, ouguid = guid });
  114. // }
  115. //}
  116. //else
  117. //{
  118. // string sql = "select " + cols + " from oncerunpowermatters where ouguid=@ouguid and QL_INNER_CODE not in (SELECT QL_INNER_CODE FROM powermattertype WHERE ouguid=@ouguid)";
  119. // using (IDbConnection connection = GetDbConnection())
  120. // {
  121. // return connection.Query<PowerMattersBase>(sql, new { ouguid = guid });
  122. // }
  123. //}
  124. }
  125. }
  126. }