using Microsoft.AspNetCore.Mvc; using ZR.Model.Business; using ZR.Model.Business.Dto; using ZR.Service.Business.IBusinessService; //创建时间:2025-09-21 namespace ZR.Admin.WebApi.Controllers.Business { /// /// 光缆管理 /// [Route("business/OdfCables")] public class OdfCablesController : BaseController { /// /// 光缆管理接口 /// private readonly IOdfCablesService _OdfCablesService; public OdfCablesController(IOdfCablesService OdfCablesService) { _OdfCablesService = OdfCablesService; } /// /// 查询光缆列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "odfcables:list")] public IActionResult GetList([FromQuery] OdfCablesQueryDto parm) { var response = _OdfCablesService.GetList(parm); return SUCCESS(response); } /// /// 搜索光缆和故障(限定公司范围) /// /// [HttpGet("search")] [ActionPermissionFilter(Permission = "odfcables:query")] public IActionResult Search([FromQuery] long deptId, [FromQuery] string keyword) { var response = _OdfCablesService.Search(deptId, keyword); return SUCCESS(response); } /// /// 新增光缆 /// /// [HttpPost] [ActionPermissionFilter(Permission = "odfcables:add")] [Log(Title = "光缆管理", BusinessType = BusinessType.INSERT)] public IActionResult Add([FromBody] OdfCables parm) { parm.CreatedAt = DateTime.Now; parm.UpdatedAt = DateTime.Now; var response = _OdfCablesService.Add(parm); return SUCCESS(response); } /// /// 修改光缆 /// /// [HttpPut] [ActionPermissionFilter(Permission = "odfcables:edit")] [Log(Title = "光缆管理", BusinessType = BusinessType.UPDATE)] public IActionResult Update([FromBody] OdfCables parm) { parm.UpdatedAt = DateTime.Now; var response = _OdfCablesService.Update(parm); return ToResponse(response); } /// /// 查询光缆详情 /// /// /// [HttpGet("{id}")] [ActionPermissionFilter(Permission = "odfcables:query")] public IActionResult GetDetail(int id) { var response = _OdfCablesService.GetDetail(id); return SUCCESS(response); } /// /// 删除光缆 /// /// [HttpPost("delete/{id}")] [ActionPermissionFilter(Permission = "odfcables:delete")] [Log(Title = "光缆管理", BusinessType = BusinessType.DELETE)] public IActionResult Delete(int id) { var response = _OdfCablesService.Delete(id); return ToResponse(response); } /// /// 导出光缆列表 /// /// [Log(Title = "光缆管理", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [HttpGet("export")] [ActionPermissionFilter(Permission = "odfcables:export")] public IActionResult Export([FromQuery] OdfCablesQueryDto parm) { var list = _OdfCablesService.ExportList(parm); if (list == null || list.Result == null || list.Result.Count <= 0) { return ToResponse(ResultCode.FAIL, "没有要导出的数据"); } var result = ExportExcelMini(list.Result, "光缆列表", "光缆列表"); return ExportExcel(result.Item2, result.Item1); } } }