Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 
 

342 lignes
11 KiB

  1. using Learun.Util;
  2. using System.Data;
  3. using Learun.Application.TwoDevelopment.AssetManagementSystem;
  4. using System.Web.Mvc;
  5. using System.Collections.Generic;
  6. using ZipOneCode.ZipProvider;
  7. using System.Linq;
  8. using System.Drawing;
  9. using System.IO;
  10. using System;
  11. namespace Learun.Application.Web.Areas.AssetManagementSystem.Controllers
  12. {
  13. /// <summary>
  14. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  15. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  16. /// 创 建:超级管理员
  17. /// 日 期:2019-03-29 11:27
  18. /// 描 述:在册登记明细
  19. /// </summary>
  20. public class Ass_AssetsInfoItemController : MvcControllerBase
  21. {
  22. private Ass_AssetsInfoItemIBLL ass_AssetsInfoItemIBLL = new Ass_AssetsInfoItemBLL();
  23. #region 视图功能
  24. /// <summary>
  25. /// 主页面
  26. /// <summary>
  27. /// <returns></returns>
  28. [HttpGet]
  29. public ActionResult Index()
  30. {
  31. return View();
  32. }
  33. /// <summary>
  34. /// 主页面
  35. /// <summary>
  36. /// <returns></returns>
  37. [HttpGet]
  38. public ActionResult IndexTwo()
  39. {
  40. return View();
  41. }
  42. [HttpGet]
  43. public ActionResult IndexOfMy()
  44. {
  45. return View();
  46. }
  47. /// <summary>
  48. /// 表单页
  49. /// <summary>
  50. /// <returns></returns>
  51. [HttpGet]
  52. public ActionResult Form()
  53. {
  54. ViewBag.NewCode = CommonHelper.CreateNo();
  55. return View();
  56. }
  57. [HttpGet]
  58. public ActionResult FormView()
  59. {
  60. return View();
  61. }
  62. [HttpGet]
  63. public ActionResult IndexScrap()
  64. {
  65. return View();
  66. }
  67. [HttpGet]
  68. public ActionResult QRPrint(string keyValue)
  69. {
  70. var lists = new List<Ass_AssetsInfoItemEntity>();
  71. if (!string.IsNullOrEmpty(keyValue))
  72. {
  73. foreach (var item in keyValue.Split(','))
  74. {
  75. var entity = ass_AssetsInfoItemIBLL.GetAss_AssetsInfoItemEntity(item);
  76. if (entity != null)
  77. {
  78. lists.Add(entity);
  79. //读图片
  80. var d = QRCodeHelper.ProcessRequest(entity.AIId, @"~\Content\images\img1.png", "在册登记明细", entity.AIASSName + entity.AICode);
  81. FileStream fs = new FileStream(d.resultImgPath, FileMode.Open, FileAccess.Read);
  82. int length = (int)fs.Length;
  83. byte[] image = new byte[length];
  84. fs.Read(image, 0, length);
  85. var src = "data:image/jepg;base64," + Convert.ToBase64String(image);
  86. entity.ImgBase64String = src;
  87. fs.Close();
  88. }
  89. }
  90. }
  91. ViewBag.Lists = lists;
  92. return View();
  93. }
  94. #endregion
  95. #region 获取数据
  96. /// <summary>
  97. /// 获取页面显示列表数据
  98. /// <summary>
  99. /// <param name="queryJson">查询参数</param>
  100. /// <returns></returns>
  101. [HttpGet]
  102. [AjaxOnly]
  103. public ActionResult GetPageList(string pagination, string queryJson)
  104. {
  105. Pagination paginationobj = pagination.ToObject<Pagination>();
  106. var data = ass_AssetsInfoItemIBLL.GetPageList(paginationobj, queryJson);
  107. var jsonData = new
  108. {
  109. rows = data,
  110. total = paginationobj.total,
  111. page = paginationobj.page,
  112. records = paginationobj.records
  113. };
  114. return Success(jsonData);
  115. }
  116. /// <summary>
  117. /// 获取左侧树形数据
  118. /// <summary>
  119. /// <returns></returns>
  120. [HttpGet]
  121. [AjaxOnly]
  122. public ActionResult GetTree()
  123. {
  124. var data = ass_AssetsInfoItemIBLL.GetTree();
  125. return Success(data);
  126. }
  127. /// <summary>
  128. /// 获取资产类别树
  129. /// <summary>
  130. /// <returns></returns>
  131. [HttpGet]
  132. [AjaxOnly]
  133. public ActionResult GetTypeTree()
  134. {
  135. var data = ass_AssetsInfoItemIBLL.GetAssTypeTree();
  136. return Success(data);
  137. }
  138. /// <summary>
  139. /// 获取列表不带分页
  140. /// </summary>
  141. /// <param name="queryJson"></param>
  142. /// <returns></returns>
  143. [HttpGet]
  144. [AjaxOnly]
  145. public ActionResult GetList(string queryJson)
  146. {
  147. var data = ass_AssetsInfoItemIBLL.GetList(queryJson);
  148. return Success(data);
  149. }
  150. /// <summary>
  151. /// 获取表单数据
  152. /// <summary>
  153. /// <returns></returns>
  154. [HttpGet]
  155. [AjaxOnly]
  156. public ActionResult GetFormData(string keyValue)
  157. {
  158. var Ass_AssetsInfoItemData = ass_AssetsInfoItemIBLL.GetAss_AssetsInfoItemEntity(keyValue);
  159. var jsonData = new
  160. {
  161. Ass_AssetsInfoItem = Ass_AssetsInfoItemData,
  162. };
  163. return Success(jsonData);
  164. }
  165. /// <summary>
  166. /// 获取表单数据
  167. /// <summary>
  168. /// <returns></returns>
  169. [HttpGet]
  170. [AjaxOnly]
  171. public ActionResult GetData(string keyValue)
  172. {
  173. var result = ass_AssetsInfoItemIBLL.GetAss_AssetsInfoByAIId(keyValue);
  174. return Success(result);
  175. }
  176. /// <summary>
  177. /// 获取表单数据
  178. /// <summary>
  179. /// <returns></returns>
  180. [HttpGet]
  181. [AjaxOnly]
  182. public ActionResult GetDatas(string keyValue)
  183. {
  184. var result = ass_AssetsInfoItemIBLL.GetDatas(keyValue);
  185. List<Ass_ScrapItemEntity> list = new List<Ass_ScrapItemEntity>();
  186. foreach (var item in result)
  187. {
  188. var entity = new Ass_ScrapItemEntity();
  189. entity.AAIAId = item.AIId;
  190. entity.AAICode = item.AICode;
  191. entity.AAIName = item.AIASSName;
  192. entity.AAIStorage = item.AIIStorageId;
  193. entity.AAILocation = item.AIIStoragePosition;
  194. entity.AAITId = item.AIASSClass;
  195. entity.AAIModel = item.AISpecificationtype;
  196. entity.AAIManufacturer = item.AIBrand;
  197. entity.AAIContent = item.AIAssValue.ToString();
  198. list.Add(entity);
  199. }
  200. return Success(list);
  201. }
  202. #endregion
  203. #region 提交数据
  204. /// <summary>
  205. /// 删除实体数据
  206. /// <param name="keyValue">主键</param>
  207. /// <summary>
  208. /// <returns></returns>
  209. [HttpPost]
  210. [AjaxOnly]
  211. public ActionResult DeleteForm(string keyValue)
  212. {
  213. ass_AssetsInfoItemIBLL.DeleteEntity(keyValue);
  214. return Success("删除成功!");
  215. }
  216. [HttpPost]
  217. [AjaxOnly]
  218. public ActionResult ScrapForm(string keyValue)
  219. {
  220. ass_AssetsInfoItemIBLL.ScrapEntity(keyValue);
  221. return Success("报废成功!");
  222. }
  223. [HttpPost]
  224. [AjaxOnly]
  225. public ActionResult UnScrapForm(string keyValue)
  226. {
  227. ass_AssetsInfoItemIBLL.UnScrap(keyValue);
  228. return Success("报废成功!");
  229. }
  230. /// <summary>
  231. /// 保存实体数据(新增、修改)
  232. /// <param name="keyValue">主键</param>
  233. /// <summary>
  234. /// <returns></returns>
  235. [HttpPost]
  236. [ValidateAntiForgeryToken]
  237. [AjaxOnly]
  238. public ActionResult SaveForm(string keyValue, string strEntity)
  239. {
  240. Ass_AssetsInfoItemEntity entity = strEntity.ToObject<Ass_AssetsInfoItemEntity>();
  241. ass_AssetsInfoItemIBLL.SaveEntity(keyValue, entity);
  242. return Success("保存成功!");
  243. }
  244. /// <summary>
  245. /// 批量生成二维码
  246. /// <summary>
  247. /// <returns></returns>
  248. [HttpPost]
  249. [AjaxOnly]
  250. public ActionResult GetQRCode(string keyValue,Pagination pagination)
  251. {
  252. //TODO:文件夹压缩成zip
  253. //var a = @"D:\Job\test\zip";
  254. //var aa = string.Format(@"{0}.zip", a);
  255. //ZipHelper.CreateZip(a, aa);
  256. //TODO:生成带logo二维码
  257. //var resultImgPath = QRCodeHelper.ProcessRequest("demo", @"~\Content\images\img1.png");
  258. //TODO:生成二维码,并打包
  259. //var dArr = new List<string>();
  260. //for (int i = 0; i < 5; i++)
  261. //{
  262. // var d = QRCodeHelper.ProcessRequest("demo" + i, @"~\Content\images\img1.png", "demo" + i);
  263. // if (dArr.IndexOf(d) == -1)
  264. // {
  265. // dArr.Add(d);
  266. // }
  267. //}
  268. //foreach (var item in dArr)
  269. //{
  270. // ZipHelper.CreateZip(item, item + ".zip");
  271. //}
  272. //图片保存文件夹地址
  273. var dArr = new List<string>();
  274. //明细数据
  275. var lists = new List<Ass_AssetsInfoItemEntity>();
  276. if (!string.IsNullOrEmpty(keyValue))
  277. {
  278. foreach (var item in keyValue.Split(','))
  279. {
  280. var entity = ass_AssetsInfoItemIBLL.GetAss_AssetsInfoItemEntity(item);
  281. if (entity != null)
  282. {
  283. lists.Add(entity);
  284. }
  285. }
  286. }
  287. else
  288. {
  289. var data = ass_AssetsInfoItemIBLL.GetPageList(pagination, "{}");
  290. lists = data.ToList();
  291. }
  292. foreach (var item in lists)
  293. {
  294. var d = QRCodeHelper.ProcessRequest(item.AIId, @"~\Content\images\img1.png", "在册登记明细", item.AIASSName + item.AICode);
  295. if (dArr.IndexOf(d.resultImgDirectoryPath) == -1)
  296. {
  297. dArr.Add(d.resultImgDirectoryPath);
  298. }
  299. }
  300. foreach (var item in dArr)
  301. {
  302. ZipHelper.CreateZip(item, item + ".zip");
  303. }
  304. return Success("操作成功!",dArr);
  305. }
  306. /// <summary>
  307. /// 批量生成二维码下载
  308. /// </summary>
  309. /// <param name="path"></param>
  310. [HttpPost]
  311. public void DownFile(string path)
  312. {
  313. path = string.Format(@"{0}{1}", path, ".zip");
  314. if (FileDownHelper.FileExists(path))
  315. {
  316. FileDownHelper.DownLoadold(path, path.Substring(path.LastIndexOf(@"\") + 1));
  317. }
  318. }
  319. #endregion
  320. }
  321. }