ZUGFeRD WEB Service: Auswertung der XML-Konfiguration geändert & ZUGFeRD 2.3.x-Anpassungen
This commit is contained in:
@@ -35,12 +35,14 @@ namespace ZUGFeRDRESTService.Controllers
|
||||
private readonly DigitalData.Modules.Filesystem.File _file;
|
||||
|
||||
private readonly PropertyValues _props;
|
||||
private readonly Dictionary<string, XmlItemProperty> _propertyMap = new Dictionary<string, XmlItemProperty>();
|
||||
//private readonly Dictionary<string, XmlItemProperty> _propertyMap = new Dictionary<string, XmlItemProperty>();
|
||||
private readonly List<XmlItemProperty> _propertyMapList = new List<XmlItemProperty>();
|
||||
|
||||
private int _MaxFileSizeInMegabytes;
|
||||
private bool _AllowFacturX;
|
||||
private bool _AllowXRechnung;
|
||||
private bool _AllowZugferd2x;
|
||||
private bool _AllowZugferd23x;
|
||||
private bool _AllowZugferd10;
|
||||
private bool _AllowPeppolBISBill3x;
|
||||
|
||||
@@ -61,7 +63,7 @@ namespace ZUGFeRDRESTService.Controllers
|
||||
|
||||
_database = database;
|
||||
var oGDPictureKey = database.GetGDPictureKey();
|
||||
var oPropertyMap = database.GetPropertyMap();
|
||||
var oPropertyMapList = database.GetPropertyMapList();
|
||||
|
||||
_zugferd = new ZUGFeRDInterface(_logConfig, oGDPictureKey, new ZugferdOptions()
|
||||
{
|
||||
@@ -69,31 +71,12 @@ namespace ZUGFeRDRESTService.Controllers
|
||||
AllowXRechnung_Filename = _AllowXRechnung,
|
||||
AllowZugferd_1_0_Schema = _AllowZugferd10,
|
||||
AllowZugferd_2_x_Schema = _AllowZugferd2x,
|
||||
AllowZugferd_2_3_x_Schema = _AllowZugferd23x,
|
||||
AllowPeppol_3_x_Schema = _AllowPeppolBISBill3x
|
||||
});
|
||||
_props = new PropertyValues(_logConfig);
|
||||
|
||||
_logger.Debug("Property Map initial: [{0}] entries found.", oPropertyMap.Count);
|
||||
|
||||
if (_AllowZugferd10 == true)
|
||||
_propertyMap = oPropertyMap.
|
||||
Where(kv => kv.Value.Specification == ZUGFERD_SPEC_10 || kv.Value.Specification == ZUGFERD_SPEC_DEFAULT).
|
||||
Concat(_propertyMap).
|
||||
ToDictionary(kv => kv.Key, kv => kv.Value);
|
||||
|
||||
if (_AllowZugferd2x == true)
|
||||
_propertyMap = oPropertyMap.
|
||||
Where(kv => kv.Value.Specification == ZUGFERD_SPEC_2x).
|
||||
Concat(_propertyMap).
|
||||
ToDictionary(kv => kv.Key, kv => kv.Value);
|
||||
|
||||
if (_AllowPeppolBISBill3x == true)
|
||||
_propertyMap = oPropertyMap.
|
||||
Where(kv => kv.Value.Specification == UBL_SPEC_21).
|
||||
Concat(_propertyMap).
|
||||
ToDictionary(kv => kv.Key, kv => kv.Value);
|
||||
|
||||
_logger.Debug("Property Map filtered: [{0}] entries found.", _propertyMap.Count);
|
||||
_logger.Debug("Property Map list initial: [{0}] entries found.", oPropertyMapList.Count);
|
||||
|
||||
_logger.Debug("Validation Controller initialized!");
|
||||
}
|
||||
@@ -194,7 +177,7 @@ namespace ZUGFeRDRESTService.Controllers
|
||||
|
||||
_logger.Info("Detected Specification was: [{0}]", oZugferdResult.Specification);
|
||||
|
||||
var oFilteredPropertyMap = _zugferd.FilterPropertyMap(_propertyMap, oZugferdResult.Specification);
|
||||
var oFilteredPropertyMap = _zugferd.FilterPropertyMap(_propertyMapList, oZugferdResult.Specification);
|
||||
|
||||
if (oFilteredPropertyMap.Count == 0)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user