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/DeviceTaskExecuteResult")] public class DeviceTaskExecuteResultController : BaseController { /// /// 巡检任务结果表接口 /// private readonly IDeviceTaskExecuteResultService _DeviceTaskExecuteResultService; public DeviceTaskExecuteResultController(IDeviceTaskExecuteResultService DeviceTaskExecuteResultService) { _DeviceTaskExecuteResultService = DeviceTaskExecuteResultService; } /// /// 查询巡检任务结果表列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult:list")] public IActionResult QueryDeviceTaskExecuteResult([FromQuery] DeviceTaskExecuteResultQueryDto parm) { var response = _DeviceTaskExecuteResultService.GetList(parm); return SUCCESS(response); } /// /// 查询巡检任务结果表详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult:query")] public IActionResult GetDeviceTaskExecuteResult(string Id) { var response = _DeviceTaskExecuteResultService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加巡检任务结果表 /// /// [HttpPost] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult:add")] [Log(Title = "巡检任务结果表", BusinessType = BusinessType.INSERT)] public IActionResult AddDeviceTaskExecuteResult([FromBody] DeviceTaskExecuteResultDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _DeviceTaskExecuteResultService.AddDeviceTaskExecuteResult(modal); return SUCCESS(response); } /// /// 更新巡检任务结果表 /// /// [HttpPut] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult:edit")] [Log(Title = "巡检任务结果表", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateDeviceTaskExecuteResult([FromBody] DeviceTaskExecuteResultDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _DeviceTaskExecuteResultService.UpdateDeviceTaskExecuteResult(modal); return ToResponse(response); } /// /// 删除巡检任务结果表 /// /// [HttpDelete("{ids}")] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult:delete")] [Log(Title = "巡检任务结果表", BusinessType = BusinessType.DELETE)] public IActionResult DeleteDeviceTaskExecuteResult(string ids) { int[] idsArr = Tools.SpitIntArrary(ids); if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } var response = _DeviceTaskExecuteResultService.Delete(idsArr); return ToResponse(response); } /// /// 导出巡检任务结果表 /// /// [Log(Title = "巡检任务结果表", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [HttpGet("export")] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult:export")] public IActionResult Export([FromQuery] DeviceTaskExecuteResultQueryDto parm) { parm.PageNum = 1; parm.PageSize = 100000; var list = _DeviceTaskExecuteResultService.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:DeviceTaskExecuteResult:delete")] [HttpDelete("clean")] public IActionResult Clear() { if (!HttpContextExtension.IsAdmin(HttpContext)) { return ToResponse(ResultCode.FAIL, "操作失败"); } return SUCCESS(_DeviceTaskExecuteResultService.TruncateDeviceTaskExecuteResult()); } /// /// 导入 /// /// /// [HttpPost("importData")] [Log(Title = "巡检任务结果表导入", BusinessType = BusinessType.IMPORT, IsSaveRequestData = false)] [ActionPermissionFilter(Permission = "deviceManagement:DeviceTaskExecuteResult: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(_DeviceTaskExecuteResultService.ImportDeviceTaskExecuteResult(list.Adapt>())); } /// /// 巡检任务结果表导入模板下载 /// /// [HttpGet("importTemplate")] [Log(Title = "巡检任务结果表模板", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [AllowAnonymous] public IActionResult ImportTemplateExcel() { var result = DownloadImportTemplate(new List() { }, "DeviceTaskExecuteResult"); return ExportExcel(result.Item2, result.Item1); } } }