/**
|
* 用户详情对话框(可用于添加和修改对话框)
|
*/
|
var language =1
|
var UserInfoDlg = {
|
userInfoData: {},
|
validateFields: {
|
phone: {
|
validators: {
|
notEmpty: {
|
message: language==1?'联系电话不能为空':(language==2?"The account cannot be empty":"Akaun tidak dapat kosong")
|
}
|
}
|
},
|
name: {
|
validators: {
|
notEmpty: {
|
message: language==1?'姓名不能为空':(language==2?"The name cannot be empty":"Nama tidak dapat kosong")
|
}
|
}
|
},
|
/*citySel: {
|
validators: {
|
notEmpty: {
|
message: '部门不能为空'
|
}
|
}
|
},*/
|
birthday: {
|
validators: {
|
notEmpty: {
|
message: '生日不能为空'
|
},
|
}
|
},
|
idCard: {
|
validators: {
|
notEmpty: {
|
message: '身份证号不能为空'
|
},
|
}
|
}
|
}
|
};
|
|
/**
|
* 清除数据
|
*/
|
UserInfoDlg.clearData = function () {
|
this.userInfoData = {};
|
};
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
UserInfoDlg.set = function (key, value) {
|
if(typeof value == "undefined"){
|
if(typeof $("#" + key).val() =="undefined"){
|
var str="";
|
var ids="";
|
$("input[name='"+key+"']:checkbox").each(function(){
|
if(true == $(this).is(':checked')){
|
str+=$(this).val()+",";
|
}
|
});
|
if(str){
|
if(str.substr(str.length-1)== ','){
|
ids = str.substr(0,str.length-1);
|
}
|
}else{
|
$("input[name='"+key+"']:radio").each(function(){
|
if(true == $(this).is(':checked')){
|
ids=$(this).val()
|
}
|
});
|
}
|
this.userInfoData[key] = ids;
|
}else{
|
this.userInfoData[key]= $("#" + key).val();
|
}
|
}
|
|
return this;
|
};
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
UserInfoDlg.get = function (key) {
|
return $("#" + key).val();
|
};
|
|
/**
|
* 关闭此对话框
|
*/
|
UserInfoDlg.close = function () {
|
parent.layer.close(window.parent.MgrUser.layerIndex);
|
};
|
|
/**
|
* 点击部门input框时
|
*
|
* @param e
|
* @param treeId
|
* @param treeNode
|
* @returns
|
*/
|
UserInfoDlg.onClickDept = function (e, treeId, treeNode) {
|
$("#citySel").attr("value", instance.getSelectedVal());
|
$("#deptid").attr("value", treeNode.id);
|
};
|
|
/**
|
* 显示部门选择的树
|
*
|
* @returns
|
*/
|
UserInfoDlg.showDeptSelectTree = function () {
|
var cityObj = $("#citySel");
|
var cityOffset = $("#citySel").offset();
|
$("#menuContent").css({
|
left: cityOffset.left + "px",
|
top: cityOffset.top + cityObj.outerHeight() + "px"
|
}).slideDown("fast");
|
|
$("body").bind("mousedown", onBodyDown);
|
};
|
|
/**
|
* 显示用户详情部门选择的树
|
*
|
* @returns
|
*/
|
UserInfoDlg.showInfoDeptSelectTree = function () {
|
var cityObj = $("#citySel");
|
var cityPosition = $("#citySel").position();
|
$("#menuContent").css({
|
left: cityPosition.left + "px",
|
top: cityPosition.top + cityObj.outerHeight() + "px"
|
}).slideDown("fast");
|
|
$("body").bind("mousedown", onBodyDown);
|
};
|
|
/**
|
* 隐藏部门选择的树
|
*/
|
UserInfoDlg.hideDeptSelectTree = function () {
|
$("#menuContent").fadeOut("fast");
|
$("body").unbind("mousedown", onBodyDown);// mousedown当鼠标按下就可以触发,不用弹起
|
};
|
|
/**
|
* 收集数据
|
*/
|
UserInfoDlg.collectData = function () {
|
this.set('id').set('account').set('sex').set('password').set('avatar')
|
.set('email').set('name').set('birthday').set('rePassword').set('roleid').set('phone').set('idCard');
|
};
|
|
/**
|
* 验证两个密码是否一致
|
*/
|
UserInfoDlg.validatePwd = function () {
|
var password = this.get("password");
|
var rePassword = this.get("rePassword");
|
if (password == rePassword) {
|
return true;
|
} else {
|
return false;
|
}
|
};
|
|
/**
|
* 验证数据是否为空
|
*/
|
UserInfoDlg.validate = function () {
|
$('#userInfoForm').data("bootstrapValidator").resetForm();
|
$('#userInfoForm').bootstrapValidator('validate');
|
return $("#userInfoForm").data('bootstrapValidator').isValid();
|
};
|
|
/**
|
* 提交添加用户
|
*/
|
UserInfoDlg.addSubmit = function () {
|
|
this.clearData();
|
this.collectData();
|
|
if (!this.validate()) {
|
return;
|
}
|
|
|
|
var avatar = $("#avatar").val();
|
if(avatar==''){
|
Feng.info("请上传照片")
|
return;
|
}
|
var sex = $("#sex").val();
|
if(sex==''){
|
Feng.info("请选择性别")
|
return;
|
}
|
var roleid = $("#roleid").val();
|
if(roleid==''){
|
Feng.info("请选择角色")
|
return;
|
}
|
console.log(this.userInfoData)
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/mgr/add", function (data) {
|
Feng.success("添加成功!");
|
window.parent.MgrUser.table.refresh();
|
UserInfoDlg.close();
|
$(".img-circle").each(function () {
|
$(this).attr("src",Feng.ctxPath+$("#avatar").val());
|
})
|
}, function (data) {
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.userInfoData);
|
ajax.start();
|
};
|
|
/**
|
* 提交修改
|
*/
|
UserInfoDlg.editSubmit = function () {
|
|
this.clearData();
|
this.collectData();
|
|
if (!this.validate()) {
|
return;
|
}
|
console.log(this.userInfoData)
|
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/mgr/edit", function (data) {
|
Feng.success("修改成功!");
|
if (window.parent.MgrUser != undefined) {
|
window.parent.MgrUser.table.refresh();
|
UserInfoDlg.close();
|
}
|
window.parent.$(".img-circle").each(function () {
|
$(this).attr("src",$("#avatar").val());
|
})
|
|
window.parent.$("#userNameTab").text($("#name").val());
|
}, function (data) {
|
Feng.error("修改失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.userInfoData);
|
ajax.start();
|
};
|
|
/**
|
* 修改密码
|
*/
|
UserInfoDlg.chPwd = function () {
|
let oldPwd = $('#oldPwd').val();
|
let newPwd = $('#newPwd').val();
|
if(oldPwd == newPwd){
|
if(language==1){
|
Feng.error("新密码不能和原始密码相同");
|
}else if(language==2){
|
Feng.error("The new password cannot be the same as the original password");
|
}else {
|
Feng.error("Kata sandi baru tidak dapat sama dengan kata sandi asli");
|
}
|
|
return
|
}
|
let patt = /(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[^a-zA-Z0-9]).{8,30}/;
|
if(!patt.test(newPwd)){
|
if(language==1){
|
Feng.error("密码中必须包含大小字母、数字、特称字符,至少8个字符,最多30个字符");
|
}else if(language==2){
|
Feng.error("The name cannot be empty. The password must contain letters, numbers, and special characters. At least 8 characters and at most 30 characters");
|
}else {
|
Feng.error("Namanya tidak bisa kosong. Kata sandi harus mengandung huruf, nomor, dan karakter khusus. Setidaknya 8 karakter dan paling tidak 30 karakter.");
|
}
|
|
return
|
}
|
var ajax = new $ax(Feng.ctxPath + "/mgr/changePwd", function (data) {
|
Feng.success("修改成功!");
|
}, function (data) {
|
Feng.error("修改失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set("oldPwd");
|
ajax.set("newPwd");
|
ajax.set("rePwd");
|
ajax.start();
|
|
};
|
|
function onBodyDown(event) {
|
if (!(event.target.id == "menuBtn" || event.target.id == "menuContent" || $(
|
event.target).parents("#menuContent").length > 0)) {
|
UserInfoDlg.hideDeptSelectTree();
|
}
|
}
|
|
$(function () {
|
Feng.initValidator("userInfoForm", UserInfoDlg.validateFields);
|
|
//初始化性别选项
|
$("#sex").val($("#sexValue").val());
|
|
var ztree = new $ZTree("treeDemo", "/dept/tree");
|
ztree.bindOnClick(UserInfoDlg.onClickDept);
|
ztree.init();
|
instance = ztree;
|
|
// 初始化头像上传
|
var avatarUp = new $WebUpload("avatar");
|
avatarUp.setUploadBarId("progressBar");
|
avatarUp.init();
|
|
document.getElementById('roleid').value = $("#roleid_").val();
|
});
|