Authored by 王涛
... ... @@ -60,6 +60,118 @@
}
return false;
}
// Start Wang 2021/11/3 10:13 密码不能修改 [https://hgkj.5upm.com/bug-view-65.html]
/**
* 表单提交处理
*
* 作者: Wang
* 时间:2021/11/3 10:10
*/
function verifyForm(pattern, patternTips,last5His){
form.render();
//自定义验证
form.verify((function(pattern, patternTips,last5His) {
return {
pass: function (value) {
if (value === ''){
return '必填项不能位空';
}
if (value === $('#oldPassword').val()){
return '新密码不能与旧密码一致';
}
if(pattern && !new RegExp(pattern).test(value)){
return patternTips;
}
//临时增加用户组写死密码 joke add 20210508
if (last5His && last5His.length > 0 && checkHas(last5His,value)){
return '不能使用最近5次密码';
}
}
//确认密码
, repass: function (value) {
if (value === ''){
return '必填项不能位空';
}
if (value !== $('#setting-new-password').val()) {
return '两次密码输入不一致';
}
}
};
})(pattern, patternTips,last5His));
//设置密码
form.on('submit(setmypass)', function (obj) {
var newPassword = $("#setting-new-password").val();
var oldPassword = $("#oldPassword").val();
var loginUser = sessions.getUser();
var sysUser ={};
sysUser.newPassword = newPassword;
sysUser.oldPassword = oldPassword;
if(loginUser == "admin"){
sysUser.id = 1;
}else {
sysUser.id = 0;
sysUser.username = loginUser;
}
//修改密码
$.ajax({
url: common.domainName + "/api-user/users/password?access_token="+accessToken, //实际使用请改成服务端真实接口
timeout: 50000, //超时时间设置,单位毫秒
type: 'put',
contentType : "application/json;charset=utf-8",
data:JSON.stringify(sysUser),
success: function (data) {
var icon = 1;
if (data.resp_code != 0){
icon = 2;
}
layer.msg(data.resp_msg, {
offset: '15px'
, icon: icon
, time: 2000
}, function () {
if (icon === 1){
// admin.events.refresh();
if (forceType){
localStorage.removeItem("showChangePwd");
}
admin.exit();
}
});
},
error: function (xhr, textStatus, errorThrown) {
$(obj).attr("disabled", false);
if (textStatus == 'timeout') {
layer.msg("请求超时,请重试!", {
icon: 5
, time: 2000
});
return;
}
var msg = xhr.responseText;
if (msg == undefined) {
layer.msg("请求超时,请重试!", {
icon: 5
, time: 2000
});
} else {
var response = JSON.parse(msg);
var message = response.error_description;
if (message == undefined) {
message = response.message;
}
layer.msg(message, {
icon: 5
, time: 2000
});
}
}
});
});
}
//joke add 20210506 获取密码级别
function getPwdLevel(){
... ... @@ -72,113 +184,15 @@
var pattern = data.object.ddicDesc.split(' ')[0];
var patternTips = data.object.ddicDesc.split(' ')[1];
var last5His = passwords;
form.render();
//自定义验证
form.verify((function(pattern, patternTips,last5His) {
return {
pass: function (value) {
if (value === ''){
return '必填项不能位空';
}
if (value === $('#oldPassword').val()){
return '新密码不能与旧密码一致';
}
if(!new RegExp(pattern).test(value)){
return patternTips;
}
//临时增加用户组写死密码 joke add 20210508
if (checkHas(last5His,value)){
return '不能使用最近5次密码';
}
}
//确认密码
, repass: function (value) {
if (value === ''){
return '必填项不能位空';
}
if (value !== $('#setting-new-password').val()) {
return '两次密码输入不一致';
}
}
};
})(pattern, patternTips,last5His));
//设置密码
form.on('submit(setmypass)', function (obj) {
var newPassword = $("#setting-new-password").val();
var oldPassword = $("#oldPassword").val();
var loginUser = sessions.getUser();
var sysUser ={};
sysUser.newPassword = newPassword;
sysUser.oldPassword = oldPassword;
if(loginUser == "admin"){
sysUser.id = 1;
}else {
sysUser.id = 0;
sysUser.username = loginUser;
}
//修改密码
$.ajax({
url: common.domainName + "/api-user/users/password?access_token="+accessToken, //实际使用请改成服务端真实接口
timeout: 50000, //超时时间设置,单位毫秒
type: 'put',
contentType : "application/json;charset=utf-8",
data:JSON.stringify(sysUser),
success: function (data) {
var icon = 1;
if (data.resp_code != 0){
icon = 2;
}
layer.msg(data.resp_msg, {
offset: '15px'
, icon: icon
, time: 2000
}, function () {
if (icon === 1){
// admin.events.refresh();
if (forceType){
localStorage.removeItem("showChangePwd");
}
admin.exit();
}
});
},
error: function (xhr, textStatus, errorThrown) {
$(obj).attr("disabled", false);
if (textStatus == 'timeout') {
layer.msg("请求超时,请重试!", {
icon: 5
, time: 2000
});
return;
}
var msg = xhr.responseText;
if (msg == undefined) {
layer.msg("请求超时,请重试!", {
icon: 5
, time: 2000
});
} else {
var response = JSON.parse(msg);
var message = response.error_description;
if (message == undefined) {
message = response.message;
}
layer.msg(message, {
icon: 5
, time: 2000
});
}
}
});
});
verifyForm(pattern, patternTips,last5His);
} else {
layer.msg('没有获取去密码级别,将不做密码级别验证!', {icon: 0});
verifyForm(undefined, undefined,passwords);
}
}
});
}
// End Wang 2021/11/3 10:12 密码不能修改 [https://hgkj.5upm.com/bug-view-65.html]
$('.layui-layer-setwin .layui-layer-close').click(function () {
... ... @@ -211,4 +225,4 @@
});
});
});
</script>
\ No newline at end of file
</script>
... ...