public ActionResult AddReportsToSession(DOADM_AccessGroupReportCorrelation objDOADM_AccessGroupReportCorrelation, long lPreviousReport = 0, int mode = 0) { long?TimeZone = currentUser.ADM_UserPreference.TimezoneLkup != null ? currentUser.ADM_UserPreference.TimezoneLkup : (long)DefaultTimeZone.CentralStandardTime; List <DOADM_AccessGroupReportCorrelation> lstDOADM_AccessGroupReportCorrelation = new List <DOADM_AccessGroupReportCorrelation>(); try { if (Session[ConstantTexts.AccessGroupReportSessionKey] != null) { lstDOADM_AccessGroupReportCorrelation = Session[ConstantTexts.AccessGroupReportSessionKey] as List <DOADM_AccessGroupReportCorrelation>; } switch (mode) { case 0: //Add new Report to the list if (lstDOADM_AccessGroupReportCorrelation.Where(xx => xx.RPT_ReportsMasterRef == objDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef).Count() == 0) { objDOADM_AccessGroupReportCorrelation.IsActive = true; objDOADM_AccessGroupReportCorrelation.CreatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupReportCorrelation.UTCCreatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupReportCorrelation.CreatedByName = currentUser.FullName; objDOADM_AccessGroupReportCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupReportCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupReportCorrelation.LastUpdatedByName = currentUser.FullName; lstDOADM_AccessGroupReportCorrelation.Add(objDOADM_AccessGroupReportCorrelation); } else { objDOADM_AccessGroupReportCorrelation = lstDOADM_AccessGroupReportCorrelation.Where(xx => xx.RPT_ReportsMasterRef == objDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef).FirstOrDefault(); objDOADM_AccessGroupReportCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupReportCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupReportCorrelation.LastUpdatedByName = currentUser.FullName; objDOADM_AccessGroupReportCorrelation.IsActive = true; } break; case 1: //delete Report from added list if (lstDOADM_AccessGroupReportCorrelation.Where(xx => xx.RPT_ReportsMasterRef == objDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef).Count() > 0) { objDOADM_AccessGroupReportCorrelation = lstDOADM_AccessGroupReportCorrelation.Where(xx => xx.RPT_ReportsMasterRef == objDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef).FirstOrDefault(); objDOADM_AccessGroupReportCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objDOADM_AccessGroupReportCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupReportCorrelation.IsActive = false; } break; case 2: //update existing Report DOADM_AccessGroupReportCorrelation objOldDOADM_AccessGroupReportCorrelation = lstDOADM_AccessGroupReportCorrelation.Where(x => x.RPT_ReportsMasterRef == lPreviousReport).FirstOrDefault(); if (objOldDOADM_AccessGroupReportCorrelation.ADM_AccessGroupReportCorrelationId == 0) //updating a report for new record { objOldDOADM_AccessGroupReportCorrelation.CreatedByName = currentUser.FullName; objOldDOADM_AccessGroupReportCorrelation.CreatedByRef = currentUser.ADM_UserMasterId; } objOldDOADM_AccessGroupReportCorrelation.LastUpdatedByRef = currentUser.ADM_UserMasterId; objOldDOADM_AccessGroupReportCorrelation.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); objDOADM_AccessGroupReportCorrelation.LastUpdatedByName = currentUser.FullName; objOldDOADM_AccessGroupReportCorrelation.IsActive = true; objOldDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef = objDOADM_AccessGroupReportCorrelation.RPT_ReportsMasterRef; break; case 3: //removing all the lists from Session foreach (var item in lstDOADM_AccessGroupReportCorrelation) { item.LastUpdatedByRef = currentUser.ADM_UserMasterId; item.UTCLastUpdatedOn = ZoneLookupUI.ConvertToTimeZone(DateTime.UtcNow, TimeZone); item.IsActive = false; } break; } ViewBag.Reports = ViewBag.Reports = CacheUtility.GetAllReportsFromCache(null, ""); Session[ConstantTexts.AccessGroupReportSessionKey] = lstDOADM_AccessGroupReportCorrelation; return(PartialView("_Reports", lstDOADM_AccessGroupReportCorrelation.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 } }