update nach Schuelererfassung
This commit is contained in:
131
BlazorApp - Kopie (4)/Pages/Reporting/Reporting.razor
Normal file
131
BlazorApp - Kopie (4)/Pages/Reporting/Reporting.razor
Normal file
@@ -0,0 +1,131 @@
|
||||
@page "/Reporting/Reporting"
|
||||
@page "/Reporting/Reporting/{ReportNr}"
|
||||
@inherits Admin.ListBase;
|
||||
|
||||
@inject Blazored.SessionStorage.ISessionStorageService sessionStorage
|
||||
@using Microsoft.AspNetCore.Hosting;
|
||||
@using System.IO;
|
||||
@using System.Data;
|
||||
@using FastReport
|
||||
@using FastReport.Web
|
||||
@using FastReport.Web.Blazor.Components
|
||||
@using BWPMModels;
|
||||
@using Syncfusion.Blazor.Spinner
|
||||
<div id="container">
|
||||
|
||||
<WebReportContainer WebReport="@UserWebReport" />
|
||||
<SfSpinner @bind-Visible="@Spinnervisible">
|
||||
</SfSpinner>
|
||||
</div>
|
||||
@emsg;
|
||||
|
||||
@code {
|
||||
[Parameter]
|
||||
public string ReportNr { get; set; }
|
||||
|
||||
public string emsg { get; set; } = "";
|
||||
private IHostingEnvironment Environment;
|
||||
private bool Spinnervisible { get; set; } = true;
|
||||
public string ReportName { get; set; }
|
||||
public DataSet DataSet { get; set; } = new DataSet();
|
||||
public WebReport UserWebReport { get; set; } = new WebReport();
|
||||
public Report Report { get; set; } = new Report();
|
||||
string guserid = "";
|
||||
string sql = "";
|
||||
|
||||
private Firma _firma { get; set; } = new BWPMModels.Firma();
|
||||
public List<BWPMModels.Firma> Firmendaten { get; set; }
|
||||
|
||||
|
||||
|
||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||
{
|
||||
Spinnervisible = false;
|
||||
}
|
||||
protected override async Task OnParametersSetAsync()
|
||||
{
|
||||
string paramtyp1 = "";
|
||||
string paramtyp2 = "";
|
||||
string paramtyp3 = "";
|
||||
|
||||
Helper.dbhelper dbh = new Helper.dbhelper();
|
||||
string reportdir = dbh.Get_Option(28);
|
||||
|
||||
reportdir += "/";
|
||||
dbh.Get_Tabledata("Select * from Report where id=" + ReportNr.ToString(), false, true);
|
||||
@*reportdir = "Reports/";*@
|
||||
try
|
||||
{
|
||||
Report = Report.FromFile(reportdir + dbh.dsdaten.Tables[0].Rows[0]["reportfile"]);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
emsg=e.Message;
|
||||
return;
|
||||
}
|
||||
paramtyp1 = dbh.dsdaten.Tables[0].Rows[0]["paramtype1"].ToString();
|
||||
paramtyp2 = dbh.dsdaten.Tables[0].Rows[0]["paramtype2"].ToString();
|
||||
paramtyp3 = dbh.dsdaten.Tables[0].Rows[0]["paramtype3"].ToString();
|
||||
|
||||
sql = dbh.dsdaten.Tables[0].Rows[0]["sql"].ToString();
|
||||
|
||||
switch (paramtyp1)
|
||||
{
|
||||
case "%firmaID%":
|
||||
Firmendaten = BlazorApp.Controller.FirmaController.GetByUserID(userid);
|
||||
_firma = Firmendaten.First<BWPMModels.Firma>();
|
||||
sql = sql.Replace("%firmaid%", _firma.ID.ToString());
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
};
|
||||
|
||||
|
||||
dbh.dsdaten.Tables.Clear();
|
||||
DataSet.Tables.Clear();
|
||||
DataSet.Tables.Add(dbh.Get_Tabledata(sql, false, true).Copy());
|
||||
Report.SetParameterValue("Parcours", dbh.Get_Option(2));
|
||||
Report.SetParameterValue("Spruch", dbh.Get_Option(3));
|
||||
Report.SetParameterValue("URL", dbh.Get_Option(27));
|
||||
Report.RegisterData(DataSet);
|
||||
Report.GetDataSource("Daten").Enabled = true;
|
||||
|
||||
UserWebReport.Report = Report;
|
||||
UserWebReport.Report.Refresh();
|
||||
Spinnervisible = false;
|
||||
}
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
try
|
||||
|
||||
{
|
||||
|
||||
userid = await sessionStorage.GetItemAsync<string>("UserID");
|
||||
if (userid == null)
|
||||
{
|
||||
var authState = await authenticationStateTask;
|
||||
var userId = authState.User.Claims.FirstOrDefault().Value;
|
||||
var user = authState.User;
|
||||
|
||||
if (user.Identity.IsAuthenticated)
|
||||
|
||||
{
|
||||
await sessionStorage.SetItemAsync("UserID", userId);
|
||||
userid = userId;
|
||||
}
|
||||
else
|
||||
{
|
||||
await sessionStorage.SetItemAsync("UserID", userId);
|
||||
userid = userId;
|
||||
}
|
||||
}
|
||||
UserWebReport = new WebReport();
|
||||
}
|
||||
catch (Exception e)
|
||||
{ emsg = e.Message.ToString(); };
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user