You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

149 lines
5.0 KiB

  1. using System;
  2. using Learun.Util;
  3. using System.Data;
  4. using Learun.Application.TwoDevelopment.AssetManagementSystem;
  5. using System.Web.Mvc;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. namespace Learun.Application.Web.Areas.AssetManagementSystem.Controllers
  9. {
  10. /// <summary>
  11. /// 版 本 Learun-ADMS-Ultimate V7.0.0 力软敏捷开发框架
  12. /// Copyright (c) 2013-2018 上海力软信息技术有限公司
  13. /// 创 建:超级管理员
  14. /// 日 期:2019-09-11 10:35
  15. /// 描 述:资产报废
  16. /// </summary>
  17. public class AssReportController : MvcControllerBase
  18. {
  19. #region 视图功能
  20. Ass_AssetsInfoApplyIBLL assAssetsInfoApplyIbll = new Ass_AssetsInfoApplyBLL();
  21. Ass_AssetsTypeIBLL assAssetsTypeIbll = new Ass_AssetsTypeBLL();
  22. Ass_AssetsInfoIBLL assAssetsInfoIbll = new Ass_AssetsInfoBLL();
  23. Ass_AssetsInfoItemIBLL assAssetsInfoItemIbll = new Ass_AssetsInfoItemBLL();
  24. /// <summary>
  25. /// 主页面
  26. /// <summary>
  27. /// <returns></returns>
  28. [HttpGet]
  29. public ActionResult AssAddReport()
  30. {
  31. return View();
  32. }
  33. [HttpGet]
  34. public ActionResult AssTypeReport()
  35. {
  36. return View();
  37. }
  38. [HttpGet]
  39. public ActionResult AssStatusReport()
  40. {
  41. return View();
  42. }
  43. #endregion
  44. #region 获取数据
  45. public ActionResult AssAddReportData()
  46. {
  47. var data = assAssetsInfoApplyIbll.AssAddReportData();
  48. var list = data.GroupBy(a => a.AACreateTime.Value.Year).Select(a => new { a.Key, price = a.Sum(b => b.AAPrice) });
  49. var name = list.Select(a => a.Key);
  50. var value = list.Select(a => a.price);
  51. return Success(new { name, value });
  52. }
  53. [HttpGet]
  54. public ActionResult AssAddReportList()
  55. {
  56. var data = assAssetsInfoApplyIbll.AssAddReportData();
  57. var list = data.GroupBy(a => a.AACreateTime.Value.Year).Select(a => new { name = a.Key, value = a.Sum(b => b.AAPrice) });
  58. return JsonResult(list);
  59. }
  60. public ActionResult AssTypeData()
  61. {
  62. var data = assAssetsInfoIbll.GetList("{\"a\":\"false\"}");
  63. var list = data.GroupBy(a => a.ATId).Select(a => new { a.Key, price = a.Sum(b => b.APrice * b.AStock) }).ToList();
  64. List<object> list2 = new List<object>();
  65. List<String> list1 = new List<String>();
  66. foreach (var item in list)
  67. {
  68. if (!string.IsNullOrEmpty(item.Key))
  69. {
  70. var name = assAssetsTypeIbll.GetAss_AssetsTypeEntity(item.Key).AName;
  71. list2.Add(new { name = name, value = item.price });
  72. list1.Add(name);
  73. }
  74. }
  75. return Success(new { list1, list2 });
  76. }
  77. [HttpGet]
  78. public ActionResult AssTypeList()
  79. {
  80. var data = assAssetsInfoIbll.GetList("{\"a\":\"false\"}");
  81. var list = data.GroupBy(a => a.ATId).Select(a => new { a.Key, price = a.Sum(b => b.APrice * b.AStock), num = a.Sum(b => b.AStock) }).ToList();
  82. List<object> list2 = new List<object>();
  83. foreach (var item in list)
  84. {
  85. if (!string.IsNullOrEmpty(item.Key))
  86. {
  87. var name = assAssetsTypeIbll.GetAss_AssetsTypeEntity(item.Key).AName;
  88. list2.Add(new { name = name, value = item.price, num = item.num });
  89. }
  90. }
  91. return JsonResult(list2);
  92. }
  93. public ActionResult AssStatusData()
  94. {
  95. List<Ass_AssetsInfoItemEntity> data = assAssetsInfoItemIbll.GetLists("{\"a\":\"false\"}").ToList();
  96. var list = data.GroupBy(a => a.AIASSState==2).Select(a => new { a.Key, price = a.Sum(b => b.AIAssValue), num = a.Count() }).ToList();
  97. List<object> list2 = new List<object>();
  98. List<String> list1 = new List<String>();
  99. foreach (var item in list)
  100. {
  101. var name = item.Key == true ? "待报废" : "正常使用";
  102. list2.Add(new { name = name, value = item.price });
  103. list1.Add(name);
  104. }
  105. return Success(new { list1, list2 });
  106. }
  107. [HttpGet]
  108. public ActionResult AssStatusList()
  109. {
  110. List<Ass_AssetsInfoItemEntity> data = assAssetsInfoItemIbll.GetLists("{\"a\":\"false\"}").ToList();
  111. var list =data.GroupBy(a => a.AIASSState == 2).Select(a => new { a.Key, price = a.Sum(b => b.AIAssValue), num = a.Count() }).ToList();
  112. List<object> list2 = new List<object>();
  113. foreach (var item in list)
  114. {
  115. var name = item.Key == true ? "待报废" : "正常使用";
  116. list2.Add(new { name = name, value = item.price, num = item.num });
  117. }
  118. return JsonResult(list2);
  119. }
  120. #endregion
  121. }
  122. }