65 lines
3.2 KiB
C#
65 lines
3.2 KiB
C#
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Web.Mvc;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Utils;
|
|
using Kreta.Core;
|
|
using Kreta.Core.ConnectionType;
|
|
using Kreta.DataAccessManual;
|
|
using Kreta.Resources;
|
|
|
|
namespace Kreta.BusinessLogic.Helpers
|
|
{
|
|
public class AlkalmazottMunkaugyiAdatokHelper : LogicBase
|
|
{
|
|
public AlkalmazottMunkaugyiAdatokHelper(IConnectionType connectionType) : base(connectionType) { }
|
|
|
|
public List<AlkalmazottMunkaugyiAdatokCo> GetAlkalmazottMunkaugyiAdatokCoList()
|
|
{
|
|
DataSet dataSet = Dal.CustomConnection.Run(ConnectionType, dalHandler => dalHandler.AlkalmazottMunkaugyiAdatokDal().GetAlkalmazottMunkaugyiAdatokData(TanevId));
|
|
|
|
var result = new List<AlkalmazottMunkaugyiAdatokCo>();
|
|
foreach (DataRow dataRow in dataSet.Tables[0].AsEnumerable())
|
|
{
|
|
var item = new AlkalmazottMunkaugyiAdatokCo(dataRow);
|
|
result.Add(item);
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
public List<SelectListItem> GetAlkalmazottByVezetoiOraszamOk(bool intoDokument = false, string selectedValuePart = null, int nyomtatvanyNyelvEnum = 0, bool isNemzetisegiDokumentum = false)
|
|
{
|
|
return Dal.CustomConnection.Run(ConnectionType, h =>
|
|
{
|
|
var dal = h.AlkalmazottMunkaugyiAdatokDal();
|
|
var ds = dal.GetAlkalmazottByVezetoiOraszamOk(TanevId, nyomtatvanyNyelvEnum);
|
|
Dictionary<string, string> items;
|
|
if (!intoDokument)
|
|
{
|
|
items = ds.Tables[0].AsEnumerable().ToDictionary(row => row.Field<long>("Id").ToString(), row => row.Field<string>("Nev") + " - " + row.Field<string>("VezetoiOraszamOk") + ((row.Field<int>("IsIntezmenyAdat") == 1) ? NyomtatvanyokResource.IntezmenyiAdatokbol : ""));
|
|
}
|
|
else
|
|
{
|
|
items = !isNemzetisegiDokumentum ?
|
|
ds.Tables[0].AsEnumerable().ToDictionary(row => row.Field<long>("Id").ToString(), row => row.Field<string>("Nev") + " - " + row.Field<string>("VezetoiOraszamOk")) :
|
|
ds.Tables[0].AsEnumerable().ToDictionary(row => row.Field<long>("Id").ToString(), row => $"{row.Field<string>("Nev")}({row.Field<string>("NevIdegenNyelven")}) - {row.Field<string>("VezetoiOraszamOk")}({row.Field<string>("VezetoiOraszamOkIdegenNyelven")})");
|
|
}
|
|
|
|
return items.ToSelectItemList(null, (intoDokument) ? null : selectedValuePart);
|
|
});
|
|
}
|
|
|
|
public bool HasAlkalmazottAlkalmazottMunkaKorTipus()
|
|
{
|
|
return Dal.CustomConnection.Run(ConnectionType, h =>
|
|
{
|
|
var alkalmazott = h.Alkalmazott().Get(FelhasznaloId);
|
|
return alkalmazott.MunkaugyiAdatok.Any(x => !x.Torolt && Constants.FeltarAlkalmazottEszkozigenylesMunkakorTipusList.Contains(x.MunkakorTipusa.Value))
|
|
|| alkalmazott.TovabbiMunkaugyiAdatok.Any(x => !x.Torolt && Constants.FeltarAlkalmazottEszkozigenylesMunkakorTipusList.Contains(x.MunkakorTipusa.Value));
|
|
});
|
|
}
|
|
|
|
}
|
|
}
|