using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Appkit.Sys.Object;
using Appkit.Data;
using BCJK.Object;
public partial class BCJK_Other_UpdateStaff : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
CreateRole("FBJL", "FBJL");
CreateRole("CW", "CW");
CreateRole("ZH", "ZH");
CreateStaffRoster("FBJL");
CreateStaffRoster("CW");
CreateStaffRoster("ZH");
UpdateStaff();
Response.Write("OK");
}
/// <summary>
/// 创建角色 (FBJL)
/// </summary>
private void CreateRole(string code, string name)
{
string dCode = "CORP";
Dept d = Dept.Find(Dept.Struct.DCODE, dCode);
if (null == d)
throw new Exception(dCode + "部门为空!");
AkObject ao = d.FindChild(Deptrole.ThisName, Deptrole.Struct.RNAME, name);
if (null != ao)
return;
Deptrole r = Deptrole.CreateNew(d);
r.Rcode = code;
r.Rname = name;
r.Save();
}
/// <summary>
/// 创建用户组()
/// </summary>
/// <param name="name"></param>
private void CreateStaffRoster(string name)
{
Staffroster sr = Staffroster.Find(Staffroster.Struct.SRNAME, "用户组");
if (null == sr)
return;
AkObject ao = sr.FindChild(Staffroster.ThisName, Staffroster.Struct.SRNAME, name);
if (null != ao)
return;
Staffroster srFbjl = Staffroster.CreateNew(sr);
srFbjl.Srname = name;
srFbjl.Save();
}
/// <summary>
/// 更新用户
/// </summary>
private void UpdateStaff()
{
Staffroster sr = Staffroster.Find(Staffroster.Struct.SRNAME, "FBJL");
if (null == sr)
return;
YhbList list = new YhbList("");
foreach (Yhb item in list)
{
Staff u = Staff.Find(Staff.Struct.LOGINNAME, item.Gh);
if (null == u)
{
u = Staff.CreateNew(sr);
u.Loginname = item.Gh;
u.Pwd = "d41d8cd98f00b204e9800998ecf8427e";
u.Sname = item.Xm;
u.Save();
}
AddRoleFbjl(u);
}
}
/// <summary>
/// 为角色FBJL分配用户
/// </summary>
/// <param name="u"></param>
/// <returns></returns>
private void AddRoleFbjl(Staff u)
{
Deptrole r = Deptrole.Find(Deptrole.Struct.RCODE, "FBJL");
if (null == r)
throw new Exception("没有角色:FBJL");
if (null == r.FindChild(Staff.ThisName, u.ObjectId))
r.AddReference(u);
}
}