在前端页面注册用户并指定角色以及删除用户的方法分享
本帖最后由 luolanqiang 于 2019-11-16 12:27 编辑老规矩,在这里使用了一些JavaScript ,大家注意查阅JavaScript API的索引,很有用处,而且也不需要过于专业的水准就能看懂一部分,我也是试出来的。
https://help.grapecity.com.cn/pa ... ion?pageId=23594302
注册用户并指定自定义属性及角色的方法:
至于注册用户和指定自定义属性,官方已经发布过几次了,不再赘述,其实指定角色的方法是一样的,通过JS搞定,代码如下:
//获取当前页面
var page = Forguncy.Page;
//获取当前页面上的用户单元格
var cell = page.getCell("username");
//获取此单元格的值
var cellValue1 = cell.getValue();
//获取当前页面
var page = Forguncy.Page;
//获取当前页面上的用户单元格
var cell = page.getCell("roleName");
//获取此单元格的值
var cellValue2 = cell.getValue();
//将指定的用户添加到指定的组
Forguncy.addUserToRole(
//指定用户
(cellValue1),
//指定组
(cellValue2),
//添加成功时弹出警告框,显示添加成功
function () {
},
//添加失败时弹出警告框,显示失败信息
function (error) {
alert(error)
}
);
关键在于,要将角色所在的单元格命名为roleName,在这里首先是获取了两个单元格的值,分别为roleName和username,就是用户名和角色,然后指定这个用户名的角色,当然也可以调用API删除用户的角色,但这个实例上并没有整合进去,有需要的话可以整合。
那么将用户注册和角色指定的代码合并起来就是这样的:var p = Forguncy.Page;
var data = {
account: p.getCell("username").getValue(),
password: p.getCell("password").getValue(),
nicheng: p.getCell("nicheng").getValue(),
mail: p.getCell("email").getValue(),
exPropertyName1: p.getCell("exPropertyName1").getValue(),
exPropertyValue1: p.getCell("exPropertyValue1").getValue(),
exPropertyName2: p.getCell("exPropertyName2").getValue(),
exPropertyValue2: p.getCell("exPropertyValue2").getValue(),
exPropertyName3: p.getCell("exPropertyName3").getValue(),
exPropertyValue3: p.getCell("exPropertyValue3").getValue()
};
var result = false;
Forguncy.Common.forguncyPostSync("customapi/myregisteapi/adduser", data, function (e) {
if (e === "注册成功!") {
result = true;
}
if (e) {
alert(e);
}
});
//获取当前页面
var page = Forguncy.Page;
//获取当前页面上的用户单元格
var cell = page.getCell("username");
//获取此单元格的值
var cellValue1 = cell.getValue();
//获取当前页面
var page = Forguncy.Page;
//获取当前页面上的用户单元格
var cell = page.getCell("roleName");
//获取此单元格的值
var cellValue2 = cell.getValue();
//将指定的用户添加到指定的组
Forguncy.addUserToRole(
//指定用户
(cellValue1),
//指定组
(cellValue2),
//添加成功时弹出警告框,显示添加成功
function () {
},
//添加失败时弹出警告框,显示失败信息
function (error) {
alert(error)
}
);
至于它后边跟的这个JS:
//获取当前页面
var page = Forguncy.Page;
//获取页面上的表格
var listview = page.getListView("表格1");
//重新从数据库加载数据
listview.reload();作用是刷新页面上的用户信息视图,就能看到新注册成功的用户加载到页面中,因为我们的页面上还有删除用户的功能:
请注意下边的那个加载了选定用户名的单元格要命名为name
删除用户的代码:
//获取当前页面
var page = Forguncy.Page;
//获取当前页面上名称为name的单元格
var cell = page.getCell("name");
//获取此单元格的值
var cellValue = cell.getValue();
//将指定的用户删除
Forguncy.deleteUser(
//指定用户
(cellValue),
//删除成功时弹出警告框,显示删除成功
function () {
alert("删除成功。")
},
//删除失败时弹出警告框,显示失败信息
function (error) {
alert(error)
}
);同样的,后边跟一个刷新用户信息视图表格的代码,所见即所得。
具体看工程文件。
请注意注册用户需要上传一个DLL文件,请解压后使用,见附件。
灰常给力啊老兄 :hjyzw:谢谢分享! 罗老板也是活字格圈里,响当当的人物,必须给力啊~
页:
[1]