package com.ruoyi.web.controller.api;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.system.domain.TFoundationConfig;
import com.ruoyi.system.domain.TFoundationPerson;
import com.ruoyi.system.dto.TFoundationPersonDTO;
import com.ruoyi.system.service.TFoundationConfigService;
import com.ruoyi.system.service.TFoundationPersonService;
import com.ruoyi.system.vo.TFoundationPersonVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
*
* 基础设置 前端控制器
*
*
* @author xiaochen
* @since 2024-08-15
*/
@Api(tags = "基础设置")
@RestController
@RequestMapping("/t-foundation-person")
public class TFoundationPersonController {
private final TFoundationPersonService foundationPersonService;
private final TFoundationConfigService foundationConfigService;
@Autowired
public TFoundationPersonController(TFoundationPersonService foundationPersonService, TFoundationConfigService foundationConfigService) {
this.foundationPersonService = foundationPersonService;
this.foundationConfigService = foundationConfigService;
}
/**
* 查询基础设置列表
*/
@ApiOperation( value = "查询基础设置列表")
@PostMapping(value = "/list")
public AjaxResult> list() {
return AjaxResult.success(foundationPersonService.getList());
}
/**
* 添加基础设置管理
*/
@ApiOperation( value = "添加基础设置")
@PostMapping(value = "/add")
public AjaxResult add(@RequestBody TFoundationPersonDTO dto) {
foundationPersonService.add(dto);
return AjaxResult.success();
}
/**
* 修改基础设置
*/
@ApiOperation( value = "修改基础设置")
@PostMapping(value = "/update")
public AjaxResult update(@RequestBody TFoundationPersonDTO dto) {
foundationPersonService.edit(dto);
return AjaxResult.success();
}
/**
* 查看基础设置详情
*/
@ApiOperation( value = "查看基础设置详情")
@GetMapping(value = "/getDetailById")
public AjaxResult getDetailById(@RequestParam("id") Long id) {
// 查询基础设置
List list = foundationConfigService.list(Wrappers.lambdaQuery(TFoundationConfig.class)
.eq(TFoundationConfig::getPersonId, id));
TFoundationPerson foundationPerson = foundationPersonService.getById(id);
TFoundationPersonVO foundationPersonVO = new TFoundationPersonVO();
BeanUtils.copyProperties(foundationPerson, foundationPersonVO);
foundationPersonVO.setFoundationConfigs(list);
return AjaxResult.success(foundationPersonVO);
}
/**
* 删除基础设置
*/
@ApiOperation( value = "删除基础设置")
@DeleteMapping(value = "/deleteById")
public AjaxResult deleteById(@RequestParam("id") Long id) {
foundationConfigService.remove(Wrappers.lambdaQuery(TFoundationConfig.class)
.eq(TFoundationConfig::getPersonId, id));
return AjaxResult.success(foundationPersonService.removeById(id));
}
}