Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo
This commit is contained in:
54
.cr/server/Editor/Code Cleanup.xml
Normal file
54
.cr/server/Editor/Code Cleanup.xml
Normal file
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Root Type="DevExpress.CodeAnalysis.CodeCleanUp.CodeCleanUpOptions">
|
||||
<Options Language="C#">
|
||||
<Providers>
|
||||
<Item Id="{53ccb10f-f7af-40a6-9472-d05054672052}" />
|
||||
<Item Id="{bb96a982-bed0-4d8f-93a7-1e1ce7493e96}" />
|
||||
<Item Id="{12f6d456-d2ec-407e-aa44-2b74d7c56e9c}" />
|
||||
<Item Id="{ffa114f4-9122-46e4-96c8-655d54c904e6}" />
|
||||
<Item Id="{0e6b7b2c-84e6-4eee-83d1-6149282c8501}">
|
||||
<ApplyOnSave>True</ApplyOnSave>
|
||||
</Item>
|
||||
<Item Id="{03781427-dea7-45b0-9eef-81abe2961a61}" />
|
||||
<Item Id="{ab07124b-0893-4a2d-b6f5-39bfa9f10148}" />
|
||||
<Item Id="{5d712912-91ed-4728-ba16-ac1821b702ca}">
|
||||
<ApplyOnSave>True</ApplyOnSave>
|
||||
</Item>
|
||||
<Item Id="{c47b114f-eeae-46fc-9562-454e8f9196c0}" />
|
||||
<Item Id="{4216ef39-52bd-4e7f-92a7-673406f92bc8}" />
|
||||
<Item Id="{f410df1e-6e44-4854-a3f0-14bb756113f9}">
|
||||
<ApplyOnSave>True</ApplyOnSave>
|
||||
</Item>
|
||||
<Item Id="{d2f76d4e-97a9-4031-a7a2-23f192201426}" />
|
||||
<Item Id="{3824f6f0-fee1-4847-94ff-1efa133ba199}" />
|
||||
<Item Id="{d24bd9c7-7686-4101-9ec1-f61c19af8d2e}" />
|
||||
<Item Id="{f804e36e-414f-409c-9b90-63b7727745a7}">
|
||||
<ApplyOnSave>True</ApplyOnSave>
|
||||
</Item>
|
||||
<Item Id="{163af547-186c-4fa1-9a3e-b9b0a1ceec32}" />
|
||||
<Item Id="{00bb41b3-3de9-458a-93c1-1f126253eab0}" />
|
||||
<Item Id="{8e24f031-d25c-4ddb-86a5-c28f8fc354eb}" />
|
||||
<Item Id="{e950f01e-2b15-4da5-8176-cafe3cc883d9}" />
|
||||
<Item Id="{37bde68f-a39d-4791-adba-8ad7b2952ab0}" />
|
||||
<Item Id="{ef51c8cb-e48a-498f-98b2-eadda592c4c7}" />
|
||||
<Item Id="{20943A7B-2B32-4727-8E9D-61CB5B5F2A0D}" />
|
||||
<Item Id="{528bdd86-5882-4b4c-b717-e0ec33958bd7}" />
|
||||
<Item Id="{40c971cf-ebeb-419d-a559-6183d8d0d6a4}" />
|
||||
<Item Id="{4B42E272-EE39-4E83-924C-B2458D827DE3}" />
|
||||
<Item Id="{73a73e0e-5575-4c34-a97b-a942c6da1f90}" />
|
||||
<Item Id="{f7752b2b-7ba5-43ec-b0f7-7f45c21c1c23}" />
|
||||
<Item Id="{9dab2827-57cc-40e9-a330-a0626261453e}" />
|
||||
<Item Id="{6bf7cfc1-1332-4bec-982e-c2d0968237cd}" />
|
||||
<Item Id="{7e640eab-b585-47a5-afdc-0f110357cebb}" />
|
||||
<Item Id="{44ac74a7-dba7-45aa-b2ca-8094b85cb9c9}" />
|
||||
<Item Id="{2cd1441b-9e0f-4e39-bd8c-8aaa6e2a1728}" />
|
||||
<Item Id="{41388575-074b-49f2-b3bc-9d28b212bd1a}" />
|
||||
<Item Id="{4fa0bfa3-0a7e-471b-9933-3a379bdd5bd7}" />
|
||||
<Item Id="{1f88209e-45e2-40b9-a235-1df251df05dd}" />
|
||||
<Item Id="{086b0e70-893d-4b97-a6cf-d366ddbae573}" />
|
||||
<Item Id="{4771fd98-4357-4780-b479-a7a875fec011}" />
|
||||
<Item Id="{174C98E6-48C4-42D0-BC30-35EDE6377C9B}" />
|
||||
</Providers>
|
||||
<IsNewVersion>True</IsNewVersion>
|
||||
</Options>
|
||||
</Root>
|
||||
15
.cr/server/Editor/Formatting/Other.CSharp.xml
Normal file
15
.cr/server/Editor/Formatting/Other.CSharp.xml
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Root Type="DevExpress.CodeRush.Formatting.UI.Options.OtherOptionsContainer">
|
||||
<Options Language="C#">
|
||||
<Options>
|
||||
<Item Id="{7b13bb67-6fc9-44dd-87a1-ea1dc649d561}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.PlaceOnNewLineOtherOption">
|
||||
<ElseOnNewLine>True</ElseOnNewLine>
|
||||
<WhileOnNewLine>True</WhileOnNewLine>
|
||||
<CatchOnNewLine>True</CatchOnNewLine>
|
||||
<FinallyOnNewLine>True</FinallyOnNewLine>
|
||||
</Item>
|
||||
<Item Id="{84e7d791-613d-4018-bf31-9a9f43264480}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.XmlDocCommentsOtherOption" />
|
||||
<Item Id="{8921dd1e-bb6c-4fa8-b4d5-58e6edcea04f}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.OtherIndentOption" />
|
||||
</Options>
|
||||
</Options>
|
||||
</Root>
|
||||
32
.cr/server/Editor/Formatting/Wrapping.CSharp.xml
Normal file
32
.cr/server/Editor/Formatting/Wrapping.CSharp.xml
Normal file
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Root Type="DevExpress.CodeRush.Formatting.UI.Options.WrappingOptionsContainer">
|
||||
<Options Language="C#">
|
||||
<Options>
|
||||
<Item Id="{48f3f6c0-b3c2-4567-b071-33af7480c9a3}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.QueryExpressionFormattingOption" />
|
||||
<Item Id="{a2c75ad7-ba6a-49ca-8070-6d9e3c52e3c6}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.BinaryExpressionFormattingOption" />
|
||||
<Item Id="{0e2d0391-24ba-4ed8-aeb4-1b3e9f26be55}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.RelationalExpressionFormattingOption" />
|
||||
<Item Id="{fea50ebc-99c9-4599-9b55-bf2961b9cc95}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.BitwiseExpressionFormattingOption" />
|
||||
<Item Id="{4246b900-cbb3-44f4-b59e-b3055fb4f7bc}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.LogicalExpressionFormattingOption" />
|
||||
<Item Id="{cd721fc1-23fb-4d88-a9f0-42d6b318a32b}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.TernaryExpressionFormattingOption" />
|
||||
<Item Id="{10e904ea-f51d-4c32-9320-1b93fa557564}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.AssignmentExpressionFormattingOption">
|
||||
<WrapAssignment>
|
||||
<Kind>WrapBefore</Kind>
|
||||
</WrapAssignment>
|
||||
</Item>
|
||||
<Item Id="{25746bdc-0a43-4741-a740-20784691314b}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.InvocationArgumentListFormattingOption" />
|
||||
<Item Id="{D5EE2ECB-9FA6-47F7-A11F-007FC45E872D}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.AttributeArgumentsFormattingOption" />
|
||||
<Item Id="{5A186AB9-03A5-4BFE-83B1-B99B3B8408BC}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.DeclarationParameterListFormattingOption" />
|
||||
<Item Id="{8739877d-3674-40ae-90c4-38b2b160e92b}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.ArrayInitializerFormattingOption" />
|
||||
<Item Id="{a940ae15-f98a-4b7d-8357-2214eb421250}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.CollectionInitializerFormattingOption" />
|
||||
<Item Id="{0414181a-3915-4d0c-81d3-3bc7718da90f}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.ObjectInitializerFormattingOption" />
|
||||
<Item Id="{ea60e2ab-d67a-45e8-ab42-36d747c494c}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.ChainedMethodCallsFormattingOption" />
|
||||
<Item Id="{5f4ed422-88b9-4e95-8401-cef404d645d6}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.LambdaExpressionFormattingOption" />
|
||||
<Item Id="{0531de5e-ff20-4043-a67c-eeef76a8f3c3}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.ArrowExpressionFormattingOption" />
|
||||
<Item Id="{08fa5953-cc71-4ded-bd41-ef5d5b690585}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.TypeParameterListFormattingOption" />
|
||||
<Item Id="{dc060d33-cfc0-411e-9508-8d27b84934e8}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.CoalesceExpressionFormattingOption" />
|
||||
<Item Id="{b25d25a0-dd92-45ed-88ef-51953e28222c}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.BaseListWrappingFormattingOption" />
|
||||
<Item Id="{4db5e14f-8f4c-416f-9b59-7e9239f2150e}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.CtorInitWrappingFormattingOption" />
|
||||
<Item Id="{be0c2117-5732-40fd-9b4a-0fe749356e87}" Type="DevExpress.CodeRush.Formatting.UI.Options.Conversion.SwitchExpressionWrappingFormattingOption" />
|
||||
</Options>
|
||||
</Options>
|
||||
</Root>
|
||||
6
.cr/server/Editor/NamingSuggestions.xml
Normal file
6
.cr/server/Editor/NamingSuggestions.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Root Type="DevExpress.CodeRush.CodeCompletion.NamingSuggestions.Options.NamingSuggestionsOptions">
|
||||
<Options Language="C#">
|
||||
<Enabled>True</Enabled>
|
||||
</Options>
|
||||
</Root>
|
||||
165
.cr/server/Editor/Organize Members.xml
Normal file
165
.cr/server/Editor/Organize Members.xml
Normal file
@@ -0,0 +1,165 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Root Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersOptions">
|
||||
<Options Language="Neutral">
|
||||
<Schemes>
|
||||
<Item Id="{537ce5d1-771a-4e99-9f4a-c409ebd5e213}">
|
||||
<IsActive>False</IsActive>
|
||||
<Rules>
|
||||
<Item Id="{a1310165-0385-4fbf-92d3-71402b646318}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<GroupRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.AndRule">
|
||||
<Rules>
|
||||
<Item Id="{2ebbe39b-ad28-42e6-b6fe-58cbbe1366ea}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.GroupByParentTypeAttributesRule">
|
||||
<AttributeName>InterfaceType</AttributeName>
|
||||
</Item>
|
||||
<Item Id="{e7428898-429e-46c7-84f8-a4eeffbf1bc7}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.GroupByKindRule" />
|
||||
</Rules>
|
||||
</GroupRule>
|
||||
<RuleName>Members in type with InterfaceType</RuleName>
|
||||
</Item>
|
||||
<Item Id="{ebd30c1d-59b5-4a03-9f33-8813a996b952}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{02fdb982-e0dd-4b47-84c3-f44926013188}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{f5649b7d-32eb-4a64-88b4-5de14ed335e4}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{b72b1c09-252f-4d4f-881c-1a4832911d5f}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{eae9a2ed-5135-45c6-9cd1-e75ee9e9ac68}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{7e2e2ef2-8ef3-4f28-825d-ce10da1931e6}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{0430f49d-5690-49a2-b2ef-154bfbf64cd7}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{907fc4a7-efee-4337-af73-d71b996b3923}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{724ebc08-3b98-4c52-91c5-158b7a759d95}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{bcbd84af-ad2b-4353-a834-ece7b6e41d92}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{c49c00d2-9626-428d-8818-e71e68bf07f9}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{335094b6-641c-4832-bfdc-84087f8c7b24}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{1136a603-d516-4f42-a80b-c2bc7baf163b}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{89215376-ecad-435a-a6bf-137f09a41f0d}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{380049a0-9dbf-4d84-9612-20fc0c34dca2}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{36cc0c47-d29c-4e7a-a29b-d73ec1b3910b}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{c87a250e-ef05-4000-9e2c-e5c078ce51ae}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{0fcd1a59-0fc8-4bde-9db7-2d73508b918d}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{050f50d0-7ec6-4610-a820-08f54f1d4c3c}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{6b6953c9-dcb7-4d34-a123-7f390fd24e1e}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{b8f8c881-e919-48b1-8655-602c75ddbfec}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{f591aeca-b50c-47e2-ab24-84fb3a7327c2}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{c9b4252f-60a9-48d3-869e-2c3c23c20aae}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{d6d0a5a4-c770-47f3-8cda-c699e76101d1}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{9b31a53f-4bae-4b97-8356-39a48bd91e9c}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{45e128f7-55bf-4186-b09c-760d2a6477cb}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{1c54e8e0-33dd-4a95-8899-42ba94669156}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{b76710ac-780e-4cad-bd0c-02f7f676db0f}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{48b47296-0fd0-4056-bdc1-b09ae6266d06}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{9d6898f1-002e-4c71-a281-1ec6e78a3003}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{f1959e1c-1062-4a5f-a26d-b66a530b56dc}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{4651e354-b408-4df4-bb8c-0490daddccaa}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{6653a3b6-576e-4f5e-9c6a-a440ee257399}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{dc81be48-841a-48c0-bb6a-e70cb3c26341}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{b8475833-a96e-4e5a-825c-bf3266fcf330}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<DeletedItem Id="{1eb07ab2-16f0-4bf2-a2a6-33b899b861b8}" />
|
||||
</Rules>
|
||||
</Item>
|
||||
<Item Id="{fb41924a-35f9-47ee-8f8c-74cc34c4bf63}">
|
||||
<IsActive>True</IsActive>
|
||||
<Rules>
|
||||
<Item Id="{b98b9ab7-3a4c-4b50-8c32-771f758e4507}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{175afa49-1b02-4335-8697-426564eb966b}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{793c3efa-da34-4af7-9338-b079461a74c8}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{2a66d808-4878-480c-b9b8-8ae03700c1e8}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{3f3676c5-45dd-45df-888a-0f07b1b3707d}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{1b549ff5-3ce2-43ff-93bc-f4da46903b6a}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{761299d1-70d4-44bf-b06b-ccd7c409e448}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{b0120844-0819-42f0-a49b-62c4c7497a99}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{00b09b98-ac03-48d2-b2a0-9c6e1b7ba907}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{612527cd-1b3e-41be-8a3c-fce9731c5798}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{9766d442-e0fb-427f-99b0-405fc57f6d4f}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{f82b02cb-b317-44af-ab65-2a3c90761afe}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{f2379393-c0e5-4bee-a551-6383d0c1f843}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{7c815ce6-5ac8-4c71-a1a9-b7fc8adea37c}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{300ff320-0e96-446c-8de9-3f808dafce55}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{78216f10-5d1c-41eb-a048-bd50ff4224fd}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{f0d58f97-1bb4-4762-95e4-fb7f7b1e184f}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{c17095aa-afa2-4136-8771-c2a7ac591d15}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{b1d169c2-df12-4479-8c61-2af5bbee8a06}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule">
|
||||
<SortingRule Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.MultipleSortingsRule">
|
||||
<Sortings>
|
||||
<Item Id="{c2c647e5-108d-4154-ad61-de7692259d35}" />
|
||||
</Sortings>
|
||||
</SortingRule>
|
||||
</Item>
|
||||
<Item Id="{b02e42bb-4a64-4196-8d23-aca15029a893}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{096ce198-34f5-4265-8a4a-4a4b00c711ac}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{eddf6fb8-a51b-4632-b8fd-20965a20efe2}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{0aa19952-807c-40eb-ab92-6c7a5f3f79b2}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
<Item Id="{e7160382-ae65-4f07-aaac-72e124360b1d}" Type="DevExpress.CodeAnalysis.CodeCleanUp.OrganizeMembers.OrganizeMembersGroupAndSortRule" />
|
||||
</Rules>
|
||||
</Item>
|
||||
</Schemes>
|
||||
<UseMemberSections>False</UseMemberSections>
|
||||
</Options>
|
||||
</Root>
|
||||
@@ -39,16 +39,16 @@
|
||||
<UpdatePeriodically>false</UpdatePeriodically>
|
||||
<UpdateRequired>true</UpdateRequired>
|
||||
<MapFileExtensions>false</MapFileExtensions>
|
||||
<InstallUrl>https://app.ownsoft.de/</InstallUrl>
|
||||
<InstallUrl>https://app.ownsoft.de/test/</InstallUrl>
|
||||
<TargetCulture>de-DE</TargetCulture>
|
||||
<ProductName>BeWoPlaner</ProductName>
|
||||
<PublisherName>ownSoft GmbH</PublisherName>
|
||||
<MinimumRequiredVersion>2.0.1.263</MinimumRequiredVersion>
|
||||
<MinimumRequiredVersion>2.0.1.265</MinimumRequiredVersion>
|
||||
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
|
||||
<WebPage>publish.htm</WebPage>
|
||||
<OpenBrowserOnPublish>false</OpenBrowserOnPublish>
|
||||
<TrustUrlParameters>true</TrustUrlParameters>
|
||||
<ApplicationRevision>264</ApplicationRevision>
|
||||
<ApplicationRevision>266</ApplicationRevision>
|
||||
<ApplicationVersion>2.0.1.%2a</ApplicationVersion>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<CreateDesktopShortcut>true</CreateDesktopShortcut>
|
||||
@@ -67,6 +67,7 @@
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<UseVSHostingProcess>true</UseVSHostingProcess>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<NoWarn>CS0659, CS0162, CS0168, CS0649, CS0219, CS0169, CS0414, CS0067, CS0618</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
@@ -94,6 +95,7 @@
|
||||
</StartupObject>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Converter\AddressToStringConverter.cs" />
|
||||
<Compile Include="Converter\Features\AiConversationMessageSystemConverter.cs" />
|
||||
<Compile Include="Converter\NewlineConverter.cs" />
|
||||
<Compile Include="ServiceProxy\GeneratedAiEnhancedService.cs" />
|
||||
@@ -103,6 +105,7 @@
|
||||
<Compile Include="Services\IControlFactory.cs" />
|
||||
<Compile Include="Services\IWindowFactory.cs" />
|
||||
<Compile Include="Services\IWindowService.cs" />
|
||||
<Compile Include="ViewModel\AddressVM.cs" />
|
||||
<Compile Include="ViewModel\AiConfigVM.cs" />
|
||||
<Compile Include="View\Detail\AI\AiConfigView.xaml.cs">
|
||||
<DependentUpon>AiConfigView.xaml</DependentUpon>
|
||||
@@ -1183,6 +1186,7 @@
|
||||
<Compile Include="SchulbegleitenderDienst\WochenansichtVM.cs" />
|
||||
<Compile Include="SchulbegleitenderDienst\WochenVertretung.cs" />
|
||||
<Compile Include="Security\EncryptionUtils.cs" />
|
||||
<Compile Include="ServiceProxy\ServiceFacadeExtension.cs" />
|
||||
<Compile Include="ServiceProxy\GeneratedOperationsEnhancedService.cs" />
|
||||
<Compile Include="UploadDialog.xaml.cs">
|
||||
<DependentUpon>UploadDialog.xaml</DependentUpon>
|
||||
@@ -1262,10 +1266,13 @@
|
||||
<Compile Include="ViewModel\AiConversationVM.cs" />
|
||||
<Compile Include="ViewModel\BaseVM.cs" />
|
||||
<Compile Include="ViewModel\CustomerVermittlungArbeitVM.cs" />
|
||||
<Compile Include="ViewModel\Light\GkvAbrechnungLightVM.cs" />
|
||||
<Compile Include="ViewModel\Light\InvoiceBaseLightVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\AbstractListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\AiConversationMessageListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\AiConversationListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\CustomerVermittlungArbeitListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\Light\GkvAbrechnungLightListVM.cs" />
|
||||
<Compile Include="ViewModel\Wohnhilfe\CustomerWohnhilfeBereichBundVM.cs" />
|
||||
<Compile Include="ViewModel\Wohnhilfe\CustomerWohnhilfeBereichEinkommenUndArbeitVM.cs" />
|
||||
<Compile Include="ViewModel\Wohnhilfe\CustomerWohnhilfeBereichSozialeKontakteVM.cs" />
|
||||
@@ -1283,7 +1290,6 @@
|
||||
<Compile Include="ViewModel\DocumentTreeItemVM.cs" />
|
||||
<Compile Include="ViewModel\DokumentvorlageVM.cs" />
|
||||
<Compile Include="ViewModel\GeschenkterUrlaubstagVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\GkvAbrechnungListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\PreisListVM.cs" />
|
||||
<Compile Include="ViewModel\GkvAbrechnungVM.cs" />
|
||||
<Compile Include="ViewModel\PlatzhalterVM.cs" />
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<PublishUrlHistory>D:\Projects\beyondsoft\BeWoPlaner\Publish\|publish\|D:\Projects\beyondsoft\BeWoPlaner\PublishTest\|D:\Projects\beyondsoft\BeWoPlaner\PublishDev\|D:\Projects\beyondsoft\BeWoPlaner\Publish45\</PublishUrlHistory>
|
||||
<InstallUrlHistory>https://app.ownsoft.de/|https://app.ownsoft.de/test/|https://app.ownsoft.de/dev/|http://app.ownsoft.de/dev/|http://app.beyondsoft.de/dev/</InstallUrlHistory>
|
||||
<InstallUrlHistory>https://app.ownsoft.de/test/|https://app.ownsoft.de/|https://app.ownsoft.de/dev/|http://app.ownsoft.de/dev/|http://app.beyondsoft.de/dev/</InstallUrlHistory>
|
||||
<SupportUrlHistory />
|
||||
<UpdateUrlHistory>https://app.ownsoft.de/|https://app.ownsoft.de/bewoplaner.application/</UpdateUrlHistory>
|
||||
<BootstrapperUrlHistory />
|
||||
|
||||
@@ -83,6 +83,7 @@
|
||||
<conv:EnumTranslationConverter x:Key="EnumTranslationConverter" />
|
||||
<conv:TooltipTextConverter x:Key="TooltipTextConverter" />
|
||||
<conv:NewlineConverter x:Key="NewlineConverter" />
|
||||
<conv:AddressToStringConverter x:Key="AddressToStringConverter" />
|
||||
|
||||
<conv:ValidationConverter x:Key="ValidationConverter" />
|
||||
<conv:ValueConverterGroup x:Key="Validation2BrushConverter">
|
||||
|
||||
@@ -56,9 +56,9 @@ namespace BeWo
|
||||
public static LoginControl LoginControl;
|
||||
public static MainControl MainControl;
|
||||
|
||||
public static string ShortVersion = "3.25";
|
||||
public static string ShortVersion = "3.26";
|
||||
|
||||
public static string Version = "Version 3.25";
|
||||
public static string Version = "Version 3.26 Test";
|
||||
|
||||
public static int RenderTier = 0;
|
||||
public static bool IsInDesignMode = DesignerProperties.GetIsInDesignMode(new DependencyObject());
|
||||
@@ -631,7 +631,7 @@ namespace BeWo
|
||||
//AppSettings.AllowGkvAbrechnung = true;
|
||||
//AppSettings.AllowGkvAbrechnung = false;
|
||||
//showInfoButtonInCalender = true;
|
||||
IsInDeveloperMode = true;
|
||||
//IsInDeveloperMode = true;
|
||||
//IsInDeveloperMode = false;
|
||||
AppSettings.ModuleAiEnabled = true;
|
||||
AppSettings.ModuleAiSettingsEnabled = false;
|
||||
|
||||
29
BeWo/Converter/AddressToStringConverter.cs
Normal file
29
BeWo/Converter/AddressToStringConverter.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using BeWo.ViewModel;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Data;
|
||||
|
||||
namespace BeWo.Converter
|
||||
{
|
||||
public class AddressToStringConverter : IValueConverter
|
||||
{
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
var vm = value as AddressVM;
|
||||
|
||||
if (vm is null)
|
||||
return null;
|
||||
|
||||
return vm.ToSingleLine();
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,8 @@ using System.Diagnostics;
|
||||
|
||||
namespace BeWo.Core
|
||||
{
|
||||
[DebuggerDisplay("{GoalEntryVM.Abbreviation}: {GoalEntryVM.Description}")]
|
||||
#pragma warning disable CS0108 // Rethrow to preserve stack details
|
||||
[DebuggerDisplay("{GoalEntryVM.Abbreviation}: {GoalEntryVM.Description}")]
|
||||
public class SupportConceptGoalTreeItem : SupportConceptGoalDC
|
||||
{
|
||||
private ValueListEntryVM _GoalEntryVM;
|
||||
@@ -97,5 +98,6 @@ namespace BeWo.Core
|
||||
}
|
||||
|
||||
public ValueListEntryType GoalType => GoalEntryDC?.Type ?? GoalEntryVM.Type;
|
||||
}
|
||||
}
|
||||
#pragma warning restore CS0108 // Rethrow to preserve stack details
|
||||
}
|
||||
@@ -720,7 +720,6 @@
|
||||
<localView:ImageButton
|
||||
x:Name="button_Dokumente"
|
||||
Width="90"
|
||||
r:DemandUserRight.VisibleDemands="ViewAll, TeamView_ViewAll, TeamView_ViewMyTeams"
|
||||
Background="{StaticResource DokumenteContentBrush}"
|
||||
Click="button_Dokumente_Click"
|
||||
Content="{t:Translate DokumenteMenuItem}"
|
||||
|
||||
@@ -176,7 +176,16 @@ namespace BeWo
|
||||
{
|
||||
this.button_SchulbegleitenderDienst.Visibility = Visibility.Collapsed;
|
||||
}
|
||||
this.button_Dokumente.Visibility = Visibility.Collapsed;
|
||||
|
||||
|
||||
if (BeWoApp.LoggedOnUser != null && BeWoApp.LoggedOnUser.HasRight(UserRightType.DocumentsAllowViewAll))
|
||||
{
|
||||
this.button_Dokumente.Visibility = Visibility.Visible;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.button_Dokumente.Visibility = Visibility.Collapsed;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if DEBUG
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -301,47 +301,14 @@ namespace BeWo.ServiceProxy
|
||||
#endregion
|
||||
|
||||
#region GkvAccounting
|
||||
public static void DoGkvAccountingServiceAsync<T>(Func<IGkvAccountingService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<GkvAccountingServiceClient, IGkvAccountingService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
public static void DoGkvAccountingServiceAsync<T>(Func<IGkvAccountingService, T> pFunc, Action<T> pCallBack)
|
||||
{
|
||||
DoAsync<GkvAccountingServiceClient, IGkvAccountingService, T>(pFunc, pCallBack, true);
|
||||
}
|
||||
public static void DoGkvAccountingServiceAsyncGUI<T>(Func<IGkvAccountingService, T> pFunc, Action<T> pCallBack, Dispatcher dispatcher)
|
||||
{
|
||||
DoAsync<GkvAccountingServiceClient, IGkvAccountingService, T>(pFunc, pCallBack, null, true, dispatcher);
|
||||
}
|
||||
|
||||
public static void DoGkvAccountingServiceAsync(Action<IGkvAccountingService> pAction)
|
||||
{
|
||||
DoAsync<GkvAccountingServiceClient, IGkvAccountingService>(pAction, true);
|
||||
}
|
||||
public static void DoGkvAccountingServiceSync(Action<IGkvAccountingService> pAction)
|
||||
{
|
||||
try
|
||||
{
|
||||
pAction.Invoke(GetInstance<GkvAccountingServiceClient, IGkvAccountingService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
}
|
||||
=> DoSync<GkvAccountingServiceClient, IGkvAccountingService>(pAction);
|
||||
public static T DoGkvAccountingServiceSync<T>(Func<IGkvAccountingService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<GkvAccountingServiceClient, IGkvAccountingService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
|
||||
return default(T);
|
||||
}
|
||||
=> DoSync<GkvAccountingServiceClient, IGkvAccountingService, T>(pFunc);
|
||||
public static void DoGkvAccountingServiceAsync(Action<IGkvAccountingService> pAction, Action pCallback = null, Action<Exception> pErrorCallback = null, bool showWaitDialog = true, UserControl caller = null)
|
||||
=> DoAsync<GkvAccountingServiceClient, IGkvAccountingService>(pAction, pCallback, pErrorCallback, showWaitDialog, caller?.Dispatcher);
|
||||
public static void DoGkvAccountingServiceAsync<T>(Func<IGkvAccountingService, T> pFunc, Action<T> pCallback = null, Action<Exception> pErrorCallback = null, bool showWaitDialog = true, UserControl caller = null)
|
||||
=> DoAsync<GkvAccountingServiceClient, IGkvAccountingService, T>(pFunc, pCallback, pErrorCallback, showWaitDialog, caller?.Dispatcher);
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
48
BeWo/ServiceProxy/ServiceFacadeExtension.cs
Normal file
48
BeWo/ServiceProxy/ServiceFacadeExtension.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using DevExpress.Export.Xl;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Threading;
|
||||
|
||||
namespace BeWo.ServiceProxy
|
||||
{
|
||||
internal static class ServiceFacadeExtension
|
||||
{
|
||||
public static void DoGkvAccountingServiceAsync<T>(this UserControl uc, Func<IGkvAccountingService, T> pFunc, Action<T> pCallBack = null, bool showWaitDialog = true)
|
||||
{
|
||||
Action<T> lCallBack = null;
|
||||
|
||||
if (pCallBack != null)
|
||||
{
|
||||
lCallBack = (t) => uc.Dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
pCallBack(t);
|
||||
});
|
||||
}
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync<T>(pFunc, lCallBack);
|
||||
}
|
||||
|
||||
public static void DoGkvAccountingServiceAsync(this UserControl uc, Action<IGkvAccountingService> pAction, Action pCallBack = null, bool showWaitDialog = true)
|
||||
{
|
||||
Action lCallBack = null;
|
||||
|
||||
if (pCallBack != null)
|
||||
{
|
||||
lCallBack = () => uc.Dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
pCallBack();
|
||||
});
|
||||
}
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(pAction, lCallBack);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -63,24 +63,22 @@ namespace BeWo.View.Controls
|
||||
{
|
||||
var protokoll = datagrid_transfer.GetCurrentValue<GkvTransferProtokollDC>();
|
||||
|
||||
var oid = protokoll.GkvTransferProtokollOid.Value;
|
||||
var oid = protokoll.Oid.Value;
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsyncGUI(
|
||||
this.DoGkvAccountingServiceAsync(
|
||||
service => service.GetProtokollRawDataString(oid, BS.Shared.GkvRawDataType.Auftragsdatei),
|
||||
callback => ShowTextViewer("Auftragsdatei", callback),
|
||||
Dispatcher);
|
||||
callback => ShowTextViewer("Auftragsdatei", callback));
|
||||
}
|
||||
|
||||
private void btn_nutzdatendatei_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var protokoll = datagrid_transfer.GetCurrentValue<GkvTransferProtokollDC>();
|
||||
|
||||
var oid = protokoll.GkvTransferProtokollOid.Value;
|
||||
var oid = protokoll.Oid.Value;
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsyncGUI(
|
||||
this.DoGkvAccountingServiceAsync(
|
||||
service => service.GetProtokollRawDataString(oid, BS.Shared.GkvRawDataType.Nutzdatendatei),
|
||||
callback => ShowTextViewer("Nutzdatendatei", callback),
|
||||
Dispatcher);
|
||||
callback => ShowTextViewer("Nutzdatendatei", callback));
|
||||
}
|
||||
|
||||
private void ShowTextViewer(string title, string text)
|
||||
|
||||
@@ -3,6 +3,7 @@ using System.Activities.Statements;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
@@ -15,170 +16,173 @@ using BeWo.ServiceProxy;
|
||||
using BeWo.View.Controls;
|
||||
using BeWo.View.Windows;
|
||||
using BeWo.ViewModel;
|
||||
using BeWo.ViewModel.Light;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
|
||||
using BeWo.ViewModel.ListViewModel.Light;
|
||||
using BS.Shared;
|
||||
using BS.Shared.AppSender;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
using BS.Shared.DataContracts.Light;
|
||||
using BS.Shared.Extensions;
|
||||
using DevExpress.Data.Filtering;
|
||||
using DevExpress.Mvvm;
|
||||
using DevExpress.Utils.Extensions;
|
||||
using DevExpress.Xpf.Editors;
|
||||
using DevExpress.Xpf.Grid;
|
||||
using Microsoft.Win32;
|
||||
|
||||
namespace BeWo.View.Detail.Accounting
|
||||
{
|
||||
public partial class GkvAbrechnungOverview : BeWoView
|
||||
{
|
||||
private bool _IsRequesting = false;
|
||||
public partial class GkvAbrechnungOverview : BeWoView
|
||||
{
|
||||
private bool _IsRequesting = false;
|
||||
|
||||
private readonly NewGkvAbrechnungPopUpView _NewGkvAbrechnungPopUpView;
|
||||
private readonly GkvAbrechnungListVM _Viewmodel;
|
||||
private readonly NewGkvAbrechnungPopUpView _NewGkvAbrechnungPopUpView;
|
||||
private readonly GkvAbrechnungLightListVM _Viewmodel;
|
||||
|
||||
public GkvAbrechnungOverview()
|
||||
{
|
||||
UpdateDataGridFilterCommand = new DelegateCommand(UpdateDataGridFilter);
|
||||
public GkvAbrechnungOverview()
|
||||
{
|
||||
UpdateDataGridFilterCommand = new DelegateCommand(UpdateDataGridFilter);
|
||||
|
||||
InitializeComponent();
|
||||
InitializeComponent();
|
||||
|
||||
DownloadLinkEngine = new DownloadLinkEngine();
|
||||
DownloadLinkEngine = new DownloadLinkEngine();
|
||||
|
||||
_Viewmodel = new GkvAbrechnungListVM();
|
||||
_Viewmodel.VMList.ListChanged += (s, e) => gridView.BestFitColumns();
|
||||
_Viewmodel = new GkvAbrechnungLightListVM();
|
||||
_Viewmodel.VMList.ListChanged += (s, e) => gridView.BestFitColumns();
|
||||
|
||||
DataContext = _Viewmodel;
|
||||
DataContext = _Viewmodel;
|
||||
|
||||
//datagrid_gkvAbrechnungen.FixedFilter = new BinaryOperator("Datenaustauschreferenz", 1);
|
||||
//datagrid_gkvAbrechnungen.FixedFilter = new BinaryOperator("Datenaustauschreferenz", 1);
|
||||
|
||||
_NewGkvAbrechnungPopUpView = new NewGkvAbrechnungPopUpView();
|
||||
_NewGkvAbrechnungPopUpView.CancelButtonClicked += NewGkvAbrechnungPopUpViewCancelButtonClicked;
|
||||
_NewGkvAbrechnungPopUpView.CreateButtonClicked += NewGkvAbrechnungPopUpViewCreateButtonClicked;
|
||||
_NewGkvAbrechnungPopUpView = new NewGkvAbrechnungPopUpView();
|
||||
_NewGkvAbrechnungPopUpView.CancelButtonClicked += NewGkvAbrechnungPopUpViewCancelButtonClicked;
|
||||
_NewGkvAbrechnungPopUpView.CreateButtonClicked += NewGkvAbrechnungPopUpViewCreateButtonClicked;
|
||||
|
||||
_Viewmodel.DateTimeSpanFilter = yearMonthFilter.FilterSpan;
|
||||
}
|
||||
_Viewmodel.DateTimeSpanFilter = yearMonthFilter.FilterSpan;
|
||||
}
|
||||
|
||||
public DownloadLinkEngine DownloadLinkEngine { get; set; }
|
||||
public DelegateCommand UpdateDataGridFilterCommand { get; set; }
|
||||
public DownloadLinkEngine DownloadLinkEngine { get; set; }
|
||||
public DelegateCommand UpdateDataGridFilterCommand { get; set; }
|
||||
|
||||
private bool ShowAllInvoices => _Viewmodel.DateTimeSpanFilter is null;
|
||||
private bool ShowAllInvoices => _Viewmodel.DateTimeSpanFilter is null;
|
||||
|
||||
private void RefreshGkvAbrechnungenList()
|
||||
{
|
||||
if (_IsRequesting && ServiceFacade.IsWaiting())
|
||||
return;
|
||||
private void RefreshGkvAbrechnungenList()
|
||||
{
|
||||
if (_IsRequesting && ServiceFacade.IsWaiting())
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
_IsRequesting = true;
|
||||
_IsRequesting = true;
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(s => s.GetFilteredGkvAbrechnungen(null), UpdateGkvAbrechnungList);
|
||||
}
|
||||
catch(Exception e)
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(s => s.GetFilteredGkvAbrechnungen(null), UpdateGkvAbrechnungList);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_IsRequesting = false;
|
||||
_IsRequesting = false;
|
||||
|
||||
throw e;
|
||||
throw e;
|
||||
}
|
||||
|
||||
_IsRequesting = false;
|
||||
}
|
||||
|
||||
private void UpdateGkvAbrechnungList(IList<GkvAbrechnungDC> dcList)
|
||||
{
|
||||
this.Dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
_Viewmodel.UpdateList(dcList);
|
||||
_IsRequesting = false;
|
||||
}
|
||||
|
||||
if (datagrid_gkvAbrechnungen.Visibility != Visibility.Visible)
|
||||
datagrid_gkvAbrechnungen.Visibility = Visibility.Visible;
|
||||
private void UpdateGkvAbrechnungList(IList<GkvAbrechnungLightDC> dcList)
|
||||
{
|
||||
this.Dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
_Viewmodel.UpdateList(dcList);
|
||||
|
||||
UpdateDataGridFilter();
|
||||
});
|
||||
}
|
||||
if (datagrid_gkvAbrechnungen.Visibility != Visibility.Visible)
|
||||
datagrid_gkvAbrechnungen.Visibility = Visibility.Visible;
|
||||
|
||||
private void UpdateDataGridFilter()
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = null;
|
||||
UpdateDataGridFilter();
|
||||
});
|
||||
}
|
||||
|
||||
if (ShowAllInvoices)
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
var filterByInvoiceDate = radioFilterByInvoiceDate.IsChecked.Value;
|
||||
private void UpdateDataGridFilter()
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = null;
|
||||
|
||||
var filter_start = _Viewmodel.DateTimeSpanFilter.StartDate;
|
||||
var filter_ende = _Viewmodel.DateTimeSpanFilter.EndDate.AddDays(1).AddMilliseconds(-1);
|
||||
|
||||
if (filterByInvoiceDate)
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = CriteriaOperator.And(
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => gkv.ErstelltAm >= filter_start),
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => gkv.ErstelltAm <= filter_ende));
|
||||
}
|
||||
else
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = CriteriaOperator.Or(
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => filter_start <= gkv.AbrechnungsZeitraumStart && gkv.AbrechnungsZeitraumStart <= filter_ende),
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => filter_start <= gkv.AbrechnungsZeitraumEnde && gkv.AbrechnungsZeitraumEnde <= filter_ende),
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => gkv.AbrechnungsZeitraumStart <= filter_start && filter_ende <= gkv.AbrechnungsZeitraumEnde));
|
||||
}
|
||||
}
|
||||
|
||||
gridView.BestFitColumns();
|
||||
gridView.BestFitColumn(ColumnButtons);
|
||||
}
|
||||
|
||||
private void NewGkvAbrechnungPopUpViewCancelButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
MainControl.CloseCurrentPopUp();
|
||||
}
|
||||
private void NewGkvAbrechnungPopUpViewCreateButtonClicked(object sender, EventArgs<GkvAbrechnungDC> e)
|
||||
{
|
||||
var gkv_abrechnung = e.Data;
|
||||
|
||||
var checked_invoice_bases = _NewGkvAbrechnungPopUpView.ViewModel.InvoiceBases.Where(x => x.IsChecked);
|
||||
|
||||
if (!checked_invoice_bases.Any())
|
||||
return;
|
||||
|
||||
var success = ValidatorExtended.TryValidateGkvAbrechnung(gkv_abrechnung, checked_invoice_bases, false);
|
||||
if (!success)
|
||||
{
|
||||
var txt = "Sie haben Rechnungen mit verschiedenen Rechnungsadressen ausgewählt.";
|
||||
var result = MessageBox.Show(txt, "Hinweis", MessageBoxButton.OK);
|
||||
return;
|
||||
}
|
||||
|
||||
var already_used_invoices = checked_invoice_bases.Where(x => x.IsAlreadyInActiveGkvAbrechnung.Value);
|
||||
if (already_used_invoices.Any())
|
||||
if (ShowAllInvoices)
|
||||
{
|
||||
var txt = "Sie haben eine oder mehrere Rechnungen ausgewählt, welche bereits in einer " +
|
||||
"anderen aktiven GKV-Abrechnung enthalten sind. Möchten Sie fortfahren?";
|
||||
var result = MessageBox.Show(txt, "Hinweis", MessageBoxButton.OKCancel);
|
||||
datagrid_gkvAbrechnungen.FixedFilter = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
var filterByInvoiceDate = radioFilterByInvoiceDate.IsChecked.Value;
|
||||
|
||||
if (result != MessageBoxResult.OK)
|
||||
return;
|
||||
var filter_start = _Viewmodel.DateTimeSpanFilter.StartDate;
|
||||
var filter_ende = _Viewmodel.DateTimeSpanFilter.EndDate.AddDays(1).AddMilliseconds(-1);
|
||||
|
||||
if (filterByInvoiceDate)
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = CriteriaOperator.And(
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => gkv.ErstelltAm >= filter_start),
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => gkv.ErstelltAm <= filter_ende));
|
||||
}
|
||||
else
|
||||
{
|
||||
datagrid_gkvAbrechnungen.FixedFilter = CriteriaOperator.Or(
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => filter_start <= gkv.AbrechnungsZeitraumStart && gkv.AbrechnungsZeitraumStart <= filter_ende),
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => filter_start <= gkv.AbrechnungsZeitraumEnde && gkv.AbrechnungsZeitraumEnde <= filter_ende),
|
||||
CriteriaOperator.FromLambda<GkvAbrechnungDC>(gkv => gkv.AbrechnungsZeitraumStart <= filter_start && filter_ende <= gkv.AbrechnungsZeitraumEnde));
|
||||
}
|
||||
}
|
||||
|
||||
var bereits_bezahlt = checked_invoice_bases.Where(x => x.IsPaid);
|
||||
if (bereits_bezahlt.Any())
|
||||
{
|
||||
var txt = "Sie haben eine oder mehrere Rechnungen ausgewählt, welche bereits als 'Bezahlt' " +
|
||||
"markiert sind. Möchten Sie fortfahren?";
|
||||
var result = MessageBox.Show(txt, "Hinweis", MessageBoxButton.OKCancel);
|
||||
gridView.BestFitColumns();
|
||||
gridView.BestFitColumn(ColumnButtons);
|
||||
}
|
||||
|
||||
if (result != MessageBoxResult.OK)
|
||||
return;
|
||||
}
|
||||
private void NewGkvAbrechnungPopUpViewCancelButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
MainControl.CloseCurrentPopUp();
|
||||
}
|
||||
private void NewGkvAbrechnungPopUpViewCreateButtonClicked(object sender, EventArgs<GkvAbrechnungDC> e)
|
||||
{
|
||||
var gkv_abrechnung = e.Data;
|
||||
|
||||
MainControl.CloseCurrentPopUp();
|
||||
var checked_invoice_bases = _NewGkvAbrechnungPopUpView.ViewModel.InvoiceBases.Where(x => x.IsChecked);
|
||||
|
||||
if (!checked_invoice_bases.Any())
|
||||
return;
|
||||
|
||||
var success = ValidatorExtended.TryValidateGkvAbrechnung(gkv_abrechnung, checked_invoice_bases, false);
|
||||
if (!success)
|
||||
{
|
||||
var txt = "Sie haben Rechnungen mit verschiedenen Rechnungsadressen ausgewählt.";
|
||||
var result = MessageBox.Show(txt, "Hinweis", MessageBoxButton.OK);
|
||||
return;
|
||||
}
|
||||
|
||||
var already_used_invoices = checked_invoice_bases.Where(x => x.IsAlreadyInActiveGkvAbrechnung.Value);
|
||||
if (already_used_invoices.Any())
|
||||
{
|
||||
var txt = "Sie haben eine oder mehrere Rechnungen ausgewählt, welche bereits in einer " +
|
||||
"anderen aktiven GKV-Abrechnung enthalten sind. Möchten Sie fortfahren?";
|
||||
var result = MessageBox.Show(txt, "Hinweis", MessageBoxButton.OKCancel);
|
||||
|
||||
if (result != MessageBoxResult.OK)
|
||||
return;
|
||||
}
|
||||
|
||||
var bereits_bezahlt = checked_invoice_bases.Where(x => x.IsPaid);
|
||||
if (bereits_bezahlt.Any())
|
||||
{
|
||||
var txt = "Sie haben eine oder mehrere Rechnungen ausgewählt, welche bereits als 'Bezahlt' " +
|
||||
"markiert sind. Möchten Sie fortfahren?";
|
||||
var result = MessageBox.Show(txt, "Hinweis", MessageBoxButton.OKCancel);
|
||||
|
||||
if (result != MessageBoxResult.OK)
|
||||
return;
|
||||
}
|
||||
|
||||
MainControl.CloseCurrentPopUp();
|
||||
|
||||
var gkv_filter = new GkvAbrechnungCreateRequestDC
|
||||
{
|
||||
@@ -187,264 +191,245 @@ namespace BeWo.View.Detail.Accounting
|
||||
};
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(x => x.CreateNewGkvAbrechnung(gkv_filter),
|
||||
cb => Dispatcher.BeginInvoke(DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
if (cb.Success)
|
||||
{
|
||||
RefreshGkvAbrechnungenList();
|
||||
}
|
||||
else
|
||||
{
|
||||
BeWoWindowBuilder.ShowTitleErrorMessageBox(cb.Message, cb.TitleMessage);
|
||||
}
|
||||
}));
|
||||
}
|
||||
cb => Dispatcher.BeginInvoke(DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
if (cb.Success)
|
||||
{
|
||||
RefreshGkvAbrechnungenList();
|
||||
}
|
||||
else
|
||||
{
|
||||
BeWoWindowBuilder.ShowTitleErrorMessageBox(cb.Message, cb.TitleMessage);
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
private void YearMonthFilter_FilterSpanChanged(object sender, EventArgs<DateTimeSpan> e)
|
||||
{
|
||||
_Viewmodel.DateTimeSpanFilter = e.Data;
|
||||
UpdateDataGridFilter();
|
||||
}
|
||||
private void YearMonthFilter_FilterSpanChanged(object sender, EventArgs<DateTimeSpan> e)
|
||||
{
|
||||
_Viewmodel.DateTimeSpanFilter = e.Data;
|
||||
UpdateDataGridFilter();
|
||||
}
|
||||
|
||||
private void btn_details_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var vm = this.datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungVM>();
|
||||
private void btn_details_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var vm = this.datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungVM>();
|
||||
|
||||
var window = BeWoWindowBuilder.GetGkvAbrechnungDetailWindow(vm);
|
||||
var window = BeWoWindowBuilder.GetGkvAbrechnungDetailWindow(vm);
|
||||
|
||||
window.Closing += Detail_Window_Closing;
|
||||
window.Closing += Detail_Window_Closing;
|
||||
|
||||
window.ShowDialog();
|
||||
}
|
||||
window.ShowDialog();
|
||||
}
|
||||
|
||||
private void Detail_Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
|
||||
{
|
||||
var bewo_window = sender as BeWoWindow;
|
||||
var detail_control = bewo_window.GroupBoxContent as GkvAbrechnungDetailControl;
|
||||
private void Detail_Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
|
||||
{
|
||||
var bewo_window = sender as BeWoWindow;
|
||||
var detail_control = bewo_window.GroupBoxContent as GkvAbrechnungDetailControl;
|
||||
|
||||
var vm = detail_control.DataContext as GkvAbrechnungVM;
|
||||
var vm = detail_control.DataContext as GkvAbrechnungLightVM;
|
||||
|
||||
vm.CheckAllInvoiceBases();
|
||||
vm.CheckAllInvoiceBases();
|
||||
|
||||
var checkbox_checked = detail_control.Checkbox_Bezahlt.IsChecked;
|
||||
var textbox_text = detail_control.txt_Notice.Text;
|
||||
var checkbox_checked = detail_control.Checkbox_Bezahlt.IsChecked;
|
||||
var textbox_text = detail_control.txt_Notice.Text;
|
||||
|
||||
vm.Notice = textbox_text;
|
||||
vm.Notice = textbox_text;
|
||||
|
||||
if (vm.IsDirty)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
if (vm.IsDirty)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), dc_out =>
|
||||
{
|
||||
Dispatcher.Invoke(() => {
|
||||
vm.UpdateByDataContract(dc_out);
|
||||
});
|
||||
}, false);
|
||||
}
|
||||
}
|
||||
this.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), vm.UpdateByDataContract, false);
|
||||
}
|
||||
}
|
||||
|
||||
private void btn_send_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungVM>();
|
||||
private void btn_send_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungLightVM>();
|
||||
|
||||
var state = vm.GetState();
|
||||
var state = vm.GetState();
|
||||
|
||||
string text = "Sind Sie sicher, dass Sie die gewählte GKV-Abrechnung senden möchten?";
|
||||
string text = "Sind Sie sicher, dass Sie die gewählte GKV-Abrechnung senden möchten?";
|
||||
|
||||
if (state == GkvState.ErrorSoft)
|
||||
text = "Die gewählte GKV-Abrechnung wurde nicht erfolgreich an die Krankenkasse übertragen. Möchten Sie sie erneut senden?";
|
||||
|
||||
if (MessageBox.Show(text, "GKV-Abrechnung senden", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
|
||||
{
|
||||
vm.SendGkvAbrechnung();
|
||||
}
|
||||
}
|
||||
private void btn_delete_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungVM>();
|
||||
if (state == GkvState.ErrorSoft)
|
||||
text = "Die gewählte GKV-Abrechnung wurde nicht erfolgreich an die Krankenkasse übertragen. Möchten Sie sie erneut senden?";
|
||||
|
||||
if (MessageBox.Show("Sind Sie sicher, dass Sie die gewählte GKV-Abrechnung löschen möchten?", "GKV-Abrechnung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
|
||||
{
|
||||
_Viewmodel.VMList.Remove(vm);
|
||||
if (MessageBox.Show(text, "GKV-Abrechnung senden", MessageBoxButton.YesNo, MessageBoxImage.Warning) != MessageBoxResult.Yes)
|
||||
return;
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(s => s.DeleteGkvAbrechnung(vm.CommitToDataContract()));
|
||||
}
|
||||
}
|
||||
private void NewButton_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
GkvAbrechnungDC gkvAbrechnungDC = new GkvAbrechnungDC();
|
||||
var req = new GkvAbrechnungSendRequestDC();
|
||||
req.GkvAbrechnungOid = vm.Oid;
|
||||
|
||||
var start = DateTime.Today.AddMonths(-1);
|
||||
var first = new DateTime(start.Year, start.Month, 1);
|
||||
var last = first.AddMonths(1).AddDays(-1);
|
||||
this.DoGkvAccountingServiceAsync(s => s.SendNewGkvAbrechnung(req), vm.UpdateBySendResponse);
|
||||
}
|
||||
private void btn_delete_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungLightVM>();
|
||||
|
||||
gkvAbrechnungDC.AbrechnungsZeitraumStart = first;
|
||||
gkvAbrechnungDC.AbrechnungsZeitraumEnde = last;
|
||||
if (MessageBox.Show("Sind Sie sicher, dass Sie die gewählte GKV-Abrechnung löschen möchten?", "GKV-Abrechnung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
|
||||
{
|
||||
this.DoGkvAccountingServiceAsync(s => s.DeleteGkvAbrechnung(vm.Oid, vm.Version), () => _Viewmodel.VMList.Remove(vm));
|
||||
}
|
||||
}
|
||||
private void NewButton_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
GkvAbrechnungDC gkvAbrechnungDC = new GkvAbrechnungDC();
|
||||
|
||||
GkvAbrechnungVM gkvAbrechnungVM = new GkvAbrechnungVM(gkvAbrechnungDC);
|
||||
_NewGkvAbrechnungPopUpView.Clear();
|
||||
_NewGkvAbrechnungPopUpView.ViewModel = gkvAbrechnungVM;
|
||||
this.MainControl.ShowControlAsModalPopup(this._NewGkvAbrechnungPopUpView);
|
||||
}
|
||||
private void ReloadButton_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
RefreshGkvAbrechnungenList();
|
||||
}
|
||||
var start = DateTime.Today.AddMonths(-1);
|
||||
var first = new DateTime(start.Year, start.Month, 1);
|
||||
var last = first.AddMonths(1).AddDays(-1);
|
||||
|
||||
private void gridView_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
this.gridView.BestFitColumns();
|
||||
}
|
||||
private void gridView_ShownEditor(object sender, EditorEventArgs e)
|
||||
{
|
||||
if (e.Editor is CheckEdit)
|
||||
{
|
||||
var ed = (CheckEdit)e.Editor;
|
||||
ed.Tag = e.Row;
|
||||
}
|
||||
else if (int.TryParse(datagrid_gkvAbrechnungen.CurrentColumn.Tag?.ToString(), out int tag) && gridView.ActiveEditor is TextEdit)
|
||||
{
|
||||
((TextEdit)gridView.ActiveEditor).SetPropertyValue("MaxLength", tag);
|
||||
}
|
||||
}
|
||||
private void gridView_CellValueChanging(object sender, CellValueChangedEventArgs e)
|
||||
{
|
||||
if (e.Column is null)
|
||||
return;
|
||||
gkvAbrechnungDC.AbrechnungsZeitraumStart = first;
|
||||
gkvAbrechnungDC.AbrechnungsZeitraumEnde = last;
|
||||
|
||||
if (e.Column.FieldName == nameof(GkvAbrechnungVM.Bezahlt))
|
||||
{
|
||||
if (e.Value is bool b && e.Row is GkvAbrechnungVM vm)
|
||||
{
|
||||
SaveBezahltChange(vm, b);
|
||||
}
|
||||
}
|
||||
else if (e.Column.FieldName == nameof(GkvAbrechnungVM.UrbelegeGesendet))
|
||||
{
|
||||
if (e.Value is bool b && e.Row is GkvAbrechnungVM vm)
|
||||
{
|
||||
SaveUrbelegeGesendetChange(vm, b);
|
||||
}
|
||||
}
|
||||
}
|
||||
private void TableView_OnCustomRowAppearance(object sender, CustomRowAppearanceEventArgs e)
|
||||
{
|
||||
if (e.Property != null && e.Property.Name == "Background")
|
||||
{
|
||||
var gkvAbrechnungVM = datagrid_gkvAbrechnungen.GetRow(e.RowHandle) as GkvAbrechnungVM;
|
||||
GkvAbrechnungVM gkvAbrechnungVM = new GkvAbrechnungVM(gkvAbrechnungDC);
|
||||
_NewGkvAbrechnungPopUpView.Clear();
|
||||
_NewGkvAbrechnungPopUpView.ViewModel = gkvAbrechnungVM;
|
||||
this.MainControl.ShowControlAsModalPopup(this._NewGkvAbrechnungPopUpView);
|
||||
}
|
||||
private void ReloadButton_OnClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
RefreshGkvAbrechnungenList();
|
||||
}
|
||||
|
||||
if (gkvAbrechnungVM is null)
|
||||
return;
|
||||
private void gridView_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
this.gridView.BestFitColumns();
|
||||
}
|
||||
private void gridView_ShownEditor(object sender, EditorEventArgs e)
|
||||
{
|
||||
if (e.Editor is CheckEdit)
|
||||
{
|
||||
var ed = (CheckEdit)e.Editor;
|
||||
ed.Tag = e.Row;
|
||||
}
|
||||
else if (int.TryParse(datagrid_gkvAbrechnungen.CurrentColumn.Tag?.ToString(), out int tag) && gridView.ActiveEditor is TextEdit)
|
||||
{
|
||||
((TextEdit)gridView.ActiveEditor).SetPropertyValue("MaxLength", tag);
|
||||
}
|
||||
}
|
||||
private void gridView_CellValueChanging(object sender, CellValueChangedEventArgs e)
|
||||
{
|
||||
if (e.Column is null)
|
||||
return;
|
||||
|
||||
if (gkvAbrechnungVM.GkvState == GkvState.WaitingForKrankenkasseTooLong && BeWoApp.Mandator.ColorWaitTooLong is string colorWaiting)
|
||||
{
|
||||
e.Result = ColorExtensions.ParseSolidColorBrush(colorWaiting);
|
||||
e.Handled = true;
|
||||
}
|
||||
else if (gkvAbrechnungVM.GkvState == GkvState.WaitingForUrbelege && BeWoApp.Mandator.ColorSendUrbelege is string colorSend)
|
||||
{
|
||||
e.Result = ColorExtensions.ParseSolidColorBrush(colorSend);
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (e.Column.FieldName == nameof(GkvAbrechnungLightVM.Bezahlt))
|
||||
{
|
||||
if (e.Value is bool b && e.Row is GkvAbrechnungLightVM vm)
|
||||
{
|
||||
SaveBezahltChange(vm, b);
|
||||
}
|
||||
}
|
||||
else if (e.Column.FieldName == nameof(GkvAbrechnungLightVM.UrbelegeGesendet))
|
||||
{
|
||||
if (e.Value is bool b && e.Row is GkvAbrechnungLightVM vm)
|
||||
{
|
||||
SaveUrbelegeGesendetChange(vm, b);
|
||||
}
|
||||
}
|
||||
}
|
||||
private void TableView_OnCustomRowAppearance(object sender, CustomRowAppearanceEventArgs e)
|
||||
{
|
||||
if (e.Property != null && e.Property.Name == "Background")
|
||||
{
|
||||
var gkvAbrechnungVM = datagrid_gkvAbrechnungen.GetRow(e.RowHandle) as GkvAbrechnungLightVM;
|
||||
|
||||
private void radioFilterByInvoiceDate_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
UpdateDataGridFilter();
|
||||
}
|
||||
if (gkvAbrechnungVM is null)
|
||||
return;
|
||||
|
||||
private void SaveBezahltChange(GkvAbrechnungVM vm, bool b)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
if (gkvAbrechnungVM.GkvState == GkvState.WaitingForKrankenkasseTooLong && BeWoApp.Mandator.ColorWaitTooLong is string colorWaiting)
|
||||
{
|
||||
e.Result = ColorExtensions.ParseSolidColorBrush(colorWaiting);
|
||||
e.Handled = true;
|
||||
}
|
||||
else if (gkvAbrechnungVM.GkvState == GkvState.WaitingForUrbelege && BeWoApp.Mandator.ColorSendUrbelege is string colorSend)
|
||||
{
|
||||
e.Result = ColorExtensions.ParseSolidColorBrush(colorSend);
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dc_in.Bezahlt = b;
|
||||
private void radioFilterByInvoiceDate_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
UpdateDataGridFilter();
|
||||
}
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), dc_out =>
|
||||
{
|
||||
Dispatcher.Invoke(() => {
|
||||
vm.UpdateByDataContract(dc_out);
|
||||
});
|
||||
}, false);
|
||||
}
|
||||
private void SaveBezahltChange(GkvAbrechnungLightVM vm, bool b)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
|
||||
private void SaveUrbelegeGesendetChange(GkvAbrechnungVM vm, bool b)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
dc_in.Bezahlt = b;
|
||||
|
||||
dc_in.UrbelegeGesendet = b;
|
||||
this.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), vm.UpdateByDataContract, false);
|
||||
}
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), dc_out =>
|
||||
{
|
||||
Dispatcher.Invoke(() => {
|
||||
vm.UpdateByDataContract(dc_out);
|
||||
});
|
||||
}, false);
|
||||
}
|
||||
private void SaveUrbelegeGesendetChange(GkvAbrechnungLightVM vm, bool b)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
|
||||
private void SaveNoticeChange(GkvAbrechnungVM vm, string notice)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
dc_in.UrbelegeGesendet = b;
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), dc_out =>
|
||||
{
|
||||
Dispatcher.Invoke(() => {
|
||||
vm.UpdateByDataContract(dc_out);
|
||||
});
|
||||
}, false);
|
||||
}
|
||||
this.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), vm.UpdateByDataContract, false);
|
||||
}
|
||||
|
||||
private void gridView_CellValueChanged_1(object sender, CellValueChangedEventArgs e)
|
||||
{
|
||||
if (e.Column != null && e.Column.FieldName == "Notice")
|
||||
{
|
||||
if (e.Value is string s && e.Row is GkvAbrechnungVM vm)
|
||||
{
|
||||
SaveNoticeChange(vm, s);
|
||||
}
|
||||
}
|
||||
}
|
||||
private void SaveNoticeChange(GkvAbrechnungLightVM vm, string notice)
|
||||
{
|
||||
var dc_in = vm.CommitToDataContract();
|
||||
|
||||
this.DoGkvAccountingServiceAsync(x => x.UpdateGkvAbrechnung(dc_in), vm.UpdateByDataContract, false);
|
||||
}
|
||||
|
||||
private void gridView_CellValueChanged_1(object sender, CellValueChangedEventArgs e)
|
||||
{
|
||||
if (e.Column != null && e.Column.FieldName == "Notice")
|
||||
{
|
||||
if (e.Value is string s && e.Row is GkvAbrechnungLightVM vm)
|
||||
{
|
||||
SaveNoticeChange(vm, s);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void BeWoView_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
_Viewmodel.FirePropertyChangedItself();
|
||||
_Viewmodel.FirePropertyChangedItself();
|
||||
|
||||
if (_NewGkvAbrechnungPopUpView.PopupObjectList is object)
|
||||
_NewGkvAbrechnungPopUpView.PopupObjectList = null;
|
||||
if (_NewGkvAbrechnungPopUpView.PopupObjectList is object)
|
||||
_NewGkvAbrechnungPopUpView.PopupObjectList = null;
|
||||
|
||||
RefreshGkvAbrechnungenList();
|
||||
}
|
||||
RefreshGkvAbrechnungenList();
|
||||
}
|
||||
|
||||
private void Hyperlink_OnRequestNavigate(object sender, RequestNavigateEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungVM>();
|
||||
private void Hyperlink_OnRequestNavigate(object sender, RequestNavigateEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungLightVM>();
|
||||
|
||||
string what2send = "unterschriebene Leistungsnachweise";
|
||||
string what2send = "unterschriebene Leistungsnachweise";
|
||||
|
||||
if (vm.Verfahrensstufe != GkvVerfahrensstufe.Echt)
|
||||
what2send += " und Rechnungen";
|
||||
if (vm.Verfahrensstufe != GkvVerfahrensstufe.Echt)
|
||||
what2send += " und Rechnungen";
|
||||
|
||||
BeWoApp.ShowInfoMessage($"Begleitzettel bitte inklusive der enthaltenen Urbelege ({what2send}) ausdrucken, " +
|
||||
$"Anzahl der Urbelege noch eintragen und alles zusammen versenden.");
|
||||
BeWoApp.ShowInfoMessage($"Begleitzettel bitte inklusive der enthaltenen Urbelege ({what2send}) ausdrucken, " +
|
||||
$"Anzahl der Urbelege noch eintragen und alles zusammen versenden.");
|
||||
|
||||
BeWoUtils.NavigateToReportUri(vm.ReportLink, "Druckvorschau");
|
||||
}
|
||||
BeWoUtils.NavigateToReportUri(vm.ReportLink, "Druckvorschau");
|
||||
}
|
||||
|
||||
private void Hyperlink_OnRequestNavigate2(object sender, RequestNavigateEventArgs e)
|
||||
{
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungVM>();
|
||||
var vm = datagrid_gkvAbrechnungen.GetCurrentValue<GkvAbrechnungLightVM>();
|
||||
|
||||
string what2send = "Leistungsnachweise";
|
||||
string what2send = "Leistungsnachweise";
|
||||
|
||||
if (vm.Verfahrensstufe != GkvVerfahrensstufe.Echt)
|
||||
what2send += " und Rechnungen";
|
||||
if (vm.Verfahrensstufe != GkvVerfahrensstufe.Echt)
|
||||
what2send += " und Rechnungen";
|
||||
|
||||
BeWoApp.ShowInfoMessage($"Begleitzettel bitte inklusive der enthaltenen Urbelege ({what2send}) ausdrucken, " +
|
||||
$"Anzahl der Urbelege noch eintragen und alles zusammen versenden.");
|
||||
BeWoApp.ShowInfoMessage($"Begleitzettel bitte inklusive der enthaltenen Urbelege ({what2send}) ausdrucken, " +
|
||||
$"Anzahl der Urbelege noch eintragen und alles zusammen versenden.");
|
||||
|
||||
BeWoUtils.NavigateToReportUri(vm.ReportLink2, "Druckvorschau");
|
||||
}
|
||||
BeWoUtils.NavigateToReportUri(vm.ReportLink2, "Druckvorschau");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
@@ -11,6 +12,7 @@
|
||||
xmlns:shared="clr-namespace:BS.Shared;assembly=BS.Shared"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:val="clr-namespace:BeWo.Validation"
|
||||
xmlns:viewmodel="clr-namespace:BeWo.ViewModel"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
@@ -560,9 +562,7 @@
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="3"
|
||||
Width="360"
|
||||
Margin="0,8,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
Header="GKV-Abrechnung"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<GroupBox.Resources>
|
||||
@@ -587,9 +587,16 @@
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition
|
||||
Width="*"
|
||||
Width="10*"
|
||||
MinWidth="50"
|
||||
MaxWidth="200" />
|
||||
<ColumnDefinition Width="*" MinWidth="100" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition
|
||||
Width="10*"
|
||||
MinWidth="50"
|
||||
MaxWidth="200" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
@@ -608,6 +615,7 @@
|
||||
ToolTip="{Binding Path=IKKrankenkasse, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
ToolTipService.ShowOnDisabled="True" />
|
||||
</DockPanel>
|
||||
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
@@ -622,79 +630,42 @@
|
||||
Text="{Binding Path=Leistungserbringergruppe, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=Leistungserbringergruppe, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationLeistungserbringergruppe}}"
|
||||
ToolTipService.ShowOnDisabled="True" />
|
||||
|
||||
<Button
|
||||
x:Name="btn_ik"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="2"
|
||||
Height="auto"
|
||||
Margin="10,3,10,3"
|
||||
VerticalAlignment="Center"
|
||||
Click="button_ik_ermitteln_click"
|
||||
IsEnabled="{Binding IsIKNumberValid}"
|
||||
Style="{StaticResource PrimaryButtonSmall}"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Weitere IK's ermitteln
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}"
|
||||
ToolTip="Daten aus Kostenträgerdatei ermitteln">
|
||||
<TextBlock Margin="3" TextAlignment="Center">
|
||||
GKV-Daten<LineBreak/>ermitteln
|
||||
</TextBlock>
|
||||
</Button>
|
||||
|
||||
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center">
|
||||
IK Kostenträger
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_ikkostentrager"
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Foreground="{Binding Path=IKKostentrager, Converter={StaticResource Validation2BrushConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=IKKostentrager, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=IKKostentrager, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
ToolTipService.ShowOnDisabled="True" />
|
||||
<Label
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center">
|
||||
IK Datenannahmestelle
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_ikdatenannahmestelle"
|
||||
Grid.Row="4"
|
||||
Grid.Column="1"
|
||||
Foreground="{Binding Path=IKDatenannahmestelle, Converter={StaticResource Validation2BrushConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=IKDatenannahmestelle, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=IKDatenannahmestelle, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
ToolTipService.ShowOnDisabled="True" />
|
||||
<Label
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Bezeichnung Datenannahmestelle"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Bez. Datenannahmeste...
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_bezdatenannahmestelle"
|
||||
Grid.Row="5"
|
||||
Grid.Column="1"
|
||||
Foreground="{Binding Path=BezDatenannahmestelle, Converter={StaticResource Validation2BrushConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationBezDatenannahmestelle}}"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=BezDatenannahmestelle, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=BezDatenannahmestelle, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationBezDatenannahmestelle}}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />
|
||||
<!--<Label
|
||||
Grid.Row="6"
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Echtverfahren
|
||||
Ausblenden
|
||||
</Label>
|
||||
<CheckBox
|
||||
Grid.Row="6"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
IsChecked="{Binding Echtverfahren}"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />-->
|
||||
IsChecked="{Binding GkvAusblenden, UpdateSourceTrigger=PropertyChanged}"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />
|
||||
|
||||
<Label
|
||||
x:Name="label_verfahrensstufe"
|
||||
Grid.Row="7"
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
@@ -702,10 +673,18 @@
|
||||
</Label>
|
||||
<StackPanel
|
||||
x:Name="radiobuttons_verfahrensstufe"
|
||||
Grid.Row="7"
|
||||
Grid.Row="3"
|
||||
Grid.RowSpan="3"
|
||||
Grid.Column="1"
|
||||
Orientation="Horizontal"
|
||||
Margin="0,4,0,0"
|
||||
Orientation="Vertical"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
<StackPanel.Resources>
|
||||
<Style TargetType="RadioButton">
|
||||
<Setter Property="Padding" Value="2" />
|
||||
<Setter Property="Margin" Value="2" />
|
||||
</Style>
|
||||
</StackPanel.Resources>
|
||||
<RadioButton
|
||||
x:Name="rb_test"
|
||||
GroupName="a"
|
||||
@@ -725,18 +704,106 @@
|
||||
Echt
|
||||
</RadioButton>
|
||||
</StackPanel>
|
||||
|
||||
<Label
|
||||
Grid.Row="8"
|
||||
Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Bezeichnung Datenannahmestelle"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Ausblenden
|
||||
Datenannahmestelle
|
||||
</Label>
|
||||
<CheckBox
|
||||
Grid.Row="8"
|
||||
Grid.Column="1"
|
||||
IsChecked="{Binding GkvAusblenden, UpdateSourceTrigger=PropertyChanged}"
|
||||
<TextBox
|
||||
x:Name="txt_bezdatenannahmestelle"
|
||||
Grid.Row="0"
|
||||
Grid.Column="4"
|
||||
Foreground="{Binding Path=BezDatenannahmestelle, Converter={StaticResource Validation2BrushConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationBezDatenannahmestelle}}"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=BezDatenannahmestelle, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=BezDatenannahmestelle, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationBezDatenannahmestelle}}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Hausanschrift der Datenannahmestelle"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Hausanschrift
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_hausanschrift"
|
||||
Grid.Row="1"
|
||||
Grid.Column="4"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=HausanschriftDatenannahmestelle, Converter={StaticResource AddressToStringConverter}, UpdateSourceTrigger=PropertyChanged, Mode=OneWay}"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Postfachanschrift der Datenannahmestelle"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Postfachanschrift
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_postfachanschrift"
|
||||
Grid.Row="2"
|
||||
Grid.Column="4"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=PostfachanschriftDatenannahmestelle, Converter={StaticResource AddressToStringConverter}, UpdateSourceTrigger=PropertyChanged, Mode=OneWay}"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Großkundenanschrift der Datenannahmestelle"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}">
|
||||
Großkundenanschrift
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_großkundenanschrift"
|
||||
Grid.Row="3"
|
||||
Grid.Column="4"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=GroßkundenanschriftDatenannahmestelle, Converter={StaticResource AddressToStringConverter}, UpdateSourceTrigger=PropertyChanged, Mode=OneWay}"
|
||||
Visibility="{Binding Converter={StaticResource UserPermission2VisibleConverter}, ConverterParameter={x:Static core:SettingsKeys.AllowGkvAbrechnung}}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="4"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center">
|
||||
IK Datenannahmestelle
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_ikdatenannahmestelle"
|
||||
Grid.Row="4"
|
||||
Grid.Column="4"
|
||||
Foreground="{Binding Path=IKDatenannahmestelle, Converter={StaticResource Validation2BrushConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=IKDatenannahmestelle, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=IKDatenannahmestelle, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
ToolTipService.ShowOnDisabled="True" />
|
||||
<Label
|
||||
Grid.Row="5"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center">
|
||||
IK Kostenträger
|
||||
</Label>
|
||||
<TextBox
|
||||
x:Name="txt_ikkostentrager"
|
||||
Grid.Row="5"
|
||||
Grid.Column="4"
|
||||
Foreground="{Binding Path=IKKostentrager, Converter={StaticResource Validation2BrushConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
IsEnabled="False"
|
||||
Text="{Binding Path=IKKostentrager, UpdateSourceTrigger=PropertyChanged}"
|
||||
ToolTip="{Binding Path=IKKostentrager, Converter={StaticResource Validation2TooltipConverter}, ConverterParameter={x:Static shared:ValidationType.OrganisationIKNumber}}"
|
||||
ToolTipService.ShowOnDisabled="True" />
|
||||
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox
|
||||
|
||||
@@ -63,11 +63,12 @@ namespace BeWo.View.Detail
|
||||
tabitem_documents.Visibility = Visibility.Collapsed;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
txt_bezdatenannahmestelle.IsEnabled = true;
|
||||
txt_ikdatenannahmestelle.IsEnabled = true;
|
||||
txt_ikkostentrager.IsEnabled = true;
|
||||
#endif
|
||||
if (BeWoApp.IsInDeveloperMode)
|
||||
{
|
||||
txt_bezdatenannahmestelle.IsEnabled = true;
|
||||
txt_ikdatenannahmestelle.IsEnabled = true;
|
||||
txt_ikkostentrager.IsEnabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
public event EventHandler<EventArgs<OrganisationVM>> OrganisationSavedOrUpdated;
|
||||
@@ -360,9 +361,7 @@ namespace BeWo.View.Detail
|
||||
return;
|
||||
}
|
||||
|
||||
ViewModel.BezDatenannahmestelle = response.BezDatenannahmestelle;
|
||||
ViewModel.IKKostentrager = response.IKKostentrager;
|
||||
ViewModel.IKDatenannahmestelle = response.IKDatenannahmestelle;
|
||||
ViewModel.UpdateByGetIKResponse(response);
|
||||
|
||||
CommandManager.InvalidateRequerySuggested();
|
||||
}
|
||||
|
||||
@@ -57,7 +57,8 @@ using BeWo.View.Windows;
|
||||
|
||||
namespace BeWo.View.Detail.Zeiterfassung
|
||||
{
|
||||
public partial class ServiceRecordView2
|
||||
#pragma warning disable CS0618
|
||||
public partial class ServiceRecordView2
|
||||
{
|
||||
public static Visibility InsertedOnAndByVisibility
|
||||
{
|
||||
@@ -5134,33 +5135,34 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
}
|
||||
}
|
||||
|
||||
//public class RowBackgroundHelper
|
||||
//{
|
||||
// public static Brush GetBackground(DependencyObject obj)
|
||||
// {
|
||||
// return (Brush)obj.GetValue(BackgroundProperty);
|
||||
// }
|
||||
// public static void SetBackground(DependencyObject obj, Brush value)
|
||||
// {
|
||||
// obj.SetValue(BackgroundProperty, value);
|
||||
// }
|
||||
// public static readonly DependencyProperty BackgroundProperty =
|
||||
// DependencyProperty.RegisterAttached("Background", typeof(Brush), typeof(RowBackgroundHelper), null);
|
||||
//public class RowBackgroundHelper
|
||||
//{
|
||||
// public static Brush GetBackground(DependencyObject obj)
|
||||
// {
|
||||
// return (Brush)obj.GetValue(BackgroundProperty);
|
||||
// }
|
||||
// public static void SetBackground(DependencyObject obj, Brush value)
|
||||
// {
|
||||
// obj.SetValue(BackgroundProperty, value);
|
||||
// }
|
||||
// public static readonly DependencyProperty BackgroundProperty =
|
||||
// DependencyProperty.RegisterAttached("Background", typeof(Brush), typeof(RowBackgroundHelper), null);
|
||||
|
||||
|
||||
|
||||
// public static bool GetIsEnabled(DependencyObject obj)
|
||||
// {
|
||||
// return (bool)obj.GetValue(IsEnabledProperty);
|
||||
// }
|
||||
// public static bool GetIsEnabled(DependencyObject obj)
|
||||
// {
|
||||
// return (bool)obj.GetValue(IsEnabledProperty);
|
||||
// }
|
||||
|
||||
// public static void SetIsEnabled(DependencyObject obj, bool value)
|
||||
// {
|
||||
// obj.SetValue(IsEnabledProperty, value);
|
||||
// }
|
||||
// public static void SetIsEnabled(DependencyObject obj, bool value)
|
||||
// {
|
||||
// obj.SetValue(IsEnabledProperty, value);
|
||||
// }
|
||||
|
||||
// public static readonly DependencyProperty IsEnabledProperty =
|
||||
// DependencyProperty.RegisterAttached("IsEnabled", typeof(bool), typeof(RowBackgroundHelper), new PropertyMetadata(false));
|
||||
// public static readonly DependencyProperty IsEnabledProperty =
|
||||
// DependencyProperty.RegisterAttached("IsEnabled", typeof(bool), typeof(RowBackgroundHelper), new PropertyMetadata(false));
|
||||
|
||||
//}
|
||||
//}
|
||||
#pragma warning restore CS0618
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:controls="clr-namespace:BeWo.View.Controls"
|
||||
xmlns:doc="clr-namespace:BeWo.View.Document"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxa="http://schemas.devexpress.com/winfx/2008/xaml/accordion"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
@@ -12,7 +13,6 @@
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:master="clr-namespace:BeWo.View.Master"
|
||||
xmlns:doc="clr-namespace:BeWo.View.Document"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
@@ -516,11 +516,22 @@
|
||||
dx:ThemeManager.ThemeName="Office2010Black"
|
||||
DefaultSorting="Name">
|
||||
<dxg:TreeListControl.Columns>
|
||||
<dxg:TreeListColumn AllowSorting="True" FieldName="Name" AllowEditing="False">
|
||||
<dxg:TreeListColumn
|
||||
AllowEditing="False"
|
||||
AllowSorting="True"
|
||||
FieldName="Name">
|
||||
<dxg:TreeListColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<dxe:TextEdit x:Name="PART_Editor" EditMode="InplaceActive" Text="{Binding Path=DataContext.RowData.Row.Name, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}, UpdateSourceTrigger=PropertyChanged}"
|
||||
AcceptsReturn="False" AcceptsTab="False" TextTrimming="WordEllipsis" TextWrapping="NoWrap" SelectAllOnGotFocus="True" SelectAllOnMouseUp="True" />
|
||||
<dxe:TextEdit
|
||||
x:Name="PART_Editor"
|
||||
AcceptsReturn="False"
|
||||
AcceptsTab="False"
|
||||
EditMode="InplaceActive"
|
||||
SelectAllOnGotFocus="True"
|
||||
SelectAllOnMouseUp="True"
|
||||
Text="{Binding Path=DataContext.RowData.Row.Name, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}, UpdateSourceTrigger=PropertyChanged}"
|
||||
TextTrimming="WordEllipsis"
|
||||
TextWrapping="NoWrap" />
|
||||
</DataTemplate>
|
||||
</dxg:TreeListColumn.CellTemplate>
|
||||
</dxg:TreeListColumn>
|
||||
@@ -529,12 +540,14 @@
|
||||
<dxg:TreeListView
|
||||
x:Name="TemplateTreeView"
|
||||
AllowEditing="True"
|
||||
AutoExpandOnDrag="True"
|
||||
AutoWidth="True"
|
||||
ContextMenu="{StaticResource templatecm}"
|
||||
FocusedRowChanged="TemplateTreeView_FocusedRowChanged"
|
||||
HorizontalScrollbarVisibility="Auto"
|
||||
KeyFieldName="{Binding DocumentTreeItemVM.DocTreeItemOid}"
|
||||
LostFocus="TemplateTreeView_LostFocus"
|
||||
NavigationStyle="Cell"
|
||||
NodeExpanding="templateTreeListView_NodeExpanding"
|
||||
ParentFieldName="Binding DocumentTreeItemVM.ParentOid"
|
||||
PreviewMouseLeftButtonDown="TemplateTreeView_PreviewMouseButtonDown"
|
||||
@@ -545,10 +558,8 @@
|
||||
ShowIndicator="False"
|
||||
ShowNodeImages="True"
|
||||
ShowVerticalLines="False"
|
||||
VerticalScrollbarVisibility="Auto"
|
||||
AutoExpandOnDrag="True"
|
||||
NavigationStyle="Cell"
|
||||
ShownEditor="TemplateTreeView_ShownEditor" />
|
||||
VerticalScrollbarVisibility="Auto"
|
||||
/>
|
||||
</dxg:TreeListControl.View>
|
||||
</dxg:TreeListControl>
|
||||
<!--
|
||||
@@ -619,11 +630,11 @@
|
||||
</dxlc:LayoutGroup>
|
||||
<dxlc:LayoutGroup dxlc:LayoutControl.AllowHorizontalSizing="True">
|
||||
<GroupBox
|
||||
x:Name="GroupBoxTemplateList"
|
||||
Grid.ColumnSpan="2"
|
||||
Padding="5"
|
||||
Header=""
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
x:Name="GroupBoxTemplateList"
|
||||
Grid.ColumnSpan="2"
|
||||
Padding="5"
|
||||
Header=""
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -634,54 +645,54 @@
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<dxg:GridControl
|
||||
x:Name="datagrid_templates"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="2,3,5,5">
|
||||
x:Name="datagrid_templates"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="2,3,5,5">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn
|
||||
Width="24"
|
||||
FieldName="FileName"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
Width="24"
|
||||
FieldName="FileName"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="1"
|
||||
VerticalAlignment="Center"
|
||||
Click="TemplateDeleteButton_Click"
|
||||
Content="r"
|
||||
FontFamily="Webdings" />
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="1"
|
||||
VerticalAlignment="Center"
|
||||
Click="TemplateDeleteButton_Click"
|
||||
Content="r"
|
||||
FontFamily="Webdings" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn
|
||||
Width="*"
|
||||
AllowEditing="False"
|
||||
FieldName="Name"
|
||||
Header="Name" />
|
||||
Width="*"
|
||||
AllowEditing="False"
|
||||
FieldName="Name"
|
||||
Header="Name" />
|
||||
<dxg:GridColumn
|
||||
Width="*"
|
||||
AllowEditing="False"
|
||||
FieldName="Beschreibung"
|
||||
Header="Beschreibung" />
|
||||
Width="*"
|
||||
AllowEditing="False"
|
||||
FieldName="Beschreibung"
|
||||
Header="Beschreibung" />
|
||||
<dxg:GridColumn
|
||||
Width="80"
|
||||
FieldName="FileEdit"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
Width="80"
|
||||
FieldName="FileEdit"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
Width="75"
|
||||
Height="23"
|
||||
VerticalAlignment="Center"
|
||||
Click="EditTemplate_Click"
|
||||
Content="Bearbeiten" />
|
||||
Width="75"
|
||||
Height="23"
|
||||
VerticalAlignment="Center"
|
||||
Click="EditTemplate_Click"
|
||||
Content="Bearbeiten" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
@@ -705,13 +716,13 @@
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView
|
||||
x:Name="TemplateTableView"
|
||||
AutoWidth="false"
|
||||
NavigationStyle="Row"
|
||||
ShowGroupPanel="False"
|
||||
ShowGroupedColumns="false"
|
||||
ShowTotalSummary="False"
|
||||
RowDoubleClick="TemplateTableView_RowDoubleClick"/>
|
||||
x:Name="TemplateTableView"
|
||||
AutoWidth="false"
|
||||
NavigationStyle="Row"
|
||||
RowDoubleClick="TemplateTableView_RowDoubleClick"
|
||||
ShowGroupPanel="False"
|
||||
ShowGroupedColumns="false"
|
||||
ShowTotalSummary="False" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
</Grid>
|
||||
|
||||
@@ -45,7 +45,9 @@ using System.ComponentModel;
|
||||
|
||||
namespace BeWo.View.Document
|
||||
{
|
||||
public partial class DokumenteView
|
||||
|
||||
#pragma warning disable CS0618
|
||||
public partial class DokumenteView
|
||||
{
|
||||
private string _UploadFileName;
|
||||
private string _NormalFileName = null;
|
||||
@@ -1439,6 +1441,8 @@ namespace BeWo.View.Document
|
||||
row.DataContract.Node.Nodes.Add(dc.Node);
|
||||
row.DataContract.Node.IsExpanded = true;
|
||||
row.DataContract.Node.IsExpandButtonVisible = DefaultBoolean.True;
|
||||
|
||||
EditTemplateFolder(node);
|
||||
}
|
||||
else if (twi.Header.Equals("Umbenennen"))
|
||||
{
|
||||
@@ -1464,6 +1468,15 @@ namespace BeWo.View.Document
|
||||
}
|
||||
}
|
||||
|
||||
private void EditTemplateFolder(TreeListNode node)
|
||||
{
|
||||
//var vm = node.Content as DocumentTreeItemVM;
|
||||
//template_treeview_control.SelectItem(node);
|
||||
//var test = template_treeview_control.SelectedItems;
|
||||
template_treeview_control.View.FocusedNode = node;
|
||||
|
||||
EditSelectedTemplateFolder();
|
||||
}
|
||||
|
||||
private DokumentvorlageVM EditTemplate(DokumentvorlageVM vm)
|
||||
{
|
||||
@@ -2044,20 +2057,12 @@ namespace BeWo.View.Document
|
||||
popup_UploadFiles.IsOpen = false;
|
||||
}
|
||||
|
||||
private void DocumentsTreeView_ShownEditor(object sender, TreeListEditorEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void TemplateTreeView_ShownEditor(object sender, TreeListEditorEventArgs e)
|
||||
{
|
||||
//e.Editor.SelectAll();
|
||||
}
|
||||
|
||||
private void TemplateTableView_RowDoubleClick(object sender, RowDoubleClickEventArgs e)
|
||||
{
|
||||
EditSelectedTemplate();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
internal class DocumentRootNodeConfig
|
||||
@@ -2105,3 +2110,4 @@ namespace BeWo.View.Document
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma warning restore CS0618
|
||||
@@ -68,7 +68,7 @@ namespace BeWo.ViewModel
|
||||
|
||||
protected abstract DCType MapToDataContract(DCType pDataContract, bool doCommit);
|
||||
|
||||
internal virtual void UpdateByDataContract(DCType pDataContract)
|
||||
public virtual void UpdateByDataContract(DCType pDataContract)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
@@ -84,5 +84,22 @@ namespace BeWo.ViewModel
|
||||
_DirtyProps.Add(pPropName);
|
||||
}
|
||||
}
|
||||
|
||||
protected bool SetProperty<T>(ref T field, T value, string propertyName, Func<T> originalValueProvider = null)
|
||||
{
|
||||
if (EqualityComparer<T>.Default.Equals(field, value))
|
||||
return false;
|
||||
|
||||
field = value;
|
||||
|
||||
if (originalValueProvider != null)
|
||||
{
|
||||
bool isDirty = !EqualityComparer<T>.Default.Equals(originalValueProvider(), value);
|
||||
StoreDirtyInformation(isDirty, propertyName);
|
||||
}
|
||||
|
||||
FirePropertyChanged(propertyName);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
149
BeWo/ViewModel/AddressVM.cs
Normal file
149
BeWo/ViewModel/AddressVM.cs
Normal file
@@ -0,0 +1,149 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using BS.Shared.DataContracts;
|
||||
|
||||
namespace BeWo.ViewModel
|
||||
{
|
||||
public class AddressVM : AbstractDCMapperVM<AddressDC>
|
||||
{
|
||||
private string _AddressLine1;
|
||||
private string _AddressLine2;
|
||||
private string _Country;
|
||||
private long? _L_Version;
|
||||
private decimal? _Latitude;
|
||||
private decimal? _Longitude;
|
||||
private string _PostalCode;
|
||||
private string _State;
|
||||
private string _Street;
|
||||
private string _Town;
|
||||
|
||||
public AddressVM() : this(new AddressDC()) { }
|
||||
public AddressVM(AddressDC dc) : base(dc, dc.Oid)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public string AddressLine1
|
||||
{
|
||||
get => _AddressLine1;
|
||||
set => SetProperty(ref _AddressLine1, value, nameof(AddressLine1), () => DataContract.AddressLine1);
|
||||
}
|
||||
|
||||
public string AddressLine2
|
||||
{
|
||||
get => _AddressLine2;
|
||||
set => SetProperty(ref _AddressLine2, value, nameof(AddressLine2), () => DataContract.AddressLine2);
|
||||
}
|
||||
|
||||
public string Country
|
||||
{
|
||||
get => _Country;
|
||||
set => SetProperty(ref _Country, value, nameof(Country), () => DataContract.Country);
|
||||
}
|
||||
|
||||
public long? L_Version
|
||||
{
|
||||
get => _L_Version;
|
||||
set => SetProperty(ref _L_Version, value, nameof(L_Version), () => DataContract.L_Version);
|
||||
}
|
||||
|
||||
public decimal? Latitude
|
||||
{
|
||||
get => _Latitude;
|
||||
set => SetProperty(ref _Latitude, value, nameof(Latitude), () => DataContract.Latitude);
|
||||
}
|
||||
|
||||
public decimal? Longitude
|
||||
{
|
||||
get => _Longitude;
|
||||
set => SetProperty(ref _Longitude, value, nameof(Longitude), () => DataContract.Longitude);
|
||||
}
|
||||
|
||||
public string PostalCode
|
||||
{
|
||||
get => _PostalCode;
|
||||
set => SetProperty(ref _PostalCode, value, nameof(PostalCode), () => DataContract.PostalCode);
|
||||
}
|
||||
|
||||
public string State
|
||||
{
|
||||
get => _State;
|
||||
set => SetProperty(ref _State, value, nameof(State), () => DataContract.State);
|
||||
}
|
||||
|
||||
public string Street
|
||||
{
|
||||
get => _Street;
|
||||
set => SetProperty(ref _Street, value, nameof(Street), () => DataContract.Street);
|
||||
}
|
||||
|
||||
public string Town
|
||||
{
|
||||
get => _Town;
|
||||
set => SetProperty(ref _Town, value, nameof(Town), () => DataContract.Town);
|
||||
}
|
||||
|
||||
protected override void InitByDataContract(AddressDC pDataContract)
|
||||
{
|
||||
_AddressLine1 = pDataContract.AddressLine1;
|
||||
_AddressLine2 = pDataContract.AddressLine2;
|
||||
_Country = pDataContract.Country;
|
||||
_L_Version = pDataContract.L_Version;
|
||||
_Latitude = pDataContract.Latitude;
|
||||
_Longitude = pDataContract.Longitude;
|
||||
_PostalCode = pDataContract.PostalCode;
|
||||
_State = pDataContract.State;
|
||||
_Street = pDataContract.Street;
|
||||
_Town = pDataContract.Town;
|
||||
}
|
||||
|
||||
protected override AddressDC MapToDataContract(AddressDC pDataContract, bool doCommit)
|
||||
{
|
||||
pDataContract.AddressLine1 = _AddressLine1;
|
||||
pDataContract.AddressLine2 = _AddressLine2;
|
||||
pDataContract.Country = _Country;
|
||||
pDataContract.L_Version = _L_Version;
|
||||
pDataContract.Latitude = _Latitude;
|
||||
pDataContract.Longitude = _Longitude;
|
||||
pDataContract.PostalCode = _PostalCode;
|
||||
pDataContract.State = _State;
|
||||
pDataContract.Street = _Street;
|
||||
pDataContract.Town = _Town;
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
public string ToSingleLine()
|
||||
{
|
||||
var parts = new List<string>
|
||||
{
|
||||
AddressLine1,
|
||||
AddressLine2,
|
||||
Street,
|
||||
PostalCode,
|
||||
Town,
|
||||
State,
|
||||
Country
|
||||
};
|
||||
|
||||
return string.Join(", ", parts.Where(p => !string.IsNullOrWhiteSpace(p)));
|
||||
}
|
||||
|
||||
public override void UpdateByDataContract(AddressDC pDataContract)
|
||||
{
|
||||
AddressLine1 = pDataContract.AddressLine1;
|
||||
AddressLine2 = pDataContract.AddressLine2;
|
||||
Country = pDataContract.Country;
|
||||
L_Version = pDataContract.L_Version;
|
||||
Latitude = pDataContract.Latitude;
|
||||
Longitude = pDataContract.Longitude;
|
||||
PostalCode = pDataContract.PostalCode;
|
||||
State = pDataContract.State;
|
||||
Street = pDataContract.Street;
|
||||
Town = pDataContract.Town;
|
||||
|
||||
FirePropertyChangedItself();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -99,7 +99,7 @@ namespace BeWo.ViewModel
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
internal override void UpdateByDataContract(AiConversationDC pDataContract)
|
||||
public override void UpdateByDataContract(AiConversationDC pDataContract)
|
||||
{
|
||||
DataContract = pDataContract;
|
||||
|
||||
|
||||
@@ -50,21 +50,12 @@ namespace BeWo.ViewModel
|
||||
private BindingList<InvoiceBaseVM> _InvoiceBases;
|
||||
private OrganisationDC _Organisation;
|
||||
|
||||
private List<GkvTransferProtokollDC> _TransferProtokolle;
|
||||
private List<GkvTransferProtokollDC> _Protokolle;
|
||||
|
||||
public GkvAbrechnungVM(GkvAbrechnungDC pDC) : base(pDC, !pDC.GkvAbrechnungOid.HasValue)
|
||||
public GkvAbrechnungVM(GkvAbrechnungDC pDC) : base(pDC, !pDC.Oid.HasValue)
|
||||
{
|
||||
_InvoiceBases = new BindingList<InvoiceBaseVM>();
|
||||
|
||||
CheckAllInvoiceBasesCommand = new DelegateCommand(CheckAllInvoiceBases, HasAnyInvoiceBases);
|
||||
UncheckAllInvoiceBasesCommand = new DelegateCommand(UncheckAllInvoicesBases, HasAnyInvoiceBases);
|
||||
PrintSelectedInvoiceBasesCommand = new DelegateCommand(PrintSelectedInvoiceBases, HasAnySelectedInvoiceBases);
|
||||
}
|
||||
|
||||
public DelegateCommand CheckAllInvoiceBasesCommand { get; set; }
|
||||
public DelegateCommand UncheckAllInvoiceBasesCommand { get; set; }
|
||||
public DelegateCommand PrintSelectedInvoiceBasesCommand { get; set; }
|
||||
|
||||
#region
|
||||
|
||||
public string AbrechnungsZeitraum => $"{AbrechnungsZeitraumStart.Value.ToShortDateString()} - {AbrechnungsZeitraumEnde.Value.ToShortDateString()}";
|
||||
@@ -126,7 +117,7 @@ namespace BeWo.ViewModel
|
||||
if (this.AreDifferent(this._GkvAbrechnungOid, value))
|
||||
{
|
||||
this._GkvAbrechnungOid = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.GkvAbrechnungOid, value), nameof(GkvAbrechnungOid));
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Oid, value), nameof(GkvAbrechnungOid));
|
||||
this.FirePropertyChanged(nameof(GkvAbrechnungOid));
|
||||
}
|
||||
}
|
||||
@@ -140,7 +131,7 @@ namespace BeWo.ViewModel
|
||||
if (this.AreDifferent(this._GkvAbrechnungVersion, value))
|
||||
{
|
||||
this._GkvAbrechnungVersion = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.GkvAbrechnungVersion, value), nameof(GkvAbrechnungVersion));
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Version, value), nameof(GkvAbrechnungVersion));
|
||||
this.FirePropertyChanged(nameof(GkvAbrechnungVersion));
|
||||
}
|
||||
}
|
||||
@@ -233,13 +224,13 @@ namespace BeWo.ViewModel
|
||||
get { return _InvoiceBases; }
|
||||
set { _InvoiceBases = value; }
|
||||
}
|
||||
public List<GkvTransferProtokollDC> TransferProtokolle
|
||||
public List<GkvTransferProtokollDC> Protokolle
|
||||
{
|
||||
get { return _TransferProtokolle; }
|
||||
get { return _Protokolle; }
|
||||
set
|
||||
{
|
||||
_TransferProtokolle = value;
|
||||
FirePropertyChanged(nameof(TransferProtokolle));
|
||||
_Protokolle = value;
|
||||
FirePropertyChanged(nameof(Protokolle));
|
||||
FirePropertyChanged(nameof(GkvState));
|
||||
FirePropertyChanged(nameof(Fehlermeldung));
|
||||
FirePropertyChanged(nameof(LastTransferDateTime));
|
||||
@@ -287,7 +278,6 @@ namespace BeWo.ViewModel
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
public IGkvTransferProtokoll LastTransferProtokoll => TransferProtokolle?.LastOrDefault();
|
||||
|
||||
public string RecipientString
|
||||
{
|
||||
@@ -352,17 +342,20 @@ namespace BeWo.ViewModel
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerable<IGkvTransferProtokoll> TransferProtokolle => Protokolle;
|
||||
public IGkvTransferProtokoll LastTransferProtokoll => Protokolle?.LastOrDefault();
|
||||
|
||||
public bool IsFormularEnabled => LastTransferProtokoll is object ;
|
||||
public bool IsUrbelegeEditEnabled => LastTransferProtokoll is object;
|
||||
public bool IsBezahltEditEnabled => UrbelegeGesendet;
|
||||
|
||||
public GkvAbrechnungReportRequest ReportRequest
|
||||
=> new GkvAbrechnungReportRequest(DataContract.GkvAbrechnungOid.Value, false);
|
||||
=> new GkvAbrechnungReportRequest(DataContract.Oid.Value, false);
|
||||
public string ReportLink
|
||||
=> BeWoApp.SiteOfOrigin + "/ReportView.aspx" + ReportRequest.GetUrlPathString();
|
||||
|
||||
public GkvAbrechnungReportRequest ReportRequest2
|
||||
=> new GkvAbrechnungReportRequest(DataContract.GkvAbrechnungOid.Value, true);
|
||||
=> new GkvAbrechnungReportRequest(DataContract.Oid.Value, true);
|
||||
public string ReportLink2
|
||||
=> BeWoApp.SiteOfOrigin + "/ReportView.aspx" + ReportRequest2.GetUrlPathString();
|
||||
|
||||
@@ -371,9 +364,9 @@ namespace BeWo.ViewModel
|
||||
public bool IsReady2Create
|
||||
=> InvoiceBases?.Where(x => x.IsChecked).Any() ?? false;
|
||||
|
||||
public void UpdateByDataContract(GkvAbrechnungDC pDataContract)
|
||||
public override void UpdateByDataContract(GkvAbrechnungDC pDataContract)
|
||||
{
|
||||
GkvAbrechnungVersion = pDataContract.GkvAbrechnungVersion;
|
||||
GkvAbrechnungVersion = pDataContract.Version;
|
||||
|
||||
Notice = pDataContract.Notice;
|
||||
|
||||
@@ -393,8 +386,8 @@ namespace BeWo.ViewModel
|
||||
|
||||
_ErstelltAm = pDataContract.ErstelltAm;
|
||||
|
||||
_GkvAbrechnungOid = pDataContract.GkvAbrechnungOid;
|
||||
_GkvAbrechnungVersion = pDataContract.GkvAbrechnungVersion;
|
||||
_GkvAbrechnungOid = pDataContract.Oid;
|
||||
_GkvAbrechnungVersion = pDataContract.Version;
|
||||
|
||||
_Notice = pDataContract.Notice;
|
||||
|
||||
@@ -411,7 +404,7 @@ namespace BeWo.ViewModel
|
||||
|
||||
if (pDataContract.TransferProtokolle != null)
|
||||
{
|
||||
_TransferProtokolle = new List<GkvTransferProtokollDC>(pDataContract.TransferProtokolle);
|
||||
_Protokolle = new List<GkvTransferProtokollDC>(pDataContract.Protokolle);
|
||||
}
|
||||
|
||||
_Organisation = pDataContract.Organisation;
|
||||
@@ -426,8 +419,8 @@ namespace BeWo.ViewModel
|
||||
|
||||
pDataContract.ErstelltAm = _ErstelltAm;
|
||||
|
||||
pDataContract.GkvAbrechnungOid = _GkvAbrechnungOid;
|
||||
pDataContract.GkvAbrechnungVersion = _GkvAbrechnungVersion;
|
||||
pDataContract.Oid = _GkvAbrechnungOid;
|
||||
pDataContract.Version = _GkvAbrechnungVersion;
|
||||
|
||||
pDataContract.Notice = _Notice;
|
||||
pDataContract.Betrag = _Betrag;
|
||||
@@ -441,97 +434,9 @@ namespace BeWo.ViewModel
|
||||
pDataContract.InvoiceBases = _InvoiceBases2.Where(x => x.IsChecked).Select(vm => vm.CommitToDataContract()).ToList();
|
||||
|
||||
pDataContract.Organisation = _Organisation;
|
||||
pDataContract.TransferProtokolle = _TransferProtokolle?.ToList();
|
||||
pDataContract.Protokolle = _Protokolle?.ToList();
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
public void SendGkvAbrechnung()
|
||||
{
|
||||
var req = new GkvAbrechnungSendRequestDC();
|
||||
|
||||
req.GkvAbrechnungOid = GkvAbrechnungOid.Value;
|
||||
|
||||
ServiceFacade.DoGkvAccountingServiceAsync(s => s.SendNewGkvAbrechnung(req),
|
||||
cb => Application.Current.Dispatch(() => UpdateBySendResponse(cb)), true);
|
||||
}
|
||||
public void UpdateBySendResponse(GkvAbrechnungSendResponseDC cb)
|
||||
{
|
||||
var dc = cb.GkvAbrechnungDC;
|
||||
|
||||
if (dc is null)
|
||||
{
|
||||
MessageBox.Show(Application.Current.MainWindow, cb.Message);
|
||||
return;
|
||||
}
|
||||
|
||||
GkvAbrechnungVersion = dc.GkvAbrechnungVersion;
|
||||
TransferProtokolle = dc.TransferProtokolle.ToList();
|
||||
|
||||
IsReady2Send = dc.IsReady2Send;
|
||||
SendTooltip = dc.SendTooltip;
|
||||
|
||||
var protokoll = cb.TransferProtokoll;
|
||||
|
||||
if (protokoll.ResultType == GkvTransferResultType.FailSoft)
|
||||
{
|
||||
MessageBox.Show(Application.Current.MainWindow, protokoll.Fehlernachricht, protokoll.Fehlertitel);
|
||||
}
|
||||
else if (protokoll.ResultType == GkvTransferResultType.FailFatal)
|
||||
{
|
||||
BeWoApp.ShowError(protokoll.Fehlertitel + ": " + protokoll.Fehlernachricht, null, false, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show(Application.Current.MainWindow, "Ihre Sendung wurde korrekt übertragen");
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasAnyInvoiceBases()
|
||||
{
|
||||
return InvoiceBases2 is object && InvoiceBases2.Any();
|
||||
}
|
||||
|
||||
public void CheckAllInvoiceBases()
|
||||
{
|
||||
if (!HasAnyInvoiceBases())
|
||||
return;
|
||||
|
||||
foreach (var invoice_base in InvoiceBases2)
|
||||
{
|
||||
invoice_base.IsChecked = true;
|
||||
}
|
||||
}
|
||||
|
||||
internal void UncheckAllInvoicesBases()
|
||||
{
|
||||
if (!HasAnyInvoiceBases())
|
||||
return;
|
||||
|
||||
foreach (var invoice_base in InvoiceBases2)
|
||||
{
|
||||
invoice_base.IsChecked = false;
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasAnySelectedInvoiceBases()
|
||||
{
|
||||
return HasAnyInvoiceBases() && getSelectedInvoiceBases().Any();
|
||||
}
|
||||
|
||||
internal void PrintSelectedInvoiceBases()
|
||||
{
|
||||
var selected = new List<long>(getSelectedInvoiceBases());
|
||||
|
||||
if (!selected.Any())
|
||||
return;
|
||||
|
||||
ServiceFacade.DoReportServiceAsync(s => s.CreateInvoiceListReport(selected), ms => BeWoApp.MainControl.Dispatch(() => BeWoUtils.ShowReportWindow(ms, "Rechnungen")));
|
||||
}
|
||||
|
||||
private IEnumerable<long> getSelectedInvoiceBases()
|
||||
{
|
||||
return InvoiceBases2.Where(x => x.IsChecked).Select(x => x.DataContract.InvoiceBaseOid.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
521
BeWo/ViewModel/Light/GkvAbrechnungLightVM.cs
Normal file
521
BeWo/ViewModel/Light/GkvAbrechnungLightVM.cs
Normal file
@@ -0,0 +1,521 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Windows;
|
||||
using System.Windows.Threading;
|
||||
using BeWo.Core;
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.Validation;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
using BS.Shared.DataContracts.Light;
|
||||
using BS.Shared.Extensions;
|
||||
using BS.Shared.Interface;
|
||||
using BS.Shared.ReportRequests;
|
||||
using DevExpress.Mvvm;
|
||||
using DevExpress.Xpf.Core;
|
||||
|
||||
namespace BeWo.ViewModel.Light
|
||||
{
|
||||
public class GkvAbrechnungLightVM : AbstractDCMapperVM<GkvAbrechnungLightDC>, IGkvAbrechnung
|
||||
{
|
||||
public static string PropertyName_AbrechnungsZeitraumStart = "AbrechnungsZeitraumStart";
|
||||
public static string PropertyName_AbrechnungsZeitraumEnde = "AbrechnungsZeitraumEnde";
|
||||
|
||||
public static string PropertyName_ErstelltAm = "ErstelltAm";
|
||||
|
||||
private long _Oid;
|
||||
private long _Version;
|
||||
private string _Notice;
|
||||
|
||||
private long _OrganisationOid;
|
||||
private string _OrganisationName;
|
||||
|
||||
private DateTime? _AbrechnungsZeitraumStart;
|
||||
private DateTime? _AbrechnungsZeitraumEnde;
|
||||
|
||||
private DateTime _ErstelltAm;
|
||||
|
||||
private decimal _Betrag;
|
||||
private bool _Bezahlt;
|
||||
private bool _UrbelegeGesendet;
|
||||
private GkvVerfahrensstufe _Verfahrensstufe;
|
||||
|
||||
internal bool _IsChecked;
|
||||
|
||||
private bool _IsReady2Send;
|
||||
private string _SendTooltip;
|
||||
|
||||
private List<GkvTransferProtokollLightDC> _Protokolle;
|
||||
|
||||
public GkvAbrechnungLightVM(GkvAbrechnungLightDC pDC) : base(pDC, false)
|
||||
{
|
||||
InvoiceBases = new BindingList<InvoiceBaseLightVM>();
|
||||
|
||||
CheckAllInvoiceBasesCommand = new DelegateCommand(CheckAllInvoiceBases, HasAnyInvoiceBases);
|
||||
UncheckAllInvoiceBasesCommand = new DelegateCommand(UncheckAllInvoicesBases, HasAnyInvoiceBases);
|
||||
PrintSelectedInvoiceBasesCommand = new DelegateCommand(PrintSelectedInvoiceBases, HasAnySelectedInvoiceBases);
|
||||
}
|
||||
|
||||
public DelegateCommand CheckAllInvoiceBasesCommand { get; set; }
|
||||
public DelegateCommand UncheckAllInvoiceBasesCommand { get; set; }
|
||||
public DelegateCommand PrintSelectedInvoiceBasesCommand { get; set; }
|
||||
|
||||
#region
|
||||
|
||||
public string AbrechnungsZeitraum => $"{AbrechnungsZeitraumStart.Value.ToShortDateString()} - {AbrechnungsZeitraumEnde.Value.ToShortDateString()}";
|
||||
|
||||
public DateTime? AbrechnungsZeitraumStart
|
||||
{
|
||||
get { return this._AbrechnungsZeitraumStart; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._AbrechnungsZeitraumStart, value))
|
||||
{
|
||||
this._AbrechnungsZeitraumStart = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.AbrechnungsZeitraumStart, value), PropertyName_AbrechnungsZeitraumStart);
|
||||
this.FirePropertyChanged(PropertyName_AbrechnungsZeitraumStart);
|
||||
|
||||
// RE893748923
|
||||
// var day = value.Value.Day;
|
||||
// AbrechnungsZeitraumEnde = value.Value.AddDays(1 - day).AddMonths(1).AddDays(-1);
|
||||
}
|
||||
}
|
||||
}
|
||||
public DateTime? AbrechnungsZeitraumEnde
|
||||
{
|
||||
get { return this._AbrechnungsZeitraumEnde; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._AbrechnungsZeitraumEnde, value))
|
||||
{
|
||||
this._AbrechnungsZeitraumEnde = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.AbrechnungsZeitraumEnde, value), PropertyName_AbrechnungsZeitraumEnde);
|
||||
this.FirePropertyChanged(PropertyName_AbrechnungsZeitraumEnde);
|
||||
}
|
||||
}
|
||||
}
|
||||
public DateTime ErstelltAm
|
||||
{
|
||||
get { return this._ErstelltAm; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_ErstelltAm, value))
|
||||
{
|
||||
_ErstelltAm = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.ErstelltAm, value), nameof(ErstelltAm));
|
||||
FirePropertyChanged(nameof(ErstelltAm));
|
||||
FirePropertyChanged(nameof(ErstelltAmDate));
|
||||
}
|
||||
}
|
||||
}
|
||||
public DateTime ErstelltAmDate => ErstelltAm.Date;
|
||||
public long Oid
|
||||
{
|
||||
get { return this._Oid; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Oid, value))
|
||||
{
|
||||
this._Oid = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Oid, value), nameof(Oid));
|
||||
this.FirePropertyChanged(nameof(Oid));
|
||||
}
|
||||
}
|
||||
}
|
||||
public long Version
|
||||
{
|
||||
get { return this._Oid; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Version, value))
|
||||
{
|
||||
this._Version = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Version, value), nameof(Version));
|
||||
this.FirePropertyChanged(nameof(Version));
|
||||
}
|
||||
}
|
||||
}
|
||||
public string Notice
|
||||
{
|
||||
get { return this._Notice; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Notice, value))
|
||||
{
|
||||
this._Notice = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Notice, value), nameof(Notice));
|
||||
this.FirePropertyChanged(nameof(Notice));
|
||||
}
|
||||
}
|
||||
}
|
||||
public decimal Betrag
|
||||
{
|
||||
get { return this._Betrag; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Betrag, value))
|
||||
{
|
||||
this._Betrag = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Betrag, value), nameof(Betrag));
|
||||
this.FirePropertyChanged(nameof(Betrag));
|
||||
}
|
||||
}
|
||||
}
|
||||
public bool Bezahlt
|
||||
{
|
||||
get { return _Bezahlt; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(this._Bezahlt, value))
|
||||
{
|
||||
_Bezahlt = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.Bezahlt, value), nameof(Bezahlt));
|
||||
FirePropertyChanged(nameof(Bezahlt));
|
||||
FirePropertyChanged(nameof(GkvState));
|
||||
FirePropertyChanged(nameof(Fehlermeldung));
|
||||
}
|
||||
}
|
||||
}
|
||||
public bool UrbelegeGesendet
|
||||
{
|
||||
get { return _UrbelegeGesendet; }
|
||||
|
||||
set
|
||||
{
|
||||
if (!AreDifferent(_UrbelegeGesendet, value))
|
||||
return;
|
||||
_UrbelegeGesendet = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.UrbelegeGesendet, value), nameof(UrbelegeGesendet));
|
||||
FirePropertyChanged(nameof(UrbelegeGesendet));
|
||||
FirePropertyChanged(nameof(GkvState));
|
||||
FirePropertyChanged(nameof(IsBezahltEditEnabled));
|
||||
}
|
||||
}
|
||||
public GkvState GkvState
|
||||
{
|
||||
get { return this.GetState(); }
|
||||
}
|
||||
|
||||
public bool IsChecked
|
||||
{
|
||||
get { return _IsChecked; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_IsChecked, value))
|
||||
{
|
||||
_IsChecked = value;
|
||||
FirePropertyChanged(nameof(IsChecked));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public BindingList<InvoiceBaseLightVM> InvoiceBases { get; set; }
|
||||
|
||||
public List<GkvTransferProtokollLightDC> Protokolle
|
||||
{
|
||||
get { return _Protokolle; }
|
||||
set
|
||||
{
|
||||
_Protokolle = value;
|
||||
FirePropertyChanged(nameof(Protokolle));
|
||||
FirePropertyChanged(nameof(GkvState));
|
||||
FirePropertyChanged(nameof(Fehlermeldung));
|
||||
FirePropertyChanged(nameof(LastTransferDateTime));
|
||||
}
|
||||
}
|
||||
public long OrganisationOid
|
||||
{
|
||||
get { return _OrganisationOid; }
|
||||
|
||||
set
|
||||
{
|
||||
if (!AreDifferent(_OrganisationOid, value))
|
||||
return;
|
||||
|
||||
_OrganisationOid = value;
|
||||
StoreDirtyInformation(this.AreDifferent(this.DataContract.OrganisationOid, value), nameof(OrganisationOid));
|
||||
FirePropertyChanged(nameof(OrganisationOid));
|
||||
}
|
||||
}
|
||||
public string OrganisationName
|
||||
{
|
||||
get { return _OrganisationName; }
|
||||
|
||||
set
|
||||
{
|
||||
if (!AreDifferent(_OrganisationName, value))
|
||||
return;
|
||||
|
||||
_OrganisationName = value;
|
||||
StoreDirtyInformation(this.AreDifferent(this.DataContract.OrganisationName, value), nameof(OrganisationName));
|
||||
FirePropertyChanged(nameof(OrganisationName));
|
||||
}
|
||||
}
|
||||
public GkvVerfahrensstufe Verfahrensstufe
|
||||
{
|
||||
get { return this._Verfahrensstufe; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Verfahrensstufe, value))
|
||||
{
|
||||
this._Verfahrensstufe = value;
|
||||
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.Verfahrensstufe, value), nameof(Verfahrensstufe));
|
||||
this.FirePropertyChanged(nameof(Verfahrensstufe));
|
||||
}
|
||||
}
|
||||
}
|
||||
public int VerfahrensstufeInt
|
||||
{
|
||||
get { return (int)Verfahrensstufe; }
|
||||
|
||||
set
|
||||
{
|
||||
if (!AreDifferent(this.VerfahrensstufeInt, value))
|
||||
return;
|
||||
|
||||
Verfahrensstufe = (GkvVerfahrensstufe)value;
|
||||
//FirePropertyChanged(nameof(VerfahrensstufeInt));
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
public string RecipientString
|
||||
{
|
||||
get
|
||||
{
|
||||
if (InvoiceBases != null && InvoiceBases.Any())
|
||||
{
|
||||
return InvoiceBases.First().RecipientOrganisation;
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
}
|
||||
public string Fehlermeldung
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!(LastTransferProtokoll is GkvTransferProtokollDC last))
|
||||
return null;
|
||||
|
||||
if (string.IsNullOrWhiteSpace(last.Fehlernachricht))
|
||||
return null;
|
||||
|
||||
if (string.IsNullOrWhiteSpace(last.Fehlertitel))
|
||||
return last.Fehlernachricht;
|
||||
|
||||
return $"{last.Fehlertitel}: {last.Fehlernachricht}";
|
||||
}
|
||||
}
|
||||
public DateTime? LastTransferDateTime
|
||||
{
|
||||
get
|
||||
{
|
||||
if (LastTransferProtokoll is GkvTransferProtokollDC last)
|
||||
return last.ErstelltAm?.Date;
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
public bool IsReady2Send
|
||||
{
|
||||
get { return _IsReady2Send; }
|
||||
set
|
||||
{
|
||||
if (!AreDifferent(IsReady2Send, value))
|
||||
return;
|
||||
|
||||
_IsReady2Send = value;
|
||||
FirePropertyChanged(nameof(IsReady2Send));
|
||||
}
|
||||
}
|
||||
public string SendTooltip
|
||||
{
|
||||
get { return _SendTooltip; }
|
||||
set
|
||||
{
|
||||
if (!AreDifferent(SendTooltip, value))
|
||||
return;
|
||||
|
||||
_SendTooltip = value;
|
||||
FirePropertyChanged(nameof(SendTooltip));
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerable<IGkvTransferProtokoll> TransferProtokolle => Protokolle;
|
||||
public IGkvTransferProtokoll LastTransferProtokoll => Protokolle?.LastOrDefault();
|
||||
|
||||
public bool IsFormularEnabled => LastTransferProtokoll is object ;
|
||||
public bool IsUrbelegeEditEnabled => LastTransferProtokoll is object;
|
||||
public bool IsBezahltEditEnabled => UrbelegeGesendet;
|
||||
|
||||
public GkvAbrechnungReportRequest ReportRequest
|
||||
=> new GkvAbrechnungReportRequest(DataContract.Oid, false);
|
||||
public string ReportLink
|
||||
=> BeWoApp.SiteOfOrigin + "/ReportView.aspx" + ReportRequest.GetUrlPathString();
|
||||
|
||||
public GkvAbrechnungReportRequest ReportRequest2
|
||||
=> new GkvAbrechnungReportRequest(DataContract.Oid, true);
|
||||
public string ReportLink2
|
||||
=> BeWoApp.SiteOfOrigin + "/ReportView.aspx" + ReportRequest2.GetUrlPathString();
|
||||
|
||||
public void FirePropertyIsReady2CreateChanged()
|
||||
=> FirePropertyChanged(nameof(IsReady2Create));
|
||||
public bool IsReady2Create
|
||||
=> InvoiceBases?.Where(x => x.IsChecked).Any() ?? false;
|
||||
|
||||
public override void UpdateByDataContract(GkvAbrechnungLightDC pDataContract)
|
||||
{
|
||||
Version = pDataContract.Version;
|
||||
|
||||
Notice = pDataContract.Notice;
|
||||
|
||||
Betrag = pDataContract.Betrag;
|
||||
Bezahlt = pDataContract.Bezahlt;
|
||||
|
||||
if (pDataContract.InvoiceBases != null)
|
||||
{
|
||||
var l = pDataContract.InvoiceBases.Select(x => new InvoiceBaseLightVM(x, true)).ToList();
|
||||
InvoiceBases = new BindingList<InvoiceBaseLightVM>(l);
|
||||
}
|
||||
}
|
||||
protected override void InitByDataContract(GkvAbrechnungLightDC pDataContract)
|
||||
{
|
||||
_AbrechnungsZeitraumStart = pDataContract.AbrechnungsZeitraumStart;
|
||||
_AbrechnungsZeitraumEnde = pDataContract.AbrechnungsZeitraumEnde;
|
||||
|
||||
_ErstelltAm = pDataContract.ErstelltAm;
|
||||
|
||||
_Oid = pDataContract.Oid;
|
||||
_Version = pDataContract.Version;
|
||||
|
||||
_Notice = pDataContract.Notice;
|
||||
|
||||
_Betrag = pDataContract.Betrag;
|
||||
_Bezahlt = pDataContract.Bezahlt;
|
||||
_UrbelegeGesendet = pDataContract.UrbelegeGesendet;
|
||||
_Verfahrensstufe = pDataContract.Verfahrensstufe;
|
||||
|
||||
if (pDataContract.InvoiceBases != null)
|
||||
{
|
||||
var l = pDataContract.InvoiceBases.Select(x => new InvoiceBaseLightVM(x, true)).ToList();
|
||||
InvoiceBases = new BindingList<InvoiceBaseLightVM>(l);
|
||||
}
|
||||
|
||||
if (pDataContract.Protokolle != null)
|
||||
{
|
||||
_Protokolle = new List<GkvTransferProtokollLightDC>(pDataContract.Protokolle);
|
||||
}
|
||||
|
||||
_OrganisationOid = pDataContract.OrganisationOid;
|
||||
_OrganisationName = pDataContract.OrganisationName;
|
||||
|
||||
_IsReady2Send = pDataContract.IsReady2Send;
|
||||
_SendTooltip = pDataContract.SendTooltip;
|
||||
}
|
||||
protected override GkvAbrechnungLightDC MapToDataContract(GkvAbrechnungLightDC pDataContract, bool doCommit)
|
||||
{
|
||||
pDataContract.Version = _Version;
|
||||
|
||||
pDataContract.Notice = _Notice;
|
||||
pDataContract.Betrag = _Betrag;
|
||||
pDataContract.Bezahlt = _Bezahlt;
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
public void UpdateBySendResponse(GkvAbrechnungSendResponseDC cb)
|
||||
{
|
||||
var dc = cb.GkvAbrechnungDC;
|
||||
|
||||
if (dc is null)
|
||||
{
|
||||
MessageBox.Show(Application.Current.MainWindow, cb.Message);
|
||||
return;
|
||||
}
|
||||
|
||||
Version = dc.Version;
|
||||
Protokolle = dc.Protokolle.ToList();
|
||||
|
||||
IsReady2Send = dc.IsReady2Send;
|
||||
SendTooltip = dc.SendTooltip;
|
||||
|
||||
var protokoll = cb.TransferProtokoll;
|
||||
|
||||
if (protokoll.ResultType == GkvTransferResultType.FailSoft)
|
||||
{
|
||||
MessageBox.Show(Application.Current.MainWindow, protokoll.Fehlernachricht, protokoll.Fehlertitel);
|
||||
}
|
||||
else if (protokoll.ResultType == GkvTransferResultType.FailFatal)
|
||||
{
|
||||
BeWoApp.ShowError(protokoll.Fehlertitel + ": " + protokoll.Fehlernachricht, null, false, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show(Application.Current.MainWindow, "Ihre Sendung wurde korrekt übertragen");
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasAnyInvoiceBases()
|
||||
{
|
||||
return InvoiceBases is object && InvoiceBases.Any();
|
||||
}
|
||||
|
||||
public void CheckAllInvoiceBases()
|
||||
{
|
||||
if (!HasAnyInvoiceBases())
|
||||
return;
|
||||
|
||||
foreach (var invoice_base in InvoiceBases)
|
||||
{
|
||||
invoice_base.IsChecked = true;
|
||||
}
|
||||
}
|
||||
|
||||
internal void UncheckAllInvoicesBases()
|
||||
{
|
||||
if (!HasAnyInvoiceBases())
|
||||
return;
|
||||
|
||||
foreach (var invoice_base in InvoiceBases)
|
||||
{
|
||||
invoice_base.IsChecked = false;
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasAnySelectedInvoiceBases()
|
||||
{
|
||||
return HasAnyInvoiceBases() && getSelectedInvoiceBases().Any();
|
||||
}
|
||||
|
||||
internal void PrintSelectedInvoiceBases()
|
||||
{
|
||||
var selected = new List<long>(getSelectedInvoiceBases());
|
||||
|
||||
if (!selected.Any())
|
||||
return;
|
||||
|
||||
ServiceFacade.DoReportServiceAsync(s => s.CreateInvoiceListReport(selected), ms => BeWoApp.MainControl.Dispatch(() => BeWoUtils.ShowReportWindow(ms, "Rechnungen")));
|
||||
}
|
||||
|
||||
private IEnumerable<long> getSelectedInvoiceBases()
|
||||
{
|
||||
return InvoiceBases.Where(x => x.IsChecked).Select(x => x.DataContract.Oid.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
312
BeWo/ViewModel/Light/InvoiceBaseLightVM.cs
Normal file
312
BeWo/ViewModel/Light/InvoiceBaseLightVM.cs
Normal file
@@ -0,0 +1,312 @@
|
||||
using BeWo.Validation;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared;
|
||||
using BS.Shared.DataContracts.Light;
|
||||
using BS.Shared.Interface;
|
||||
using BS.Shared.Translation;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using BS.Shared.Core;
|
||||
|
||||
namespace BeWo.ViewModel.Light
|
||||
{
|
||||
public class InvoiceBaseLightVM : AbstractDCMapperVM<InvoiceBaseLightDC>
|
||||
{
|
||||
private readonly Dictionary<InvoiceType, string> _TypeTranslation = new Dictionary<InvoiceType, string>
|
||||
{
|
||||
{
|
||||
InvoiceType.CustomerEquity, Translator.Translate("Eigenanteil")
|
||||
},
|
||||
{
|
||||
InvoiceType.General, Translator.Translate("Allgemein")
|
||||
},
|
||||
{
|
||||
InvoiceType.Settlement, Translator.Translate("Spitzabrechnung")
|
||||
},
|
||||
{
|
||||
InvoiceType.Service, Translator.Translate("Rechnung")
|
||||
}
|
||||
};
|
||||
|
||||
private DateTime? _AccountingPeriodEnd;
|
||||
private DateTime? _AccountingPeriodStart;
|
||||
private string _CustomerName = string.Empty;
|
||||
private string _RecipientOrganisation = string.Empty;
|
||||
private DateTime? _InvoiceDate;
|
||||
private string _InvoiceNumber = string.Empty;
|
||||
private string _InvoiceTypeText = string.Empty;
|
||||
private decimal? _TotalAmount;
|
||||
internal bool _IsPaid;
|
||||
internal bool _IsChecked;
|
||||
private string _Notice = string.Empty;
|
||||
|
||||
public InvoiceBaseLightVM(InvoiceBaseLightDC pDC, bool isChecked = false)
|
||||
: base(pDC, false)
|
||||
{
|
||||
_IsChecked = isChecked;
|
||||
}
|
||||
|
||||
public bool IsGkvValid { get; private set; }
|
||||
public string IsGkvValidError { get; private set; }
|
||||
public bool? IsAlreadyInActiveGkvAbrechnung { get; private set; }
|
||||
|
||||
public bool IsChecked
|
||||
{
|
||||
get { return _IsChecked; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_IsChecked, value))
|
||||
{
|
||||
_IsChecked = value;
|
||||
FirePropertyChanged("IsChecked");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
|
||||
public DateTime? AccountingPeriodEnd
|
||||
{
|
||||
get { return _AccountingPeriodEnd; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_AccountingPeriodEnd, value))
|
||||
{
|
||||
_AccountingPeriodEnd = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.AccountingPeriodEnd, value), nameof(AccountingPeriodEnd));
|
||||
FirePropertyChanged(nameof(AccountingPeriodEnd));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
|
||||
public DateTime? AccountingPeriodStart
|
||||
{
|
||||
get { return _AccountingPeriodStart; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_AccountingPeriodStart, value))
|
||||
{
|
||||
_AccountingPeriodStart = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.AccountingPeriodStart, value), nameof(AccountingPeriodStart));
|
||||
FirePropertyChanged(nameof(AccountingPeriodStart));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string AccountingPeriodString
|
||||
{
|
||||
get
|
||||
{
|
||||
return _AccountingPeriodEnd.HasValue && _AccountingPeriodStart.HasValue
|
||||
? _AccountingPeriodStart.Value.ToShortDateString() + " - " + _AccountingPeriodEnd.Value.ToShortDateString()
|
||||
: string.Empty;
|
||||
}
|
||||
|
||||
set { }
|
||||
}
|
||||
|
||||
public string CustomerName
|
||||
{
|
||||
get { return _CustomerName; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_CustomerName, value))
|
||||
{
|
||||
_CustomerName = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.CustomerName, value), nameof(CustomerName));
|
||||
FirePropertyChanged(nameof(CustomerName));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)]
|
||||
public DateTime? InvoiceDate
|
||||
{
|
||||
get { return _InvoiceDate; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_InvoiceDate, value))
|
||||
{
|
||||
_InvoiceDate = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.InvoiceDate, value), nameof(InvoiceDate));
|
||||
FirePropertyChanged(nameof(InvoiceDate));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string InvoiceNumber
|
||||
{
|
||||
get { return _InvoiceNumber; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_InvoiceNumber, value))
|
||||
{
|
||||
_InvoiceNumber = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.InvoiceNumber, value), nameof(InvoiceNumber));
|
||||
FirePropertyChanged(nameof(InvoiceNumber));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string InvoiceTypeText
|
||||
{
|
||||
get { return _InvoiceTypeText; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(InvoiceTypeText, value))
|
||||
{
|
||||
_InvoiceTypeText = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.InvoiceTypeText, value), nameof(InvoiceTypeText));
|
||||
FirePropertyChanged(nameof(InvoiceTypeText));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsPaid
|
||||
{
|
||||
get { return _IsPaid; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_IsPaid, value))
|
||||
{
|
||||
_IsPaid = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.IsPaid, value), nameof(IsPaid));
|
||||
FirePropertyChanged(nameof(IsPaid));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string Notice
|
||||
{
|
||||
get { return _Notice; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_Notice, value))
|
||||
{
|
||||
_Notice = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.Notice, value), nameof(Notice));
|
||||
FirePropertyChanged(nameof(Notice));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string RecipientOrganisation
|
||||
{
|
||||
get { return _RecipientOrganisation; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_RecipientOrganisation, value))
|
||||
{
|
||||
_RecipientOrganisation = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.RecipientOrganisation, value), nameof(RecipientOrganisation));
|
||||
FirePropertyChanged(nameof(RecipientOrganisation));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string ReportLink
|
||||
{
|
||||
get
|
||||
{
|
||||
string url = string.Empty;
|
||||
|
||||
switch (DataContract.Type)
|
||||
{
|
||||
case InvoiceType.CustomerEquity:
|
||||
url = BeWoApp.SiteOfOrigin + "/ReportView.aspx?ioid=" + DataContract.Oid + "&type=CustomerInvoice";
|
||||
break;
|
||||
case InvoiceType.General:
|
||||
url = BeWoApp.SiteOfOrigin + "/ReportView.aspx?ioid=" + DataContract.Oid + "&type=CustomerInvoice";
|
||||
break;
|
||||
case InvoiceType.Settlement:
|
||||
url = BeWoApp.SiteOfOrigin + "/ReportView.aspx?ibid=" + DataContract.Oid + "&type=" + Utils.EnumName(ReportTypes.Settlement);
|
||||
break;
|
||||
case InvoiceType.Service:
|
||||
url = BeWoApp.SiteOfOrigin + "/ReportView.aspx?ibid=" + DataContract.Oid + "&type=" + Utils.EnumName(ReportTypes.ServiceInvoice);
|
||||
break;
|
||||
default:
|
||||
url = string.Empty;
|
||||
break;
|
||||
}
|
||||
|
||||
return url;
|
||||
}
|
||||
}
|
||||
|
||||
public decimal? TotalAmount
|
||||
{
|
||||
get { return _TotalAmount; }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_TotalAmount, value))
|
||||
{
|
||||
_TotalAmount = value;
|
||||
StoreDirtyInformation(AreDifferent(DataContract.TotalAmount, value), nameof(TotalAmount));
|
||||
FirePropertyChanged(nameof(TotalAmount));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string TypeString
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!String.IsNullOrEmpty(DataContract.InvoiceTypeText))
|
||||
{
|
||||
return DataContract.InvoiceTypeText;
|
||||
}
|
||||
return _TypeTranslation[DataContract.Type];
|
||||
}
|
||||
}
|
||||
|
||||
public String BackgroundColor
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
|
||||
protected override void InitByDataContract(InvoiceBaseLightDC pDataContract)
|
||||
{
|
||||
// private DateTime? _AccountingPeriodEnd;
|
||||
//private DateTime? _AccountingPeriodStart;
|
||||
//private string _CustomerName = string.Empty;
|
||||
//private string _RecipientOrganisation = string.Empty;
|
||||
//private string InvoiceTypeText = string.Empty;
|
||||
//private DateTime _InvoiceDate;
|
||||
_AccountingPeriodStart = pDataContract.AccountingPeriodStart;
|
||||
_AccountingPeriodEnd = pDataContract.AccountingPeriodEnd;
|
||||
_CustomerName = pDataContract.CustomerName;
|
||||
_RecipientOrganisation = pDataContract.RecipientOrganisation;
|
||||
_IsPaid = pDataContract.IsPaid;
|
||||
_InvoiceTypeText = pDataContract.InvoiceTypeText;
|
||||
_InvoiceNumber = pDataContract.InvoiceNumber;
|
||||
_InvoiceDate = pDataContract.InvoiceDate;
|
||||
_AccountingPeriodEnd = pDataContract.AccountingPeriodEnd;
|
||||
_AccountingPeriodStart = pDataContract.AccountingPeriodStart;
|
||||
_Notice = pDataContract.Notice;
|
||||
_TotalAmount = pDataContract.TotalAmount;
|
||||
}
|
||||
|
||||
protected override InvoiceBaseLightDC MapToDataContract(InvoiceBaseLightDC pDataContract, bool doCommit)
|
||||
{
|
||||
pDataContract.IsPaid = _IsPaid;
|
||||
pDataContract.Notice = _Notice;
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,60 +1,62 @@
|
||||
using System.Collections.Generic;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
|
||||
namespace BeWo.ViewModel.ListViewModel
|
||||
{
|
||||
public class GkvAbrechnungListVM : AbstractDCListMapperVM<GkvAbrechnungDC, GkvAbrechnungVM>
|
||||
{
|
||||
public static string PropertyName_DateTimeSpanFilter = "DateTimeSpanFilter";
|
||||
|
||||
public static string PropertyName_FilterResultAmountSum = "FilterResultAmountSum";
|
||||
public static string PropertyName_FilterResultAmountNotPaidSum = "FilterResultAmountNotPaidSum";
|
||||
|
||||
private DateTimeSpan _DateTimeSpanFilter;
|
||||
|
||||
public GkvAbrechnungListVM(List<GkvAbrechnungDC> pDCList) : base(pDCList)
|
||||
{
|
||||
this.VMList.ListChanged += (s, e) => this.FirePropertyChanged(PropertyName_FilterResultAmountSum);
|
||||
this.VMList.ListChanged += (s, e) => this.FirePropertyChanged(PropertyName_FilterResultAmountNotPaidSum);
|
||||
}
|
||||
public GkvAbrechnungListVM() : this(null)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public DateTimeSpan DateTimeSpanFilter
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DateTimeSpanFilter;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._DateTimeSpanFilter, value))
|
||||
{
|
||||
this._DateTimeSpanFilter = value;
|
||||
this.FirePropertyChanged(PropertyName_DateTimeSpanFilter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal void UpdateList(IList<GkvAbrechnungDC> dcList)
|
||||
{
|
||||
VMList.Clear();
|
||||
|
||||
if (dcList is object)
|
||||
foreach (var dc in dcList)
|
||||
{
|
||||
VMList.Add(CreateVM(dc));
|
||||
}
|
||||
|
||||
FirePropertyChanged(PropertyName_FilterResultAmountSum);
|
||||
FirePropertyChanged(PropertyName_FilterResultAmountNotPaidSum);
|
||||
}
|
||||
|
||||
internal void ClearList() => UpdateList(null);
|
||||
}
|
||||
using System.Collections.Generic;
|
||||
using BeWo.ViewModel.Light;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
using BS.Shared.DataContracts.Light;
|
||||
|
||||
namespace BeWo.ViewModel.ListViewModel.Light
|
||||
{
|
||||
public class GkvAbrechnungLightListVM : AbstractDCListMapperVM<GkvAbrechnungLightDC, GkvAbrechnungLightVM>
|
||||
{
|
||||
public static string PropertyName_DateTimeSpanFilter = "DateTimeSpanFilter";
|
||||
|
||||
public static string PropertyName_FilterResultAmountSum = "FilterResultAmountSum";
|
||||
public static string PropertyName_FilterResultAmountNotPaidSum = "FilterResultAmountNotPaidSum";
|
||||
|
||||
private DateTimeSpan _DateTimeSpanFilter;
|
||||
|
||||
public GkvAbrechnungLightListVM(List<GkvAbrechnungLightDC> pDCList) : base(pDCList)
|
||||
{
|
||||
this.VMList.ListChanged += (s, e) => this.FirePropertyChanged(PropertyName_FilterResultAmountSum);
|
||||
this.VMList.ListChanged += (s, e) => this.FirePropertyChanged(PropertyName_FilterResultAmountNotPaidSum);
|
||||
}
|
||||
public GkvAbrechnungLightListVM() : this(null)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public DateTimeSpan DateTimeSpanFilter
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DateTimeSpanFilter;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._DateTimeSpanFilter, value))
|
||||
{
|
||||
this._DateTimeSpanFilter = value;
|
||||
this.FirePropertyChanged(PropertyName_DateTimeSpanFilter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal void UpdateList(IList<GkvAbrechnungLightDC> dcList)
|
||||
{
|
||||
VMList.Clear();
|
||||
|
||||
if (dcList is object)
|
||||
foreach (var dc in dcList)
|
||||
{
|
||||
VMList.Add(CreateVM(dc));
|
||||
}
|
||||
|
||||
FirePropertyChanged(PropertyName_FilterResultAmountSum);
|
||||
FirePropertyChanged(PropertyName_FilterResultAmountNotPaidSum);
|
||||
}
|
||||
|
||||
internal void ClearList() => UpdateList(null);
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Windows;
|
||||
@@ -10,6 +11,7 @@ using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
|
||||
namespace BeWo.ViewModel
|
||||
{
|
||||
@@ -96,6 +98,17 @@ namespace BeWo.ViewModel
|
||||
private GkvVerfahrensstufe? _Verfahrensstufe;
|
||||
private bool _GkvAusblenden;
|
||||
|
||||
private AddressVM _HausanschriftDatenannahmestelle;
|
||||
private AddressVM _PostfachanschriftDatenannahmestelle;
|
||||
private AddressVM _GroßkundenanschriftDatenannahmestelle;
|
||||
|
||||
public OrganisationVM()
|
||||
{
|
||||
if (!BeWoApp.IsInDesignMode)
|
||||
throw new NotImplementedException();
|
||||
|
||||
Name = "Designername";
|
||||
}
|
||||
public OrganisationVM(OrganisationDC pDataContract, List<ValueListEntryDC> pAllQualifications, List<ValueListEntryDC> pPossibleFunctions, List<ValueListEntryDC> pPossibleRoleInOrganisations)
|
||||
: base(pDataContract, pDataContract.OrganisationOid == null)
|
||||
{
|
||||
@@ -403,10 +416,15 @@ namespace BeWo.ViewModel
|
||||
return false;
|
||||
}
|
||||
|
||||
return base.IsDirty || this._CostRatePeriods.IsDirty || this._VarFields.IsDirty || (_ArbeitszeitListe != null && _ArbeitszeitListe.IsDirty) || (_Feiertage != null && _Feiertage.IsDirty);
|
||||
return base.IsDirty
|
||||
|| this._CostRatePeriods.IsDirty
|
||||
|| this._VarFields.IsDirty
|
||||
|| (_ArbeitszeitListe != null && _ArbeitszeitListe.IsDirty)
|
||||
|| (_Feiertage != null && _Feiertage.IsDirty)
|
||||
|| (HausanschriftDatenannahmestelle?.IsDirty ?? false)
|
||||
|| (PostfachanschriftDatenannahmestelle?.IsDirty ?? false)
|
||||
|| (GroßkundenanschriftDatenannahmestelle?.IsDirty ?? false);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public bool IsSingleInvoicePerCustomer
|
||||
@@ -677,8 +695,6 @@ namespace BeWo.ViewModel
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public ValueListEntryDC Function
|
||||
{
|
||||
get { return this._Function; }
|
||||
@@ -836,6 +852,34 @@ namespace BeWo.ViewModel
|
||||
}
|
||||
}
|
||||
|
||||
public AddressVM HausanschriftDatenannahmestelle
|
||||
{
|
||||
get => _HausanschriftDatenannahmestelle;
|
||||
set
|
||||
{
|
||||
_HausanschriftDatenannahmestelle = value;
|
||||
FirePropertyChanged(nameof(HausanschriftDatenannahmestelle));
|
||||
}
|
||||
}
|
||||
public AddressVM PostfachanschriftDatenannahmestelle
|
||||
{
|
||||
get => _PostfachanschriftDatenannahmestelle;
|
||||
set
|
||||
{
|
||||
_PostfachanschriftDatenannahmestelle = value;
|
||||
FirePropertyChanged(nameof(PostfachanschriftDatenannahmestelle));
|
||||
}
|
||||
}
|
||||
public AddressVM GroßkundenanschriftDatenannahmestelle
|
||||
{
|
||||
get => _GroßkundenanschriftDatenannahmestelle;
|
||||
set
|
||||
{
|
||||
_GroßkundenanschriftDatenannahmestelle = value;
|
||||
FirePropertyChanged(nameof(GroßkundenanschriftDatenannahmestelle));
|
||||
}
|
||||
}
|
||||
|
||||
protected void CommitContact(string pValue, ContactType pContactType)
|
||||
{
|
||||
List<ContactDC> lOldContactDCs;
|
||||
@@ -875,7 +919,7 @@ namespace BeWo.ViewModel
|
||||
{
|
||||
this._VarFields = new VarFieldListVM(pDataContract.VarFields);
|
||||
|
||||
if (!this.IsNew)
|
||||
if (!IsNew)
|
||||
{
|
||||
_AccountNumber = pDataContract.AccountNumber;
|
||||
_BankCode = pDataContract.BankCode;
|
||||
@@ -952,6 +996,18 @@ namespace BeWo.ViewModel
|
||||
}
|
||||
}
|
||||
|
||||
HausanschriftDatenannahmestelle = pDataContract.HausanschriftDatenannahmestelle is AddressDC dc
|
||||
? new AddressVM(dc)
|
||||
: new AddressVM();
|
||||
|
||||
PostfachanschriftDatenannahmestelle = pDataContract.PostfachanschriftDatenannahmestelle is AddressDC dc2
|
||||
? new AddressVM(dc2)
|
||||
: new AddressVM();
|
||||
|
||||
GroßkundenanschriftDatenannahmestelle = pDataContract.GroßkundenanschriftDatenannahmestelle is AddressDC dc3
|
||||
? new AddressVM(dc3)
|
||||
: new AddressVM();
|
||||
|
||||
VMFactory.CreateOrganisationPersonRelationListVMAsync(
|
||||
pDataContract.RelatedPersons ?? (pDataContract.RelatedPersons = new List<OrganisationPersonRelationDC>()), cb => PersonRelations = cb);
|
||||
|
||||
@@ -1025,7 +1081,6 @@ namespace BeWo.ViewModel
|
||||
CommitContact(_POBox, ContactType.business_POBox);
|
||||
CommitContact(_InvoiceAddressPOBox, ContactType.private_POBox);
|
||||
|
||||
|
||||
pDataContract.CostRatePeriods = this._CostRatePeriods.CopyToDCList(doCommit);
|
||||
|
||||
if (this._VarFields != null)
|
||||
@@ -1043,7 +1098,39 @@ namespace BeWo.ViewModel
|
||||
pDataContract.Feiertage = _Feiertage.CopyToDCList(doCommit);
|
||||
}
|
||||
|
||||
if (HausanschriftDatenannahmestelle is object)
|
||||
pDataContract.HausanschriftDatenannahmestelle = HausanschriftDatenannahmestelle.CommitToDataContract();
|
||||
else
|
||||
pDataContract.HausanschriftDatenannahmestelle = null;
|
||||
|
||||
if (PostfachanschriftDatenannahmestelle is object)
|
||||
pDataContract.PostfachanschriftDatenannahmestelle = PostfachanschriftDatenannahmestelle.CommitToDataContract();
|
||||
else
|
||||
pDataContract.PostfachanschriftDatenannahmestelle = null;
|
||||
|
||||
if (GroßkundenanschriftDatenannahmestelle is object)
|
||||
pDataContract.GroßkundenanschriftDatenannahmestelle = GroßkundenanschriftDatenannahmestelle.CommitToDataContract();
|
||||
else
|
||||
pDataContract.GroßkundenanschriftDatenannahmestelle = null;
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
public override void UpdateByDataContract(OrganisationDC pDataContract)
|
||||
{
|
||||
base.UpdateByDataContract(pDataContract);
|
||||
}
|
||||
|
||||
public void UpdateByGetIKResponse(GkvAbrechnungGetIKResponseDC response)
|
||||
{
|
||||
BezDatenannahmestelle = response.BezDatenannahmestelle;
|
||||
IKKostentrager = response.IKKostentrager;
|
||||
IKDatenannahmestelle = response.IKDatenannahmestelle;
|
||||
|
||||
HausanschriftDatenannahmestelle.UpdateByDataContract(response.Hausanschrift);
|
||||
FirePropertyChanged(nameof(HausanschriftDatenannahmestelle));
|
||||
PostfachanschriftDatenannahmestelle.UpdateByDataContract(response.Postfachanschrift);
|
||||
GroßkundenanschriftDatenannahmestelle.UpdateByDataContract(response.Großkundenanschrift);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -246,8 +246,6 @@ namespace BeWo.ViewModel
|
||||
_Category2Services = pCategory2Services;
|
||||
|
||||
ChangeGoalTree(pAllGoalCategories, pAllGoals);
|
||||
if (_Duration == null)
|
||||
_Duration = 0;
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -284,12 +282,12 @@ namespace BeWo.ViewModel
|
||||
return RoundedDuration;
|
||||
}
|
||||
|
||||
if (_Duration != null)
|
||||
{
|
||||
//if (_Duration != null)
|
||||
//{
|
||||
return Duration;
|
||||
}
|
||||
//}
|
||||
|
||||
return 0;
|
||||
//return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -746,7 +746,7 @@
|
||||
<VisualStudio>
|
||||
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
|
||||
<WebProjectProperties>
|
||||
<UseIIS>True</UseIIS>
|
||||
<UseIIS>False</UseIIS>
|
||||
<AutoAssignPort>False</AutoAssignPort>
|
||||
<DevelopmentServerPort>8808</DevelopmentServerPort>
|
||||
<DevelopmentServerVPath>/</DevelopmentServerVPath>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<IISExpressWindowsAuthentication />
|
||||
<IISExpressUseClassicPipelineMode />
|
||||
<UseGlobalApplicationHostFile />
|
||||
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
||||
<ProjectView>ShowAllFiles</ProjectView>
|
||||
<WebStackScaffolding_ViewDialogWidth>600</WebStackScaffolding_ViewDialogWidth>
|
||||
<Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID>
|
||||
|
||||
@@ -124,9 +124,9 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
Log.Info($"LoginController.Index(): Login failed! Tenant = {MobileSessionFacade.Tenant}");
|
||||
|
||||
ViewData[LoginErrorIndex] = Request.Browser.Browser.Equals("InternetExplorer") ?
|
||||
"Dieser Browser ist nicht mit dem mobilen BeWoPlaner kompatibel. Bitte benutzen Sie einen anderen Browser als den Internet Explorer." :
|
||||
"Die Anmeldung ist fehlgeschlagen. Bitte überprüfen Sie Benutzername und Passwort.";
|
||||
//ViewData[LoginErrorIndex] = Request.Browser.Browser.Equals("InternetExplorer") ?
|
||||
// "Dieser Browser ist nicht mit dem mobilen BeWoPlaner kompatibel. Bitte benutzen Sie einen anderen Browser als den Internet Explorer." :
|
||||
// "Die Anmeldung ist fehlgeschlagen. Bitte überprüfen Sie Benutzername und Passwort.";
|
||||
|
||||
return View("Index");
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoWarn>CS0168</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
@@ -81,12 +82,14 @@
|
||||
<Compile Include="Models\Daten\Datenelementgruppe.cs" />
|
||||
<Compile Include="Models\Infos\InfoParameterInvoiceItem.cs" />
|
||||
<Compile Include="Models\IRowable.cs" />
|
||||
<Compile Include="Models\KTDSummary.cs" />
|
||||
<Compile Include="Models\Nachrichten\Nachricht.cs" />
|
||||
<Compile Include="Models\Nachrichten\NachrichtKTD.cs" />
|
||||
<Compile Include="Models\Nachrichten\NachrichtSLGA.cs" />
|
||||
<Compile Include="Models\Nachrichten\NachrichtSLLA.cs" />
|
||||
<Compile Include="Models\Schlüssels\Schlüssel.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselAbrechnungscode.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselArtDerAnschrift.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselArtDerGenehmigung.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselArtDerVerknüpfung.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselBVG.cs" />
|
||||
@@ -107,6 +110,7 @@
|
||||
<Compile Include="Models\Schlüssels\SchlüsselVerarbeitungskennzeichen.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselVerordnungsbesonderheiten.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselZuzahlung.cs" />
|
||||
<Compile Include="Models\Segmente\KTD\SegmentKTDANS.cs" />
|
||||
<Compile Include="Models\Segmente\KTD\SegmentKTD.cs" />
|
||||
<Compile Include="Models\Segmente\KTD\SegmentKTDFKT.cs" />
|
||||
<Compile Include="Models\Segmente\KTD\SegmentKTDIDK.cs" />
|
||||
@@ -155,22 +159,22 @@
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="KTDatei\AO05Q125.ke0.txt">
|
||||
<Content Include="KTDatei\AO.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="KTDatei\BK05Q125.ke3.txt">
|
||||
<Content Include="KTDatei\BK.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="KTDatei\BN05Q424.ke1.txt">
|
||||
<Content Include="KTDatei\BN.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="KTDatei\EK05Q125.ke0.txt">
|
||||
<Content Include="KTDatei\EK.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="KTDatei\IK05Q125.ke1.txt">
|
||||
<Content Include="KTDatei\IK.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="KTDatei\LK05Q223.ke0.txt">
|
||||
<Content Include="KTDatei\LK.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
UNA:+,? '
|
||||
UNB+UNOC:3+109910000+999999999+241210:1038+00390++AO05Q125ke0'
|
||||
UNB+UNOC:3+109910000+999999999+250312:1129+00391++AO05Q225ke0'
|
||||
UNH+00001+KOTR:02:001:KV'
|
||||
IDK+100295017+99+gkv informatik'
|
||||
VDT+19970403'
|
||||
@@ -334,7 +334,7 @@ VKG+09+104212607+5++28++++18'
|
||||
VKG+09+104212538+5++28++++19'
|
||||
NAM+01+AOK Rheinland/Hamburg'
|
||||
ANS+1+40468+Düsseldorf+Wanheimer Str. 72'
|
||||
ANS+2+40004+Düsseldorf+10 13 42'
|
||||
ANS+2+40004+Düsseldorf+10 13 55'
|
||||
ASP+01+02118791/57305++Frau Tanja Koch+TL Hebammen/Reha-Sport'
|
||||
UEM+1+00+I8'
|
||||
DFU+01+070++0000+2400+1+da@dta.aok.de'
|
||||
@@ -1136,8 +1136,9 @@ VDT+19970403'
|
||||
FKT+02'
|
||||
NAM+01+AOK Rheinland/Hamburg+Rechnungsprüfung Heilmittel'
|
||||
ANS+1+40468+Düsseldorf+Wanheimer Str. 72'
|
||||
ANS+2+40004+Düsseldorf+10 13 38'
|
||||
ASP+01+02118791/55743++Frau Jacobs-Lange+Heilmittel'
|
||||
UNT+000008+00080'
|
||||
UNT+000009+00080'
|
||||
UNH+00081+KOTR:02:001:KV'
|
||||
IDK+104212594+99+AOK Rheinland/Hamburg'
|
||||
VDT+20030915'
|
||||
@@ -2527,6 +2528,7 @@ VDT+19970403'
|
||||
FKT+02'
|
||||
NAM+01+AOK Rheinland/Hamburg+Rechnungsprüfung Fahrkosten'
|
||||
ANS+1+40468+Düsseldorf+Wanheimer Str. 72'
|
||||
ANS+2+40004+Düsseldorf+10 13 41'
|
||||
ASP+01+02118791/56515++Frau Kromat+Fahrkosten'
|
||||
UNT+000008+00206'
|
||||
UNZ+000206+00390'
|
||||
UNT+000009+00206'
|
||||
UNZ+000206+00391'
|
||||
@@ -1,5 +1,5 @@
|
||||
UNA:+,? '
|
||||
UNB+UNOC:3+104027544+999999999+250123:1530+00239++BK05Q125KE3'
|
||||
UNB+UNOC:3+104027544+999999999+250325:1445+00241++BK05Q225KE1'
|
||||
UNH+00001+KOTR:02:001:KV'
|
||||
IDK+100820488+99+Brandenburgische BKK'
|
||||
VDT+20100101'
|
||||
@@ -1170,9 +1170,6 @@ IDK+103723896+99+Heimat Krankenkasse/Ost'
|
||||
VDT+20120101'
|
||||
FKT+01'
|
||||
VKG+01+103723896+5++++++00'
|
||||
VKG+03+104027544+5++07++++66'
|
||||
VKG+03+103724238+5++28++++66'
|
||||
VKG+03+103724238+5++29++++66'
|
||||
VKG+03+104027544+5++07++++90'
|
||||
VKG+09+103724238+5++28++++90'
|
||||
VKG+09+103724238+5++29++++90'
|
||||
@@ -1187,15 +1184,15 @@ VKG+09+107436557+5++28++++99'
|
||||
VKG+09+107436557+5++29++++99'
|
||||
NAM+01+Heimat+Krankenkasse+Gesch.Ber.Neue Bundesländer'
|
||||
ANS+1+33602+Bielefeld+Herforder Str. 23'
|
||||
UNT+000023+00076'
|
||||
UNT+000020+00076'
|
||||
UNH+00077+KOTR:02:001:KV'
|
||||
IDK+103724238+99+Heimat Krankenkasse'
|
||||
VDT+20120101'
|
||||
FKT+01'
|
||||
VKG+01+103724238+5++++++00'
|
||||
VKG+03+104027544+5++07++++66'
|
||||
VKG+03+103724238+5++28++++66'
|
||||
VKG+03+103724238+5++29++++66'
|
||||
VKG+03+107436557+5++07++++66'
|
||||
VKG+03+107436557+5++28++++66'
|
||||
VKG+03+107436557+5++29++++66'
|
||||
VKG+03+104027544+5++07++++90'
|
||||
VKG+09+103724238+5++28++++90'
|
||||
VKG+09+103724238+5++29++++90'
|
||||
@@ -3074,14 +3071,17 @@ VKG+03+661430035+5++07++++73'
|
||||
VKG+03+661430035+5++07++++74'
|
||||
VKG+03+661430035+5++07++++75'
|
||||
VKG+03+661430035+5++07++++76'
|
||||
VKG+03+661430035+5++07++++A0'
|
||||
VKG+09+106492393+5++28++++90'
|
||||
VKG+09+106492393+5++29++++90'
|
||||
VKG+09+106492393+5++28++++B1'
|
||||
VKG+09+106492393+5++29++++B1'
|
||||
VKG+09+661430035+5++28++++99'
|
||||
VKG+09+661430035+5++29++++99'
|
||||
NAM+01+Pronova+Betriebskrankenkasse'
|
||||
ANS+1+67061+Ludwigshafen+Rheinallee 13'
|
||||
ANS+2+67058+Ludwigshafen'
|
||||
UNT+000035+00171'
|
||||
UNT+000038+00171'
|
||||
UNH+00172+KOTR:02:001:KV'
|
||||
IDK+106492406+99+Pronova BKK/Ost'
|
||||
VDT+20110701'
|
||||
@@ -3109,14 +3109,17 @@ VKG+03+661430035+5++07++++73'
|
||||
VKG+03+661430035+5++07++++74'
|
||||
VKG+03+661430035+5++07++++75'
|
||||
VKG+03+661430035+5++07++++76'
|
||||
VKG+03+661430035+5++07++++A0'
|
||||
VKG+09+106492393+5++28++++90'
|
||||
VKG+09+106492393+5++29++++90'
|
||||
VKG+09+106492393+5++28++++B1'
|
||||
VKG+09+106492393+5++29++++B1'
|
||||
VKG+09+661430035+5++28++++99'
|
||||
VKG+09+661430035+5++29++++99'
|
||||
NAM+01+Pronova+Betriebskrankenkasse+Gesch.Ber.Neue Bundesländer'
|
||||
ANS+1+67061+Ludwigshafen+Rheinallee 13'
|
||||
ANS+2+67058+Ludwigshafen'
|
||||
UNT+000035+00172'
|
||||
UNT+000038+00172'
|
||||
UNH+00173+KOTR:02:001:KV'
|
||||
IDK+106928388+99+Südzucker-BKK/Ost'
|
||||
VDT+20121001'
|
||||
@@ -4325,13 +4328,16 @@ VKG+09+661430035+5++29++++75'
|
||||
VKG+03+661430035+5++07++++76'
|
||||
VKG+09+661430035+5++28++++76'
|
||||
VKG+09+661430035+5++29++++76'
|
||||
VKG+03+104027544+5++07++++A0'
|
||||
VKG+09+108433248+5++28++++A0'
|
||||
VKG+09+108433248+5++29++++A0'
|
||||
VKG+03+104027544+5++07++++B1'
|
||||
VKG+09+108433248+5++28++++B1'
|
||||
VKG+09+108433248+5++29++++B1'
|
||||
NAM+01+SBK+Gesch.Ber.Neue Bundesländer'
|
||||
ANS+1+80339+München+Heimeranstr. 31-33'
|
||||
ANS+2+80017+München+201765'
|
||||
UNT+000078+00245'
|
||||
UNT+000081+00245'
|
||||
UNH+00246+KOTR:02:001:KV'
|
||||
IDK+105830232+99+BANK BKK'
|
||||
VDT+19980701+20100630'
|
||||
@@ -4421,13 +4427,16 @@ VKG+09+661430035+5++29++++75'
|
||||
VKG+03+661430035+5++07++++76'
|
||||
VKG+09+661430035+5++28++++76'
|
||||
VKG+09+661430035+5++29++++76'
|
||||
VKG+03+104027544+5++07++++A0'
|
||||
VKG+09+108433248+5++28++++A0'
|
||||
VKG+09+108433248+5++29++++A0'
|
||||
VKG+03+104027544+5++07++++B1'
|
||||
VKG+09+108433248+5++28++++B1'
|
||||
VKG+09+108433248+5++29++++B1'
|
||||
NAM+01+SBK+Hauptverwaltung'
|
||||
ANS+1+80339+München+Heimeranstr. 31-33'
|
||||
ANS+2+80017+München+201765'
|
||||
UNT+000078+00248'
|
||||
UNT+000081+00248'
|
||||
UNH+00249+KOTR:02:001:KV'
|
||||
IDK+108491751+99+BKK Kassana/Ost'
|
||||
VDT+20110801'
|
||||
@@ -6074,4 +6083,4 @@ NAM+01+Betriebskrankenkasse+futur+Gesch.Ber.Neue Bundesl
|
||||
ANS+1+47803+Krefeld+Girmesgath 5'
|
||||
ANS+3+70426+Stuttgart'
|
||||
UNT+000009+00365'
|
||||
UNZ+000365+00239'
|
||||
UNZ+000365+00241'
|
||||
@@ -1,4 +1,4 @@
|
||||
UNB+UNOC:3+109905003+999999999+240829:1525+00038++BN05Q424KE1'
|
||||
UNB+UNOC:3+109905003+999999999+241209:1525+00039++BN050225KE0'
|
||||
UNH+00001+KOTR:02:001:KV'
|
||||
IDK+101305000+99+Knappschaft Schl.-Holst.+01701'
|
||||
VDT+20120401'
|
||||
@@ -41,7 +41,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -57,7 +57,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -73,7 +73,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -621,7 +621,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -637,7 +637,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -653,7 +653,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -1201,7 +1201,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -1217,7 +1217,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -1233,7 +1233,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -1781,7 +1781,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -1797,7 +1797,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -1813,7 +1813,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -2361,7 +2361,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -2377,7 +2377,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -2393,7 +2393,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -2941,7 +2941,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -2957,7 +2957,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -2973,7 +2973,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -3521,7 +3521,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -3537,7 +3537,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -3553,7 +3553,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -4101,7 +4101,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -4117,7 +4117,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -4133,7 +4133,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -4681,7 +4681,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -4697,7 +4697,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -4713,7 +4713,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -5261,7 +5261,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -5277,7 +5277,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -5293,7 +5293,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -5841,7 +5841,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -5857,7 +5857,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -5873,7 +5873,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -6421,7 +6421,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -6437,7 +6437,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -6453,7 +6453,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -7001,7 +7001,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -7017,7 +7017,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -7033,7 +7033,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -7581,7 +7581,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -7597,7 +7597,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -7613,7 +7613,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -8161,7 +8161,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -8177,7 +8177,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -8193,7 +8193,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -8741,7 +8741,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -8757,7 +8757,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -8773,7 +8773,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -9321,7 +9321,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -9337,7 +9337,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -9353,7 +9353,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -9901,7 +9901,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -9917,7 +9917,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -9933,7 +9933,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -10481,7 +10481,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -10497,7 +10497,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -10513,7 +10513,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -11061,7 +11061,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -11077,7 +11077,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -11093,7 +11093,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -11641,7 +11641,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -11657,7 +11657,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -11673,7 +11673,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -12221,7 +12221,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -12237,7 +12237,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -12253,7 +12253,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -12801,7 +12801,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -12817,7 +12817,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -12833,7 +12833,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -13381,7 +13381,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -13397,7 +13397,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -13413,7 +13413,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -13961,7 +13961,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -13977,7 +13977,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -13993,7 +13993,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -14541,7 +14541,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -14557,7 +14557,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -14573,7 +14573,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -15121,7 +15121,7 @@ VKG+09+109906914+5++21+6+02++10'
|
||||
VKG+09+109906914+5++21+6+03++10'
|
||||
VKG+09+109906914+5++21+6+04++10'
|
||||
VKG+09+109906355+5++21+6+05++10'
|
||||
VKG+09+109906914+5++21+6+06++10'
|
||||
VKG+09+109906355+5++21+6+06++10'
|
||||
VKG+09+109906914+5++21+6+07++10'
|
||||
VKG+09+109906914+5++21+6+08++10'
|
||||
VKG+09+109906914+5++21+6+09++10'
|
||||
@@ -15137,7 +15137,7 @@ VKG+09+109906914+5++24+5+02++10'
|
||||
VKG+09+109906914+5++24+5+03++10'
|
||||
VKG+09+109906914+5++24+5+04++10'
|
||||
VKG+09+109906355+5++24+5+05++10'
|
||||
VKG+09+109906914+5++24+5+06++10'
|
||||
VKG+09+109906355+5++24+5+06++10'
|
||||
VKG+09+109906914+5++24+5+07++10'
|
||||
VKG+09+109906914+5++24+5+08++10'
|
||||
VKG+09+109906914+5++24+5+09++10'
|
||||
@@ -15153,7 +15153,7 @@ VKG+09+109906914+5++26+6+02++10'
|
||||
VKG+09+109906914+5++26+6+03++10'
|
||||
VKG+09+109906914+5++26+6+04++10'
|
||||
VKG+09+109906355+5++26+6+05++10'
|
||||
VKG+09+109906914+5++26+6+06++10'
|
||||
VKG+09+109906355+5++26+6+06++10'
|
||||
VKG+09+109906914+5++26+6+07++10'
|
||||
VKG+09+109906914+5++26+6+08++10'
|
||||
VKG+09+109906914+5++26+6+09++10'
|
||||
@@ -15731,4 +15731,4 @@ FKT+01'
|
||||
NAM+01+KNAPPSCHAFT+Kranken-und Pflegeversicherung'
|
||||
ANS+3+45095+Essen'
|
||||
UNT+000007+00035'
|
||||
UNZ+000035+00038'
|
||||
UNZ+000035+00039'
|
||||
@@ -1,5 +1,5 @@
|
||||
UNA:+,? '
|
||||
UNB+UNOC:3+109979990+999999999+241219:1420+00001++EK05Q125KE0'
|
||||
UNB+UNOC:3+109979990+999999999+250326:0824+00002++EK05Q225KE0'
|
||||
UNH+00001+KOTR:02:001:KV'
|
||||
IDK+100167999+99+DAK+78602'
|
||||
VDT+19951001'
|
||||
@@ -1475,6 +1475,39 @@ VKG+09+101567314+5++28++15++76'
|
||||
VKG+09+101567314+5++29++15++76'
|
||||
VKG+09+101567314+5++28++16++76'
|
||||
VKG+09+101567314+5++29++16++76'
|
||||
VKG+03+104593971+5++07++99++90'
|
||||
VKG+09+101567314+5++28++01++90'
|
||||
VKG+09+101567314+5++29++01++90'
|
||||
VKG+09+101567314+5++28++02++90'
|
||||
VKG+09+101567314+5++29++02++90'
|
||||
VKG+09+101567314+5++28++03++90'
|
||||
VKG+09+101567314+5++29++03++90'
|
||||
VKG+09+101567314+5++28++04++90'
|
||||
VKG+09+101567314+5++29++04++90'
|
||||
VKG+09+101567677+5++28++05++90'
|
||||
VKG+09+101567677+5++29++05++90'
|
||||
VKG+09+101567677+5++28++06++90'
|
||||
VKG+09+101567677+5++29++06++90'
|
||||
VKG+09+101567677+5++28++07++90'
|
||||
VKG+09+101567677+5++29++07++90'
|
||||
VKG+09+101567677+5++28++08++90'
|
||||
VKG+09+101567677+5++29++08++90'
|
||||
VKG+09+101567677+5++28++09++90'
|
||||
VKG+09+101567677+5++29++09++90'
|
||||
VKG+09+101567677+5++28++10++90'
|
||||
VKG+09+101567677+5++29++10++90'
|
||||
VKG+09+101567314+5++28++11++90'
|
||||
VKG+09+101567314+5++29++11++90'
|
||||
VKG+09+101567314+5++28++12++90'
|
||||
VKG+09+101567314+5++29++12++90'
|
||||
VKG+09+101567314+5++28++13++90'
|
||||
VKG+09+101567314+5++29++13++90'
|
||||
VKG+09+101567314+5++28++14++90'
|
||||
VKG+09+101567314+5++29++14++90'
|
||||
VKG+09+101567314+5++28++15++90'
|
||||
VKG+09+101567314+5++29++15++90'
|
||||
VKG+09+101567314+5++28++16++90'
|
||||
VKG+09+101567314+5++29++16++90'
|
||||
VKG+03+661430035+5++07++99++A0'
|
||||
VKG+09+661430035+5++28++99++A0'
|
||||
VKG+09+661430035+5++29++99++A0'
|
||||
@@ -1484,7 +1517,7 @@ ANS+2+20009+Hamburg+Postfach 10 14 44'
|
||||
ASP+01+07641/9201-555++ARZ Service Center+Rechnungsprüfung und -bezahlung Abrechnungscode 4x, 68'
|
||||
ASP+02+0341/25920-37++DAVASO GmbH+Rechnungsprüfung und -bezahlung Abrechnungscode 1x, 3x, 61, 62, 65, Ax'
|
||||
ASP+03+0351/32040-302++GFS+Abrechnungsprüfung für Abrechnungscode 2x, 50, 66, 71 - 74'
|
||||
UNT+000123+00126'
|
||||
UNT+000156+00126'
|
||||
UNH+00127+KOTR:02:001:KV'
|
||||
IDK+105836717+99+DAK'
|
||||
VDT+20171215'
|
||||
@@ -2613,4 +2646,4 @@ DFU+02+016+++++ftam.syntela.de?:9000'
|
||||
UEM+5+00+I8'
|
||||
UEM+6+00+I8'
|
||||
UNT+000013+00261'
|
||||
UNZ+000261+00001'
|
||||
UNZ+000261+00002'
|
||||
@@ -1,5 +1,5 @@
|
||||
UNA:+,? '
|
||||
UNB+UNOC:3+109900019+999999999+241219:1500+00032++IK05Q125KE1'
|
||||
UNB+UNOC:3+109900019+999999999+250220:1000+00033++IK05Q225KE0'
|
||||
UNH+00001+KOTR:02:001:KV'
|
||||
IDK+100202527+99+IKK Nord (vorm. IKK MV)+78301'
|
||||
VDT+19950801'
|
||||
@@ -2300,4 +2300,4 @@ NAM+01+IKK Classic+c/o DAVASO GmbH'
|
||||
ANS+1+04316+Leipzig+Sommerfelder Str. 120'
|
||||
ANS+2+04304+Leipzig+500761'
|
||||
UNT+000008+00227'
|
||||
UNZ+000227+00032'
|
||||
UNZ+000227+00033'
|
||||
@@ -1,4 +1,6 @@
|
||||
using BS.Shared.Exceptions;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Invoicing.GkvAbrechnung;
|
||||
using BS.Shared.Exceptions;
|
||||
using Dakota.Models;
|
||||
using Dakota.Models.Nachrichten;
|
||||
using Dakota.Models.Segmente.KTD;
|
||||
@@ -12,173 +14,221 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Logic
|
||||
{
|
||||
public class DakotaKTDReader
|
||||
{
|
||||
private static readonly string[] accept = new string[] { "UNH", "IDK", "FKT", "VKG", "UNT"};
|
||||
public class DakotaKTDReader
|
||||
{
|
||||
private static readonly string[] accept = new string[] { "UNH", "IDK", "FKT", "VKG", "UNT", "ANS" };
|
||||
|
||||
internal Dictionary<string, Dictionary<string, NachrichtKTD>> FileDictionary { get; set; }
|
||||
= new Dictionary<string, Dictionary<string, NachrichtKTD>>();
|
||||
internal Dictionary<string, Dictionary<string, NachrichtKTD>> FileDictionary { get; set; }
|
||||
= new Dictionary<string, Dictionary<string, NachrichtKTD>>();
|
||||
|
||||
public DakotaKTDReader(string ktd_folder_path)
|
||||
{
|
||||
var dir = new DirectoryInfo(ktd_folder_path);
|
||||
public DakotaKTDReader(string ktd_folder_path)
|
||||
{
|
||||
var dir = new DirectoryInfo(ktd_folder_path);
|
||||
|
||||
var files = dir.GetFiles();
|
||||
var files = dir.GetFiles();
|
||||
|
||||
foreach (var file in files)
|
||||
{
|
||||
var file_lines = File.ReadAllLines(file.FullName);
|
||||
foreach (var file in files)
|
||||
{
|
||||
var file_lines = File.ReadAllLines(file.FullName);
|
||||
|
||||
foo(file.Name, file_lines);
|
||||
}
|
||||
}
|
||||
foo(file.Name, file_lines);
|
||||
}
|
||||
}
|
||||
|
||||
public int GetFileCount() => FileDictionary.Count();
|
||||
public int GetAllFileEntryCount() => FileDictionary.Sum(x => x.Value.Count);
|
||||
public int GetFileCount() => FileDictionary.Count();
|
||||
public int GetAllFileEntryCount() => FileDictionary.Sum(x => x.Value.Count);
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="ikkrankenkasse"></param>
|
||||
/// <param name="abrechnungscode"></param>
|
||||
/// <param name="tarifkennzeichen"></param>
|
||||
/// <returns>Item1:Datenannahmestelle -
|
||||
/// Item2:Kostenträger -
|
||||
/// Item3:Krankenkasse</returns>
|
||||
public Tuple<string, string, string, string> Resolve(string ikkrankenkasse, string abrechnungscode, string tarifkennzeichen)
|
||||
{
|
||||
foreach (var kv in FileDictionary)
|
||||
{
|
||||
var dict = kv.Value;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="ikkrankenkasse"></param>
|
||||
/// <param name="abrechnungscode"></param>
|
||||
/// <param name="tarifkennzeichen"></param>
|
||||
/// <returns>Item1:Datenannahmestelle -
|
||||
/// Item2:Kostenträger -
|
||||
/// Item3:Krankenkasse</returns>
|
||||
public GkvKostentragerdateiSummary Resolve(string ikkrankenkasse, string abrechnungscode, string tarifkennzeichen)
|
||||
{
|
||||
foreach (var kv in FileDictionary)
|
||||
{
|
||||
var dict = kv.Value;
|
||||
|
||||
var search = GetIKNummern(dict, ikkrankenkasse, abrechnungscode, tarifkennzeichen);
|
||||
var search = GetIKNummern(dict, ikkrankenkasse, abrechnungscode, tarifkennzeichen);
|
||||
|
||||
if (search is object)
|
||||
if (search is object)
|
||||
{
|
||||
var datenannahmestelle = search.Item1;
|
||||
var datenannahmestelle = search.Item1;
|
||||
var nachricht = dict[datenannahmestelle];
|
||||
|
||||
var bez = dict[datenannahmestelle].SegmentIDK.Kurzbezeichnung;
|
||||
var bez = nachricht.SegmentIDK.Kurzbezeichnung;
|
||||
|
||||
return new Tuple<string, string, string, string>(datenannahmestelle, search.Item2, search.Item3, bez);
|
||||
}
|
||||
}
|
||||
var sum = new GkvKostentragerdateiSummary()
|
||||
{
|
||||
BezDatenannahmestelle = bez,
|
||||
IKDatenannahmestelle = datenannahmestelle,
|
||||
IKKostentrager = search.Item2,
|
||||
IKKrankenkasse = search.Item3
|
||||
};
|
||||
|
||||
return null;
|
||||
}
|
||||
foreach (var seg_ans in nachricht.SemgenteANS)
|
||||
{
|
||||
var address = GetAddress(seg_ans);
|
||||
|
||||
private Tuple<string, string, string> GetIKNummern(Dictionary<string, NachrichtKTD> dict, string ikkrankenkasse, string abrechnungscode, string tarifkennzeichen, string kostentrager = null)
|
||||
{
|
||||
if (kostentrager is null)
|
||||
kostentrager = ikkrankenkasse;
|
||||
if (seg_ans.ArtDerAnschrift == Models.Schlüssels.SchlüsselArtDerAnschrift.Großkundenanschrift)
|
||||
{
|
||||
sum.Großkundenanschrift = address;
|
||||
}
|
||||
else if(seg_ans.ArtDerAnschrift == Models.Schlüssels.SchlüsselArtDerAnschrift.Postfachanschrift)
|
||||
{
|
||||
sum.Postfachanschrift = address;
|
||||
}
|
||||
else if(seg_ans.ArtDerAnschrift == Models.Schlüssels.SchlüsselArtDerAnschrift.Hausanschrift)
|
||||
{
|
||||
sum.Hausanschrift = address;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
var search = dict.SingleOrDefault(kv => kv.Key == kostentrager).Value;
|
||||
return sum;
|
||||
}
|
||||
}
|
||||
|
||||
// Hat keinen Verweis auf eine KK gefunden
|
||||
if (search is null)
|
||||
return null;
|
||||
return null;
|
||||
}
|
||||
|
||||
var verweis = search.SegmentVKG.FirstOrDefault(x => x.ArtDerVerknüpfung == Models.Schlüssels.SchlüsselArtDerVerknüpfung.Kostentrager);
|
||||
private Tuple<string, string, string> GetIKNummern(Dictionary<string, NachrichtKTD> dict, string ikkrankenkasse, string abrechnungscode, string tarifkennzeichen, string kostentrager = null)
|
||||
{
|
||||
if (kostentrager is null)
|
||||
kostentrager = ikkrankenkasse;
|
||||
|
||||
// Hat Verweis auf weiteren Kostenträger gefunden
|
||||
if (verweis is object && verweis.IKVerknüpfungspartners != kostentrager)
|
||||
return GetIKNummern(dict, ikkrankenkasse, abrechnungscode, tarifkennzeichen, verweis.IKVerknüpfungspartners);
|
||||
var search = dict.SingleOrDefault(kv => kv.Key == kostentrager).Value;
|
||||
|
||||
var datenannahmestellen = search.SegmentVKG
|
||||
.Where(x => x.ArtDerVerknüpfung == Models.Schlüssels.SchlüsselArtDerVerknüpfung.DatenannahmestelleMitEntschlusselungsbefugnis)
|
||||
.ToList();
|
||||
// Hat keinen Verweis auf eine KK gefunden
|
||||
if (search is null)
|
||||
return null;
|
||||
|
||||
// Hat keinen Verweis auf Kostenträger oder Datenannahmestelle gefunden
|
||||
if (datenannahmestellen is null || !datenannahmestellen.Any())
|
||||
return null;
|
||||
var verweis = search.SegmentVKG.FirstOrDefault(x => x.ArtDerVerknüpfung == Models.Schlüssels.SchlüsselArtDerVerknüpfung.Kostentrager);
|
||||
|
||||
if (datenannahmestellen.Count() == 1)
|
||||
return GetIKNummern(datenannahmestellen.First(), kostentrager, ikkrankenkasse);
|
||||
// Hat Verweis auf weiteren Kostenträger gefunden
|
||||
if (verweis is object && verweis.IKVerknüpfungspartners != kostentrager)
|
||||
return GetIKNummern(dict, ikkrankenkasse, abrechnungscode, tarifkennzeichen, verweis.IKVerknüpfungspartners);
|
||||
|
||||
// Abrechnungscode "69" <=> Sozio
|
||||
var datenannahmestellen_2 = datenannahmestellen
|
||||
.Where(x => x.Abrechnungscode == abrechnungscode)
|
||||
.ToList();
|
||||
var datenannahmestellen = search.SegmentVKG
|
||||
.Where(x => x.ArtDerVerknüpfung == Models.Schlüssels.SchlüsselArtDerVerknüpfung.DatenannahmestelleMitEntschlusselungsbefugnis)
|
||||
.ToList();
|
||||
|
||||
if (datenannahmestellen_2.Count() == 1)
|
||||
return GetIKNummern(datenannahmestellen_2.First(), kostentrager, ikkrankenkasse);
|
||||
// Hat keinen Verweis auf Kostenträger oder Datenannahmestelle gefunden
|
||||
if (datenannahmestellen is null || !datenannahmestellen.Any())
|
||||
return null;
|
||||
|
||||
// Tarifkennzeichen
|
||||
var datenannahmestellen_3 = datenannahmestellen_2
|
||||
.Where(x => x.Tarifkennzeichen == tarifkennzeichen)
|
||||
.ToList();
|
||||
if (datenannahmestellen.Count() == 1)
|
||||
return GetIKNummern(datenannahmestellen.First(), kostentrager, ikkrankenkasse);
|
||||
|
||||
if (datenannahmestellen_3.Count() == 1)
|
||||
return GetIKNummern(datenannahmestellen_3.First(), kostentrager, ikkrankenkasse);
|
||||
// Abrechnungscode "69" <=> Sozio
|
||||
var datenannahmestellen_2 = datenannahmestellen
|
||||
.Where(x => x.Abrechnungscode == abrechnungscode)
|
||||
.ToList();
|
||||
|
||||
// ArtDesÜbermittlungsmediums "1" <=> Datenfernübertragung
|
||||
var filter_list = datenannahmestellen_3;
|
||||
if (datenannahmestellen_2.Count() == 1)
|
||||
return GetIKNummern(datenannahmestellen_2.First(), kostentrager, ikkrankenkasse);
|
||||
|
||||
if(!filter_list.Any())
|
||||
filter_list = datenannahmestellen_2;
|
||||
// Tarifkennzeichen
|
||||
var datenannahmestellen_3 = datenannahmestellen_2
|
||||
.Where(x => x.Tarifkennzeichen == tarifkennzeichen)
|
||||
.ToList();
|
||||
|
||||
if (!filter_list.Any())
|
||||
filter_list = datenannahmestellen;
|
||||
if (datenannahmestellen_3.Count() == 1)
|
||||
return GetIKNummern(datenannahmestellen_3.First(), kostentrager, ikkrankenkasse);
|
||||
|
||||
filter_list = filter_list
|
||||
.Where(x => x.ArtDesÜbermittlungsmediums == "1")
|
||||
.ToList();
|
||||
// ArtDesÜbermittlungsmediums "1" <=> Datenfernübertragung
|
||||
var filter_list = datenannahmestellen_3;
|
||||
|
||||
if (filter_list.Count() == 1)
|
||||
return GetIKNummern(filter_list.First(), kostentrager, ikkrankenkasse);
|
||||
if (!filter_list.Any())
|
||||
filter_list = datenannahmestellen_2;
|
||||
|
||||
return null;
|
||||
}
|
||||
if (!filter_list.Any())
|
||||
filter_list = datenannahmestellen;
|
||||
|
||||
private Tuple<string, string, string> GetIKNummern(SegmentKTDVKG vkg, string kostentrager, string ikkrankenkasse)
|
||||
{
|
||||
return new Tuple<string, string, string>(vkg.IKVerknüpfungspartners, kostentrager, ikkrankenkasse);
|
||||
}
|
||||
filter_list = filter_list
|
||||
.Where(x => x.ArtDesÜbermittlungsmediums == "1")
|
||||
.ToList();
|
||||
|
||||
private void foo(string filename, string[] lines)
|
||||
{
|
||||
var length = lines.Length;
|
||||
var dict = new Dictionary<string, NachrichtKTD>();
|
||||
if (filter_list.Count() == 1)
|
||||
return GetIKNummern(filter_list.First(), kostentrager, ikkrankenkasse);
|
||||
|
||||
FileDictionary.Add(filename, dict);
|
||||
return null;
|
||||
}
|
||||
|
||||
Queue<string> queue = new Queue<string>();
|
||||
int first_line = 0;
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
var line = lines[i];
|
||||
private Tuple<string, string, string> GetIKNummern(SegmentKTDVKG vkg, string kostentrager, string ikkrankenkasse)
|
||||
{
|
||||
return new Tuple<string, string, string>(vkg.IKVerknüpfungspartners, kostentrager, ikkrankenkasse);
|
||||
}
|
||||
|
||||
var type = GetType(line);
|
||||
private AddressDC GetAddress(SegmentKTDANS segment)
|
||||
{
|
||||
var address = new AddressDC();
|
||||
|
||||
if (type is null)
|
||||
continue;
|
||||
address.Street = clear(segment.StraßeHausnummerOderPostfach);
|
||||
address.Town = clear(segment.Ort);
|
||||
address.PostalCode = clear(segment.Postleitzahl);
|
||||
|
||||
if (type == "UNH")
|
||||
{
|
||||
first_line = i;
|
||||
}
|
||||
else if (type == "UNT")
|
||||
{
|
||||
var nachricht = NachrichtKTD.Parse(queue.ToArray(), filename, first_line);
|
||||
return address;
|
||||
}
|
||||
|
||||
if (dict.ContainsKey(nachricht.IKNummer))
|
||||
throw new Exception($"Beinhaltet Key bereits: {nachricht.IKNummer} in {filename} - l {first_line}");
|
||||
private string clear(string str)
|
||||
{
|
||||
string asciiOnly = new string(str.Where(c => c <= 127).ToArray());
|
||||
return asciiOnly;
|
||||
}
|
||||
|
||||
dict.Add(nachricht.IKNummer, nachricht);
|
||||
private void foo(string filename, string[] lines)
|
||||
{
|
||||
var length = lines.Length;
|
||||
var dict = new Dictionary<string, NachrichtKTD>();
|
||||
|
||||
queue.Clear();
|
||||
}
|
||||
else
|
||||
{
|
||||
queue.Enqueue(line);
|
||||
}
|
||||
}
|
||||
}
|
||||
FileDictionary.Add(filename, dict);
|
||||
|
||||
private string GetType(string line)
|
||||
{
|
||||
var type = line.Substring(0, 3);
|
||||
Queue<string> queue = new Queue<string>();
|
||||
int first_line = 0;
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
var line = lines[i];
|
||||
|
||||
return accept.Contains(type) ? type : null;
|
||||
}
|
||||
}
|
||||
var type = GetType(line);
|
||||
|
||||
if (type is null)
|
||||
continue;
|
||||
|
||||
if (type == "UNH")
|
||||
{
|
||||
first_line = i;
|
||||
}
|
||||
else if (type == "UNT")
|
||||
{
|
||||
var nachricht = NachrichtKTD.Parse(queue.ToArray(), filename, first_line);
|
||||
|
||||
if (dict.ContainsKey(nachricht.IKNummer))
|
||||
throw new Exception($"Beinhaltet Key bereits: {nachricht.IKNummer} in {filename} - l {first_line}");
|
||||
|
||||
dict.Add(nachricht.IKNummer, nachricht);
|
||||
|
||||
queue.Clear();
|
||||
}
|
||||
else
|
||||
{
|
||||
queue.Enqueue(line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private string GetType(string line)
|
||||
{
|
||||
var type = line.Substring(0, 3);
|
||||
|
||||
return accept.Contains(type) ? type : null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,12 +108,13 @@ namespace Dakota.Logic
|
||||
if (create4month < new DateTime(2024, 7, 1))
|
||||
return 19;
|
||||
|
||||
return 20;
|
||||
if (create4month < new DateTime(2026, 1, 1))
|
||||
return 20;
|
||||
|
||||
//if (create4month < new DateTime(2025, 1, 1))
|
||||
// return 20;
|
||||
if (create4month < new DateTime(2027, 1, 1))
|
||||
return 21;
|
||||
|
||||
//throw new NotImplementedException("Keine Unterstützung von Version 21 oder aufwärts");
|
||||
throw new NotImplementedException("Keine Unterstützung von Version 22 oder aufwärts");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
16
Dakota/Models/KTDSummary.cs
Normal file
16
Dakota/Models/KTDSummary.cs
Normal file
@@ -0,0 +1,16 @@
|
||||
using Dakota.Models.Nachrichten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models
|
||||
{
|
||||
internal class KTDSummary
|
||||
{
|
||||
public NachrichtKTD Krankenkasse { get; set; }
|
||||
public NachrichtKTD Kostenträger { get; set; }
|
||||
public NachrichtKTD Datenannahmestelle { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -1,42 +1,40 @@
|
||||
using Dakota.Models.Segmente;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Dakota.Models.Segmente;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
internal abstract class Nachricht : IRowable
|
||||
{
|
||||
public abstract List<Segment> GetAllSegments();
|
||||
internal abstract class Nachricht : IRowable
|
||||
{
|
||||
public abstract List<Segment> GetAllSegments();
|
||||
|
||||
public List<Segment> GetSegments()
|
||||
{
|
||||
return GetAllSegments().Where(x => !x.ShouldSkip()).ToList();
|
||||
}
|
||||
public List<Segment> GetSegments()
|
||||
{
|
||||
return GetAllSegments().Where(x => !x.ShouldSkip()).ToList();
|
||||
}
|
||||
|
||||
public int GetSegmentLength()
|
||||
{
|
||||
return GetSegments().Count + 2;
|
||||
}
|
||||
public int GetSegmentLength()
|
||||
{
|
||||
return GetSegments().Count + 2;
|
||||
}
|
||||
|
||||
public string GetRows()
|
||||
{
|
||||
var segs = GetSegments();
|
||||
var res = new List<string>();
|
||||
public string GetRows()
|
||||
{
|
||||
var segs = GetSegments();
|
||||
var res = new List<string>();
|
||||
|
||||
if (segs is null || !segs.Any())
|
||||
return string.Empty;
|
||||
if (segs is null || !segs.Any())
|
||||
return string.Empty;
|
||||
|
||||
foreach (var seg in segs)
|
||||
{
|
||||
res.Add(seg.GetRow());
|
||||
}
|
||||
foreach (var seg in segs)
|
||||
{
|
||||
res.Add(seg.GetRow());
|
||||
}
|
||||
|
||||
var str = string.Join(DakotaConfig.NewLine, res);
|
||||
var str = string.Join(DakotaConfig.NewLine, res);
|
||||
|
||||
return str;
|
||||
}
|
||||
}
|
||||
return str;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,73 +1,81 @@
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.KTD;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.KTD;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
internal class NachrichtKTD : Nachricht
|
||||
{
|
||||
public string FileName { get; set; }
|
||||
public int FirstLine { get; set; }
|
||||
internal class NachrichtKTD : Nachricht
|
||||
{
|
||||
public string FileName { get; set; }
|
||||
public int FirstLine { get; set; }
|
||||
|
||||
public SegmentKTDIDK SegmentIDK { get; set; }
|
||||
public SegmentKTDFKT SegmentFKT { get; set; }
|
||||
public List<SegmentKTDVKG> SegmentVKG { get; set; }
|
||||
public SegmentKTDIDK SegmentIDK { get; set; }
|
||||
public SegmentKTDFKT SegmentFKT { get; set; }
|
||||
public List<SegmentKTDVKG> SegmentVKG { get; set; } = new List<SegmentKTDVKG>();
|
||||
public List<SegmentKTDANS> SemgenteANS { get; set; } = new List<SegmentKTDANS>();
|
||||
|
||||
public NachrichtKTD()
|
||||
{
|
||||
SegmentVKG = new List<SegmentKTDVKG>();
|
||||
}
|
||||
|
||||
public string IKNummer
|
||||
{
|
||||
get { return SegmentIDK.Institutionskennzeichen; }
|
||||
}
|
||||
public NachrichtKTD()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public string IKNummer
|
||||
{
|
||||
get { return SegmentIDK.Institutionskennzeichen; }
|
||||
}
|
||||
|
||||
|
||||
public override List<Segment> GetAllSegments()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
public override List<Segment> GetAllSegments()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public static bool TryParse(string[] rows, string filename, int firstline, out NachrichtKTD nachricht)
|
||||
{
|
||||
nachricht = null;
|
||||
public static bool TryParse(string[] rows, string filename, int firstline, out NachrichtKTD nachricht)
|
||||
{
|
||||
nachricht = null;
|
||||
|
||||
try
|
||||
{
|
||||
nachricht = Parse(rows, filename, firstline);
|
||||
try
|
||||
{
|
||||
nachricht = Parse(rows, filename, firstline);
|
||||
|
||||
return true;
|
||||
}
|
||||
catch(Exception)
|
||||
{
|
||||
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
return false;
|
||||
}
|
||||
public static NachrichtKTD Parse(string[] rows, string filename, int firstline)
|
||||
{
|
||||
var nachricht = new NachrichtKTD();
|
||||
}
|
||||
|
||||
nachricht.SegmentIDK = SegmentKTDIDK.Parse(rows[0]);
|
||||
nachricht.SegmentFKT = SegmentKTDFKT.Parse(rows[1]);
|
||||
return false;
|
||||
}
|
||||
public static NachrichtKTD Parse(string[] rows, string filename, int firstline)
|
||||
{
|
||||
var nachricht = new NachrichtKTD();
|
||||
|
||||
var length = rows.Length;
|
||||
nachricht.SegmentIDK = SegmentKTDIDK.Parse(rows[0]);
|
||||
nachricht.SegmentFKT = SegmentKTDFKT.Parse(rows[1]);
|
||||
|
||||
for (int i = 2; i < length; i++)
|
||||
{
|
||||
nachricht.SegmentVKG.Add(SegmentKTDVKG.Parse(rows[i]));
|
||||
}
|
||||
var length = rows.Length;
|
||||
|
||||
nachricht.FileName = filename;
|
||||
nachricht.FirstLine = firstline;
|
||||
for (int i = 2; i < length; i++)
|
||||
{
|
||||
var row = rows[i];
|
||||
|
||||
return nachricht;
|
||||
}
|
||||
}
|
||||
if (row.StartsWith("VKG"))
|
||||
{
|
||||
nachricht.SegmentVKG.Add(SegmentKTDVKG.Parse(row));
|
||||
}
|
||||
else if (row.StartsWith("ANS"))
|
||||
{
|
||||
nachricht.SemgenteANS.Add(SegmentKTDANS.Parse(row));
|
||||
}
|
||||
}
|
||||
|
||||
nachricht.FileName = filename;
|
||||
nachricht.FirstLine = firstline;
|
||||
|
||||
return nachricht;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,99 +1,97 @@
|
||||
using Dakota.Models.Infos;
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLGA;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Dakota.Models.Infos;
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLGA;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
/// <summary>
|
||||
/// Gesamtaufstellung der
|
||||
/// Abrechnung(Rechnung)
|
||||
/// </summary>
|
||||
internal class NachrichtSLGA : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über die zu verarbeitende Rechnung, den Rechnungssteller
|
||||
/// (Leistungserbringer oder Abrechnungsstelle) und das IK der Krankenkasse von
|
||||
/// der Krankenversichertenkarte bzw.von der ärztlichen Verordnung
|
||||
/// </summary>
|
||||
public SegmentSLGAFKT SegmentFKT { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum.
|
||||
/// </summary>
|
||||
public SegmentSLGAREC SegmentREC { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen zur Umsatzsteuer.
|
||||
/// </summary>
|
||||
public SegmentSLGAUST SegmentUST { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen, ob Skonto gewährt wird
|
||||
/// (Skonto in Prozent, Zahlungsziel).
|
||||
/// </summary>
|
||||
public SegmentSLGASKO SegmentSKO { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES00 { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public List<SegmentSLGAGES> ListSegmentGES { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
/// </summary>
|
||||
public SegmentSLGANAM SegmentNAM { get; set; }
|
||||
/// <summary>
|
||||
/// Gesamtaufstellung der
|
||||
/// Abrechnung(Rechnung)
|
||||
/// </summary>
|
||||
internal class NachrichtSLGA : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über die zu verarbeitende Rechnung, den Rechnungssteller
|
||||
/// (Leistungserbringer oder Abrechnungsstelle) und das IK der Krankenkasse von
|
||||
/// der Krankenversichertenkarte bzw.von der ärztlichen Verordnung
|
||||
/// </summary>
|
||||
public SegmentSLGAFKT SegmentFKT { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum.
|
||||
/// </summary>
|
||||
public SegmentSLGAREC SegmentREC { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen zur Umsatzsteuer.
|
||||
/// </summary>
|
||||
public SegmentSLGAUST SegmentUST { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen, ob Skonto gewährt wird
|
||||
/// (Skonto in Prozent, Zahlungsziel).
|
||||
/// </summary>
|
||||
public SegmentSLGASKO SegmentSKO { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES00 { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public List<SegmentSLGAGES> ListSegmentGES { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
/// </summary>
|
||||
public SegmentSLGANAM SegmentNAM { get; set; }
|
||||
|
||||
public NachrichtSLGA()
|
||||
{
|
||||
SegmentFKT = new SegmentSLGAFKT();
|
||||
SegmentREC = new SegmentSLGAREC();
|
||||
SegmentUST = new SegmentSLGAUST();
|
||||
SegmentSKO = new SegmentSLGASKO();
|
||||
SegmentGES00 = new SegmentSLGAGES();
|
||||
ListSegmentGES = new List<SegmentSLGAGES>();
|
||||
SegmentNAM = new SegmentSLGANAM();
|
||||
}
|
||||
public NachrichtSLGA()
|
||||
{
|
||||
SegmentFKT = new SegmentSLGAFKT();
|
||||
SegmentREC = new SegmentSLGAREC();
|
||||
SegmentUST = new SegmentSLGAUST();
|
||||
SegmentSKO = new SegmentSLGASKO();
|
||||
SegmentGES00 = new SegmentSLGAGES();
|
||||
ListSegmentGES = new List<SegmentSLGAGES>();
|
||||
SegmentNAM = new SegmentSLGANAM();
|
||||
}
|
||||
|
||||
public override List<Segment> GetAllSegments()
|
||||
{
|
||||
var res = new List<Segment>();
|
||||
public override List<Segment> GetAllSegments()
|
||||
{
|
||||
var res = new List<Segment>();
|
||||
|
||||
res.Add(SegmentFKT);
|
||||
res.Add(SegmentREC);
|
||||
res.Add(SegmentUST);
|
||||
res.Add(SegmentSKO);
|
||||
res.Add(SegmentGES00);
|
||||
res.AddRange(ListSegmentGES);
|
||||
res.Add(SegmentNAM);
|
||||
res.Add(SegmentFKT);
|
||||
res.Add(SegmentREC);
|
||||
res.Add(SegmentUST);
|
||||
res.Add(SegmentSKO);
|
||||
res.Add(SegmentGES00);
|
||||
res.AddRange(ListSegmentGES);
|
||||
res.Add(SegmentNAM);
|
||||
|
||||
return res;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
public void Apply(InfoNachrichtSLGA info, bool isSammelrechnung)
|
||||
{
|
||||
SegmentFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen);
|
||||
|
||||
if(isSammelrechnung)
|
||||
SegmentFKT.Sammelrechnung.SetValue("J");
|
||||
public void Apply(InfoNachrichtSLGA info, bool isSammelrechnung)
|
||||
{
|
||||
SegmentFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen);
|
||||
|
||||
SegmentFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringer);
|
||||
SegmentFKT.IKKostenträger.SetValue(info.IKKostentrager);
|
||||
SegmentFKT.IKVersichertenKarte.SetValue(info.IKKrankenkasse);
|
||||
SegmentFKT.IKAbsender.SetValue(info.IKAbsender);
|
||||
if (isSammelrechnung)
|
||||
SegmentFKT.Sammelrechnung.SetValue("J");
|
||||
|
||||
SegmentREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
SegmentREC.EinzelRechnungsnummer.SetValue("0");
|
||||
SegmentREC.Rechnungsdatum.SetValue(info.Rechnungsdatum);
|
||||
SegmentREC.Rechnungsart.SetValue(info.Rechnungsart);
|
||||
SegmentFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringer);
|
||||
SegmentFKT.IKKostenträger.SetValue(info.IKKostentrager);
|
||||
SegmentFKT.IKVersichertenKarte.SetValue(info.IKKrankenkasse);
|
||||
SegmentFKT.IKAbsender.SetValue(info.IKAbsender);
|
||||
|
||||
SegmentNAM.Name1.SetValue(info.Name1);
|
||||
SegmentNAM.Name2.SetValue(info.Name2);
|
||||
SegmentNAM.Name3.SetValue(info.Name3);
|
||||
SegmentNAM.Name4.SetValue(info.Name4);
|
||||
}
|
||||
}
|
||||
SegmentREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
SegmentREC.EinzelRechnungsnummer.SetValue("0");
|
||||
SegmentREC.Rechnungsdatum.SetValue(info.Rechnungsdatum);
|
||||
SegmentREC.Rechnungsart.SetValue(info.Rechnungsart);
|
||||
|
||||
SegmentNAM.Name1.SetValue(info.Name1);
|
||||
SegmentNAM.Name2.SetValue(info.Name2);
|
||||
SegmentNAM.Name3.SetValue(info.Name3);
|
||||
SegmentNAM.Name4.SetValue(info.Name4);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,82 +1,80 @@
|
||||
using Dakota.Models.Blocke;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Dakota.Models.Blocke;
|
||||
using Dakota.Models.Infos;
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLLA;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
/// <summary>
|
||||
/// Leistungserbringer
|
||||
/// </summary>
|
||||
internal class NachrichtSLLA : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über den tatsächlichen
|
||||
/// Leistungserbringer und das IK der Krankenkasse von der
|
||||
/// Krankenversichertenkarte bzw.der ärztlichen Verordnung bezogen auf die folgenden Abrechnungsfälle.Es kommt je Nachricht nur einmal vor.
|
||||
/// </summary>
|
||||
public SegmentSLLAFKT SegmentSLLAFKT { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum
|
||||
/// </summary>
|
||||
public SegmentSLLAREC SegmentSLLAREC { get; private set; }
|
||||
/// <summary>
|
||||
/// Abrechnungsfälle (INV - BES)
|
||||
/// </summary>
|
||||
public List<BlockKlient> BlockKlienten { get; set; }
|
||||
/// <summary>
|
||||
/// Leistungserbringer
|
||||
/// </summary>
|
||||
internal class NachrichtSLLA : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über den tatsächlichen
|
||||
/// Leistungserbringer und das IK der Krankenkasse von der
|
||||
/// Krankenversichertenkarte bzw.der ärztlichen Verordnung bezogen auf die folgenden Abrechnungsfälle.Es kommt je Nachricht nur einmal vor.
|
||||
/// </summary>
|
||||
public SegmentSLLAFKT SegmentSLLAFKT { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum
|
||||
/// </summary>
|
||||
public SegmentSLLAREC SegmentSLLAREC { get; private set; }
|
||||
/// <summary>
|
||||
/// Abrechnungsfälle (INV - BES)
|
||||
/// </summary>
|
||||
public List<BlockKlient> BlockKlienten { get; set; }
|
||||
|
||||
|
||||
|
||||
public NachrichtSLLA()
|
||||
{
|
||||
SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
SegmentSLLAREC = new SegmentSLLAREC();
|
||||
public NachrichtSLLA()
|
||||
{
|
||||
SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
SegmentSLLAREC = new SegmentSLLAREC();
|
||||
|
||||
BlockKlienten = new List<BlockKlient>();
|
||||
}
|
||||
BlockKlienten = new List<BlockKlient>();
|
||||
}
|
||||
|
||||
public override List<Segment> GetAllSegments()
|
||||
{
|
||||
var list = new List<Segment>() { SegmentSLLAFKT, SegmentSLLAREC };
|
||||
public override List<Segment> GetAllSegments()
|
||||
{
|
||||
var list = new List<Segment>() { SegmentSLLAFKT, SegmentSLLAREC };
|
||||
|
||||
foreach (var block in BlockKlienten)
|
||||
{
|
||||
list.AddRange(block.GetSegments());
|
||||
}
|
||||
foreach (var block in BlockKlienten)
|
||||
{
|
||||
list.AddRange(block.GetSegments());
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
public void Add(BlockKlient fall)
|
||||
{
|
||||
BlockKlienten.Add(fall);
|
||||
}
|
||||
public void Apply(InfoNachrichtSLLA info)
|
||||
{
|
||||
SegmentSLLAFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen);
|
||||
SegmentSLLAFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringer);
|
||||
SegmentSLLAFKT.IKKostenträgers.SetValue(info.IKKostentrager);
|
||||
SegmentSLLAFKT.IKKrankenkasse.SetValue(info.IKKrankenkasse);
|
||||
//SegmentSLLAFKT.IKRechnungsstellers.SetValue(info.IKAbsender);
|
||||
public void Add(BlockKlient fall)
|
||||
{
|
||||
BlockKlienten.Add(fall);
|
||||
}
|
||||
public void Apply(InfoNachrichtSLLA info)
|
||||
{
|
||||
SegmentSLLAFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen);
|
||||
SegmentSLLAFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringer);
|
||||
SegmentSLLAFKT.IKKostenträgers.SetValue(info.IKKostentrager);
|
||||
SegmentSLLAFKT.IKKrankenkasse.SetValue(info.IKKrankenkasse);
|
||||
//SegmentSLLAFKT.IKRechnungsstellers.SetValue(info.IKAbsender);
|
||||
|
||||
foreach (var infofall in info.Abrechnungsfalle.OrderBy(x => x.InfosAbrechnungsposition.Min(y => y.DatumDerLeistungserbringung)))
|
||||
{
|
||||
var block = new BlockKlient();
|
||||
foreach (var infofall in info.Abrechnungsfalle.OrderBy(x => x.InfosAbrechnungsposition.Min(y => y.DatumDerLeistungserbringung)))
|
||||
{
|
||||
var block = new BlockKlient();
|
||||
|
||||
block.Apply(infofall);
|
||||
block.Apply(infofall);
|
||||
|
||||
Add(block);
|
||||
}
|
||||
Add(block);
|
||||
}
|
||||
|
||||
SegmentSLLAREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
SegmentSLLAREC.EinzelRechnungsnummer.SetValue("0");
|
||||
SegmentSLLAREC.Rechnungsdatum.SetValue(info.Rechnungsdatum);
|
||||
SegmentSLLAREC.Rechnungsart.SetValue(info.Rechnungsart);
|
||||
}
|
||||
}
|
||||
SegmentSLLAREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
SegmentSLLAREC.EinzelRechnungsnummer.SetValue("0");
|
||||
SegmentSLLAREC.Rechnungsdatum.SetValue(info.Rechnungsdatum);
|
||||
SegmentSLLAREC.Rechnungsart.SetValue(info.Rechnungsart);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
29
Dakota/Models/Schlüssels/SchlüsselArtDerAnschrift.cs
Normal file
29
Dakota/Models/Schlüssels/SchlüsselArtDerAnschrift.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselArtDerAnschrift : Schlüssel
|
||||
{
|
||||
public SchlüsselArtDerAnschrift(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselArtDerAnschrift Hausanschrift => new SchlüsselArtDerAnschrift("1");
|
||||
public static SchlüsselArtDerAnschrift Postfachanschrift => new SchlüsselArtDerAnschrift("2");
|
||||
public static SchlüsselArtDerAnschrift Großkundenanschrift => new SchlüsselArtDerAnschrift("3");
|
||||
|
||||
public static SchlüsselArtDerAnschrift Parse(string str)
|
||||
{
|
||||
var list = new SchlüsselArtDerAnschrift[] {
|
||||
Hausanschrift ,
|
||||
Postfachanschrift ,
|
||||
Großkundenanschrift};
|
||||
|
||||
var schlüssel = GetSchlüssel(list, str);
|
||||
|
||||
return schlüssel;
|
||||
}
|
||||
}
|
||||
}
|
||||
37
Dakota/Models/Segmente/KTD/SegmentKTDANS.cs
Normal file
37
Dakota/Models/Segmente/KTD/SegmentKTDANS.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using Dakota.Models.Schlüssels;
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace Dakota.Models.Segmente.KTD
|
||||
{
|
||||
[DebuggerDisplay("ANS+{Verarbeitungskennzeichen.Value}'")]
|
||||
internal class SegmentKTDANS : SegmentKTD
|
||||
{
|
||||
public SchlüsselArtDerAnschrift ArtDerAnschrift { get; set; }
|
||||
public string Postleitzahl { get; set; }
|
||||
public string Ort { get; set; }
|
||||
public string StraßeHausnummerOderPostfach { get; set; }
|
||||
|
||||
public static SegmentKTDANS Parse(string row)
|
||||
{
|
||||
var segment = new SegmentKTDANS();
|
||||
|
||||
var split = row.Trim(Segmentendezeichen).Split(Trennzeichen);
|
||||
|
||||
segment.ArtDerAnschrift = SchlüsselArtDerAnschrift.Parse(split[1]);
|
||||
segment.Postleitzahl = split[2];
|
||||
|
||||
if (split.Length <= 3)
|
||||
return segment;
|
||||
|
||||
segment.Ort = split[3];
|
||||
|
||||
if (split.Length <= 4)
|
||||
return segment;
|
||||
|
||||
segment.StraßeHausnummerOderPostfach = split[4];
|
||||
|
||||
return segment;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -36,7 +36,6 @@ namespace Dakota.Models.Segmente
|
||||
}
|
||||
public string GetRow()
|
||||
{
|
||||
Dateneinheit lastzero = null;
|
||||
var body = GetBody();
|
||||
var bodyRev = body.ToList();
|
||||
bodyRev.Reverse();
|
||||
|
||||
@@ -1,55 +1,27 @@
|
||||
namespace BeWo.Data.Access
|
||||
using System;
|
||||
|
||||
namespace BeWo.Data.Access
|
||||
{
|
||||
public static class DAOFactory
|
||||
{
|
||||
private static AdoDAO _AdoDAO;
|
||||
/// https://csharpindepth.com/articles/singleton
|
||||
/// -> Sixth version - using .NET 4's Lazy<T> type
|
||||
///
|
||||
/// Kleiner Fix bzgl Threadsafe
|
||||
private static readonly Lazy<AdoDAO> _AdoDAO = new Lazy<AdoDAO>(() => new AdoDAO());
|
||||
private static readonly Lazy<GenericDAO> _GenericDAO = new Lazy<GenericDAO>(() => new GenericDAO());
|
||||
private static readonly Lazy<FinanceDAO> _FinanceDAO = new Lazy<FinanceDAO>(() => new FinanceDAO());
|
||||
private static readonly Lazy<OrganisationDAO> _OrganisationDAO = new Lazy<OrganisationDAO>(() => new OrganisationDAO());
|
||||
private static readonly Lazy<ScriptDAO> _ScriptDAO = new Lazy<ScriptDAO>(() => new ScriptDAO());
|
||||
private static readonly Lazy<SearchDAO> _SearchDAO = new Lazy<SearchDAO>(() => new SearchDAO());
|
||||
private static readonly Lazy<UserDAO> _UserDAO = new Lazy<UserDAO>(() => new UserDAO());
|
||||
|
||||
private static GenericDAO _GenericDAO;
|
||||
|
||||
private static ScriptDAO _ScriptDAO;
|
||||
|
||||
private static SearchDAO _SearchDAO;
|
||||
|
||||
private static UserDAO _UserDAO;
|
||||
|
||||
public static AdoDAO AdoDAO
|
||||
{
|
||||
get
|
||||
{
|
||||
return _AdoDAO ?? (_AdoDAO = new AdoDAO());
|
||||
}
|
||||
}
|
||||
|
||||
public static GenericDAO GenericDAO
|
||||
{
|
||||
get
|
||||
{
|
||||
return _GenericDAO ?? (_GenericDAO = new GenericDAO());
|
||||
}
|
||||
}
|
||||
|
||||
public static ScriptDAO ScriptDAO
|
||||
{
|
||||
get
|
||||
{
|
||||
return _ScriptDAO ?? (_ScriptDAO = new ScriptDAO());
|
||||
}
|
||||
}
|
||||
|
||||
public static SearchDAO SearchDAO
|
||||
{
|
||||
get
|
||||
{
|
||||
return _SearchDAO ?? (_SearchDAO = new SearchDAO());
|
||||
}
|
||||
}
|
||||
|
||||
public static UserDAO UserDAO
|
||||
{
|
||||
get
|
||||
{
|
||||
return _UserDAO ?? (_UserDAO = new UserDAO());
|
||||
}
|
||||
}
|
||||
public static AdoDAO AdoDAO => _AdoDAO.Value;
|
||||
public static GenericDAO GenericDAO => _GenericDAO.Value;
|
||||
public static FinanceDAO FinanceDAO => _FinanceDAO.Value;
|
||||
public static OrganisationDAO OrganisationDAO => _OrganisationDAO.Value;
|
||||
public static ScriptDAO ScriptDAO => _ScriptDAO.Value;
|
||||
public static SearchDAO SearchDAO => _SearchDAO.Value;
|
||||
public static UserDAO UserDAO => _UserDAO.Value;
|
||||
}
|
||||
}
|
||||
101
Data/Access/FinanceDAO.cs
Normal file
101
Data/Access/FinanceDAO.cs
Normal file
@@ -0,0 +1,101 @@
|
||||
using BeWo.Data.Entities;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
using BS.Shared.DataContracts;
|
||||
using NHibernate.Criterion;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using BS.Shared.Interface;
|
||||
using BeWo.Data.Entities.Light;
|
||||
using BS.Shared;
|
||||
|
||||
namespace BeWo.Data.Access
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// Ggf Gkv in eigene DAO auslagern
|
||||
///
|
||||
/// </summary>
|
||||
public class FinanceDAO : AbstractBaseDAO
|
||||
{
|
||||
public bool HaveIKDatenannahmestelleChanged(IGkvAbrechnung gkvAbrechnung, string ikdatenannahmestelle)
|
||||
{
|
||||
if (gkvAbrechnung.TransferProtokolle is IEnumerable<IGkvTransferProtokoll> list && list.Any())
|
||||
{
|
||||
var last_prot_w_daten = list.Select(x => x.IKDatenannahmestelle).Where((x) => !string.IsNullOrEmpty(x)).LastOrDefault();
|
||||
|
||||
if (!string.IsNullOrEmpty(last_prot_w_daten) && last_prot_w_daten != ikdatenannahmestelle)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public IEnumerable<GkvAbrechnungLight> GetGkvAbrechnungen(DateTime? startDate, DateTime? endDate, bool useInvoiceDate = true)
|
||||
{
|
||||
if (endDate.HasValue)
|
||||
endDate = endDate.Value.Date.AddDays(1).AddMilliseconds(-1);
|
||||
|
||||
var lCriteria = CreateCriteriaIsActive<GkvAbrechnungLight>();
|
||||
if (useInvoiceDate)
|
||||
{
|
||||
if (startDate.HasValue)
|
||||
lCriteria.Add(Restrictions.Ge(nameof(GkvAbrechnungLight.ErstelltAm), startDate));
|
||||
if (endDate.HasValue)
|
||||
lCriteria.Add(Restrictions.Le(nameof(GkvAbrechnungLight.ErstelltAm), endDate));
|
||||
}
|
||||
else
|
||||
{
|
||||
if (startDate.HasValue)
|
||||
lCriteria.Add(Restrictions.Ge(nameof(GkvAbrechnungLight.AbrechnungsZeitraumEnde), startDate));
|
||||
if (endDate.HasValue)
|
||||
lCriteria.Add(Restrictions.Le(nameof(GkvAbrechnungLight.AbrechnungsZeitraumStart), endDate));
|
||||
}
|
||||
|
||||
return lCriteria.List<GkvAbrechnungLight>();
|
||||
}
|
||||
|
||||
public IEnumerable<GkvTransferProtokoll> GetGkvTransferProtokollByDateRange(DateTime? start, DateTime? end)
|
||||
{
|
||||
var lCriteria = CreateCriteria<GkvTransferProtokoll>();
|
||||
|
||||
if (start.HasValue)
|
||||
lCriteria.Add(Restrictions.Ge(nameof(GkvTransferProtokoll.ErstelltAm), start));
|
||||
if (end.HasValue)
|
||||
lCriteria.Add(Restrictions.Le(nameof(GkvTransferProtokoll.ErstelltAm), end));
|
||||
|
||||
return lCriteria.List<GkvTransferProtokoll>();
|
||||
}
|
||||
|
||||
public long GetGkvParentByProtokollOid(long oid)
|
||||
{
|
||||
return oid;
|
||||
}
|
||||
|
||||
public string GetGkvRawData(long oid, GkvRawDataType gkvRawData)
|
||||
{
|
||||
var criteria = CreateCriteria<GkvTransferProtokoll>()
|
||||
.Add(Restrictions.Where<GkvTransferProtokoll>(x => x.Oid == oid));
|
||||
|
||||
if (gkvRawData == GkvRawDataType.Auftragsdatei)
|
||||
{
|
||||
criteria = criteria.SetProjection(Projections.Property(nameof(GkvTransferProtokoll.Auftragsdatei)));
|
||||
}
|
||||
else if (gkvRawData == GkvRawDataType.Nutzdatendatei)
|
||||
{
|
||||
criteria = criteria.SetProjection(Projections.Property(nameof(GkvTransferProtokoll.Nutzdatendatei)));
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new ArgumentOutOfRangeException(nameof(gkvRawData), $"GkvRawDataType \'{gkvRawData}\' unbekannt.");
|
||||
}
|
||||
|
||||
var t = criteria.List<string>().SingleOrDefault();
|
||||
|
||||
return t;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3,9 +3,10 @@ using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using BeWo.Data.Entities;
|
||||
|
||||
using BeWo.Data.Entities.Light;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Extensions;
|
||||
using BS.Shared.DataContracts.Light;
|
||||
using NHibernate;
|
||||
using NHibernate.Criterion;
|
||||
using NHibernate.Proxy;
|
||||
@@ -165,7 +166,10 @@ namespace BeWo.Data.Access
|
||||
|
||||
Debug.WriteLine($"++++>INSERT von {entityType.FullName}");
|
||||
|
||||
try
|
||||
if (pEntity is LightEntity)
|
||||
throw new InvalidOperationException("Cannot insert LightEntity, only update! str:" + pEntity.ToString());
|
||||
|
||||
try
|
||||
{
|
||||
var session = Session;
|
||||
|
||||
@@ -211,7 +215,10 @@ namespace BeWo.Data.Access
|
||||
{
|
||||
foreach (BeWoEntityBase iEntity in pEntitys)
|
||||
{
|
||||
this.Session.Save(iEntity);
|
||||
if (iEntity is LightEntity)
|
||||
throw new InvalidOperationException("Cannot insert LightEntity, only update! str:" + iEntity.ToString());
|
||||
|
||||
this.Session.Save(iEntity);
|
||||
}
|
||||
|
||||
lTransaction.Commit();
|
||||
|
||||
49
Data/Access/OrganisationDAO.cs
Normal file
49
Data/Access/OrganisationDAO.cs
Normal file
@@ -0,0 +1,49 @@
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Data.Entities.Light;
|
||||
using BS.Shared.Core;
|
||||
using NHibernate.Criterion;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BeWo.Data.Access
|
||||
{
|
||||
public class OrganisationDAO : AbstractBaseDAO
|
||||
{
|
||||
public IList<Organisation> GetAllOrganisation2PersonRelations(long personOid)
|
||||
{
|
||||
var c = CreateCriteriaIsActive<Person>()
|
||||
.Add(Restrictions.Eq(BeWoEntityBase.PropertyName_Oid, personOid)).UniqueResult<Person>().Organisation2Persons.Select(s => s.Organisation).ToList();
|
||||
return c;
|
||||
}
|
||||
|
||||
public List<Organisation> GetAllOrganisationByIKKrankenkasse(string ikkrankenkasse)
|
||||
{
|
||||
var criteria = CreateCriteria<Organisation>()
|
||||
.Add(Restrictions.Where<Organisation>(x => x.IKKrankenkasse == ikkrankenkasse));
|
||||
|
||||
return criteria.List<Organisation>().ToList();
|
||||
}
|
||||
|
||||
public List<Organisation> GetAllActiveOrganisationByIKKrankenkasse(string ikkrankenkasse)
|
||||
{
|
||||
var criteria = CreateCriteria<Organisation>()
|
||||
.Add(Restrictions.Where<Organisation>(x => x.IsActive == BS.Shared.ActivationTypeId.Active && x.IKKrankenkasse == ikkrankenkasse));
|
||||
|
||||
return criteria.List<Organisation>().ToList();
|
||||
}
|
||||
|
||||
public virtual IEnumerable<Organisation> FindOrganisation(string pName, bool pOnlyCostBearer)
|
||||
{
|
||||
var lCriteria = CreateCriteria<Organisation>()
|
||||
.Add(Restrictions.Like(Organisation.PropertyName_Name, pName, MatchMode.Anywhere));
|
||||
|
||||
if (pOnlyCostBearer)
|
||||
lCriteria.Add(Restrictions.IsNotNull(Organisation.PropertyName_CostBearer));
|
||||
|
||||
return lCriteria.List<Organisation>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -47,8 +47,7 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<NoWarn>
|
||||
</NoWarn>
|
||||
<NoWarn>CS0659, CS0162, CS0168, CS0169</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
@@ -212,6 +211,8 @@
|
||||
<Compile Include="Access\AdoDAO.cs" />
|
||||
<Compile Include="Access\DAOFactory.cs" />
|
||||
<Compile Include="Access\GenericDAO.cs" />
|
||||
<Compile Include="Access\FinanceDAO.cs" />
|
||||
<Compile Include="Access\OrganisationDAO.cs" />
|
||||
<Compile Include="Access\ScriptDAO.cs" />
|
||||
<Compile Include="Access\SearchDAO.cs" />
|
||||
<Compile Include="Access\UserDAO.cs" />
|
||||
@@ -229,6 +230,11 @@
|
||||
<Compile Include="Entities\CustomerWohnhilfe.cs" />
|
||||
<Compile Include="Entities\IServiceRecord.cs" />
|
||||
<Compile Include="Entities\SignatureHistory.cs" />
|
||||
<Compile Include="Entities\Light\GkvAbrechnungLight.cs" />
|
||||
<Compile Include="Entities\Light\GkvTransferProtokollLight.cs" />
|
||||
<Compile Include="Entities\Light\InvoiceBaseLight.cs" />
|
||||
<Compile Include="Entities\Light\LightEntity.cs" />
|
||||
<Compile Include="Entities\Light\OrganisationLight.cs" />
|
||||
<Compile Include="Entities\TwoFactorCode.cs" />
|
||||
<Compile Include="Entities\AbwesenheitsInformationPrint.cs" />
|
||||
<Compile Include="Entities\AddressHistory.cs" />
|
||||
@@ -721,6 +727,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Access\Scripts\GetGkvSumByDateRange.sql" />
|
||||
<Content Include="Access\Scripts\GetGkvSumByDateRangeDebug.sql" />
|
||||
<Content Include="ICD10\icd10.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
|
||||
@@ -1,230 +1,60 @@
|
||||
using BS.Shared;
|
||||
using BS.Shared.Interface;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace BeWo.Data.Entities
|
||||
{
|
||||
[DebuggerDisplay("{Oid}: {Street}, {Town}")]
|
||||
public class Address : BeWoEntityBase
|
||||
{
|
||||
public static string PropertyName_AddressLine1 = "AddressLine1";
|
||||
[DebuggerDisplay("{Oid}: {Street}, {Town}")]
|
||||
public class Address : BeWoEntityBase
|
||||
{
|
||||
public static string PropertyName_AddressLine1 = "AddressLine1";
|
||||
public static string PropertyName_Country = "Country";
|
||||
public static string PropertyName_PostalCode = "PostalCode";
|
||||
public static string PropertyName_State = "State";
|
||||
public static string PropertyName_Street = "Street";
|
||||
public static string PropertyName_Town = "Town";
|
||||
|
||||
public static string PropertyName_Country = "Country";
|
||||
public Address()
|
||||
{
|
||||
_Tid = TableID.Address;
|
||||
}
|
||||
|
||||
public static string PropertyName_PostalCode = "PostalCode";
|
||||
public virtual string AddressLine1 { get; set; }
|
||||
public virtual string AddressLine2 { get; set; }
|
||||
public virtual string Country { get; set; }
|
||||
public virtual long? L_Version { get; set; }
|
||||
public virtual decimal? Latitude { get; set; }
|
||||
public virtual decimal? Longitude { get; set; }
|
||||
public virtual string PostalCode { get; set; }
|
||||
public virtual string State { get; set; }
|
||||
public virtual string Street { get; set; }
|
||||
public virtual string Town { get; set; }
|
||||
|
||||
public static string PropertyName_State = "State";
|
||||
public virtual Address CopyToNew()
|
||||
{
|
||||
return new Address
|
||||
{
|
||||
AddressLine1 = AddressLine1,
|
||||
AddressLine2 = this.AddressLine2,
|
||||
Country = this.Country,
|
||||
PostalCode = this.PostalCode,
|
||||
Notice = this.Notice,
|
||||
State = this.State,
|
||||
Street = this.Street,
|
||||
Town = this.Town
|
||||
};
|
||||
}
|
||||
|
||||
public static string PropertyName_Street = "Street";
|
||||
public override int GetHashCode()
|
||||
{
|
||||
if (this is null)
|
||||
return 0;
|
||||
|
||||
public static string PropertyName_Town = "Town";
|
||||
return Oid.Value.GetHashCode();
|
||||
}
|
||||
|
||||
private string _AddressLine1;
|
||||
|
||||
private string _AddressLine2;
|
||||
|
||||
private string _Country;
|
||||
|
||||
private string _PostalCode;
|
||||
|
||||
private string _State;
|
||||
|
||||
private string _Street;
|
||||
|
||||
private string _Town;
|
||||
|
||||
private decimal? _Latitude;
|
||||
|
||||
private decimal? _Longitude;
|
||||
|
||||
private long? _L_Version;
|
||||
|
||||
public Address()
|
||||
{
|
||||
this._Tid = TableID.Address;
|
||||
}
|
||||
|
||||
public virtual string AddressLine1
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._AddressLine1;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._AddressLine1, value))
|
||||
{
|
||||
this._AddressLine1 = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string AddressLine2
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._AddressLine2;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._AddressLine2, value))
|
||||
{
|
||||
this._AddressLine2 = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string Country
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Country;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Country, value))
|
||||
{
|
||||
this._Country = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string PostalCode
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._PostalCode;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._PostalCode, value))
|
||||
{
|
||||
this._PostalCode = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string State
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._State;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._State, value))
|
||||
{
|
||||
this._State = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string Street
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Street;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Street, value))
|
||||
{
|
||||
this._Street = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string Town
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Town;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Town, value))
|
||||
{
|
||||
this._Town = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual decimal? Latitude
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Latitude;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Latitude, value))
|
||||
{
|
||||
this._Latitude = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual decimal? Longitude
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Longitude;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Longitude, value))
|
||||
{
|
||||
this._Longitude = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual long? L_Version
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._L_Version;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._L_Version, value))
|
||||
{
|
||||
this._L_Version = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual Address CopyToNew()
|
||||
{
|
||||
return new Address
|
||||
{
|
||||
AddressLine1 = this.AddressLine1,
|
||||
AddressLine2 = this.AddressLine2,
|
||||
Country = this.Country,
|
||||
PostalCode = this.PostalCode,
|
||||
Notice = this.Notice,
|
||||
State = this.State,
|
||||
Street = this.Street,
|
||||
Town = this.Town
|
||||
};
|
||||
}
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
if (this is null)
|
||||
return 0;
|
||||
|
||||
return Oid.Value.GetHashCode();
|
||||
}
|
||||
}
|
||||
public virtual bool IsEmpty()
|
||||
{
|
||||
return string.IsNullOrWhiteSpace(Street + Town + PostalCode);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BS.Shared;
|
||||
|
||||
using BS.Shared;
|
||||
using BS.Shared.Core;
|
||||
using System;
|
||||
|
||||
namespace BeWo.Data.Entities
|
||||
{
|
||||
|
||||
@@ -28,6 +28,7 @@ namespace BeWo.Data.Entities
|
||||
public virtual IList<InvoiceBase> InvoiceBases { get; set; }
|
||||
public virtual IList<GkvTransferProtokoll> GkvTransferProtokolle { get; set; }
|
||||
|
||||
public virtual IGkvTransferProtokoll LastTransferProtokoll => GkvTransferProtokolle?.LastOrDefault();
|
||||
}
|
||||
public virtual IEnumerable<IGkvTransferProtokoll> TransferProtokolle => GkvTransferProtokolle;
|
||||
public virtual IGkvTransferProtokoll LastTransferProtokoll => GkvTransferProtokolle?.LastOrDefault();
|
||||
}
|
||||
}
|
||||
31
Data/Entities/Light/GkvAbrechnungLight.cs
Normal file
31
Data/Entities/Light/GkvAbrechnungLight.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
using BS.Shared.DataContracts.Light;
|
||||
using BS.Shared.Interface;
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.Serialization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
|
||||
namespace BeWo.Data.Entities.Light
|
||||
{
|
||||
public class GkvAbrechnungLight : LightEntity, IGkvAbrechnung
|
||||
{
|
||||
public virtual DateTime ErstelltAm { get; set; }
|
||||
public virtual decimal Betrag { get; set; }
|
||||
public virtual long OrganisationOid { get; set; }
|
||||
public virtual string OrganisationName { get; set; }
|
||||
public virtual DateTime? AbrechnungsZeitraumStart { get; set; }
|
||||
public virtual DateTime? AbrechnungsZeitraumEnde { get; set; }
|
||||
public virtual bool UrbelegeGesendet { get; set; }
|
||||
public virtual bool Bezahlt { get; set; }
|
||||
public virtual GkvVerfahrensstufe Verfahrensstufe { get; set; }
|
||||
public virtual IList<InvoiceBaseLight> InvoiceBases { get; set; }
|
||||
public virtual IList<GkvTransferProtokollLight> Protokolle { get; set; }
|
||||
|
||||
public virtual IEnumerable<IGkvTransferProtokoll> TransferProtokolle => Protokolle;
|
||||
public virtual IGkvTransferProtokoll LastTransferProtokoll => Protokolle?.LastOrDefault();
|
||||
}
|
||||
}
|
||||
38
Data/Entities/Light/GkvTransferProtokollLight.cs
Normal file
38
Data/Entities/Light/GkvTransferProtokollLight.cs
Normal file
@@ -0,0 +1,38 @@
|
||||
using BS.Shared;
|
||||
using BS.Shared.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.Serialization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BeWo.Data.Entities.Light
|
||||
{
|
||||
public class GkvTransferProtokollLight : LightEntity, IGkvTransferProtokoll
|
||||
{
|
||||
public virtual long GkvAbrechnungOid { get; set; }
|
||||
public virtual string AbsenderBezeichnung { get; set; }
|
||||
public virtual string EmpfangerBezeichnung { get; set; }
|
||||
public virtual string IKLeistungserbringer { get; set; }
|
||||
public virtual string IKKrankenkasse { get; set; }
|
||||
public virtual string IKKostentrager { get; set; }
|
||||
public virtual string IKDatenannahmestelle { get; set; }
|
||||
public virtual string Rechnungsnummer { get; set; }
|
||||
public virtual int Datenaustauschreferenz { get; set; }
|
||||
public virtual int Transfernummer { get; set; }
|
||||
public virtual string Transfername { get; set; }
|
||||
public virtual DateTime? ErstelltAm { get; set; }
|
||||
public virtual string Dateityp { get; set; }
|
||||
public virtual string Dateiname { get; set; }
|
||||
public virtual int Dateigrosse { get; set; }
|
||||
public virtual bool SentApp8Success { get; set; }
|
||||
public virtual bool SentDakotaSuccess { get; set; }
|
||||
public virtual GkvTransferResultType? ResultType { get; set; }
|
||||
public virtual string Fehlertitel { get; set; }
|
||||
public virtual DateTime? Fehlerdatum { get; set; }
|
||||
public virtual string Fehlernachricht { get; set; }
|
||||
|
||||
public string BezDatenannahmestelle => EmpfangerBezeichnung;
|
||||
}
|
||||
}
|
||||
24
Data/Entities/Light/InvoiceBaseLight.cs
Normal file
24
Data/Entities/Light/InvoiceBaseLight.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.Serialization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BeWo.Data.Entities.Light
|
||||
{
|
||||
public class InvoiceBaseLight : LightEntity
|
||||
{
|
||||
public virtual DateTime? AccountingPeriodEnd { get; set; }
|
||||
public virtual DateTime? AccountingPeriodStart { get; set; }
|
||||
public virtual string CustomerName { get; set; }
|
||||
public virtual string RecipientOrganisation { get; set; }
|
||||
public virtual InvoiceType Type { get; set; }
|
||||
public virtual string InvoiceTypeText { get; set; }
|
||||
public virtual DateTime? InvoiceDate { get; set; }
|
||||
public virtual string InvoiceNumber { get; set; }
|
||||
public virtual decimal? TotalAmount { get; set; }
|
||||
public virtual bool IsPaid { get; set; }
|
||||
}
|
||||
}
|
||||
13
Data/Entities/Light/LightEntity.cs
Normal file
13
Data/Entities/Light/LightEntity.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BeWo.Data.Entities.Light
|
||||
{
|
||||
public class LightEntity : BeWoEntityBase
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
19
Data/Entities/Light/OrganisationLight.cs
Normal file
19
Data/Entities/Light/OrganisationLight.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Interface;
|
||||
|
||||
namespace BeWo.Data.Entities.Light
|
||||
{
|
||||
[DebuggerDisplay("{Name}")]
|
||||
public class OrganisationLight : LightEntity, IOrganisation
|
||||
{
|
||||
public virtual long OrganisationOid { get; set; }
|
||||
public virtual long OrganisationVersion { get; set; }
|
||||
public virtual string Name { get; set; }
|
||||
public virtual string IKKrankenkasse { get; set; }
|
||||
public virtual string IKKostentrager { get; set; }
|
||||
public virtual string IKDatenannahmestelle { get; set; }
|
||||
public virtual string BezDatenannahmestelle { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -9,7 +9,6 @@ namespace BeWo.Data.Entities
|
||||
public static string PropertyName_Customer = "Customer";
|
||||
public static string PropertyName_Gueltig = "Gueltig";
|
||||
public static string PropertyName_Medikamentenverordnungen = "Medikamentenverordnungen";
|
||||
public static string PropertyName_Notice = "Notice";
|
||||
public static string PropertyName_MedListType = "MedListType";
|
||||
|
||||
public Medikamentenverordnungsliste()
|
||||
@@ -61,8 +60,11 @@ namespace BeWo.Data.Entities
|
||||
}
|
||||
}
|
||||
|
||||
#pragma warning disable CS0108 // Rethrow to preserve stack details
|
||||
private string _Notice;
|
||||
#pragma warning restore CS0108
|
||||
|
||||
#pragma warning disable CS0114 // Rethrow to preserve stack details // Rethrow to preserve stack details
|
||||
public virtual string Notice
|
||||
{
|
||||
get { return _Notice; }
|
||||
@@ -72,5 +74,6 @@ namespace BeWo.Data.Entities
|
||||
_Notice = value;
|
||||
}
|
||||
}
|
||||
#pragma warning restore CS0114 // Rethrow to preserve stack details
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,377 +1,72 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Interface;
|
||||
|
||||
namespace BeWo.Data.Entities
|
||||
{
|
||||
[DebuggerDisplay("{Name}")]
|
||||
public class Organisation : BeWoEntityBase
|
||||
{
|
||||
public static string PropertyName_Address = "Address";
|
||||
[DebuggerDisplay("{Name}")]
|
||||
public class Organisation : BeWoEntityBase, IOrganisation
|
||||
{
|
||||
public static string PropertyName_Address = "Address";
|
||||
public static string PropertyName_BankAccount = "BankAccount";
|
||||
public static string PropertyName_Contacts = "Contacts";
|
||||
public static string PropertyName_CostBearer = "CostBearer";
|
||||
public static string PropertyName_InvoiceAddress = "InvoiceAddress";
|
||||
public static string PropertyName_Name = "Name";
|
||||
public static string PropertyName_Name2 = "Name2";
|
||||
public static string PropertyName_DebitorNumber = "DebitorNumber";
|
||||
public static string PropertyName_Organisation2PersonList = "Organisation2PersonList";
|
||||
public static string PropertyName_Function = "OrganisationsFunction";
|
||||
public static string PropertyName_Arbeitszeiten = "Arbeitszeiten";
|
||||
public static string PropertyName_Feiertage = "Feiertage";
|
||||
|
||||
public static string PropertyName_BankAccount = "BankAccount";
|
||||
|
||||
public static string PropertyName_Contacts = "Contacts";
|
||||
|
||||
public static string PropertyName_CostBearer = "CostBearer";
|
||||
|
||||
public static string PropertyName_InvoiceAddress = "InvoiceAddress";
|
||||
|
||||
public static string PropertyName_Name = "Name";
|
||||
|
||||
public static string PropertyName_Name2 = "Name2";
|
||||
|
||||
public static string PropertyName_DebitorNumber = "DebitorNumber";
|
||||
|
||||
public static string PropertyName_Organisation2PersonList = "Organisation2PersonList";
|
||||
|
||||
public static string PropertyName_Function = "OrganisationsFunction";
|
||||
|
||||
public static string PropertyName_Arbeitszeiten = "Arbeitszeiten";
|
||||
|
||||
public static string PropertyName_Feiertage = "Feiertage";
|
||||
|
||||
public static string PropertyName_Leistungserbringergruppe = nameof(Leistungserbringergruppe);
|
||||
|
||||
public static string PropertyName_BusinessPartnerId = nameof(BusinessPartnerId);
|
||||
|
||||
private Address _Address;
|
||||
|
||||
private BankAccount _BankAccount;
|
||||
|
||||
private IList<Contact> _Contacts;
|
||||
|
||||
private CostBearer _CostBearer;
|
||||
|
||||
private Address _InvoiceAddress;
|
||||
|
||||
private ValueListEntry _Function;
|
||||
|
||||
private string _Name;
|
||||
|
||||
private string _Name2;
|
||||
|
||||
private string _DebitorNumber;
|
||||
|
||||
private IList<Organisation2Person> _Organisation2PersonList;
|
||||
|
||||
private IList<VarFieldValue> _VarFieldValueList;
|
||||
|
||||
private IList<Arbeitszeit> _Arbeitszeiten;
|
||||
|
||||
private IList<Feiertag> _Feiertage;
|
||||
|
||||
private string _IKKrankenkasse;
|
||||
|
||||
private string _IKKostentrager;
|
||||
|
||||
private string _IKDatenannahmestelle;
|
||||
|
||||
private string _BezDatenannahmestelle;
|
||||
|
||||
private string _Leistungserbringergruppe;
|
||||
|
||||
private string _BusinessPartnerId;
|
||||
|
||||
public Organisation()
|
||||
{
|
||||
this._Tid = TableID.Organisation;
|
||||
}
|
||||
|
||||
public virtual Address Address
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Address;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Address, value))
|
||||
{
|
||||
this._Address = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual BankAccount BankAccount
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._BankAccount;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._BankAccount, value))
|
||||
{
|
||||
this._BankAccount = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual IList<Contact> Contacts
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Contacts ?? (this._Contacts = new List<Contact>());
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Contacts, value))
|
||||
{
|
||||
this._Contacts = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual CostBearer CostBearer
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._CostBearer;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._CostBearer, value))
|
||||
{
|
||||
this._CostBearer = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual Address InvoiceAddress
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._InvoiceAddress;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._InvoiceAddress, value))
|
||||
{
|
||||
this._InvoiceAddress = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string Name
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Name;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Name, value))
|
||||
{
|
||||
this._Name = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string Name2
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Name2;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Name2, value))
|
||||
{
|
||||
this._Name2 = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string DebitorNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._DebitorNumber;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._DebitorNumber, value))
|
||||
{
|
||||
this._DebitorNumber = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual IList<Organisation2Person> Organisation2PersonList
|
||||
{
|
||||
get { return this._Organisation2PersonList ?? (this._Organisation2PersonList = new List<Organisation2Person>()); }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Organisation2PersonList, value))
|
||||
{
|
||||
this._Organisation2PersonList = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
public virtual IList<VarFieldValue> VarFieldValueList
|
||||
public Organisation()
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._VarFieldValueList ?? (this._VarFieldValueList = new List<VarFieldValue>());
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._VarFieldValueList, value))
|
||||
{
|
||||
this._VarFieldValueList = value;
|
||||
}
|
||||
}
|
||||
this._Tid = TableID.Organisation;
|
||||
}
|
||||
|
||||
public virtual ValueListEntry Function
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Function;
|
||||
}
|
||||
public virtual Address Address { get; set; }
|
||||
public virtual BankAccount BankAccount { get; set; }
|
||||
public virtual IList<Contact> Contacts { get; set; } = new List<Contact>();
|
||||
public virtual CostBearer CostBearer { get; set; }
|
||||
public virtual Address InvoiceAddress { get; set; }
|
||||
public virtual string Name { get; set; }
|
||||
public virtual string Name2 { get; set; }
|
||||
public virtual string DebitorNumber { get; set; }
|
||||
public virtual IList<Organisation2Person> Organisation2PersonList { get; set; } = new List<Organisation2Person>();
|
||||
public virtual IList<VarFieldValue> VarFieldValueList { get; set; } = new List<VarFieldValue>();
|
||||
public virtual ValueListEntry Function { get; set; }
|
||||
public virtual IList<Arbeitszeit> Arbeitszeiten { get; set; } = new List<Arbeitszeit>();
|
||||
public virtual IList<Feiertag> Feiertage { get; set; } = new List<Feiertag>();
|
||||
public virtual string IKKrankenkasse { get; set; }
|
||||
public virtual string IKKostentrager { get; set; }
|
||||
public virtual string IKDatenannahmestelle { get; set; }
|
||||
public virtual string BezDatenannahmestelle { get; set; }
|
||||
public virtual string Leistungserbringergruppe { get; set; }
|
||||
public virtual string BusinessPartnerId { get; set; }
|
||||
public virtual GkvVerfahrensstufe Verfahrensstufe { get; set; }
|
||||
public virtual bool GkvAusblenden { get; set; }
|
||||
public virtual Address HausanschriftDatenannahmestelle { get; set; }
|
||||
public virtual Address PostfachanschriftDatenannahmestelle { get; set; }
|
||||
public virtual Address GroßkundenanschriftDatenannahmestelle { get; set; }
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Function, value))
|
||||
{
|
||||
this._Function = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
//public virtual Address GetDatenannahmestelleAddress()
|
||||
//{
|
||||
// var addresses = new List<Address>()
|
||||
// {
|
||||
// HausanschriftDatenannahmestelle,
|
||||
// PostfachanschriftDatenannahmestelle,
|
||||
// GroßkundenanschriftDatenannahmestelle
|
||||
// };
|
||||
|
||||
public virtual IList<Arbeitszeit> Arbeitszeiten
|
||||
{
|
||||
get { return _Arbeitszeiten ?? (_Arbeitszeiten = new List<Arbeitszeit>()); }
|
||||
// foreach (var address in addresses)
|
||||
// {
|
||||
// if (address is Address && !address.IsEmpty())
|
||||
// return address;
|
||||
// }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_Arbeitszeiten, value))
|
||||
{
|
||||
_Arbeitszeiten = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual IList<Feiertag> Feiertage
|
||||
{
|
||||
get { return _Feiertage ?? (_Feiertage = new List<Feiertag>()); }
|
||||
|
||||
set
|
||||
{
|
||||
if (AreDifferent(_Feiertage, value))
|
||||
{
|
||||
_Feiertage = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
public virtual string IKKrankenkasse
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._IKKrankenkasse;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._IKKrankenkasse, value))
|
||||
{
|
||||
this._IKKrankenkasse = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string IKKostentrager
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._IKKostentrager;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._IKKostentrager, value))
|
||||
{
|
||||
this._IKKostentrager = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string IKDatenannahmestelle
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._IKDatenannahmestelle;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._IKDatenannahmestelle, value))
|
||||
{
|
||||
this._IKDatenannahmestelle = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string BezDatenannahmestelle
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._BezDatenannahmestelle;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._BezDatenannahmestelle, value))
|
||||
{
|
||||
this._BezDatenannahmestelle = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string Leistungserbringergruppe
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._Leistungserbringergruppe;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._Leistungserbringergruppe, value))
|
||||
{
|
||||
this._Leistungserbringergruppe = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string BusinessPartnerId
|
||||
{
|
||||
get
|
||||
{
|
||||
return this._BusinessPartnerId;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (this.AreDifferent(this._BusinessPartnerId, value))
|
||||
{
|
||||
this._BusinessPartnerId = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual GkvVerfahrensstufe Verfahrensstufe { get; set; }
|
||||
public virtual bool GkvAusblenden { get; set; }
|
||||
}
|
||||
// return null;
|
||||
//}
|
||||
}
|
||||
}
|
||||
@@ -27,11 +27,14 @@
|
||||
|
||||
<many-to-one name="Address" column="AddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="all" fetch="join"/>
|
||||
<many-to-one name="InvoiceAddress" column="InvoiceAddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="all" fetch="join"/>
|
||||
<many-to-one name="HausanschriftDatenannahmestelle" column="HausanschriftAddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="none" fetch="join"/>
|
||||
<many-to-one name="PostfachanschriftDatenannahmestelle" column="PostfachanschriftAddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="none" fetch="join"/>
|
||||
<many-to-one name="GroßkundenanschriftDatenannahmestelle" column="GroßkundenanschriftAddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="none" fetch="join"/>
|
||||
<many-to-one name="BankAccount" column="BankAccountOid" class="BeWo.Data.Entities.BankAccount, BeWo.Data" cascade="all" />
|
||||
<many-to-one name="CostBearer" column="CostBearerOid" cascade="all-delete-orphan" class="BeWo.Data.Entities.CostBearer, BeWo.Data" fetch="join"/>
|
||||
<many-to-one name="Function" column="FunctionValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" fetch="join"/>
|
||||
|
||||
<bag name="Contacts" table="Contact" generic="true" cascade="all-delete-orphan" batch-size="250">
|
||||
|
||||
<bag name="Contacts" table="Contact" generic="true" cascade="all-delete-orphan" batch-size="250">
|
||||
<key column="OrganisationOid" />
|
||||
<one-to-many class="BeWo.Data.Entities.Contact,BeWo.Data" />
|
||||
</bag>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -193,10 +193,13 @@ namespace Host
|
||||
|
||||
if (response.Gefunden)
|
||||
{
|
||||
response.IKDatenannahmestelle = resolved.Item1;
|
||||
response.IKKostentrager = resolved.Item2;
|
||||
response.IKKrankenkasse = resolved.Item3;
|
||||
response.BezDatenannahmestelle = resolved.Item4;
|
||||
response.IKDatenannahmestelle = resolved.IKDatenannahmestelle;
|
||||
response.IKKostentrager = resolved.IKKostentrager;
|
||||
response.IKKrankenkasse = resolved.IKKrankenkasse;
|
||||
response.BezDatenannahmestelle = resolved.BezDatenannahmestelle;
|
||||
response.Hausanschrift = resolved.Hausanschrift;
|
||||
response.Postfachanschrift = resolved.Postfachanschrift;
|
||||
response.Großkundenanschrift = response.Großkundenanschrift;
|
||||
}
|
||||
|
||||
SendResponse(response);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props" Condition="Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
@@ -40,6 +40,7 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<NoWarn>CS0659, CS0162, CS0168, CS0649</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
ALTER TABLE `organisation`
|
||||
ADD COLUMN `HausanschriftAddressOid` BIGINT NULL DEFAULT NULL AFTER `CostBearerOid`,
|
||||
ADD COLUMN `PostfachanschriftAddressOid` BIGINT NULL DEFAULT NULL AFTER `HausanschriftAddressOid`,
|
||||
ADD COLUMN `GroßkundenanschriftAddressOid` BIGINT NULL DEFAULT NULL AFTER `PostfachanschriftAddressOid`,
|
||||
ADD INDEX `FK_ORGANISA_HAUSADD_idx` (`HausanschriftAddressOid` ASC) VISIBLE,
|
||||
ADD INDEX `FK_ORGANISA_POSTADD_idx` (`PostfachanschriftAddressOid` ASC) VISIBLE,
|
||||
ADD INDEX `FK_ORGANISA_GROSADD_idx` (`GroßkundenanschriftAddressOid` ASC) VISIBLE;
|
||||
;
|
||||
ALTER TABLE `organisation`
|
||||
ADD CONSTRAINT `FK_ORGANISA_HAUSADD`
|
||||
FOREIGN KEY (`HausanschriftAddressOid`)
|
||||
REFERENCES `address` (`Oid`)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
ADD CONSTRAINT `FK_ORGANISA_POSTADD`
|
||||
FOREIGN KEY (`PostfachanschriftAddressOid`)
|
||||
REFERENCES `address` (`Oid`)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
ADD CONSTRAINT `FK_ORGANISA_GROSADD`
|
||||
FOREIGN KEY (`GroßkundenanschriftAddressOid`)
|
||||
REFERENCES `address` (`Oid`)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE;
|
||||
@@ -47,6 +47,7 @@
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<NoWarn>CS0659, CS0162, CS0168, CS0649, CS0219</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
||||
@@ -75,15 +75,18 @@ namespace BeWo.Report.ReportObjects
|
||||
var receiver_last = invoicebase.RecipientPersonLastName;
|
||||
var receiver_first_last = receiver_first.ToFormatFollows(receiver_last);
|
||||
|
||||
var receiver_postcode = invoicebase.RecipientPostCode;
|
||||
var receiver_town = invoicebase.RecipientTown;
|
||||
var receiver_postcode_town = receiver_postcode.ToFormatFollows(receiver_town);
|
||||
|
||||
result.ReceiverDatenannahmestelle = invoicebase.RecipientOrganisation.ToNullIfEmpty();
|
||||
result.ReceiverContactPerson = receiver_first_last;
|
||||
result.ReceiverDivision = invoicebase.RecipientDivision.ToNullIfEmpty();
|
||||
result.ReceiverStreet = invoicebase.RecipientStreet.ToNullIfEmpty();
|
||||
result.ReceiverPostCodeAndTown = receiver_postcode_town;
|
||||
|
||||
var datenannahmestelle = organisation.GetDatenannahmestelleAddress();
|
||||
|
||||
var datenannahme_postcode = datenannahmestelle.PostalCode;
|
||||
var datenannahme_town = datenannahmestelle.Town;
|
||||
var datenannahme_postcode_town = datenannahme_postcode.ToFormatFollows(datenannahme_town);
|
||||
|
||||
//result.ReceiverDivision = datenannahmestelle.AddressLine1.ToNullIfEmpty();
|
||||
result.ReceiverStreet = datenannahmestelle.Street.ToNullIfEmpty();
|
||||
result.ReceiverPostCodeAndTown = datenannahme_postcode_town;
|
||||
|
||||
result.KrankenkasseIK = organisation.IKKostentrager;
|
||||
result.KrankenkasseName = organisation.Name;
|
||||
|
||||
@@ -110,7 +110,32 @@ namespace LebenshilfeBadKreuznachFUD.Reporting
|
||||
}
|
||||
else
|
||||
{
|
||||
report = AddReportToReport<LeistungsnachweisAmbDienst>(report, sonstigesRo);
|
||||
//noch mal nach Q1 bis Q4 trennen
|
||||
var cat2Ro = new Dictionary<String, ServicesOverviewRO>();
|
||||
|
||||
if (sonstigesRo.Services != null && sonstigesRo.Services.Count > 0)
|
||||
{
|
||||
foreach (var item in sonstigesRo.Services)
|
||||
{
|
||||
if (!cat2Ro.ContainsKey(item.ServiceCategory))
|
||||
{
|
||||
cat2Ro.Add(item.ServiceCategory, ServicesOverviewRO.CopyFromRO(ro));
|
||||
}
|
||||
cat2Ro[item.ServiceCategory].Services.Add(item);
|
||||
}
|
||||
|
||||
|
||||
foreach (var item in cat2Ro.Values)
|
||||
{
|
||||
report = AddReportToReport<LeistungsnachweisAmbDienst>(report, item);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
report = AddReportToReport<LeistungsnachweisAmbDienst>(report, sonstigesRo);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (report == null)
|
||||
|
||||
@@ -47,11 +47,11 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell();
|
||||
this.GroupFooter2 = new DevExpress.XtraReports.UI.GroupFooterBand();
|
||||
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.formattingRuleStartDate = new DevExpress.XtraReports.UI.FormattingRule();
|
||||
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
|
||||
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
@@ -65,6 +65,8 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
|
||||
this.xrPictureBox3 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
|
||||
this.GroupHeader2 = new DevExpress.XtraReports.UI.GroupHeaderBand();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
|
||||
@@ -72,10 +74,8 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
//
|
||||
// Detail
|
||||
//
|
||||
this.Detail.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrTableServiceRecords1});
|
||||
this.Detail.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
|
||||
this.Detail.HeightF = 30F;
|
||||
this.Detail.HeightF = 0F;
|
||||
this.Detail.Name = "Detail";
|
||||
this.Detail.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
|
||||
this.Detail.StylePriority.UseFont = false;
|
||||
@@ -86,11 +86,11 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrTableServiceRecords1.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
|
||||
| DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTableServiceRecords1.LocationFloat = new DevExpress.Utils.PointFloat(100F, 0F);
|
||||
this.xrTableServiceRecords1.LocationFloat = new DevExpress.Utils.PointFloat(65.83334F, 0F);
|
||||
this.xrTableServiceRecords1.Name = "xrTableServiceRecords1";
|
||||
this.xrTableServiceRecords1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
this.xrTableRow2});
|
||||
this.xrTableServiceRecords1.SizeF = new System.Drawing.SizeF(523.6665F, 30F);
|
||||
this.xrTableServiceRecords1.SizeF = new System.Drawing.SizeF(564.4999F, 30F);
|
||||
this.xrTableServiceRecords1.StylePriority.UseBackColor = false;
|
||||
this.xrTableServiceRecords1.StylePriority.UseBorders = false;
|
||||
this.xrTableServiceRecords1.StylePriority.UsePadding = false;
|
||||
@@ -138,13 +138,14 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrTableCell12.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell12.Text = "Bemerkungen";
|
||||
this.xrTableCell12.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
|
||||
this.xrTableCell12.Weight = 0.38630561020946352D;
|
||||
this.xrTableCell12.Weight = 0.44849024625671119D;
|
||||
//
|
||||
// DetailReport
|
||||
//
|
||||
this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
|
||||
this.Detail1,
|
||||
this.GroupFooter2});
|
||||
this.GroupFooter2,
|
||||
this.GroupHeader2});
|
||||
this.DetailReport.DataMember = "Services";
|
||||
this.DetailReport.DataSource = this.bindingSource1;
|
||||
this.DetailReport.Level = 0;
|
||||
@@ -168,12 +169,12 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrTable3.BorderColor = System.Drawing.Color.Black;
|
||||
this.xrTable3.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
|
||||
| DevExpress.XtraPrinting.BorderSide.Bottom)));
|
||||
this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(100F, 0F);
|
||||
this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(65.83334F, 0F);
|
||||
this.xrTable3.Name = "xrTable3";
|
||||
this.xrTable3.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
|
||||
this.xrTable3.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
|
||||
this.xrTableRow6});
|
||||
this.xrTable3.SizeF = new System.Drawing.SizeF(523.6666F, 18F);
|
||||
this.xrTable3.SizeF = new System.Drawing.SizeF(564.4999F, 18F);
|
||||
this.xrTable3.StylePriority.UsePadding = false;
|
||||
this.xrTable3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
//
|
||||
@@ -227,23 +228,34 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrTableCell7.StylePriority.UseBorders = false;
|
||||
this.xrTableCell7.StylePriority.UsePadding = false;
|
||||
this.xrTableCell7.Text = "xrTableCell7";
|
||||
this.xrTableCell7.Weight = 0.32028610054538287D;
|
||||
this.xrTableCell7.Weight = 0.3718432709052471D;
|
||||
//
|
||||
// GroupFooter2
|
||||
//
|
||||
this.GroupFooter2.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrPictureBox2,
|
||||
this.xrLabel2,
|
||||
this.xrLabel5,
|
||||
this.xrLabel4,
|
||||
this.xrLabel3});
|
||||
this.GroupFooter2.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
|
||||
this.GroupFooter2.HeightF = 115F;
|
||||
this.GroupFooter2.KeepTogether = true;
|
||||
this.GroupFooter2.Name = "GroupFooter2";
|
||||
this.GroupFooter2.StylePriority.UseFont = false;
|
||||
//
|
||||
// xrPictureBox2
|
||||
//
|
||||
this.xrPictureBox2.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("ImageSource", null, "CustomerSignature")});
|
||||
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(360.389F, 61.99997F);
|
||||
this.xrPictureBox2.Name = "xrPictureBox2";
|
||||
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(217.6945F, 35.50002F);
|
||||
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
|
||||
//
|
||||
// xrLabel2
|
||||
//
|
||||
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(100F, 65.83334F);
|
||||
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(65.83334F, 65.83334F);
|
||||
this.xrLabel2.Multiline = true;
|
||||
this.xrLabel2.Name = "xrLabel2";
|
||||
this.xrLabel2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -256,7 +268,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
//
|
||||
// xrLabel5
|
||||
//
|
||||
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(370F, 0F);
|
||||
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(335.8333F, 0F);
|
||||
this.xrLabel5.Multiline = true;
|
||||
this.xrLabel5.Name = "xrLabel5";
|
||||
this.xrLabel5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -275,7 +287,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrLabel4.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.Minutes")});
|
||||
this.xrLabel4.Font = new DevExpress.Drawing.DXFont("Calibri", 12F, DevExpress.Drawing.DXFontStyle.Bold);
|
||||
this.xrLabel4.LocationFloat = new DevExpress.Utils.PointFloat(180F, 0F);
|
||||
this.xrLabel4.LocationFloat = new DevExpress.Utils.PointFloat(145.8333F, 0F);
|
||||
this.xrLabel4.Multiline = true;
|
||||
this.xrLabel4.Name = "xrLabel4";
|
||||
this.xrLabel4.SizeF = new System.Drawing.SizeF(190F, 25F);
|
||||
@@ -292,20 +304,16 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
//
|
||||
this.xrLabel3.Borders = DevExpress.XtraPrinting.BorderSide.Top;
|
||||
this.xrLabel3.Font = new DevExpress.Drawing.DXFont("Calibri", 8F);
|
||||
this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(370F, 97.5F);
|
||||
this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(335.8333F, 97.5F);
|
||||
this.xrLabel3.Multiline = true;
|
||||
this.xrLabel3.Name = "xrLabel3";
|
||||
this.xrLabel3.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
this.xrLabel3.SizeF = new System.Drawing.SizeF(253.6666F, 17.5F);
|
||||
this.xrLabel3.SizeF = new System.Drawing.SizeF(294.4999F, 17.5F);
|
||||
this.xrLabel3.StylePriority.UseBorders = false;
|
||||
this.xrLabel3.StylePriority.UseFont = false;
|
||||
this.xrLabel3.StylePriority.UseTextAlignment = false;
|
||||
this.xrLabel3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
//
|
||||
// bindingSource1
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
|
||||
//
|
||||
// formattingRuleStartDate
|
||||
//
|
||||
this.formattingRuleStartDate.Condition = "[StartDate2] < [StartDate]";
|
||||
@@ -316,19 +324,20 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
// ReportHeader
|
||||
//
|
||||
this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrPictureBox3,
|
||||
this.xrLabel15,
|
||||
this.xrLabel17,
|
||||
this.xrLabel12,
|
||||
this.xrLabel1,
|
||||
this.xrLabel9});
|
||||
this.ReportHeader.HeightF = 150F;
|
||||
this.ReportHeader.HeightF = 240F;
|
||||
this.ReportHeader.Name = "ReportHeader";
|
||||
this.ReportHeader.StylePriority.UseFont = false;
|
||||
//
|
||||
// xrLabel15
|
||||
//
|
||||
this.xrLabel15.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
|
||||
this.xrLabel15.LocationFloat = new DevExpress.Utils.PointFloat(312.7917F, 62.5F);
|
||||
this.xrLabel15.LocationFloat = new DevExpress.Utils.PointFloat(278.6251F, 150F);
|
||||
this.xrLabel15.Multiline = true;
|
||||
this.xrLabel15.Name = "xrLabel15";
|
||||
this.xrLabel15.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -342,7 +351,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
// xrLabel17
|
||||
//
|
||||
this.xrLabel17.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
|
||||
this.xrLabel17.LocationFloat = new DevExpress.Utils.PointFloat(312.7917F, 105.8333F);
|
||||
this.xrLabel17.LocationFloat = new DevExpress.Utils.PointFloat(278.6251F, 193.3333F);
|
||||
this.xrLabel17.Multiline = true;
|
||||
this.xrLabel17.Name = "xrLabel17";
|
||||
this.xrLabel17.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -355,7 +364,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
//
|
||||
// xrLabel12
|
||||
//
|
||||
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(100F, 105.8333F);
|
||||
this.xrLabel12.LocationFloat = new DevExpress.Utils.PointFloat(65.83334F, 193.3333F);
|
||||
this.xrLabel12.Multiline = true;
|
||||
this.xrLabel12.Name = "xrLabel12";
|
||||
this.xrLabel12.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -368,7 +377,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
// xrLabel1
|
||||
//
|
||||
this.xrLabel1.Font = new DevExpress.Drawing.DXFont("Calibri", 12F, DevExpress.Drawing.DXFontStyle.Bold);
|
||||
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(100F, 0F);
|
||||
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(65.83334F, 87.5F);
|
||||
this.xrLabel1.Multiline = true;
|
||||
this.xrLabel1.Name = "xrLabel1";
|
||||
this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -379,7 +388,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
//
|
||||
// xrLabel9
|
||||
//
|
||||
this.xrLabel9.LocationFloat = new DevExpress.Utils.PointFloat(100F, 62.5F);
|
||||
this.xrLabel9.LocationFloat = new DevExpress.Utils.PointFloat(65.83334F, 150F);
|
||||
this.xrLabel9.Multiline = true;
|
||||
this.xrLabel9.Name = "xrLabel9";
|
||||
this.xrLabel9.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
|
||||
@@ -412,15 +421,13 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
//
|
||||
// topMarginBand1
|
||||
//
|
||||
this.topMarginBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrPictureBox3});
|
||||
this.topMarginBand1.HeightF = 120F;
|
||||
this.topMarginBand1.HeightF = 40F;
|
||||
this.topMarginBand1.Name = "topMarginBand1";
|
||||
//
|
||||
// xrPictureBox3
|
||||
//
|
||||
this.xrPictureBox3.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox3.ImageSource"));
|
||||
this.xrPictureBox3.LocationFloat = new DevExpress.Utils.PointFloat(200F, 37.5F);
|
||||
this.xrPictureBox3.LocationFloat = new DevExpress.Utils.PointFloat(196.6667F, 0F);
|
||||
this.xrPictureBox3.Name = "xrPictureBox3";
|
||||
this.xrPictureBox3.SizeF = new System.Drawing.SizeF(267.7083F, 71.87493F);
|
||||
//
|
||||
@@ -429,6 +436,18 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.bottomMarginBand1.HeightF = 40F;
|
||||
this.bottomMarginBand1.Name = "bottomMarginBand1";
|
||||
//
|
||||
// GroupHeader2
|
||||
//
|
||||
this.GroupHeader2.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrTableServiceRecords1});
|
||||
this.GroupHeader2.HeightF = 30F;
|
||||
this.GroupHeader2.Name = "GroupHeader2";
|
||||
this.GroupHeader2.RepeatEveryPage = true;
|
||||
//
|
||||
// bindingSource1
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
|
||||
//
|
||||
// LeistungsnachweisAmbDienst
|
||||
//
|
||||
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
|
||||
@@ -444,7 +463,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.formattingRuleServiceDesc,
|
||||
this.formattingRuleCostBearer,
|
||||
this.formattingRuleEmployeeName});
|
||||
this.Margins = new DevExpress.Drawing.DXMargins(80F, 80F, 120F, 40F);
|
||||
this.Margins = new DevExpress.Drawing.DXMargins(80F, 80F, 40F, 40F);
|
||||
this.PageHeight = 1169;
|
||||
this.PageWidth = 827;
|
||||
this.PaperKind = DevExpress.Drawing.Printing.DXPaperKind.A4;
|
||||
@@ -492,5 +511,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel4;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel3;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel2;
|
||||
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox2;
|
||||
private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader2;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -57,9 +57,9 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
{
|
||||
item.Notice = item.ServiceDescription;
|
||||
}
|
||||
else
|
||||
else if (!String.IsNullOrEmpty(item.ServiceDescription))
|
||||
{
|
||||
//item.Notice = String.Format("{0}, {1}", item.ServiceDescription, item.Notice);
|
||||
item.Notice = String.Format("{0}, {1}", item.ServiceDescription, item.Notice);
|
||||
}
|
||||
//if (!item.DurationInStunden)
|
||||
//{
|
||||
|
||||
@@ -54,6 +54,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.formattingRuleStartDate = new DevExpress.XtraReports.UI.FormattingRule();
|
||||
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
|
||||
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
|
||||
@@ -69,7 +70,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
|
||||
this.xrPictureBox3 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
|
||||
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
|
||||
@@ -284,6 +285,7 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
// GroupFooter2
|
||||
//
|
||||
this.GroupFooter2.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
|
||||
this.xrPictureBox2,
|
||||
this.xrLabel5,
|
||||
this.xrLabel4,
|
||||
this.xrLabel3});
|
||||
@@ -342,6 +344,10 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.xrLabel3.Text = "Unterschrift Leistungsempfänger";
|
||||
this.xrLabel3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
|
||||
//
|
||||
// bindingSource1
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
|
||||
//
|
||||
// formattingRuleStartDate
|
||||
//
|
||||
this.formattingRuleStartDate.Condition = "[StartDate2] < [StartDate]";
|
||||
@@ -493,9 +499,14 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
this.bottomMarginBand1.HeightF = 30F;
|
||||
this.bottomMarginBand1.Name = "bottomMarginBand1";
|
||||
//
|
||||
// bindingSource1
|
||||
// xrPictureBox2
|
||||
//
|
||||
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
|
||||
this.xrPictureBox2.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
|
||||
new DevExpress.XtraReports.UI.XRBinding("ImageSource", null, "CustomerSignature")});
|
||||
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(398.7223F, 9.499969F);
|
||||
this.xrPictureBox2.Name = "xrPictureBox2";
|
||||
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(217.6945F, 35.50002F);
|
||||
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
|
||||
//
|
||||
// LeistungsnachweisEntlastungsbeitrag
|
||||
//
|
||||
@@ -565,5 +576,6 @@ namespace LebenshilfeBadKreuznachFUD.Reporting.Reports
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel5;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel4;
|
||||
private DevExpress.XtraReports.UI.XRLabel xrLabel3;
|
||||
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox2;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<NoWarn>CS0659, CS0162, CS0168, CS0649</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
||||
@@ -12,7 +12,7 @@ using BS.Shared.Extensions;
|
||||
namespace BeWo.Service.DCEntityMapper
|
||||
{
|
||||
public abstract class AbstractIDCEntityMapper<TEntity, TDC> : IDCEntityMapper<TEntity, TDC>, IJsonMapper<TEntity, TDC>
|
||||
where TDC : new() where TEntity : BeWoEntityBase, new()
|
||||
where TDC : class, new() where TEntity : BeWoEntityBase, new()
|
||||
{
|
||||
public bool ConcurrencyCheck(long? pDataContractVersion, BeWoEntityBase pEntity)
|
||||
{
|
||||
@@ -31,9 +31,20 @@ namespace BeWo.Service.DCEntityMapper
|
||||
}
|
||||
return lResult;
|
||||
}
|
||||
public virtual TDC MapToNewDC(TEntity pEntity, bool ignoreNullEntity)
|
||||
|
||||
public virtual TDC CreateOrMapToNewDC(TEntity pEntity, bool nullDCOnNullEntity = false)
|
||||
{
|
||||
if (ignoreNullEntity || pEntity is object)
|
||||
if (pEntity is object)
|
||||
return MapToNewDC(pEntity);
|
||||
|
||||
if (nullDCOnNullEntity)
|
||||
return null;
|
||||
|
||||
return CreateNewDC();
|
||||
}
|
||||
public virtual TDC MapToNewDC(TEntity pEntity, bool dontCreateNewDConNullEntity)
|
||||
{
|
||||
if (dontCreateNewDConNullEntity || pEntity is object)
|
||||
return MapToNewDC(pEntity);
|
||||
|
||||
return CreateNewDC();
|
||||
@@ -131,9 +142,9 @@ namespace BeWo.Service.DCEntityMapper
|
||||
// .Select(dc => MapToNewEntity(dc)));
|
||||
|
||||
}
|
||||
public virtual TEntity MergeWithEntity(TDC pDataContract, TEntity pEntity, bool ignoreNullDC)
|
||||
public virtual TEntity MergeOrCreateWithEntity(TDC pDataContract, TEntity pEntity)
|
||||
{
|
||||
if (ignoreNullDC || pDataContract is object)
|
||||
if (pDataContract is object)
|
||||
{
|
||||
if (pEntity is null)
|
||||
pEntity = CreateNewEntity();
|
||||
|
||||
48
Service/DCEntityMapper/AddressDC_Address.cs
Normal file
48
Service/DCEntityMapper/AddressDC_Address.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using System.Linq;
|
||||
using BeWo.Data.Entities;
|
||||
using BS.Shared.DataContracts;
|
||||
|
||||
namespace BeWo.Service.DCEntityMapper
|
||||
{
|
||||
public class AddressDC_Address : AbstractIDCEntityMapper<Address, AddressDC>
|
||||
{
|
||||
public override AddressDC MergeWithDC(Address pEntity, AddressDC pDataContract)
|
||||
{
|
||||
pDataContract.AddressLine1 = pEntity.AddressLine1;
|
||||
pDataContract.AddressLine2 = pEntity.AddressLine2;
|
||||
pDataContract.Country = pEntity.Country;
|
||||
pDataContract.L_Version = pEntity.L_Version;
|
||||
pDataContract.Latitude = pEntity.Latitude;
|
||||
pDataContract.Longitude = pEntity.Longitude;
|
||||
pDataContract.PostalCode = pEntity.PostalCode;
|
||||
pDataContract.State = pEntity.State;
|
||||
pDataContract.Street = pEntity.Street;
|
||||
pDataContract.Town = pEntity.Town;
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
public override Address MergeWithEntity(AddressDC pDataContract, Address pEntity)
|
||||
{
|
||||
pEntity.AddressLine1 = pDataContract.AddressLine1;
|
||||
pEntity.AddressLine2 = pDataContract.AddressLine2;
|
||||
pEntity.Country = pDataContract.Country;
|
||||
pEntity.L_Version = pDataContract.L_Version;
|
||||
pEntity.Latitude = pDataContract.Latitude;
|
||||
pEntity.Longitude = pDataContract.Longitude;
|
||||
pEntity.PostalCode = pDataContract.PostalCode;
|
||||
pEntity.State = pDataContract.State;
|
||||
pEntity.Street = pDataContract.Street;
|
||||
pEntity.Town = pDataContract.Town;
|
||||
|
||||
return pEntity;
|
||||
}
|
||||
|
||||
protected override bool AreDCAndEntityEqual(AddressDC pDC, Address pEntity)
|
||||
{
|
||||
if (pDC.Oid == null)
|
||||
return false;
|
||||
return pDC.Oid == pEntity.Oid;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,88 +1,88 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using BS.Shared.Extensions;
|
||||
|
||||
namespace BeWo.Service.DCEntityMapper
|
||||
{
|
||||
public class CompactCustomerDC_Customer : AbstractIDCEntityMapper<Customer, CompactCustomerDC>
|
||||
{
|
||||
public override CompactCustomerDC MergeWithDC(Customer pEntity, CompactCustomerDC pDataContract)
|
||||
{
|
||||
pDataContract.CustomerOid = pEntity.Oid.Value;
|
||||
pDataContract.PersonOid = pEntity.Person.Oid.Value;
|
||||
pDataContract.CustomerVersion = pEntity.Version.Value;
|
||||
pDataContract.FirstName = pEntity.Person.FirstName;
|
||||
pDataContract.LastName = pEntity.Person.LastName;
|
||||
pDataContract.DateOfBirth = pEntity.Person.DateOfBirth;
|
||||
pDataContract.Sex = pEntity.Person.Sex;
|
||||
pDataContract.ActivationType = pEntity.IsActive;
|
||||
pDataContract.TerminationDate = pEntity.TerminationDate;
|
||||
pDataContract.SubstitutionStartingDayCount = pEntity.AbWelchemKrankheitsTag;
|
||||
pDataContract.IsSubstitutionWanted = pEntity.VertretungGewuenscht;
|
||||
pDataContract.SubstitutionNeed = pEntity.SubstitutionNeed;
|
||||
pDataContract.IsSubstitutionNeeded = pEntity.VertretungDringendErforderlich;
|
||||
|
||||
if (pEntity.TerminationReason != null)
|
||||
{
|
||||
pDataContract.TerminationReason = pEntity.TerminationReason.Value;
|
||||
}
|
||||
//else if (pEntity.TerminationDate.HasValue)
|
||||
//{
|
||||
// pDataContract.TerminationReason = $"Betreuung vorzeitig beendet am {pEntity.TerminationDate:dd.MM.yyyy}";
|
||||
//}
|
||||
|
||||
pDataContract.AssistanceBegin = pEntity.AssistanceBegin;
|
||||
pDataContract.EquityContribution = pEntity.EquityContribution;
|
||||
pDataContract.CustomerAlias = pEntity.CustomerAlias;
|
||||
pDataContract.DebitorNumber = pEntity.DebitorNumber;
|
||||
pDataContract.CostCenter = pEntity.CostCenter;
|
||||
|
||||
if (pEntity.Person.Address != null)
|
||||
{
|
||||
pDataContract.Street = pEntity.Person.Address.Street;
|
||||
pDataContract.PostalCode = pEntity.Person.Address.PostalCode;
|
||||
pDataContract.Town = pEntity.Person.Address.Town;
|
||||
}
|
||||
|
||||
pDataContract.AbsenceTimes = MapperFactory.AbsenceTimeDC_AbsenceTime.MapToNewDCs(pEntity.AbsenceTimes);
|
||||
|
||||
pEntity.Customer2CostBearerList.DoForEach(c2cb => pDataContract.CostBearerReferenceNumbers[c2cb.CostBearer.Oid.Value] = c2cb.ReferenceNumber);
|
||||
|
||||
pDataContract.RelatedTeamOids = pEntity.Team2CustomerList.Select(t2c => t2c.TeamOid.Value).ToList();
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
// Are not editable
|
||||
public override Customer MergeWithEntity(CompactCustomerDC pDataContract, Customer pEntity)
|
||||
{
|
||||
return DAOFactory.GenericDAO.LoadByID<Customer>(pDataContract.CustomerOid);
|
||||
}
|
||||
|
||||
protected override bool AreDCAndEntityEqual(CompactCustomerDC pDC, Customer pEntity)
|
||||
{
|
||||
return pDC.CustomerOid == pEntity.Oid;
|
||||
}
|
||||
|
||||
public override Dictionary<string, object> ToJsonDictionary(CompactCustomerDC customer)
|
||||
{
|
||||
var record_dict = new Dictionary<string, object>
|
||||
{
|
||||
{"Address", customer.AddressString},
|
||||
{"Alias", customer.CustomerAlias},
|
||||
{"CustomerOid", customer.CustomerOid},
|
||||
{"DateOfBirth", customer.DateOfBirthString},
|
||||
{"EqutyContribution", customer.EquityContribution},
|
||||
{"Fullname", customer.FullName},
|
||||
{"InvoiceAddress", customer.InvoiceAddressString}
|
||||
};
|
||||
|
||||
return record_dict;
|
||||
}
|
||||
}
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using BS.Shared.Extensions;
|
||||
|
||||
namespace BeWo.Service.DCEntityMapper.Compact
|
||||
{
|
||||
public class CompactCustomerDC_Customer : AbstractIDCEntityMapper<Customer, CompactCustomerDC>
|
||||
{
|
||||
public override CompactCustomerDC MergeWithDC(Customer pEntity, CompactCustomerDC pDataContract)
|
||||
{
|
||||
pDataContract.CustomerOid = pEntity.Oid.Value;
|
||||
pDataContract.PersonOid = pEntity.Person.Oid.Value;
|
||||
pDataContract.CustomerVersion = pEntity.Version.Value;
|
||||
pDataContract.FirstName = pEntity.Person.FirstName;
|
||||
pDataContract.LastName = pEntity.Person.LastName;
|
||||
pDataContract.DateOfBirth = pEntity.Person.DateOfBirth;
|
||||
pDataContract.Sex = pEntity.Person.Sex;
|
||||
pDataContract.ActivationType = pEntity.IsActive;
|
||||
pDataContract.TerminationDate = pEntity.TerminationDate;
|
||||
pDataContract.SubstitutionStartingDayCount = pEntity.AbWelchemKrankheitsTag;
|
||||
pDataContract.IsSubstitutionWanted = pEntity.VertretungGewuenscht;
|
||||
pDataContract.SubstitutionNeed = pEntity.SubstitutionNeed;
|
||||
pDataContract.IsSubstitutionNeeded = pEntity.VertretungDringendErforderlich;
|
||||
|
||||
if (pEntity.TerminationReason != null)
|
||||
{
|
||||
pDataContract.TerminationReason = pEntity.TerminationReason.Value;
|
||||
}
|
||||
//else if (pEntity.TerminationDate.HasValue)
|
||||
//{
|
||||
// pDataContract.TerminationReason = $"Betreuung vorzeitig beendet am {pEntity.TerminationDate:dd.MM.yyyy}";
|
||||
//}
|
||||
|
||||
pDataContract.AssistanceBegin = pEntity.AssistanceBegin;
|
||||
pDataContract.EquityContribution = pEntity.EquityContribution;
|
||||
pDataContract.CustomerAlias = pEntity.CustomerAlias;
|
||||
pDataContract.DebitorNumber = pEntity.DebitorNumber;
|
||||
pDataContract.CostCenter = pEntity.CostCenter;
|
||||
|
||||
if (pEntity.Person.Address != null)
|
||||
{
|
||||
pDataContract.Street = pEntity.Person.Address.Street;
|
||||
pDataContract.PostalCode = pEntity.Person.Address.PostalCode;
|
||||
pDataContract.Town = pEntity.Person.Address.Town;
|
||||
}
|
||||
|
||||
pDataContract.AbsenceTimes = MapperFactory.AbsenceTimeDC_AbsenceTime.MapToNewDCs(pEntity.AbsenceTimes);
|
||||
|
||||
pEntity.Customer2CostBearerList.DoForEach(c2cb => pDataContract.CostBearerReferenceNumbers[c2cb.CostBearer.Oid.Value] = c2cb.ReferenceNumber);
|
||||
|
||||
pDataContract.RelatedTeamOids = pEntity.Team2CustomerList.Select(t2c => t2c.TeamOid.Value).ToList();
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
// Are not editable
|
||||
public override Customer MergeWithEntity(CompactCustomerDC pDataContract, Customer pEntity)
|
||||
{
|
||||
return DAOFactory.GenericDAO.LoadByID<Customer>(pDataContract.CustomerOid);
|
||||
}
|
||||
|
||||
protected override bool AreDCAndEntityEqual(CompactCustomerDC pDC, Customer pEntity)
|
||||
{
|
||||
return pDC.CustomerOid == pEntity.Oid;
|
||||
}
|
||||
|
||||
public override Dictionary<string, object> ToJsonDictionary(CompactCustomerDC customer)
|
||||
{
|
||||
var record_dict = new Dictionary<string, object>
|
||||
{
|
||||
{"Address", customer.AddressString},
|
||||
{"Alias", customer.CustomerAlias},
|
||||
{"CustomerOid", customer.CustomerOid},
|
||||
{"DateOfBirth", customer.DateOfBirthString},
|
||||
{"EqutyContribution", customer.EquityContribution},
|
||||
{"Fullname", customer.FullName},
|
||||
{"InvoiceAddress", customer.InvoiceAddressString}
|
||||
};
|
||||
|
||||
return record_dict;
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user