package com.ruoyi.basic.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.ruoyi.basic.constant.EipCableTypeConstants; import com.ruoyi.basic.dto.EipCableQueryDto; import com.ruoyi.basic.dto.EipSyncDto; import com.ruoyi.basic.pojo.EipCableTestData; import com.ruoyi.basic.service.EipCableService; import com.ruoyi.common.core.domain.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; /** * EIP 线缆对接控制器 */ @Api(tags = "EIP线缆对接") @RestController @RequestMapping("/eip") public class EipCableController { @Resource private EipCableService eipCableService; @ApiOperation("分页查询高压电力电缆试验数据") @GetMapping("/highVoltageCable/page") public Result> pageHighVoltageCable(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.HIGH_VOLTAGE, query)); } @ApiOperation("分页查询中压电力电缆试验数据") @GetMapping("/mediumVoltageCable/page") public Result> pageMediumVoltageCable(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.MEDIUM_VOLTAGE, query)); } @ApiOperation("分页查询低压线缆试验数据") @GetMapping("/lowVoltageCable/page") public Result> pageLowVoltageCable(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.LOW_VOLTAGE, query)); } @ApiOperation("分页查询主网导地线试验数据") @GetMapping("/mainNetworkGroundWire/page") public Result> pageMainNetworkGroundWire(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.MAIN_NETWORK, query)); } @ApiOperation("分页查询配网导地线试验数据") @GetMapping("/distributionGroundWire/page") public Result> pageDistributionGroundWire(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.DISTRIBUTION, query)); } @ApiOperation("分页查询光缆试验数据") @GetMapping("/opticalFiber/page") public Result> pageOpticalFiber(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.OPTICAL_FIBER, query)); } @ApiOperation("分页查询 OPGW 光缆试验数据") @GetMapping("/opgwOpticalFiber/page") public Result> pageOPGWOpticalFiber(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.OPGW, query)); } @ApiOperation("分页查询 ADSS 光缆试验数据") @GetMapping("/adssOpticalFiber/page") public Result> pageADSSOpticalFiber(Long page, Long size, EipCableQueryDto query) { return Result.success(pageCableData(page, size, EipCableTypeConstants.ADSS, query)); } @ApiOperation("同步 EIP 线缆试验数据") @PostMapping("/sync") public Result sync(@RequestBody EipSyncDto dto) { return Result.success(eipCableService.syncCableData(dto.getCableType())); } private IPage pageCableData(Long page, Long size, String cableType, EipCableQueryDto query) { long current = page == null || page < 1 ? 1L : page; long pageSize = size == null || size < 1 ? 20L : size; return eipCableService.pageByCableType(current, pageSize, cableType, query == null ? new EipCableQueryDto() : query); } }