public async Task<ActionResult<List<ItemTransactionPkgDTO>>> GetItemByStatus([FromQuery] string userId, [FromQuery] string statusIds/*, [FromQuery] int currentPage*/) { List<ItemTransactionPkgDTO> pkgDtoList = new List<ItemTransactionPkgDTO>(); List<int> statusList = GetStatusList(statusIds); var Items = mapper.Map<List<ItemDTO>>(await IB.GetItems(userId)); foreach (var item in Items) { var transactions = await TB.GetItemByStatus(item.Id, statusList); if (transactions.Count <= 0) continue; foreach (var trans in transactions) { ItemTransactionPkgDTO dto = new ItemTransactionPkgDTO() { Trans = mapper.Map<TransactionDTO>(trans), Item = mapper.Map<ItemDTO>(item), }; var Photo = await IB.GetItemDefaultPhoto(item.Id); var user = await UB.GetUserDetails(trans.BorrowerId); var statusName = await TB.GetTransactionStatusName((int)trans.CurrentStatus); var td = trans.TransactionDetail.Where(c => c.TransactionId == trans.Id && c.StatusId == trans.CurrentStatus).FirstOrDefault(); dto.Trans.StatusName = statusName; dto.Trans.BorrowerName = user.FirstName + " " + user.LastName; dto.Trans.requestDate = (td != null) ? td.Date : new DateTime(0); dto.Trans.Reason = (td != null) ? td.Reason : ""; dto.Item.DefaultImageFile = (Photo != null) ? Photo.FileName : null; pkgDtoList.Add(dto); } } return pkgDtoList.OrderByDescending(c => c.Trans.Id).ToList(); }
public async Task<ActionResult<List<ItemTransactionPkgDTO>>> GetTransactionByUser([FromQuery] string userId, [FromQuery] string statusIds) { List<ItemTransactionPkgDTO> pkgDtoList = new List<ItemTransactionPkgDTO>(); List<int> statusList = GetStatusList(statusIds); var Transactions = await TB.GetTransactionByBorrower(userId, statusList); foreach (var trans in Transactions) { var Item = await IB.GetItem(trans.ItemId); var Photo = await IB.GetItemDefaultPhoto(Item.Id); var user = await UB.GetUserDetails(trans.BorrowerId); var statusName = await TB.GetTransactionStatusName((int)trans.CurrentStatus); var td = trans.TransactionDetail.Where(c => c.TransactionId == trans.Id && c.StatusId == trans.CurrentStatus).FirstOrDefault(); ItemTransactionPkgDTO dto = new ItemTransactionPkgDTO() { Trans = mapper.Map<TransactionDTO>(trans), Item = mapper.Map<ItemDTO>(Item), }; dto.Trans.StatusName = statusName; dto.Trans.BorrowerName = user.FirstName + " " + user.LastName; dto.Trans.requestDate = (td != null) ? td.Date : new DateTime(0); dto.Trans.Reason = (td != null) ? td.Reason : ""; dto.Item.DefaultImageFile = (Photo != null) ? Photo.FileName : null; pkgDtoList.Add(dto); } return pkgDtoList; }