package com.template.controller;
import com.template.api.SmartDataSourceControllerAPI;
import com.template.common.utils.paramUtils;
import com.template.model.pojo.SmartDataSource;
import com.template.model.result.CommonResult;
import com.template.model.result.PageUtils;
import com.template.services.SmartDataSourceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
/**
*
* 数据源配置 前端控制器
*
*
* @author ceshi
* @since 2023-12-05
*/
@RestController
public class SmartDataSourceController implements SmartDataSourceControllerAPI {
@Autowired
private SmartDataSourceService smartDataSourceService;
/**
* 新增数据源
* @param smartDataSource 数据源
* @param bindingResult
* @return
*/
@Override
public CommonResult insertSmartDataSource(SmartDataSource smartDataSource, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
String st = paramUtils.getParamError(bindingResult);
return CommonResult.fail(st);
}
Map result = smartDataSourceService.insertSmartDataSource(smartDataSource);
return Integer.parseInt((String) result.get("code")) == 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail((String) result.get("msg"));
}
@Override
public CommonResult vcoSmartDataSource(SmartDataSource smartDataSource, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
String st = paramUtils.getParamError(bindingResult);
return CommonResult.fail(st);
}
Map result = smartDataSourceService.vcoSmartDataSource(smartDataSource);
return Integer.parseInt((String) result.get("code")) == 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail((String) result.get("msg"));
}
/**
* 更新数据源
* @param smartDataSource
* @param bindingResult
* @return
*/
@Override
public CommonResult updateSmartDataSourceById(SmartDataSource smartDataSource, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
String st = paramUtils.getParamError(bindingResult);
return CommonResult.fail(st);
}
Map result = smartDataSourceService.updateSmartDataSource(smartDataSource);
return Integer.parseInt((String) result.get("code")) > 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail((String) result.get("msg"));
}
/**
* 数据源分页数据查询
* @param currentPage 当前页数
* @param pageCount 一页数据条数
* @param smartDataSource 查询数据源实体
* @return
*/
@Override
public CommonResult queryPageSmartDataSources(int currentPage, int pageCount, SmartDataSource smartDataSource) {
PageUtils result = smartDataSourceService.queryPageSmartDataSources(currentPage, pageCount, smartDataSource);
return CommonResult.ok(result);
}
@Override
public CommonResult deleteSmartDataSourceById(int id) {
SmartDataSource data = smartDataSourceService.getSmartById(id);
if(data == null){
return CommonResult.fail("当前数据不存在,删除失败!");
}
int result = smartDataSourceService.deleteSmartDataSourceById(id);
return result > 0 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败");
}
}