public async Task <List <MerchantAddressDetail_MerchantDTO> > SingleListMerchant([FromBody] MerchantAddressDetail_MerchantFilterDTO MerchantAddressDetail_MerchantFilterDTO) { MerchantFilter MerchantFilter = new MerchantFilter(); MerchantFilter.Skip = 0; MerchantFilter.Take = 20; MerchantFilter.OrderBy = MerchantOrder.Id; MerchantFilter.OrderType = OrderType.ASC; MerchantFilter.Selects = MerchantSelect.ALL; MerchantFilter.Id = new LongFilter { Equal = MerchantAddressDetail_MerchantFilterDTO.Id }; MerchantFilter.Name = new StringFilter { StartsWith = MerchantAddressDetail_MerchantFilterDTO.Name }; MerchantFilter.Phone = new StringFilter { StartsWith = MerchantAddressDetail_MerchantFilterDTO.Phone }; MerchantFilter.ContactPerson = new StringFilter { StartsWith = MerchantAddressDetail_MerchantFilterDTO.ContactPerson }; MerchantFilter.Address = new StringFilter { StartsWith = MerchantAddressDetail_MerchantFilterDTO.Address }; List <Merchant> Merchants = await MerchantService.List(MerchantFilter); List <MerchantAddressDetail_MerchantDTO> MerchantAddressDetail_MerchantDTOs = Merchants .Select(x => new MerchantAddressDetail_MerchantDTO(x)).ToList(); return(MerchantAddressDetail_MerchantDTOs); }
public async Task <int> Count(MerchantFilter filter) { IQueryable <MerchantDAO> MerchantDAOs = DataContext.Merchant; MerchantDAOs = DynamicFilter(MerchantDAOs, filter); return(await MerchantDAOs.CountAsync()); }
public PagedActionResult <Merchant> Search([FromUri] MerchantFilter filter) { return(SafeGetPagedData <Merchant>((result) => { var totalCount = 0; var data = MerchantService.Search(filter, out totalCount); result.Data = data; result.TotalCount = totalCount; })); }
public async Task <int> Count([FromBody] MerchantMaster_MerchantFilterDTO MerchantMaster_MerchantFilterDTO) { if (!ModelState.IsValid) { throw new MessageException(ModelState); } MerchantFilter MerchantFilter = ConvertFilterDTOToFilterEntity(MerchantMaster_MerchantFilterDTO); return(await MerchantService.Count(MerchantFilter)); }
public async Task <List <MerchantMaster_MerchantDTO> > List([FromBody] MerchantMaster_MerchantFilterDTO MerchantMaster_MerchantFilterDTO) { if (!ModelState.IsValid) { throw new MessageException(ModelState); } MerchantFilter MerchantFilter = ConvertFilterDTOToFilterEntity(MerchantMaster_MerchantFilterDTO); List <Merchant> Merchants = await MerchantService.List(MerchantFilter); return(Merchants.Select(c => new MerchantMaster_MerchantDTO(c)).ToList()); }
public async Task <List <Merchant> > List(MerchantFilter filter) { if (filter == null) { return(new List <Merchant>()); } IQueryable <MerchantDAO> MerchantDAOs = DataContext.Merchant; MerchantDAOs = DynamicFilter(MerchantDAOs, filter); MerchantDAOs = DynamicOrder(MerchantDAOs, filter); var Merchants = await DynamicSelect(MerchantDAOs, filter); return(Merchants); }
public async Task <bool> ValidateId(Merchant Merchant) { MerchantFilter MerchantFilter = new MerchantFilter { Skip = 0, Take = 10, Id = new LongFilter { Equal = Merchant.Id }, Selects = MerchantSelect.Id }; int count = await UOW.MerchantRepository.Count(MerchantFilter); if (count == 0) { Merchant.AddError(nameof(MerchantValidator), nameof(Merchant.Id), ErrorCode.IdNotExisted); } return(count == 1); }
public MerchantFilter ConvertFilterDTOToFilterEntity(MerchantMaster_MerchantFilterDTO MerchantMaster_MerchantFilterDTO) { MerchantFilter MerchantFilter = new MerchantFilter(); MerchantFilter.Selects = MerchantSelect.ALL; MerchantFilter.Id = new LongFilter { Equal = MerchantMaster_MerchantFilterDTO.Id }; MerchantFilter.Name = new StringFilter { StartsWith = MerchantMaster_MerchantFilterDTO.Name }; MerchantFilter.Phone = new StringFilter { StartsWith = MerchantMaster_MerchantFilterDTO.Phone }; MerchantFilter.ContactPerson = new StringFilter { StartsWith = MerchantMaster_MerchantFilterDTO.ContactPerson }; MerchantFilter.Address = new StringFilter { StartsWith = MerchantMaster_MerchantFilterDTO.Address }; return(MerchantFilter); }
public IEnumerable <Merchant> Search(MerchantFilter filter, out int totalCount) { var queryable = Repository.GetQueryable(false); if (filter.ID.HasValue) { queryable = queryable.Where(t => t.ID == filter.ID.Value); } if (!string.IsNullOrEmpty(filter.Code)) { queryable = queryable.Where(t => t.Code.Contains(filter.Code)); } if (!string.IsNullOrEmpty(filter.Name)) { queryable = queryable.Where(t => t.Name.Contains(filter.Name)); } totalCount = queryable.Count(); if (filter.Start.HasValue && filter.Limit.HasValue) { queryable = queryable.OrderBy(t => t.CreatedDate).Skip(filter.Start.Value).Take(filter.Limit.Value); } return(queryable.ToArray()); }
private IQueryable <MerchantDAO> DynamicOrder(IQueryable <MerchantDAO> query, MerchantFilter filter) { switch (filter.OrderType) { case OrderType.ASC: switch (filter.OrderBy) { case MerchantOrder.Id: query = query.OrderBy(q => q.Id); break; case MerchantOrder.Name: query = query.OrderBy(q => q.Name); break; case MerchantOrder.Phone: query = query.OrderBy(q => q.Phone); break; case MerchantOrder.ContactPerson: query = query.OrderBy(q => q.ContactPerson); break; case MerchantOrder.Address: query = query.OrderBy(q => q.Address); break; } break; case OrderType.DESC: switch (filter.OrderBy) { case MerchantOrder.Id: query = query.OrderByDescending(q => q.Id); break; case MerchantOrder.Name: query = query.OrderByDescending(q => q.Name); break; case MerchantOrder.Phone: query = query.OrderByDescending(q => q.Phone); break; case MerchantOrder.ContactPerson: query = query.OrderByDescending(q => q.ContactPerson); break; case MerchantOrder.Address: query = query.OrderByDescending(q => q.Address); break; } break; } query = query.Skip(filter.Skip).Take(filter.Take); return(query); }
private IQueryable <MerchantDAO> DynamicFilter(IQueryable <MerchantDAO> query, MerchantFilter filter) { if (filter == null) { return(query.Where(q => false)); } if (filter.Id != null) { query = query.Where(q => q.Id, filter.Id); } if (filter.Name != null) { query = query.Where(q => q.Name, filter.Name); } if (filter.Phone != null) { query = query.Where(q => q.Phone, filter.Phone); } if (filter.ContactPerson != null) { query = query.Where(q => q.ContactPerson, filter.ContactPerson); } if (filter.Address != null) { query = query.Where(q => q.Address, filter.Address); } if (filter.Ids != null) { query = query.Where(q => filter.Ids.Contains(q.Id)); } if (filter.ExceptIds != null) { query = query.Where(q => !filter.ExceptIds.Contains(q.Id)); } return(query); }
private async Task <List <Merchant> > DynamicSelect(IQueryable <MerchantDAO> query, MerchantFilter filter) { List <Merchant> Merchants = await query.Select(q => new Merchant() { Id = filter.Selects.Contains(MerchantSelect.Id) ? q.Id : default(long), Name = filter.Selects.Contains(MerchantSelect.Name) ? q.Name : default(string), Phone = filter.Selects.Contains(MerchantSelect.Phone) ? q.Phone : default(string), ContactPerson = filter.Selects.Contains(MerchantSelect.ContactPerson) ? q.ContactPerson : default(string), Address = filter.Selects.Contains(MerchantSelect.Address) ? q.Address : default(string), }).ToListAsync(); return(Merchants); }
public async Task <List <Merchant> > List(MerchantFilter MerchantFilter) { List <Merchant> Merchants = await UOW.MerchantRepository.List(MerchantFilter); return(Merchants); }
public async Task <int> Count(MerchantFilter MerchantFilter) { int result = await UOW.MerchantRepository.Count(MerchantFilter); return(result); }