Commit 9dc66a7e by fengshuonan

完善常量的新增和修改

parent 0ded1702
package cn.stylefeng.guns.sys.modular.consts.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
......@@ -14,6 +15,7 @@ import java.util.Date;
* @since 2019-06-20
*/
@TableName("sys_config")
@Data
public class SysConfig implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -45,8 +47,8 @@ public class SysConfig implements Serializable {
/**
* 字典类型的编码
*/
@TableField("dict_type_code")
private String dictTypeCode;
@TableField("dict_type_id")
private Long dictTypeId;
/**
* 属性值,如果是字典中的类型,则为dict的code
......@@ -84,109 +86,4 @@ public class SysConfig implements Serializable {
@TableField(value = "update_user", fill = FieldFill.UPDATE)
private Long updateUser;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getDictFlag() {
return dictFlag;
}
public void setDictFlag(String dictFlag) {
this.dictFlag = dictFlag;
}
public String getDictTypeCode() {
return dictTypeCode;
}
public void setDictTypeCode(String dictTypeCode) {
this.dictTypeCode = dictTypeCode;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Long getCreateUser() {
return createUser;
}
public void setCreateUser(Long createUser) {
this.createUser = createUser;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Long getUpdateUser() {
return updateUser;
}
public void setUpdateUser(Long updateUser) {
this.updateUser = updateUser;
}
@Override
public String toString() {
return "SysConfig{" +
"id=" + id +
", name=" + name +
", code=" + code +
", dictFlag=" + dictFlag +
", dictTypeCode=" + dictTypeCode +
", value=" + value +
", remark=" + remark +
", createTime=" + createTime +
", createUser=" + createUser +
", updateTime=" + updateTime +
", updateUser=" + updateUser +
"}";
}
}
......@@ -8,7 +8,7 @@
<result column="name" property="name" />
<result column="code" property="code" />
<result column="dict_flag" property="dictFlag" />
<result column="dict_type_code" property="dictTypeCode" />
<result column="dict_type_id" property="dictTypeId" />
<result column="value" property="value" />
<result column="remark" property="remark" />
<result column="create_time" property="createTime" />
......@@ -19,7 +19,7 @@
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id AS "id", name AS "name", code AS "code", dict_flag AS "dictFlag", dict_type_code AS "dictTypeCode", value AS "value", remark AS "remark", create_time AS "createTime", create_user AS "createUser", update_time AS "updateTime", update_user AS "updateUser"
id AS "id", name AS "name", code AS "code", dict_flag AS "dictFlag", dict_type_id AS "dictTypeId", value AS "value", remark AS "remark", create_time AS "createTime", create_user AS "createUser", update_time AS "updateTime", update_user AS "updateUser"
</sql>
......
......@@ -43,7 +43,7 @@ public class SysConfigParam implements Serializable, BaseValidatingParam {
/**
* 字典类型的编码
*/
private String dictTypeCode;
private Long dictTypeId;
/**
* 字典的值
......
package cn.stylefeng.guns.sys.modular.consts.model.result;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* <p>
......@@ -42,7 +42,7 @@ public class SysConfigResult implements Serializable {
/**
* 字典类型的编码
*/
private String dictTypeCode;
private Long dictTypeId;
/**
* 属性值,如果是字典中的类型,则为dict的code
......
......@@ -8,6 +8,7 @@ import cn.stylefeng.guns.sys.modular.consts.model.params.SysConfigParam;
import cn.stylefeng.guns.sys.modular.consts.model.result.SysConfigResult;
import cn.stylefeng.guns.sys.modular.consts.service.SysConfigService;
import cn.stylefeng.roses.core.util.ToolUtil;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
......@@ -50,7 +51,21 @@ public class SysConfigServiceImpl extends ServiceImpl<SysConfigMapper, SysConfig
SysConfig oldEntity = getOldEntity(param);
SysConfig newEntity = getEntity(param);
ToolUtil.copyProperties(newEntity, oldEntity);
this.updateById(newEntity);
UpdateWrapper<SysConfig> updateWrapper = new UpdateWrapper<SysConfig>().eq("id", param.getId());
//如果是字典类型
if (ToolUtil.isNotEmpty(param.getDictFlag())
&& param.getDictFlag().equalsIgnoreCase("Y")) {
newEntity.setValue(param.getDictValue());
} else {
//如果是非字典,则标识位置为空
newEntity.setDictFlag("N");
updateWrapper.set(true, "dict_type_id", null);
}
this.update(newEntity, updateWrapper);
}
@Override
......
......@@ -31,14 +31,14 @@ layui.use(['form', 'admin', 'ax'], function () {
status = "dict";
//初始化所有字典类型
$("#dictTypeCode").html('<option value="">请选择系统字典类型</option>');
$("#dictTypeId").html('<option value="">请选择系统字典类型</option>');
var ajax = new $ax(Feng.ctxPath + "/dictType/listTypes", function (data) {
for (var i = 0; i < data.data.length; i++) {
var dictTypeId = data.data[i].dictTypeId;
var name = data.data[i].name;
var code = data.data[i].code;
$("#dictTypeCode").append('<option value="' + dictTypeId + '">' + code + '--' + name + '</option>');
$("#dictTypeId").append('<option value="' + dictTypeId + '">' + code + '--' + name + '</option>');
}
form.render();
......@@ -62,7 +62,7 @@ layui.use(['form', 'admin', 'ax'], function () {
var radio = $('input:radio[name="dictValue"]:checked').val();
if (!$("#dictTypeCode").val() || !radio) {
if (!$("#dictTypeId").val() || !radio) {
Feng.error("请选择具体字典!");
return false;
}
......@@ -95,7 +95,7 @@ layui.use(['form', 'admin', 'ax'], function () {
});
//监听字典选择
form.on('select(dictTypeCode)', function (data) {
form.on('select(dictTypeId)', function (data) {
var dictTypeId = data.value;
......
......@@ -21,16 +21,93 @@ layui.use(['form', 'admin', 'ax'], function () {
var form = layui.form;
var admin = layui.admin;
//让当前iframe弹层高度适应
admin.iframeAuto();
//获取详情信息,填充表单
var ajax = new $ax(Feng.ctxPath + "/sysConfig/detail?id=" + Feng.getUrlParam("id"));
var result = ajax.start();
form.val('sysConfigForm', result.data);
//初始化字典选择框
var activeDictSelect = function () {
$("#dictCodeDiv").show();
$("#customCodeDiv").hide();
status = "dict";
//初始化所有字典类型
$("#dictTypeId").html('<option value="">请选择系统字典类型</option>');
var ajax = new $ax(Feng.ctxPath + "/dictType/listTypes", function (data) {
for (var i = 0; i < data.data.length; i++) {
var dictTypeId = data.data[i].dictTypeId;
var name = data.data[i].name;
var code = data.data[i].code;
$("#dictTypeId").append('<option value="' + dictTypeId + '">' + code + '--' + name + '</option>');
}
form.render();
}, function (data) {
});
ajax.start();
};
//初始化非字典选择
var activeCustomSelect = function () {
$("#dictCodeDiv").hide();
$("#customCodeDiv").show();
status = "custom";
};
//更新字典详情列表
var updateDictDetail = function (dictTypeId, activeCode) {
$("#dictDetails").html('');
var ajax = new $ax(Feng.ctxPath + "/dict/listDicts", function (data) {
for (var i = 0; i < data.data.length; i++) {
var name = data.data[i].name;
var code = data.data[i].code;
if (activeCode === code) {
$("#dictDetails").append('<input type="radio" name="dictValue" value="' + code + '" title="' + name + '" checked="checked">');
} else {
$("#dictDetails").append('<input type="radio" name="dictValue" value="' + code + '" title="' + name + '">');
}
}
form.render();
}, function (data) {
});
ajax.set("dictTypeId", dictTypeId);
ajax.start();
};
//监听单选切换
form.on('radio(dictChecked)', function (data) {
if (data.value === "Y") {
activeDictSelect();
} else {
activeCustomSelect();
}
});
//表单提交事件
form.on('submit(btnSubmit)', function (data) {
//如果是选择字典
if (status === "dict") {
var radio = $('input:radio[name="dictValue"]:checked').val();
if (!$("#dictTypeId").val() || !radio) {
Feng.error("请选择具体字典!");
return false;
}
} else {
if (!$("#value").val()) {
Feng.error("请填写参数值!");
return false;
}
}
var ajax = new $ax(Feng.ctxPath + "/sysConfig/editItem", function (data) {
Feng.success("更新成功!");
window.location.href = Feng.ctxPath + '/sysConfig'
......@@ -43,9 +120,33 @@ layui.use(['form', 'admin', 'ax'], function () {
return false;
});
//监听字典选择
form.on('select(dictTypeId)', function (data) {
var dictTypeId = data.value;
//初始化字典详细列表
updateDictDetail(dictTypeId);
});
//返回按钮
$("#backupPage").click(function () {
window.location.href = Feng.ctxPath + '/sysConfig'
});
//如果当前字典有dictTypeId则初始化字典类型选择
if (result.data.dictTypeId) {
activeDictSelect();
//更新选项
$("#dictTypeId").val(result.data.dictTypeId);
form.render();
//更新字典类型的详情
updateDictDetail(result.data.dictTypeId, result.data.value);
} else {
activeCustomSelect();
}
});
\ No newline at end of file
......@@ -12,13 +12,13 @@
<div class="layui-form-item">
<label class="layui-form-label">名称<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="name" name="name" placeholder="请输入名称" type="text" class="layui-input" lay-verify="required" required/>
<input id="name" name="name" placeholder="请输入名称" type="text" class="layui-input" autocomplete="off" lay-verify="required" required/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="code" name="code" placeholder="属性编码" type="text" class="layui-input" lay-verify="required" required/>
<input id="code" name="code" placeholder="属性编码" type="text" class="layui-input" autocomplete="off" lay-verify="required" required/>
</div>
<div class="layui-form-mid layui-word-aux form-tips">推荐采用下划线大写风格,例如,KAPTCH_OPEN</div>
</div>
......@@ -36,7 +36,7 @@
<div class="layui-form-item">
<label class="layui-form-label">字典类型<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select name="dictTypeCode" id="dictTypeCode" lay-filter="dictTypeCode">
<select name="dictTypeId" id="dictTypeId" lay-filter="dictTypeId">
<option value="">请选择系统字典类型</option>
</select>
</div>
......@@ -53,13 +53,13 @@
<div class="layui-form-item" id="customCodeDiv">
<label class="layui-form-label">参数值<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="value" name="value" placeholder="属性值" type="text" class="layui-input"/>
<input id="value" name="value" placeholder="属性值" type="text" autocomplete="off" class="layui-input"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">备注</label>
<div class="layui-input-block">
<input id="remark" name="remark" placeholder="请输入备注" type="text" class="layui-input"/>
<input id="remark" name="remark" placeholder="请输入备注" type="text" autocomplete="off" class="layui-input"/>
</div>
</div>
<div class="layui-form-item">
......
......@@ -12,31 +12,54 @@
<div class="layui-form-item">
<label class="layui-form-label">名称<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="name" name="name" placeholder="请输入名称" type="text" class="layui-input" lay-verify="required" required/>
<input id="name" name="name" placeholder="请输入名称" type="text" class="layui-input" autocomplete="off" lay-verify="required" required/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">字典标识<span style="color: red;">*</span></label>
<label class="layui-form-label">编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="dictFlag" name="dictFlag" placeholder="系统字典标识" type="text" class="layui-input" lay-verify="required" required/>
<input id="code" name="code" placeholder="属性编码" type="text" class="layui-input" autocomplete="off" lay-verify="required" required/>
</div>
<div class="layui-form-mid layui-word-aux form-tips">推荐采用下划线大写风格,例如,KAPTCH_OPEN</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">编码<span style="color: red;">*</span></label>
<label class="layui-form-label">取值范围<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="code" name="code" placeholder="属性编码" type="text" class="layui-input" lay-verify="required" required/>
<input type="radio" name="dictFlag" value="Y" title="字典" lay-filter="dictChecked" checked="checked">
<input type="radio" name="dictFlag" value="N" title="非字典" lay-filter="dictChecked">
</div>
<div class="layui-form-mid layui-word-aux">如果选择字典,则取值来自于 系统管理->字典管理</div>
</div>
<!-- 从字典取值 -->
<div id="dictCodeDiv">
<div class="layui-form-item">
<label class="layui-form-label">属性值<span style="color: red;">*</span></label>
<label class="layui-form-label">字典类型<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select name="dictTypeId" id="dictTypeId" lay-filter="dictTypeId">
<option value="">请选择系统字典类型</option>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">参数值<span style="color: red;">*</span></label>
<div class="layui-input-block" id="dictDetails">
<input type="radio" name="dictValue" value="" title="无" disabled="disabled">
</div>
</div>
</div>
<!-- 手动输入 -->
<div class="layui-form-item" id="customCodeDiv">
<label class="layui-form-label">参数值<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="value" name="value" placeholder="属性值" type="text" class="layui-input" lay-verify="required" required/>
<input id="value" name="value" placeholder="属性值" type="text" autocomplete="off" class="layui-input"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">备注<span style="color: red;">*</span></label>
<label class="layui-form-label">备注</label>
<div class="layui-input-block">
<input id="remark" name="remark" placeholder="请输入备注" type="text" class=" " lay-verify="required" required/>
<input id="remark" name="remark" placeholder="请输入备注" type="text" autocomplete="off" class="layui-input"/>
</div>
</div>
<div class="layui-form-item">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment