public async Task <ListItem> updateStatus(long idListItem, isDoneListItem isDoneListItem) { var updateListItem = await _db.ListItems.FirstOrDefaultAsync(a => a.idListItem == idListItem); if (updateListItem == null) { return(null); } updateListItem.isDoneListItem = isDoneListItem == isDoneListItem.Undefined ? updateListItem.isDoneListItem : isDoneListItem; updateListItem.updated = DateTime.Now; await _db.SaveChangesAsync(); return(updateListItem); }
public async Task <List <ListItem> > getAll(int page = 1, int size = 10, string key = "", string order = "updated", bool ascending = false, isDoneListItem isDoneListItem = isDoneListItem.Undefined, long idList = 0) { var q = _db.ListItems .Where(a => a.idListItem == a.idListItem); if (!string.IsNullOrEmpty(key)) { q = q.Where(a => a.nameListItem.Contains(key) ); } if (idList != 0) { q = q.Where(a => a.idList == idList); } if (isDoneListItem != isDoneListItem.Undefined) { q = q.Where(a => a.isDoneListItem == isDoneListItem); } switch (order) { case "idListItem": if (ascending) { q = q.OrderBy(d => d.idListItem); } else { q = q.OrderByDescending(d => d.idListItem); } break; case "nameListItem": if (ascending) { q = q.OrderBy(d => d.nameListItem); } else { q = q.OrderByDescending(d => d.nameListItem); } break; case "isDoneListItem": if (ascending) { q = q.OrderBy(d => d.isDoneListItem); } else { q = q.OrderByDescending(d => d.isDoneListItem); } break; case "created": if (ascending) { q = q.OrderBy(d => d.created); } else { q = q.OrderByDescending(d => d.created); } break; case "updated": if (ascending) { q = q.OrderBy(d => d.updated); } else { q = q.OrderByDescending(d => d.updated); } break; } if (size == -1) { return(await q .ToListAsync()); } else { return(await q .Skip(size *(page - 1)) .Take(size) .ToListAsync()); } }
public async Task <int> getAllCount(string key = "", string order = "updated", bool ascending = false, isDoneListItem isDoneListItem = isDoneListItem.Undefined, long idList = 0) { var q = _db.ListItems .Where(a => a.idListItem == a.idListItem); if (!string.IsNullOrEmpty(key)) { q = q.Where(a => a.nameListItem.Contains(key) ); } if (idList != 0) { q = q.Where(a => a.idList == idList); } if (isDoneListItem != isDoneListItem.Undefined) { q = q.Where(a => a.isDoneListItem == isDoneListItem); } switch (order) { case "idListItem": if (ascending) { q = q.OrderBy(d => d.idListItem); } else { q = q.OrderByDescending(d => d.idListItem); } break; case "nameListItem": if (ascending) { q = q.OrderBy(d => d.nameListItem); } else { q = q.OrderByDescending(d => d.nameListItem); } break; case "isDoneListItem": if (ascending) { q = q.OrderBy(d => d.isDoneListItem); } else { q = q.OrderByDescending(d => d.isDoneListItem); } break; case "created": if (ascending) { q = q.OrderBy(d => d.created); } else { q = q.OrderByDescending(d => d.created); } break; case "updated": if (ascending) { q = q.OrderBy(d => d.updated); } else { q = q.OrderByDescending(d => d.updated); } break; } return(await q .CountAsync()); }