AltOne.WebAPI.Core
2606.0.1.80100
dotnet add package AltOne.WebAPI.Core --version 2606.0.1.80100
NuGet\Install-Package AltOne.WebAPI.Core -Version 2606.0.1.80100
<PackageReference Include="AltOne.WebAPI.Core" Version="2606.0.1.80100" />
<PackageVersion Include="AltOne.WebAPI.Core" Version="2606.0.1.80100" />
<PackageReference Include="AltOne.WebAPI.Core" />
paket add AltOne.WebAPI.Core --version 2606.0.1.80100
#r "nuget: AltOne.WebAPI.Core, 2606.0.1.80100"
#:package AltOne.WebAPI.Core@2606.0.1.80100
#addin nuget:?package=AltOne.WebAPI.Core&version=2606.0.1.80100
#tool nuget:?package=AltOne.WebAPI.Core&version=2606.0.1.80100
AltOne.WebAPI.Core
AltOne.WebAPI.Core to licencjonowana biblioteka dla platformy enova365, zapewniająca szybkie i bezpieczne integracje poprzez REST API (JSON). Pakiet udostępnia gotowe kontrakty i operacje WebAPI w kluczowych obszarach:
- Metody słownikowe i operacyjne: pracownicy, kontrahenci, słowniki płatności i form rozliczeń, powiązania kontrahentów, rachunki bankowe, cechy (w tym historyczne i algorytmiczne), załączniki (odczyt/zapis wraz z cechami), adresy i kontakty.
- Metody agregujące do pobierania danych „w paczkach” (packable) oraz skróconych kontraktów dla szybkich integracji.
Biblioteka zapewnia ujednolicone walidacje, spójne komunikaty zwrotne, co skraca czas wdrożenia i minimalizuje ryzyko błędów. Dostępny jest także tryb TestMode (dry‑run), umożliwiający bezpieczne testowanie żądań – bez trwałych zmian w bazie danych – z pełną walidacją i zwracaniem ostrzeżeń oraz wyników jak w operacjach produkcyjnych.
Generowana jest dokumentacja dla różnych grup odbiorców:
- Konsultanci i biznes: opis usług i kontraktów, przykłady użycia.
- Programiści: definicje JSON/schema i materiały zgodne z narzędziami typu Postman/CI, ułatwiające integrację i testy automatyczne.
Wymagania i zależności
- Wymagana biblioteka:
Newtonsoft.Json.Schemaw wersji3.0.15.
Biblioteka ta jest używana do generowania definicji JSON Schema.
Produkty korzystające z biblioteki
Biblioteka jest wykorzystywana jako wspólna warstwa integracyjna w innych pakietach AltOne.WebAPI.* Aktualną listę znajdziesz na karcie „Used By” pakietu NuGet:
https://www.nuget.org/packages/AltOne.WebAPI.Core/2510.0.0-0.7.3.0#usedby-body-tab
Dla wszystkich tych pakietów biblioteka odpowiada za generowanie spójnej dokumentacji WebAPI (HTML + JSON Schema + kolekcje Postman). Przykład publicznie dostępnej dokumentacji:
https://altone-public.github.io/enova-products-docs/AltOne.Integracje/docs/DokumentacjaDynamicWebAPI.html
Dokumentacja nadaje się do:
- analizy zakresu i możliwości integracji,
- pracy warsztatowej z biznesem/konsultantami,
- pracy programistów (kontrakty, schematy, testy w Postman),
- automatyzacji testów integracyjnych (CI).
Dokumentacja pakietu
Użycie
Po zainstalowaniu biblioteki w środowisku multi enova365 oraz przypisaniu kontrolerów do użytkownika będą dostępne nowe metody do integracji poprzez WebAPI. Szczegóły dostępnych wszystkich metod do szybkiej integracji: Dokumentacja usługi w repozytorium GitHub
Konfiguracja i szczegółowe informacje dostępne są w dokumentacji produktowej:
AltOne.WebAPI.Core enova365
Odczyt i zapis cech dowolnego obiektu
Metody GetFeatures i UpdateFeatures w IOperationFunctions2 identyfikują istniejący obiekt przez ID oraz techniczną nazwę tabeli TableName, np. DokHandlowe. Nie wymagają przesyłania pełnego kontraktu faktury, kontrahenta ani innego obiektu.
Przykładowe ciało żądania GetFeatures:
{
"ID": 123,
"TableName": "DokHandlowe",
"DataAktualnosci": "2026-10-02"
}
DataAktualnosci jest opcjonalna (domyślnie dzisiaj) i służy do odczytu cech historycznych oraz algorytmicznych zależnych od daty. Wynik GetResultFeatures zawiera ID, TableName, Features, Count i standardowe pola wyniku (Success, Errors, itp.). Zwracane są tylko cechy, których definicje mają Dostęp przez WebAPI lub historyczną Obsługa WCF ustawioną na true.
Przykładowe ciało żądania UpdateFeatures:
{
"ID": 123,
"TableName": "DokHandlowe",
"Features": [
{ "Name": "StatusIntegracji", "Value": "Wysłano" },
{
"Name": "StatusHistoryczny",
"Value": "Zatwierdzono",
"UpdateDate": { "Year": 2026, "Month": 10, "Day": 2 }
}
],
"TestMode": false
}
Nazwy cech w przykładzie należy zastąpić definicjami istniejącymi w danej bazie. UpdateFeatures ustawia lub aktualizuje wyłącznie przekazane wartości; pozostałe cechy zachowują wartości. Nie tworzy obiektu ani definicji cech. Wymaga niepustej listy Features, nazw cech i znacznika Dostęp przez WebAPI lub historycznej Obsługa WCF ustawionego na true na definicjach. Cechy historyczne wymagają UpdateDate. Pole Type jest informacyjne — typ zapisu wynika z definicji cechy.
System.Text.Json wymaga obecności pól Name i Value w każdym FeatureDTO. Brak Value powoduje błąd deserializacji, a jawne "Value": null lub pusty tekst czyści wartość zgodnie z typem: referencję ustawia na null (usuwa powiązanie, pozostawiając wskazany obiekt w bazie), tekst na "", liczby na zero, daty na wartości puste, a bool na false. Referencje można przekazać jako ID lub Tabela:ID; tekst "null" również czyści referencję.
Cechy wyliczane (Get/GetArgs) są odczytywane przez GetFeatures. Przy zapisie są pomijane jak w RowDTO, a UpdateFeatures zwraca dla każdej z nich ostrzeżenie Warnings z typem ReadOnlyFeature i nazwą cechy. Jeśli wszystkie przekazane cechy są tylko do odczytu, wynik ma Success: true, ostrzeżenia oraz opis informujący, że nie zapisano zmian. Algorytmy obsługujące zapis nie są pomijane przez ten warunek.
Zapis odbywa się w jednej sesji i transakcji cech: błąd przerywa całą operację. Zwracany UpdateResult.ID wskazuje modyfikowany obiekt. TestMode: true uruchamia walidację i zapis z wycofaniem zmian przez standardowy mechanizm WebAPI.
Operator musi mieć dostęp do obiektu oraz praw AltOne.WCF.Core.Interfaces.IOperationFunctions.GetFeatures i/lub AltOne.WCF.Core.Interfaces.IOperationFunctions.UpdateFeatures, zależnie od wywoływanej metody.
Udostępnianie cech i zgodność ze starszymi konfiguracjami
Zalecany znacznik to cecha logiczna Dostęp przez WebAPI, zdefiniowana na definicjach cech. Historyczna nazwa Obsługa WCF pozostaje obsługiwana bezterminowo. Ta sama reguła jest używana przez FeatureHelper przy odczycie i zapisie, w tym przez RowDTO, GetFeatures i UpdateFeatures:
| Dostęp przez WebAPI | Obsługa WCF | Dostęp do cechy |
|---|---|---|
brak lub false |
true |
włączony |
true |
brak lub false |
włączony |
true |
true |
włączony |
brak lub false |
brak lub false |
wyłączony |
Dodanie nowego znacznika z domyślnym false zachowuje działanie istniejących integracji. Aby wyłączyć dostęp, oba znaczniki muszą mieć wartość false lub nie istnieć. Znaczniki algorytmiczne są oceniane przy każdym sprawdzeniu w bieżącej sesji. Uprawnienia operatora i ograniczenia cech tylko do odczytu nadal obowiązują.
Migracja jest opcjonalna: po aktualizacji biblioteki można utworzyć nowy znacznik, przenieść do niego wartości lub algorytm starego znacznika, sprawdzić odczyt i zapis, a następnie wyłączyć stary znacznik. Biblioteka nie tworzy ani nie zmienia definicji automatycznie.
Testy integracyjne
Aktualne wyniki testów dla najnowszych wersji enova365:
latest.md w repozytorium GitHub
Ważne informacje
Wyniki testów integracyjnych mają charakter pomocniczy i nie zwalniają klienta z obowiązku przetestowania biblioteki w środowisku testowym przed wdrożeniem na produkcję.
Automatyczne testy obejmują jedynie podstawowe scenariusze i mogą nie odzwierciedlać specyfiki konkretnego wdrożenia.
Security
Biblioteka jest skanowana w ramach Azure DevOps Advanced Security.
Aktualnie: brak otwartych alertów dependency. ✅
Historia zmian
Zmiany wersji są publikowane w sekcji Release Notes na NuGet.org.
License
Biblioteka jest licencjonowana. Szczegóły warunków licencji dostępne są w umowie z AltOne.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Newtonsoft.Json.Schema (>= 3.0.15)
- Soneta.Products.Modules (>= 2606.0.1)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on AltOne.WebAPI.Core:
| Package | Downloads |
|---|---|
|
AltOne.WebAPI.ObslugaCzasuPracy
Licencjonowana biblioteka rozszerzająca enova365 o obsługę czasu pracy poprzez WebAPI |
|
|
AltOne.WebApi.ObslugaFakturKosztowych
Licencjonowana biblioteka rozszerzająca umożliwiająca zapis dokumentów kosztowych, PK oraz matryc do bazy enova365 poprzez WebAPI |
|
|
AltOne.WebAPI.ObslugaFakturHandlowych
Biblioteka rozszerzająca umożliwiająca zapis dokumentów handlowych do bazy enova365 |
|
|
AltOne.WebApi.DataExchangeTable
Biblioteka rozszerzająca obsługę tabeli wymiany DataExchangeTable poprzez WebAPI. Wymagana biblioteka AltOne.DataExchangeTable oraz AltOne.WebAPI.Core |
|
|
AltOne.WebAPI.ObslugaKadrowa
Licencjonowana biblioteka rozszerzająca enova365 o obsługę wybranego obszaru kadr poprzez WebAPI |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2606.0.1.80100 | 135 | 10/2/2026 |
| 2606.0.1.80001 | 413 | 8/12/2026 |
| 2606.0.1.80000 | 253 | 7/16/2026 |
| 2510.1.1.80001 | 165 | 8/13/2026 |
| 2510.1.1-0.7.7.2 | 235 | 6/26/2026 |
| 2510.1.1-0.7.7.1 | 133 | 6/17/2026 |
| 2510.1.1-0.7.7.0 | 138 | 5/6/2026 |
| 2510.1.1-0.7.6.0 | 433 | 3/5/2026 |
| 2510.1.1-0.7.5.5 | 219 | 2/18/2026 |
| 2510.1.1-0.7.5.2 | 189 | 1/14/2026 |
| 2510.1.1-0.7.5.0 | 471 | 12/17/2025 |
| 2510.1.1-0.7.4.0 | 228 | 11/28/2025 |
| 2510.0.0-0.7.3.0 | 245 | 10/28/2025 |
| 2504.1.1-0.7.2.1 | 291 | 10/15/2025 |
| 2504.1.1-0.7.1.8 | 515 | 9/12/2025 |
| 2504.1.1-0.7.1.7 | 279 | 8/12/2025 |
| 2410.0.0-0.7.1.6 | 243 | 6/24/2025 |
## Version 2606.0.1.80100 (8.1.0) z dn. 02.10.2026
- Dodano `GetFeatures` i `UpdateFeatures` w `IOperationFunctions2` do odczytu i aktualizacji cech obiektu według `ID` i `TableName`.
- Dodano znacznik `Dostęp przez WebAPI` z zachowaniem obsługi `Obsługa WCF` — dostęp włącza dowolny z nich.
- W System.Text.Json pola `Name` i `Value` w `FeatureDTO` są wymagane; `Value: null` nadal czyści wartość cechy.
## Version 2606.0.1.80001 (8.0.1 z dn. 12.08.2026
- Upublicznienie klasy `FeatureHelper` i metod do obsługi zpisu odczytu cech
## Version 2606.0.1.80000 (8.0.0) z dn. 14.07.2026
- Dostosowanie do wersji 2606.0.1, zmiana numeracji
## Version 2510.1.1-0.7.7.2 z dn. 25.06.2026
- Modyfikacja mapowania adrsów, dostosowanie do autouzupełniania na podstawie kodu pocztowego.
## Version 2510.1.1-0.7.7.1 z dn. 15.06.2026
- Poprawiono zgodność bibliotek z enova365 2606 oraz nowym środowiskiem uruchomieniowym.
- Usunięto problem z ładowaniem modułu podczas inicjalizacji i konwersji bazy danych.
## Version 2510.1.1-0.7.7.0 z dn. 06.05.2026
- Rozszerzenie klasy ZatrudnienieDTO o pola: DataRozpPracy, DataZawarcia, Funkcja
- Oprogramowanie mapowania odczytu (ToDTO) i zapisu (ToDAO) dla nowych pól ZatrudnienieDTO
## Version 2510.1.1-0.7.6.0 z dn. 05.03.2026
- Rozszerzenie klasy AdresDTO o obiekt AdresRozszerzonyDTO z polami: Departament, Wydzial, NazwaBudynku, Pietro, Dzielnica, Prowincja, SkrytkaPocztowa
- Rozszerzenie klasy AdresDTO o pole NietypowaLokalizacja
## Version 2510.1.1-0.7.5.5 z dn. 18.02.2026
- Zmiana typu właściwości Value w FeatureDTO z string na object oraz zmiana wymagalności z DisallowNull na AllowNull
- Rozwiązuje problem z migracją enova365 z Newtonsoft.Json na System.Text.Json - obsługa różnych typów danych przesyłanych przez klientów
- Ulepszona obsługa wartości null i pustych stringów - automatyczne ustawienie wartości domyślnych zgodnie z zachowaniem interfejsu enova365
- Przypisanie null lub pustego stringa do cechy ustawia wartość domyślną zgodnie z typem (teksty → pusty string, referencje → null, liczby → 0, daty → puste, bool → false)
- Zachowana pełna kompatybilność wsteczna dla istniejących integracji
## Version 0.7.5.2 z dn. 14.01.2026
- Poprawa odczytu terminu płatności na obiekcie kontrahenta
- Poprawa mapowania odsetek karnych kontrahenta
## Version 0.7.5.0 z dn. 17.12.2025
- Rozszerzenie kontraktu kontrahenta o WarunkiHandlowe oraz OdsetkiKarne
## Version 2510.1.1-0.7.4.0 z dn. 27.11.2025
- Dodanie trybu TestMode dla zapytań WebAPI (bez trwałych zmian w danych, tzw. dry‑run).
- Rozszerzenie `RowDTO` o obsługę TestMode oraz spójne walidacje i komunikaty zwrotne.
- Ujednolicenie logowania wyników i ostrzeżeń w trybie testowym.
## Version 0.7.3.0 z dn. 27.10.2025
- Kompilacja z wersją 2510.0.0 ze względu na zmianę obsługi załączników przez enova365
- Dodanie obsługi odczytu/zapisu cech do załączników
## Version 0.7.2.1 z dn. 14.10.2025
- Generowanie dokumentacji w j. angielskim
- Oprogramowanie obsługi atrybutu [Obsolate] dla metod WebAPI w generowanej dokumentacji
- Oprogramowanie stylu dark dla dokumentacji, linku "Back do libraries" na górnej belce
## Version 0.7.1.8 z dn. 11.09.2025
- Poprawki zgłaszane przez Advenced Security w usłudze Azure Devops
- Nowa forma pliku readme.md dla nuget.org
## Version 0.7.1.7 z dn. 12.08.2025
- Update do wersji enova365 2504.1.1 (Advenced Security -> Recommendation: Upgrade Azure.Identity from 1.10 to 1.11)
- Modyfikacja obsługi liczników wywołań metotod WebAPI
## Version 0.7.1.6 z dn. 18.06.2025
- Umożliwenie przesłania cech bez konieczności uzupełniania właściwości obiektu Zatrudnienie
## Version 0.7.1.5 z dn. 28.05.2025
- Umożliwienie zapisu aktualizacji bez podawania jednostki organizacyjnej w obiekcie Zatrudnienie
## Version 0.7.1.4 z dn. 06.05.2025
- Umożliwienie zapisu aktualizacji bez podawania całego okresu w obiekcie Zatrudnienie
## Version 0.7.1.3 z dn. 11.04.2025
- Uporządkowanie metod SimpleRight, 1 metoda - 1 prawo wg nazwy metody.
- Weryfikacja kodu i bezpieczeństwa przez mechanizm Azure Devops - Advenced Security (security-and-quality)
## Version 0.7.1.2 z dn. 18.04.2025
- Dodanie obsługi identyfikatora podatkowego pracownika (nip, pesel)
- Dodanie obsługi identyfikacji rachunków bankowych po ID, można także po nr rachunku
## Version 0.7.1.1 z dn. 17.04.2025
- Poprawiono odczyt cech i obsługę wartości null; cechy tekstowe konwertowane bezpiecznie do string.
## Version 0.7.1.0 z dn. 20.02.2025
- Dodanie metody zwracajacej mapowania serwisow na dynamiczne kontrolery
## Version 0.7.0.8 z dn. 12.02.2025
- Przywrocenie metody GetPackableContractors
## Version 0.7.0.7
- Nowa wersja dokumentacji oraz jej aktualizacja
- Dodanie obsługi dynamicznych domen WebAPI.
- Przetłumaczenie nazw opisu metod na j. angielski
- Rekompilacja z wersją 2410.0.0 net8
## Version 0.6.9.0-n2.0-Beta
- Dodanie obsługi tłumaczeń kontraktów na j. angielski
## Version 0.6.8.3-n2.0
- Dodanie metody do zastępowania kontrahenta (blokowania jednego kontrahenta i przepisanie płatności na głównego)
- Dodanie metody do tworzenia powiązań pomiędzy kontrahentami
- Dodanie obsługi odczytu powiązań kontrahentów - parametr Powiazania
## Version 0.6.7.3-n2.0-Beta
- Poprawa obsługi ustawienia priorytetu rachunku bankowego do wynagrodzenia
## Version 0.6.7.2-n2.0-Beta
- Obsługa odczytu cech algorytmicznych z parametrem GetArgs
## Version 0.6.6.3-n2.0-Beta
- Obsługa NazwyFirmy dla adresu korespondencyjnego na pracowniku
## Version 0.6.6.1-n2.0-Beta
- Dodanie możliwości odczytu i zapisu AdresuDoKorespondencji na pracowniku.
- Dodanie pola Aktualizuj na kontrakcie PracownikDTO. Aktualizacja historii nastąpi tylko po świadomym ustawieniu pola na true.
## Version 0.6.5.0-n2.0
- Dodanie metody do pobierania skróconego kontraktu pracownika GetPackableBasicEmployees
- Poprawa weryfikacji daty licencji modułów dodatkowych
## Version 0.6.4.2-n2.0-Beta
- Obsługa generowania dokumentacji w formacie Postman dla typów byte[]
## Version 0.6.4.1-n2.0-Beta
- Dodanie obsługi adresów URL do dla dokumentacji typu Postman
- Dodanie obsługi kodu kraju przy odczycie/zapisie obywatelstwa na kontrakcie PracownikDTO
## Version 0.6.3.8-n2.0-Beta
- Dodanie obsługi odczytu załączników w klasie RowDTO
## Version 0.6.3.7-n2.0-Beta
- Poprawa przypisania kodu pocztowego dla zagranicznych kontrahentów
## Version 0.6.3.6-n2.0-Beta
- Udostępnienie w klasie Result kolekcji ostrzeżeń. Ostrzeżenia będą oprogramowywane sukcesywnie dla poszczególnych metod.
## Version 0.6.3.5-n2.0-Beta
- Udostępnienie wirtualnej metody ModifySave dla obiektu PracownikDTO dającej możliwość rozszerzenia kontraktu
## Version 0.6.2.0-n2.0-Beta
- Zapis oraz rozbudowa kontraktu Zatrudnienie o pola Wymiar i Zwolniony
- Umożliwienie zapisu i odczytu cech historycznych
## Version 0.6.0.3-n2.0
- Zdjęcie wymagalności pola Base64 na obiekcie AttachmentDTO. Obsłużony null lub pusty string w kodzie.
- Rozszerzenie obiektu KontrahentDTO o odczyt obiektu KontaktDTO z polami (EMAIL, WWW, Skype, SkrytkaPocztowa, TelefonKomorkowy)
## Version 0.6.0.2-n2.0
- Poprawa obsługi odczytu cech dla obiektu pracownika przy pobieraniu danych w paczkach
- Przygotowanie do netstandard2.0
- Zmiana nazwy pakietu AltOne.WebApi.Core (wcześniejsza AltOne.WCF.Core). Nazwa biblioteki pozostaje bez zmian.
- Dodano nową metodę do zapisu załączników dla danego obiektu