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.

Ass_AssetsInfoItemController.cs 15 KiB

4 years ago
4 years ago
3 years ago
4 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364
  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. using Learun.Application.Base.SystemModule;
  9. using Learun.Application.Organization;
  10. namespace Learun.Application.Web.Areas.AssetManagementSystem.Controllers
  11. {
  12. /// <summary>
  13. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  14. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  15. /// 创 建:超级管理员
  16. /// 日 期:2019-03-29 11:27
  17. /// 描 述:在册登记明细
  18. /// </summary>
  19. public class Ass_AssetsInfoItemController : MvcControllerBase
  20. {
  21. private Ass_AssetsInfoItemIBLL ass_AssetsInfoItemIBLL = new Ass_AssetsInfoItemBLL();
  22. private DataItemIBLL dataItemIBLL = new DataItemBLL();
  23. private DataSourceIBLL dataSourceIBLL = new DataSourceBLL();
  24. private DepartmentIBLL departmentIBLL = new DepartmentBLL();
  25. private UserIBLL userIBLL = new UserBLL();
  26. private Ass_AssetsTypeIBLL ass_AssetsTypeIBLL = new Ass_AssetsTypeBLL();
  27. #region 视图功能
  28. /// <summary>
  29. /// 主页面
  30. /// <summary>
  31. /// <returns></returns>
  32. [HttpGet]
  33. public ActionResult Index()
  34. {
  35. return View();
  36. }
  37. /// <summary>
  38. /// 主页面
  39. /// <summary>
  40. /// <returns></returns>
  41. [HttpGet]
  42. public ActionResult IndexTwo()
  43. {
  44. return View();
  45. }
  46. [HttpGet]
  47. public ActionResult IndexOfMy()
  48. {
  49. return View();
  50. }
  51. /// <summary>
  52. /// 表单页
  53. /// <summary>
  54. /// <returns></returns>
  55. [HttpGet]
  56. public ActionResult Form()
  57. {
  58. ViewBag.NewCode = CommonHelper.CreateNo();
  59. return View();
  60. }
  61. [HttpGet]
  62. public ActionResult FormView()
  63. {
  64. return View();
  65. }
  66. [HttpGet]
  67. public ActionResult IndexScrap()
  68. {
  69. return View();
  70. }
  71. [HttpGet]
  72. public ActionResult QRPrint()
  73. {
  74. return View();
  75. }
  76. #endregion
  77. #region 获取数据
  78. /// <summary>
  79. /// 获取页面显示列表数据
  80. /// <summary>
  81. /// <param name="queryJson">查询参数</param>
  82. /// <returns></returns>
  83. [HttpGet]
  84. [AjaxOnly]
  85. public ActionResult GetPageList(string pagination, string queryJson)
  86. {
  87. Pagination paginationobj = pagination.ToObject<Pagination>();
  88. var data = ass_AssetsInfoItemIBLL.GetPageList(paginationobj, queryJson);
  89. var jsonData = new
  90. {
  91. rows = data,
  92. total = paginationobj.total,
  93. page = paginationobj.page,
  94. records = paginationobj.records
  95. };
  96. return Success(jsonData);
  97. }
  98. /// <summary>
  99. /// 导出
  100. /// <summary>
  101. /// <param name="queryJson">查询参数</param>
  102. /// <returns></returns>
  103. [HttpPost, ValidateInput(false)]
  104. public ActionResult ExportList(string queryJson)
  105. {
  106. var exportTable = ass_AssetsInfoItemIBLL.GetExportList(queryJson);
  107. //exportTable.Columns.Add("REnabledName", typeof(string));
  108. //exportTable.Columns.Add("AIASSStateName", typeof(string));
  109. var dataItem_REnabled = dataItemIBLL.GetDetailList("RoomState");
  110. var dataItem_sldw = dataItemIBLL.GetDetailList("sldw");
  111. var dataItem_AssState = dataItemIBLL.GetDetailList("AssState");
  112. var departmentList = departmentIBLL.GetAllList();
  113. var userList = userIBLL.GetAllList();
  114. var ass_AssetsTypeList = ass_AssetsTypeIBLL.GetAllList();
  115. var dataSourceEntity = dataSourceIBLL.GetEntityByCode("BaseUser");
  116. for (int i = 0; i < exportTable.Rows.Count; i++)
  117. {
  118. var REnabled = exportTable.Rows[i]["REnabled"];
  119. if (REnabled != null && !string.IsNullOrEmpty(REnabled.ToString()))
  120. {
  121. exportTable.Rows[i]["renabledname"] = dataItem_REnabled.Where(x => x.F_ItemValue == REnabled.ToString()).FirstOrDefault()?.F_ItemName;
  122. }
  123. var AIUnits = exportTable.Rows[i]["AIUnits"];
  124. if (AIUnits != null && !string.IsNullOrEmpty(AIUnits.ToString()))
  125. {
  126. exportTable.Rows[i]["AIUnits"] = dataItem_sldw.FirstOrDefault(x => x.F_ItemValue == AIUnits.ToString())?.F_ItemName;
  127. }
  128. var AIASSState = exportTable.Rows[i]["AIASSState"];
  129. if (AIASSState != null && !string.IsNullOrEmpty(AIASSState.ToString()))
  130. {
  131. exportTable.Rows[i]["AIASSStateName"] = dataItem_AssState.FirstOrDefault(x => x.F_ItemValue == AIASSState.ToString())?.F_ItemName;
  132. }
  133. var AIDepartment = exportTable.Rows[i]["AIDepartment"];
  134. if (AIDepartment != null && !string.IsNullOrEmpty(AIDepartment.ToString()))
  135. {
  136. exportTable.Rows[i]["AIDepartment"] =
  137. departmentList.FirstOrDefault(x => x.F_DepartmentId == AIDepartment.ToString())?.F_FullName;
  138. }
  139. var AIUsePeople = exportTable.Rows[i]["AIUsePeople"];
  140. if (AIUsePeople != null && !string.IsNullOrEmpty(AIUsePeople.ToString()))
  141. {
  142. exportTable.Rows[i]["AIUsePeople"] = userList.Where(x=>x.F_UserId== AIUsePeople.ToString()).FirstOrDefault()?.F_RealName;
  143. }
  144. var AIASSClass = exportTable.Rows[i]["AIASSClass"];
  145. if (AIASSClass != null && !string.IsNullOrEmpty(AIASSClass.ToString()))
  146. {
  147. exportTable.Rows[i]["AIASSClass"] = ass_AssetsTypeList.Where(x => x.ATId == AIASSClass.ToString()).FirstOrDefault()?.AName;
  148. }
  149. }
  150. departmentList = null;
  151. //设置导出格式
  152. ExcelConfig excelconfig = new ExcelConfig();
  153. //excelconfig.Title = " 资产数据";
  154. excelconfig.TitleFont = "微软雅黑";
  155. excelconfig.TitlePoint = 20;
  156. excelconfig.FileName = "在册登记资产数据导出.xls";
  157. excelconfig.IsAllSizeColumn = true;
  158. excelconfig.ColumnEntity = new List<ColumnModel>();
  159. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aicodenumjy", ExcelColumn = "资产编号" });
  160. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiistoragename", ExcelColumn = "楼宇名称" });
  161. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "rcode", ExcelColumn = "房间号" });
  162. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "rfunction", ExcelColumn = "房间功能" });
  163. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "rarea", ExcelColumn = "房间面积" });
  164. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "renabledname", ExcelColumn = "房间状态" });
  165. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiassname", ExcelColumn = "资产名称" });
  166. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiassclass", ExcelColumn = "资产分类" });
  167. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aispecification", ExcelColumn = "资产品牌" });
  168. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aispecificationtype", ExcelColumn = "规格型号" });
  169. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiunits", ExcelColumn = "计量单位" });
  170. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiassstatename", ExcelColumn = "资产状态" });
  171. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aidepartment", ExcelColumn = "管理部门" });
  172. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiusepeople", ExcelColumn = "使用人" });
  173. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiplace", ExcelColumn = "存放地点" });
  174. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiassvalue", ExcelColumn = "资产原价值" });
  175. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiaddtime", ExcelColumn = "入账日期" });
  176. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "airemark", ExcelColumn = "备注" });
  177. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "depreciationmethod", ExcelColumn = "折旧方法" });
  178. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "depreciationstatus", ExcelColumn = "折旧状态" });
  179. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "usefullife", ExcelColumn = "折旧年限" });
  180. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "monthlydepreciation", ExcelColumn = "月折旧额" });
  181. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "monthsofdepreciation", ExcelColumn = "已提折旧月数" });
  182. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "monthlydepreciationrate", ExcelColumn = "月折旧率" });
  183. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "accumulateddepreciation", ExcelColumn = "累计折旧" });
  184. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "networth", ExcelColumn = "净值" });
  185. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "vehiclelicenseuser", ExcelColumn = "车辆行驶证所有人" });
  186. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aivehiclenumber", ExcelColumn = "车辆识别号" });
  187. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiplatenumber", ExcelColumn = "车牌号" });
  188. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aibuiltarea", ExcelColumn = "面积" });
  189. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "aiownership", ExcelColumn = "权属证号" });
  190. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "landusetype", ExcelColumn = "土地使用权类型" });
  191. excelconfig.ColumnEntity.Add(new ColumnModel() { Column = "landuseuser", ExcelColumn = "土地使用权人/房屋所有权人" });
  192. //调用导出方法
  193. ExcelHelper.ExcelDownload(exportTable, excelconfig);
  194. return Success("导出成功");
  195. }
  196. /// <summary>
  197. /// 获取左侧树形数据
  198. /// <summary>
  199. /// <returns></returns>
  200. [HttpGet]
  201. [AjaxOnly]
  202. public ActionResult GetTree()
  203. {
  204. var data = ass_AssetsInfoItemIBLL.GetTree();
  205. return Success(data);
  206. }
  207. /// <summary>
  208. /// 获取资产类别树
  209. /// <summary>
  210. /// <returns></returns>
  211. [HttpGet]
  212. [AjaxOnly]
  213. public ActionResult GetTypeTree()
  214. {
  215. var data = ass_AssetsInfoItemIBLL.GetAssTypeTree();
  216. return Success(data);
  217. }
  218. /// <summary>
  219. /// 获取列表不带分页
  220. /// </summary>
  221. /// <param name="queryJson"></param>
  222. /// <returns></returns>
  223. [HttpGet]
  224. [AjaxOnly]
  225. public ActionResult GetList(string queryJson)
  226. {
  227. var data = ass_AssetsInfoItemIBLL.GetList(queryJson);
  228. return Success(data);
  229. }
  230. /// <summary>
  231. /// 获取表单数据
  232. /// <summary>
  233. /// <returns></returns>
  234. [HttpGet]
  235. [AjaxOnly]
  236. public ActionResult GetFormData(string keyValue)
  237. {
  238. if (!keyValue.Contains(","))
  239. {
  240. var Ass_AssetsInfoItemData = ass_AssetsInfoItemIBLL.GetAss_AssetsInfoItemEntity(keyValue);
  241. var jsonData = new
  242. {
  243. Ass_AssetsInfoItem = Ass_AssetsInfoItemData,
  244. };
  245. return Success(jsonData);
  246. }
  247. else
  248. {
  249. var Ass_AssetsInfoItemData = ass_AssetsInfoItemIBLL.GetDatas(keyValue);
  250. var jsonData = new
  251. {
  252. Ass_AssetsInfoItem = Ass_AssetsInfoItemData,
  253. };
  254. return Success(jsonData);
  255. }
  256. }
  257. /// <summary>
  258. /// 获取表单数据
  259. /// <summary>
  260. /// <returns></returns>
  261. [HttpGet]
  262. [AjaxOnly]
  263. public ActionResult GetData(string keyValue)
  264. {
  265. var result = ass_AssetsInfoItemIBLL.GetAss_AssetsInfoByAIId(keyValue);
  266. return Success(result);
  267. }
  268. /// <summary>
  269. /// 获取表单数据
  270. /// <summary>
  271. /// <returns></returns>
  272. [HttpGet]
  273. [AjaxOnly]
  274. public ActionResult GetDatas(string keyValue)
  275. {
  276. var result = ass_AssetsInfoItemIBLL.GetDatas(keyValue);
  277. List<Ass_ScrapItemEntity> list = new List<Ass_ScrapItemEntity>();
  278. foreach (var item in result)
  279. {
  280. var entity = new Ass_ScrapItemEntity();
  281. entity.AAIAId = item.AIId;
  282. entity.AAICode = item.AICode;
  283. entity.AAIName = item.AIASSName;
  284. entity.AAIStorage = item.AIIStorageId;
  285. entity.AAILocation = item.AIIStoragePosition;
  286. entity.AAITId = item.AIASSClass;
  287. entity.AAIModel = item.AISpecificationtype;
  288. entity.AAIManufacturer = item.AIBrand;
  289. entity.AAIContent = item.AIAssValue.ToString();
  290. list.Add(entity);
  291. }
  292. return Success(list);
  293. }
  294. #endregion
  295. #region 提交数据
  296. /// <summary>
  297. /// 删除实体数据
  298. /// <param name="keyValue">主键</param>
  299. /// <summary>
  300. /// <returns></returns>
  301. [HttpPost]
  302. [AjaxOnly]
  303. public ActionResult DeleteForm(string keyValue)
  304. {
  305. ass_AssetsInfoItemIBLL.DeleteEntity(keyValue);
  306. return Success("删除成功!");
  307. }
  308. [HttpPost]
  309. [AjaxOnly]
  310. public ActionResult ScrapForm(string keyValue)
  311. {
  312. ass_AssetsInfoItemIBLL.ScrapEntity(keyValue);
  313. return Success("报废成功!");
  314. }
  315. [HttpPost]
  316. [AjaxOnly]
  317. public ActionResult UnScrapForm(string keyValue)
  318. {
  319. ass_AssetsInfoItemIBLL.UnScrap(keyValue);
  320. return Success("报废成功!");
  321. }
  322. /// <summary>
  323. /// 保存实体数据(新增、修改)
  324. /// <param name="keyValue">主键</param>
  325. /// <summary>
  326. /// <returns></returns>
  327. [HttpPost]
  328. [ValidateAntiForgeryToken]
  329. [AjaxOnly]
  330. public ActionResult SaveForm(string keyValue, string strEntity)
  331. {
  332. Ass_AssetsInfoItemEntity entity = strEntity.ToObject<Ass_AssetsInfoItemEntity>();
  333. ass_AssetsInfoItemIBLL.SaveEntity(keyValue, entity);
  334. return Success("保存成功!");
  335. }
  336. #endregion
  337. }
  338. }