package com.nova.sankuai.controller.v1;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.nova.sankuai.domain.dto.SyncConfigPageDto;
|
import com.nova.sankuai.domain.entity.SyncConfig;
|
import com.nova.sankuai.infra.utils.PageRequest;
|
import com.nova.sankuai.infra.utils.ResultJson;
|
import com.nova.sankuai.service.ISyncConfigService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.AllArgsConstructor;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.web.bind.annotation.*;
|
|
/**
|
* @author weikangdi
|
* @create 2021/12/10
|
*/
|
@Api(tags = "数据同步配置管理")
|
@RestController
|
@RequestMapping(value = "/api/v1/syncConfig")
|
@AllArgsConstructor
|
public class SyncConfigController {
|
|
private final ISyncConfigService syncConfigService;
|
|
@PostMapping(value = "/addSyncConfig")
|
@ApiOperation(value = "新增同步配置")
|
@PreAuthorize("hasAuthority('syncConfig.addSyncConfig')")
|
public ResultJson<Void> addSyncConfig(@RequestBody SyncConfig syncConfig) {
|
syncConfigService.addSyncConfig(syncConfig);
|
return ResultJson.success();
|
}
|
|
@PutMapping(value = "/editSyncConfig")
|
@ApiOperation(value = "编辑同步配置")
|
@PreAuthorize("hasAuthority('syncConfig.editSyncConfig')")
|
public ResultJson<Void> editSyncConfig(@RequestBody SyncConfig syncConfig) {
|
syncConfigService.editSyncConfig(syncConfig);
|
return ResultJson.success();
|
}
|
|
@DeleteMapping(value = "/deleteSyncConfig/{id}")
|
@ApiOperation(value = "删除同步配置")
|
@PreAuthorize("hasAuthority('syncConfig.deleteSyncConfig')")
|
public ResultJson<Void> deleteSyncConfig(@PathVariable("id") Long id) {
|
syncConfigService.deleteSyncConfig(id);
|
return ResultJson.success();
|
}
|
|
@GetMapping(value = "/pageSyncConfig")
|
@ApiOperation(value = "分页查看同步配置")
|
@PreAuthorize("hasAuthority('syncConfig.pageSyncConfig')")
|
public ResultJson<IPage<SyncConfig>> pageSyncConfig(SyncConfigPageDto pageDto, PageRequest pageRequest) {
|
IPage<SyncConfig> page = syncConfigService.pageSyncConfig(pageDto, pageRequest);
|
return ResultJson.ok(page);
|
}
|
|
@GetMapping(value = "/invalidSyncConfig/{id}")
|
@ApiOperation(value = "启用/禁用同步配置")
|
@PreAuthorize("hasAuthority('syncConfig.invalidSyncConfig')")
|
public ResultJson<Void> invalidSyncConfig(@PathVariable("id") Long id, Integer status) {
|
syncConfigService.invalidSyncConfig(id, status);
|
return ResultJson.success();
|
}
|
}
|