/// <summary> /// 获取组织同步页面设置信息 /// </summary> /// <returns>返回组织同步设置信息</returns> public JsonResult GetSyncADInfo() { SyncADViewModel model = new SyncADViewModel(); //活动目录路径: model.Route = this.Engine.SettingManager.GetCustomSetting(OThinker.H3.Settings.CustomSetting.Setting_ADPathes); //密码 model.Password = this.Engine.SettingManager.GetCustomSetting(OThinker.H3.Settings.CustomSetting.Setting_ADPassword); //用户名 model.UserName = this.Engine.SettingManager.GetCustomSetting(OThinker.H3.Settings.CustomSetting.Setting_ADUser); //上一次加载时间 model.LastSyncTime = H3.Settings.CustomSetting.GetLastSyncTime(this.Engine.SettingManager).ToString(); if (DateTime.Parse(model.LastSyncTime) < new DateTime(1900, 1, 1)) { model.LastSyncTime = "未同步"; } //自动同步时间 model.AutoSynchTime = this.Engine.SettingManager.GetCustomSetting(OThinker.H3.Settings.CustomSetting.Setting_ADSyncTimes); //自动重新加载时间 model.AutoReloadTime = this.Engine.SettingManager.GetCustomSetting(OThinker.H3.Settings.CustomSetting.Setting_OrgReloadTimes); //启用AD认证 model.ADValidator = OThinker.H3.Settings.CustomSetting.GetEnableADValidation(this.Engine.SettingManager); return(Json(model, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 保存更新组织同步设置 /// </summary> /// <param name="model"></param> /// <returns>保存更新结果</returns> public JsonResult SaveSyncADInfo(SyncADViewModel model) { ActionResult result = new ActionResult(false, ""); try { // 域 this.Engine.SettingManager.SetCustomSetting(OThinker.H3.Settings.CustomSetting.Setting_ADPathes, model.Route); this.Engine.SettingManager.SetCustomSetting(H3.Settings.CustomSetting.Setting_ADUser, model.UserName); if (model.Password != null && model.Password != "") { this.Engine.SettingManager.SetCustomSetting(H3.Settings.CustomSetting.Setting_ADPassword, model.Password); } OThinker.H3.Settings.CustomSetting.SetEnableADValidation(this.Engine.SettingManager, model.ADValidator); OThinker.H3.Settings.CustomSetting.SetADSyncTimes(this.Engine.SettingManager, model.AutoSynchTime); OThinker.H3.Settings.CustomSetting.SetOrgReloadTimes(this.Engine.SettingManager, model.AutoReloadTime); result.Success = true; result.Message = "msgGlobalString.SaveSucced"; } catch (Exception ex) { result.Success = false; result.Message = "msgGlobalString.SaveFailed"; result.Extend = ex.Message; } return(Json(result)); }
/// <summary> /// 测试AD连接是否成功 /// </summary> /// <param name="model"></param> /// <returns>连接成功返回成功对话框,连接失败返回失败错误信息</returns> public JsonResult TestADConnection(SyncADViewModel model) { ActionResult result = new ActionResult(false, ""); if (string.IsNullOrEmpty(model.Route) || string.IsNullOrEmpty(model.UserName) || string.IsNullOrEmpty(model.Password)) { result.Message = "SyncAD.ConnectFailed"; } else { string message = ""; //OThinker.Organization.ADAdapter adapter = new OThinker.Organization.ADAdapter(this.Engine.Organization, this.Engine.LogWriter); //adapter.Sync(new string[] { "LDAP://OU=奥哲科技,DC=authine,DC=com" }, "OThinker\\zztb", "h3password"); //测试连接 if (!OThinker.Organization.ADAdapter.ADConnect(model.Route, model.UserName, model.Password, out message)) { result.Extend = message; result.Success = false; result.Message = "SyncAD.ConnectFailed"; return(Json(result)); } result.Success = true; result.Message = "SyncAD.ConnectSucess"; } return(Json(result)); }