TdevMaintenancePlanController.cs 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. using Microsoft.AspNetCore.Mvc;
  2. using Microsoft.Extensions.Logging;
  3. using Ropin.Inspection.Api.Common;
  4. using Ropin.Inspection.Api.Controllers;
  5. using Ropin.Inspection.Model;
  6. using Ropin.Inspection.Service;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using System.Threading.Tasks;
  11. namespace Ropin.Inspection.Api
  12. {
  13. public class TdevMaintenancePlanController : BaseController
  14. {
  15. public ILogger<TdevMaintenancePlanController> _logger { get; }
  16. private readonly ITdevMaintenancePlanService _TdevMaintenancePlanService;
  17. private readonly ITdevMaintenancePlanContentService _TdevMaintenancePlanContentService;
  18. /// <summary>
  19. /// 构造函数
  20. /// </summary>
  21. /// <param name="TdevMaintenancePlanService"></param>
  22. /// <param name="logger"></param>
  23. public TdevMaintenancePlanController(ITdevMaintenancePlanService TdevMaintenancePlanService, ITdevMaintenancePlanContentService TdevMaintenancePlanContentService, ILogger<TdevMaintenancePlanController> logger)
  24. {
  25. _TdevMaintenancePlanService = TdevMaintenancePlanService;
  26. _TdevMaintenancePlanContentService = TdevMaintenancePlanContentService;
  27. _logger = logger;
  28. }
  29. /// <summary>
  30. /// 通过id获取设备维保计划信息
  31. /// </summary>
  32. /// <param name="id"></param>
  33. /// <returns></returns>
  34. [HttpGet("GetMaintenancePlanAsync/{id}")]
  35. public async Task<ApiResult> GetMaintenancePlanAsync(string id)
  36. {
  37. if (string.IsNullOrEmpty(id))
  38. {
  39. return new ApiResult(ReturnCode.GeneralError);
  40. }
  41. try
  42. {
  43. var content = await _TdevMaintenancePlanService.GetConditionAsync(new TdevMaintenancePlanSearchModel { C_ID = id });
  44. var devMaintenancePlan = content.FirstOrDefault();
  45. var saintenancePlanContents = await _TdevMaintenancePlanContentService.GetConditionAsync(new TdevMaintenancePlanContentSearchModel { C_MaintenancePlanCode = id, IsPagination = false });
  46. devMaintenancePlan.MaintenancePlanContentList = saintenancePlanContents.Select(x=>x.C_DeviceTempOpsContentCode).ToList();
  47. return new ApiResult<TdevMaintenancePlanViewModel>(devMaintenancePlan);
  48. }
  49. catch (Exception ex)
  50. {
  51. return new ApiResult(ReturnCode.GeneralError, ex.Message);
  52. }
  53. }
  54. /// <summary>
  55. /// 获取所有设备维保计划
  56. /// </summary>
  57. /// <returns></returns>
  58. [HttpGet("GetMaintenancePlansAsync")]
  59. public async Task<ApiResult> GetMaintenancePlansAsync()
  60. {
  61. try
  62. {
  63. var contentList = await _TdevMaintenancePlanService.GetAllAsync();
  64. return new ApiResult<IEnumerable<TdevMaintenancePlanViewModel>>(contentList);
  65. }
  66. catch (Exception ex)
  67. {
  68. return new ApiResult(ReturnCode.GeneralError, ex.Message);
  69. }
  70. }
  71. /// <summary>
  72. /// 通过设备维保计划名称条件查询
  73. /// </summary>
  74. /// <param name="searchModel"></param>
  75. /// <returns></returns>
  76. [HttpPost("GetMaintenancePlansByAsync")]
  77. public async Task<ApiResult> GetMaintenancePlansByAsync(TdevMaintenancePlanSearchModel searchModel)
  78. {
  79. if (searchModel == null)
  80. {
  81. return new ApiResult(ReturnCode.ArgsError);
  82. }
  83. searchModel.IsPagination = false;
  84. try
  85. {
  86. var contentList = await _TdevMaintenancePlanService.GetConditionAsync(searchModel);
  87. return new ApiResult<PagesModel<TdevMaintenancePlanViewModel>>(new PagesModel<TdevMaintenancePlanViewModel>(contentList, searchModel));
  88. }
  89. catch (Exception ex)
  90. {
  91. return new ApiResult(ReturnCode.GeneralError, ex.Message);
  92. }
  93. }
  94. /// <summary>
  95. /// 创建设备维保计划
  96. /// </summary>
  97. /// <param name="content"></param>
  98. /// <returns></returns>
  99. [HttpPost("CreateMaintenancePlanAsync")]
  100. public async Task<ApiResult> CreateMaintenancePlanAsync(TdevMaintenancePlanViewModel content)
  101. {
  102. if (content == null)
  103. {
  104. return new ApiResult(ReturnCode.ArgsError);
  105. }
  106. try
  107. {
  108. await _TdevMaintenancePlanService.CreateOneAsync(content);
  109. }
  110. catch (Exception ex)
  111. {
  112. return new ApiResult(ReturnCode.GeneralError, ex.Message);
  113. }
  114. return new ApiResult(ReturnCode.Success);
  115. }
  116. /// <summary>
  117. /// 删除设备维保计划
  118. /// </summary>
  119. /// <param name="id"></param>
  120. /// <returns></returns>
  121. [HttpDelete("DeleteMaintenancePlanAsync/{id}")]
  122. public async Task<ApiResult> DeleteMaintenancePlanAsync(string id)
  123. {
  124. if (string.IsNullOrEmpty(id))
  125. {
  126. return new ApiResult(ReturnCode.GeneralError);
  127. }
  128. try
  129. {
  130. await _TdevMaintenancePlanService.DeleteAsync(id);
  131. }
  132. catch (Exception ex)
  133. {
  134. return new ApiResult(ReturnCode.GeneralError, ex.Message);
  135. }
  136. return new ApiResult(ReturnCode.Success);
  137. }
  138. /// <summary>
  139. /// 更新设备维保计划
  140. /// </summary>
  141. /// <param name="id"></param>
  142. /// <param name="updateModel"></param>
  143. /// <returns></returns>
  144. [HttpPut("UpdateMaintenancePlanAsync/{id}")]
  145. public async Task<ApiResult> UpdateMaintenancePlanAsync(string id, TdevMaintenancePlanUpdateModel updateModel)
  146. {
  147. if (string.IsNullOrEmpty(id))
  148. {
  149. return new ApiResult(ReturnCode.GeneralError);
  150. }
  151. try
  152. {
  153. await _TdevMaintenancePlanService.UpdateAsync(id, updateModel);
  154. }
  155. catch (Exception ex)
  156. {
  157. return new ApiResult(ReturnCode.GeneralError, ex.Message);
  158. }
  159. return new ApiResult(ReturnCode.Success);
  160. }
  161. }
  162. }