若依开源1.1.4发布
parent
95601ad36f
commit
821e3a7f52
@ -0,0 +1,29 @@
|
|||||||
|
package com.ruoyi.framework.web.service;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import com.ruoyi.project.system.config.service.IConfigService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* RuoYi首创 html调用 thymeleaf 实现参数管理
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class ConfigService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private IConfigService configService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据键名查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configName 参数名称
|
||||||
|
* @return 参数键值
|
||||||
|
*/
|
||||||
|
public String selectConfigByKey(String configKey)
|
||||||
|
{
|
||||||
|
return configService.selectConfigByKey(configKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,143 @@
|
|||||||
|
package com.ruoyi.project.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.Model;
|
||||||
|
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.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
|
import com.ruoyi.project.system.config.domain.Config;
|
||||||
|
import com.ruoyi.project.system.config.service.IConfigService;
|
||||||
|
import com.ruoyi.framework.aspectj.lang.annotation.Log;
|
||||||
|
import com.ruoyi.framework.web.controller.BaseController;
|
||||||
|
import com.ruoyi.framework.web.page.TableDataInfo;
|
||||||
|
import com.ruoyi.framework.web.domain.Message;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 参数配置 信息操作处理
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
*/
|
||||||
|
@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 index()
|
||||||
|
{
|
||||||
|
return prefix + "/config";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置列表
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("system:config:list")
|
||||||
|
@GetMapping("/list")
|
||||||
|
@ResponseBody
|
||||||
|
public TableDataInfo list(Config config)
|
||||||
|
{
|
||||||
|
startPage();
|
||||||
|
List<Config> list = configService.selectConfigList(config);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增参数配置
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("system:config:add")
|
||||||
|
@Log(title = "系统管理", action = "参数配置-新增参数")
|
||||||
|
@GetMapping("/add")
|
||||||
|
public String add()
|
||||||
|
{
|
||||||
|
return prefix + "/add";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改参数配置
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("system:config:edit")
|
||||||
|
@Log(title = "系统管理", action = "参数配置-修改参数")
|
||||||
|
@GetMapping("/edit/{configId}")
|
||||||
|
public String edit(@PathVariable("configId") Integer configId, Model model)
|
||||||
|
{
|
||||||
|
Config config = configService.selectConfigById(configId);
|
||||||
|
model.addAttribute("config", config);
|
||||||
|
return prefix + "/edit";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存参数配置
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("system:config:save")
|
||||||
|
@Log(title = "系统管理", action = "参数配置-保存参数")
|
||||||
|
@PostMapping("/save")
|
||||||
|
@ResponseBody
|
||||||
|
public Message save(Config config)
|
||||||
|
{
|
||||||
|
if (configService.saveConfig(config) > 0)
|
||||||
|
{
|
||||||
|
return Message.success();
|
||||||
|
}
|
||||||
|
return Message.error();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除参数配置
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("system:config:remove")
|
||||||
|
@Log(title = "系统管理", action = "参数配置-删除参数")
|
||||||
|
@PostMapping("/remove/{configId}")
|
||||||
|
@ResponseBody
|
||||||
|
public Message remove(@PathVariable("configId") Integer configId)
|
||||||
|
{
|
||||||
|
if (configService.deleteConfigById(configId) > 0)
|
||||||
|
{
|
||||||
|
return Message.success();
|
||||||
|
}
|
||||||
|
return Message.error();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除参数配置
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("system:config:batchRemove")
|
||||||
|
@Log(title = "系统管理", action = "参数配置-批量删除")
|
||||||
|
@PostMapping("/batchRemove")
|
||||||
|
@ResponseBody
|
||||||
|
public Message remove(@RequestParam("ids[]") Integer[] configIds)
|
||||||
|
{
|
||||||
|
int rows = configService.batchDeleteConfig(configIds);
|
||||||
|
if (rows > 0)
|
||||||
|
{
|
||||||
|
return Message.success();
|
||||||
|
}
|
||||||
|
return Message.error();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 校验参数键名
|
||||||
|
*/
|
||||||
|
@PostMapping("/checkConfigKeyUnique")
|
||||||
|
@ResponseBody
|
||||||
|
public String checkConfigKeyUnique(Config config)
|
||||||
|
{
|
||||||
|
String uniqueFlag = "0";
|
||||||
|
if (config != null)
|
||||||
|
{
|
||||||
|
uniqueFlag = configService.checkConfigKeyUnique(config);
|
||||||
|
}
|
||||||
|
return uniqueFlag;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,70 @@
|
|||||||
|
package com.ruoyi.project.system.config.mapper;
|
||||||
|
|
||||||
|
import com.ruoyi.project.system.config.domain.Config;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 参数配置 数据层
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
*/
|
||||||
|
public interface ConfigMapper
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configId 参数配置ID
|
||||||
|
* @return 参数配置信息
|
||||||
|
*/
|
||||||
|
public Config selectConfigById(Integer configId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据键名查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configName 参数名称
|
||||||
|
* @return 参数配置信息
|
||||||
|
*/
|
||||||
|
public Config selectConfigByKey(String configKey);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置列表
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 参数配置集合
|
||||||
|
*/
|
||||||
|
public List<Config> selectConfigList(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertConfig(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateConfig(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除参数配置
|
||||||
|
*
|
||||||
|
* @param configId 参数配置ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteConfigById(Integer configId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除参数配置
|
||||||
|
*
|
||||||
|
* @param configIds 需要删除的数据ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int batchDeleteConfig(Integer[] configIds);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,154 @@
|
|||||||
|
package com.ruoyi.project.system.config.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import com.ruoyi.common.constant.UserConstants;
|
||||||
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
|
import com.ruoyi.project.system.config.domain.Config;
|
||||||
|
import com.ruoyi.project.system.config.mapper.ConfigMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 参数配置 服务层实现
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class ConfigServiceImpl implements IConfigService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private ConfigMapper configMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configId 参数配置ID
|
||||||
|
* @return 参数配置信息
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Config selectConfigById(Integer configId)
|
||||||
|
{
|
||||||
|
return configMapper.selectConfigById(configId);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据键名查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configName 参数名称
|
||||||
|
* @return 参数键值
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String selectConfigByKey(String configKey)
|
||||||
|
{
|
||||||
|
Config config = configMapper.selectConfigByKey(configKey);
|
||||||
|
return StringUtils.isNotNull(config) ? config.getConfigValue() : "";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置列表
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 参数配置集合
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<Config> selectConfigList(Config config)
|
||||||
|
{
|
||||||
|
return configMapper.selectConfigList(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertConfig(Config config)
|
||||||
|
{
|
||||||
|
return configMapper.insertConfig(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateConfig(Config config)
|
||||||
|
{
|
||||||
|
return configMapper.updateConfig(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int saveConfig(Config config)
|
||||||
|
{
|
||||||
|
Integer configId = config.getConfigId();
|
||||||
|
int rows = 0;
|
||||||
|
if (StringUtils.isNotNull(configId))
|
||||||
|
{
|
||||||
|
rows = configMapper.updateConfig(config);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rows = configMapper.insertConfig(config);
|
||||||
|
}
|
||||||
|
return rows;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除参数配置信息
|
||||||
|
*
|
||||||
|
* @param configId 参数配置ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteConfigById(Integer configId)
|
||||||
|
{
|
||||||
|
return configMapper.deleteConfigById(configId);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除参数配置对象
|
||||||
|
*
|
||||||
|
* @param configIds 需要删除的数据ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int batchDeleteConfig(Integer[] configIds)
|
||||||
|
{
|
||||||
|
return configMapper.batchDeleteConfig(configIds);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 校验参数键名是否唯一
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String checkConfigKeyUnique(Config config)
|
||||||
|
{
|
||||||
|
if (config.getConfigId() == null)
|
||||||
|
{
|
||||||
|
config.setConfigId(-1);
|
||||||
|
}
|
||||||
|
Integer configId = config.getConfigId();
|
||||||
|
Config info = configMapper.selectConfigByKey(config.getConfigKey());
|
||||||
|
if (StringUtils.isNotNull(info) && StringUtils.isNotNull(info.getConfigId())
|
||||||
|
&& info.getConfigId().intValue() != configId.intValue())
|
||||||
|
{
|
||||||
|
return UserConstants.CONFIG_KEY_NOT_UNIQUE;
|
||||||
|
}
|
||||||
|
return UserConstants.CONFIG_KEY_UNIQUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,86 @@
|
|||||||
|
package com.ruoyi.project.system.config.service;
|
||||||
|
|
||||||
|
import com.ruoyi.project.system.config.domain.Config;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 参数配置 服务层
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
*/
|
||||||
|
public interface IConfigService
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configId 参数配置ID
|
||||||
|
* @return 参数配置信息
|
||||||
|
*/
|
||||||
|
public Config selectConfigById(Integer configId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据键名查询参数配置信息
|
||||||
|
*
|
||||||
|
* @param configName 参数名称
|
||||||
|
* @return 参数键值
|
||||||
|
*/
|
||||||
|
public String selectConfigByKey(String configKey);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询参数配置列表
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 参数配置集合
|
||||||
|
*/
|
||||||
|
public List<Config> selectConfigList(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertConfig(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateConfig(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存参数配置
|
||||||
|
*
|
||||||
|
* @param config 参数配置信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int saveConfig(Config config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除参数配置信息
|
||||||
|
*
|
||||||
|
* @param configId 参数配置ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteConfigById(Integer configId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除参数配置信息
|
||||||
|
*
|
||||||
|
* @param configIds 需要删除的数据ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int batchDeleteConfig(Integer[] configIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 校验参数键名是否唯一
|
||||||
|
*
|
||||||
|
* @param dept 部门信息
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public String checkConfigKeyUnique(Config config);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,83 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.ruoyi.project.system.config.mapper.ConfigMapper">
|
||||||
|
|
||||||
|
<resultMap type="Config" id="ConfigResult">
|
||||||
|
<id property="configId" column="config_id" />
|
||||||
|
<result property="configName" column="config_name" />
|
||||||
|
<result property="configKey" column="config_key" />
|
||||||
|
<result property="configValue" column="config_value" />
|
||||||
|
<result property="configType" column="config_type" />
|
||||||
|
<result property="createBy" column="create_by" />
|
||||||
|
<result property="createTime" column="create_time" />
|
||||||
|
<result property="updateBy" column="update_by" />
|
||||||
|
<result property="updateTime" column="update_time" />
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<select id="selectConfigById" parameterType="Integer" resultMap="ConfigResult">
|
||||||
|
select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark from sys_config
|
||||||
|
where config_id = #{configId}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectConfigByKey" parameterType="String" resultMap="ConfigResult">
|
||||||
|
select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark from sys_config
|
||||||
|
where config_key = #{configKey}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectConfigList" parameterType="Config" resultMap="ConfigResult">
|
||||||
|
select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark from sys_config
|
||||||
|
<where>
|
||||||
|
<if test="searchValue != null and searchValue != ''">
|
||||||
|
AND config_name like concat(concat('%', #{searchValue}), '%') OR config_key like concat(concat('%', #{searchValue}), '%')
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<insert id="insertConfig" parameterType="Config">
|
||||||
|
insert into sys_config (
|
||||||
|
<if test="configName != null and configName != '' ">config_name,</if>
|
||||||
|
<if test="configKey != null and configKey != '' ">config_key,</if>
|
||||||
|
<if test="configValue != null and configValue != '' ">config_value,</if>
|
||||||
|
<if test="configType != null and configType != '' ">config_type,</if>
|
||||||
|
<if test="createBy != null and createBy != ''">create_by,</if>
|
||||||
|
<if test="remark != null and remark != ''">remark,</if>
|
||||||
|
create_time
|
||||||
|
)values(
|
||||||
|
<if test="configName != null and configName != ''">#{configName},</if>
|
||||||
|
<if test="configKey != null and configKey != ''">#{configKey},</if>
|
||||||
|
<if test="configValue != null and configValue != ''">#{configValue},</if>
|
||||||
|
<if test="configType != null and configType != ''">#{configType},</if>
|
||||||
|
<if test="createBy != null and createBy != ''">#{createBy},</if>
|
||||||
|
<if test="remark != null and remark != ''">#{remark},</if>
|
||||||
|
sysdate()
|
||||||
|
)
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="updateConfig" parameterType="Config">
|
||||||
|
update sys_config
|
||||||
|
<set>
|
||||||
|
<if test="configName != null and configName != ''">config_name = #{configName},</if>
|
||||||
|
<if test="configKey != null and configKey != ''">config_key = #{configKey},</if>
|
||||||
|
<if test="configValue != null and configValue != ''">config_value = #{configValue},</if>
|
||||||
|
<if test="configType != null and configType != ''">config_type = #{configType},</if>
|
||||||
|
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
|
||||||
|
<if test="remark != null and remark != ''">remark = #{remark},</if>
|
||||||
|
update_time = sysdate()
|
||||||
|
</set>
|
||||||
|
where config_id = #{configId}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<delete id="deleteConfigById" parameterType="Integer">
|
||||||
|
delete from sys_config where config_id = #{value}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<delete id="batchDeleteConfig" parameterType="Integer">
|
||||||
|
delete from sys_config where config_id in
|
||||||
|
<foreach item="configId" collection="array" open="(" separator="," close=")">
|
||||||
|
#{configId}
|
||||||
|
</foreach>
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
</mapper>
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
File diff suppressed because one or more lines are too long
@ -0,0 +1,39 @@
|
|||||||
|
$("#form-config-add").validate({
|
||||||
|
rules:{
|
||||||
|
configKey:{
|
||||||
|
required:true,
|
||||||
|
remote: {
|
||||||
|
url: ctx + "system/config/checkConfigKeyUnique",
|
||||||
|
type: "post",
|
||||||
|
dataType: "json",
|
||||||
|
data: {
|
||||||
|
"configKey" : function() {
|
||||||
|
return $("input[name='configKey']").val();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
dataFilter: function(data, type) {
|
||||||
|
if (data == "0") return true;
|
||||||
|
else return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
configName:{
|
||||||
|
required:true
|
||||||
|
},
|
||||||
|
configValue:{
|
||||||
|
required:true
|
||||||
|
},
|
||||||
|
},
|
||||||
|
messages: {
|
||||||
|
"configKey": {
|
||||||
|
remote: "参数键名已经存在"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
submitHandler:function(form){
|
||||||
|
add();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
function add() {
|
||||||
|
_ajax_save(ctx + "system/config/save", $('#form-config-add').serialize());
|
||||||
|
}
|
@ -0,0 +1,82 @@
|
|||||||
|
var prefix = ctx + "system/config"
|
||||||
|
|
||||||
|
$(function() {
|
||||||
|
var columns = [{
|
||||||
|
checkbox: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
field : 'configId',
|
||||||
|
title : '参数主键'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
field : 'configName',
|
||||||
|
title : '参数名称'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
field : 'configKey',
|
||||||
|
title : '参数键名'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
field : 'configValue',
|
||||||
|
title : '参数键值'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
field: 'configType',
|
||||||
|
title: '系统内置',
|
||||||
|
align: 'center',
|
||||||
|
formatter: function(value, row, index) {
|
||||||
|
if (value == 'Y') {
|
||||||
|
return '<span class="label label-success">是</span>';
|
||||||
|
} else if (value == 'N') {
|
||||||
|
return '<span class="label label-primary">否</span>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
field : 'createDateTimeStr',
|
||||||
|
title : '创建时间'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '操作',
|
||||||
|
align: 'center',
|
||||||
|
formatter: function(value, row, index) {
|
||||||
|
var actions = [];
|
||||||
|
actions.push('<a class="btn btn-primary btn-sm ' + editFlag + '" href="#" title="编辑" mce_href="#" onclick="edit(\'' + row.configId + '\')"><i class="fa fa-edit"></i></a> ');
|
||||||
|
actions.push('<a class="btn btn-warning btn-sm ' + removeFlag + '" href="#" title="删除" onclick="remove(\'' + row.configId + '\')"><i class="fa fa-remove"></i></a>');
|
||||||
|
return actions.join('');
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
var url = prefix + "/list";
|
||||||
|
$.initTable(columns, url);
|
||||||
|
});
|
||||||
|
|
||||||
|
/*参数配置-新增*/
|
||||||
|
function add() {
|
||||||
|
var url = prefix + '/add';
|
||||||
|
layer_showAuto("新增参数", url);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*参数配置-修改*/
|
||||||
|
function edit(configId) {
|
||||||
|
var url = prefix + '/edit/' + configId;
|
||||||
|
layer_showAuto("修改参数", url);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 单条删除
|
||||||
|
function remove(id) {
|
||||||
|
$.modalConfirm("确定要删除选中参数配置吗?", function() {
|
||||||
|
_ajax(prefix + "/remove/" + id, "", "post");
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 批量删除
|
||||||
|
function batchRemove() {
|
||||||
|
var rows = $.getSelections("configId");
|
||||||
|
if (rows.length == 0) {
|
||||||
|
$.modalMsg("请选择要删除的数据", "warning");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$.modalConfirm("确认要删除选中的" + rows.length + "条数据吗?", function() {
|
||||||
|
_ajax(prefix + '/batchRemove', { "ids": rows }, "post");
|
||||||
|
});
|
||||||
|
}
|
@ -0,0 +1,41 @@
|
|||||||
|
$("#form-config-edit").validate({
|
||||||
|
rules:{
|
||||||
|
configKey:{
|
||||||
|
required:true,
|
||||||
|
remote: {
|
||||||
|
url: ctx + "system/config/checkConfigKeyUnique",
|
||||||
|
type: "post",
|
||||||
|
dataType: "json",
|
||||||
|
data: {
|
||||||
|
"configId": function() {
|
||||||
|
return $("input[name='configId']").val();
|
||||||
|
},
|
||||||
|
"configKey" : function() {
|
||||||
|
return $("input[name='configKey']").val();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
dataFilter: function(data, type) {
|
||||||
|
if (data == "0") return true;
|
||||||
|
else return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
configName:{
|
||||||
|
required:true
|
||||||
|
},
|
||||||
|
configValue:{
|
||||||
|
required:true
|
||||||
|
},
|
||||||
|
},
|
||||||
|
messages: {
|
||||||
|
"configKey": {
|
||||||
|
remote: "参数键名已经存在"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
submitHandler:function(form){
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
function update() {
|
||||||
|
_ajax_save(ctx + "system/config/save", $('#form-config-edit').serialize());
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<head th:include="include :: header"></head>
|
||||||
|
<body class="white-bg">
|
||||||
|
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
||||||
|
<form class="form-horizontal m" id="form-config-add">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">参数名称:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input id="configName" name="configName" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">参数键名:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input id="configKey" name="configKey" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">参数键值:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input id="configValue" name="configValue" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">系统内置:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<div class="radio radio-info radio-inline">
|
||||||
|
<input type="radio" id="radio1" name="configType" value="Y" checked="">
|
||||||
|
<label for="radio1">是</label>
|
||||||
|
</div>
|
||||||
|
<div class="radio radio-danger radio-inline">
|
||||||
|
<input type="radio" id="radio2" name="configType" value="N">
|
||||||
|
<label for="radio2">否</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">备注:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<textarea id="remark" name="remark" class="form-control"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="form-control-static col-sm-offset-9">
|
||||||
|
<button type="submit" class="btn btn-primary">提交</button>
|
||||||
|
<button th:onclick="'javascript:layer_close()'" class="btn btn-danger" type="button">关闭</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<div th:include="include::footer"></div>
|
||||||
|
<script src="/ruoyi/system/config/add.js" th:src="@{/ruoyi/system/config/add.js}">
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,25 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<head th:include="include :: header"></head>
|
||||||
|
<body class="gray-bg">
|
||||||
|
<div class="wrapper wrapper-content">
|
||||||
|
<div class="btn-group hidden-xs" id="tableToolbar" role="group">
|
||||||
|
<button type="button" class="btn btn-outline btn-default" th:onclick="'javascript:add()'" shiro:hasPermission="system:config:add">
|
||||||
|
<i class="glyphicon glyphicon-plus"></i>
|
||||||
|
</button>
|
||||||
|
<button type="button" class="btn btn-outline btn-default" th:onclick="'javascript:batchRemove()'" shiro:hasPermission="system:config:batchRemove">
|
||||||
|
<i class="glyphicon glyphicon-trash"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<table class="bootstrap-table" data-mobile-responsive="true">
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div th:include="include :: footer"></div>
|
||||||
|
<script src="/ruoyi/system/config/config.js" th:src="@{/ruoyi/system/config/config.js}"></script>
|
||||||
|
<script th:inline="javascript">
|
||||||
|
var editFlag = [[${@permissionService.hasPermi('system:config:edit')}]];
|
||||||
|
var removeFlag = [[${@permissionService.hasPermi('system:config:remove')}]];
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,58 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<head th:include="include :: header"></head>
|
||||||
|
<body class="white-bg">
|
||||||
|
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
||||||
|
<form class="form-horizontal m" id="form-config-edit">
|
||||||
|
<input id="configId" name="configId" th:value="${config.configId}" type="hidden">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">参数名称:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input id="configName" name="configName" th:value="${config.configName}" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">参数键名:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input id="configKey" name="configKey" th:value="${config.configKey}" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">参数键值:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input id="configValue" name="configValue" th:value="${config.configValue}" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">系统内置:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<div class="radio radio-info radio-inline">
|
||||||
|
<input type="radio" id="radio1" th:field="*{config.configType}" name="configType" value="Y">
|
||||||
|
<label for="radio1">是</label>
|
||||||
|
</div>
|
||||||
|
<div class="radio radio-danger radio-inline">
|
||||||
|
<input type="radio" id="radio2" th:field="*{config.configType}" name="configType" value="N">
|
||||||
|
<label for="radio2">否</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">备注:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<textarea id="remark" name="remark" class="form-control">[[${config.remark}]]</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="form-control-static col-sm-offset-9">
|
||||||
|
<button type="submit" class="btn btn-primary">提交</button>
|
||||||
|
<button th:onclick="'javascript:layer_close()'" class="btn btn-danger" type="button">关闭</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<div th:include="include::footer"></div>
|
||||||
|
<script src="/ruoyi/system/config/edit.js" th:src="@{/ruoyi/system/config/edit.js}">
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue