/**
* 详情对话框
*/
var SysConfigInfoDlg = {
data: {
name: "",
dictFlag: "",
code: "",
value: "",
remark: "",
createTime: "",
createUser: "",
updateTime: "",
updateUser: ""
}
};
layui.use(['form', 'admin', 'ax'], function () {
var $ = layui.jquery;
var $ax = layui.ax;
var form = layui.form;
var admin = layui.admin;
//获取详情信息,填充表单
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('');
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('');
}
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('');
} else {
$("#dictDetails").append('');
}
}
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'
}, function (data) {
Feng.error("更新失败!" + data.responseJSON.message)
});
ajax.set(data.field);
ajax.start();
return false;
});
//监听字典选择
form.on('select(dictTypeId)', function (data) {
var dictTypeId = data.value;
//初始化字典详细列表
updateDictDetail(dictTypeId);
});
//返回按钮
$("#backupPage").click(function () {
window.location.href = Feng.ctxPath + '/sysConfig'
});
//如果当前配置是带字典类型,则初始化字典类型选择
if (result.data.dictFlag === 'Y') {
activeDictSelect();
//更新选项
$("#dictTypeId").val(result.data.dictTypeId);
form.render();
//更新字典类型的详情
updateDictDetail(result.data.dictTypeId, result.data.value);
} else {
activeCustomSelect();
}
//如果是系统类型,则不能改变取值范围和字典类型
if(result.data.code.indexOf('GUNS_') === 0){
$("[name='dictFlag']").attr("disabled","disabled");
$("#dictTypeId").attr("disabled","disabled");
form.render();
}
});