登录修改

Uat_IRC_Net8
he 2024-12-26 17:16:24 +08:00
parent 7eaa61678b
commit 3833a1e696
1 changed files with 137 additions and 16 deletions

View File

@ -268,12 +268,12 @@ var abp = abp || {};
} }
function loginUserInternal(tenantId, callback) { function loginUserInternal(tenantId, callback) {
var usernameOrEmailAddress = document.getElementById('userName').value; var usernameOrEmailAddress = document.getElementById('userName').value;
if (!usernameOrEmailAddress) { // if (!usernameOrEmailAddress) {
alert('UserName Can Not Be Null'); // alert('UserName Can Not Be Null');
return false; // return false;
} // }
var password = document.getElementById('password').value; var password = document.getElementById('password').value;
var pwdMd5 = document.getElementById('pwdMd5').value; var pwdMd5 = document.getElementById('pwdMd5').value;
@ -286,12 +286,12 @@ var abp = abp || {};
var xhr = new XMLHttpRequest(); var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () { xhr.onreadystatechange = function () {
if (xhr.readyState === XMLHttpRequest.DONE) { if (xhr.readyState === XMLHttpRequest.DONE) {
debugger; // debugger;
if (xhr.status === 200) { if (xhr.status === 200) {
debugger; // debugger;
var resultdata = JSON.parse(xhr.responseText); var resultdata = JSON.parse(xhr.responseText);
if (resultdata.ErrorMessage != '') { if (resultdata.ErrorMessage != '') {
alert(resultdata.ErrorMessage); alert(resultdata.ErrorMessage);
@ -303,18 +303,23 @@ var abp = abp || {};
else { else {
var responseJSON = JSON.parse(xhr.responseText); var responseJSON = JSON.parse(xhr.responseText);
var result = responseJSON; var result = responseJSON;
var expireDate = new Date(Date.now() + (60*60*24 * 1000)); var expireDate = new Date(Date.now() + (60 * 60 * 24 * 1000));
abp.auth.setToken(result.Result.JWTStr, expireDate); abp.auth.setToken(result.Result.JWTStr, expireDate);
callback(); let selectDom = document.getElementById("roleSelect")
selectDom.options.length = 0;
result.Result.BasicInfo.AccountList.forEach(item => {
selectDom.options.add(new Option(item.UserTypeShortName, item.Id));
})
// callback();
} }
} else { } else {
alert('Login failed !'); alert('Login failed !');
} }
} }
}; };
xhr.open('POST', '/user/login', true); xhr.open('POST', '/User/getUserLoginRoleList', true);
xhr.setRequestHeader('Abp.TenantId', tenantId); xhr.setRequestHeader('Abp.TenantId', tenantId);
xhr.setRequestHeader('Content-type', 'application/json'); xhr.setRequestHeader('Content-type', 'application/json');
var parm = { var parm = {
@ -330,7 +335,63 @@ var abp = abp || {};
//xhr.send("{" + "userName:'" + usernameOrEmailAddress + "'," + "passWord:'" + password + "'}"); //xhr.send("{" + "userName:'" + usernameOrEmailAddress + "'," + "passWord:'" + password + "'}");
}; };
function loginUserInternalRole(tenantId, callback) {
var usernameOrEmailAddress = document.getElementById('roleSelect').value;
//if (!usernameOrEmailAddress) {
// alert('UserName Can Not Be Null');
// return false;
//}
var password = document.getElementById('password').value;
var pwdMd5 = document.getElementById('pwdMd5').value;
console.log(pwdMd5);
if (!password && !pwdMd5) {
alert('PassWord And Md5 Can Not Be Null');
return false;
}
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === XMLHttpRequest.DONE) {
// debugger;
if (xhr.status === 200) {
// debugger;
var resultdata = JSON.parse(xhr.responseText);
if (resultdata.ErrorMessage != '') {
alert(resultdata.ErrorMessage);
return false;
}
if (resultdata.code == 300) {
alert(resultdata.message);
}
else {
var responseJSON = JSON.parse(xhr.responseText);
var result = responseJSON;
var expireDate = new Date(Date.now() + (60 * 60 * 24 * 1000));
abp.auth.setToken(result.Result, expireDate);
callback();
}
} else {
alert('Login failed !');
}
}
};
xhr.open('get', `/User/loginSelectUserRole?userRoleId=${usernameOrEmailAddress}`, true);
xhr.setRequestHeader('Abp.TenantId', tenantId);
xhr.setRequestHeader('Content-type', 'application/json');
var authToken = abp.auth.getToken();
xhr.setRequestHeader('Authorization', `Bearer ${authToken}`);
xhr.send();
//xhr.send("{" + "userName:'" + usernameOrEmailAddress + "'," + "passWord:'" + password + "'}");
};
abp.swagger.login = function (callback) { abp.swagger.login = function (callback) {
//Get TenantId first //Get TenantId first
var tenancyName = document.getElementById('tenancyName').value; var tenancyName = document.getElementById('tenancyName').value;
@ -356,6 +417,31 @@ var abp = abp || {};
loginUserInternal(null, callback); // Login for host loginUserInternal(null, callback); // Login for host
} }
}; };
abp.swagger.loginRole = function (callback) {
//Get TenantId first
var tenancyName = document.getElementById('tenancyName').value;
if (tenancyName) {
var xhrTenancyName = new XMLHttpRequest();
xhrTenancyName.onreadystatechange = function () {
if (xhrTenancyName.readyState === XMLHttpRequest.DONE && xhrTenancyName.status === 200) {
var responseJSON = JSON.parse(xhrTenancyName.responseText);
var result = responseJSON.result;
if (result.state === 1) { // Tenant exists and active.
loginUserInternalRole(result.tenantId, callback); // Login for tenant
} else {
alert('There is no such tenant or tenant is not active !');
}
}
};
xhrTenancyName.open('POST', '/api/services/app/Account/IsTenantAvailable', true);
xhrTenancyName.setRequestHeader('Content-type', 'application/json');
xhrTenancyName.send("{" + "tenancyName:'" + tenancyName + "'}");
} else {
loginUserInternalRole(null, callback); // Login for host
}
};
abp.swagger.logout = function () { abp.swagger.logout = function () {
abp.auth.clearToken(); abp.auth.clearToken();
@ -419,9 +505,10 @@ var abp = abp || {};
//Inputs //Inputs
createInput(modalUxContent, 'tenancyName', 'Tenancy Name (Leave empty for Host)'); createInput(modalUxContent, 'tenancyName', 'Tenancy Name (Leave empty for Host)');
createInput(modalUxContent, 'userName', 'Username or email address','text','cyldev'); createInput(modalUxContent, 'userName', 'Username or email address', 'text', 'cyldev');
createInput(modalUxContent, 'password', 'Password', 'password', '123456'); createInput(modalUxContent, 'password', 'Password', 'password', '123456');
createInput(modalUxContent, 'pwdMd5', 'PwdMd5', 'text', ''); createInput(modalUxContent, 'pwdMd5', 'PwdMd5', 'text', '');
createSelect(modalUxContent, 'roleSelect', 'role', [])
//Buttons //Buttons
var authBtnWrapper = document.createElement('div'); var authBtnWrapper = document.createElement('div');
@ -444,9 +531,18 @@ var abp = abp || {};
abp.swagger.login(loginCallback); abp.swagger.login(loginCallback);
}; };
authBtnWrapper.appendChild(authorizeButton); authBtnWrapper.appendChild(authorizeButton);
// login role
var authorizeButton = document.createElement('button');
authorizeButton.className = 'btn modal-btn auth authorize button';
authorizeButton.innerText = 'LoginRole';
authorizeButton.onclick = function () {
abp.swagger.loginRole(loginCallback);
};
authBtnWrapper.appendChild(authorizeButton);
} }
function createInput(container, id, title, type, value="") { function createInput(container, id, title, type, value = "") {
var wrapper = document.createElement('div'); var wrapper = document.createElement('div');
wrapper.className = 'wrapper'; wrapper.className = 'wrapper';
if (id == "tenancyName") { if (id == "tenancyName") {
@ -470,6 +566,31 @@ var abp = abp || {};
input.autocomplete = "off"; input.autocomplete = "off";
section.appendChild(input);
}
function createSelect(container, id, title, option = []) {
var wrapper = document.createElement('div');
wrapper.className = 'wrapper';
if (id == "tenancyName") {
wrapper.style.display = 'none';
}
container.appendChild(wrapper);
var label = document.createElement('label');
label.innerText = title;
wrapper.appendChild(label);
var section = document.createElement('section');
section.className = 'block-tablet col-10-tablet block-desktop col-10-desktop';
wrapper.appendChild(section);
var input = document.createElement('select');
input.id = id;
input.style.width = '100%';
option.forEach(item => {
input.options.add(new Option(item.UserTypeShortName, item.Id));
})
section.appendChild(input); section.appendChild(input);
} }