本文整理汇总了C#中FinancialAccountService.Any方法的典型用法代码示例。如果您正苦于以下问题:C# FinancialAccountService.Any方法的具体用法?C# FinancialAccountService.Any怎么用?C# FinancialAccountService.Any使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FinancialAccountService
的用法示例。
在下文中一共展示了FinancialAccountService.Any方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FormatValue
/// <summary>
/// Returns the field's current value(s)
/// </summary>
/// <param name="parentControl">The parent control.</param>
/// <param name="value">Information about the value</param>
/// <param name="configurationValues">The configuration values.</param>
/// <param name="condensed">Flag indicating if the value should be condensed (i.e. for use in a grid column)</param>
/// <returns></returns>
public override string FormatValue( Control parentControl, string value, Dictionary<string, ConfigurationValue> configurationValues, bool condensed )
{
string formattedValue = string.Empty;
if ( !string.IsNullOrWhiteSpace( value ) )
{
var guids = value.SplitDelimitedValues();
var accounts = new FinancialAccountService().Queryable().Where( a => guids.Contains( a.Guid.ToString() ) );
if ( accounts.Any() )
{
formattedValue = string.Join( ", ", ( from account in accounts select account.PublicName ).ToArray() );
}
}
return base.FormatValue( parentControl, formattedValue, null, condensed );
}
示例2: GetEditValue
/// <summary>
/// Reads new values entered by the user for the field
/// </summary>
/// <param name="control">Parent control that controls were added to in the CreateEditControl() method</param>
/// <param name="configurationValues">The configuration values.</param>
/// <returns></returns>
public override string GetEditValue( Control control, Dictionary<string, ConfigurationValue> configurationValues )
{
var picker = control as AccountPicker;
string result = null;
if ( picker != null )
{
var guids = new List<Guid>();
var ids = picker.SelectedValuesAsInt();
var accounts = new FinancialAccountService().Queryable().Where( a => ids.Contains( a.Id ) );
if ( accounts.Any() )
{
guids = accounts.Select( a => a.Guid ).ToList();
}
result = string.Join( ",", guids );
}
return result;
}
示例3: BindGrid
/// <summary>
/// Binds the grid.
/// </summary>
private void BindGrid()
{
var rockContext = new RockContext();
var pledgeService = new FinancialPledgeService( rockContext );
var sortProperty = gPledges.SortProperty;
var pledges = pledgeService.Queryable();
Person person = null;
if ( TargetPerson != null )
{
person = TargetPerson;
}
else
{
int? personId = gfPledges.GetUserPreference( "Person" ).AsIntegerOrNull();
if ( personId.HasValue && ppFilterPerson.Visible )
{
person = new PersonService( rockContext ).Get( personId.Value );
}
}
if ( person != null )
{
// if a person is specified, get pledges for that person ( and also anybody in their GivingUnit )
pledges = pledges.Where( p => p.PersonAlias.Person.GivingId == person.GivingId );
}
// get the accounts and make sure they still exist by checking the database
var accountIds = gfPledges.GetUserPreference( "Accounts" ).Split( ',' ).AsIntegerList();
accountIds = new FinancialAccountService( rockContext ).GetByIds( accountIds ).Select( a => a.Id ).ToList();
if ( accountIds.Any() && apFilterAccount.Visible )
{
pledges = pledges.Where( p => p.AccountId.HasValue && accountIds.Contains( p.AccountId.Value ) );
}
// Date Range
var drp = new DateRangePicker();
drp.DelimitedValues = gfPledges.GetUserPreference( "Date Range" );
var filterStartDate = drp.LowerValue ?? DateTime.MinValue;
var filterEndDate = drp.UpperValue ?? DateTime.MaxValue;
if (filterEndDate != DateTime.MaxValue)
{
filterEndDate = filterEndDate.AddDays( 1 );
}
/****
* Include any pledges whose Start/EndDates overlap with the Filtered Date Range
*
* * Pledge1 Range 1/1/2011 - 12/31/2011
* * Pledge2 Range 1/1/0000 - 1/1/9999
* * Pledge3 Range 6/1/2011 - 6/1/2012
*
* Filter1 Range 1/1/2010 - 1/1/2013
* * * All Pledges should show
* Filter1 Range 1/1/2012 - 1/1/2013
* * * Pledge2 and Pledge3 should show
* Filter2 Range 5/1/2012 - 5/2/2012
* * * Pledge2 and Pledge3 should show
* Filter3 Range 5/1/2012 - 1/1/9999
* * * Pledge2 and Pledge3 should show
* Filter4 Range 5/1/2010 - 5/1/2010
* * * Pledge2 should show
***/
// exclude pledges that start after the filter's end date or end before the filter's start date
if ( drpDates.Visible )
{
pledges = pledges.Where( p => !(p.StartDate > filterEndDate) && !(p.EndDate < filterStartDate) );
}
// Last Modified
drp.DelimitedValues = gfPledges.GetUserPreference( "Last Modified" );
filterStartDate = drp.LowerValue ?? DateTime.MinValue;
filterEndDate = drp.UpperValue ?? DateTime.MaxValue;
if (filterEndDate != DateTime.MaxValue)
{
filterEndDate = filterEndDate.AddDays( 1 );
}
if ( drpLastModifiedDates.Visible )
{
pledges = pledges.Where( p => !(p.ModifiedDateTime >= filterEndDate) && !(p.ModifiedDateTime <= filterStartDate) );
}
gPledges.DataSource = sortProperty != null ? pledges.Sort( sortProperty ).ToList() : pledges.OrderBy( p => p.AccountId ).ToList();
gPledges.DataBind();
}
示例4: SetSelection
/// <summary>
/// Sets the selection.
/// </summary>
/// <param name="entityType">Type of the entity.</param>
/// <param name="controls">The controls.</param>
/// <param name="selection">The selection.</param>
public override void SetSelection( Type entityType, Control[] controls, string selection )
{
string[] selectionValues = selection.Split( '|' );
if ( selectionValues.Length >= 3 )
{
var accountPicker = controls[0] as AccountPicker;
var dateRangePicker = controls[1] as DateRangePicker;
dateRangePicker.LowerValue = selectionValues[0].AsDateTime();
dateRangePicker.UpperValue = selectionValues[1].AsDateTime();
var accountGuids = selectionValues[2].Split( ',' ).Select( a => a.AsGuid() ).ToList();
var accounts = new FinancialAccountService( new RockContext() ).GetByGuids( accountGuids );
if ( accounts != null && accounts.Any() )
{
accountPicker.SetValues( accounts );
}
}
}
示例5: GetSelection
/// <summary>
/// Gets the selection.
/// </summary>
/// <param name="entityType">Type of the entity.</param>
/// <param name="controls">The controls.</param>
/// <returns></returns>
public override string GetSelection( Type entityType, Control[] controls )
{
var accountIdList = ( controls[0] as AccountPicker ).SelectedValuesAsInt().ToList();
string accountGuids = string.Empty;
var accounts = new FinancialAccountService( new RockContext() ).GetByIds( accountIdList );
if ( accounts != null && accounts.Any() )
{
accountGuids = accounts.Select( a => a.Guid ).ToList().AsDelimited( "," );
}
DateRangePicker dateRangePicker = controls[1] as DateRangePicker;
return string.Format( "{0}|{1}|{2}", dateRangePicker.LowerValue, dateRangePicker.UpperValue, accountGuids );
}
示例6: GetExpression
/// <summary>
/// Gets the expression.
/// </summary>
/// <param name="entityType">Type of the entity.</param>
/// <param name="serviceInstance">The service instance.</param>
/// <param name="parameterExpression">The parameter expression.</param>
/// <param name="selection">The selection.</param>
/// <returns></returns>
public override Expression GetExpression( Type entityType, IService serviceInstance, ParameterExpression parameterExpression, string selection )
{
var rockContext = (RockContext)serviceInstance.Context;
string[] selectionValues = selection.Split( '|' );
if ( selectionValues.Length < 3 )
{
return null;
}
DateTime? startDate = selectionValues[0].AsDateTime();
DateTime? endDate = selectionValues[1].AsDateTime();
var accountGuids = selectionValues[2].Split( ',' ).Select( a => a.AsGuid() ).ToList();
var accountIdList = new FinancialAccountService( (RockContext)serviceInstance.Context ).GetByGuids( accountGuids ).Select( a => a.Id ).ToList();
int transactionTypeContributionId = Rock.Web.Cache.DefinedValueCache.Read( Rock.SystemGuid.DefinedValue.TRANSACTION_TYPE_CONTRIBUTION.AsGuid() ).Id;
var financialTransactionsQry = new FinancialTransactionService( rockContext ).Queryable()
.Where( xx => xx.TransactionTypeValueId == transactionTypeContributionId );
if ( accountIdList.Any() )
{
if ( accountIdList.Count == 1 )
{
int accountId = accountIdList.First();
financialTransactionsQry = financialTransactionsQry.Where( xx => xx.TransactionDetails.Any( a => a.AccountId == accountId ) );
}
else
{
financialTransactionsQry = financialTransactionsQry.Where( xx => xx.TransactionDetails.Any( a => accountIdList.Contains( a.AccountId ) ) );
}
}
var firstContributionDateQry = financialTransactionsQry
.GroupBy( xx => xx.AuthorizedPersonAlias.PersonId )
.Select( ss => new
{
PersonId = ss.Key,
FirstTransactionDateTime = ss.Min( a => a.TransactionDateTime )
} );
if ( startDate.HasValue )
{
firstContributionDateQry = firstContributionDateQry.Where( xx => xx.FirstTransactionDateTime >= startDate.Value );
}
if ( endDate.HasValue )
{
firstContributionDateQry = firstContributionDateQry.Where( xx => xx.FirstTransactionDateTime < endDate );
}
var innerQry = firstContributionDateQry.Select( xx => xx.PersonId ).AsQueryable();
var qry = new PersonService( rockContext ).Queryable()
.Where( p => innerQry.Any( xx => xx == p.Id ) );
Expression extractedFilterExpression = FilterExpressionExtractor.Extract<Rock.Model.Person>( qry, parameterExpression, "p" );
return extractedFilterExpression;
}
示例7: GetSelection
/// <summary>
/// Gets the selection.
/// </summary>
/// <param name="controls">The controls.</param>
/// <returns></returns>
public override string GetSelection( Control[] controls )
{
string comparisonType = ( (DropDownList)controls[0] ).SelectedValue;
decimal? amount = ( controls[1] as NumberBox ).Text.AsDecimal();
var accountIdList = ( controls[2] as AccountPicker ).SelectedValuesAsInt().ToList();
string accountGuids = string.Empty;
var accounts = new FinancialAccountService( new RockContext() ).GetByIds( accountIdList );
if ( accounts != null && accounts.Any() )
{
accountGuids = accounts.Select( a => a.Guid ).ToList().AsDelimited( "," );
}
DateRangePicker dateRangePicker = controls[3] as DateRangePicker;
RockCheckBox cbCombineGiving = controls[4] as RockCheckBox;
return string.Format( "{0}|{1}|{2}|{3}|{4}|{5}", comparisonType, amount, dateRangePicker.LowerValue, dateRangePicker.UpperValue, accountGuids, cbCombineGiving.Checked );
}
示例8: SetSelection
/// <summary>
/// Sets the selection.
/// </summary>
/// <param name="controls">The controls.</param>
/// <param name="selection">The selection.</param>
public override void SetSelection( Control[] controls, string selection )
{
string[] selectionValues = selection.Split( '|' );
if ( selectionValues.Length >= 4 )
{
var comparisonControl = controls[0] as DropDownList;
var numberBox = controls[1] as NumberBox;
var accountPicker = controls[2] as AccountPicker;
var dateRangePicker = controls[3] as DateRangePicker;
var cbCombineGiving = controls[4] as RockCheckBox;
comparisonControl.SetValue( selectionValues[0] );
decimal? amount = selectionValues[1].AsDecimal();
if ( amount.HasValue )
{
numberBox.Text = amount.Value.ToString( "F2" );
}
else
{
numberBox.Text = string.Empty;
}
dateRangePicker.LowerValue = selectionValues[2].AsDateTime();
dateRangePicker.UpperValue = selectionValues[3].AsDateTime();
if ( selectionValues.Length >= 5 )
{
var accountGuids = selectionValues[4].Split( ',' ).Select( a => a.AsGuid() ).ToList();
var accounts = new FinancialAccountService( new RockContext() ).GetByGuids( accountGuids );
if ( accounts != null && accounts.Any() )
{
accountPicker.SetValues( accounts );
}
}
if ( selectionValues.Length >= 6 )
{
cbCombineGiving.Checked = selectionValues[5].AsBooleanOrNull() ?? false;
}
}
}
示例9: SetSelection
/// <summary>
/// Sets the selection.
/// </summary>
/// <param name="controls">The controls.</param>
/// <param name="selection">The selection.</param>
public override void SetSelection( Control[] controls, string selection )
{
string[] selectionValues = selection.Split( '|' );
if ( selectionValues.Length >= 4 )
{
var comparisonControl = controls[0] as DropDownList;
var numberBox = controls[1] as NumberBox;
var accountPicker = controls[2] as AccountPicker;
SlidingDateRangePicker slidingDateRangePicker = controls[3] as SlidingDateRangePicker;
var cbCombineGiving = controls[4] as RockCheckBox;
comparisonControl.SetValue( selectionValues[0] );
decimal? amount = selectionValues[1].AsDecimal();
if ( amount.HasValue )
{
numberBox.Text = amount.Value.ToString( "F2" );
}
else
{
numberBox.Text = string.Empty;
}
if ( selectionValues.Length >= 7 )
{
// convert comma delimited to pipe
slidingDateRangePicker.DelimitedValues = selectionValues[6].Replace( ',', '|' );
}
else
{
// if converting from a previous version of the selection
var lowerValue = selectionValues[2].AsDateTime();
var upperValue = selectionValues[3].AsDateTime();
slidingDateRangePicker.SlidingDateRangeMode = SlidingDateRangePicker.SlidingDateRangeType.DateRange;
slidingDateRangePicker.SetDateRangeModeValue( new DateRange( lowerValue, upperValue ) );
}
if ( selectionValues.Length >= 5 )
{
var accountGuids = selectionValues[4].Split( ',' ).Select( a => a.AsGuid() ).ToList();
var accounts = new FinancialAccountService( new RockContext() ).GetByGuids( accountGuids );
if ( accounts != null && accounts.Any() )
{
accountPicker.SetValues( accounts );
}
}
if ( selectionValues.Length >= 6 )
{
cbCombineGiving.Checked = selectionValues[5].AsBooleanOrNull() ?? false;
}
}
}
示例10: GetSelection
/// <summary>
/// Gets the selection.
/// </summary>
/// <param name="controls">The controls.</param>
/// <returns></returns>
public override string GetSelection( Control[] controls )
{
string comparisonType = ( (DropDownList)controls[0] ).SelectedValue;
decimal? amount = ( controls[1] as NumberBox ).Text.AsDecimal();
var accountIdList = ( controls[2] as AccountPicker ).SelectedValuesAsInt().ToList();
string accountGuids = string.Empty;
var accounts = new FinancialAccountService( new RockContext() ).GetByIds( accountIdList );
if ( accounts != null && accounts.Any() )
{
accountGuids = accounts.Select( a => a.Guid ).ToList().AsDelimited( "," );
}
SlidingDateRangePicker slidingDateRangePicker = controls[3] as SlidingDateRangePicker;
// convert pipe to comma delimited
var delimitedValues = slidingDateRangePicker.DelimitedValues.Replace( "|", "," );
RockCheckBox cbCombineGiving = controls[4] as RockCheckBox;
// {2} and {3} used to store the DateRange before, but now we using the SlidingDateRangePicker
return string.Format( "{0}|{1}|{2}|{3}|{4}|{5}|{6}", comparisonType, amount, string.Empty, string.Empty, accountGuids, cbCombineGiving.Checked, delimitedValues );
}
示例11: SetSelection
/// <summary>
/// Sets the selection.
/// </summary>
/// <param name="entityType">Type of the entity.</param>
/// <param name="controls">The controls.</param>
/// <param name="selection">The selection.</param>
public override void SetSelection( Type entityType, Control[] controls, string selection )
{
string[] selectionValues = selection.Split( '|' );
if ( selectionValues.Length >= 3 )
{
var accountPicker = controls[0] as AccountPicker;
var slidingDateRangePicker = controls[1] as SlidingDateRangePicker;
if ( selectionValues.Length >= 4 )
{
// convert comma delimited to pipe
slidingDateRangePicker.DelimitedValues = selectionValues[3].Replace( ',', '|' );
}
else
{
// if converting from a previous version of the selection
var lowerValue = selectionValues[0].AsDateTime();
var upperValue = selectionValues[1].AsDateTime();
slidingDateRangePicker.SlidingDateRangeMode = SlidingDateRangePicker.SlidingDateRangeType.DateRange;
slidingDateRangePicker.SetDateRangeModeValue( new DateRange( lowerValue, upperValue ) );
}
var accountGuids = selectionValues[2].Split( ',' ).Select( a => a.AsGuid() ).ToList();
var accounts = new FinancialAccountService( new RockContext() ).GetByGuids( accountGuids );
if ( accounts != null && accounts.Any() )
{
accountPicker.SetValues( accounts );
}
}
}
示例12: GetSelection
/// <summary>
/// Gets the selection.
/// </summary>
/// <param name="entityType">Type of the entity.</param>
/// <param name="controls">The controls.</param>
/// <returns></returns>
public override string GetSelection( Type entityType, Control[] controls )
{
var accountIdList = ( controls[0] as AccountPicker ).SelectedValuesAsInt().ToList();
string accountGuids = string.Empty;
var accounts = new FinancialAccountService( new RockContext() ).GetByIds( accountIdList );
if ( accounts != null && accounts.Any() )
{
accountGuids = accounts.Select( a => a.Guid ).ToList().AsDelimited( "," );
}
SlidingDateRangePicker slidingDateRangePicker = controls[1] as SlidingDateRangePicker;
// convert pipe to comma delimited
var delimitedValues = slidingDateRangePicker.DelimitedValues.Replace( "|", "," );
// {1} and {2} used to store the DateRange before, but now we using the SlidingDateRangePicker
return string.Format( "{0}|{1}|{2}|{3}", string.Empty, string.Empty, accountGuids, delimitedValues );
}
示例13: GetExpression
/// <summary>
/// Gets the expression.
/// </summary>
/// <param name="entityType">Type of the entity.</param>
/// <param name="serviceInstance">The service instance.</param>
/// <param name="parameterExpression">The parameter expression.</param>
/// <param name="selection">The selection.</param>
/// <returns></returns>
public override Expression GetExpression( Type entityType, IService serviceInstance, ParameterExpression parameterExpression, string selection )
{
var rockContext = (RockContext)serviceInstance.Context;
string[] selectionValues = selection.Split( '|' );
if ( selectionValues.Length < 3 )
{
return null;
}
DateRange dateRange;
if ( selectionValues.Length >= 4 )
{
string slidingDelimitedValues = selectionValues[3].Replace( ',', '|' );
dateRange = SlidingDateRangePicker.CalculateDateRangeFromDelimitedValues( slidingDelimitedValues );
}
else
{
// if converting from a previous version of the selection
DateTime? startDate = selectionValues[0].AsDateTime();
DateTime? endDate = selectionValues[1].AsDateTime();
dateRange = new DateRange( startDate, endDate );
if ( dateRange.End.HasValue )
{
// the DateRange picker doesn't automatically add a full day to the end date
dateRange.End.Value.AddDays( 1 );
}
}
var accountGuids = selectionValues[2].Split( ',' ).Select( a => a.AsGuid() ).ToList();
var accountIdList = new FinancialAccountService( (RockContext)serviceInstance.Context ).GetByGuids( accountGuids ).Select( a => a.Id ).ToList();
int transactionTypeContributionId = Rock.Web.Cache.DefinedValueCache.Read( Rock.SystemGuid.DefinedValue.TRANSACTION_TYPE_CONTRIBUTION.AsGuid() ).Id;
var financialTransactionsQry = new FinancialTransactionService( rockContext ).Queryable()
.Where( xx => xx.TransactionTypeValueId == transactionTypeContributionId );
if ( accountIdList.Any() )
{
if ( accountIdList.Count == 1 )
{
int accountId = accountIdList.First();
financialTransactionsQry = financialTransactionsQry.Where( xx => xx.TransactionDetails.Any( a => a.AccountId == accountId ) );
}
else
{
financialTransactionsQry = financialTransactionsQry.Where( xx => xx.TransactionDetails.Any( a => accountIdList.Contains( a.AccountId ) ) );
}
}
var firstContributionDateQry = financialTransactionsQry
.GroupBy( xx => xx.AuthorizedPersonAlias.PersonId )
.Select( ss => new
{
PersonId = ss.Key,
FirstTransactionSundayDate = ss.Min( a => a.SundayDate )
} );
if ( dateRange.Start.HasValue )
{
firstContributionDateQry = firstContributionDateQry.Where( xx => xx.FirstTransactionSundayDate >= dateRange.Start.Value );
}
if ( dateRange.End.HasValue )
{
firstContributionDateQry = firstContributionDateQry.Where( xx => xx.FirstTransactionSundayDate < dateRange.End.Value );
}
var innerQry = firstContributionDateQry.Select( xx => xx.PersonId ).AsQueryable();
var qry = new PersonService( rockContext ).Queryable()
.Where( p => innerQry.Any( xx => xx == p.Id ) );
Expression extractedFilterExpression = FilterExpressionExtractor.Extract<Rock.Model.Person>( qry, parameterExpression, "p" );
return extractedFilterExpression;
}