public async Task <IActionResult> Download([FromBody] EF.Group obj) { var bll_g = groupBusiness; var bll_m = memberBusiness; var user = HttpContext.Items["EndUser"] as EF.EndUser; obj.GroupCategory = new EF.GroupCategory { CommunityId = user.Member.CommunityId }; var res = from r in bll_g.Find(obj) join m in bll_m.Find(new EF.Member { CommunityId = user.Member.CommunityId }) on r.GroupLeader equals m.Id select new { Category = r.GroupCategory.Name, r.Name, Leader = m.Name, Members = r.GroupMember.Count }; var bytes = Encoding.ASCII.GetBytes((await res.ToListAsync()).ExportToCsv().ToString()); var result = new FileContentResult(bytes, "text/csv"); result.FileDownloadName = "my-csv-file.csv"; return(result); }
public async Task <int> Add(EF.Group args) { await unitOfWork.GroupRepository.AddAsync(args); unitOfWork.Commit(); return(args.Id); }
public async Task <EF.Group> Get(EF.Group args) { return(await unitOfWork.GroupRepository.Entities .Include(x => x.GroupMember) .Include(x => x.GroupCategory) .Where(x => x.Id == args.Id).FirstOrDefaultAsync()); }
public bool Update(EF.Group entity) { var code = entity.Code.ToUpper(); var item = _dbContext.Groups.FirstOrDefault(x => x.ID == entity.ID); var kpiLevels = _dbContext.KPILevels.Where(f => f.TableID == item.Code).ToList(); kpiLevels.ForEach(a => { a.TableID = code; }); var SOP = _dbContext.Groups.Find(entity.ID); SOP.Name = entity.Name; SOP.Code = code; SOP.LevelID = entity.LevelID; try { _dbContext.SaveChanges(); return(true); } catch { //logging return(false); } }
public IQueryable <EF.Group> Find(EF.Group args) { return(unitOfWork.GroupRepository.Entities .Include(x => x.GroupCategory) .Include(x => x.GroupMember).ThenInclude(x => x.Member) .Where(x => x.Name.Contains(args.Name ?? "") && x.GroupLeader == (args.GroupLeader == null || args.GroupLeader == 0 ? x.GroupLeader : args.GroupLeader) && x.GroupCategoryId == (args.GroupCategoryId == null || args.GroupCategoryId == 0 ? x.GroupCategoryId : args.GroupCategoryId) && x.GroupCategory.CommunityId == args.GroupCategory.CommunityId) .OrderBy(x => x.Name).AsQueryable()); }
public async Task Edit(EF.Group args) { var g = await unitOfWork.GroupRepository.Entities.FirstAsync(x => x.Id == args.Id); g.Name = args.Name; g.Description = args.Description; g.GroupCategoryId = args.GroupCategoryId; g.GroupLeader = args.GroupLeader; unitOfWork.Commit(); }
public void EditGroup_Failed(EF.Group args) { var completed = false; mockUnitOfWork.Setup(x => x.Commit()).Callback(() => { completed = true; }); groupBusiness.Edit(args); Assert.True(!completed); }
public void AddGroup_Success(EF.Group args) { var list = mockGroupRepo.Object.Entities.ToList(); var count = list.Count; mockUnitOfWork.Setup(x => x.Commit()).Callback(() => { list.Add(args); }); var id = groupBusiness.Add(args).Result; Assert.True(list.Count > count); }
public int Add(EF.Group entity) { var code = entity.Code.ToUpper(); List <EF.KPILevel> kpiLevelList = new List <EF.KPILevel>(); if (_dbContext.Groups.FirstOrDefault(x => x.Code == code) != null) { return(2); } if (_dbContext.KPILevels.FirstOrDefault(x => x.KPICode == entity.Code) != null) { return(2); } //get all kpi var kpis = new KPIAdminDAO().GetAll(); foreach (var kpi in kpis) { var kpilevel = new EF.KPILevel(); kpilevel.TableID = entity.Code; kpilevel.KPICode = kpi.Code; kpilevel.Name = kpi.Name; kpilevel.Checked = false; kpiLevelList.Add(kpilevel); } try { entity.Code = entity.Code.ToUpper(); entity.Code = entity.Code.ToUpper(); _dbContext.Groups.Add(entity); _dbContext.KPILevels.AddRange(kpiLevelList); _dbContext.SaveChanges(); return(1); } catch { return(0); } }
public void FindGroup_HasNoResult(EF.Group args) { var res = groupBusiness.Find(args); Assert.True(res.Count() == 0); }
public Task Delete(EF.Group args) { throw new NotImplementedException(); }