public JsonResult GetUnitUserData2(string unitCode) { //Bo.BoFactory.GetVersionTrackBo. IUserService us = Beyondbit.BUA.Client.ServiceFactory.Instance().GetUserService(); IOrgService os = Beyondbit.BUA.Client.ServiceFactory.Instance().GetOrgService(); Org orgUnit = os.GetOrgBaseInfo(ObjectType.Org, unitCode); Hashtable resultTable = new Hashtable(); resultTable["id"] = "o_" + unitCode; resultTable["text"] = orgUnit.OrgName; List <Hashtable> lst = new List <Hashtable>(); resultTable["children"] = lst; List <User> users = new List <Beyondbit.BUA.Client.User>(); User[] _users = null; try { _users = us.QueryUsersByObjectCode(ObjectType.Org, unitCode); } catch { } if (_users != null && _users.Length > 0) { foreach (Beyondbit.BUA.Client.User u in _users) { Hashtable hUser = new Hashtable(); hUser["id"] = "u_" + u.UserUid; hUser["text"] = u.UserName; lst.Add(hUser); } } Org[] childOrgs = os.QuerySubOrgs(unitCode); if (childOrgs != null && childOrgs.Length > 0) { foreach (Org org in childOrgs) { Hashtable hOrg = new Hashtable(); hOrg["id"] = "o_" + org.OrgCode; hOrg["text"] = org.OrgName; hOrg["children"] = new List <Hashtable>(); lst.Add(hOrg); parseUnitUserData(hOrg, org, us, os); } } Hashtable[] arr = new Hashtable[1]; arr[0] = resultTable; //List<User> users = new List<Beyondbit.BUA.Client.User>(); //User[] _users = us.QueryUsersByObjectCode(ObjectType.Org, unitCode); return(Json(arr, JsonRequestBehavior.AllowGet)); }
public JsonResult PreCalcUnitCode(string unitName) { Hashtable r = new Hashtable(); string py = NPinyin.Pinyin.GetInitials(unitName, System.Text.Encoding.UTF8); IOrgService os = Beyondbit.BUA.Client.ServiceFactory.Instance().GetOrgService(); bool unitCodeExists = true; string msg = "组织机构代码已存在"; try { Org orgExists = os.GetOrgBaseInfo(ObjectType.Org, py); } catch (ClientException ex) { if (ex.ErrCode == "9001") { unitCodeExists = false; msg = ex.Message; } } if (unitCodeExists) { r["r"] = false; r["unitcode"] = ""; r["d"] = msg; return(Json(r)); } if (String.IsNullOrEmpty(unitName)) { r["r"] = false; r["unitcode"] = ""; r["d"] = "计算单位代码失败!"; } else { r["r"] = true; r["unitcode"] = py; r["d"] = "计算单位代码成功!"; } return(Json(r)); }
public JsonResult AddUnit(string unitCode, string unit) { IOrgService os = Beyondbit.BUA.Client.ServiceFactory.Instance().GetOrgService(); Hashtable r = new Hashtable(); try { Org orgExists = os.GetOrgBaseInfo(ObjectType.Org, unitCode); } catch (ClientException ex) { if (ex.ErrCode == "9001") { //unitCodeExists = false; //msg = ex.Message; } } //Org org = new Org(); //org.OrgCode = unitCode; //org.OrgName = unit; //org.ParentOrgCode = os.GetTopOrg().OrgCode; try { //os.AddOrg(org); } catch (ClientException e) { //1002,1003 r["r"] = false; r["d"] = e.Message; return(Json(r)); } SmartBox.Console.Common.Entities.SMC_Unit Unit = new Common.Entities.SMC_Unit(); Unit.Unit_ID = unitCode; Unit.Unit_Name = unit; Bo.BoFactory.GetSMC_UnitBo.InsertOrUpdate(Unit); r["r"] = true; r["d"] = "新增单位成功!"; return(Json(r)); }
public virtual void BUAUserSyncToInside() { try { ServiceFactory factory = Beyondbit.BUA.Client.ServiceFactory.Instance(); SMC_UserDao userDao = new SMC_UserDao(AppConfig.statisticDBKey); IUserService us = factory.GetUserService(); IOrgService os = factory.GetOrgService(); Org topOrg = os.GetTopOrg(); Beyondbit.BUA.Client.User[] users = us.QueryUsersByObjectCode(ObjectType.Org, topOrg.OrgCode); string orgCode = topOrg.OrgCode; List <Org> orgs = new List <Org>(); GetOrgs(os, orgCode, orgs); if (orgs.Count > 0) { foreach (Org o in orgs) { Beyondbit.BUA.Client.User[] user = GetUsers(us, o.OrgCode); if (users != null && users.Length > 0) { foreach (Beyondbit.BUA.Client.User _u in users) { SMC_User u = null; u = userDao.GetUser(_u.UserUid); if (u == null) { u = new SMC_User(); u.U_NAME = _u.UserFullName; u.U_PASSWORD = _u.UserPassword; u.U_UID = _u.UserUid; int id = userDao.GetMaxId() + 1; u.U_ID = id; string unitCode = os.GetUnitCode(ObjectType.User, u.U_UID); Org unitOrg = os.GetOrgBaseInfo(ObjectType.Org, unitCode); u.u_unitname = unitOrg.OrgName; u.U_UNITCODE = unitCode; u.u_enable_status = UserEnabledStatus.UnAuthed; u.u_auth_submit_time = DateTime.Now; userDao.Insert(u); userDao.UpdateMaxId(); } else { u.U_NAME = _u.UserFullName; u.U_PASSWORD = _u.UserPassword; string unitCode = os.GetUnitCode(ObjectType.User, u.U_UID); Org unitOrg = os.GetOrgBaseInfo(ObjectType.Org, unitCode); u.u_unitname = unitOrg.OrgName; u.U_UNITCODE = unitCode; u.u_enable_status = UserEnabledStatus.UnAuthed; u.u_auth_submit_time = DateTime.Now; userDao.Update(u); } } } } } } catch (DalException ex) { throw new BOException("同步BUA用户出错", ex); } }
public virtual void BUAUserSyncToInside(string ids, Hashtable result) { ServiceFactory factory = Beyondbit.BUA.Client.ServiceFactory.Instance(); IUserService us = factory.GetUserService(); IOrgService os = factory.GetOrgService(); SMC_UserDao userDao = new SMC_UserDao(AppConfig.statisticDBKey); SMC_BUAUserSyncToInsideDao buaSyncInsideDao = new SMC_BUAUserSyncToInsideDao(AppConfig.statisticDBKey); GlobalParamDao globalParamDao = new GlobalParamDao(AppConfig.statisticDBKey); GlobalParam p = globalParamDao.GetGlobalParam("user_default_status"); int batNo = 0; try { batNo = buaSyncInsideDao.GetMaxBatNo(); } catch (Exception e) { } batNo += 1; string[] idlist = ids.Split(",".ToCharArray()); foreach (string uid in idlist) { if (String.IsNullOrEmpty(uid)) { continue; } Beyondbit.BUA.Client.User _u = null; try { _u = us.GetUserInfo(uid); } catch (Exception ex) { result["Msg"] += uid + ex.Message; continue; } SMC_BUAUserSyncToInside log = new SMC_BUAUserSyncToInside(); log.sync_bat_no = batNo; try { log.sync_status = true; log.sync_time = DateTime.Now; log.sync_user_name = ""; log.sync_user_uid = ""; log.user_name = _u.UserFullName; log.user_uid = _u.UserUid; log.description = "同步成功"; log.busi_id = buaSyncInsideDao.GetMaxId() + 1; SMC_UnitDao unitDao = new SMC_UnitDao(AppConfig.statisticDBKey); SMC_User u = null; u = userDao.GetUser(_u.UserUid); if (u == null) { u = new SMC_User(); u.U_NAME = _u.UserFullName; u.U_PASSWORD = _u.UserPassword; u.U_UID = _u.UserUid; int id = userDao.GetMaxId() + 1; u.U_ID = id; string unitCode = os.GetUnitCode(ObjectType.User, u.U_UID); Org unitOrg = os.GetOrgBaseInfo(ObjectType.Org, unitCode); u.U_UNITCODE = unitCode; //List<KeyValuePair<string, string>> pars = new List<KeyValuePair<string,string>>(); //pars.Add(new KeyValuePair<string, string>("unit_id",unitCode)); SMC_Unit unit = unitDao.Get(unitCode); if (unit == null) { unit = new SMC_Unit(); unit.Unit_ID = unitCode; unit.Unit_Name = unitOrg.OrgName; unit.Unit_Sequence = 0; unit.Unit_UpdateTime = DateTime.Now; unit.Unit_CreatedTime = DateTime.Now; unit.Upper_Unit_ID = ""; unit.Unit_Path = unitCode; unitDao.Insert(unit); } u.u_unitname = unitOrg.OrgName; u.U_CREATEDDATE = DateTime.Now; u.u_enable_status = p.ConfigValue == "1" ? UserEnabledStatus.Enabled : UserEnabledStatus.UnAuthed; u.u_auth_submit_time = DateTime.Now; u.u_need_sync = false; userDao.Insert(u); userDao.UpdateMaxId(); } else { u.U_NAME = _u.UserFullName; u.U_PASSWORD = _u.UserPassword; u.U_CREATEDDATE = DateTime.Now; string unitCode = os.GetUnitCode(ObjectType.User, u.U_UID); Org unitOrg = os.GetOrgBaseInfo(ObjectType.Org, unitCode); //List<KeyValuePair<string, string>> pars = new List<KeyValuePair<string, string>>(); //pars.Add(new KeyValuePair<string, string>("unit_id", unitCode)); SMC_Unit unit = unitDao.Get(unitCode); if (unit == null) { unit = new SMC_Unit(); unit.Unit_ID = unitCode; unit.Unit_Name = unitOrg.OrgName; unit.Unit_Sequence = 0; unit.Unit_UpdateTime = DateTime.Now; unit.Unit_CreatedTime = DateTime.Now; unit.Upper_Unit_ID = ""; unit.Unit_Path = unitCode; unitDao.Insert(unit); } u.u_unitname = unitOrg.OrgName; u.U_UNITCODE = unitCode; u.u_enable_status = p.ConfigValue == "1" ? UserEnabledStatus.Enabled : UserEnabledStatus.UnAuthed; u.u_auth_submit_time = DateTime.Now; u.u_need_sync = false; u.u_update_time = DateTime.Now; userDao.Update(u); } } catch (Exception ex) { log.sync_status = false; log.description = "同步失败,原因可能是:" + ex.Message + "。\r\nStackTrace:\r\n" + ex.StackTrace; if (result != null) { result["IsSuccess"] = false; result["Msg"] += log.description; } } try { buaSyncInsideDao.Insert(log); buaSyncInsideDao.UpdateMaxId(); } catch (Exception ex) { } } }