AdminDesktopHomeController.cs 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. using Microsoft.AspNetCore.Mvc;
  2. using NPOI.SS.Formula.Functions;
  3. using WMS.BZModels.Dto;
  4. using WMS.Info;
  5. namespace WMS.BZWeb.Areas.KLHCManager.Controllers
  6. {
  7. [Area("KLHCManager")]
  8. public class AdminDesktopHomeController : MvcControllerBase
  9. {
  10. private readonly AdminDesktopHomeService _adminDesktopHomeService;
  11. private readonly FJDevAlarmInfoService _fJDevAlarmInfoService;
  12. public AdminDesktopHomeController(AdminDesktopHomeService adminDesktopHomeService, FJDevAlarmInfoService fJDevAlarmInfoService)
  13. {
  14. _adminDesktopHomeService = adminDesktopHomeService;
  15. _fJDevAlarmInfoService = fJDevAlarmInfoService;
  16. }
  17. /// <summary>
  18. /// 今日出入库统计
  19. /// </summary>
  20. /// <returns></returns>
  21. public ActionResult GetTodayTaskInOutPie(string bctime, string warehouse)
  22. {
  23. if (string.IsNullOrWhiteSpace(bctime))
  24. {
  25. bctime = "1";
  26. }
  27. var start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 8, 0, 0);
  28. var end = start.AddDays(1);
  29. switch (bctime)
  30. {
  31. case "1":
  32. end = start.AddHours(12);
  33. break;
  34. case "2":
  35. start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 20, 0, 0);
  36. end = start.AddHours(12);
  37. break;
  38. }
  39. var dto = _adminDesktopHomeService.GetTodayTaskInOutPie(start, end, warehouse);
  40. return Success(dto);
  41. }
  42. /// <summary>
  43. /// 近七天任务动态
  44. /// </summary>
  45. /// <returns></returns>
  46. public ActionResult Get7daysTaskBar(string warehouse)
  47. {
  48. var dto = _adminDesktopHomeService.Get7daysTaskBar(DateTime.Now.AddDays(-6), DateTime.Now.AddDays(1), warehouse);
  49. return Success(dto);
  50. }
  51. public ActionResult GettodaysHourTask(string warehouse)
  52. {
  53. var dto = _adminDesktopHomeService.GettodaysHourTask(DateTime.Now, DateTime.Now, warehouse);
  54. return Success(dto);
  55. }
  56. public ActionResult GetHourTask(string warehouse)
  57. {
  58. var dto = _adminDesktopHomeService.GetHourTask(DateTime.Now.AddDays(-1), DateTime.Now, warehouse);
  59. return Success(dto);
  60. }
  61. public ActionResult GetTaskGoodsTypes(string bctime, string warehouse)
  62. {
  63. if (string.IsNullOrWhiteSpace(bctime))
  64. {
  65. bctime = "1";
  66. }
  67. var start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 8, 0, 0);
  68. var end = start.AddDays(1);
  69. switch (bctime)
  70. {
  71. case "1":
  72. end = start.AddHours(12);
  73. break;
  74. case "2":
  75. start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 20, 0, 0);
  76. end = start.AddHours(12);
  77. break;
  78. }
  79. var dto = _adminDesktopHomeService.GetTaskGoodsTypes(start, end, warehouse);
  80. return Success(dto);
  81. }
  82. public ActionResult GetMatWeightCategory(string warehouse)
  83. {
  84. var dto = _adminDesktopHomeService.GetMatWeightCategory(warehouse);
  85. return Success(dto);
  86. }
  87. public ActionResult GetDailyStatistics(string bctime,string begintime,string endtime)
  88. {
  89. var start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 8, 0, 0);
  90. var end = start.AddDays(1);
  91. if (string.IsNullOrEmpty(begintime) || string.IsNullOrEmpty(endtime))
  92. {
  93. if (string.IsNullOrWhiteSpace(bctime))
  94. {
  95. bctime = "1";
  96. }
  97. switch (bctime)
  98. {
  99. case "1":
  100. end = start.AddHours(12);
  101. break;
  102. case "2":
  103. start = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 20, 0, 0);
  104. end = start.AddHours(12);
  105. break;
  106. }
  107. }
  108. else
  109. {
  110. if (!DateTime.TryParse(begintime, out start))
  111. {
  112. start = DateTime.Parse(DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd") + " 08:00:00") ;
  113. }
  114. else
  115. {
  116. start =DateTime.Parse( begintime);
  117. }
  118. if (!DateTime.TryParse(endtime, out end))
  119. {
  120. end= DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " 08:00:00") ;
  121. }
  122. else
  123. {
  124. end = DateTime.Parse(endtime);
  125. }
  126. }
  127. var lists = _adminDesktopHomeService.GetDailyStatistics(InitPagination(""), start, end);
  128. lists.Result.Add( new DailyStatisticsDto
  129. {
  130. WarehouseName = "合计",
  131. TrussNorthQty = lists.Result.Sum(o=>o.TrussNorthQty),
  132. TrussSouthQty = lists.Result.Sum(o => o.TrussSouthQty),
  133. CircularSouthQty = lists.Result.Sum(o => o.CircularSouthQty),
  134. CircularNorthQty = lists.Result.Sum(o => o.CircularNorthQty),
  135. DailySummary = lists.Result.Sum(o => o.DailySummary),
  136. FullNormalQty = lists.Result.Sum(o => o.FullNormalQty),
  137. EmptyAbnormalQty = lists.Result.Sum(o => o.EmptyAbnormalQty),
  138. EmptyAutomaticQty = lists.Result.Sum(o => o.EmptyAutomaticQty),
  139. EmptyWarehouseQty = lists.Result.Sum(o => o.EmptyWarehouseQty),
  140. });
  141. var jsonData = new
  142. {
  143. rows = lists.Result,
  144. total = lists.TotalPage,
  145. page = lists.PageIndex,
  146. records = lists.TotalNum
  147. };
  148. return Success(jsonData);
  149. }
  150. }
  151. }