LotteryGlossaryController.cs 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. using System;
  2. using System.Data;
  3. using System.Net.Http;
  4. using System.Web.Http;
  5. using Lottomat.Application.Busines.CommonManage;
  6. using Lottomat.Application.Code;
  7. using Lottomat.Application.Entity.CommonEntity;
  8. using Lottomat.Application.Entity.LotteryNumberManage.Parameter;
  9. using Lottomat.Application.Entity.LotteryNumberManage.ViewModel;
  10. using Lottomat.SOA.API.Caching;
  11. using Lottomat.SOA.API.Controllers.Base;
  12. using Lottomat.Util.Extension;
  13. namespace Lottomat.SOA.API.Controllers.V1
  14. {
  15. /// <summary>
  16. /// 彩票术语
  17. /// </summary>
  18. public class LotteryGlossaryController : BaseApiController
  19. {
  20. private static readonly CommonBLL commonBll = new CommonBLL();
  21. /// <summary>
  22. /// 根据Id获取彩票术语
  23. /// </summary>
  24. /// <param name="arg"></param>
  25. /// <returns></returns>
  26. [HttpPost]
  27. public HttpResponseMessage GetLotteryGlossaryById(GetLotteryGlossaryArgEntity arg)
  28. {
  29. var resultMsg = new BaseJson<LotteryGlossaryListViewEntity>
  30. {
  31. Status = (int) JsonObjectStatus.Error,
  32. Message = "服务器未知错误。",
  33. Data = null
  34. };
  35. Logger(typeof(LotteryGlossaryController), arg.TryToJson(), "根据Id获取彩票术语-GetLotteryGlossaryById", () =>
  36. {
  37. if (!string.IsNullOrEmpty(arg.t))
  38. if (arg.t.CheckTimeStamp())
  39. {
  40. var sql = $"SELECT [PK],[TypeId],[TypeName],[Title],[AddTime],[Author],[Content] FROM [B_LotteryGlossary] WHERE IsDelete = 0 AND [PK] = {arg.PK}";
  41. var data = commonBll.ExcuteSqlDataTable(sql);
  42. if (data.IsExistRows())
  43. {
  44. var res = data.DataTableToObject<LotteryGlossaryListViewEntity>();
  45. resultMsg = new BaseJson<LotteryGlossaryListViewEntity>
  46. {
  47. Status = (int) JsonObjectStatus.Success,
  48. Data = res,
  49. Message = JsonObjectStatus.Success.GetEnumText(),
  50. BackUrl = null
  51. };
  52. }
  53. else
  54. {
  55. resultMsg = new BaseJson<LotteryGlossaryListViewEntity>
  56. {
  57. Status = (int) JsonObjectStatus.Success,
  58. Data = null,
  59. Message = JsonObjectStatus.Success.GetEnumText(),
  60. BackUrl = null
  61. };
  62. }
  63. }
  64. else
  65. {
  66. resultMsg = new BaseJson<LotteryGlossaryListViewEntity>
  67. {
  68. Status = (int) JsonObjectStatus.Fail,
  69. Data = null,
  70. Message = JsonObjectStatus.Fail.GetEnumText() + ",无效参数。",
  71. BackUrl = null
  72. };
  73. }
  74. else
  75. resultMsg = new BaseJson<LotteryGlossaryListViewEntity>
  76. {
  77. Status = (int) JsonObjectStatus.Fail,
  78. Data = null,
  79. Message = JsonObjectStatus.Fail.GetEnumText() + ",请求参数为空。",
  80. BackUrl = null
  81. };
  82. }, e =>
  83. {
  84. resultMsg = new BaseJson<LotteryGlossaryListViewEntity>
  85. {
  86. Status = (int) JsonObjectStatus.Exception,
  87. Data = null,
  88. Message = JsonObjectStatus.Exception.GetEnumText() + ",异常信息:" + e.Message,
  89. BackUrl = null
  90. };
  91. });
  92. return resultMsg.TryToJson().ToHttpResponseMessage();
  93. }
  94. /// <summary>
  95. /// 获取彩票术语列表
  96. /// </summary>
  97. /// <returns></returns>
  98. [HttpPost]
  99. public HttpResponseMessage GetLotteryGlossaryList(GetLotteryGlossaryListArgEntity arg)
  100. {
  101. var resultMsg = new BaseJson4Page<LotteryGlossaryListViewEntity>
  102. {
  103. Status = (int) JsonObjectStatus.Error,
  104. Message = "服务器未知错误。",
  105. Data = null
  106. };
  107. Logger(typeof(LotteryGlossaryController), arg.TryToJson(), "获取彩票术语列表-GetLotteryGlossaryList", () =>
  108. {
  109. if (!string.IsNullOrEmpty(arg.t))
  110. if (arg.t.CheckTimeStamp())
  111. {
  112. int value = 0;
  113. int total = 0;
  114. bool isGlossarytype = Enum.TryParse<LotteryGlossaryType>(arg.GlossaryType, true, out LotteryGlossaryType type);
  115. var sql = "";
  116. if (!isGlossarytype)
  117. {
  118. sql = $"SELECT [PK],[Title],[TypeId],[TypeName],[AddTime] FROM [dbo].[B_LotteryGlossary] WHERE IsDelete = 0";
  119. }
  120. else {
  121. value = (int)Enum.Parse(typeof(LotteryGlossaryType), type.ToString());
  122. sql =$"SELECT [PK],[Title],[TypeId],[TypeName],[AddTime] FROM [dbo].[B_LotteryGlossary] WHERE IsDelete = 0 AND TypeId={value}";
  123. }
  124. DataTablePagerCache<DataTable> tablePager = null;
  125. string key = $"GetLotteryGlossaryList/{value}/{arg.PageIndex}/{arg.PageSize}";
  126. if (webCache.IsExist(key))
  127. {
  128. tablePager = webCache.GetObject<DataTablePagerCache<DataTable>>(key) as DataTablePagerCache<DataTable>;
  129. }
  130. else
  131. {
  132. DataTable table = commonBll.FindPageDataTable(sql, "AddTime", false, arg.PageSize, arg.PageIndex,
  133. out total);
  134. tablePager = new DataTablePagerCache<DataTable>() { Total = total, Table = table };
  135. webCache.AddObject(key, tablePager, (int)CacheTime.Data);
  136. }
  137. DataTable data = null;
  138. int recordTotal = 0;
  139. if (tablePager != null && tablePager.Table != null)
  140. {
  141. recordTotal = tablePager.Total;
  142. data = tablePager.Table;
  143. }
  144. else
  145. {
  146. data = new DataTable();
  147. }
  148. if (data.IsExistRows())
  149. {
  150. var res = data.DataTableToList<LotteryGlossaryListViewEntity>();
  151. foreach (var item in res)
  152. {
  153. item.TypeCode = type.ToString();
  154. }
  155. var pageData = new PageData<LotteryGlossaryListViewEntity>
  156. {
  157. TotalRow = total,
  158. TotalPage = (int)Math.Floor(total * 1.0 / arg.PageSize) + 1,
  159. PageIndex = arg.PageIndex,
  160. Rows = res
  161. };
  162. resultMsg = new BaseJson4Page<LotteryGlossaryListViewEntity>
  163. {
  164. Status = (int)JsonObjectStatus.Success,
  165. Data = pageData,
  166. Message = JsonObjectStatus.Success.GetEnumText(),
  167. BackUrl = null
  168. };
  169. }
  170. else
  171. {
  172. resultMsg = new BaseJson4Page<LotteryGlossaryListViewEntity>
  173. {
  174. Status = (int)JsonObjectStatus.Success,
  175. Data = null,
  176. Message = JsonObjectStatus.Success.GetEnumText(),
  177. BackUrl = null
  178. };
  179. }
  180. }
  181. else
  182. {
  183. resultMsg = new BaseJson4Page<LotteryGlossaryListViewEntity>
  184. {
  185. Status = (int) JsonObjectStatus.Fail,
  186. Data = null,
  187. Message = JsonObjectStatus.Fail.GetEnumText() + ",无效参数。",
  188. BackUrl = null
  189. };
  190. }
  191. else
  192. resultMsg = new BaseJson4Page<LotteryGlossaryListViewEntity>
  193. {
  194. Status = (int) JsonObjectStatus.Fail,
  195. Data = null,
  196. Message = JsonObjectStatus.Fail.GetEnumText() + ",请求参数为空。",
  197. BackUrl = null
  198. };
  199. }, e =>
  200. {
  201. resultMsg = new BaseJson4Page<LotteryGlossaryListViewEntity>
  202. {
  203. Status = (int) JsonObjectStatus.Exception,
  204. Data = null,
  205. Message = JsonObjectStatus.Exception.GetEnumText() + ",异常信息:" + e.Message,
  206. BackUrl = null
  207. };
  208. });
  209. return resultMsg.TryToJson().ToHttpResponseMessage();
  210. }
  211. }
  212. }