52 lines
1.6 KiB
C#
52 lines
1.6 KiB
C#
![]() |
using Back.Common;
|
|||
|
using Back.Data.Contracts;
|
|||
|
using Back.Data.Models;
|
|||
|
using Shared.DTOs;
|
|||
|
using Shared.DTOs.Serch;
|
|||
|
|
|||
|
namespace Back.Services
|
|||
|
{
|
|||
|
public class ServCOD
|
|||
|
{
|
|||
|
private readonly IAsyncRepository<CODItem> _CODRepo;
|
|||
|
public ServCOD(IAsyncRepository<CODItem> CODRepo)
|
|||
|
{
|
|||
|
_CODRepo = CODRepo;
|
|||
|
}
|
|||
|
public async Task<PagingDto<RCOD>?> GetCODs(int CompanyID, ItemSerchGetCOD itemSerch)
|
|||
|
{
|
|||
|
|
|||
|
#region AdvancedSearch
|
|||
|
var invok = _CODRepo
|
|||
|
.Get(w => w.CompanyID == CompanyID && !w.IsDeleted);
|
|||
|
//foreach (InputObj item in inputObjs)
|
|||
|
// invok = invok.Where(ExMethod.GetFunc<CODItem>(item.Param, item.Value));
|
|||
|
|
|||
|
|
|||
|
if (!string.IsNullOrEmpty(itemSerch.Title))
|
|||
|
invok = invok.Where(w => w.Title.Contains(itemSerch.Title));
|
|||
|
|
|||
|
if (!string.IsNullOrEmpty(itemSerch.ItemTaxID))
|
|||
|
invok = invok.Where(w => w.ItemTaxID == itemSerch.ItemTaxID);
|
|||
|
|
|||
|
if (itemSerch.CODID.HasValue)
|
|||
|
invok = invok.Where(w => w.ID == itemSerch.CODID);
|
|||
|
|
|||
|
if (itemSerch.UnitID.HasValue)
|
|||
|
invok = invok.Where(w => w.UnitID == itemSerch.UnitID);
|
|||
|
|
|||
|
#endregion
|
|||
|
//-----------------------
|
|||
|
return await invok.Select(s => new RCOD()
|
|||
|
{
|
|||
|
ID = s.ID,
|
|||
|
TaxID = s.ItemTaxID,
|
|||
|
Title = s.Title,
|
|||
|
Unit = s.CODUnit.Title,
|
|||
|
TaxRate = s.TaxRate
|
|||
|
})
|
|||
|
.Paging(itemSerch.PageIndex, itemSerch.PageSize);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|