Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo

This commit is contained in:
2026-05-04 09:06:02 +02:00
54 changed files with 1340 additions and 286 deletions

View File

@@ -147,6 +147,7 @@
<Compile Include="Styles\DataTemplates\DataTemplates.xaml.cs">
<DependentUpon>DataTemplates.xaml</DependentUpon>
</Compile>
<Compile Include="ViewModel\TeamFolderRightVM.cs" />
<Compile Include="ViewModel\AddressVM.cs" />
<Compile Include="ViewModel\AiConfigVM.cs" />
<Compile Include="ViewModel\AiPromptbausteinFolderVM.cs" />
@@ -154,6 +155,7 @@
<Compile Include="ViewModel\AiPromptbausteinRoutineStepVM.cs" />
<Compile Include="ViewModel\AiPromptbausteinRoutineVM.cs" />
<Compile Include="ViewModel\AiUserSettingVM.cs" />
<Compile Include="ViewModel\ListViewModel\TeamFolderRightListVM.cs" />
<Compile Include="ViewModel\ListViewModel\AiPromptbausteinRoutineListVM.cs" />
<Compile Include="ViewModel\ListViewModel\AiPromptbausteinRoutineStepListVM.cs" />
<Compile Include="ViewModel\ListViewModel\AiPromptbausteinPromptListVM.cs" />
@@ -206,6 +208,9 @@
<Compile Include="View\Detail\Report\DatenbereinigungView.xaml.cs">
<DependentUpon>DatenbereinigungView.xaml</DependentUpon>
</Compile>
<Compile Include="View\Document\TeamFolderRightView.xaml.cs">
<DependentUpon>TeamFolderRightView.xaml</DependentUpon>
</Compile>
<Compile Include="View\Document\RtfEditView.xaml.cs">
<DependentUpon>RtfEditView.xaml</DependentUpon>
</Compile>
@@ -342,6 +347,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Document\TeamFolderRightView.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Document\RtfEditView.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>

View File

@@ -660,7 +660,8 @@ namespace BeWo
AppSettings.ShowAI = true;
AppSettings.ShowAIVoice = true;
AppSettings.ShowVorlagen = true;
AppSettings.ShowWorktime = true;
AppSettings.ShowPersehImport = true;
AppSettings.ShowWohnhilfe = true;

View File

@@ -154,7 +154,7 @@ namespace BeWo
AufOffeneTerminePruefen();
//BeWoApp.InitBlubb();
//BeWoApp.InitBlubb();
#if !DEBUG
if (this.button_Scheduler.Visibility == Visibility.Visible && !BeWoApp.AppSettings.IsSchedulerAllowed)
@@ -176,7 +176,7 @@ namespace BeWo
}
if (BeWoApp.LoggedOnUser != null && BeWoApp.LoggedOnUser.HasRight(UserRightType.DocumentsAllowViewAll) && BeWoApp.AppSettings.ShowVorlagen)
if (BeWoApp.LoggedOnUser != null && BeWoApp.LoggedOnUser.HasRight(UserRightType.DocumentsAllowViewAll) && BeWoApp.AppSettings.ShowVorlagen && (BeWoApp.LoggedOnUser.HasRight(UserRightType.VorlagenViewAll) || BeWoApp.LoggedOnUser.HasRight(UserRightType.VorlagenViewOwnTeams))
{
this.button_Dokumente.Visibility = Visibility.Visible;
}
@@ -187,10 +187,10 @@ namespace BeWo
#endif
#if DEBUG
//DebugHelperViewButton.Visibility = Visibility.Visible;
//DebugHelperViewButton.Visibility = Visibility.Visible;
#endif
UpdateMandator();
UpdateMandator();
var controlFactory = new BeWoControlFactory();
var windowFactory = new BeWoWindowFactory();

View File

@@ -222,6 +222,14 @@ namespace BeWo.ServiceProxy
"", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactEmployeeDC> GetActiveCompactEmployeesByOids(System.Collections.Generic.List<long> employeeOids);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/GetTeamRightsForFolder", ReplyAction="http://tempuri.org/IEmployeeService/GetTeamRightsForFolderResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IEmployeeService/GetTeamRightsForFolderBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
System.Collections.Generic.List<BS.Shared.DataContracts.TeamFolderRightDC> GetTeamRightsForFolder(long folderOid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/SaveTeamFolderRights", ReplyAction="http://tempuri.org/IEmployeeService/SaveTeamFolderRightsResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IEmployeeService/SaveTeamFolderRightsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
System.Collections.Generic.List<BS.Shared.DataContracts.TeamFolderRightDC> SaveTeamFolderRights(System.Collections.Generic.List<BS.Shared.DataContracts.TeamFolderRightDC> list);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmployeeService/ArchiveEmployee", ReplyAction="http://tempuri.org/IEmployeeService/ArchiveEmployeeResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IEmployeeService/ArchiveEmployeeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void ArchiveEmployee(long pOid, long pVersion);
@@ -848,6 +856,16 @@ namespace BeWo.ServiceProxy
return base.Channel.GetActiveCompactEmployeesByOids(employeeOids);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.TeamFolderRightDC> GetTeamRightsForFolder(long folderOid)
{
return base.Channel.GetTeamRightsForFolder(folderOid);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.TeamFolderRightDC> SaveTeamFolderRights(System.Collections.Generic.List<BS.Shared.DataContracts.TeamFolderRightDC> list)
{
return base.Channel.SaveTeamFolderRights(list);
}
public void ArchiveEmployee(long pOid, long pVersion)
{
base.Channel.ArchiveEmployee(pOid, pVersion);

View File

@@ -17,6 +17,11 @@ namespace BeWo.ServiceProxy
public interface IOperationsService
{
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/CreateRtfDocumentFromTemplate", ReplyAction="http://tempuri.org/IOperationsService/CreateRtfDocumentFromTemplateResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/CreateRtfDocumentFromTemplateBeWoFaultFault" +
"", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
string CreateRtfDocumentFromTemplate(long vorlageOid, BS.Shared.TableID objectTid, System.Collections.Generic.List<long> objectOids);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/StartAIVoice", ReplyAction="http://tempuri.org/IOperationsService/StartAIVoiceResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/StartAIVoiceBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
BS.Shared.DataContracts.AiVoiceDataDC StartAIVoice();
@@ -37,6 +42,10 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/DeleteInactivePersonsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
string DeleteInactivePersons(System.Collections.Generic.List<BS.Shared.DataContracts.InactivePersonDC> persons, bool anonymisieren);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/InsertNewDienstvertretung2", ReplyAction="http://tempuri.org/IOperationsService/InsertNewDienstvertretung2Response")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertNewDienstvertretung2BeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
bool InsertNewDienstvertretung2(BS.Shared.DataContracts.DienstvertretungDC dienstvertretung, System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC> alleDiensteintraege, System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC> alleDienstvertretungen, int day, System.DateTime pflichtStart, System.DateTime pflichtEnde);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateDienstEintrag", ReplyAction="http://tempuri.org/IOperationsService/UpdateDienstEintragResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateDienstEintragBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void UpdateDienstEintrag(BS.Shared.DataContracts.DienstEintragDC dienstEintrag);
@@ -378,15 +387,84 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AuslastungAnalysisEmployeeDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AuslastungAnalysisSupportConceptDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AuslastungAnalysisSupportConceptDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.TableID))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ValueListEntryType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ActivationTypeId))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.CostRatePeriodType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AbsenceReasonVisibilityType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Sex))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SubstitutionNeed))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ZeiterfassungsDauer))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AccountingIntervalType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AccountingvisibilityType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ScopeTypeId))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceUnit))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordFormate))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordTypeId))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.CostBearer2SupportConceptStatus))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SystemEntryID))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.FileAttachmentType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SupportConceptApprovalInterval))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Bewilligungsart))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.FamilyStatus))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.PersonType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SettingsType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.UserRightType>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UserRightType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ControlType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ContactType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AppointmentDayOfWeek))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordValidationResult))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ParticipationAnswer))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.StatementType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureStateType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Zahlungstyp))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.TokenTyp))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.Behinderungsart>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Behinderungsart))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VgaTypeEnum))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.Merkzeichen>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Merkzeichen))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Pflegegrad))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.MessageType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.HomeViewPanelType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UiElementType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Auszahlungsintervall))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Priority))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Status))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VertretungsStatus))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<long>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, string>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, BS.Shared.ValueListEntryType>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, long>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<string>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.SignatureType, System.Collections.Generic.List<long>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<byte[]>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<System.Collections.Generic.Dictionary<int, long>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, long>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, BS.Shared.DataContracts.DienstInfoDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<System.Nullable<long>, decimal>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<string, string>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<System.DateTime, BS.Shared.DataContracts.Compact.CompactCustomerDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.Compact.CompactCustomerDC, System.Collections.Generic.List<BS.Shared.DataContracts.AccountingTransactionDC>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<string, BS.Shared.DataContracts.Compact.CompactTokenDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.UserRightType, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.Compact.CompactCustomerDC, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.ServiceRecordDC, System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AiVoiceDataDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ResourceDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ResourceDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ValueListEntryDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.InactivePersonDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.InactivePersonDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstEintragDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstvertretungDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstEintragDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ServiceRecordDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ServiceRecordDC))]
@@ -553,12 +631,14 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ReportTemplateDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ReportTypes))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.AbsenceReasonDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceRegionDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceBookingDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceBookingDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceRegionDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceNoticeDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceNoticeDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.SupportConceptStatisticsDC))]
@@ -623,60 +703,6 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ServiceRecordPeriodStatisticsInfoDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ServiceRecordHistoryDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ServiceRecordHistoryDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Core.BeWoFault))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Core.BeWoFaultType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Core.DateTimeSpan))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ValueListEntryType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.TableID))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ActivationTypeId))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.CostRatePeriodType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AbsenceReasonVisibilityType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Sex))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SubstitutionNeed))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ZeiterfassungsDauer))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AccountingIntervalType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AccountingvisibilityType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ScopeTypeId))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceUnit))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordFormate))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordTypeId))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.CostBearer2SupportConceptStatus))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SystemEntryID))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.FileAttachmentType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SupportConceptApprovalInterval))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Bewilligungsart))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.FamilyStatus))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.PersonType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SettingsType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.UserRightType>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UserRightType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ControlType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ContactType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.AppointmentDayOfWeek))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordValidationResult))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ParticipationAnswer))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.StatementType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureStateType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Zahlungstyp))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.TokenTyp))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.Behinderungsart>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Behinderungsart))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VgaTypeEnum))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.Merkzeichen>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Merkzeichen))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Pflegegrad))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.MessageType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.HomeViewPanelType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UiElementType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Auszahlungsintervall))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Priority))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Status))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VertretungsStatus))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Compact.CompactOrganisationDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Compact.CompactCustomerDC))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Compact.CompactEmployeeDC))]
@@ -721,26 +747,9 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Wohnhilfe.Haushaltsstruktur))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Wohnhilfe.HochsterSchulabschluss))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Wohnhilfe.Staatsangehorigkeit))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<long>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, string>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, BS.Shared.ValueListEntryType>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, long>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<string>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.SignatureType, System.Collections.Generic.List<long>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<byte[]>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<System.Collections.Generic.Dictionary<int, long>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, long>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, BS.Shared.DataContracts.DienstInfoDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<System.Nullable<long>, decimal>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<string, string>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<System.DateTime, BS.Shared.DataContracts.Compact.CompactCustomerDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.Compact.CompactCustomerDC, System.Collections.Generic.List<BS.Shared.DataContracts.AccountingTransactionDC>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<string, BS.Shared.DataContracts.Compact.CompactTokenDC>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.UserRightType, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.ServiceRecordDC, System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.Compact.CompactCustomerDC, bool>))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Core.BeWoFault))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Core.BeWoFaultType))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Core.DateTimeSpan))]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Invoicing.BankAccountDC))]
string GetDakotaFileFormat(object param);
@@ -825,10 +834,9 @@ namespace BeWo.ServiceProxy
"loyeeAndCustomerBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
bool HasConfirmationReceiptSignatureByDateAndEmployeeAndCustomer(out System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC> confirmationReceiptSignatures, long customerOid, long employeeOid, System.DateTime start, System.DateTime end, long costBearer2SupportConceptOid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/CreateRtfDocumentFromTemplate", ReplyAction="http://tempuri.org/IOperationsService/CreateRtfDocumentFromTemplateResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/CreateRtfDocumentFromTemplateBeWoFaultFault" +
"", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
string CreateRtfDocumentFromTemplate(long vorlageOid, BS.Shared.TableID objectTid, System.Collections.Generic.List<long> objectOids);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateAbsenceTime", ReplyAction="http://tempuri.org/IOperationsService/UpdateAbsenceTimeResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateAbsenceTimeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void UpdateAbsenceTime(BS.Shared.DataContracts.AbsenceTimeDC abs);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetAllTokens", ReplyAction="http://tempuri.org/IOperationsService/GetAllTokensResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/GetAllTokensBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
@@ -1190,9 +1198,12 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertNewDienstvertretungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void InsertNewDienstvertretung(BS.Shared.DataContracts.DienstvertretungDC dienstvertretung);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/InsertNewDienstvertretung2", ReplyAction="http://tempuri.org/IOperationsService/InsertNewDienstvertretung2Response")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertNewDienstvertretung2BeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
bool InsertNewDienstvertretung2(BS.Shared.DataContracts.DienstvertretungDC dienstvertretung, System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC> alleDiensteintraege, System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC> alleDienstvertretungen, int day, System.DateTime pflichtStart, System.DateTime pflichtEnde);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateAdditionalServiceGroupOfPeopleRelatio" +
"ns", ReplyAction="http://tempuri.org/IOperationsService/UpdateAdditionalServiceGroupOfPeopleRelatio" +
"nsResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateAdditionalServiceGroupOfPeopleRelatio" +
"nsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void UpdateAdditionalServiceGroupOfPeopleRelations(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC> pAdditionalServiceGroupOfPeopleRelations);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeleteAdditionalServiceGroupOfPeopleRelatio" +
"n", ReplyAction="http://tempuri.org/IOperationsService/DeleteAdditionalServiceGroupOfPeopleRelatio" +
@@ -1588,10 +1599,6 @@ namespace BeWo.ServiceProxy
"t", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void UpdateVertretungAndAbsenceTime(BS.Shared.DataContracts.VertretungDC vert, BS.Shared.DataContracts.AbsenceTimeDC abs);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateAbsenceTime", ReplyAction="http://tempuri.org/IOperationsService/UpdateAbsenceTimeResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateAbsenceTimeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void UpdateAbsenceTime(BS.Shared.DataContracts.AbsenceTimeDC abs);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeactivateInvoices", ReplyAction="http://tempuri.org/IOperationsService/DeactivateInvoicesResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/DeactivateInvoicesBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void DeactivateInvoices(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceDC> invoices);
@@ -1743,6 +1750,10 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/GetFolderTreeBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
System.Collections.Generic.List<BS.Shared.DataContracts.BeWoFolderDC> GetFolderTree(BS.Shared.TableID pObjectTid, long pObjectOid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetFileAttachmentsForFolder", ReplyAction="http://tempuri.org/IOperationsService/GetFileAttachmentsForFolderResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/GetFileAttachmentsForFolderBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
System.Collections.Generic.List<BS.Shared.DataContracts.FileAttachmentDC> GetFileAttachmentsForFolder(System.Nullable<long> folderOid, BS.Shared.TableID objectTid, long objectOid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeleteFolder", ReplyAction="http://tempuri.org/IOperationsService/DeleteFolderResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/DeleteFolderBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void DeleteFolder(long pBeWoFolderOid, long pVersion);
@@ -1969,13 +1980,6 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertNewAdditionalServiceGroupOfPeopleRela" +
"tionsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
System.Collections.Generic.List<long> InsertNewAdditionalServiceGroupOfPeopleRelations(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC> pAdditionalServiceGroupOfPeopleRelations);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/UpdateAdditionalServiceGroupOfPeopleRelatio" +
"ns", ReplyAction="http://tempuri.org/IOperationsService/UpdateAdditionalServiceGroupOfPeopleRelatio" +
"nsResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BS.Shared.Core.BeWoFault), Action="http://tempuri.org/IOperationsService/UpdateAdditionalServiceGroupOfPeopleRelatio" +
"nsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BS.Shared.Core")]
void UpdateAdditionalServiceGroupOfPeopleRelations(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC> pAdditionalServiceGroupOfPeopleRelations);
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
@@ -2012,6 +2016,11 @@ namespace BeWo.ServiceProxy
{
}
public string CreateRtfDocumentFromTemplate(long vorlageOid, BS.Shared.TableID objectTid, System.Collections.Generic.List<long> objectOids)
{
return base.Channel.CreateRtfDocumentFromTemplate(vorlageOid, objectTid, objectOids);
}
public BS.Shared.DataContracts.AiVoiceDataDC StartAIVoice()
{
return base.Channel.StartAIVoice();
@@ -2037,6 +2046,11 @@ namespace BeWo.ServiceProxy
return base.Channel.DeleteInactivePersons(persons, anonymisieren);
}
public bool InsertNewDienstvertretung2(BS.Shared.DataContracts.DienstvertretungDC dienstvertretung, System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC> alleDiensteintraege, System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC> alleDienstvertretungen, int day, System.DateTime pflichtStart, System.DateTime pflichtEnde)
{
return base.Channel.InsertNewDienstvertretung2(dienstvertretung, alleDiensteintraege, alleDienstvertretungen, day, pflichtStart, pflichtEnde);
}
public void UpdateDienstEintrag(BS.Shared.DataContracts.DienstEintragDC dienstEintrag)
{
base.Channel.UpdateDienstEintrag(dienstEintrag);
@@ -2457,9 +2471,9 @@ namespace BeWo.ServiceProxy
return base.Channel.HasConfirmationReceiptSignatureByDateAndEmployeeAndCustomer(out confirmationReceiptSignatures, customerOid, employeeOid, start, end, costBearer2SupportConceptOid);
}
public string CreateRtfDocumentFromTemplate(long vorlageOid, BS.Shared.TableID objectTid, System.Collections.Generic.List<long> objectOids)
public void UpdateAbsenceTime(BS.Shared.DataContracts.AbsenceTimeDC abs)
{
return base.Channel.CreateRtfDocumentFromTemplate(vorlageOid, objectTid, objectOids);
base.Channel.UpdateAbsenceTime(abs);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactTokenDC> GetAllTokens(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp zugehoerigkeitsTyp, System.Nullable<long> oid)
@@ -2882,9 +2896,9 @@ namespace BeWo.ServiceProxy
base.Channel.InsertNewDienstvertretung(dienstvertretung);
}
public bool InsertNewDienstvertretung2(BS.Shared.DataContracts.DienstvertretungDC dienstvertretung, System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC> alleDiensteintraege, System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC> alleDienstvertretungen, int day, System.DateTime pflichtStart, System.DateTime pflichtEnde)
public void UpdateAdditionalServiceGroupOfPeopleRelations(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC> pAdditionalServiceGroupOfPeopleRelations)
{
return base.Channel.InsertNewDienstvertretung2(dienstvertretung, alleDiensteintraege, alleDienstvertretungen, day, pflichtStart, pflichtEnde);
base.Channel.UpdateAdditionalServiceGroupOfPeopleRelations(pAdditionalServiceGroupOfPeopleRelations);
}
public void DeleteAdditionalServiceGroupOfPeopleRelation(long pDeleteAdditionalServiceGroupOfPeopleRelationOid, long pVersion)
@@ -3307,11 +3321,6 @@ namespace BeWo.ServiceProxy
base.Channel.UpdateVertretungAndAbsenceTime(vert, abs);
}
public void UpdateAbsenceTime(BS.Shared.DataContracts.AbsenceTimeDC abs)
{
base.Channel.UpdateAbsenceTime(abs);
}
public void DeactivateInvoices(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceDC> invoices)
{
base.Channel.DeactivateInvoices(invoices);
@@ -3487,6 +3496,11 @@ namespace BeWo.ServiceProxy
return base.Channel.GetFolderTree(pObjectTid, pObjectOid);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.FileAttachmentDC> GetFileAttachmentsForFolder(System.Nullable<long> folderOid, BS.Shared.TableID objectTid, long objectOid)
{
return base.Channel.GetFileAttachmentsForFolder(folderOid, objectTid, objectOid);
}
public void DeleteFolder(long pBeWoFolderOid, long pVersion)
{
base.Channel.DeleteFolder(pBeWoFolderOid, pVersion);
@@ -3731,10 +3745,5 @@ namespace BeWo.ServiceProxy
{
return base.Channel.InsertNewAdditionalServiceGroupOfPeopleRelations(pAdditionalServiceGroupOfPeopleRelations);
}
public void UpdateAdditionalServiceGroupOfPeopleRelations(System.Collections.Generic.List<BS.Shared.DataContracts.AdditionalServiceGroupOfPeopleRelationDC> pAdditionalServiceGroupOfPeopleRelations)
{
base.Channel.UpdateAdditionalServiceGroupOfPeopleRelations(pAdditionalServiceGroupOfPeopleRelations);
}
}
}

View File

@@ -34,6 +34,12 @@
<Image Source="..\Ressources\Icons\Delete24.png" />
</MenuItem.Icon>
</MenuItem>
<Separator Tag="Vorlage" />
<MenuItem Header="Neues Dokument aus Vorlage erstellen" Tag="Vorlage">
<MenuItem.Icon>
<Image Source="..\Ressources\Icons\DocumentWithAdd2.png" Width="24" Height="24" />
</MenuItem.Icon>
</MenuItem>
</ContextMenu>
<HierarchicalDataTemplate

View File

@@ -1,29 +1,29 @@
using System;
using BeWo.Core;
using BeWo.ServiceProxy;
using BeWo.View.Document;
using BeWo.ViewModel;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using DevExpress.Xpf.Grid;
using Microsoft.Win32;
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Navigation;
using System.Windows.Threading;
using BeWo.Core;
using BeWo.ViewModel;
using BeWo.ServiceProxy;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using BS.Shared;
using BS.Shared.Core;
using DevExpress.Xpf.Grid;
using Microsoft.Win32;
using System.Windows.Data;
using System.Globalization;
namespace BeWo.View
{
public partial class BeWoFileView
@@ -252,9 +252,15 @@ namespace BeWo.View
DeleteFolder(child);
}
}
else if (twi.Header.Equals("Neues Dokument aus Vorlage erstellen"))
{
var child = this.treeview.SelectedItem as BeWoFolderVM;
CreateNewTemplateForFolder(child);
}
}
}
private void EditSelected()
{
var textBox = BeWoWpfUtils.FindVisualChild<TextBox>(this._SelectedTreeNode);
@@ -562,7 +568,10 @@ namespace BeWo.View
bool enabled = false;
bool darfBearbeiten = BeWoApp.LoggedOnUser.HasRight(UserRightType.DocumentsEditFolders);
bool darfVorlagenSehen = BeWoApp.AppSettings.ShowVorlagen && (_ObjectTid == TableID.Customer);
#if DEBUG
darfVorlagenSehen = true;
#endif
if (folder != null)
{
if (folder.ParentFolder != null)
@@ -582,6 +591,18 @@ namespace BeWo.View
{
menuitem.IsEnabled = false;
}
if ("Vorlage".Equals(menuitem.Tag) && !darfVorlagenSehen)
{
menuitem.Visibility = Visibility.Collapsed;
}
}
else if (item is Separator)
{
var sep = item as Separator;
if ("Vorlage".Equals(sep.Tag) && !darfVorlagenSehen)
{
sep.Visibility = Visibility.Collapsed;
}
}
}
}
@@ -697,6 +718,22 @@ namespace BeWo.View
return null;
}
private void CreateNewTemplateForFolder(BeWoFolderVM child)
{
DokumentViewHelper.OpenTemplateSelectionDialog(_ObjectOid.Value, _ObjectTid, child.DataContract, UpdateSelectedFolder);
}
private void UpdateSelectedFolder()
{
BeWoApp.CurrentBeWo.Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)delegate
{
var child = this.treeview.SelectedItem as BeWoFolderVM;
var files = ServiceFacade.DoOperationsServiceSync(s => s.GetFileAttachmentsForFolder(child.DataContract.BeWoFolderOid, _ObjectTid, _ObjectOid.Value));
child.Files = new BindingList<FileAttachmentVM>(files.Select(f => new FileAttachmentVM(f)).ToList());
});
}
void DocumentWatcher_FileDeleted(long? folderOid, long? objectOid, TableID objectTid, long fileAttachmentOid)
{
if (objectOid == _ObjectOid && objectTid == _ObjectTid)

View File

@@ -31,7 +31,7 @@ namespace BeWo.View.Controls.Utils
private void btn_Click(object sender, RoutedEventArgs e)
{
if (!string.IsNullOrWhiteSpace(Url))
if (!string.IsNullOrWhiteSpace(Url) && Url.StartsWith("http"))
Process.Start(new ProcessStartInfo(Url) { UseShellExecute = true });
}
}

View File

@@ -236,9 +236,15 @@ namespace BeWo.View.Detail
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Customer_EditMedication))
{
ButtonAktuelleMedBearbeiten.Visibility = Visibility.Collapsed;
ButtonAktuelleMedLoeschen.Visibility = Visibility.Collapsed;
ButtonBedarfMedBearbeiten.Visibility = Visibility.Collapsed;
}
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Customer_DeleteMedication))
{
ButtonAktuelleMedLoeschen.Visibility = Visibility.Collapsed;
ButtonBedarfMedLoeschen.Visibility = Visibility.Collapsed;
}
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Customer_CreateMedication))
{
ButtonNeuAusBedarfsverordnung.Visibility = Visibility.Collapsed;
ButtonNeuAusAktuellerVerordnung.Visibility = Visibility.Collapsed;
ButtonNeueMedikamentenverordnung.Visibility = Visibility.Collapsed;

View File

@@ -104,7 +104,7 @@
Header=" " />
<dxg:GridColumn
x:Name="ColumnButtons"
Width="50"
Width="26"
AllowEditing="False"
FieldName="ReportLink"
Header=" ">
@@ -125,7 +125,7 @@
FontSize="13"
Foreground="#FF0000"
ToolTip="{markup:Translate ToolTipEndgueltigLoeschen}" />
<Button
<!--<Button
x:Name="btn_anonymisieren"
Width="22"
Height="22"
@@ -136,7 +136,7 @@
FontSize="14"
Foreground="#FFFFFF"
Click="btn_anonymisieren_Click"
ToolTip="{markup:Translate ToolTipAnonymisieren}" />
ToolTip="{markup:Translate ToolTipAnonymisieren}" />-->
</StackPanel>
</ControlTemplate>
</dxg:GridColumn.DisplayTemplate>
@@ -146,6 +146,7 @@
AllowEditing="False"
FieldName="LastName"
Header="Nachname"
SortOrder="Ascending"
ReadOnly="True" />
<dxg:GridColumn
Width="100"
@@ -159,14 +160,12 @@
FieldName="DateOfBirth"
EditSettings="{dxe:DateSettings DisplayFormat=d}"
Header="Geburtsdatum"
ReadOnly="True"
SortFieldName="AccountingPeriodStart" />
ReadOnly="True"/>
<dxg:GridColumn
AllowEditing="False"
FieldName="Street"
Header="Straße"
ReadOnly="True"
SortOrder="Ascending" />
ReadOnly="True"/>
<dxg:GridColumn
MinWidth="70"
AllowEditing="False"
@@ -178,12 +177,17 @@
FieldName="Town"
Header="Ort"
ReadOnly="True" />
<!--<dxg:GridColumn FieldName="AccountingPeriodString" Header="Abrechnungszeitraum" />-->
<dxg:GridColumn
AllowEditing="False"
FieldName="InsTs"
Header="Angelegt am"
ReadOnly="True" />
<dxg:GridColumn
MinWidth="70"
AllowEditing="False"
FieldName="LastUsedOn"
Header="Zuletzt verwendet am"
EditSettings="{dxe:DateSettings DisplayFormat=d}"
ReadOnly="True">
</dxg:GridColumn>
<dxg:GridColumn
@@ -269,14 +273,14 @@
</Button>
<utils:HelpInfoControl Margin="2,6,2,2" Url="{markup:Translate EndgueltigLoeschenHilfeUrl}" ToolTip="{markup:Translate ToolTipEndgueltigLoeschen}" />
<Button
<!--<Button
Name="button_anonymisierenAll"
Margin="10,3,0,0"
HorizontalAlignment="Left"
Click="button_anonymisierenAll_Click">
Ausgewählte anonymisieren
</Button>
<utils:HelpInfoControl Margin="2,6,2,2" Url="{markup:Translate AnonymisierenHilfeUrl}" ToolTip="{markup:Translate ToolTipAnonymisieren}" />
<utils:HelpInfoControl Margin="2,6,2,2" Url="{markup:Translate AnonymisierenHilfeUrl}" ToolTip="{markup:Translate ToolTipAnonymisieren}" />-->
</StackPanel>
</Grid>

View File

@@ -24,6 +24,7 @@ using BS.Shared.Extensions;
using BS.Shared.Translation;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Grid;
using DevExpress.XtraEditors.Filtering;
using Microsoft.Win32;
using Newtonsoft.Json;
@@ -44,12 +45,22 @@ namespace BeWo.View.Detail.Report
private void CheckRights()
{
if (!BeWoApp.AppSettings.AllowStorno)
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Customer_Full_Delete))
{
ColumnButtons.MinWidth = 67;
}
radioCustomer.IsEnabled = false;
radioEmployee.IsChecked = true;
}
}
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Employee_Full_Delete))
{
radioEmployee.IsEnabled = false;
radioPersonen.IsChecked = true;
}
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Person_Full_Delete))
{
radioPersonen.IsEnabled = false;
}
}
private void RefreshList()
{
@@ -86,14 +97,45 @@ namespace BeWo.View.Detail.Report
RefreshList();
}
private void DeleteSelectedPersons(List<InactivePersonDC> persons, bool nurArchivieren)
{
if (persons.Count > 0)
{
String name = String.Format("{0} Personen", persons.Count);
String typ = nurArchivieren ? "archivieren" : "löschen";
if (persons.Count == 1)
{
name = String.Format("die Person {0}, {1}", persons[0].LastName, persons[0].FirstName);
}
String msg = String.Format(Translator.Translate("Sind Sie sicher, dass Sie {0} {1} möchten?\n\nACHTUNG: Der Vorgang kann nicht rückgängig gemacht werden."), name, typ);
if (MessageBox.Show(msg, "Person " + typ, MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
{
var result = ServiceFacade.DoOperationsServiceSync(s => s.DeleteInactivePersons(persons, nurArchivieren));
if (!String.IsNullOrEmpty(result))
{
if (result.StartsWith("Fehler"))
{
MessageBox.Show(result, "BeWoPlaner", MessageBoxButton.OK, MessageBoxImage.Warning);
}
else
{
MessageBox.Show(result, "BeWoPlaner", MessageBoxButton.OK, MessageBoxImage.Information);
}
}
RefreshList();
}
}
}
private void btn_delete_Click(object sender, RoutedEventArgs e)
{
var vm = this.datagrid_inactiveData.GetCurrentValue<InactivePersonDC>();
if (MessageBox.Show("Sind Sie sicher, dass Sie die gewählte Rechnung löschen möchten?", "Rechnung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
{
}
DeleteSelectedPersons(new List<InactivePersonDC> {vm}, false);
}
@@ -101,11 +143,7 @@ namespace BeWo.View.Detail.Report
{
var vm = this.datagrid_inactiveData.GetCurrentValue<InactivePersonDC>();
if (MessageBox.Show("Sind Sie sicher, dass Sie die gewählte Rechnung löschen möchten?", "Rechnung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
{
}
DeleteSelectedPersons(new List<InactivePersonDC> { vm }, true);
}
private void gridView_Loaded(object sender, RoutedEventArgs e)
@@ -137,12 +175,12 @@ namespace BeWo.View.Detail.Report
private void button_deleteAll_Click(object sender, RoutedEventArgs e)
{
DeleteSelectedPersons(GetSelectedVMs(), false);
}
private void button_anonymisierenAll_Click(object sender, RoutedEventArgs e)
{
DeleteSelectedPersons(GetSelectedVMs(), true);
}
private IList<InactivePersonDC> GetVisibleVMs()
@@ -169,5 +207,24 @@ namespace BeWo.View.Detail.Report
return list;
}
}
private List<InactivePersonDC> GetSelectedVMs()
{
var list = new List<InactivePersonDC>();
var items = datagrid_inactiveData.ItemsSource as IList<InactivePersonDC>;
if (items != null)
{
foreach (var item in items)
{
if (item.IsChecked)
{
list.Add(item);
}
}
}
return list;
}
}
}

View File

@@ -80,7 +80,7 @@
</Grid.RowDefinitions>
<GroupBox
x:Name="groupbox_buchungsplan"
Header="{markup:Translate Buchungsplan}"
Header="{markup:Translate Belegungsplan}"
Style="{StaticResource ObjectEditGroupBox}"
Visibility="Visible">
<Grid Margin="3">

View File

@@ -22,7 +22,7 @@
</Grid.RowDefinitions>
<GroupBox
x:Name="groupbox_Wohneinheit_Buchung"
Header="{markup:Translate Buchungen}"
Header="{markup:Translate Wohnungsbelegung}"
Style="{StaticResource ObjectEditGroupBox}"
Visibility="Visible">
<Grid Margin="3" DataContext="{Binding WohneinheitBelegungListVM}">

View File

@@ -770,10 +770,10 @@
<TabItem Header="{t:Translate VerwaltungV2}" Visibility="{Binding Path=PermissionWohneinheitView, Converter={StaticResource BoolVisibilityConverter}}">
<localWohneinheit:WohneinheitVerwaltungViewV2 />
</TabItem>
<TabItem Header="{t:Translate Buchungen}" Visibility="{Binding Path=PermissionWohneinheitBelegungView, Converter={StaticResource BoolVisibilityConverter}}">
<TabItem Header="{t:Translate Wohnungsbelegung}" Visibility="{Binding Path=PermissionWohneinheitBelegungView, Converter={StaticResource BoolVisibilityConverter}}">
<localWohneinheit:WohneinheitBelegungTableView />
</TabItem>
<TabItem Header="{t:Translate Buchungsplan}" Visibility="{Binding Path=PermissionWohneinheitBelegungView, Converter={StaticResource BoolVisibilityConverter}}">
<TabItem Header="{t:Translate Belegungsplan}" Visibility="{Binding Path=PermissionWohneinheitBelegungView, Converter={StaticResource BoolVisibilityConverter}}">
<localWohneinheit:WohneinheitBelegungSchedulerView />
</TabItem>
</TabControl>

View File

@@ -5,6 +5,7 @@ using BeWo.ViewModel;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using BS.Shared.Translation;
using DevExpress.Utils;
using DevExpress.Xpf.Grid;
@@ -15,14 +16,23 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Threading;
namespace BeWo.View.Document
{
public class DokumentViewHelper
{
public static void OpenTemplateSelectionDialog(long objectOid, TableID tableId, BeWoFolderDC defaultFolderToSave, Action folderSelectedAction)
{
var alleVorlagen = ServiceFacade.DoOperationsServiceSync(s => s.GetDokumentvorlagenForType(tableId));
if (alleVorlagen.Count > 0)
{
DokumentViewHelper.OpenTemplateSelectionDialog(alleVorlagen, tableId, objectOid, null, defaultFolderToSave, folderSelectedAction);
}
}
public static void OpenTemplateSelectionDialog(List<DokumentvorlageDC> alleVorlagen, TableID objectTid, long objectOid, String originalReportUri)
public static void OpenTemplateSelectionDialog(List<DokumentvorlageDC> alleVorlagen, TableID objectTid, long objectOid, String originalReportUri, BeWoFolderDC defaultFolderToSave, Action folderSelectedAction)
{
var alleVorlagenTabellen = ServiceFacade.DoOperationsServiceSync(s => s.GetVorlagentabelleDCs());
@@ -34,7 +44,7 @@ namespace BeWo.View.Document
var defaultBerichte = ServiceFacade.DoOperationsServiceSync(x => x.GetReportTemplates(String.Format("TemplateSelection?Tid={0}&Oid={1}", objectTid, objectOid)));
var templateFolderList = VMFactory.CreateFolderList(TableID.Vorlagentabelle, tabelle.VorlagentabelleOid.Value);
view.InitView(tabelle, alleVorlagen, templateFolderList, null, true, false, "", defaultBerichte);
view.InitView(tabelle, alleVorlagen, templateFolderList, null, true, false, "", defaultBerichte, null);
//view.InitView(tabelle, alleVorlagen, templateFolderList, null, true, false, "");
var beWoWindow = BeWoWindowBuilder.GetBeWoWindow(Translator.Translate("Vorlage auswählen"), view, 500, 600);
@@ -48,7 +58,7 @@ namespace BeWo.View.Document
}
else
{
PrintTemplate(view.SelectedTemplate, objectTid, objectOid);
PrintTemplate(view.SelectedTemplate, objectTid, objectOid, defaultFolderToSave, folderSelectedAction);
}
beWoWindow.Close();
@@ -58,7 +68,7 @@ namespace BeWo.View.Document
}
}
public static BeWoFolderDC OpenAndSelectBeWoFolderSelectionDialog(TableID objectTid, long objectOid, String fileName)
public static BeWoFolderDC OpenAndSelectBeWoFolderSelectionDialog(TableID objectTid, long objectOid, String fileName, BeWoFolderDC defaultFolder)
{
BeWoFolderDC selectedFolder = null;
@@ -70,7 +80,7 @@ namespace BeWo.View.Document
//var tabelle = alleVorlagenTabellen.FirstOrDefault(v => v.VorlagentabelleObjectTid.HasValue && v.VorlagentabelleObjectTid.Value == (int)objectTid);
//if (tabelle != null)
//{
view.InitView(null, null, null, customerFolderList, false, true, fileName, null);
view.InitView(null, null, null, customerFolderList, false, true, fileName, null, defaultFolder);
var beWoWindow = BeWoWindowBuilder.GetBeWoWindow(Translator.Translate("Ordner auswählen"), view, 500, 500);
view.ButtonCancelClicked += () => beWoWindow.Close();
@@ -455,7 +465,7 @@ namespace BeWo.View.Document
//}
private static void PrintTemplate(DokumentvorlageDC vorlage, TableID objectTid, long objectOid)
private static void PrintTemplate(DokumentvorlageDC vorlage, TableID objectTid, long objectOid, BeWoFolderDC defaultFolder, Action folderSelectedAction)
{
@@ -472,14 +482,16 @@ namespace BeWo.View.Document
control.ButtonSavedClicked += () =>
{
var selectedFolder = OpenAndSelectBeWoFolderSelectionDialog(objectTid, objectOid, vorlage.Name);
var selectedFolder = OpenAndSelectBeWoFolderSelectionDialog(objectTid, objectOid, vorlage.Name, defaultFolder);
if (selectedFolder != null)
{
var newRtfText = control.RtfText;
var filename = selectedFolder.Name;
window.Close();
SaveRtfInBeWoFolder(selectedFolder, newRtfText, filename, objectTid, objectOid);
SaveRtfInBeWoFolder(defaultFolder, newRtfText, filename, objectTid, objectOid, folderSelectedAction);
}
};
@@ -501,7 +513,7 @@ namespace BeWo.View.Document
}
private static void SaveRtfInBeWoFolder(BeWoFolderDC selectedFolder, string rtfText, string filename, TableID objectTid, long objectOid)
private static void SaveRtfInBeWoFolder(BeWoFolderDC selectedFolder, string rtfText, string filename, TableID objectTid, long objectOid, Action uploadFinished)
{
try
@@ -517,11 +529,19 @@ namespace BeWo.View.Document
{
upload.Dispose();
ms.Dispose();
if (uploadFinished != null)
{
uploadFinished();
}
},
() =>
{
upload.Dispose();
ms.Dispose();
if (uploadFinished != null)
{
uploadFinished();
}
});
}
catch (Exception ex)

View File

@@ -1,46 +1,47 @@
using BeWo.Core;
using BeWo.ServiceProxy;
using BeWo.View.Detail;
using BeWo.View.Navigation.Filter;
using BeWo.View.Windows;
using BeWo.ViewModel;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using BS.Shared.Translation;
using DevExpress.Mvvm.UI.Native;
using DevExpress.Utils;
using DevExpress.Xpf.Accordion;
using DevExpress.Xpf.Grid;
using DevExpress.Xpf.Grid.TreeList;
using DevExpress.XtraEditors;
using DevExpress.XtraPrinting.Native;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms;
using System.Windows.Input;
using DevExpress.Xpf.Accordion;
using DevExpress.Mvvm.UI.Native;
using BeWo.ViewModel;
using DevExpress.XtraEditors;
using DevExpress.Xpf.Grid.TreeList;
using DevExpress.Xpf.Grid;
using DevExpress.XtraPrinting.Native;
using DevExpress.Utils;
using System.Runtime.CompilerServices;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Data;
using BeWo.ServiceProxy;
using BeWo.Core;
using System.Windows.Forms;
using MessageBox = System.Windows.MessageBox;
using BS.Shared.Extensions;
using BS.Shared.Core;
using System.IO;
using System.Windows.Threading;
using System.Windows.Documents;
using System.Windows.Navigation;
using System.Windows.Threading;
using ContextMenu = System.Windows.Controls.ContextMenu;
using MenuItem = System.Windows.Controls.MenuItem;
using GroupBox = System.Windows.Controls.GroupBox;
using System.Windows.Controls.Primitives;
using MenuItem = System.Windows.Controls.MenuItem;
using MessageBox = System.Windows.MessageBox;
using TextBox = System.Windows.Controls.TextBox;
using BeWo.View.Detail;
using System.Text;
using BS.Shared.Translation;
using System.Windows.Data;
using System.Globalization;
using System.ComponentModel;
namespace BeWo.View.Document
{
@@ -1313,7 +1314,7 @@ namespace BeWo.View.Document
//List<BeWoFolderDC> folderDCs = new List<BeWoFolderDC>();
if (node.Nodes.Count == 0 && vm.DocTreeItemOid.HasValue)
{
var folderDCs = VMFactory.CreateFolderList(TableID.Vorlagentabelle, (long)vm.DocTreeItemOid);
var folderDCs = VMFactory.CreateFolderList(TableID.Vorlagentabelle, (long)vm.DocTreeItemOid * -1);
DokumentViewHelper.AddFolderToTreeView(template_treeview_control, folderDCs, false);
//GenerateFolderStructureForSelectedNode(node, folderDCs, true);
}
@@ -1449,7 +1450,7 @@ namespace BeWo.View.Document
}
else if (twi.Header.Equals("Berechtigungen"))
{
this.OpenSelectRightsDialog();
this.OpenSelectRightsDialog(row);
}
else if (twi.Header.Equals("Löschen"))
{
@@ -1572,9 +1573,18 @@ namespace BeWo.View.Document
}
private void OpenSelectRightsDialog()
private void OpenSelectRightsDialog(DocumentTreeItemVM item)
{
var teams = VMFactory.CreateTeamList();
var rights = ServiceFacade.DoEmployeeServiceSync(s => s.GetTeamRightsForFolder(item.DataContract.BeWoFolderDC.BeWoFolderOid.Value));
var ctrl = new TeamFolderRightView(new ViewModel.ListViewModel.TeamFolderRightListVM(rights, teams, item.DataContract.BeWoFolderDC));
var beWoWindow = BeWoWindowBuilder.GetBeWoWindow(Translator.Translate("Berechtigungen"), ctrl, 500, 800);
ctrl.CloseButtonClicked += () => beWoWindow.Close();
beWoWindow.ShowDialog();
}

View File

@@ -25,6 +25,9 @@ using System.Linq;
using DevExpress.Xpf.Grid;
using System.Windows.Media.Imaging;
using DevExpress.Utils;
using DevExpress.Mvvm.Native;
using DevExpress.Xpf.Controls.ThemeKeys;
using DevExpress.Web;
namespace BeWo.View.Document
{
@@ -48,7 +51,7 @@ namespace BeWo.View.Document
public DocumentTreeItemDC SelectedReportTemplate { get; set; }
public void InitView(VorlagentabelleDC vt, List<DokumentvorlageDC> alleVorlagen, List<BeWoFolderDC> allTemplateFolder, List<BeWoFolderDC> allObjectFolder, bool showTemplateTree, bool showDocumentTree, String defaultFileName, IList<ReportTemplateDC> defaultReports)
public void InitView(VorlagentabelleDC vt, List<DokumentvorlageDC> alleVorlagen, List<BeWoFolderDC> allTemplateFolder, List<BeWoFolderDC> allObjectFolder, bool showTemplateTree, bool showDocumentTree, String defaultFileName, IList<ReportTemplateDC> defaultReports, BeWoFolderDC selectedDefaultFolder)
{
//tableId = tid;
@@ -77,6 +80,7 @@ namespace BeWo.View.Document
if (showDocumentTree)
{
DokumentViewHelper.CreateTemplateTreeViewItems(treelistcontrol_folderStructureForSelection, null, allObjectFolder, true);
SelectFolder(selectedDefaultFolder, treelistcontrol_folderStructureForSelection.View.Nodes);
}
else
{
@@ -106,6 +110,32 @@ namespace BeWo.View.Document
// ButtonCreateClicked?.Invoke();
//}
public void SelectFolder(BeWoFolderDC folder, TreeListNodeCollection nodes)
{
if (folder != null)
{
foreach (var item in nodes)
{
var vm = item.Content as DocumentTreeItemVM;
var f = vm?.DataContract?.BeWoFolderDC;
if (f != null && f.Name == folder.Name && (f.BeWoFolderOid == folder.BeWoFolderOid))
{
var node = treelistcontrol_folderStructureForSelection.View.GetNodeByRowHandle(item.RowHandle);
treelistcontrol_folderStructureForSelection.SelectedItem = vm;
treelistcontrol_folderStructureForSelection.View.FocusedRowHandle = item.RowHandle;
//treelistcontrol_folderStructureForSelection.SelectItem(item);
//treelistcontrol_folderStructureForSelection.Focus();
}
else
{
SelectFolder(folder, item.Nodes);
}
}
}
}
private void Button_CreateTemplateForSelection_Click(object sender, RoutedEventArgs e)
{

View File

@@ -0,0 +1,39 @@
<view:BeWoView x:Class="BeWo.View.Document.TeamFolderRightView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:view="clr-namespace:BeWo.View"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:validation="clr-namespace:BeWo.Validation"
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
mc:Ignorable="d" VerticalAlignment="Stretch" Focusable="True">
<view:BeWoView.Resources>
</view:BeWoView.Resources>
<Grid x:Name="root" Margin="0" Background="{DynamicResource ObjectEditBackgroundBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<dxg:GridControl x:Name="GridControlRights" Margin="3" Grid.Column="0" Grid.Row="0" DataSource="{Binding VMList}">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="Team.Name" Header="Team" Width="300" AllowSorting="True" DefaultSortOrder="Ascending" SortOrder="Ascending" AllowEditing="False" />
<dxg:GridColumn FieldName="AllowEdit" Header="Bearbeiten" Width="120" />
<dxg:GridColumn FieldName="AllowView" Header="{t:Translate Als Vorlage verwenden}" Width="150" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView AutoWidth="True" ShowGroupPanel="False" ShowGroupedColumns="false" ShowTotalSummary="False" NavigationStyle="Cell" />
</dxg:GridControl.View>
</dxg:GridControl>
<StackPanel Grid.ColumnSpan="3" Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center" Height="Auto" Margin="5,10,10,10" HorizontalAlignment="Right">
<Button x:Name="btnSave" Content=" Speichern " Margin="0,0,3,0" Height="25" Click="btnSave_Click" />
<Button x:Name="btnClose" Content=" Abbrechen " Margin="0,0,3,0" Height="25" Click="btnClose_Click"/>
</StackPanel>
</Grid>
</view:BeWoView>

View File

@@ -0,0 +1,110 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Forms;
using System.Windows.Input;
using BeWo.Annotations;
using BeWo.Core;
using BeWo.ServiceProxy;
using BeWo.Validation;
using BeWo.ViewModel;
using BeWo.ViewModel.ListViewModel;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using BS.Shared.Translation;
using DevExpress.Utils;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Grid;
using MessageBox = System.Windows.MessageBox;
namespace BeWo.View.Document
{
public partial class TeamFolderRightView : INotifyPropertyChanged
{
private TeamFolderRightListVM _ViewModel;
public event PropertyChangedEventHandler PropertyChanged;
public event Action CloseButtonClicked;
public TeamFolderRightView(TeamFolderRightListVM pViewModel)
{
InitializeComponent();
CreateRightList(pViewModel);
ViewModel = pViewModel;
ReloadViewModel();
}
private void CreateRightList(TeamFolderRightListVM vm)
{
foreach (var team in vm.PossibleTeams)
{
var tfr = vm.VMList.FirstOrDefault(v => v.TeamOid == team.TeamOid);
if (tfr == null)
{
tfr = new TeamFolderRightVM(new TeamFolderRightDC { BeWoFolderOid = vm.Folder.BeWoFolderOid.Value });
vm.VMList.Add(tfr);
}
tfr.Team = team;
}
}
private TeamFolderRightListVM ViewModel
{
get { return _ViewModel; }
set
{
_ViewModel = value;
root.DataContext = value;
}
}
private void ReloadViewModel()
{
}
private void ClearControls()
{
GridControlRights.ItemsSource = null;
}
private void btnSave_Click(object sender, RoutedEventArgs e)
{
var dcList = ViewModel.VMList.Select(v => v.CommitToDataContract()).ToList();
ServiceFacade.DoEmployeeServiceAsync(s => s.SaveTeamFolderRights(dcList));
CloseButtonClicked?.Invoke();
//var result = ServiceFacade.DoCustomerServiceSync(s => s.ImportSupportConcept(ViewModel));
//if (!String.IsNullOrEmpty(result.ImportMessage))
//{
// MessageBox.Show(result.ImportMessage, "Import", MessageBoxButton.OK, MessageBoxImage.Information);
//}
}
private void btnClose_Click(object sender, RoutedEventArgs e)
{
CloseButtonClicked?.Invoke();
}
}
}

View File

@@ -281,28 +281,35 @@ namespace BeWo.View.Master
tabitem_flexibleReport.Visibility = Visibility.Collapsed;
}
//Datenbereinigung
if (BeWoApp.LoggedOnUser.HasRight(UserRightType.Customer_Full_Delete) || BeWoApp.LoggedOnUser.HasRight(UserRightType.Employee_Full_Delete) || BeWoApp.LoggedOnUser.HasRight(UserRightType.Person_Full_Delete))
{
tabitem_Datenbereinigung.Visibility = Visibility.Visible;
}
else
{
tabitem_Datenbereinigung.Visibility = Visibility.Collapsed;
}
//tabitem_serviceOverview.Visibility = Visibility.Collapsed;
//if (BeWoApp.Mandator.BeWoClientType == 6 || BeWoApp.Mandator.BeWoClientType == 7 || BeWoApp.Mandator.BeWoClientType == 10 || BeWoApp.AppSettings.ShowAnnualReport)
// {
// //Nur Jahresbericht + IBP + Integra
// tabitem_annualReport.Visibility = Visibility.Visible;
// }
//tabitem_serviceOverview.Visibility = Visibility.Collapsed;
//if (BeWoApp.Mandator.BeWoClientType == 6 || BeWoApp.Mandator.BeWoClientType == 7 || BeWoApp.Mandator.BeWoClientType == 10 || BeWoApp.AppSettings.ShowAnnualReport)
// {
// //Nur Jahresbericht + IBP + Integra
// tabitem_annualReport.Visibility = Visibility.Visible;
// }
// if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Analysis_Settlement_View))
// tabitem_settlement.Visibility = Visibility.Collapsed;
// if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Analysis_Settlement_View))
// tabitem_settlement.Visibility = Visibility.Collapsed;
#if DEBUG
//tabitem_flexibleReport.Visibility = Visibility.Visible;
//tabitem_serviceOverview.Visibility = Visibility.Visible;
//tabitem_abwesenheitsTabelle.Visibility = Visibility.Visible;
//tabitem_dienstPlaner.Visibility = Visibility.Visible;
//tabitem_flexibleReport.Visibility = Visibility.Visible;
//tabitem_serviceOverview.Visibility = Visibility.Visible;
//tabitem_abwesenheitsTabelle.Visibility = Visibility.Visible;
//tabitem_dienstPlaner.Visibility = Visibility.Visible;
#endif
ignoreSelectTabEvents = false;
ignoreSelectTabEvents = false;
}
private void InitRightsAlt()

View File

@@ -174,7 +174,7 @@ namespace BeWo.View.Navigation
betreuungsartFilterComboBox = new ComboBoxEdit();
betreuungsartFilterComboBox.FontSize = 12;
betreuungsartFilterComboBox.Margin = new Thickness(10, 0, 0, 0);
betreuungsartFilterComboBox.Width = 150;
betreuungsartFilterComboBox.Width = 180;
betreuungsartFilterComboBox.IsTextEditable = false;
betreuungsartFilterComboBox.NullText = Translator.Translate("Nach Betreuungsart filtern");
betreuungsartFilterComboBox.ItemsSource = ServiceFacade.DoValueListServiceSync(s => s.GetAllValueListEntrysByType(ValueListEntryType.CustomerCareType));
@@ -466,7 +466,7 @@ namespace BeWo.View.Navigation
{
var c = (CompactCustomerDC)((Hyperlink)sender).Tag;
DokumentViewHelper.OpenTemplateSelectionDialog(alleVorlagen, TableID.Customer, c.CustomerOid, ((Hyperlink)sender).NavigateUri.ToString());
DokumentViewHelper.OpenTemplateSelectionDialog(alleVorlagen, TableID.Customer, c.CustomerOid, ((Hyperlink)sender).NavigateUri.ToString(), null, null);
}
else
{

View File

@@ -92,7 +92,7 @@ namespace BeWo.View.Navigation
functionFilterComboBox = new ComboBoxEdit();
functionFilterComboBox.FontSize = 12;
functionFilterComboBox.Margin = new Thickness(10, 0, 0, 0);
functionFilterComboBox.Width = 150;
functionFilterComboBox.Width = 180;
functionFilterComboBox.IsTextEditable = false;
functionFilterComboBox.NullText = Translator.Translate("Nach Funktion filtern");
functionFilterComboBox.ItemsSource = ServiceFacade.DoValueListServiceSync(s => s.GetAllValueListEntrysByType(ValueListEntryType.FunctionType));

View File

@@ -0,0 +1,38 @@
using System.Collections.Generic;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
namespace BeWo.ViewModel.ListViewModel
{
public class TeamFolderRightListVM : AbstractDCListMapperVM<TeamFolderRightDC, TeamFolderRightVM>
{
private List<CompactTeamDC> _PossibleTeams;
private BeWoFolderDC _Folder;
public TeamFolderRightListVM(IEnumerable<TeamFolderRightDC> pTeamFolderRights, List<CompactTeamDC> pPossibleTeams, BeWoFolderDC folder) : base(pTeamFolderRights)
{
_PossibleTeams = pPossibleTeams;
_Folder = folder;
}
public BeWoFolderDC Folder
{
get => _Folder;
}
public List<CompactTeamDC> PossibleTeams
{
get => _PossibleTeams;
set
{
if (AreDifferent(_PossibleTeams, value))
{
_PossibleTeams = value;
FirePropertyChanged(nameof(PossibleTeams));
}
}
}
}
}

View File

@@ -0,0 +1,113 @@
using System;
using System.ComponentModel;
using System.Windows;
using BeWo.Validation;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using BS.Shared.Extensions;
namespace BeWo.ViewModel
{
public class TeamFolderRightVM : AbstractDCMapperVM<TeamFolderRightDC>
{
private DateTime? _End;
private string _Notice;
private CompactTeamDC _Team;
private long? _TeamOid;
private long? _BeWoFolderOid;
private bool _AllowEdit;
private bool _AllowView;
public TeamFolderRightVM(TeamFolderRightDC pDC) : base(pDC, pDC.Oid == null) {}
public CompactTeamDC Team
{
get => _Team;
set
{
_Team = value;
if (_Team != null)
{
TeamOid = _Team.TeamOid;
}
FirePropertyChanged(nameof(Team));
}
}
public long? TeamOid
{
get => _TeamOid;
set
{
_TeamOid = value;
FirePropertyChanged(nameof(TeamOid));
}
}
public long? BeWoFolderOid
{
get => _BeWoFolderOid;
set
{
_BeWoFolderOid = value;
FirePropertyChanged(nameof(BeWoFolderOid));
}
}
public bool AllowEdit
{
get => _AllowEdit;
set
{
if (AreDifferent(_AllowEdit, value))
{
_AllowEdit = value;
FirePropertyChanged(nameof(AllowEdit));
}
}
}
public bool AllowView
{
get => _AllowView;
set
{
if (AreDifferent(_AllowView, value))
{
_AllowView = value;
FirePropertyChanged(nameof(AllowView));
}
}
}
protected override void InitByDataContract(TeamFolderRightDC pDataContract)
{
_BeWoFolderOid = pDataContract.BeWoFolderOid;
_TeamOid = pDataContract.TeamOid;
_AllowEdit = pDataContract.AllowEdit;
_AllowView = pDataContract.AllowView;
}
protected override TeamFolderRightDC MapToDataContract(TeamFolderRightDC pDataContract, bool doCommit)
{
pDataContract.TeamOid = _TeamOid.Value;
pDataContract.BeWoFolderOid = _BeWoFolderOid.Value;
pDataContract.AllowEdit = _AllowEdit;
pDataContract.AllowView = _AllowView;
return pDataContract;
}
}
}

View File

@@ -101,6 +101,7 @@ namespace BeWo.ViewModel
{(r) => r == UserRightType.SupportConcept_ImportData, BeWoApp.AppSettings.ShowPersehImport},
//{(r) => r == UserRightType.AiChatInZeiterfassung, BeWoApp.AppSettings.ShowAI},
{IsAiModuleRight, BeWoApp.AppSettings.ShowAI},
{IsVorlagenModulRight, BeWoApp.AppSettings.ShowVorlagen},
//{IsAiModuleSettingRight, BeWoApp.AppSettings.ModuleAiSettingsEnabled},
{(r) => r == UserRightType.AiVoiceView, BeWoApp.AppSettings.ShowAIVoice},
};
@@ -185,7 +186,10 @@ namespace BeWo.ViewModel
}
private static bool IsMedicationRight(UserRightType userRightType)
{
if (userRightType == UserRightType.Customer_ViewMedication || userRightType == UserRightType.Customer_EditMedication)
if (userRightType == UserRightType.Customer_ViewMedication
|| userRightType == UserRightType.Customer_EditMedication
|| userRightType == UserRightType.Customer_DeleteMedication
|| userRightType == UserRightType.Customer_CreateMedication)
return true;
return false;
}
@@ -290,10 +294,16 @@ namespace BeWo.ViewModel
private static bool IsAiModuleRight(UserRightType right) =>
ContainsRight(right, UserRightType.AiModuleServiceRecordChat, UserRightType.AiModuleServiceRecordDocu, UserRightType.AiModulePromptbausteineEdit,
UserRightType.AiModulePromptbausteineView, UserRightType.AiModulePromptbausteinShare);
//private static bool IsAiModuleSettingRight(UserRightType right) =>
// ContainsRight(right);
private static bool ContainsRight(UserRightType right, params UserRightType[] rightTypes)
private static bool IsVorlagenModulRight(UserRightType right) =>
ContainsRight(right, UserRightType.VorlagenEditAll, UserRightType.VorlagenEditOwnTeams, UserRightType.VorlagenViewAll,
UserRightType.VorlagenViewOwnTeams);
//private static bool IsAiModuleSettingRight(UserRightType right) =>
// ContainsRight(right);
private static bool ContainsRight(UserRightType right, params UserRightType[] rightTypes)
{
return rightTypes.Length != 0 && rightTypes.Any(x => x == right);
}

View File

@@ -130,7 +130,12 @@ namespace BeWo.Data.Access
return this.CreateCriteria<T>().List<T>();
}
public virtual IList<T> GetAllActive<T>() where T : BeWoEntityBase
public virtual IList<T> GetAllWithoutPermanentlyDeleted<T>() where T : BeWoEntityBase
{
return this.CreateCriteria<T>().Add(Restrictions.Or(Restrictions.IsNull(BeWoEntityBase.PropertyName_SystemEntryID), Restrictions.Not(Restrictions.Eq(BeWoEntityBase.PropertyName_SystemEntryID, SystemEntryID.DeletedPermanently)))).List<T>();
}
public virtual IList<T> GetAllActive<T>() where T : BeWoEntityBase
{
return this.GetAllWithActivationType<T>(ActivationTypeId.Active);
}

View File

@@ -685,7 +685,24 @@ namespace BeWo.Data.Access
.List<FileAttachmentInfo>();
}
public IList<BeWoFolder> FindBeWoFolders(TableID pObjTid, long pObjOid)
public IEnumerable<FileAttachmentInfo> FindFileAttachmentsForFolder(long? folderOid, TableID objTid, long objOid)
{
var c = CreateCriteriaIsActive<FileAttachmentInfo>()
.Add(Restrictions.Eq(FileAttachmentInfo.PropertyName_ObjectOid, objOid))
.Add(Restrictions.Eq(FileAttachmentInfo.PropertyName_ObjectTid, objTid));
if (folderOid.HasValue)
{
c.Add(Restrictions.Eq(FileAttachmentInfo.PropertyName_BeWoFolderOid, folderOid.Value));
}
else
{
c.Add(Restrictions.IsNull(FileAttachmentInfo.PropertyName_BeWoFolderOid));
}
return c.List<FileAttachmentInfo>();
}
public IList<BeWoFolder> FindBeWoFolders(TableID pObjTid, long pObjOid)
{
var c = CreateCriteriaIsActive<BeWoFolder>()
.Add(Restrictions.Eq(BeWoFolder.PropertyName_ObjectTid, pObjTid));
@@ -6713,6 +6730,13 @@ WHERE sc.Billable = 1 and sr.StartDate >= '{0:yyyy-MM-dd}' and sr.StartDate < '{
return criteria.List<Employee>().ToList();
}
public List<TeamFolderRight> GetTeamRightsForFolder(long folderOid)
{
var criteria = CreateCriteriaIsActive<TeamFolderRight>().Add(Restrictions.Eq(nameof(TeamFolderRight.BeWoFolderOid), folderOid));
return criteria.List<TeamFolderRight>().ToList();
}
}
}

View File

@@ -150,7 +150,7 @@ https://support.bewoplaner.de/api/bsadmin.php?k=[KUNDENNUMMER]&EmployeeOID=[EMPL
if (isValid && this.ValidBSIp(ip))
{
var list = DAOFactory.GenericDAO.GetAllActive<ApplicationUser>();
var list = DAOFactory.GenericDAO.GetAllActive<ApplicationUser>().Where(u => u.Employee.IsActive == ActivationTypeId.Active).ToList();
foreach (var iUser in list)
{

View File

@@ -237,6 +237,7 @@
<Compile Include="Entities\AiPromptbausteinRoutine.cs" />
<Compile Include="Entities\AiPromptbausteinRoutineStep.cs" />
<Compile Include="Entities\AiUserSetting.cs" />
<Compile Include="Entities\TeamFolderRight.cs" />
<Compile Include="Entities\AiVoiceData.cs" />
<Compile Include="Entities\OvertimeHistory.cs" />
<Compile Include="Entities\AiConversation.cs" />
@@ -874,6 +875,7 @@
</EmbeddedResource>
<EmbeddedResource Include="Mappings\AiVoiceData.hbm.xml" />
<EmbeddedResource Include="Mappings\AiUserSetting.hbm.xml" />
<EmbeddedResource Include="Mappings\TeamFolderRight.hbm.xml" />
<Content Include="Mappings\Timesheet2Mail.hbm.xml" />
<EmbeddedResource Include="Mappings\ContactHistory.hbm.xml">
<SubType>Designer</SubType>

View File

@@ -0,0 +1,18 @@
using BS.Shared;
using System;
namespace BeWo.Data.Entities
{
public class TeamFolderRight : BeWoEntityBase
{
public TeamFolderRight()
{
this._Tid = TableID.TeamFolderRight;
}
public virtual long TeamOid { get; set; }
public virtual long BeWoFolderOid { get; set; }
public virtual bool AllowEdit { get; set; }
public virtual bool AllowView { get; set; }
}
}

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="BeWo.Data.Entities.TeamFolderRight, BeWo.Data" table="TeamFolderRight">
<id name="Oid" column="Oid" type="Int64" unsaved-value="null">
<generator class="identity" />
</id>
<version type="Int64" column="Version" name="Version" />
<property column="Tid" type="BS.Shared.TableID, BS.Shared" name="_Tid" access="field" />
<property column="Notice" type="String" name="Notice" />
<property column="InsTs" type="DateTime" name="InsTs" />
<property column="InsUser" type="String" name="InsUser" />
<property column="UpdTs" type="DateTime" name="UpdTs" />
<property column="UdpUser" type="String" name="UdpUser" />
<property column="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" name="IsActive" />
<property column="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" name="SystemEntryID" />
<property name="TeamOid" />
<property name="BeWoFolderOid" />
<property name="AllowEdit" />
<property name="AllowView" />
</class>
</hibernate-mapping>

View File

@@ -16,19 +16,15 @@ namespace BeWo.Data.Security
public static string GetTenant()
{
return MultitenancyOperationContextExt.Current?.Tenant;
if (MultitenancyOperationContextExt.Current != null)
return MultitenancyOperationContextExt.Current.Tenant;
return SessionFacade.Tenant;
}
public static Employee GetLoggedInEmployee()
{
if (LoggedInUserOperationContextExt.Current != null)
{
var lLoggedInEmployee = LoggedInUserOperationContextExt.Current.User.Employee;
return lLoggedInEmployee;
}
return null;
return GetLoggedInUser()?.Employee;
}
public static ApplicationUser GetLoggedInUserWithOid()

View File

@@ -0,0 +1,20 @@
INSERT INTO `.executedscripts`
VALUES ('Changes_2026-04-28 TeamFolderRight', CURDATE());
CREATE TABLE `teamfolderright` (
`Oid` bigint NOT NULL AUTO_INCREMENT,
`InsTs` datetime DEFAULT NULL,
`InsUser` varchar(256) DEFAULT NULL,
`Notice` varchar(1024) DEFAULT NULL,
`Tid` int DEFAULT NULL,
`UdpUser` varchar(256) DEFAULT NULL,
`UpdTs` datetime DEFAULT NULL,
`Version` bigint DEFAULT NULL,
`IsActive` tinyint DEFAULT NULL,
`SystemEntryID` int DEFAULT NULL,
`TeamOid` bigint DEFAULT NULL,
`BeWoFolderOid` bigint DEFAULT NULL,
`AllowEdit` bigint DEFAULT NULL,
`AllowView` bigint DEFAULT NULL,
PRIMARY KEY (`Oid`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=latin1;

View File

@@ -152,7 +152,7 @@ namespace LebenshilfeFrankfurtOder.Export
if (row[5] != null)
{
sb.Append(GetKostenstelle(row[5].ToString()));
sb.Append(GetKostenstelle2026(row[5].ToString(), date));
}
sb.Append(";");
@@ -271,7 +271,7 @@ namespace LebenshilfeFrankfurtOder.Export
if (row[5] != null)
{
sb.Append(GetKostenstelle(row[5].ToString()));
sb.Append(GetKostenstelle2026(row[5].ToString(), date));
}
sb.Append(";");
@@ -435,7 +435,7 @@ namespace LebenshilfeFrankfurtOder.Export
if (row[5] != null)
{
sb.Append(GetKostenstelle(row[5].ToString()));
sb.Append(GetKostenstelle2026(row[5].ToString(), date));
}
sb.Append(";");
@@ -599,7 +599,7 @@ ib.InvoiceId
unitDescription = row[11].ToString();
}
var kst = GetKostenstelleFromInvoiceItem(invoiceId, itemAmount, itemDescription, notice, unitCount, unitDescription);
var kst = GetKostenstelleFromInvoiceItem2026(invoiceId, itemAmount, itemDescription, notice, unitCount, unitDescription, date);
if (date >= new DateTime(2025, 1, 1))
{
@@ -691,7 +691,7 @@ ib.InvoiceId
sb.Append(kto); // Konto
sb.Append(";");
var kst = GetKostenstelleFromInvoiceItem(invoiceId, itemAmount, itemDescription, notice, unitCount, unitDescription);
var kst = GetKostenstelleFromInvoiceItem2026(invoiceId, itemAmount, itemDescription, notice, unitCount, unitDescription, date);
if (date >= new DateTime(2025, 1, 1))
{
@@ -928,7 +928,7 @@ ib.InvoiceId
sb.Append(";");
if (row[6] != null)
{
sb.Append(GetKostenstelle(row[6].ToString()));
sb.Append(GetKostenstelle2026(row[6].ToString(), date));
}
sb.Append(";");
@@ -967,7 +967,32 @@ Bsp. LK Stade - Mustermann, Max - 11.2019
return sb.ToString();
}
private static String GetKostenstelleFromInvoiceItem(String invoiceId, decimal amount, String itemDescription, String notice, decimal unitCount, String unitDescription)
private static String GetKostenstelleFromInvoiceItem2026(String invoiceId, decimal amount, String itemDescription, String notice, decimal unitCount, String unitDescription, DateTime datum)
{
var kst = GetKostenstelleFromInvoiceItem2025(invoiceId, amount, itemDescription, notice, unitCount, unitDescription);
return GetNewKostenstelle(kst, datum);
}
private static string GetNewKostenstelle(string kst, DateTime datum)
{
var dict = GetKostenstellen2026MappingDict();
if (datum.Year > 2025) //gilt ab 2026
{
if (dict.ContainsKey(kst))
{
kst = dict[kst];
}
}
return kst;
}
private static String GetKostenstelleFromInvoiceItem2025(String invoiceId, decimal amount, String itemDescription, String notice, decimal unitCount, String unitDescription)
{
if (!String.IsNullOrEmpty(notice) && notice.Replace(" ", "").Contains("§42"))
{
@@ -1062,7 +1087,7 @@ Bsp. LK Stade - Mustermann, Max - 11.2019
return "2204";
}
var kst = GetKostenstelle(invoiceId);
var kst = GetKostenstelle2025(invoiceId);
//if (kst == "2212")
//{
@@ -1167,10 +1192,108 @@ Bsp. LK Stade - Mustermann, Max - 11.2019
return itemDescription;
}
private static String GetKostenstelle(String id)
private static String GetKostenstelle2026(String id, DateTime datum)
{
var kst2025 = GetKostenstelle2025(id);
return GetNewKostenstelle(kst2025, datum);
}
private static Dictionary<String, String> GetKostenstellen2026MappingDict()
{
var dict = new Dictionary<String, String>();
dict.Add("9102", "1100");
dict.Add("9103", "1100");
dict.Add("9104", "1100");
dict.Add("9107", "1100");
dict.Add("9502", "1100");
dict.Add("9503", "1100");
dict.Add("9505", "1100");
dict.Add("9504", "1100");
dict.Add("9202", "1100");
dict.Add("9203", "1101");
dict.Add("9204", "1102");
dict.Add("9206", "1103");
dict.Add("1102", "3101");
dict.Add("7811", "3101");
dict.Add("1202", "3102");
dict.Add("6102", "3102");
dict.Add("6202", "3102");
dict.Add("6302", "3102");
dict.Add("2102", "3103");
dict.Add("2202", "3104");
dict.Add("2204", "3104");
dict.Add("2206", "3104");
dict.Add("2212", "3104");
dict.Add("2214", "3104");
dict.Add("2215", "3104");
dict.Add("2302", "3105");
dict.Add("2402", "3106");
dict.Add("7807", "3106");
dict.Add("7812", "3106");
dict.Add("7813", "3106");
dict.Add("7817", "3106");
dict.Add("7821", "3106");
dict.Add("7822", "3106");
dict.Add("5102", "3107");
dict.Add("7815", "3108");
dict.Add("7816", "3108");
dict.Add("7818", "3108");
dict.Add("7820", "3108");
dict.Add("9407", "3108");
dict.Add("1303", "3201");
dict.Add("1304", "3202");
dict.Add("7814", "3202");
dict.Add("1313", "3203");
dict.Add("1352", "3204");
dict.Add("7809", "3204");
dict.Add("5202", "3301");
dict.Add("5302", "3302");
dict.Add("5502", "3303");
dict.Add("7702", "3400");
dict.Add("7808", "3400");
dict.Add("7803", "3400");
dict.Add("7810", "3400");
dict.Add("7804", "3400");
dict.Add("7819", "3900");
dict.Add("9319", "3901");
dict.Add("9320", "3902");
dict.Add("9323", "3903");
dict.Add("9325", "3904");
dict.Add("9327", "3905");
dict.Add("9328", "3906");
dict.Add("9332", "3907");
dict.Add("9404", "3908");
dict.Add("9405", "3909");
dict.Add("9331", "3910");
dict.Add("9310", "3911");
dict.Add("9318", "3912");
dict.Add("9322", "3913");
dict.Add("9403", "3914");
dict.Add("9603", "3915");
dict.Add("9606", "3916");
dict.Add("9406", "3917");
dict.Add("9408", "3918");
dict.Add("9317", "3919");
dict.Add("9409", "3921");
dict.Add("8102", "4101");
dict.Add("7806", "4101");
dict.Add("9399", "4103");
dict.Add("9605", "4102");
dict.Add("7002", "9101");
dict.Add("7102", "9102");
dict.Add("7202", "9103");
dict.Add("7302", "9104");
dict.Add("7402", "9105");
dict.Add("7502", "9106");
dict.Add("6602", "9107");
return dict;
}
private static String GetKostenstelle2025(String id)
{
if (id == "RechnungTagesstruktur")
{
return "2102";

View File

@@ -43,8 +43,12 @@ namespace BeWo.Service.Core
//if (t.Oid.HasValue)
//{
var ttemp = DAOFactory.GenericDAO.Unproxy(t);
var ttemp = DAOFactory.GenericDAO.Unproxy(t);
if (!ttemp.SystemEntryID.HasValue || ttemp.SystemEntryID.Value != SystemEntryID.DeletedPermanently)
{
list.Add(ttemp);
}
//}
}
catch (Exception)

View File

@@ -822,5 +822,6 @@ namespace BeWo.Service.DCEntityMapper
public static GkvTransferProtokollLightDC_GkvTransferprotokollLight GkvTransferprotokollLight { get; } = new GkvTransferProtokollLightDC_GkvTransferprotokollLight();
public static OrganisationLightDC_OrganisationLight OrganisationLight { get; } = new OrganisationLightDC_OrganisationLight();
public static StoredFileDC_StoredFile StoredFile { get; } = new StoredFileDC_StoredFile();
}
public static TeamFolderRightDC_TeamFolderRight TeamFolderRight { get; } = new TeamFolderRightDC_TeamFolderRight();
}
}

View File

@@ -0,0 +1,44 @@
using BeWo.Data.Entities;
using BS.Shared.DataContracts;
namespace BeWo.Service.DCEntityMapper
{
public class TeamFolderRightDC_TeamFolderRight : AbstractIDCEntityMapper<TeamFolderRight, TeamFolderRightDC>
{
public override TeamFolderRightDC MergeWithDC(TeamFolderRight pEntity, TeamFolderRightDC pDataContract)
{
pDataContract.Oid = pEntity.Oid;
pDataContract.Version = pEntity.Version;
pDataContract.TeamOid = pEntity.TeamOid;
pDataContract.BeWoFolderOid = pEntity.BeWoFolderOid;
pDataContract.AllowEdit = pEntity.AllowEdit;
pDataContract.AllowView = pEntity.AllowView;
return pDataContract;
}
public override TeamFolderRight MergeWithEntity(TeamFolderRightDC pDataContract, TeamFolderRight pEntity)
{
this.ConcurrencyCheck(pDataContract.Version, pEntity);
pEntity.Oid = pDataContract.Oid;
pEntity.TeamOid = pDataContract.TeamOid;
pEntity.BeWoFolderOid = pDataContract.BeWoFolderOid;
pEntity.AllowEdit = pDataContract.AllowEdit;
pEntity.AllowView = pDataContract.AllowView;
return pEntity;
}
protected override bool AreDCAndEntityEqual(TeamFolderRightDC pDC, TeamFolderRight pEntity)
{
if (pDC.Oid == null)
{
return false;
}
return pDC.Oid == pEntity.Oid;
}
}
}

View File

@@ -9,6 +9,8 @@ using System.Linq;
using System.Threading;
using BeWo.Service.Core;
using BeWo.Service.Plugins;
using System.Drawing.Text;
using BeWo.Data.Security;
namespace BeWo.Service.Dokumentverwaltung
{
@@ -16,17 +18,52 @@ namespace BeWo.Service.Dokumentverwaltung
{
public static List<BeWoFolderDC> GetFolderTree(TableID pObjectTid, long pObjectOid)
{
bool isEditTemplate = false;
var objectOid = pObjectOid;
if (objectOid < 0)
{
objectOid *= -1;
isEditTemplate = true;
}
var teams = new List<Team>();
var folderRights = new List<TeamFolderRight>();
bool hatRechtFuerAlle = true;
bool hatRechtFuerTeam = true;
if (pObjectTid == TableID.Vorlagentabelle)
{
folderRights = DAOFactory.GenericDAO.GetAll<TeamFolderRight>().ToList();
var user = UserRightHelper.GetLoggedInUser();
teams = DAOFactory.SearchDAO.FindAllActiveTeamsOfEmployee(user.Employee.Oid.Value).ToList();
if (isEditTemplate)
{
hatRechtFuerAlle = UserRightHelper.UserHasRight(user, UserRightType.VorlagenEditAll);
hatRechtFuerTeam = UserRightHelper.UserHasRight(user, UserRightType.VorlagenEditOwnTeams);
}
else
{
hatRechtFuerAlle = UserRightHelper.UserHasRight(user, UserRightType.VorlagenViewAll);
hatRechtFuerTeam = UserRightHelper.UserHasRight(user, UserRightType.VorlagenViewOwnTeams);
}
}
IList<BeWoFolder> folder = DAOFactory.SearchDAO.FindBeWoFolders(pObjectTid, objectOid);
IList<BeWoFolder> folder = DAOFactory.SearchDAO.FindBeWoFolders(pObjectTid, pObjectOid);
bool templateFolder = folder.Any(f => f.SystemEntryID.Equals(SystemEntryID.TemplateDirectory));
var folderDCList = new List<BeWoFolderDC>();
foreach (BeWoFolder item in SortiereOrdner(folder))
{
folderDCList.Add(MapperFactory.BeWoFolderDC_BeWoFolder.MapToNewDC(item));
if (pObjectTid != TableID.Vorlagentabelle || hatRechtFuerAlle || (hatRechtFuerTeam && HatBerechtigung(item, teams, folderRights)))
{
folderDCList.Add(MapperFactory.BeWoFolderDC_BeWoFolder.MapToNewDC(item));
}
}
IEnumerable<FileAttachmentInfo> files = DAOFactory.SearchDAO.FindFileAttachmentInfos(pObjectTid, pObjectOid);
IEnumerable<FileAttachmentInfo> files = DAOFactory.SearchDAO.FindFileAttachmentInfos(pObjectTid, objectOid);
var fileDCList = new List<FileAttachmentDC>();
foreach (FileAttachmentInfo item in files.OrderBy(f => f.Path))
@@ -36,10 +73,26 @@ namespace BeWo.Service.Dokumentverwaltung
//Thread.Sleep(500);
return CreateFolderTree(folderDCList, fileDCList, pObjectTid, pObjectOid, templateFolder);
return CreateFolderTree(folderDCList, fileDCList, pObjectTid, objectOid, templateFolder);
}
private static bool HatBerechtigung(BeWoFolder item, List<Team> teams, List<TeamFolderRight> folderRights)
{
var tfr = folderRights.Where(f => teams.Select(t => t.Oid.Value).Contains(f.TeamOid)).ToList();
tfr = tfr.Where(f => f.BeWoFolderOid == item.Oid).ToList();
return tfr.Count > 0;
}
public static List<FileAttachmentDC> GetFileAttachmentsForFolder(long? folderOid, TableID objectTid, long objectOid)
{
var list = DAOFactory.SearchDAO.FindFileAttachmentsForFolder(folderOid, objectTid, objectOid);
return MapperFactory.FileAttachmentDC_FileAttachmentInfo.MapToNewDCs(list);
}
private static IList<BeWoFolder> SortiereOrdner(IList<BeWoFolder> folder)
{
String maxNumberPrefix = "";

View File

@@ -105,6 +105,10 @@ namespace BeWo.Service.Plugins
foreach (Customer customer in customers)
{
if (customer.SystemEntryID.HasValue && customer.SystemEntryID.Value == SystemEntryID.DeletedPermanently)
{
continue;
}
if (!cProcessed.ContainsKey(customer.Oid.Value))
{
CompactCustomerDC dc = CreateCompactCustomerDCWithEmployeeRelation(customer, fetchReferenceNumbers, true, currentEmployeeOid, teamOids);
@@ -492,7 +496,9 @@ namespace BeWo.Service.Plugins
}
}
IList<Person> persons = DAOFactory.GenericDAO.GetAll<Person>().Where(p => p.Type == pType).ToList();
//var test2 = DAOFactory.GenericDAO.GetAll<Person>().Where(p => p.Type == pType).ToList();
IList<Person> persons = DAOFactory.GenericDAO.GetAllWithoutPermanentlyDeleted<Person>().Where(p => p.Type == pType).ToList();
Dictionary<long, List<CustomerPersonRelationDC>> person2CustomerOidDict = new Dictionary<long, List<CustomerPersonRelationDC>>();

View File

@@ -76,7 +76,8 @@ namespace BeWo.Service.Plugins
//Für Main Navigation View
public virtual List<CompactEmployeeDC> GetAllCompactEmployees()
{
var employees = DAOFactory.GenericDAO.GetAll<Employee>();
//var employees = DAOFactory.GenericDAO.GetAll<Employee>();
var employees = DAOFactory.GenericDAO.GetAllWithoutPermanentlyDeleted<Employee>();
var dcs = MapperFactory.CompactEmployeeDC_Employee.MapToNewDCs(employees);
var teams = GetAllTeamsCompact();

View File

@@ -931,15 +931,18 @@ namespace BeWo.Service.Plugins
return true;
}
foreach (var v2o in sr.ValueList)
if (sr.ValueList != null)
{
if (v2o.Entry.Type == ValueListEntryType.SupportConceptGoalType || v2o.Entry.Type == ValueListEntryType.SupportConceptGoalCategoryType || v2o.Entry.Type == ValueListEntryType.SupportConceptIndividualGoalType || v2o.Entry.Type == ValueListEntryType.SupportConceptIndividualGoalCategoryType)
foreach (var v2o in sr.ValueList)
{
foreach (var oid in goalOids)
if (v2o.Entry.Type == ValueListEntryType.SupportConceptGoalType || v2o.Entry.Type == ValueListEntryType.SupportConceptGoalCategoryType || v2o.Entry.Type == ValueListEntryType.SupportConceptIndividualGoalType || v2o.Entry.Type == ValueListEntryType.SupportConceptIndividualGoalCategoryType)
{
if (v2o.Entry.Oid.Value == oid)
foreach (var oid in goalOids)
{
return true;
if (v2o.Entry.Oid.Value == oid)
{
return true;
}
}
}
}

View File

@@ -145,6 +145,11 @@ namespace BeWo.Service.Plugins
AddOrReplaceTranslation(dict, "Module_DisplayName_Wohnhilfe", "Wohnhilfe");
//Hilfe Urls
//AddOrReplaceTranslation(dict, "EndgueltigLoeschenHilfeUrl", "https://hilfe.bewoplaner.de/");
return dict;
}

View File

@@ -183,7 +183,7 @@ namespace BeWo.Service.Security
info.MaxEmployeeCount = 1000;
return info;
//return info;
#endif
@@ -197,7 +197,7 @@ namespace BeWo.Service.Security
#if DEBUG
url = ConfigurationManager.AppSettings.Get("LicenseInfoUrl");
url = url.Replace("[TENANT]", "3522103738");
url = url.Replace("[TENANT]", "8002913382");
url += "&t=0";
#endif
//url = url.Replace("[TENANT]", "1441747891");
@@ -214,12 +214,13 @@ namespace BeWo.Service.Security
//}
String[] resultArray = result.Split(';');
int maxLicenses = 0;
int fullLicenses = 0;
int midLicenses = 0;
int isHybrid = 0;
decimal percentFreeEmployees = 0;
if (resultArray.Length > 0)
{
Int32.TryParse(resultArray[0], out maxLicenses);
Int32.TryParse(resultArray[0], out fullLicenses);
if (resultArray.Length > 1)
{
Decimal.TryParse(resultArray[1], out percentFreeEmployees);
@@ -228,19 +229,22 @@ namespace BeWo.Service.Security
{
Int32.TryParse(resultArray[2], out midLicenses);
}
if (resultArray.Length > 3)
{
Int32.TryParse(resultArray[3], out isHybrid);
}
}
if (midLicenses > 0)
{
percentFreeEmployees = 0;
maxLicenses += midLicenses;
}
info.MaxLicenseCount = maxLicenses;
info.PercentFreeEmployee = percentFreeEmployees;
info.IsHybrid = isHybrid == 1;
info.MaxLicenseCount = info.IsHybrid ? fullLicenses + midLicenses : fullLicenses; // Anzahl max User immer Anzahl voll + Hybrid Lizenzen
info.MaxMidLicenseCount = midLicenses;
info.PercentFreeEmployee = midLicenses > 0 ? 0 : percentFreeEmployees; // Nur für Normale DBs 30 % zusätzlich
info.LicenseInUseCount = DAOFactory.GenericDAO.GetAllActive<ApplicationUser>().Count;
info.EmployeeCount = DAOFactory.GenericDAO.GetAllActive<Employee>().Count;
info.MaxEmployeeCount = (int)Math.Ceiling(maxLicenses * ((100 + percentFreeEmployees) / 100));
info.MaxEmployeeCount = (int)Math.Ceiling((fullLicenses + midLicenses) * ((100 + info.PercentFreeEmployee) / 100)); // Immer voll + Mid/Hybrid
}
}
catch (Exception)

View File

@@ -239,6 +239,7 @@
<Compile Include="Core\ServiceLogic.cs" />
<Compile Include="Core\SettingsLogic.cs" />
<Compile Include="Core\Utils.cs" />
<Compile Include="DCEntityMapper\TeamFolderRightDC_TeamFolderRight.cs" />
<Compile Include="DCEntityMapper\AbwesenheitsInformationPrintDC_AbwesenheitsInformationPrint.cs" />
<Compile Include="DCEntityMapper\AddressDC_Address.cs" />
<Compile Include="DCEntityMapper\AddressRouteDC_AddressRoute.cs" />

View File

@@ -532,5 +532,13 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<CompactEmployeeDC> GetActiveCompactEmployeesByOids(List<long> employeeOids);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<TeamFolderRightDC> GetTeamRightsForFolder(long folderOid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<TeamFolderRightDC> SaveTeamFolderRights(List<TeamFolderRightDC> list);
}
}

View File

@@ -154,6 +154,11 @@ namespace BeWo.Service.ServiceContracts
[OperationContract]
List<BeWoFolderDC> GetFolderTree(TableID pObjectTid, long pObjectOid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<FileAttachmentDC> GetFileAttachmentsForFolder(long? folderOid, TableID objectTid, long objectOid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void DeleteFolder(long pBeWoFolderOid, long pVersion);

View File

@@ -2369,5 +2369,35 @@ namespace BeWo.Service.ServiceImplementations
throw Utils.CreateBeWoFaultException(ex);
}
}
public List<TeamFolderRightDC> GetTeamRightsForFolder(long folderOid)
{
try
{
var rights = DAOFactory.SearchDAO.GetTeamRightsForFolder(folderOid);
return MapperFactory.TeamFolderRight.MapToNewDCs(rights);
}
catch (Exception ex)
{
throw Utils.CreateBeWoFaultException(ex);
}
}
public List<TeamFolderRightDC> SaveTeamFolderRights(List<TeamFolderRightDC> list)
{
try
{
var originals = DAOFactory.GenericDAO.LoadByIDs<TeamFolderRight>(list.Where(t => t.Oid.HasValue).Select(t2 => t2.Oid.Value));
MapperFactory.TeamFolderRight.MergeWithEntitys(list, originals);
DAOFactory.GenericDAO.Update(originals);
return MapperFactory.TeamFolderRight.MapToNewDCs(originals);
}
catch (Exception ex)
{
throw Utils.CreateBeWoFaultException(ex);
}
}
}
}

View File

@@ -3,6 +3,8 @@ using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Data.ICD10;
using BeWo.Data.ICF;
using BeWo.Data.Utils;
using BeWo.Service.AI;
using BeWo.Service.Configuration;
using BeWo.Service.Core;
using BeWo.Service.DCEntityMapper;
@@ -14,6 +16,7 @@ using BeWo.Service.PivotTabelle;
using BeWo.Service.Plugins;
using BeWo.Service.SBD;
using BeWo.Service.ServiceContracts;
using BeWo.ServiceUtils.History;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
@@ -26,22 +29,19 @@ using Newtonsoft.Json;
using RestSharp;
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Net;
using System.Security.Cryptography;
using System.ServiceModel;
using System.Text;
using System.Threading;
using System.Web;
using System.Windows;
using BeWo.Data.Utils;
using Utils = BeWo.Service.Core.Utils;
using System.Collections.Specialized;
using BeWo.ServiceUtils.History;
using SecurityUtils = BeWo.Service.Security.SecurityUtils;
using BeWo.Service.AI;
using Utils = BeWo.Service.Core.Utils;
namespace BeWo.Service.ServiceImplementations
{
@@ -877,6 +877,18 @@ namespace BeWo.Service.ServiceImplementations
}
}
public List<FileAttachmentDC> GetFileAttachmentsForFolder(long? folderOid, TableID objectTid, long objectOid)
{
try
{
return DokumentManager.GetFileAttachmentsForFolder(folderOid, objectTid, objectOid);
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
public void DeleteFolder(long pBeWoFolderOid, long pVersion)
{
try
@@ -9106,7 +9118,53 @@ namespace BeWo.Service.ServiceImplementations
{
//var resources = DAOFactory.GenericDAO.GetActiveByIDs<Resource>(resourceOids);
var list = new List<InactivePersonDC>();
list.Add(new InactivePersonDC { DateOfBirth = DateTime.Now, FirstName = "test", LastName = "Test" });
return list;
var sql = @"select null, p.Oid as personoid, p.FirstName, p.LastName, p.DateOfBirth, a.Street as Strasse, a.PostalCode as PLZ, a.Town as Ort, p.insts from person p
left join address a on p.Addressoid = a.Oid
where (p.isactive = 0 or p.isactive = 2) and (p.SystemEntryID is null || p.SystemEntryID != -1)
and p.Type = 3
and p.insts < DATE_SUB(CURDATE(), INTERVAL yyyy YEAR);";
if (tableId == TableID.Customer)
{
sql = @"select c.Oid, p.Oid as personoid, p.FirstName, p.LastName, p.DateOfBirth, a.Street as Strasse, a.PostalCode as PLZ, a.Town as Ort, p.insts from customer c
join person p on c.PersonOid = p.Oid
left join address a on p.Addressoid = a.Oid
where (p.isactive = 0 or p.isactive = 2) and (p.SystemEntryID is null || p.SystemEntryID != -1)
and c.insts < DATE_SUB(CURDATE(), INTERVAL yyyy YEAR);";
}
else if (tableId == TableID.Employee)
{
sql = @"select e.Oid, p.Oid as personoid, p.FirstName, p.LastName, p.DateOfBirth, a.Street as Strasse, a.PostalCode as PLZ, a.Town as Ort, p.insts from employee e
join person p on e.PersonOid = p.Oid
left join address a on p.Addressoid = a.Oid
where (p.isactive = 0 or p.isactive = 2) and (p.SystemEntryID is null || p.SystemEntryID != -1)
and e.insts < DATE_SUB(CURDATE(), INTERVAL yyyy YEAR)";
}
sql = sql.Replace("yyyy", jahreUngenutzt.ToString());
var sqlresult = DAOFactory.SearchDAO.GetSqlResult(sql);
foreach (object[] row in sqlresult)
{
var ip = new InactivePersonDC
{
ObjectOid = (long?)row[0],
PersonOid = (long?)row[1],
FirstName = (String)row[2],
LastName = (String)row[3],
DateOfBirth = (DateTime?)row[4],
Street = (String)row[5],
PostalCode = (String)row[6],
Town = (String)row[7],
InsTs = (DateTime?)row[8],
ObjectTid = tableId
};
list.Add(ip);
}
return list;
}
catch (Exception e)
@@ -9119,14 +9177,62 @@ namespace BeWo.Service.ServiceImplementations
{
try
{
return "";
return "Diese Funktion ist zur Zeit noch in Bearbeitung. Wir arbeiten mit Hochdruck daran, die Funktionalität fertigzustellen.";
String msg = "Die gewählten Personen wurden erfolgreich gelöscht.";
TableID tid = TableID.Person;
if (persons.Count > 0)
{
tid = persons[0].ObjectTid;
}
var personOids = persons.Select(p => p.PersonOid.Value).ToList();
var objectOids = persons.Where(p => p.ObjectOid.HasValue).Select(p2 => p2.ObjectOid.Value).ToList();
if (tid == TableID.Customer)
{
var customers = DAOFactory.GenericDAO.LoadByIDs<Customer>(objectOids);
customers.DoForEach(e =>
{
e.IsActive = ActivationTypeId.Deleted;
e.SystemEntryID = SystemEntryID.DeletedPermanently;
});
DAOFactory.GenericDAO.Update(customers);
}
else if (tid == TableID.Employee)
{
var employees = DAOFactory.GenericDAO.LoadByIDs<Employee>(objectOids);
employees.DoForEach(e =>
{
e.IsActive = ActivationTypeId.Deleted;
e.SystemEntryID = SystemEntryID.DeletedPermanently;
});
DAOFactory.GenericDAO.Update(employees);
}
var personEntities = DAOFactory.GenericDAO.LoadByIDs<Person>(personOids);
personEntities.DoForEach(e =>
{
e.IsActive = ActivationTypeId.Deleted;
e.SystemEntryID = SystemEntryID.DeletedPermanently;
});
DAOFactory.GenericDAO.Update(personEntities);
return msg;
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
}
}

View File

@@ -200,10 +200,14 @@ namespace BS.Shared
AiUserSetting = 189,
AiPromptbausteinRoutine = 190,
AiPromptbausteinRoutineStep = 191,
}
TeamFolderRight = 192
}
public enum SystemEntryID
{
// Endgültig gelöscht
DeletedPermanently = -1,
// LVR Kostenträger
CostBearerLVR = 0,
@@ -534,6 +538,10 @@ namespace BS.Shared
DocumentsEditFolders = 22012,
DocumentsUploadAll = 22013,
DocumentsDeleteAll = 22014,
VorlagenEditAll = 22020,
VorlagenEditOwnTeams = 22021,
VorlagenViewAll = 22022,
VorlagenViewOwnTeams = 22023,
Customer_ViewMedication = 22100,
Customer_ViewDiagnosis = 22101,
@@ -591,6 +599,8 @@ namespace BS.Shared
Finance_Gkv_Delete = 26113,
Customer_EditMedication = 27000,
Customer_CreateMedication = 27001,
Customer_DeleteMedication = 27002,
//MedRecordsAnsehen = 27001,
//MedRecordsAnlegen = 27002,
//MedRecordsAendern = 27003,

View File

@@ -720,7 +720,9 @@ namespace BS.Shared.Core
dict.Add(UserRightType.Customer_ViewMyTeams, Translator.Translate("Klienten") + " ansehen (von Teams betreut)");
dict.Add(UserRightType.Customer_ViewMedication, Translator.Translate("Klienten") + " Medikation ansehen");
dict.Add(UserRightType.Customer_EditMedication, Translator.Translate("Klienten") + " Medikation bearbeiten");
dict.Add(UserRightType.Customer_ViewDiagnosis, Translator.Translate("Klienten") + " Diagnosen ansehen");
dict.Add(UserRightType.Customer_DeleteMedication, Translator.Translate("Klienten") + " Medikation löschen");
dict.Add(UserRightType.Customer_CreateMedication, Translator.Translate("Klienten") + " Medikation anlegen");
dict.Add(UserRightType.Customer_ViewDiagnosis, Translator.Translate("Klienten") + " Diagnosen ansehen");
dict.Add(UserRightType.Customer_ViewNotizen, Translator.Translate("Klienten") + " Notizen ansehen");
dict.Add(UserRightType.Customer_EditNotizen, Translator.Translate("Klienten") + " Notizen bearbeiten");
dict.Add(UserRightType.Customer_DeleteNotizen, Translator.Translate("Klienten") + " Notizen löschen");
@@ -930,6 +932,10 @@ namespace BS.Shared.Core
dict.Add(UserRightType.DocumentsUploadAll, Translator.Translate("Dokumente hochladen"));
dict.Add(UserRightType.DocumentsDeleteAll, Translator.Translate("Dokumente löschen"));
dict.Add(UserRightType.DocumentsEditFolders, Translator.Translate("Dokumente Ordner bearbeiten"));
dict.Add(UserRightType.VorlagenEditAll, Translator.Translate("Vorlagen bearbeiten (alle)"));
dict.Add(UserRightType.VorlagenEditOwnTeams, Translator.Translate("Vorlagen bearbeiten (der eigenen Teams)"));
dict.Add(UserRightType.VorlagenViewAll, Translator.Translate("Vorlagen verwenden (alle)"));
dict.Add(UserRightType.VorlagenViewOwnTeams, Translator.Translate("Vorlagen verwenden (der eigenen Teams)"));
dict.Add(UserRightType.ServiceRecordAllowEditAfterMindays, Translator.Translate("Zeiterfassung Einträge nach Ablauf der Eingabefrist bearbeiten"));
dict.Add(UserRightType.Betreuungsschluessel_View, Translator.Translate("BetreuerSingular") + " bei Hilfeplänen ansehen");
dict.Add(UserRightType.Betreuungsschluessel_Create, Translator.Translate("BetreuerSingular") + " bei Hilfeplänen anlegen");

View File

@@ -19,10 +19,11 @@ namespace BS.Shared.DataContracts
[DataMember] public string PostalCode { get; set; }
[DataMember] public string Town { get; set; }
[DataMember] public DateTime? LastUsedOn { get; set; }
[DataMember] public DateTime? InsTs { get; set; }
[DataMember] public string Notice { get; set; }
[DataMember] public long? PersonOid { get; set; }
[DataMember] public long? ObjectOid { get; set; }
[DataMember] public long? ObjectTid { get; set; }
[DataMember] public TableID ObjectTid { get; set; }
[DataMember] public bool IsChecked { get; set; }
}
}

View File

@@ -18,6 +18,12 @@ namespace BS.Shared.DataContracts
[DataMember]
public int MaxLicenseCount { get; set; }
[DataMember]
public int MaxMidLicenseCount { get; set; }
[DataMember]
public bool IsHybrid { get; set; }
[DataMember]
public decimal PercentFreeEmployee { get; set; }

View File

@@ -0,0 +1,25 @@
using System.Runtime.Serialization;
namespace BS.Shared.DataContracts
{
[DataContract]
public partial class TeamFolderRightDC : IDataContract
{
[DataMember]
public long? Oid { get; set; }
[DataMember]
public long? Version { get; set; }
[DataMember]
public long TeamOid { get; set; }
[DataMember]
public long BeWoFolderOid { get; set; }
[DataMember]
public bool AllowEdit { get; set; }
[DataMember]
public bool AllowView { get; set; }
}
}

View File

@@ -194,6 +194,7 @@
<Compile Include="DataContracts\AdminService\AdminServiceSumResponseDetailDC.cs" />
<Compile Include="DataContracts\AdminService\IAdminServiceDC.cs" />
<Compile Include="DataContracts\AdminService\AdminServiceSumReqDC.cs" />
<Compile Include="DataContracts\TeamFolderRightDC.cs" />
<Compile Include="DataContracts\Feature\AI\AiPromptbausteinRoutineDC.cs" />
<Compile Include="DataContracts\Feature\AI\AiPromptbausteinRoutineStepDC.cs" />
<Compile Include="DataContracts\Feature\AI\AiUserSettingDC.cs" />