using Microsoft.AspNetCore.Mvc; using ZR.Model.Dto; using ZR.Service.MES.dev; using ZR.Service.MES.dev.IService; using ZR.Model.MES.dev.Dto; using ZR.Model.MES.dev; using ZR.Admin.WebApi.Filters; using MiniExcelLibs; //创建时间:2024-06-03 namespace ZR.Admin.WebApi.Controllers { /// /// 巡检任务结果表 /// [Verify] [Route("mes/deviceManagement/DeviceRouteInspectionResult")] public class DeviceRouteInspectionResultController : BaseController { /// /// 巡检任务结果表接口 /// private readonly IDeviceRouteInspectionResultService _DeviceRouteInspectionResultService; public DeviceRouteInspectionResultController(IDeviceRouteInspectionResultService DeviceRouteInspectionResultService) { _DeviceRouteInspectionResultService = DeviceRouteInspectionResultService; } /// /// 查询巡检任务结果表列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:list")] public IActionResult QueryDeviceRouteInspectionResult([FromQuery] DeviceRouteInspectionResultQueryDto parm) { var response = _DeviceRouteInspectionResultService.GetList(parm); return SUCCESS(response); } /// /// 查询巡检任务结果表详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:query")] public IActionResult GetDeviceRouteInspectionResult(string Id) { var response = _DeviceRouteInspectionResultService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加巡检任务结果表 /// /// [HttpPost] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:add")] [Log(Title = "巡检任务结果表", BusinessType = BusinessType.INSERT)] public IActionResult AddDeviceRouteInspectionResult([FromBody] DeviceRouteInspectionResultDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _DeviceRouteInspectionResultService.AddDeviceRouteInspectionResult(modal); return SUCCESS(response); } /// /// 更新巡检任务结果表 /// /// [HttpPut] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:edit")] [Log(Title = "巡检任务结果表", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateDeviceRouteInspectionResult([FromBody] DeviceRouteInspectionResultDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _DeviceRouteInspectionResultService.UpdateDeviceRouteInspectionResult(modal); return ToResponse(response); } /// /// 删除巡检任务结果表 /// /// [HttpDelete("{ids}")] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:delete")] [Log(Title = "巡检任务结果表", BusinessType = BusinessType.DELETE)] public IActionResult DeleteDeviceRouteInspectionResult(string ids) { int[] idsArr = Tools.SpitIntArrary(ids); if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } var response = _DeviceRouteInspectionResultService.Delete(idsArr); return ToResponse(response); } /// /// 导出巡检任务结果表 /// /// [Log(Title = "巡检任务结果表", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [HttpGet("export")] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:export")] public IActionResult Export([FromQuery] DeviceRouteInspectionResultQueryDto parm) { parm.PageNum = 1; parm.PageSize = 100000; var list = _DeviceRouteInspectionResultService.GetList(parm).Result; if (list == null || list.Count <= 0) { return ToResponse(ResultCode.FAIL, "没有要导出的数据"); } var result = ExportExcelMini(list, "巡检任务结果表", "巡检任务结果表"); return ExportExcel(result.Item2, result.Item1); } /// /// 清空巡检任务结果表 /// /// [Log(Title = "巡检任务结果表", BusinessType = BusinessType.CLEAN)] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:delete")] [HttpDelete("clean")] public IActionResult Clear() { if (!HttpContextExtension.IsAdmin(HttpContext)) { return ToResponse(ResultCode.FAIL, "操作失败"); } return SUCCESS(_DeviceRouteInspectionResultService.TruncateDeviceRouteInspectionResult()); } /// /// 导入 /// /// /// [HttpPost("importData")] [Log(Title = "巡检任务结果表导入", BusinessType = BusinessType.IMPORT, IsSaveRequestData = false)] [ActionPermissionFilter(Permission = "deviceManagement:devicerouteinspectionresult:import")] public IActionResult ImportData([FromForm(Name = "file")] IFormFile formFile) { List list = new(); using (var stream = formFile.OpenReadStream()) { list = stream.Query(startCell: "A1").ToList(); } return SUCCESS(_DeviceRouteInspectionResultService.ImportDeviceRouteInspectionResult(list.Adapt>())); } /// /// 巡检任务结果表导入模板下载 /// /// [HttpGet("importTemplate")] [Log(Title = "巡检任务结果表模板", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [AllowAnonymous] public IActionResult ImportTemplateExcel() { var result = DownloadImportTemplate(new List() { }, "DeviceRouteInspectionResult"); return ExportExcel(result.Item2, result.Item1); } } }