public async Task <IActionResult> GetLabelUIAsync([FromBody] ViewModels.PageLabelReq view) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var result = await _service.GetLabelsUI(view); if (!result.Success) { return(BadRequest(result.Resource)); } return(Ok(result.Resource)); }
public async Task <IResponse <List <ViewModels.LabelNames> > > GetLabelsUI(ViewModels.PageLabelReq view) { var PageLabelRes = new List <LabelNames>(); var PageLabelModel = new List <Languages_Label>(); if (view.page_name == "ALL") { var EnData = (from file in _appContext.Languages_Label where file.Is_Active == 1 & file.Language_Code == "En" orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Page_Name = file.Pagename, Page_Display_Name = file.Page_Displayname, Label_Name = file.Labelname, Value = file.Value, LanguageCode = file.Language_Code }); var ArData = (from file in _appContext.Languages_Label where file.Is_Active == 1 & file.Language_Code == "Ar" orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Page_Name = file.Pagename, Page_Display_Name = file.Page_Displayname, Label_Name = file.Labelname, Value = file.Value, LanguageCode = file.Language_Code }); var FinalData = from item in EnData join item1 in ArData on new { item.Page_Name, item.Label_Name } equals new { item1.Page_Name, item1.Label_Name } select new { PageName = item.Page_Name, PageDisplayName = item.Page_Display_Name, LabelName = item.Label_Name, English = item.Value, Arabic = item1.Value }; foreach (var item in FinalData) { LabelNames ll = new LabelNames(); ll.PageName = item.PageName; ll.PageDisplayName = item.PageDisplayName; ll.LabelName = item.LabelName; ll.English = item.English.ToString().Trim(); ll.Arabic = item.Arabic.ToString().Trim(); PageLabelRes.Add(ll); } } else { var EnData = from file in _appContext.Languages_Label where file.Is_Active == 1 & file.Language_Code == "En" & file.Pagename == view.page_name || file.Pagename == "Common" orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Page_Name = file.Pagename, Page_Display_Name = file.Page_Displayname, Label_Name = file.Labelname, Value = file.Value, LanguageCode = file.Language_Code }; var ArData = from file in _appContext.Languages_Label where file.Is_Active == 1 & file.Language_Code == "Ar" & file.Pagename == view.page_name || file.Pagename == "Common" orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Page_Name = file.Pagename, Page_Display_Name = file.Page_Displayname, Label_Name = file.Labelname, Value = file.Value, LanguageCode = file.Language_Code }; var FinalData = from item in EnData join item1 in ArData on new { item.Label_Name } equals new { item1.Label_Name } select new { PageName = item.Page_Name, PageDisplayName = item.Page_Display_Name, LabelName = item.Label_Name, English = item.Value, Arabic = item1.Value }; foreach (var item in FinalData) { LabelNames ll = new LabelNames(); ll.PageName = item.PageName; ll.PageDisplayName = item.PageDisplayName; ll.LabelName = item.LabelName; ll.English = item.English.ToString().Trim(); ll.Arabic = item.Arabic.ToString().Trim(); PageLabelRes.Add(ll); } } return(new LangResponseUI(PageLabelRes)); }
public async Task <IResponse <List <ViewModels.Page> > > GetLabels(ViewModels.PageLabelReq view) { var PageLabelRes = new List <Page>(); DataTable dt = new DataTable(); if (view.FromDate != null) { var data = from file in _appContext.Languages_Label where file.Is_Active == 1 && file.Updated_Date >= view.FromDate orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Page_Name = file.Pagename, Page_Display_Name = file.Page_Displayname, Label_Name = file.Labelname, file.Value, Language = file.Language_Code }; var labelInfo = await data.ToListAsync(); dt = ToDataTable(labelInfo); } else if (view.page_name == "ALL") { var data = from file in _appContext.Languages_Label where file.Is_Active == 1 orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Page_Name = file.Pagename, Page_Display_Name = file.Page_Displayname, Label_Name = file.Labelname, file.Value, Language = file.Language_Code }; var labelInfo = await data.ToListAsync(); dt = ToDataTable(labelInfo); } String previouspagename = String.Empty; String previouslabelname = String.Empty; String NextLabelName = String.Empty; for (int i = 0; i < dt.Rows.Count - 1; i++) { Page Response = new Page(); Response.Name = dt.Rows[i]["Page_Name"].ToString(); Response.DispName = dt.Rows[i]["Page_Display_Name"].ToString(); if (String.IsNullOrEmpty(previouspagename)) { previouspagename = dt.Rows[i]["Page_Name"].ToString(); } List <Label> lstlabel = new List <Label>(); int CCount = i; if (i != 0) { i = i - 1; } if (previouspagename.ToUpper() == dt.Rows[i]["Page_Name"].ToString().ToUpper()) { for (int j = i; j < dt.Rows.Count - 1; j++) { if (previouspagename.ToUpper() == dt.Rows[j]["Page_Name"].ToString().ToUpper()) { String CurrentLabelName = dt.Rows[j]["Label_Name"].ToString(); if (previouslabelname.ToUpper() != CurrentLabelName.ToUpper()) { if (dt.Rows[j]["Language"].ToString().Trim() == "en") { Label label = new Label(); label.Text = CurrentLabelName; List <Values> lstval = new List <Values>(); Values val = new Values(); val.En = dt.Rows[j]["Value"].ToString(); if (dt.Rows[j + 1]["Language"].ToString().Trim() == "ar" && CurrentLabelName == dt.Rows[j + 1]["Label_Name"].ToString()) { val.Ar = dt.Rows[j + 1]["Value"].ToString(); } else { val.Ar = ""; } lstval.Add(val); label.Values = lstval; lstlabel.Add(label); } else if (dt.Rows[j]["Language"].ToString().Trim() == "ar") { Label label = new Label(); label.Text = CurrentLabelName; List <Values> lstval = new List <Values>(); Values val = new Values(); val.Ar = dt.Rows[j]["Value"].ToString(); if (dt.Rows[j + 1]["Language"].ToString().Trim() == "en" && CurrentLabelName == dt.Rows[j + 1]["Label_Name"].ToString()) { val.En = dt.Rows[j + 1]["Value"].ToString(); } else { val.En = ""; } lstval.Add(val); label.Values = lstval; lstlabel.Add(label); } previouslabelname = CurrentLabelName; } } else { CCount = j; break; } CCount = j; } } i = CCount; previouspagename = dt.Rows[i]["Page_Name"].ToString(); Response.Labels = lstlabel; PageLabelRes.Add(Response); } return(new LangResponse(PageLabelRes)); }
public async Task <IResponse <ViewModels.PageNew> > GetLabel(ViewModels.PageLabelReq view) { var PageLabelRes = new PageNew(); DataTable dt = new DataTable(); Dictionary <string, string> PageRes = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase); if (view.FromDate != null) { var data = from file in _appContext.Languages_Label where file.Is_Active == 1 && file.Updated_Date >= view.FromDate orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Key = file.Pagename.Trim() + "_" + file.Labelname.Trim() + "_" + file.Language_Code.Trim(), value = file.Value.Trim() }; var labelInfo = await data.ToListAsync(); PageLabelRes.PageKeyValue = new Dictionary <string, string>(); dt = ToDataTable(labelInfo); foreach (DataRow dr in dt.AsEnumerable()) { if (!PageLabelRes.PageKeyValue.ContainsKey(dr["Key"].ToString().Trim())) { PageLabelRes.PageKeyValue.Add(dr["Key"].ToString().Trim(), dr["value"].ToString().Trim()); } } } else if (view.page_name == "ALL") { var data = from file in _appContext.Languages_Label where file.Is_Active == 1 orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Key = file.Pagename.Trim() + "_" + file.Labelname.Trim() + "_" + file.Language_Code.Trim(), value = file.Value.Trim() }; var labelInfo = await data.ToListAsync(); PageLabelRes.PageKeyValue = new Dictionary <string, string>(); dt = ToDataTable(labelInfo); foreach (DataRow dr in dt.AsEnumerable()) { if (!PageLabelRes.PageKeyValue.ContainsKey(dr["Key"].ToString().Trim())) { PageLabelRes.PageKeyValue.Add(dr["Key"].ToString().Trim(), dr["value"].ToString().Trim()); } } } else { var data = from file in _appContext.Languages_Label where file.Is_Active == 1 & file.Pagename == view.page_name || file.Pagename == "Common" orderby file.Pagename ascending, file.Labelname descending, file.Language_Code descending select new { Key = file.Pagename.Trim() + "_" + file.Labelname.Trim() + "_" + file.Language_Code.Trim(), value = file.Value.Trim() }; var labelInfo = await data.ToListAsync(); dt = ToDataTable(labelInfo); PageLabelRes.PageKeyValue = new Dictionary <string, string>(); foreach (DataRow dr in dt.AsEnumerable()) { if (!PageLabelRes.PageKeyValue.ContainsKey(dr["Key"].ToString().Trim())) { PageLabelRes.PageKeyValue.Add(dr["Key"].ToString().Trim(), dr["value"].ToString().Trim()); } } } return(new LanggResponse(PageLabelRes)); }