/// <summary> /// 得到某个Schema角色在管理单元下的角色ID /// </summary> /// <param name="auCodeName"></param> /// <returns></returns> public ClientAURole GetAURoleObject(string auCodeName) { ClientAURole result = null; if (auCodeName.IsNotEmpty()) { lock (this._ClientAUSyncObject) { if (this._LastestAUCodeName != auCodeName) { ClientSchemaObjectBase au = AUCenterQueryService.Instance.GetObjectsByCodeNames(new string[] { auCodeName }, WrappedAUSchemaRole.AUSchemaType, true).FirstOrDefault(); if (au != null) { this._ClientRoleObject = AUCenterQueryService.Instance.GetAURoleBySchemaRoleID(au.ID, this.SchemaRoleID, true); } else { this._ClientRoleObject = null; } result = this._ClientRoleObject; this._LastestAUCodeName = auCodeName; } else { result = this._ClientRoleObject; } } } return(result); }
private static void EnsureID(ClientSchemaObjectBase clientObject) { if (clientObject.ID.IsNullOrEmpty()) { clientObject.ID = UuidHelper.NewUuidString(); } }
public static SchemaObjectBase ToSchemaObject(this ClientSchemaObjectBase clientObj, bool validateID) { clientObj.NullCheck("clientObj"); clientObj.SchemaType.CheckStringIsNullOrEmpty("SchemaType"); var config = SchemaDefine.GetSchemaConfig(clientObj.SchemaType); SchemaObjectBase scObj = (SchemaObjectBase)config.CreateInstance(); scObj.ID = clientObj.ID; if (validateID && clientObj.ID.IsNullOrEmpty()) { throw new InvalidOperationException("客户端对象ID不存在"); } scObj.Status = (SchemaObjectStatus)clientObj.Status; scObj.CreateDate = clientObj.CreateDate; scObj.VersionStartTime = clientObj.VersionStartTime; scObj.VersionEndTime = clientObj.VersionEndTime; scObj.Properties.CopyFrom(clientObj.Properties); if (clientObj.Creator != null) { scObj.Creator = (IUser)OguBase.CreateWrapperObject(clientObj.Creator.ID, SchemaType.Users); } return(scObj); }
public ClientSchemaObjectBase Echo(ClientSchemaObjectBase clientObj, bool viaSCObject) { if (viaSCObject) { return(clientObj.ToSchemaObject().ToClientSchemaObject()); } else { return(clientObj); } }
public ClientSchemaObjectBase UpdateObjectImageProperty(ClientSchemaObjectBase obj, string propertyName, string imageID) { var image = MCS.Library.SOA.DataObjects.ImagePropertyAdapter.Instance.Load(imageID); if (image == null) { throw new ApplicationException("图像未找到"); } return(Facade.UpdateObjectImageProperty(obj.ToSchemaObject(), propertyName, image).ToClientSchemaObject()); }
public static void CheckIDProvided(ClientSchemaObjectBase obj) { if (obj == null) { throw new ArgumentNullException("obj"); } if (string.IsNullOrEmpty(obj.ID)) { throw new ArgumentException("对象的ID未提供有效值"); } }
public static ClientSchemaObjectBase[] ToClientSchemaObjectBaseObjectArray(this SchemaObjectCollection pcObjects) { pcObjects.NullCheck("pcObjects"); ClientSchemaObjectBase[] result = new ClientSchemaObjectBase[pcObjects.Count]; int i = 0; foreach (SchemaObjectBase pcObj in pcObjects) { result[i++] = pcObj.ToClientSchemaObjectBaseObject(); } return(result); }
private static ClientSchemaObjectBase[] GetObjectByIDInner(string[] ids, string[] objectSchemaTypes, bool normalOnly) { objectSchemaTypes.NullCheck("objectSchemaTypes"); ClientSchemaObjectBase[] result; bool noIDMatch = ids != null && ids.Length == 0; if (noIDMatch) { result = new ClientSchemaObjectBase[0]; } else { ConnectiveSqlClauseCollection builder = new ConnectiveSqlClauseCollection(); if (ids != null) { InSqlClauseBuilder idInBuilder = new InSqlClauseBuilder("ID"); idInBuilder.AppendItem(ids); builder.Add(idInBuilder); } if (objectSchemaTypes != null) { InSqlClauseBuilder typeInBuilder = new InSqlClauseBuilder("SchemaType"); typeInBuilder.AppendItem(objectSchemaTypes); builder.Add(typeInBuilder); } if (normalOnly) { builder.Add((IConnectiveSqlClause) new WhereSqlClauseBuilder().AppendItem("Status", (int)SchemaObjectStatus.Normal)); } if (builder.IsEmpty == false) { result = SchemaObjectAdapter.Instance.Load(builder, SimpleRequestSoapMessage.Current.TimePoint).ToClientSCBaseObjectArray(); } else { result = new ClientSchemaObjectBase[0]; } } return(result); }
public static ClientSchemaObjectBase CreateClientBaseObject(string schemaType) { schemaType.CheckStringIsNullOrEmpty("schemaType"); ClientSchemaObjectBase result = null; Type targetType = null; if (SCObjectToClientHelper._SchemaToType.TryGetValue(schemaType, out targetType)) { result = (ClientSchemaObjectBase)TypeCreator.CreateInstance(targetType, schemaType); } else { result = new ClientGenericObject(schemaType); } return(result); }
private static void FillCommon(SchemaObjectBase pcObj, ClientSchemaObjectBase clientObj) { pcObj.NullCheck("pcObj"); clientObj.NullCheck("clientObj"); clientObj.ID = pcObj.ID; clientObj.CreateDate = pcObj.CreateDate; clientObj.SchemaType = pcObj.SchemaType; clientObj.Status = (ClientSchemaObjectStatus)pcObj.Status; clientObj.VersionEndTime = pcObj.VersionEndTime; clientObj.VersionStartTime = pcObj.VersionStartTime; if (pcObj.Creator != null) { clientObj.Creator = new ClientOguUser() { DisplayName = string.IsNullOrEmpty(pcObj.Creator.DisplayName) ? pcObj.Creator.Name : pcObj.Creator.DisplayName, ID = pcObj.Creator.ID }; } pcObj.Properties.CopyTo(clientObj.Properties); }
public ClientSchemaObjectBase UpdateObjectImageProperty(ClientSchemaObjectBase obj, string propertyName, string imageID) { return((ClientSchemaObjectBase)this.Invoke("UpdateObjectImageProperty", new object[] { obj, propertyName, imageID })[0]); }
public ClientSchemaObjectBase Echo(ClientSchemaObjectBase clientObj, bool viaSCObject) { return(this.Invoke("Echo", new object[] { clientObj, viaSCObject })[0] as ClientSchemaObjectBase); }
public static SchemaObjectBase ToSchemaObject(this ClientSchemaObjectBase clientObj) { return(ToSchemaObject(clientObj, true)); }