#129 anonymous methods for querying donations and expenses
This commit is contained in:
parent
178a33aabe
commit
44bf79686c
@ -15,6 +15,29 @@ namespace RMuseum.Controllers
|
||||
[Route("api/donations")]
|
||||
public class DonationAccountingController : Controller
|
||||
{
|
||||
/// <summary>
|
||||
/// returns all donations
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpGet]
|
||||
[AllowAnonymous]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(GanjoorDonationViewModel[]))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> GetDonations()
|
||||
{
|
||||
try
|
||||
{
|
||||
var res = await _donationService.GetDonations();
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
catch (Exception exp)
|
||||
{
|
||||
return BadRequest(exp.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// add donation + regenerate donations page
|
||||
/// </summary>
|
||||
@ -69,6 +92,29 @@ namespace RMuseum.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// returns all expenses
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpGet("expenses")]
|
||||
[AllowAnonymous]
|
||||
[ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(GanjoorExpense[]))]
|
||||
[ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))]
|
||||
public async Task<IActionResult> GetExpenses()
|
||||
{
|
||||
try
|
||||
{
|
||||
var res = await _donationService.GetExpenses();
|
||||
if (!string.IsNullOrEmpty(res.ExceptionString))
|
||||
return BadRequest(res.ExceptionString);
|
||||
return Ok(res.Result);
|
||||
}
|
||||
catch (Exception exp)
|
||||
{
|
||||
return BadRequest(exp.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// add expense + regenerate donations page
|
||||
/// </summary>
|
||||
|
||||
@ -584,6 +584,12 @@
|
||||
<param name="auditLogService">
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.DonationAccountingController.GetDonations">
|
||||
<summary>
|
||||
returns all donations
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.DonationAccountingController.AddDonation(RMuseum.Models.Accounting.ViewModels.GanjoorDonationViewModel)">
|
||||
<summary>
|
||||
add donation + regenerate donations page
|
||||
@ -598,6 +604,12 @@
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.DonationAccountingController.GetExpenses">
|
||||
<summary>
|
||||
returns all expenses
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Controllers.DonationAccountingController.AddExpense(RMuseum.Models.Accounting.GanjoorExpense)">
|
||||
<summary>
|
||||
add expense + regenerate donations page
|
||||
@ -6901,6 +6913,18 @@
|
||||
<param name="note"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.IDonationService.GetDonations">
|
||||
<summary>
|
||||
returns all donations
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.IDonationService.GetExpenses">
|
||||
<summary>
|
||||
returns all expenses
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="P:RMuseum.Services.IDonationService.ShowAccountInfo">
|
||||
<summary>
|
||||
Show Donating Information (temporary switch off/on)
|
||||
@ -8000,6 +8024,18 @@
|
||||
<param name="id"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.Implementation.DonationService.GetDonations">
|
||||
<summary>
|
||||
returns all donations
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RMuseum.Services.Implementation.DonationService.GetExpenses">
|
||||
<summary>
|
||||
returns all expenses
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:RMuseum.Services.Implementation.DonationService.DonationPageRow">
|
||||
<summary>
|
||||
donation page row
|
||||
|
||||
@ -57,6 +57,18 @@ namespace RMuseum.Services
|
||||
/// <returns></returns>
|
||||
Task<RServiceResult<bool>> RegenerateDonationsPage(Guid editingUserId, string note);
|
||||
|
||||
/// <summary>
|
||||
/// returns all donations
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<RServiceResult<GanjoorDonationViewModel[]>> GetDonations();
|
||||
|
||||
/// <summary>
|
||||
/// returns all expenses
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<RServiceResult<GanjoorExpense[]>> GetExpenses();
|
||||
|
||||
/// <summary>
|
||||
/// Show Donating Information (temporary switch off/on)
|
||||
/// </summary>
|
||||
|
||||
@ -283,6 +283,68 @@ namespace RMuseum.Services.Implementation
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// returns all donations
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<RServiceResult<GanjoorDonationViewModel[]>> GetDonations()
|
||||
{
|
||||
try
|
||||
{
|
||||
return new RServiceResult<GanjoorDonationViewModel[]>
|
||||
(
|
||||
await _context.GanjoorDonations
|
||||
.AsNoTracking()
|
||||
.OrderByDescending(d => d.Id)
|
||||
.Select
|
||||
(
|
||||
d =>
|
||||
new GanjoorDonationViewModel()
|
||||
{
|
||||
Id = d.Id,
|
||||
Amount = d.Amount,
|
||||
AmountString = d.AmountString,
|
||||
DateString = d.DateString,
|
||||
DonorName = d.DonorName,
|
||||
ExpenditureDesc = d.ExpenditureDesc,
|
||||
ImportedRecord = d.ImportedRecord,
|
||||
RecordDate = d.RecordDate,
|
||||
Remaining = d.Remaining,
|
||||
Unit = d.Unit
|
||||
}
|
||||
).ToArrayAsync()
|
||||
|
||||
);
|
||||
}
|
||||
catch(Exception exp)
|
||||
{
|
||||
return new RServiceResult<GanjoorDonationViewModel[]>(null, exp.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// returns all expenses
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<RServiceResult<GanjoorExpense[]>> GetExpenses()
|
||||
{
|
||||
try
|
||||
{
|
||||
return new RServiceResult<GanjoorExpense[]>
|
||||
(
|
||||
await _context.GanjoorExpenses
|
||||
.AsNoTracking()
|
||||
.OrderByDescending(x => x.Id)
|
||||
.ToArrayAsync()
|
||||
|
||||
);
|
||||
}
|
||||
catch (Exception exp)
|
||||
{
|
||||
return new RServiceResult<GanjoorExpense[]>(null, exp.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// donation page row
|
||||
/// </summary>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user