/// <summary> /// Delete Company from user Organizations /// </summary> /// <param name="userId"></param> /// <param name="orgId"></param> /// <returns></returns> public async Task <bool> DeleteOrg(string userId, int orgId) { bool result = false; if (string.IsNullOrEmpty(userId) || orgId == 0) { return(result); } Models.DbModels.Org org = await _dbContext.Org .Where(w => w.owner == userId && w.orgId == orgId) .FirstOrDefaultAsync(); if (org != null) { _dbContext.Org.Remove(org); int isDel = _dbContext.SaveChanges(); result = isDel == 1; } if (result) { var deletedOrgStaff = _dbContext.OrgStaff.Where(w => w.orgId == orgId).ToArray(); _dbContext.OrgStaff.RemoveRange(deletedOrgStaff); _dbContext.SaveChanges(); } return(result); }
public async Task <IActionResult> EditStaff(string id) { User user = await _userManager.FindByIdAsync(id); if (user == null) { return(NotFound()); } Models.DbModels.Org orgData = await _dbOrgStaff.GetOrgByStaffIdAsync(user.Id); EditStaffViewModel model = new EditStaffViewModel() { Id = user.Id, Name = user.UserName, Email = user.Email, NewPassword = string.Empty, OldPassword = string.Empty, ConfirmNewPassword = string.Empty, OrgId = 0, OrgName = string.Empty }; if (orgData != null) { model.OrgId = orgData.orgId; model.OrgName = orgData.orgName; } return(View(model)); }
/// <summary> /// Remove Staff from Organization /// </summary> /// <param name="ownerId"></param> /// <param name="orgId"></param> /// <param name="staffId"></param> /// <returns></returns> public async Task <bool> RemoveStaffFromOrgAsync(string ownerId, int orgId, string staffId) { bool result = false; Models.DbModels.Org org = await _dbOrg.GetOrgByIdAsync(orgId); if (org.owner != ownerId) { return(result); } OrgStaff orgStaff = await GetOrgStaffAsync(orgId, staffId); if (orgStaff == null) { return(result); } _dbContext.OrgStaff.Remove(orgStaff); int remResult = await _dbContext.SaveChangesAsync(); if (remResult == 1) { result = true; } return(result); }
/// <summary> /// Add new org /// </summary> /// <param name="org"></param> /// <returns></returns> public async Task <bool> AddNewOrg(Models.DbModels.Org org) { await _dbContext.Org.AddAsync(org); var result = await _dbContext.SaveChangesAsync(); return(result == 1); }
public async Task <IActionResult> AddNewOrg(Models.DbModels.Org model) { var user = await _userManager.GetUserAsync(User); model.owner = user.Id; await _dbOrg.AddNewOrg(model); return(RedirectToAction(nameof(EditOwner), "ManageUsers", new { id = user.Id })); }
/// <summary> /// Compare two organization and set change in second organization /// if has found changed data /// </summary> /// <param name="updOrg">org with new data</param> /// <param name="sourceOrg">org with old data which will be changed</param> /// <returns></returns> public bool CompareOrgs(IEditOrg updOrg, ref Models.DbModels.Org sourceOrg) { bool result = false; if (sourceOrg.orgName != updOrg.orgName) { sourceOrg.orgName = updOrg.orgName; result = true; } if (updOrg.owner != null && sourceOrg.owner != updOrg.owner) { sourceOrg.owner = updOrg.owner; result = true; } if (sourceOrg.address != updOrg.address) { sourceOrg.address = updOrg.address; result = true; } if (sourceOrg.city != updOrg.city) { sourceOrg.city = updOrg.city; result = true; } if (sourceOrg.country != updOrg.country) { sourceOrg.country = updOrg.country; result = true; } if (sourceOrg.phoneNumber != updOrg.phoneNumber) { sourceOrg.phoneNumber = updOrg.phoneNumber; result = true; } if (sourceOrg.category != updOrg.category) { sourceOrg.category = updOrg.category; result = true; } return(result); }
public async Task <IActionResult> OrgCalendar(int OrgId, DateTime dateCal) { if (OrgId == 0 || dateCal == DateTime.MinValue) { return(RedirectToAction("Index", "Home")); } Models.DbModels.Org orgInfo = await _dbOrg.GetOrgByIdAsync(OrgId); string orgName = string.Empty; if (orgInfo != null) { orgName = orgInfo.orgName; } List <StaffInfo> staffInfo = new List <StaffInfo>(); var orgStaff = await _dbOrgStaff.GetOrgStaffByOrgId(OrgId); if (orgStaff.Length > 0) { foreach (var staff in orgStaff) { var staffUser = await _userManager.FindByIdAsync(staff.staffId); staffInfo.Add(new StaffInfo() { orgStaffId = staff.orgStaffId, staffName = staffUser.UserName }); } } return(View(new OrgDateViewModel() { orgId = OrgId, dateCal = dateCal, orgName = orgName, staffInfo = staffInfo.ToArray() })); }