package com.iailab.module.data.point.controller.admin; import com.iailab.framework.common.constant.Constant; import com.iailab.framework.common.page.PageData; import com.iailab.framework.common.pojo.CommonResult; import com.iailab.framework.common.util.validation.ValidationUtils; import com.iailab.framework.common.validation.group.AddGroup; import com.iailab.framework.common.validation.group.UpdateGroup; import com.iailab.framework.common.validation.group.DefaultGroup; import com.iailab.module.data.point.dto.DaPointDTO; import com.iailab.module.data.point.service.DaPointService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; import javax.annotation.Resource; import javax.annotation.security.PermitAll; import javax.validation.Valid; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; import static com.iailab.framework.common.pojo.CommonResult.success; /** * @author PanZhibao * @Description * @createTime 2024年05月12日 */ @Tag(name = "数据采集,测点") @RestController @RequestMapping("/data/da/point") @Validated public class DaPointController { @Resource private DaPointService daPointService; @GetMapping("page") @Operation(summary = "分页") @Parameters({ @Parameter(name = Constant.PAGE, description = "当前页码,从1开始", required = true) , @Parameter(name = Constant.LIMIT, description = "每页显示记录数", required = true) , @Parameter(name = Constant.ORDER_FIELD, description = "排序字段") , @Parameter(name = Constant.ORDER, description = "排序方式,可选值(asc、desc)") }) @PreAuthorize("@ss.hasPermission('data:point:query')") public CommonResult> page(@RequestParam Map params){ PageData page = daPointService.page(params); return success(page); } @GetMapping("{id}") @Operation(summary = "信息") @PreAuthorize("@ss.hasPermission('data:point:query')") public CommonResult get(@PathVariable("id") String id){ DaPointDTO data = daPointService.get(id); return new CommonResult().setData(data); } @GetMapping("/list") @Operation(summary = "列表") @PreAuthorize("@ss.hasPermission('data:point:query')") public CommonResult> list(@Valid @RequestParam Map params) { List list = daPointService.list(params); return success(list); } @PostMapping @Operation(summary = "保存") @PreAuthorize("@ss.hasPermission('data:point:save')") public CommonResult save(@RequestBody DaPointDTO dto){ //效验数据 ValidationUtils.validate(dto, AddGroup.class, DefaultGroup.class); daPointService.add(dto); return new CommonResult(); } @PutMapping @Operation(summary = "修改") @PreAuthorize("@ss.hasPermission('data:point:update')") public CommonResult update(@RequestBody DaPointDTO dto){ //效验数据 ValidationUtils.validate(dto, UpdateGroup.class, DefaultGroup.class); daPointService.update(dto); return new CommonResult(); } @DeleteMapping @Operation(summary = "删除") @PreAuthorize("@ss.hasPermission('data:point:delete')") public CommonResult delete(@RequestBody String[] ids){ daPointService.delete(ids); return new CommonResult(); } @GetMapping("pointNo") public CommonResult> getpoint(@RequestParam Map params){ List list = daPointService.list(params); return new CommonResult>().setData(list); } @PutMapping("/enable") @Operation(summary = "启用") @Transactional public CommonResult enable(@RequestBody String[] ids) { daPointService.enableByIds(ids); return new CommonResult(); } @PutMapping("/disable") @Operation(summary = "禁用") @Transactional public CommonResult disable(@RequestBody String[] ids) { daPointService.disableByIds(ids); return new CommonResult(); } }