/**
|
* 初始化部门详情对话框
|
*/
|
var DeptInfoDlg = {
|
deptInfoData : {},
|
zTreeInstance : null,
|
validateFields: {
|
simplename: {
|
validators: {
|
notEmpty: {
|
message: '部门名称不能为空'
|
}
|
}
|
},
|
fullname: {
|
validators: {
|
notEmpty: {
|
message: '部门全称不能为空'
|
}
|
}
|
},
|
pName: {
|
validators: {
|
notEmpty: {
|
message: '上级名称不能为空'
|
}
|
}
|
}
|
}
|
};
|
|
/**
|
* 清除数据
|
*/
|
DeptInfoDlg.clearData = function() {
|
this.deptInfoData = {};
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
DeptInfoDlg.set = function(key, val) {
|
this.deptInfoData[key] = (typeof value == "undefined") ? $("#" + key).val() : value;
|
return this;
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
DeptInfoDlg.get = function(key) {
|
return $("#" + key).val();
|
}
|
|
/**
|
* 关闭此对话框
|
*/
|
DeptInfoDlg.close = function() {
|
parent.layer.close(window.parent.MgrUser.layerIndex);
|
}
|
|
/**
|
* 点击部门ztree列表的选项时
|
*
|
* @param e
|
* @param treeId
|
* @param treeNode
|
* @returns
|
*/
|
DeptInfoDlg.onClickDept = function(e, treeId, treeNode) {
|
$("#pName").attr("value", DeptInfoDlg.zTreeInstance.getSelectedVal());
|
$("#pid").attr("value", treeNode.id);
|
}
|
|
/**
|
* 显示部门选择的树
|
*
|
* @returns
|
*/
|
DeptInfoDlg.showDeptSelectTree = function() {
|
var pName = $("#pName");
|
var pNameOffset = $("#pName").offset();
|
$("#parentDeptMenu").css({
|
left : pNameOffset.left + "px",
|
top : pNameOffset.top + pName.outerHeight() + "px"
|
}).slideDown("fast");
|
|
$("body").bind("mousedown", onBodyDown);
|
}
|
|
/**
|
* 隐藏部门选择的树
|
*/
|
DeptInfoDlg.hideDeptSelectTree = function() {
|
$("#parentDeptMenu").fadeOut("fast");
|
$("body").unbind("mousedown", onBodyDown);// mousedown当鼠标按下就可以触发,不用弹起
|
}
|
|
/**
|
* 收集数据
|
*/
|
DeptInfoDlg.collectData = function() {
|
this.set('id');
|
this.set('reason');
|
}
|
|
/**
|
* 验证数据是否为空
|
*/
|
DeptInfoDlg.validate = function () {
|
$('#deptInfoForm').data("bootstrapValidator").resetForm();
|
$('#deptInfoForm').bootstrapValidator('validate');
|
return $("#deptInfoForm").data('bootstrapValidator').isValid();
|
}
|
|
/**
|
* 提交添加部门
|
*/
|
DeptInfoDlg.addSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
|
if (!this.validate()) {
|
return;
|
}
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/mgr/unfreeze", function(data){
|
Feng.success("解冻成功!");
|
window.parent.MgrUser.table.refresh();
|
DeptInfoDlg.close();
|
},function(data){
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.deptInfoData);
|
ajax.start();
|
}
|
|
|
DeptInfoDlg.addSubmit1 = function() {
|
|
this.clearData();
|
this.collectData();
|
|
if (!this.validate()) {
|
return;
|
}
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/mgr/freeze", function(data){
|
Feng.success("冻结成功!");
|
window.parent.MgrUser.table.refresh();
|
DeptInfoDlg.close();
|
},function(data){
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.deptInfoData);
|
ajax.start();
|
}
|
|
|
DeptInfoDlg.setTags = function() {
|
|
this.clearData();
|
this.collectData();
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/mgr/changeTag", function(data){
|
Feng.success("操作成功!");
|
window.parent.MgrUser.table.refresh();
|
DeptInfoDlg.close();
|
},function(data){
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
// 选取所有name为'tag'的checkbox元素
|
const checkboxes = document.querySelectorAll('input[name="tags"][type="checkbox"]');
|
|
// 定义一个空数组来存储被选中元素的值
|
let checkedValues = [];
|
|
// 遍历checkbox元素,如果元素被选中则将其值加入数组
|
checkboxes.forEach(checkbox => {
|
if (checkbox.checked) {
|
checkedValues.push(checkbox.value);
|
}
|
});
|
|
// 使用join方法将数组中的值用逗号连接成一个字符串
|
const result = checkedValues.join(',');
|
|
console.log(result); // 输出所有被选中元素的值,用逗号隔开
|
ajax.set(this.deptInfoData);
|
ajax.set("tags", result)
|
ajax.start();
|
}
|
|
|
/**
|
* 提交修改
|
*/
|
DeptInfoDlg.editSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
|
if (!this.validate()) {
|
return;
|
}
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/dept/update", function(data){
|
Feng.success("修改成功!");
|
window.parent.Dept.table.refresh();
|
DeptInfoDlg.close();
|
},function(data){
|
Feng.error("修改失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.deptInfoData);
|
ajax.start();
|
}
|
|
function onBodyDown(event) {
|
if (!(event.target.id == "menuBtn" || event.target.id == "parentDeptMenu" || $(
|
event.target).parents("#parentDeptMenu").length > 0)) {
|
DeptInfoDlg.hideDeptSelectTree();
|
}
|
}
|
|
$(function() {
|
Feng.initValidator("deptInfoForm", DeptInfoDlg.validateFields);
|
|
var ztree = new $ZTree("parentDeptMenuTree", "/dept/tree");
|
ztree.bindOnClick(DeptInfoDlg.onClickDept);
|
ztree.init();
|
DeptInfoDlg.zTreeInstance = ztree;
|
});
|