package com.example.building.controller; import com.example.building.common.Result; import com.example.building.entity.SystemConfig; import com.example.building.mapper.SystemConfigMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 系统配置控制器 */ @RestController @RequestMapping("/api/v1/system-config") public class SystemConfigController { @Autowired private SystemConfigMapper systemConfigMapper; /** * 获取所有配置 */ @GetMapping public Result> getAllConfig() { List configs = systemConfigMapper.selectList(null); Map result = new HashMap<>(); for (SystemConfig config : configs) { result.put(config.getConfigKey(), config.getConfigValue()); } return Result.success(result); } /** * 更新配置 */ @PutMapping public Result updateConfig(@RequestBody SystemConfig config) { // 检查是否存在 SystemConfig existing = systemConfigMapper.selectOne( new com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper() .eq(SystemConfig::getConfigKey, config.getConfigKey()) ); if (existing != null) { existing.setConfigValue(config.getConfigValue()); existing.setRemark(config.getRemark()); systemConfigMapper.updateById(existing); } else { config.setConfigId(java.util.UUID.randomUUID().toString()); systemConfigMapper.insert(config); } return Result.success(); } }