package com.huaheng.pc.system.config.controller; import java.util.List; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.poi.ExcelUtil; import com.huaheng.framework.aspectj.lang.annotation.Log; import com.huaheng.framework.aspectj.lang.constant.BusinessType; import com.huaheng.framework.web.controller.BaseController; import com.huaheng.framework.web.domain.AjaxResult; import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.pc.system.config.domain.Config; import com.huaheng.pc.system.config.service.IConfigService; /** * 参数配置 信息操作处理 * * @author huaheng */ @Controller @RequestMapping("/system/config") public class ConfigController extends BaseController { private String prefix = "system/config"; @Autowired private IConfigService configService; @RequiresPermissions("system:config:view") @GetMapping() public String config() { return prefix + "/config"; } /** * 查询参数配置列表 */ @RequiresPermissions("system:config:list") @Log(title = "系统管理-参数设置", operating = "查看参数配置", action = BusinessType.GRANT) @PostMapping("/list") @ResponseBody public TableDataInfo list(Config config) { startPage(); List<Config> list = configService.selectConfigList(config); return getDataTable(list); } @Log(title = "系统管理-参数设置", operating = "导出参数配置", action = BusinessType.EXPORT) @RequiresPermissions("system:config:export") @PostMapping("/export") @ResponseBody public AjaxResult export(Config config) throws Exception { try { List<Config> list = configService.selectConfigList(config); ExcelUtil<Config> util = new ExcelUtil<Config>(Config.class); return util.exportExcel(list, "config"); } catch (Exception e) { return error("导出Excel失败,请联系网站管理员!"); } } /** * 新增参数配置 */ @GetMapping("/add") public String add() { return prefix + "/add"; } /** * 新增保存参数配置 */ @RequiresPermissions("system:config:add") @Log(title = "系统管理-参数设置", operating = "新增参数配置", action = BusinessType.INSERT) @PostMapping("/add") @ResponseBody public AjaxResult addSave(Config config) { return toAjax(configService.insertConfig(config)); } /** * 修改参数配置 */ @GetMapping("/edit/{id}") public String edit(@PathVariable("id") Integer id, ModelMap mmap) { mmap.put("config", configService.selectConfigById(id)); return prefix + "/edit"; } /** * 修改保存参数配置 */ @RequiresPermissions("system:config:edit") @Log(title = "系统管理-参数设置", operating = "修改参数配置", action = BusinessType.UPDATE) @PostMapping("/edit") @ResponseBody public AjaxResult editSave(Config config) { return toAjax(configService.updateConfig(config)); } /** * 删除参数配置 */ @RequiresPermissions("system:config:remove") @Log(title = "系统管理-参数设置", operating = "删除参数配置", action = BusinessType.DELETE) @PostMapping("/remove") @ResponseBody public AjaxResult remove(String ids) { return toAjax(configService.deleteConfigByIds(ids)); } /** * 校验参数键名 */ @PostMapping("/checkConfigKeyUnique") @ResponseBody public Integer checkConfigKeyUnique(Config config) { Integer uniqueFlag = 0; if (StringUtils.isNotNull(config)) { uniqueFlag = configService.checkConfigKeyUnique(config); } return uniqueFlag; } }