QGFC3DService.cs 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. using Lottomat.Application.Entity.LotteryNumberManage;
  2. using Lottomat.Application.IService.LotteryNumberManage;
  3. using Lottomat.Data.Repository;
  4. using Lottomat.Util.WebControl;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using Lottomat.Application.Code;
  8. using Lottomat.Application.Entity.PublicInfoManage;
  9. using Lottomat.Util.Extension;
  10. using Lottomat.Utils.Date;
  11. using Newtonsoft.Json.Linq;
  12. namespace Lottomat.Application.Service.LotteryNumberManage
  13. {
  14. /// <summary>
  15. /// 版 本 1.0
  16. /// Copyright (c) 2016-2017
  17. /// 创 建:超级管理员
  18. /// 日 期:2017-11-17 12:51
  19. /// 描 述:全国彩-福彩3D
  20. /// </summary>
  21. public class QGFC3DService : RepositoryFactory<QGFC3DEntity>, IQGFC3DService
  22. {
  23. #region 获取数据
  24. /// <summary>
  25. /// 获取列表
  26. /// </summary>
  27. /// <param name="pagination">分页</param>
  28. /// <param name="queryJson">查询参数</param>
  29. /// <returns>返回分页列表</returns>
  30. public IEnumerable<QGFC3DEntity> GetPageList(Pagination pagination, string queryJson)
  31. {
  32. var expression = LinqExtensions.True<QGFC3DEntity>();
  33. JObject queryParam = queryJson.ToJObject();
  34. if (queryParam != null)
  35. {
  36. if (!queryParam["Term"].IsEmpty())
  37. {
  38. int Term = queryParam["Term"].TryToInt32();
  39. expression = expression.And(t => t.Term == Term);
  40. }
  41. }
  42. return this.BaseRepository(DatabaseLinksEnum.LotteryNumber).FindList(expression, pagination);
  43. }
  44. /// <summary>
  45. /// 获取列表
  46. /// </summary>
  47. /// <param name="queryJson">查询参数</param>
  48. /// <returns>返回列表</returns>
  49. public IEnumerable<QGFC3DEntity> GetList(string queryJson)
  50. {
  51. return this.BaseRepository(DatabaseLinksEnum.LotteryNumber).IQueryable().ToList();
  52. }
  53. /// <summary>
  54. /// 获取实体
  55. /// </summary>
  56. /// <param name="keyValue">主键值</param>
  57. /// <returns></returns>
  58. public QGFC3DEntity GetEntity(string keyValue)
  59. {
  60. return this.BaseRepository(DatabaseLinksEnum.LotteryNumber).FindEntity(keyValue);
  61. }
  62. /// <summary>
  63. /// 获取最新一期期数
  64. /// </summary>
  65. /// <returns></returns>
  66. public string GetNewTerm(string type)
  67. {
  68. string sql = GetSql(type);
  69. var data = this.BaseRepository(DatabaseLinksEnum.LotteryNumber).FindList(sql).ToList();
  70. if (data.Count > 0)
  71. return ((data[0].Term ?? 0) + 1).ToString();
  72. return DateTimeHelper.Now.Year + "";
  73. }
  74. /// <summary>
  75. /// 根据表名获取最新一期期数
  76. /// </summary>
  77. /// <returns></returns>
  78. public string GetNewTermByTableName(string tablename)
  79. {
  80. string sql = @"SELECT TOP 1 [ID],[Term] FROM [dbo].[{0}] ORDER BY Term DESC";
  81. sql = string.Format(sql, tablename);
  82. var data = this.BaseRepository(DatabaseLinksEnum.LotteryNumber).FindList(sql).ToList();
  83. if (data.Count > 0)
  84. return ((data[0].Term ?? 0) + 1).ToString();
  85. return DateTimeHelper.Now.Year + "";
  86. }
  87. /// <summary>
  88. /// 组装sql语句
  89. /// </summary>
  90. /// <param name="type"></param>
  91. /// <returns></returns>
  92. private string GetSql(string type)
  93. {
  94. string sql = @"SELECT TOP 1 [ID],[Term] FROM [dbo].[{0}] ORDER BY Term DESC";
  95. switch (type)
  96. {
  97. #region 全国彩
  98. case "fc3d":
  99. sql = string.Format(sql, SCCLottery.FC3D.GetSCCLotteryTableName());
  100. break;
  101. case "fcssq":
  102. sql = string.Format(sql, SCCLottery.SSQ.GetSCCLotteryTableName());
  103. break;
  104. case "fcqlc":
  105. sql = string.Format(sql, SCCLottery.QLC.GetSCCLotteryTableName());
  106. break;
  107. case "pl3":
  108. sql = string.Format(sql, SCCLottery.PL3.GetSCCLotteryTableName());
  109. break;
  110. case "pl5":
  111. sql = string.Format(sql, SCCLottery.PL5.GetSCCLotteryTableName());
  112. break;
  113. case "dlt":
  114. sql = string.Format(sql, SCCLottery.DLT.GetSCCLotteryTableName());
  115. break;
  116. case "qxc":
  117. sql = string.Format(sql, SCCLottery.QXC.GetSCCLotteryTableName());
  118. break;
  119. #endregion
  120. #region 地方彩
  121. case "DFFC25x5AnHui"://安徽25选5
  122. sql = string.Format(sql, SCCLottery.AnHui25x5.GetSCCLotteryTableName());
  123. break;
  124. case "DFDF6J1"://东方6+1
  125. sql = string.Format(sql, SCCLottery.DF6J1.GetSCCLotteryTableName());
  126. break;
  127. case "DFTC22x5FuJian"://福建体彩22选5
  128. sql = string.Format(sql, SCCLottery.FuJian22x5.GetSCCLotteryTableName());
  129. break;
  130. case "DFTC36x7FuJian"://福建体彩36选7
  131. sql = string.Format(sql, SCCLottery.FuJianTC36x7.GetSCCLotteryTableName());
  132. break;
  133. case "DF26x5GuangDong"://广东26选5
  134. sql = string.Format(sql, SCCLottery.GuangDong26X5.GetSCCLotteryTableName());
  135. break;
  136. case "DF36x7GuangDong"://广东36选7
  137. sql = string.Format(sql,SCCLottery.GuangDong36x7.GetSCCLotteryTableName());
  138. break;
  139. case "DFHC1GuangDong"://广东好彩1
  140. sql = string.Format(sql, SCCLottery.GuangDongHC1.GetSCCLotteryTableName());
  141. break;
  142. case "DFSZFCGuangDong"://广东深圳风采35选7
  143. sql = string.Format(sql,SCCLottery.GuangDongSZFC.GetSCCLotteryTableName());
  144. break;
  145. case "DFKLSCGuangXi"://广西快乐双彩
  146. sql = string.Format(sql, SCCLottery.GuangXiKLSC.GetSCCLotteryTableName());
  147. break;
  148. case "DFHD15x5"://华东15选5
  149. sql = string.Format(sql, SCCLottery.HD15X5.GetSCCLotteryTableName());
  150. break;
  151. case "DFLJFC22x5HeiLongJiang"://黑龙江25选5
  152. sql = string.Format(sql, SCCLottery.HeiLongJiangLJFC22x5.GetSCCLotteryTableName());
  153. break;
  154. case "DFTC6J1HeiLongJiang"://黑龙江体彩6+1
  155. sql = string.Format(sql, SCCLottery.HeiLongJiangTC6J1.GetSCCLotteryTableName());
  156. break;
  157. case "DFTC7WSJiangSu"://江苏7位数
  158. //sql = string.Format(sql, "DF_TC7WS_JiangSu");
  159. sql = string.Format(sql, SCCLottery.JiangSuTC7WS.GetSCCLotteryTableName());
  160. break;
  161. case "DF35x7LiaoNing"://辽宁35选7
  162. sql = string.Format(sql, SCCLottery.LiaoNingFC35X7.GetSCCLotteryTableName());
  163. break;
  164. case "DFTTCx4ShangHai"://上海天天彩选4
  165. sql = string.Format(sql, SCCLottery.ShangHaiTTCX4.GetSCCLotteryTableName());
  166. break;
  167. case "DF18x7XinJiang"://新疆18选7
  168. sql = string.Format(sql, SCCLottery.XinJiangFC18X7.GetSCCLotteryTableName());
  169. break;
  170. case "DF25x7XinJiang"://新疆25选7
  171. sql = string.Format(sql, SCCLottery.XinJiangFC25X7.GetSCCLotteryTableName());
  172. break;
  173. case "DF35x7XinJiang"://新疆35选7
  174. sql = string.Format(sql, SCCLottery.XinJiangFC35X7.GetSCCLotteryTableName());
  175. break;
  176. case "DF20x5HeBei"://河北20选5
  177. sql = string.Format(sql,SCCLottery.HeBei20X5.GetSCCLotteryTableName());
  178. break;
  179. case "DFHYC2HeBei"://河北好彩2
  180. sql = string.Format(sql, SCCLottery.HeBeiHYC2.GetSCCLotteryTableName());
  181. break;
  182. case "DFHYC3HeBei"://河北好彩3
  183. sql = string.Format(sql, SCCLottery.HeBeiHYC3.GetSCCLotteryTableName());
  184. break;
  185. case "DFPL5HeBei"://河北排列5
  186. sql = string.Format(sql,SCCLottery.HeBeiPL5.GetSCCLotteryTableName());
  187. break;
  188. case "DFPL7HeBei"://河北排列7
  189. sql = string.Format(sql, SCCLottery.HeBeiPL7.GetSCCLotteryTableName());
  190. break;
  191. case "DF22x5HeNan"://河南22选5
  192. sql = string.Format(sql, SCCLottery.HeNan22X5.GetSCCLotteryTableName());
  193. break;
  194. case "DFSMHLHCHongKong"://香港六合彩
  195. sql = string.Format(sql, SCCLottery.HongKongSMHLHC.GetSCCLotteryTableName());
  196. break;
  197. case "DF30x5HuBei"://湖北30选5
  198. sql = string.Format(sql, SCCLottery.HuBei30X5.GetSCCLotteryTableName());
  199. break;
  200. case "DF6J1ZheJiang"://浙江6+1
  201. sql = string.Format(sql, SCCLottery.ZheJiang6J1.GetSCCLotteryTableName());
  202. break;
  203. case "DF31x7FuJian"://福建31选7
  204. sql = string.Format(sql, SCCLottery.FuJian31x7.GetSCCLotteryTableName());
  205. break;
  206. case "DF20x5ZheJiang"://浙江20选5
  207. sql = string.Format(sql, SCCLottery.ZheJiang20x5.GetSCCLotteryTableName());
  208. break;
  209. case "DF4J1HaiNan"://海南4+1
  210. sql = string.Format(sql, SCCLottery.HaiNan4J1.GetSCCLotteryTableName());
  211. break;
  212. case "DFP62HeiLongJiang"://黑龙江P62
  213. sql = string.Format(sql, SCCLottery.HeiLongJiangP62.GetSCCLotteryTableName());
  214. break;
  215. case "DF36x7HeiLongJiang"://黑龙江36选7
  216. sql = string.Format(sql, SCCLottery.HeiLongJiang36x7.GetSCCLotteryTableName());
  217. break;
  218. #endregion
  219. }
  220. return sql;
  221. }
  222. #endregion
  223. #region 提交数据
  224. /// <summary>
  225. /// 删除数据
  226. /// </summary>
  227. /// <param name="keyValue">主键</param>
  228. public void RemoveForm(string keyValue)
  229. {
  230. this.BaseRepository(DatabaseLinksEnum.LotteryNumber).Delete(keyValue);
  231. }
  232. /// <summary>
  233. /// 保存表单(新增、修改)
  234. /// </summary>
  235. /// <param name="keyValue">主键值</param>
  236. /// <param name="entity">实体对象</param>
  237. /// <returns></returns>
  238. public void SaveForm(string keyValue, QGFC3DEntity entity, string isCheck)
  239. {
  240. if (!string.IsNullOrEmpty(keyValue))
  241. {
  242. if (isCheck == "1")
  243. {
  244. entity.IsChecked = true;
  245. entity.IsPassed = true;
  246. }
  247. entity.Modify(keyValue);
  248. this.BaseRepository(DatabaseLinksEnum.LotteryNumber).Update(entity);
  249. }
  250. else
  251. {
  252. entity.Create();
  253. this.BaseRepository(DatabaseLinksEnum.LotteryNumber).Insert(entity);
  254. }
  255. }
  256. #endregion
  257. }
  258. }