/// <summary> /// 获取语言 /// </summary> /// <returns></returns> public ReturnMessage <List <CodeNameDTO> > GetLanguages(Credentials credentials) { ReturnMessage <List <CodeNameDTO> > ret = new ReturnMessage <List <CodeNameDTO> >(); Enterprise enterprise = ContextObject.GetEnterprise(credentials.EnterpriseID); using (new SystemWritablePolicy()) { PlatformContext.Current.EnterpriseID = enterprise.Code; PlatformContext.Current.EnterpriseName = enterprise.Name; GetLanguageInfoProxy getLanguageInfoProxy = new GetLanguageInfoProxy(); List <LanguageInfoDataTransferObjectData> dataList = getLanguageInfoProxy.Do(); List <CodeNameDTO> dtoList = new List <CodeNameDTO>(); foreach (LanguageInfoDataTransferObjectData languageInfoDataTransferObjectData in dataList) { if (languageInfoDataTransferObjectData.Code == "EffectiveCount") { continue; } if (!languageInfoDataTransferObjectData.IsSystem) { continue; } CodeNameDTO codeNameDTO = new CodeNameDTO(); codeNameDTO.Code = languageInfoDataTransferObjectData.Code; codeNameDTO.Name = languageInfoDataTransferObjectData.Name; dtoList.Add(codeNameDTO); } ret.Result = dtoList; } return(ret); }
/// <summary> /// 获取上下文环境信息 /// </summary> public ContextInfo GetContextInfo() { if (string.IsNullOrWhiteSpace(this.EnterpriseID)) { throw new U9ContextException("企业ID不能为空"); } if (string.IsNullOrWhiteSpace(this.OrgCode)) { throw new U9ContextException("组织不能为空"); } if (string.IsNullOrWhiteSpace(this.UserCode)) { throw new U9ContextException("用户不能为空"); } Enterprise enterprise = ContextObject.GetEnterprise(this.EnterpriseID); if (enterprise == null) { throw new U9ContextException(string.Format("企业:{0}不存在!", this.EnterpriseID)); } using (ContextObject contextObject = new ContextObject(enterprise)) { if (string.IsNullOrWhiteSpace(this.OrgCode)) { throw new U9ContextException("组织编码不能为空"); } Organization org = Organization.FindByCode(this.OrgCode); if (org == null) { throw new U9ContextException(string.Format("组织:{0}不存在", this.OrgCode)); } User user = User.FindByCode(this.UserCode); if (user == null) { throw new U9ContextException("用户不存在或密码不正确"); } string encryptPassword = ContextHelper.EncryptPassword(this.Password); if (encryptPassword != user.Password) { throw new U9ContextException("用户不存在或密码不正确"); } if (!user.IsAlive) { throw new U9ContextException("用户已失效"); } return(ContextInfo.GetContext(enterprise, org, user, this.Culture, this.SupportCultureNameList)); } }
private static Enterprise GetEnterpriseByTokenStr(string tokenStr) { if (string.IsNullOrEmpty(tokenStr)) { return(null); } string[] tokenArr = tokenStr.Split(TokenStrSplitSymbol); if (tokenArr.Length <= 1) { return(null); } string enterpriseID = tokenArr[0]; Enterprise enterprise = ContextObject.GetEnterprise(enterpriseID); if (enterprise == null) { throw new TokenException(string.Format("企业:{0} 不存在!", enterpriseID)); } return(enterprise); }
/// <summary> /// 获取组织 /// </summary> /// <returns></returns> public ReturnMessage <List <CodeNameDTO> > GetOrgsByUserCode(Credentials credentials) { ReturnMessage <List <CodeNameDTO> > ret = new ReturnMessage <List <CodeNameDTO> >(); ret.Result = new List <CodeNameDTO>(); if (string.IsNullOrEmpty(credentials.EnterpriseID) || string.IsNullOrEmpty(credentials.Culture)) { return(ret); } Enterprise enterprise = ContextObject.GetEnterprise(credentials.EnterpriseID); if (enterprise == null) { throw new Exception(string.Format("企业:{0} 不存在!", credentials.EnterpriseID)); } using (new SystemWritablePolicy()) { PlatformContext.Current.EnterpriseID = enterprise.Code; PlatformContext.Current.EnterpriseName = enterprise.Name; PlatformContext.Current.Culture = credentials.Culture; PlatformContext.Current.Default_Culture = credentials.Culture; GetOrgsByUserCodeProxy getOrgsByUserCodeProxy = new GetOrgsByUserCodeProxy(); getOrgsByUserCodeProxy.UserCode = credentials.UserCode; List <OrganizationDataTransferObjectData> dataList = getOrgsByUserCodeProxy.Do(); if (dataList != null && dataList.Count > 0) { foreach (OrganizationDataTransferObjectData objectData in dataList) { CodeNameDTO codeNameDTO = new CodeNameDTO(); codeNameDTO.Code = objectData.OrgCode; codeNameDTO.Name = objectData.Name; ret.Result.Add(codeNameDTO); } } } return(ret); }