kreta/KretaWeb/Areas/TanuloErtekeles/Controllers/BaseTanuloErtekelesController.cs
2024-03-13 00:33:46 +01:00

94 lines
4.5 KiB
C#

using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Framework.Caching;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
public abstract class BaseTanuloErtekelesController : Controller
{
#region Properties
public static string MondatbankItemSelectPopupName => "TanuloErtekelesMondatbankItemSelectPopup";
public static string MondatbankItemSelectFormName => "TanuloErtekelesMondatbankItemSelectForm";
public static string GridName => "TanuloErtekelesGrid";
public static string FormName => "TanuloErtekelesForm";
public static string DetailGridName => "TanuloErtekelesDetailGrid";
#endregion Properties
public List<SelectListItem> GetOsztalyzatList(bool osztalyzatSzammal = false)
{
List<DictionaryItem> osztalyzatList = ((int)GeneratedAdatszotarTipusEnum.OsztalyzatTipus).GetItemsByType(ClaimData.AktivTanevID.Value);
List<SelectListItem> result = osztalyzatList.Select(x => new SelectListItem
{
Value = x.Id.ToString(),
Text = osztalyzatSzammal ? x.Value.ToString() : x.Name
}).ToList();
return result.OrderBy(x => x.Text).ToList();
}
protected static IEnumerable<ExtraDataComboBoxListItem> GetOsztalyCsoportList(int? feladatKategoriaId = null)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return osztalyCsoportHelper.GetOsztalyCsoportForDropDownList(feladatKategoriaId);
}
protected IEnumerable<ExtraDataComboBoxListItem> GetOsztalyCsoportListByFelhasznaloId()
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return osztalyCsoportHelper.GetOsztalyCsoportByFelhasznaloIdForDropDownList();
}
protected static List<SelectListItem> GetMondatbankItemSelectList(List<DataRow> tanuloErtekelesMondatbankItemRows)
{
var tanuloErtekelesMondatbankItemSelectList = new Dictionary<string, string>();
foreach (DataRow row in tanuloErtekelesMondatbankItemRows)
{
string id = SDAConvert.ToString(row["MondatbankSelectPopupId"]);
string rovidNevText = SDAConvert.ToString(row["MondatbankSelectPopupRovidNev"]);
string rovidNevShowText = string.IsNullOrWhiteSpace(rovidNevText) ? TanuloErtekelesResource.TanuloErtekelesMondatbankNa : rovidNevText;
string szovegText = RichTextLogic.CutHtmlTagsAndDecodeAndBR2Space(SDAConvert.ToString(row["MondatbankSelectPopupSzoveg"]).ReplaceMultipleSpacesAndTrim());
tanuloErtekelesMondatbankItemSelectList.Add(id, $"{rovidNevShowText} - {(szovegText.Length <= 100 ? szovegText : szovegText.Substring(0, 97) + "...")}");
}
List<SelectListItem> result = tanuloErtekelesMondatbankItemSelectList.ToSelectListItemList();
return result;
}
protected static List<TanuloErtekelesMondatbankItemModel> GetMondatbankItemList(List<DataRow> tanuloErtekelesMondatbankItemRows)
{
var tanuloErtekelesMondatbankItemList = new List<TanuloErtekelesMondatbankItemModel>();
foreach (DataRow row in tanuloErtekelesMondatbankItemRows)
{
tanuloErtekelesMondatbankItemList.Add(new TanuloErtekelesMondatbankItemModel(false)
{
ID = SDAConvert.ToInt32(row["MondatbankSelectPopupId"]),
RovidNev = SDAConvert.ToString(row["MondatbankSelectPopupRovidNev"]),
Szoveg = SDAConvert.ToString(row["MondatbankSelectPopupSzoveg"]),
SzovegNemet = SDAConvert.ToString(row["MondatbankSelectPopupSzovegNemet"]),
SzovegHorvat = SDAConvert.ToString(row["MondatbankSelectPopupSzovegHorvat"]),
SzovegRoman = SDAConvert.ToString(row["MondatbankSelectPopupSzovegRoman"]),
SzovegSzerb = SDAConvert.ToString(row["MondatbankSelectPopupSzovegSzerb"])
});
}
return tanuloErtekelesMondatbankItemList;
}
}
}