You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
601 lines
24 KiB
601 lines
24 KiB
@page "/Teacher/TeacherStudent"
|
|
@inject Blazored.SessionStorage.ISessionStorageService sessionStorage
|
|
@inject IJSRuntime jsRuntime
|
|
@inject NavigationManager NavManager
|
|
@inherits Admin.ListBase;
|
|
@using System.ComponentModel.DataAnnotations
|
|
@using Syncfusion.Blazor.Grids;
|
|
@using Syncfusion.Blazor.Buttons;
|
|
@using Syncfusion.Blazor.Spinner;
|
|
@using Syncfusion.Blazor.Navigations;
|
|
@using Syncfusion.Blazor.Popups;
|
|
@using Syncfusion.Blazor.DropDowns
|
|
@using BlazorApp.Helper
|
|
@using BWPMModels;
|
|
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-md-2">
|
|
<div class="card">
|
|
<h6 class="card-header">
|
|
Klasse
|
|
</h6>
|
|
<div class="card-body">
|
|
<RadzenDropDown AllowClear="true" TValue="string" @bind-Value=@KlasseID
|
|
Data=@intKlasse
|
|
Change=@(args => OnChange(args, "DropDown")) TextProperty="bezeichnung" ValueProperty="id" />
|
|
|
|
@* <SfDropDownList @bind-Value="@KlasseID" TValue="string" TItem="Klasse" Placeholder="Klasse" DataSource="@Klasse">
|
|
<DropDownListFieldSettings Value="ID" Text="bezeichnung"></DropDownListFieldSettings>
|
|
<DropDownListEvents TValue="string" TItem="Klasse" ValueChange="ChangeKlasse"></DropDownListEvents>
|
|
</SfDropDownList>*@
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel-body" style="color:@klassehinweiscolor">@((MarkupString)klassehinweis)</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<br />
|
|
<div class="card">
|
|
<h6 class="card-header">
|
|
Schüler
|
|
</h6>
|
|
<div class="card-body">
|
|
<RadzenListBox @bind-Value=@SchuelerID Data=@schuelerliste TextProperty="bezeichnung" ValueProperty="id" Style="height:350px" Change=@(args => SchuelerChange(args, "schuelerlist")) />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-10">
|
|
<div class="card">
|
|
<h6 class="card-header">
|
|
Schüler
|
|
</h6>
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<SfButton IsPrimary="true" OnClick="@(() => NewClick())">Neuer Schüler</SfButton>
|
|
</div>
|
|
<hr />
|
|
<EditForm Model="_schueler" OnValidSubmit="@Submit" OnInvalidSubmit="@InvalidSubmit">
|
|
<input type="hidden" id="hiddenschuelerid" name="hiddenschuelerid" @bind="_schueler.ID">
|
|
<div class="row">
|
|
<div class="col-md-1">
|
|
|
|
Name
|
|
</div>
|
|
<div class="col-md-3">
|
|
<InputText id="Name" class="form-control" @bind-Value="_schueler.name" placeholder="Nachname" disabled="@FieldDisabled" />
|
|
<ValidationMessage For="@(() => _schueler.name)" />
|
|
</div>
|
|
<div class="col-md-1">
|
|
|
|
Vorname
|
|
</div>
|
|
<div class="col-md-3">
|
|
|
|
<InputText id="Vorname" class="form-control" @bind-Value="_schueler.vorname" placeholder="Vorname" disabled="@FieldDisabled" />
|
|
<ValidationMessage For="@(() => _schueler.name)" />
|
|
</div>
|
|
<div class="col-md-1">
|
|
|
|
Bemerkung
|
|
</div>
|
|
<div class="col-md-3">
|
|
<InputText id="Bemerkung" class="form-control" @bind-Value="_schueler.bemerkung" placeholder="Bemerkung" disabled="@FieldDisabled" />
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-1">
|
|
Klasse
|
|
</div>
|
|
<div class="col-md-3">
|
|
@* <SfDropDownList @bind-Value="@SchuelerklasseID" TValue="string" TItem="Klasse" Placeholder="Klasse" DataSource="@Schuelerklasse" Enabled="@DropDownEnabled">
|
|
<DropDownListFieldSettings Value="ID" Text="bezeichnung"></DropDownListFieldSettings>
|
|
</SfDropDownList>
|
|
*@ <RadzenDropDown AllowClear="true" TValue="string" @bind-Value=@SchuelerklasseID
|
|
Data=@Schuelerklasse
|
|
TextProperty="bezeichnung" ValueProperty="id" />
|
|
</div>
|
|
<div class="col-md-1">
|
|
Typ
|
|
</div>
|
|
<div class="col-md-3">
|
|
<SfDropDownList @bind-Value="@KlasseTypID" TValue="string" TItem="Klassentyp" Placeholder="Klassentyp" DataSource="@klassentyp" Enabled="@DropDownEnabled">
|
|
<DropDownListFieldSettings Value="ID" Text="bezeichnung"></DropDownListFieldSettings>
|
|
</SfDropDownList>
|
|
</div>
|
|
<div class="col-md-1">
|
|
</div>
|
|
<div class="col-md-3">
|
|
</div>
|
|
|
|
</div>
|
|
<br />
|
|
|
|
</EditForm>
|
|
<div class="row">
|
|
<SfButton Disabled="@FieldDisabled" IsPrimary="true" OnClick="@(() => SaveClick())">Änderungen speichern</SfButton>
|
|
<SfButton Disabled="@FieldDisabled" IsPrimary="true" OnClick="@(() => DeleteClick())">Schüler löschen</SfButton>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="card">
|
|
<h6 class="card-header">
|
|
Berufe / Berfufswünsche
|
|
</h6>
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col-md-4">
|
|
<RadzenListBox @bind-Value=@BerufID Data=@berufe TextProperty="bezeichnung" ValueProperty="ID" Style="height:350px" />
|
|
<br />
|
|
<RadzenButton style="margin: 0 1rem 1rem 0" Click=@(args => InsertBeruf()) Text="Beruf zuordnen" ButtonStyle="ButtonStyle.Secondary" />
|
|
</div>
|
|
<div class="col-md-8">
|
|
<SfGrid ID="Grid3" DataSource="@GridData" @ref="Grid" AllowPaging="false" AllowSorting="true" Toolbar="@(new List<string>() { "Edit", "Delete" })">
|
|
<GridPageSettings PageCount="5" PageSizes="true"></GridPageSettings>
|
|
<GridEditSettings AllowAdding="true" AllowDeleting="true" AllowEditing="true" Mode="EditMode.Dialog"></GridEditSettings>
|
|
<GridEvents OnActionBegin="OnBeginHandler" OnActionComplete="OnCompletedHandler" TValue="SchuelerBeruf" OnDataBound="RowDataBoundHandler"></GridEvents>
|
|
<GridColumns>
|
|
<GridColumn Type="ColumnType.CheckBox" AllowFiltering="false" AllowSorting="false" Width="60"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.ID) HeaderText="Id" IsPrimaryKey="true" AllowAdding="false" Visible="false" Width="60"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.schuelerID) HeaderText="Schuelerid" Width="100" Visible="false"></GridColumn>
|
|
|
|
<GridForeignColumn Field=@nameof(SchuelerBeruf.berufID) HeaderText="Beruf" ForeignKeyField="ID" ForeignKeyValue="bezeichnung" ForeignDataSource="@berufe" Width="150"></GridForeignColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.bemerkung) HeaderText="Bemerkung" Width="100" Visible="true"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.prioritaet) HeaderText="Prioritaet" Width="100" Visible="true"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.aktiv) HeaderText="Aktiv" Width="100" Visible="false" DisplayAsCheckBox="true"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.erstellt_am) HeaderText="Erstellt_am" Width="100" Visible="false" Format="d" Type="ColumnType.Date"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.mutiert_am) HeaderText="Mutiert_am" Width="100" Visible="false" Format="d" Type="ColumnType.Date"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.mutierer) HeaderText="Mutierer" Width="100" Visible="false"></GridColumn>
|
|
|
|
<GridColumn Field=@nameof(SchuelerBeruf.mandantnr) HeaderText="Mandantnr" Width="100" Visible="false"></GridColumn>
|
|
</GridColumns>
|
|
</SfGrid>
|
|
<div class="container">
|
|
<h2></h2>
|
|
<div class="panel panel-default">
|
|
<div class="panel-body" style="color:red">@((MarkupString)berufhinweis)</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<style>
|
|
#Grid1.e-grid .e-gridheader .e-columnheader,
|
|
#Grid3.e-grid .e-gridfooter {
|
|
display: none;
|
|
}
|
|
</style>
|
|
|
|
<SfDialog Width="350px" IsModal="true" @bind-Visible="@ShowDeleteConfirmation">
|
|
<DialogTemplates>
|
|
<Header>@DialogHeader</Header>
|
|
<Content>@DialogText</Content>
|
|
|
|
</DialogTemplates>
|
|
<DialogButtons>
|
|
@if (DialogShowYesNO == true)
|
|
{
|
|
<DialogButton Content="Ja" IsPrimary="true" OnClick="@DeleteConfirmed" />
|
|
<DialogButton Content="Nein" OnClick="@AbortDelete" />
|
|
}
|
|
else
|
|
{
|
|
<DialogButton Content="OK" IsPrimary="true" OnClick="@DialogConfirmed" />
|
|
}
|
|
</DialogButtons>
|
|
</SfDialog>
|
|
|
|
|
|
@code {
|
|
|
|
public string[] sfSchuelerID { get; set; }
|
|
public string DialogHeader { get; set; } = "";
|
|
public string DialogText { get; set; } = "";
|
|
public bool DialogShowYesNO { get; set; } = true;
|
|
public string berufhinweis = "";
|
|
public string klassehinweis = "";
|
|
public string klassehinweiscolor = "red";
|
|
|
|
public bool ShowDeleteConfirmation { get; set; } = false;
|
|
protected ElementReference ToFocus;
|
|
public string lehrerID = "";
|
|
public int hiddenschuelerid = 0;
|
|
public string KlasseID = "0";
|
|
public string SchuelerklasseID = "0";
|
|
public string KlasseTypID = "0";
|
|
public string userid;
|
|
public bool FieldDisabled = true;
|
|
public bool DropDownEnabled = false;
|
|
public List<BWPMModels.Klasse> Klasse { get; set; }
|
|
public List<BWPMModels.Klassentyp> klassentyp { get; set; } = BlazorApp.Controller.KlassentypController.GetAllAktiveData();
|
|
public List<BWPMModels.Schueler> Schueler { get; set; }
|
|
private Schueler _schueler { get; set; } = new BWPMModels.Schueler();
|
|
public List<BWPMModels.Beruf> berufe { get; set; } = BlazorApp.Controller.BerufController.GetBerufsangebot();
|
|
|
|
public List<Schuelerlist> schuelerliste = new List<Schuelerlist>();
|
|
public List<iKlasse> Schuelerklasse = new List<iKlasse>();
|
|
public int SchuelerID;
|
|
public List<iKlasse> intKlasse = new List<iKlasse>();
|
|
|
|
public class iKlasse
|
|
{
|
|
public string id { get; set; }
|
|
public string bezeichnung { get; set; }
|
|
|
|
}
|
|
|
|
public class Schuelerlist
|
|
{
|
|
public int id { get; set; }
|
|
public string bezeichnung { get; set; }
|
|
}
|
|
//--------------------------------------
|
|
//Schülerberuf / beruf
|
|
//--------------------------------------
|
|
SfGrid<SchuelerBeruf> Grid { get; set; }
|
|
|
|
public List<BWPMModels.SchuelerBeruf> GridData { get; set; }
|
|
public bool ContinuePaging = true;
|
|
public bool InitialRender { get; set; }
|
|
public int Value = 0; // consider that value your querystring contains
|
|
public int foundrow = 0;
|
|
public bool Initial { get; set; } = true;
|
|
public int BerufID;
|
|
private Lehrer _lehrer { get; set; } = new BWPMModels.Lehrer();
|
|
public List<BWPMModels.Lehrer> Lehrerdaten { get; set; }
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
|
|
lehrerID = await sessionStorage.GetItemAsync<string>("LehrerID");
|
|
userid = await sessionStorage.GetItemAsync<string>("UserID");
|
|
Klasse = BlazorApp.Controller.KlasseController.GetByLehrerID(Convert.ToInt32(lehrerID));
|
|
intKlasse.Clear();
|
|
foreach (BWPMModels.Klasse item in Klasse)
|
|
{
|
|
|
|
iKlasse kl = new iKlasse();
|
|
kl.id = item.ID.ToString();
|
|
kl.bezeichnung = item.bezeichnung;
|
|
intKlasse.Add(kl);
|
|
Schuelerklasse.Add(kl);
|
|
|
|
};
|
|
KlasseID = Klasse[0].ID.ToString();
|
|
SchuelerklasseID = Klasse[0].ID.ToString();
|
|
KlasseTypID = klassentyp[0].ID.ToString();
|
|
Update_Schueler_Klasse();
|
|
}
|
|
|
|
void OnChange(object value, string name)
|
|
{
|
|
KlasseID = value.ToString();
|
|
Update_Schueler_Klasse();
|
|
}
|
|
|
|
protected override async Task OnAfterRenderAsync(bool firstRender)
|
|
{
|
|
}
|
|
//----------------------------------------------------------
|
|
//Klassenliste / Schuelerliste
|
|
//----------------------------------------------------------
|
|
public void ChangeKlasse(Syncfusion.Blazor.DropDowns.ChangeEventArgs<string, Klasse> args)
|
|
{
|
|
|
|
Update_Schueler_Klasse();
|
|
}
|
|
|
|
|
|
public void Update_Schueler_Klasse()
|
|
{
|
|
UpdateSchulerliste();
|
|
pruefung_klasse();
|
|
}
|
|
|
|
public void UpdateSchulerliste()
|
|
{
|
|
Schueler = BlazorApp.Controller.SchuelerController.GetByKlasseID(Convert.ToInt32(KlasseID));
|
|
|
|
schuelerliste.Clear();
|
|
|
|
int newschuelerid = 0;
|
|
bool found = false;
|
|
foreach (BWPMModels.Schueler item in Schueler)
|
|
{
|
|
Schuelerlist sl = new Schuelerlist();
|
|
sl.id = item.ID;
|
|
if (newschuelerid == 0) { newschuelerid = sl.id; };
|
|
if (SchuelerID == sl.id) { found = true; }
|
|
sl.bezeichnung = item.name + " " + item.vorname;
|
|
schuelerliste.Add(sl);
|
|
};
|
|
if (found != true)
|
|
{
|
|
FieldDisabled = true;
|
|
DropDownEnabled = false;
|
|
SchuelerID = -1;
|
|
SchuelerID = newschuelerid;
|
|
if (schuelerliste.Count > 0) { SchuelerSelected(); }
|
|
}
|
|
|
|
pruefung_klasse();
|
|
}
|
|
private void SchuelerChange(object value, string name)
|
|
{
|
|
var str = value is IEnumerable<object> ? string.Join(", ", (IEnumerable<object>)value) : value;
|
|
SchuelerSelected();
|
|
}
|
|
private void SchuelerSelected()
|
|
{
|
|
Schueler = BlazorApp.Controller.SchuelerController.GetByID(Convert.ToInt32(SchuelerID));
|
|
_schueler = Schueler.First<BWPMModels.Schueler>();
|
|
SchuelerklasseID = _schueler.klasseID.ToString();
|
|
KlasseTypID = _schueler.klassemtypID.ToString();
|
|
FieldDisabled = false;
|
|
DropDownEnabled = true;
|
|
update_griddata();
|
|
pruefung();
|
|
}
|
|
|
|
//----------------------------------------------------------
|
|
//Schüler-Formular
|
|
//----------------------------------------------------------
|
|
|
|
public void Submit()
|
|
{
|
|
BlazorApp.Controller.SchuelerController.PUT(_schueler);
|
|
}
|
|
public void InvalidSubmit()
|
|
{
|
|
}
|
|
|
|
private void SaveClick()
|
|
{
|
|
Schueler _tmpschueler = new BWPMModels.Schueler();
|
|
_tmpschueler = BlazorApp.Controller.SchuelerController.GetByID(_schueler.ID).First<BWPMModels.Schueler>();
|
|
_tmpschueler.name = _schueler.name;
|
|
_tmpschueler.vorname = _schueler.vorname;
|
|
_tmpschueler.bemerkung = _schueler.bemerkung;
|
|
_tmpschueler.klasseID = Convert.ToInt32(SchuelerklasseID);
|
|
_tmpschueler.klassemtypID = Convert.ToInt32(KlasseTypID);
|
|
BlazorApp.Controller.SchuelerController.PUT(_tmpschueler);
|
|
UpdateSchulerliste();
|
|
}
|
|
|
|
private void NewClick()
|
|
{
|
|
int schuelerid = 0;
|
|
BWPMModels.Schueler schuelerdata = new Schueler();
|
|
schuelerdata.aktiv = true;
|
|
schuelerdata.erstellt_am = DateTime.Now;
|
|
schuelerdata.mutiert_am = DateTime.Now;
|
|
schuelerdata.mutierer = userid;
|
|
schuelerdata.name = "Neuer Schüler";
|
|
schuelerdata.vorname = "";
|
|
schuelerdata.bemerkung = "";
|
|
schuelerdata.klasseID = Convert.ToInt32(KlasseID);
|
|
schuelerdata.klassemtypID = Convert.ToInt32(KlasseTypID);
|
|
schuelerid = BlazorApp.Controller.SchuelerController.POST(schuelerdata);
|
|
FieldDisabled = false;
|
|
DropDownEnabled = true;
|
|
UpdateSchulerliste();
|
|
SchuelerID = schuelerid;
|
|
SchuelerSelected();
|
|
jsRuntime.InvokeVoidAsync("SetFocusToElement", ToFocus);
|
|
|
|
}
|
|
private void DeleteClick()
|
|
{
|
|
DialogHeader = "Löschbestätigung";
|
|
DialogText = "Schüler '" + _schueler.name + ' ' + _schueler.vorname + "' wirklich löschen?'";
|
|
DialogShowYesNO = true;
|
|
ShowDeleteConfirmation = true;
|
|
}
|
|
|
|
private void DeleteConfirmed()
|
|
{
|
|
_schueler.aktiv = false;
|
|
_schueler.mutierer = userid;
|
|
_schueler.mutiert_am = DateTime.Now;
|
|
BlazorApp.Controller.SchuelerController.PUT(_schueler);
|
|
BlazorApp.Controller.SchuelerBerufController.DeleteBerufswunsch(_schueler.ID, userid);
|
|
ShowDeleteConfirmation = false;
|
|
UpdateSchulerliste();
|
|
}
|
|
|
|
private void AbortDelete()
|
|
{
|
|
ShowDeleteConfirmation = false;
|
|
}
|
|
private void DialogConfirmed()
|
|
{
|
|
ShowDeleteConfirmation = false;
|
|
}
|
|
//--------------------------------------
|
|
//SchülerBeruf / Beruf
|
|
//--------------------------------------
|
|
private void InsertBeruf()
|
|
{
|
|
if (SchuelerID == 0)
|
|
{
|
|
DialogHeader = "Daten unvollständig";
|
|
DialogText = "Bitte zuerst einen Schüler auswählen!";
|
|
DialogShowYesNO = false;
|
|
ShowDeleteConfirmation = true;
|
|
return;
|
|
}
|
|
if (BerufID == 0)
|
|
{
|
|
DialogHeader = "Daten unvollständig";
|
|
DialogText = "Bitte zuerst einen Beruf auswählen!";
|
|
DialogShowYesNO = false;
|
|
ShowDeleteConfirmation = true;
|
|
return;
|
|
}
|
|
ShowDeleteConfirmation = false;
|
|
BWPMModels.SchuelerBeruf sberuf = new BWPMModels.SchuelerBeruf();
|
|
sberuf.aktiv = true;
|
|
sberuf.bemerkung = "";
|
|
sberuf.berufID = BerufID;
|
|
sberuf.erstellt_am = DateTime.Now;
|
|
sberuf.mutiert_am = DateTime.Now;
|
|
sberuf.mutierer = userid;
|
|
sberuf.schuelerID = SchuelerID;
|
|
int prio = BlazorApp.Controller.SchuelerBerufController.Get_Prio(SchuelerID);
|
|
sberuf.prioritaet = prio + 1;
|
|
BlazorApp.Controller.SchuelerBerufController.POST(sberuf);
|
|
update_griddata();
|
|
pruefung();
|
|
}
|
|
|
|
private void update_griddata()
|
|
{
|
|
GridData = BlazorApp.Controller.SchuelerBerufController.GetBySchuelerID(SchuelerID);
|
|
}
|
|
|
|
private async Task OnBeginHandler(ActionEventArgs<BWPMModels.SchuelerBeruf> Args)
|
|
{
|
|
if (Args.RequestType == Syncfusion.Blazor.Grids.Action.Save)
|
|
{
|
|
if (Args.Action == "Add")
|
|
{
|
|
Args.Data.erstellt_am = DateTime.Now;
|
|
Args.Data.mutierer = userid;
|
|
Args.Data.mutiert_am = DateTime.Now;
|
|
Args.Data.aktiv = true;
|
|
Args.Data.ID = BlazorApp.Controller.SchuelerBerufController.POST(Args.Data);
|
|
Value = Args.Data.ID;
|
|
pruefung();
|
|
}
|
|
else
|
|
{
|
|
Args.Data.mutierer = userid.ToString();
|
|
Args.Data.mutiert_am = DateTime.Now;
|
|
BlazorApp.Controller.SchuelerBerufController.PUT(Args.Data);
|
|
pruefung();
|
|
}
|
|
}
|
|
if (Args.RequestType == Syncfusion.Blazor.Grids.Action.Delete)
|
|
{
|
|
Args.Data.mutierer = userid.ToString();
|
|
Args.Data.mutiert_am = DateTime.Now;
|
|
Args.Data.aktiv = false;
|
|
BlazorApp.Controller.SchuelerBerufController.PUT(Args.Data);
|
|
pruefung();
|
|
}
|
|
}
|
|
|
|
public async Task OnCompletedHandler(ActionEventArgs<BWPMModels.SchuelerBeruf> Args)
|
|
{
|
|
if (Args.RequestType == Syncfusion.Blazor.Grids.Action.Save)
|
|
{
|
|
await Grid.SetRowData(Args.Data.ID, Args.Data);
|
|
double xx = 0;
|
|
Value = Args.Data.ID;
|
|
xx = await DataHandler();
|
|
await Grid.SelectRow(xx);
|
|
}
|
|
}
|
|
public async void RowDataBoundHandler(BeforeDataBoundArgs<BWPMModels.SchuelerBeruf> args)
|
|
{
|
|
if (!Initial)
|
|
{
|
|
}
|
|
Initial = false;
|
|
}
|
|
|
|
public async Task<double> DataHandler()
|
|
{
|
|
var PageCount = (GridData.Count / Grid.PageSettings.PageSize) + 1;
|
|
ContinuePaging = true;
|
|
var CurrentPage = 1;
|
|
Grid.Refresh();
|
|
await Grid.GoToPage(1);
|
|
for (int i = 1; i <= PageCount; i++)
|
|
{
|
|
List<SchuelerBeruf> Rows = await Grid.GetCurrentViewRecords(); // returns the current view data
|
|
for (int j = 0; j < Grid.PageSettings.PageSize; j++)
|
|
{
|
|
if (j < Rows.Count && Rows[j].ID == Value)
|
|
{
|
|
foundrow = j;
|
|
|
|
ContinuePaging = false;
|
|
break;
|
|
}
|
|
}
|
|
if (ContinuePaging)
|
|
{
|
|
if (i >= PageCount)
|
|
{
|
|
i = 0;
|
|
}
|
|
await Grid.GoToPage(i + 1);
|
|
|
|
}
|
|
else
|
|
{
|
|
return foundrow;
|
|
}
|
|
}
|
|
return foundrow;
|
|
}
|
|
|
|
public void pruefung()
|
|
{
|
|
berufhinweis = "";
|
|
int Anzahl_Berufe = 0;
|
|
try
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
if (BlazorApp.Controller.SchuelerBerufController.Get_Anzahl(SchuelerID) < Convert.ToInt32(dbh.Get_Option(4)))
|
|
{
|
|
berufhinweis += "\r\n- es sollten 3 Berufswünsche ausgewählt werden<br />";
|
|
}
|
|
if (BlazorApp.Controller.SchuelerBerufController.Has_Prio1(SchuelerID) == false)
|
|
{
|
|
berufhinweis += "\r\n- Es fehlt ein Berufswunsch mit Priorität 1";
|
|
}
|
|
}
|
|
catch { };
|
|
}
|
|
|
|
public void pruefung_klasse()
|
|
{
|
|
klassehinweis = "";
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.add_sp_param("Param1", KlasseID.ToString());
|
|
dbh.Get_Tabledata("sp_chk_klasse", true, false);
|
|
if (dbh.dsdaten.Tables[0].Rows[0][0].ToString() != dbh.dsdaten.Tables[0].Rows[0][1].ToString())
|
|
{
|
|
klassehinweis += "\r\n- " + dbh.dsdaten.Tables[0].Rows[0][1].ToString() + " von " + dbh.dsdaten.Tables[0].Rows[0][0].ToString() + " Schüler erfasst";
|
|
klassehinweiscolor = "red";
|
|
}
|
|
else
|
|
{
|
|
klassehinweis += "\r\n- " + dbh.dsdaten.Tables[0].Rows[0][1].ToString() + " von " + dbh.dsdaten.Tables[0].Rows[0][0].ToString() + " Schüler erfasst";
|
|
klassehinweiscolor = "green";
|
|
}
|
|
}
|
|
|
|
public async Task SchuelerClick(RecordClickEventArgs<Schuelerlist> args)
|
|
{
|
|
SchuelerID = args.RowData.id;
|
|
SchuelerSelected();
|
|
}
|
|
}
|