public ActionResult Index(int nApplicabilityType, int nMasterID, string CalledFrom, int acid, int?CodeTypeId = 0, int?CodeTypeToId = 0, int?ParentTradingPolicy = 0, int?nApplicabilityId = 0) { LoginUserDetails objLoginUserDetails = null; ApplicabilitySL_OS objApplicabilitySl = null; ApplicabilityDTO_OS objApplicabilityDTO = null; UserInfoModel objUserInfoModel = null; PopulateComboDTO objPopulateComboDTO = null; List <PopulateComboDTO> lstGradeList = null; List <PopulateComboDTO> lstDesignationList = null; List <PopulateComboDTO> lstDepartmentList = null; List <PopulateComboDTO> lstCategoryList = null; List <PopulateComboDTO> lstSubCategoryList = null; List <PopulateComboDTO> lstRoleList = null; Dictionary <string, bool[]> objSelectionElement = null; try { objLoginUserDetails = (LoginUserDetails)InsiderTrading.Common.Common.GetSessionValue((string)ConstEnum.SessionValue.UserDetails); objUserInfoModel = new UserInfoModel(); objSelectionElement = new Dictionary <string, bool[]>(); //Here according to value 0/1 for the array of sequence //["Select Insider", "All Employee","All Insider","select Insider - Emp insider", "select Insider - Corporate", "select Insider - Non Emp", "select Insider - Co insider"] respectively. objSelectionElement["default00"] = new[] { true, true, true, true, true, true, false, true }; objSelectionElement[ConstEnum.Code.TradingPolicy + "" + ConstEnum.Code.TradingPolicyInsiderType + "0"] = new[] { true, false, true, true, true, true, false, false }; objSelectionElement[ConstEnum.Code.TradingPolicy + "" + ConstEnum.Code.TradingPolicyEmployeeType + "0"] = new[] { true, true, false, false, false, false, false, true }; objSelectionElement[ConstEnum.Code.CommunicationRule + "" + ConstEnum.Code.CommunicationRuleForUserTypeCO + "" + ConstEnum.Code.CommunicationRuleEventsToApplyUserTypeCO] = new[] { true, false, false, false, false, false, true, false }; objSelectionElement[ConstEnum.Code.CommunicationRule + "" + ConstEnum.Code.CommunicationRuleForUserTypeCO + "" + ConstEnum.Code.CommunicationRuleEventsToApplyUserTypeInsider] = new[] { true, false, false, true, true, true, true, true }; objSelectionElement[ConstEnum.Code.CommunicationRule + "" + ConstEnum.Code.CommunicationRuleForUserTypeInsider + "" + ConstEnum.Code.CommunicationRuleEventsToApplyUserTypeInsider] = new[] { true, true, true, true, true, true, false, true }; objSelectionElement[ConstEnum.Code.RestrictedList + "0" + "0"] = new[] { true, true, false, true, false, false, false, false }; objPopulateComboDTO = new PopulateComboDTO(); objPopulateComboDTO.Key = "00"; objPopulateComboDTO.Value = "Select"; lstGradeList = new List <PopulateComboDTO>(); lstGradeList.Add(objPopulateComboDTO); lstGradeList.AddRange(Common.Common.GetPopulateCombo(objLoginUserDetails.CompanyDBConnectionString, ConstEnum.ComboType.ListOfCode, Convert.ToInt32(ConstEnum.CodeGroup.GradeMaster).ToString(), null, null, null, null, "usr_msg_").ToList <PopulateComboDTO>()); ViewBag.GradeDropDown = lstGradeList; lstDesignationList = new List <PopulateComboDTO>(); lstDesignationList.Add(objPopulateComboDTO); lstDesignationList.AddRange(Common.Common.GetPopulateCombo(objLoginUserDetails.CompanyDBConnectionString, ConstEnum.ComboType.ListOfCode, Convert.ToInt32(ConstEnum.CodeGroup.DesignationMaster).ToString(), null, null, null, null, "usr_msg_").ToList <PopulateComboDTO>()); //PopulateComboDTO objPopulateComboDesignationDTO = new PopulateComboDTO(); //objPopulateComboDesignationDTO.Key = "-1"; //objPopulateComboDesignationDTO.Value = "Other"; //lstDesignationList.Add(objPopulateComboDesignationDTO); ViewBag.DesignationDropDown = lstDesignationList; lstDepartmentList = new List <PopulateComboDTO>(); lstDepartmentList.Add(objPopulateComboDTO); lstDepartmentList.AddRange(Common.Common.GetPopulateCombo(objLoginUserDetails.CompanyDBConnectionString, ConstEnum.ComboType.ListOfCode, Convert.ToInt32(ConstEnum.CodeGroup.DepartmentMaster).ToString(), null, null, null, null, "usr_msg_").ToList <PopulateComboDTO>()); ViewBag.DepartmentDropDown = lstDepartmentList; //------------------------------------------------------------------------------- lstCategoryList = new List <PopulateComboDTO>(); lstCategoryList.Add(objPopulateComboDTO); lstCategoryList.AddRange(Common.Common.GetPopulateCombo(objLoginUserDetails.CompanyDBConnectionString, ConstEnum.ComboType.ListOfCode, Convert.ToInt32(ConstEnum.CodeGroup.CategoryMaster).ToString(), null, null, null, null, "usr_msg_").ToList <PopulateComboDTO>()); ViewBag.CategoryDropDown = lstCategoryList; lstSubCategoryList = new List <PopulateComboDTO>(); lstSubCategoryList.Add(objPopulateComboDTO); lstSubCategoryList.AddRange(Common.Common.GetPopulateCombo(objLoginUserDetails.CompanyDBConnectionString, ConstEnum.ComboType.ListOfCode, Convert.ToInt32(ConstEnum.CodeGroup.SubCategoryMaster).ToString(), null, null, null, null, "usr_msg_").ToList <PopulateComboDTO>()); ViewBag.SubCategoryDropDown = lstSubCategoryList; lstRoleList = new List <PopulateComboDTO>(); lstRoleList.Add(objPopulateComboDTO); lstRoleList.AddRange(Common.Common.GetPopulateCombo(objLoginUserDetails.CompanyDBConnectionString, ConstEnum.ComboType.RoleList, ConstEnum.Code.EmployeeType.ToString(), null, null, null, null, "usr_msg_").ToList <PopulateComboDTO>()); ViewBag.EmployeeTypeRoleDropDown = lstRoleList; //------------------------------------------------------------------------------- ViewBag.Applicability_Search_EmployeeInsider_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Search_EmployeeInsider_OS; ViewBag.Applicability_Association_EmployeeInsider_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Association_EmployeeInsider_OS; ViewBag.Applicability_Search_Corporate_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Search_Corporate_OS; ViewBag.Applicability_Association_Corporate_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Association_Corporate_OS; ViewBag.Applicability_Search_Non_Employee_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Search_Non_Employee_OS; ViewBag.Applicability_Association_Non_Employee_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Association_Non_Employee_OS; ViewBag.Applicability_Filter_EmployeeInsider_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Filter_EmployeeInsider_OS; ViewBag.Applicability_Search_COInsider_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Search_COInsider_OS; ViewBag.Applicability_Association_COInsider_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Association_COInsider_OS; ViewBag.Applicability_Search_Employee_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Search_Employee_OS; ViewBag.Applicability_Filter_Employee_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Filter_Employee_OS; ViewBag.Applicability_Association_Employee_OS = InsiderTrading.Common.ConstEnum.GridType.Applicability_Association_Employee_OS; ViewBag.ApplicabilityType = nApplicabilityType; ViewBag.ApplicabilityID = nMasterID; ViewBag.CalledFrom = CalledFrom; ViewBag.VisibleElement = objSelectionElement["default00"]; ViewBag.ParentTradingPolicy = ParentTradingPolicy; ViewBag.ApplicabilityIDFromHistory = nApplicabilityId; if (objSelectionElement.ContainsKey("" + nApplicabilityType.ToString() + "" + CodeTypeId.ToString() + "" + CodeTypeToId.ToString())) { ViewBag.VisibleElement = objSelectionElement["" + nApplicabilityType.ToString() + "" + CodeTypeId.ToString() + "" + CodeTypeToId.ToString()]; } using (objApplicabilitySl = new ApplicabilitySL_OS()) { objApplicabilityDTO = objApplicabilitySl.GetDetails(objLoginUserDetails.CompanyDBConnectionString, Convert.ToInt32(nApplicabilityType), Convert.ToInt32(nMasterID)); } if (objApplicabilityDTO != null) { ViewBag.AllEmployeeFlag = objApplicabilityDTO.AllEmployeeFlag; ViewBag.AllInsiderFlag = objApplicabilityDTO.AllInsiderFlag; ViewBag.AllEmployeeInsiderFlag = objApplicabilityDTO.AllEmployeeInsiderFlag; ViewBag.AllCoFlag = objApplicabilityDTO.AllCo; ViewBag.AllCorporateInsiderFlag = objApplicabilityDTO.AllCorporateEmployees; ViewBag.AllNonEmployeeInsiderFlag = objApplicabilityDTO.AllNonEmployee; ViewBag.RecordCount = objApplicabilityDTO.RecordCount; } ViewBag.UserAction = acid; } finally { objLoginUserDetails = null; objPopulateComboDTO = null; objApplicabilityDTO = null; objSelectionElement = null; lstGradeList = null; lstDesignationList = null; lstDepartmentList = null; } return(View(objUserInfoModel)); }
public JsonResult Apply(string nAllEmployeeFlag, string nAllInsiderFlag, string nAllEmployeeInsiderFlag, string nAllCoFlag, string nAllCorporateInsiderFlag, string nAllNonEmployeeInsiderFlag, string sMapToId, string sMapToTypeCodeId, string arrIncluded, string arrExcluded, string arrFilter, string arrnonInsEmpFilter, int acid, string __RequestVerificationToken = "", int formId = 0) { bool statusFlag = false; var ErrorDictionary = new Dictionary <string, string>(); string[][] arrApplicabilityInclude = null; string[] arrApplicabilityExclude = null; List <ApplicabilityFilter> arrFilterList = null; List <NonInsEmpApplicabilityFilter> arrFilterNonInsEmpList = null; LoginUserDetails objLoginUserDetails = null; DataTable tblApplicabilityUserIncludeExclude = null; DataTable tblApplicabilityFilterType = null; DataTable tblNonInsEmpApplicabilityFilterType = null; Common.Common objCommon = new Common.Common(); try { if (!objCommon.ValidateCSRFForAJAX()) { return(Json(new { status = statusFlag, Message = ErrorDictionary }, JsonRequestBehavior.AllowGet)); } objLoginUserDetails = (LoginUserDetails)InsiderTrading.Common.Common.GetSessionValue((string)ConstEnum.SessionValue.UserDetails); if (arrIncluded != "") { arrApplicabilityInclude = JsonConvert.DeserializeObject <string[][]>(arrIncluded); } if (arrExcluded != "") { arrApplicabilityExclude = JsonConvert.DeserializeObject <string[]>(arrExcluded); } if (arrFilter != "") { arrFilterList = JsonConvert.DeserializeObject <List <ApplicabilityFilter> >(arrFilter); } if (arrnonInsEmpFilter != "") { arrFilterNonInsEmpList = JsonConvert.DeserializeObject <List <NonInsEmpApplicabilityFilter> >(arrnonInsEmpFilter); } tblApplicabilityUserIncludeExclude = new DataTable("ApplicabilityUserIncludeExcludeType"); tblApplicabilityUserIncludeExclude.Columns.Add(new DataColumn("UserId", typeof(int))); tblApplicabilityUserIncludeExclude.Columns.Add(new DataColumn("InsiderTypeCodeId", typeof(int))); tblApplicabilityUserIncludeExclude.Columns.Add(new DataColumn("IncludeExcludeCodeId", typeof(int))); if (arrApplicabilityInclude != null) { for (int i = 0; i < arrApplicabilityInclude.Length; i++) { int UserTypeCodeId = i == 0 ? ConstEnum.Code.EmployeeType : i == 1 ? ConstEnum.Code.CorporateUserType : i == 2 ? ConstEnum.Code.NonEmployeeType : i == 3 ? ConstEnum.Code.COUserType : ConstEnum.Code.EmployeeType; DataRow row = null; for (int j = 0; j < arrApplicabilityInclude[i].Length; j++) { row = tblApplicabilityUserIncludeExclude.NewRow(); row["UserId"] = Convert.ToInt32(arrApplicabilityInclude[i][j]); row["InsiderTypeCodeId"] = UserTypeCodeId; row["IncludeExcludeCodeId"] = InsiderTrading.Common.ConstEnum.Code.IncludeTypeCode; tblApplicabilityUserIncludeExclude.Rows.Add(row); } row = null; } } if (arrApplicabilityExclude != null) { DataRow row = null; for (int i = 0; i < arrApplicabilityExclude.Length; i++) { row = tblApplicabilityUserIncludeExclude.NewRow(); row["UserId"] = Convert.ToInt32(arrApplicabilityExclude[i]); row["InsiderTypeCodeId"] = ConstEnum.Code.EmployeeType; row["IncludeExcludeCodeId"] = InsiderTrading.Common.ConstEnum.Code.ExcludeTypeCode; tblApplicabilityUserIncludeExclude.Rows.Add(row); } row = null; } tblApplicabilityFilterType = new DataTable("ApplicabilityFilterType"); tblApplicabilityFilterType.Columns.Add(new DataColumn("ApplicabilityDtlsId", typeof(int))); tblApplicabilityFilterType.Columns.Add(new DataColumn("DepartmentCodeId", typeof(int))); tblApplicabilityFilterType.Columns.Add(new DataColumn("GradeCodeId", typeof(int))); tblApplicabilityFilterType.Columns.Add(new DataColumn("DesignationCodeId", typeof(int))); tblApplicabilityFilterType.Columns.Add(new DataColumn("CategoryCodeId", typeof(int))); tblApplicabilityFilterType.Columns.Add(new DataColumn("SubCategoryCodeId", typeof(int))); tblApplicabilityFilterType.Columns.Add(new DataColumn("RoleId", typeof(int))); tblNonInsEmpApplicabilityFilterType = new DataTable("NonInsEmpApplicabilityFilterType"); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("ApplicabilityDtlsId", typeof(int))); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("DepartmentCodeId", typeof(int))); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("GradeCodeId", typeof(int))); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("DesignationCodeId", typeof(int))); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("CategoryCodeId", typeof(int))); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("SubCategoryCodeId", typeof(int))); tblNonInsEmpApplicabilityFilterType.Columns.Add(new DataColumn("RoleId", typeof(int))); if (arrFilterList != null) { DataRow row = null; foreach (var objFilter in arrFilterList) { row = tblApplicabilityFilterType.NewRow(); row["ApplicabilityDtlsId"] = 0; row["DepartmentCodeId"] = DBNull.Value; row["GradeCodeId"] = DBNull.Value; row["DesignationCodeId"] = DBNull.Value; row["CategoryCodeId"] = DBNull.Value; row["SubCategoryCodeId"] = DBNull.Value; row["RoleId"] = DBNull.Value; if (objFilter.ApplicabilityDtlsId != "" && objFilter.ApplicabilityDtlsId != "0") { row["ApplicabilityDtlsId"] = Convert.ToInt32(objFilter.ApplicabilityDtlsId); } if (objFilter.DepartmentId != "" && objFilter.DepartmentId != "0") { row["DepartmentCodeId"] = Convert.ToInt32(objFilter.DepartmentId); } if (objFilter.GradeId != "" && objFilter.GradeId != "0") { row["GradeCodeId"] = Convert.ToInt32(objFilter.GradeId); } if (objFilter.DesignationId != "" && objFilter.DesignationId != "0") { row["DesignationCodeId"] = Convert.ToInt32(objFilter.DesignationId); } if (objFilter.CategoryId != "" && objFilter.CategoryId != "0") { row["CategoryCodeId"] = Convert.ToInt32(objFilter.CategoryId); } if (objFilter.SubCategoryId != "" && objFilter.SubCategoryId != "0") { row["SubCategoryCodeId"] = Convert.ToInt32(objFilter.SubCategoryId); } if (objFilter.RoleId != "" && objFilter.RoleId != "0") { row["RoleId"] = Convert.ToInt32(objFilter.RoleId); } if (row["DesignationCodeId"] != DBNull.Value || row["GradeCodeId"] != DBNull.Value || row["DepartmentCodeId"] != DBNull.Value || row["CategoryCodeId"] != DBNull.Value || row["SubCategoryCodeId"] != DBNull.Value || row["RoleId"] != DBNull.Value) { tblApplicabilityFilterType.Rows.Add(row); } } row = null; } if (arrFilterNonInsEmpList != null) { DataRow row = null; foreach (var objFilter in arrFilterNonInsEmpList) { row = tblNonInsEmpApplicabilityFilterType.NewRow(); row["ApplicabilityDtlsId"] = 0; row["DepartmentCodeId"] = DBNull.Value; row["GradeCodeId"] = DBNull.Value; row["DesignationCodeId"] = DBNull.Value; row["CategoryCodeId"] = DBNull.Value; row["SubCategoryCodeId"] = DBNull.Value; row["RoleId"] = DBNull.Value; if (objFilter.ApplicabilityDtlsId != "" && objFilter.ApplicabilityDtlsId != "0") { row["ApplicabilityDtlsId"] = Convert.ToInt32(objFilter.ApplicabilityDtlsId); } if (objFilter.DepartmentId != "" && objFilter.DepartmentId != "0") { row["DepartmentCodeId"] = Convert.ToInt32(objFilter.DepartmentId); } if (objFilter.GradeId != "" && objFilter.GradeId != "0") { row["GradeCodeId"] = Convert.ToInt32(objFilter.GradeId); } if (objFilter.DesignationId != "" && objFilter.DesignationId != "0") { row["DesignationCodeId"] = Convert.ToInt32(objFilter.DesignationId); } if (objFilter.CategoryId != "" && objFilter.CategoryId != "0") { row["CategoryCodeId"] = Convert.ToInt32(objFilter.CategoryId); } if (objFilter.SubCategoryId != "" && objFilter.SubCategoryId != "0") { row["SubCategoryCodeId"] = Convert.ToInt32(objFilter.SubCategoryId); } if (objFilter.RoleId != "" && objFilter.RoleId != "0") { row["RoleId"] = Convert.ToInt32(objFilter.RoleId); } if (row["DesignationCodeId"] != DBNull.Value || row["GradeCodeId"] != DBNull.Value || row["DepartmentCodeId"] != DBNull.Value || row["CategoryCodeId"] != DBNull.Value || row["SubCategoryCodeId"] != DBNull.Value || row["RoleId"] != DBNull.Value) { tblNonInsEmpApplicabilityFilterType.Rows.Add(row); } } row = null; } using (ApplicabilitySL_OS objApplicabilitySl = new ApplicabilitySL_OS()) { int nCountOverlapPolicy = 0; objApplicabilitySl.InsertDeleteApplicability(objLoginUserDetails.CompanyDBConnectionString, Convert.ToInt32(sMapToTypeCodeId), Convert.ToInt32(sMapToId), Convert.ToInt32(nAllEmployeeFlag), Convert.ToInt32(nAllInsiderFlag), Convert.ToInt32(nAllEmployeeInsiderFlag), Convert.ToInt32(nAllCoFlag), Convert.ToInt32(nAllCorporateInsiderFlag), Convert.ToInt32(nAllNonEmployeeInsiderFlag), tblApplicabilityFilterType, tblNonInsEmpApplicabilityFilterType, tblApplicabilityUserIncludeExclude, objLoginUserDetails.LoggedInUserID, out nCountOverlapPolicy); statusFlag = true; ErrorDictionary.Add("success", "Applicability saved successfully."); ErrorDictionary.Add("CountOverlapPolicy", Convert.ToString(nCountOverlapPolicy)); } } catch (Exception exp) { ModelState.Remove("KEY"); ModelState.Add("KEY", new ModelState()); ModelState.Clear(); string sErrMessage = Common.Common.getResource(exp.InnerException.Data[0].ToString()); ModelState.AddModelError("error", sErrMessage); ErrorDictionary = GetModelStateErrorsAsString(); } finally { objLoginUserDetails = null; arrApplicabilityInclude = null; arrApplicabilityExclude = null; arrFilterList = null; tblApplicabilityUserIncludeExclude = null; tblApplicabilityFilterType = null; } return(Json(new { status = statusFlag, Message = ErrorDictionary }, JsonRequestBehavior.AllowGet)); }