public ActionResult AddSkillsToSession(DOADM_AccessGroupSkillsCorrelation objDOADM_AccessGroupSkillsCorrelation, long lPreviousSkill = 0, long lWorkBasketLkup = 0, long lRoleLkup = 0, int mode = 0) { long?TimeZone = currentUser.ADM_UserPreference.TimezoneLkup != null ? currentUser.ADM_UserPreference.TimezoneLkup : (long)DefaultTimeZone.CentralStandardTime; List <DOADM_AccessGroupSkillsCorrelation> lstDOADM_AccessGroupSkillsCorrelation = new List <DOADM_AccessGroupSkillsCorrelation>(); try { DOADM_AccessGroupSkillsCorrelation objOldDOADM_AccessGroupSkillsCorrelation = new DOADM_AccessGroupSkillsCorrelation(); if (Session[ConstantTexts.AccessGroupSkillSessionKey] != null) { lstDOADM_AccessGroupSkillsCorrelation = Session[ConstantTexts.AccessGroupSkillSessionKey] as List <DOADM_AccessGroupSkillsCorrelation>; } switch (mode) { case 0: //Add new skill to the list if (lstDOADM_AccessGroupSkillsCorrelation.Where(xx => xx.ADM_SkillsMasterRef == objDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef).Count() == 0) { objDOADM_AccessGroupSkillsCorrelation.IsActive = true; objDOADM_AccessGroupSkillsCorrelation.CreatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupSkillsCorrelation.CreatedByName = currentUser.FullName; objDOADM_AccessGroupSkillsCorrelation.UTCCreatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupSkillsCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupSkillsCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupSkillsCorrelation.LastUpdatedByName = currentUser.FullName; lstDOADM_AccessGroupSkillsCorrelation.Add(objDOADM_AccessGroupSkillsCorrelation); } else { objOldDOADM_AccessGroupSkillsCorrelation = lstDOADM_AccessGroupSkillsCorrelation.Where(xx => xx.ADM_SkillsMasterRef == objDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef).FirstOrDefault(); objOldDOADM_AccessGroupSkillsCorrelation.CanCreate = objDOADM_AccessGroupSkillsCorrelation.CanCreate; objOldDOADM_AccessGroupSkillsCorrelation.CanClone = objDOADM_AccessGroupSkillsCorrelation.CanClone; objOldDOADM_AccessGroupSkillsCorrelation.CanHistory = objDOADM_AccessGroupSkillsCorrelation.CanHistory; objOldDOADM_AccessGroupSkillsCorrelation.CanMassUpdate = objDOADM_AccessGroupSkillsCorrelation.CanMassUpdate; objOldDOADM_AccessGroupSkillsCorrelation.CanModify = objDOADM_AccessGroupSkillsCorrelation.CanModify; objOldDOADM_AccessGroupSkillsCorrelation.CanReassign = objDOADM_AccessGroupSkillsCorrelation.CanReassign; objOldDOADM_AccessGroupSkillsCorrelation.CanReopen = objDOADM_AccessGroupSkillsCorrelation.CanReopen; objOldDOADM_AccessGroupSkillsCorrelation.CanSearch = objDOADM_AccessGroupSkillsCorrelation.CanSearch; objOldDOADM_AccessGroupSkillsCorrelation.CanUnlock = objDOADM_AccessGroupSkillsCorrelation.CanUnlock; objOldDOADM_AccessGroupSkillsCorrelation.CanUpload = objDOADM_AccessGroupSkillsCorrelation.CanUpload; objOldDOADM_AccessGroupSkillsCorrelation.CanView = objDOADM_AccessGroupSkillsCorrelation.CanView; objOldDOADM_AccessGroupSkillsCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objOldDOADM_AccessGroupSkillsCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupSkillsCorrelation.LastUpdatedByName = currentUser.FullName; objOldDOADM_AccessGroupSkillsCorrelation.IsActive = true; } break; case 1: //delete skill from added list if (lstDOADM_AccessGroupSkillsCorrelation.Where(xx => xx.ADM_SkillsMasterRef == objDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef).Count() > 0) { objDOADM_AccessGroupSkillsCorrelation = lstDOADM_AccessGroupSkillsCorrelation.Where(xx => xx.ADM_SkillsMasterRef == objDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef).FirstOrDefault(); objDOADM_AccessGroupSkillsCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupSkillsCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupSkillsCorrelation.IsActive = false; } break; case 2: //update existing skill objOldDOADM_AccessGroupSkillsCorrelation = lstDOADM_AccessGroupSkillsCorrelation.Where(x => x.ADM_SkillsMasterRef == lPreviousSkill).FirstOrDefault(); if (objOldDOADM_AccessGroupSkillsCorrelation.ADM_AccessGroupSkillsCorrelationId == 0) //updating a queue for new record { objOldDOADM_AccessGroupSkillsCorrelation.CreatedByRef = currentUser.ADM_UserMasterId; } objOldDOADM_AccessGroupSkillsCorrelation.CanCreate = objDOADM_AccessGroupSkillsCorrelation.CanCreate; objOldDOADM_AccessGroupSkillsCorrelation.CanClone = objDOADM_AccessGroupSkillsCorrelation.CanClone; objOldDOADM_AccessGroupSkillsCorrelation.CanHistory = objDOADM_AccessGroupSkillsCorrelation.CanHistory; objOldDOADM_AccessGroupSkillsCorrelation.CanMassUpdate = objDOADM_AccessGroupSkillsCorrelation.CanMassUpdate; objOldDOADM_AccessGroupSkillsCorrelation.CanModify = objDOADM_AccessGroupSkillsCorrelation.CanModify; objOldDOADM_AccessGroupSkillsCorrelation.CanReassign = objDOADM_AccessGroupSkillsCorrelation.CanReassign; objOldDOADM_AccessGroupSkillsCorrelation.CanReopen = objDOADM_AccessGroupSkillsCorrelation.CanReopen; objOldDOADM_AccessGroupSkillsCorrelation.CanSearch = objDOADM_AccessGroupSkillsCorrelation.CanSearch; objOldDOADM_AccessGroupSkillsCorrelation.CanUnlock = objDOADM_AccessGroupSkillsCorrelation.CanUnlock; objOldDOADM_AccessGroupSkillsCorrelation.CanUpload = objDOADM_AccessGroupSkillsCorrelation.CanUpload; objOldDOADM_AccessGroupSkillsCorrelation.CanView = objDOADM_AccessGroupSkillsCorrelation.CanView; objOldDOADM_AccessGroupSkillsCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objOldDOADM_AccessGroupSkillsCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objOldDOADM_AccessGroupSkillsCorrelation.LastUpdatedByName = currentUser.FullName; objOldDOADM_AccessGroupSkillsCorrelation.IsActive = true; objOldDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef = objDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef; break; case 3: //removing all the lists from Session foreach (var item in lstDOADM_AccessGroupSkillsCorrelation) { item.LastUpdatedByRef = currentUser.ADM_UserMasterId; item.UTCLastUpdatedOn = DateTime.UtcNow; item.IsActive = false; } break; } DOADM_SkillsMaster objDOADM_SkillsMaster = new DOADM_SkillsMaster(); List <DOADM_SkillsMaster> lstDOADM_SkillsMaster = new List <DOADM_SkillsMaster>(); BLSkills objBLSkills = new BLSkills(); objDOADM_SkillsMaster.WorkBasketLkup = lWorkBasketLkup; objDOADM_SkillsMaster.RoleLkup = lRoleLkup; objDOADM_SkillsMaster.IsActive = true; objBLSkills.SearchSkills(TimeZone, objDOADM_SkillsMaster, out lstDOADM_SkillsMaster, out string errorMessage); ViewBag.Skills = lstDOADM_SkillsMaster; Session[ConstantTexts.AccessGroupSkillSessionKey] = lstDOADM_AccessGroupSkillsCorrelation; return(PartialView("_Skills", lstDOADM_AccessGroupSkillsCorrelation.Where(xx => xx.IsActive == true).ToList())); } catch (Exception ex) { BLCommon.LogError(currentUser.ADM_UserMasterId, MethodBase.GetCurrentMethod().Name, (long)ErrorModuleName.ManageAccessGroups, (long)ExceptionTypes.Uncategorized, ex.ToString(), ex.ToString()); return(RedirectToAction("Maintenance", "Error", routeValues: ex.ToString())); } }
private void MapUIDOAccessGroupObjectProperties(DataSet dstTable, out UIDOAccessGroup objUIDOAccessGroup) { objUIDOAccessGroup = new UIDOAccessGroup(); try { if (dstTable.Tables.Count > 0) { foreach (DataRow drAG in dstTable.Tables[0].Rows) { if (drAG.Table.Columns.Contains("AccessGroupMasterId")) { if (!DBNull.Value.Equals(drAG["AccessGroupMasterId"])) { objUIDOAccessGroup.ADM_AccessGroupMasterId = (long)drAG["AccessGroupMasterId"]; } } if (drAG.Table.Columns.Contains("WorkBasketLkup")) { if (!DBNull.Value.Equals(drAG["WorkBasketLkup"])) { objUIDOAccessGroup.WorkBasketLkup = (long)drAG["WorkBasketLkup"]; } } if (drAG.Table.Columns.Contains("DescripancyCatLkup")) { if (!DBNull.Value.Equals(drAG["DescripancyCatLkup"])) { objUIDOAccessGroup.DescripancyCatLkup = (long)drAG["DescripancyCatLkup"]; } } if (drAG.Table.Columns.Contains("RoleLkup")) { if (!DBNull.Value.Equals(drAG["RoleLkup"])) { objUIDOAccessGroup.RoleLkup = (long)drAG["RoleLkup"]; } } if (drAG.Table.Columns.Contains("AccessGroupName")) { if (!DBNull.Value.Equals(drAG["AccessGroupName"])) { objUIDOAccessGroup.AccessGroupName = drAG["AccessGroupName"].ToString(); } } if (drAG.Table.Columns.Contains("AccessGroupDescription")) { if (!DBNull.Value.Equals(drAG["AccessGroupDescription"])) { objUIDOAccessGroup.AccessGroupDescription = drAG["AccessGroupDescription"].ToString(); } } if (drAG.Table.Columns.Contains("IsActive")) { if (!DBNull.Value.Equals(drAG["IsActive"])) { if (drAG["IsActive"].ToString() == "True") { objUIDOAccessGroup.IsActive = true; } else { objUIDOAccessGroup.IsActive = false; } } } } objUIDOAccessGroup.lstDOADM_AccessGroupSkillsCorrelation = new List <DOADM_AccessGroupSkillsCorrelation>(); foreach (DataRow drSkl in dstTable.Tables[1].Rows) { DOADM_AccessGroupSkillsCorrelation objDOADM_AccessGroupSkillsCorrelation = new DOADM_AccessGroupSkillsCorrelation(); if (drSkl.Table.Columns.Contains("ADM_AccessGroupSkillsCorrelationId")) { if (!DBNull.Value.Equals(drSkl["ADM_AccessGroupSkillsCorrelationId"])) { objDOADM_AccessGroupSkillsCorrelation.ADM_AccessGroupSkillsCorrelationId = (long)drSkl["ADM_AccessGroupSkillsCorrelationId"]; } } if (drSkl.Table.Columns.Contains("ADM_AccessGroupMasterRef")) { if (!DBNull.Value.Equals(drSkl["ADM_AccessGroupMasterRef"])) { objDOADM_AccessGroupSkillsCorrelation.ADM_AccessGroupMasterRef = (long)drSkl["ADM_AccessGroupMasterRef"]; } } if (drSkl.Table.Columns.Contains("ADM_SkillsMasterRef")) { if (!DBNull.Value.Equals(drSkl["ADM_SkillsMasterRef"])) { objDOADM_AccessGroupSkillsCorrelation.ADM_SkillsMasterRef = (long)drSkl["ADM_SkillsMasterRef"]; } } if (drSkl.Table.Columns.Contains("CanCreate")) { if (!DBNull.Value.Equals(drSkl["CanCreate"])) { if (drSkl["CanCreate"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanCreate = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanCreate = false; } } } if (drSkl.Table.Columns.Contains("CanSearch")) { if (!DBNull.Value.Equals(drSkl["CanSearch"])) { if (drSkl["CanSearch"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanSearch = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanSearch = false; } } } if (drSkl.Table.Columns.Contains("CanReassign")) { if (!DBNull.Value.Equals(drSkl["CanReassign"])) { if (drSkl["CanReassign"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanReassign = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanReassign = false; } } } if (drSkl.Table.Columns.Contains("CanUnlock")) { if (!DBNull.Value.Equals(drSkl["CanUnlock"])) { if (drSkl["CanUnlock"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanUnlock = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanUnlock = false; } } } if (drSkl.Table.Columns.Contains("CanHistory")) { if (!DBNull.Value.Equals(drSkl["CanHistory"])) { if (drSkl["CanHistory"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanHistory = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanHistory = false; } } } if (drSkl.Table.Columns.Contains("CanModify")) { if (!DBNull.Value.Equals(drSkl["CanModify"])) { if (drSkl["CanModify"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanModify = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanModify = false; } } } if (drSkl.Table.Columns.Contains("CanView")) { if (!DBNull.Value.Equals(drSkl["CanView"])) { if (drSkl["CanView"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanView = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanView = false; } } } if (drSkl.Table.Columns.Contains("CanMassUpdate")) { if (!DBNull.Value.Equals(drSkl["CanMassUpdate"])) { if (drSkl["CanMassUpdate"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanMassUpdate = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanMassUpdate = false; } } } if (drSkl.Table.Columns.Contains("CanUpload")) { if (!DBNull.Value.Equals(drSkl["CanUpload"])) { if (drSkl["CanUpload"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanUpload = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanUpload = false; } } } if (drSkl.Table.Columns.Contains("CanClone")) { if (!DBNull.Value.Equals(drSkl["CanClone"])) { if (drSkl["CanClone"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanClone = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanClone = false; } } } if (drSkl.Table.Columns.Contains("CanReopen")) { if (!DBNull.Value.Equals(drSkl["CanReopen"])) { if (drSkl["CanReopen"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.CanReopen = true; } else { objDOADM_AccessGroupSkillsCorrelation.CanReopen = false; } } } if (drSkl.Table.Columns.Contains("UTCLastUpdatedOn")) { if (!DBNull.Value.Equals(drSkl["UTCLastUpdatedOn"])) { objDOADM_AccessGroupSkillsCorrelation.UTCLastUpdatedOn = Convert.ToDateTime(drSkl["UTCLastUpdatedOn"]); } } if (drSkl.Table.Columns.Contains("LastUpdatedByName")) { if (!DBNull.Value.Equals(drSkl["LastUpdatedByName"])) { objDOADM_AccessGroupSkillsCorrelation.LastUpdatedByName = drSkl["LastUpdatedByName"].ToString(); } } if (drSkl.Table.Columns.Contains("IsActive")) { if (!DBNull.Value.Equals(drSkl["IsActive"])) { if (drSkl["IsActive"].ToString() == "True") { objDOADM_AccessGroupSkillsCorrelation.IsActive = true; } else { objDOADM_AccessGroupSkillsCorrelation.IsActive = false; } } } objUIDOAccessGroup.lstDOADM_AccessGroupSkillsCorrelation.Add(objDOADM_AccessGroupSkillsCorrelation); } objUIDOAccessGroup.lstDOADM_AccessGroupReportCorrelation = new List <DOADM_AccessGroupReportCorrelation>(); foreach (DataRow drRpt in dstTable.Tables[2].Rows) { DOADM_AccessGroupReportCorrelation objDOADM_AccessGroupReportCorrelation = new DOADM_AccessGroupReportCorrelation(); if (drRpt.Table.Columns.Contains("ADM_AccessGroupReportCorrelationId")) { if (!DBNull.Value.Equals(drRpt["ADM_AccessGroupReportCorrelationId"])) { objDOADM_AccessGroupReportCorrelation.ADM_AccessGroupReportCorrelationId = (long)drRpt["ADM_AccessGroupReportCorrelationId"]; } } if (drRpt.Table.Columns.Contains("ADM_AccessGroupMasterRef")) { if (!DBNull.Value.Equals(drRpt["ADM_AccessGroupMasterRef"])) { objDOADM_AccessGroupReportCorrelation.ADM_AccessGroupMasterRef = (long)drRpt["ADM_AccessGroupMasterRef"]; } } if (drRpt.Table.Columns.Contains("RPT_ReportsMasterRef")) { if (!DBNull.Value.Equals(drRpt["RPT_ReportsMasterRef"])) { objDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef = (long)drRpt["RPT_ReportsMasterRef"]; } } if (drRpt.Table.Columns.Contains("CreatedByRef")) { if (!DBNull.Value.Equals(drRpt["CreatedByRef"])) { objDOADM_AccessGroupReportCorrelation.CreatedByRef = (long)drRpt["CreatedByRef"]; } } if (drRpt.Table.Columns.Contains("UTCCreatedOn")) { if (!DBNull.Value.Equals(drRpt["UTCCreatedOn"])) { objDOADM_AccessGroupReportCorrelation.UTCCreatedOn = Convert.ToDateTime(drRpt["UTCCreatedOn"]); } } if (drRpt.Table.Columns.Contains("UTCLastUpdatedOn")) { if (!DBNull.Value.Equals(drRpt["UTCLastUpdatedOn"])) { objDOADM_AccessGroupReportCorrelation.UTCLastUpdatedOn = Convert.ToDateTime(drRpt["UTCLastUpdatedOn"]); } } if (drRpt.Table.Columns.Contains("LastUpdatedByRef")) { if (!DBNull.Value.Equals(drRpt["LastUpdatedByRef"])) { objDOADM_AccessGroupReportCorrelation.LastUpdatedByRef = (long)drRpt["LastUpdatedByRef"]; } } if (drRpt.Table.Columns.Contains("CreatedByName")) { if (!DBNull.Value.Equals(drRpt["CreatedByName"])) { objDOADM_AccessGroupReportCorrelation.CreatedByName = drRpt["CreatedByName"].ToString(); } } if (drRpt.Table.Columns.Contains("LastUpdatedByName")) { if (!DBNull.Value.Equals(drRpt["LastUpdatedByName"])) { objDOADM_AccessGroupReportCorrelation.LastUpdatedByName = drRpt["LastUpdatedByName"].ToString(); } } if (drRpt.Table.Columns.Contains("IsActive")) { if (!DBNull.Value.Equals(drRpt["IsActive"])) { if (drRpt["IsActive"].ToString() == "True") { objDOADM_AccessGroupReportCorrelation.IsActive = true; } else { objDOADM_AccessGroupReportCorrelation.IsActive = false; } } } objUIDOAccessGroup.lstDOADM_AccessGroupReportCorrelation.Add(objDOADM_AccessGroupReportCorrelation); } } } catch (Exception ex) { //log } }