/// <summary> /// Returns JSON object having set all columns/tables configurations /// </summary> /// <param name="configType"></param> /// <returns></returns> /// <remarks></remarks> private string GetJSON(int configType) { List <SearchDataConfigs> lstConfigurations = default(List <SearchDataConfigs>); JavaScriptSerializer jsSerializer = new JavaScriptSerializer(); List <Dictionary <string, object> > arrConfigurations = new List <Dictionary <string, object> >(); Dictionary <string, object> configurationProperty = default(Dictionary <string, object>); lstConfigurations = DataConfigs.FindAll(x => x.ConfigType == configType); foreach (SearchDataConfigs configuration in lstConfigurations) { configurationProperty = new Dictionary <string, object>(); configurationProperty.Add("searchType", configuration.SearchType); if (configuration.ConfigType == 2) { configurationProperty.Add("idx", configuration.ConfigIndex); configurationProperty.Add("table", configuration.TableName); } else { configurationProperty.Add("dbColumn", configuration.ColumnName); configurationProperty.Add("header", configuration.ColumnHeaderText); configurationProperty.Add("colType", configuration.ColumnType); configurationProperty.Add("sort", configuration.IsSortable ? "1" : "0"); configurationProperty.Add("show", configuration.IsVisible ? "1" : "0"); configurationProperty.Add("edit", configuration.IsEditable ? "1" : "0"); configurationProperty.Add("pk", configuration.IsPrimaryKey ? "1" : "0"); } arrConfigurations.Add(configurationProperty); } return(jsSerializer.Serialize(arrConfigurations)); }
/// <summary> /// Updates data modified inside a data grid /// </summary> /// <param name="params"></param> /// <param name="searchType"></param> /// <param name="jsonData"></param> /// <returns></returns> /// <remarks></remarks> public bool Save(Dictionary <string, string> @params, string searchType, string jsonData) { bool retVal = true; JavaScriptSerializer jsSerializer = new JavaScriptSerializer(); object objEntity = new object(); Database_Text_Search dbTextSearch = default(Database_Text_Search); List <TextSearchEntity> lstTextSearchEntity = new List <TextSearchEntity>(); TextSearchEntity objTextSearchEntity = default(TextSearchEntity); var typeTextSearchUpdatedData = (new List <TextSearchUpdateData>()).GetType(); List <SearchDataConfigs> lstTables = null; Dictionary <string, string> tableList = new Dictionary <string, string>(); switch (searchType) { case "TEXTSEARCH": objEntity = jsSerializer.Deserialize(jsonData, typeTextSearchUpdatedData); try { TalentSystemDefaults.DESettings temp_settings = settings; dbTextSearch = new Database_Text_Search(ref temp_settings); settings = temp_settings; lstTables = DataConfigs.FindAll(x => x.ConfigType == System.Convert.ToInt32(ConfigurationTypes.Table) & x.SearchType == TEXTSEARCH); foreach (var tableConfig in lstTables) { tableList.Add(tableConfig.TableName, tableConfig.ConfigIndex.ToString()); } // convert into an entity object foreach (TextSearchUpdateData UpdatedRow in ((List <TextSearchUpdateData>)objEntity)) { objTextSearchEntity = new TextSearchEntity(); objTextSearchEntity.ID = int.Parse(UpdatedRow.id); objTextSearchEntity.TableName = UpdatedRow.dbTable; objTextSearchEntity.Text_Code = UpdatedRow.text_code; objTextSearchEntity.Text_Content = UpdatedRow.text_content; lstTextSearchEntity.Add(objTextSearchEntity); } retVal = dbTextSearch.SaveTextSearchData(lstTextSearchEntity, tableList); } catch (Exception) { throw; } break; case "PAYMENTTYPESEARCH": break; } return(retVal); }