/// <summary> /// 动态聚组查询获取数据 /// </summary> /// <param name="setting"></param> /// <param name="xmlFilterParams"></param> /// <returns></returns> public virtual System.Data.DataSet GetDynamicGroupQueryData(MB.Util.Model.DynamicGroupSetting setting, string xmlFilterParams) { using (MB.Orm.DB.OperationDatabaseScope scope = new OperationDatabaseScope(true)) { QueryParameterInfo[] filters = new MB.Util.Serializer.QueryParameterXmlSerializer().DeSerializer(xmlFilterParams); return(new ObjectEditHelper().GetDynamicGroupQueryData(setting, filters)); } }
/// <summary> /// 动态聚组查询获取数据 /// </summary> /// <param name="baseRule"></param> /// <param name="setting"></param> /// <param name="parInfos"></param> /// <param name="parValues"></param> /// <returns></returns> public System.Data.DataSet GetDynamicGroupQueryData(MB.Util.Model.DynamicGroupSetting setting, QueryParameterInfo[] parInfos, params object[] parValues) { MB.Orm.Mapping.QueryParameterMappings queryMappings = null; if (!string.IsNullOrEmpty(setting.EntityInfos.MainEntity.Alias)) { queryMappings = new Orm.Mapping.QueryParameterMappings(setting.EntityInfos.MainEntity.Alias); } else { queryMappings = new Orm.Mapping.QueryParameterMappings(setting.EntityInfos.MainEntity.Name); } string sqlFilter = MB.Orm.DbSql.SqlShareHelper.Instance.QueryParametersToSqlString(queryMappings, parInfos); Database db = MB.Orm.Persistence.DatabaseHelper.CreateDatabase(); MB.Orm.Persistence.PersistenceManagerHelper persitence = MB.Orm.Persistence.PersistenceManagerHelper.NewInstance; var sql = MB.Orm.DbSql.DynamicGroupBuilder.DynamicGroupBuilderFactory.CreateQueryBuilder(setting).BuildDynamicQuery(sqlFilter); DbCommand dbCmd = persitence.GetSqlStringCommand(db, sql); DataSet ds = null; try { MB.Util.TraceEx.Write("正在执行:" + MB.Orm.Persistence.DbCommandExecuteTrack.Instance.CommandToTrackMessage(db, dbCmd)); ds = new DatabaseExecuteHelper(_QueryBehavior).ExecuteDataSet(db, dbCmd); } catch (Exception ex) { throw new MB.RuleBase.Exceptions.DatabaseExecuteException("GetDynamicGroupQueryData 出错!", ex); } return(ds); }
/// <summary> /// 把设置里面的DataArea转换成IU需要的数据源 /// </summary> /// <param name="setting"></param> /// <returns></returns> public static List <DynamicGroupCondition> ConvertDynamicGroupSettingToDataAreaConditions(MB.Util.Model.DynamicGroupSetting dynamicGroupSetting) { List <DynamicGroupCondition> results = new List <DynamicGroupCondition>(); if (dynamicGroupSetting != null && dynamicGroupSetting.DataAreaFields != null && dynamicGroupSetting.DataAreaFields.Count > 0) { foreach (KeyValuePair <string, List <MB.Util.Model.DataAreaField> > dataAreaList in dynamicGroupSetting.DataAreaFields) { dataAreaList.Value.ForEach(data => { DynamicGroupCondition dgCondition = new DynamicGroupCondition(); dgCondition.ENTITY_NAME = dataAreaList.Key; dgCondition.ENTITY_DESCRIPTION = data.EntityDescription; dgCondition.GROUP_NAME = data.Name; dgCondition.GROUP_DESCRIPTION = data.Description; dgCondition.GROUP_FIELD_TYPE = data.DataType; dgCondition.SUMMARY_TYPE = data.SummaryItemType.ToString(); results.Add(dgCondition); }); } } return(results); }
public virtual DataSet GetDynamicGroupQueryData(MB.Util.Model.DynamicGroupSetting setting, MB.Util.Model.QueryParameterInfo[] filterParams) { throw new NotImplementedException(); }