Kalender:
- Scheduler/View/SchedulerAppointmentEditForm.xaml:
Ist die Ganztägig-CheckBox angehakt, sind die Uhrzeitfelder deaktiviert
Wird die Ganztägig-CheckBox auf false gesetzt, wird das Ende automatisch auf denselben Tag des vormals ganztägigen Termin gesetzt
-> 20.10.2020 00:00 bis 21.10.2020 00:00 wird zu 20.10.2020 00:30 - 20.10.2020 01:00
Mobilklient:
- Weiterarbeit an der Unterschriftenfunktion für Mitarbeiter im Mobilklienten
This commit is contained in:
@@ -1741,11 +1741,26 @@ namespace BeWoPlanerMobil.Controllers
|
||||
var allowMoreFLSThanApproved = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateMoreFLSThanApproved);
|
||||
var bookAfterSettlementInvoice = MobileSessionFacade.CheckForUserRight(UserRightType.BookServiceRecordAfterSettlementInvoice);
|
||||
var bookServiceRecordOutOfSupportConcept = MobileSessionFacade.CheckForUserRight(UserRightType.BookServiceRecordOutOfSupportConcept);
|
||||
var allowCreateAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateAfterEmployeeSignature);
|
||||
var allowEditAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowEditAfterEmployeeSignature);
|
||||
var allowDeleteAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowDeleteAfterEmployeeSignature);
|
||||
|
||||
var allowCreateAll = MobileSessionFacade.CheckForUserRight(UserRightType.CreateAll);
|
||||
var allowEditAll = MobileSessionFacade.CheckForUserRight(UserRightType.CreateAll);
|
||||
var allowDeleteAll = MobileSessionFacade.CheckForUserRight(UserRightType.CreateAll);
|
||||
|
||||
// TODO: Prüfen, ob Stunden übertragbar sind. Wenn nicht, prüfen, ob nach Ausreizung des FLS-Zeitraums die Anzahl der FLS pro Zeitraum überschritten werden darf!
|
||||
|
||||
var newResult = new ValidationResult();
|
||||
var exitLoop = false;
|
||||
|
||||
|
||||
if(Model.SelectedSupportConcept != null && Model.SelectedSupportConcept.Goals.Any() && Model.SelectedGoals.Count == 0)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
foreach (var sr2V in validationResults)
|
||||
{
|
||||
if(exitLoop)
|
||||
@@ -1847,6 +1862,39 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
exitLoop = true;
|
||||
newResult.KannTrotzdemGespeichertWerden = false;
|
||||
break;
|
||||
case HasEmployeeSignature:
|
||||
if(checkServiceRecord.ServiceRecordOid.HasValue)
|
||||
{
|
||||
if(!allowEditAll && !allowEditAfterEmployeeSignature)
|
||||
{
|
||||
newResult.Message += "Sie können den Eintrag nicht speichern, da bereits eine Mitarbeiterunterschrift geleistet wurde.<br/><br/>";
|
||||
exitLoop = true;
|
||||
newResult.KannTrotzdemGespeichertWerden = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
newResult.Message += "Es existiert bereits eine Mitarbeiterunterschrift. Möchten Sie trotzdem speichern?<br/><br/>";
|
||||
exitLoop = false;
|
||||
newResult.KannTrotzdemGespeichertWerden = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!allowCreateAll && !allowCreateAfterEmployeeSignature)
|
||||
{
|
||||
newResult.Message += "Sie können den Eintrag nicht speichern, da bereits eine Mitarbeiterunterschrift geleistet wurde.<br/><br/>";
|
||||
exitLoop = true;
|
||||
newResult.KannTrotzdemGespeichertWerden = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
newResult.Message += "Es existiert bereits eine Mitarbeiterunterschrift. Möchten Sie trotzdem speichern?<br/><br/>";
|
||||
exitLoop = false;
|
||||
newResult.KannTrotzdemGespeichertWerden = true;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -1862,6 +1910,74 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return SerializeObject(newResult);
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public string ValidateServiceRecordDeletion(string serviceRecordOidString)
|
||||
{
|
||||
if(Model == null)
|
||||
{
|
||||
Logout();
|
||||
return _LeerzeichenFuerGetMethoden;
|
||||
}
|
||||
|
||||
var isSuccessful = long.TryParse(serviceRecordOidString, out var serviceRecordOid);
|
||||
|
||||
if(!isSuccessful)
|
||||
{
|
||||
return "Error";
|
||||
}
|
||||
|
||||
var newResult = new ValidationResult();
|
||||
|
||||
var serviceRecord = OperationsService.GetServiceRecordById(serviceRecordOid);
|
||||
|
||||
var allowDeleteAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowDeleteAfterEmployeeSignature);
|
||||
|
||||
var allowDeleteAll = MobileSessionFacade.CheckForUserRight(UserRightType.CreateAll);
|
||||
|
||||
var validationResultList = OperationsService.ValidateServiceRecordDeletion(serviceRecord, Model.Employee.EmployeeOid.Value);
|
||||
|
||||
if(validationResultList.Count > 0)
|
||||
{
|
||||
var exitLoop = false;
|
||||
|
||||
foreach(var result in validationResultList)
|
||||
{
|
||||
switch(result.ResultType)
|
||||
{
|
||||
case Custom:
|
||||
newResult.KannTrotzdemGespeichertWerden = true;
|
||||
newResult.Message += "Dieser Eintrag wurde bereits unterschrieben.<br/>Möchten Sie ihn trotzdem löschen?<br/><br/>";
|
||||
break;
|
||||
case HasEmployeeSignature:
|
||||
if(!allowDeleteAll && !allowDeleteAfterEmployeeSignature)
|
||||
{
|
||||
exitLoop = true;
|
||||
newResult.KannTrotzdemGespeichertWerden = false;
|
||||
newResult.Message += "Sie können den Eintrag nicht löschen, da bereits eine Mitarbeiterunterschrift geleistet wurde.<br/><br/>";
|
||||
}
|
||||
else
|
||||
{
|
||||
newResult.KannTrotzdemGespeichertWerden = true;
|
||||
newResult.Message += "Es existiert bereits eine Mitarbeiterunterschrift.<br/>Möchten Sie ihn trotzdem löschen?<br/><br/>";
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
if(exitLoop)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return SerializeObject(newResult);
|
||||
}
|
||||
|
||||
return serviceRecord.GroupOid != null ?
|
||||
"ACHTUNG, wenn Sie fortfahren, löschen Sie die gesamte Gruppenbuchung.<br/>Wenn Sie nur einzelne Klienten aus der Gruppe entfernen möchten, editieren Sie die Gruppe und entfernen den Klienten aus der Liste der Hilfepläne.<br/>Sind Sie sicher, dass Sie den gesamten Gruppeneintrag löschen möchten?<br/><br/>" :
|
||||
_LeerzeichenFuerGetMethoden;
|
||||
}
|
||||
|
||||
public string SetServiceRecordEmployee(long employeeOid)
|
||||
{
|
||||
try
|
||||
|
||||
Reference in New Issue
Block a user