KsjihController.cs 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412
  1. using CP.Model;
  2. using NIU.Core;
  3. using NIU.Core.Log;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Web;
  8. using System.Web.Mvc;
  9. namespace CP.Admin.Controllers
  10. {
  11. public class KsjihController : AdminBaseController
  12. {
  13. // GET: Ksjih
  14. public ActionResult Index()
  15. {
  16. return View();
  17. }
  18. public ActionResult Edit(string ename = "", int qi = 0)
  19. {
  20. if (qi <= 0)
  21. {
  22. ename = "3d";
  23. ViewBag.qi = "";
  24. ViewBag.data = new KsjihHelp { kjih = "", sjih = "" };
  25. }
  26. else
  27. {
  28. var data = new KsjihHelp();
  29. ViewBag.qi = qi.ToString();
  30. //获取当前期数据
  31. if (ename.Equals("3d"))
  32. {
  33. var one = FcsdData.GetFcsdInfoByQi(qi);
  34. data.kjih = one.kjih.ToString();
  35. data.sjih = one.sjh.ToString();
  36. data.kjh = $"{one.n1},{one.n2},{one.n3}";
  37. }
  38. else if (ename.Equals("p3"))
  39. {
  40. var one = Tcp3Data.GetTcp3InfoByQi(qi);
  41. data.kjih = one.kjih.ToString();
  42. data.sjih = one.sjh.ToString();
  43. }
  44. else if (ename.Equals("p5"))
  45. {
  46. var one = Tcp3Data.GetTcp3InfoByQi(qi);
  47. data.kjh = $"{one.n1},{one.n2},{one.n3},{one.n4},{one.n5}";
  48. }
  49. else if (ename.Equals("ssq"))
  50. {
  51. var one = FcssqData.GetFcssqByQi(qi);
  52. data.kjih = one.kjih;
  53. data.kjh = $"{one.n1},{one.n2},{one.n3},{one.n4},{one.n5},{one.n6},{one.n7}";
  54. }
  55. else if (ename.Equals("dlt"))
  56. {
  57. var one = TcdltData.GetTcdltByQi(qi);
  58. data.kjih = one.kjih;
  59. data.kjh = $"{one.n1},{one.n2},{one.n3},{one.n4},{one.n5},{one.n6},{one.n7}";
  60. }
  61. else if (ename.Equals("qlc"))
  62. {
  63. var one = FcqlcData.GetFcqlcByQi(qi);
  64. data.kjh = $"{one.n1},{one.n2},{one.n3},{one.n4},{one.n5},{one.n6},{one.n7},{one.n8}";
  65. }
  66. else if (ename.Equals("qxc"))
  67. {
  68. var one = TcqxcData.GetTcqxcByQi(qi);
  69. data.kjh = $"{one.n1},{one.n2},{one.n3},{one.n4},{one.n5},{one.n6},{one.n7}";
  70. }
  71. ViewBag.data = data;
  72. }
  73. ViewBag.ename = ename;
  74. return View();
  75. }
  76. [HttpPost]
  77. public JsonResult Edit(string ename, int qi, string ksjihtype, string kjih, string sjih, string kjh, string date)
  78. {
  79. var apiResult = new APIResult();
  80. try
  81. {
  82. if (ename.Equals("3d"))
  83. {
  84. if (ksjihtype.Equals("kjih"))
  85. FcsdData.AddOrUpdateKjih(qi, int.Parse(kjih));
  86. else if (ksjihtype.Equals("sjih"))
  87. FcsdData.AddOrUpdateSjih(qi, int.Parse(sjih));
  88. else if (ksjihtype.Equals("ksjih"))
  89. {
  90. FcsdData.AddOrUpdateKjih(qi, int.Parse(kjih));
  91. FcsdData.AddOrUpdateSjih(qi, int.Parse(sjih));
  92. }
  93. else if (ksjihtype.Equals("kjh"))
  94. {
  95. if (string.IsNullOrWhiteSpace(date))
  96. throw new OperationExceptionFacade("开奖日期不可为空");
  97. var arr = kjh.Replace(',', ',').Split(',');
  98. if (arr.Length != 3)
  99. throw new OperationExceptionFacade("开奖号格式错误");
  100. for (var i = 0; i < arr.Length; i++)
  101. {
  102. var n = 0;
  103. if (!int.TryParse(arr[i], out n))
  104. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  105. if (n < 0 || n > 9)
  106. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  107. }
  108. var model = new FcsdlongInfo()
  109. {
  110. qi = qi,
  111. n1 = int.Parse(arr[0]),
  112. n2 = int.Parse(arr[1]),
  113. n3 = int.Parse(arr[2]),
  114. date = DateTime.Parse(date),
  115. addtime = DateTime.Now,
  116. };
  117. model.step = StepEnum.开奖号;
  118. FcsdData.Add(model);
  119. }
  120. }
  121. else if (ename.Equals("p3"))
  122. {
  123. if (ksjihtype.Equals("kjih"))
  124. Tcp3Data.AddOrUpdateKjih(qi, int.Parse(kjih));
  125. else if (ksjihtype.Equals("sjih"))
  126. Tcp3Data.AddOrUpdateSjih(qi, int.Parse(sjih));
  127. else if (ksjihtype.Equals("ksjih"))
  128. {
  129. Tcp3Data.AddOrUpdateKjih(qi, int.Parse(kjih));
  130. Tcp3Data.AddOrUpdateSjih(qi, int.Parse(sjih));
  131. }
  132. else if (ksjihtype.Equals("kjh"))
  133. {
  134. throw new OperationExceptionFacade("P3开奖号请在P5处操作");
  135. if (string.IsNullOrWhiteSpace(date))
  136. throw new OperationExceptionFacade("开奖日期不可为空");
  137. var arr = kjh.Replace(',', ',').Split(',');
  138. if (arr.Length != 3)
  139. throw new OperationExceptionFacade("开奖号格式错误");
  140. for (var i = 0; i < arr.Length; i++)
  141. {
  142. var n = 0;
  143. if (!int.TryParse(arr[i], out n))
  144. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  145. if (n < 0 || n > 9)
  146. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  147. }
  148. var model = new Tcp3LongInfo()
  149. {
  150. qi = qi,
  151. n1 = int.Parse(arr[0]),
  152. n2 = int.Parse(arr[1]),
  153. n3 = int.Parse(arr[2]),
  154. date = DateTime.Parse(date),
  155. addtime = DateTime.Now,
  156. };
  157. model.p3step = StepEnum.开奖号;
  158. Tcp3Data.Add(model, true);
  159. }
  160. }
  161. else if (ename.Equals("p5"))
  162. {
  163. if (ksjihtype.Equals("kjh"))
  164. {
  165. if (string.IsNullOrWhiteSpace(date))
  166. throw new OperationExceptionFacade("开奖日期不可为空");
  167. var arr = kjh.Replace(',', ',').Split(',');
  168. if (arr.Length != 5)
  169. throw new OperationExceptionFacade("开奖号格式错误");
  170. for (var i = 0; i < arr.Length; i++)
  171. {
  172. var n = 0;
  173. if (!int.TryParse(arr[i], out n))
  174. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  175. if (n < 0 || n > 9)
  176. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  177. }
  178. var model = new Tcp3LongInfo()
  179. {
  180. qi = qi,
  181. n1 = int.Parse(arr[0]),
  182. n2 = int.Parse(arr[1]),
  183. n3 = int.Parse(arr[2]),
  184. n4 = int.Parse(arr[3]),
  185. n5 = int.Parse(arr[4]),
  186. date = DateTime.Parse(date),
  187. addtime = DateTime.Now,
  188. };
  189. model.p5step = StepEnum.开奖号;
  190. Tcp3Data.Add(model, false);
  191. }
  192. }
  193. else if (ename.Equals("ssq"))
  194. {
  195. if (ksjihtype.Equals("kjih"))
  196. FcssqData.AddOrUpdateKjih(qi, kjih);
  197. else if (ksjihtype.Equals("kjh"))
  198. {
  199. if (string.IsNullOrWhiteSpace(date))
  200. throw new OperationExceptionFacade("开奖日期不可为空");
  201. var arr = kjh.Replace(',', ',').Split(',');
  202. if (arr.Length != 7)
  203. throw new OperationExceptionFacade("开奖号格式错误");
  204. for (var i = 0; i < arr.Length; i++)
  205. {
  206. var n = 0;
  207. if (!int.TryParse(arr[i], out n))
  208. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是1-33");
  209. if (n < 1 || n > 33)
  210. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是1-33");
  211. }
  212. var blue = int.Parse(arr[6]);
  213. if (blue < 1 || blue > 16)
  214. throw new OperationExceptionFacade($"蓝球格式错误,必须是1-16");
  215. var model = new FcssqlongInfo()
  216. {
  217. qi = qi,
  218. n1 = int.Parse(arr[0]),
  219. n2 = int.Parse(arr[1]),
  220. n3 = int.Parse(arr[2]),
  221. n4 = int.Parse(arr[3]),
  222. n5 = int.Parse(arr[4]),
  223. n6 = int.Parse(arr[5]),
  224. n7 = int.Parse(arr[6]),
  225. date = DateTime.Parse(date),
  226. addtime = DateTime.Now,
  227. };
  228. model.step = StepEnum.开奖号;
  229. FcssqData.Add(model);
  230. }
  231. }
  232. else if (ename.Equals("dlt"))
  233. {
  234. if (ksjihtype.Equals("kjih"))
  235. TcdltData.AddOrUpdateKjih(qi, kjih);
  236. else if (ksjihtype.Equals("kjh"))
  237. {
  238. if (string.IsNullOrWhiteSpace(date))
  239. throw new OperationExceptionFacade("开奖日期不可为空");
  240. var arr = kjh.Replace(',', ',').Split(',');
  241. if (arr.Length != 7)
  242. throw new OperationExceptionFacade("开奖号格式错误");
  243. for (var i = 0; i < arr.Length; i++)
  244. {
  245. var n = 0;
  246. if (!int.TryParse(arr[i], out n))
  247. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是1-35");
  248. if (n < 1 || n > 35)
  249. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是1-35");
  250. }
  251. var blue1 = int.Parse(arr[5]);
  252. if (blue1 < 1 || blue1 > 12)
  253. throw new OperationExceptionFacade($"蓝球格式错误,必须是1-12");
  254. var blue2 = int.Parse(arr[6]);
  255. if (blue2 < 1 || blue2 > 12)
  256. throw new OperationExceptionFacade($"蓝球格式错误,必须是1-12");
  257. if (blue1 == blue2)
  258. throw new OperationExceptionFacade($"蓝球不可重复");
  259. var model = new TcdltLongInfo()
  260. {
  261. qi = qi,
  262. n1 = int.Parse(arr[0]),
  263. n2 = int.Parse(arr[1]),
  264. n3 = int.Parse(arr[2]),
  265. n4 = int.Parse(arr[3]),
  266. n5 = int.Parse(arr[4]),
  267. n6 = int.Parse(arr[5]),
  268. n7 = int.Parse(arr[6]),
  269. date = DateTime.Parse(date),
  270. addtime = DateTime.Now,
  271. };
  272. model.step = StepEnum.开奖号;
  273. TcdltData.Add(model);
  274. }
  275. }
  276. else if (ename.Equals("qlc"))
  277. {
  278. if (ksjihtype.Equals("kjh"))
  279. {
  280. if (string.IsNullOrWhiteSpace(date))
  281. throw new OperationExceptionFacade("开奖日期不可为空");
  282. var arr = kjh.Replace(',', ',').Split(',');
  283. if (arr.Length != 8)
  284. throw new OperationExceptionFacade("开奖号格式错误");
  285. for (var i = 0; i < arr.Length; i++)
  286. {
  287. var n = 0;
  288. if (!int.TryParse(arr[i], out n))
  289. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是1-30");
  290. if (n < 1 || n > 30)
  291. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是1-30");
  292. }
  293. var blue = int.Parse(arr[7]);
  294. if (blue < 1 || blue > 30)
  295. throw new OperationExceptionFacade($"蓝球格式错误,必须是1-30");
  296. var model = new FcqlcLongInfo()
  297. {
  298. qi = qi,
  299. n1 = int.Parse(arr[0]),
  300. n2 = int.Parse(arr[1]),
  301. n3 = int.Parse(arr[2]),
  302. n4 = int.Parse(arr[3]),
  303. n5 = int.Parse(arr[4]),
  304. n6 = int.Parse(arr[5]),
  305. n7 = int.Parse(arr[6]),
  306. n8 = int.Parse(arr[7]),
  307. date = DateTime.Parse(date),
  308. addtime = DateTime.Now,
  309. };
  310. FcqlcData.UpdateKjh(model);
  311. }
  312. }
  313. else if (ename.Equals("qxc"))
  314. {
  315. if (ksjihtype.Equals("kjh"))
  316. {
  317. if (string.IsNullOrWhiteSpace(date))
  318. throw new OperationExceptionFacade("开奖日期不可为空");
  319. var arr = kjh.Replace(',', ',').Split(',');
  320. if (arr.Length != 7)
  321. throw new OperationExceptionFacade("开奖号格式错误");
  322. for (var i = 0; i < arr.Length; i++)
  323. {
  324. var n = 0;
  325. if (!int.TryParse(arr[i], out n))
  326. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  327. if (n < 0 || n > 9)
  328. throw new OperationExceptionFacade($"第{(i + 1)}位格式错误,必须是0-9");
  329. }
  330. var model = new TcqxcLongInfo()
  331. {
  332. qi = qi,
  333. n1 = int.Parse(arr[0]),
  334. n2 = int.Parse(arr[1]),
  335. n3 = int.Parse(arr[2]),
  336. n4 = int.Parse(arr[3]),
  337. n5 = int.Parse(arr[4]),
  338. n6 = int.Parse(arr[5]),
  339. n7 = int.Parse(arr[6]),
  340. date = DateTime.Parse(date),
  341. addtime = DateTime.Now,
  342. };
  343. TcqxcData.UpdateKjh(model);
  344. }
  345. }
  346. }
  347. catch (Exception ex)
  348. {
  349. apiResult.Ret = -1;
  350. apiResult.Msg = ex.Message;
  351. if (!(ex is OperationExceptionFacade))
  352. LogFactory.GetLogger().Log(LogLevel.Error, ex);
  353. }
  354. return Json(apiResult);
  355. }
  356. public JsonResult GetPager(int page, int rows, string ename)
  357. {
  358. dynamic pager = null;
  359. if (ename.Equals("3d"))
  360. {
  361. var datas = FcsdData.GetPager(page, rows);
  362. pager = new Pager<FcsdlongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  363. }
  364. else if (ename.Equals("ssq"))
  365. {
  366. var datas = FcssqData.GetPager(page, rows);
  367. pager = new Pager<FcssqlongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  368. }
  369. else if (ename.Equals("p3"))
  370. {
  371. var datas = Tcp3Data.GetPager(page, rows);
  372. pager = new Pager<Tcp3LongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  373. }
  374. else if (ename.Equals("p5"))
  375. {
  376. var datas = Tcp3Data.GetPager(page, rows);
  377. pager = new Pager<Tcp3LongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  378. }
  379. else if (ename.Equals("dlt"))
  380. {
  381. var datas = TcdltData.GetPager(page, rows);
  382. pager = new Pager<TcdltLongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  383. }
  384. else if (ename.Equals("qlc"))
  385. {
  386. var datas = FcqlcData.GetPager(page, rows);
  387. pager = new Pager<FcqlcLongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  388. }
  389. else if (ename.Equals("qxc"))
  390. {
  391. var datas = TcqxcData.GetPager(page, rows);
  392. pager = new Pager<TcqxcLongInfo>() { total = (int)datas.TotalItems, rows = datas.Items };
  393. }
  394. return Json(pager);
  395. }
  396. }
  397. public class KsjihHelp
  398. {
  399. public string kjih { set; get; }
  400. public string sjih { set; get; }
  401. public string kjh { set; get; }
  402. }
  403. }