+ Klientenfilter im Kalender-Modul: Rechte verfeinert
+ Auswertungsmodul angefangen. Nur im Debug-Modus sichtbar.

FaC:
+ In die Zeiterfassung übertragene Termine kriegen Icon auch, wenn nur der veraltete Flag "HasSerivceRecordEntry" auf true steht.
This commit is contained in:
2023-03-16 13:57:04 +01:00
parent 9d3daf7df7
commit d82e1ed290
16 changed files with 430 additions and 23 deletions

View File

@@ -0,0 +1,86 @@
using System;
using System.Collections.Generic;
using System.Web.Mvc;
using BeWoPlanerMobil.Models;
using BeWoPlanerMobil.Service;
using BeWoPlanerMobil.Util;
using BS.Shared;
namespace BeWoPlanerMobil.Controllers
{
public class ReportViewerController : AbstractBaseController
{
private ReportViewerModel _Model;
public ReportViewerModel Model
{
get
{
if(!MobileSessionFacade.IsUserLoggedIn())
{
RedirectToActionPermanent("Index", "Login");
return null;
}
if(((ReportViewerModel)Session[ModelSessionConstants.ReportViewerModelKey])?.Employee is null)
{
_Model = new ReportViewerModel { Employee = MobileSessionFacade.LoggedInEmployee };
Session[ModelSessionConstants.ReportViewerModelKey] = _Model;
}
else
{
_Model = (ReportViewerModel)Session[ModelSessionConstants.ReportViewerModelKey];
}
return _Model;
}
}
public ActionResult ReportViewer()
{
var month = DateTime.Today.Month;
var year = DateTime.Today.Year;
var first = new DateTime(year, month, 1).AddMonths(-1);
Model.SelectedYear = Model.SelectedYear ?? first.Year;
Model.SelectedMonth = Model.SelectedMonth ?? first.Month;
Model.AllEmployees = EmployeeService.GetActiveCompactEmployeesForEmployee(MobileSessionFacade.LoggedInCompactEmployee.EmployeeOid);
Model.AllTeams = EmployeeService.GetAllActiveCompactTeamsForEmployee(MobileSessionFacade.LoggedInEmployee.EmployeeOid);
Model.ReportTypes = new List<SelectListItem>
{
new SelectListItem
{
Text = "Berichte",
Value = "0"
},
new SelectListItem
{
Text = "Mitarbeiterstundenkonto",
Value = "1"
}
};
Model.SelectedReportType = ReportType.Berichte;
Model.Queries = QueryService.GetAllQueriesOfType(QueryType.Public);
return View(Model);
}
[Authorize]
public ActionResult DocumentViewerPartial()
{
return PartialView("DocumentWebViewerPartial", Model);
}
[Authorize]
public ActionResult ExportDocumentViewer()
{
throw new NotImplementedException("Service dafür implementieren!");
}
}
}