Пример #1
0
        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()));
            }
        }
Пример #2
0
        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
            }
        }