71 lines
2.6 KiB
Markdown
71 lines
2.6 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- DataPRO/Modules/SystemSettings/ISOSettings/Model/Enums.cs
|
||
|
|
- DataPRO/Modules/SystemSettings/ISOSettings/Model/ISOSettingsModel.cs
|
||
|
|
generated_at: "2026-04-17T15:57:55.902760+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "35e21e8080149c8b"
|
||
|
|
---
|
||
|
|
|
||
|
|
# ISOSettings Module Documentation
|
||
|
|
|
||
|
|
## 1. Purpose
|
||
|
|
|
||
|
|
The ISOSettings module manages configuration related to ISO (International Organization for Standardization) code support within the DataPRO system. It provides a model layer for persisting and retrieving ISO-related settings—such as display modes, validation rules, and support levels—via a database-backed settings store. The module also orchestrates side effects when critical validation settings change, triggering re-evaluation of test completeness across the system.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Public Interface
|
||
|
|
|
||
|
|
### Enum: `Keys`
|
||
|
|
**Namespace:** `ISOSettings`
|
||
|
|
|
||
|
|
Defines setting keys used for database storage lookup.
|
||
|
|
|
||
|
|
| Member | Description (inferred from usage) |
|
||
|
|
|--------|-----------------------------------|
|
||
|
|
| `ISOSupportAllowTransitional` | Key for transitional ISO support setting |
|
||
|
|
| `ISOSupport_Allow_NonISO` | Key for allowing non-ISO codes |
|
||
|
|
| `ShowISOCodes` | Key for ISO code visibility |
|
||
|
|
| `ShowUserCodes` | Key for user code visibility |
|
||
|
|
| `UseUserCodes` | Key for user code usage |
|
||
|
|
| `IsoSupportLevel` | Key for ISO support level |
|
||
|
|
| `UniqueISOCodesRequired` | Key for unique ISO code requirement |
|
||
|
|
| `ShowISOStringBuilder` | Key for ISO string builder visibility |
|
||
|
|
| `ShowChannelCodeLookupHelper` | Key for channel code lookup helper visibility |
|
||
|
|
| `UseISOCodeFilterMapping` | Key for ISO code filter mapping usage |
|
||
|
|
| `ValidateTestPositionAndTestObject` | Key for test object/position validation |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### Class: `ISOSettingsModel`
|
||
|
|
**Namespace:** `ISOSettings.Model`
|
||
|
|
**Implements:** `IISOSettingsModel`
|
||
|
|
|
||
|
|
#### Constructor
|
||
|
|
```csharp
|
||
|
|
public ISOSettingsModel(IEventAggregator eventAggregator)
|
||
|
|
```
|
||
|
|
Initializes the model with an event aggregator for publishing notifications.
|
||
|
|
|
||
|
|
#### Methods
|
||
|
|
|
||
|
|
```csharp
|
||
|
|
public IISOSettingsData LoadData()
|
||
|
|
```
|
||
|
|
Returns a new `ISOSettingsData` instance populated with current settings values.
|
||
|
|
|
||
|
|
```csharp
|
||
|
|
public void SaveData(IISOSettingsData data)
|
||
|
|
```
|
||
|
|
Persists settings from the provided `ISOSettingsData` instance. If `UniqueISOCodesRequired` or `ValidateTestObjectAndPosition` values change, triggers `MarkAllTestsDirty()`. Sets `IsSaved` to `true` on success; publishes a `RaiseNotification` event on exception.
|
||
|
|
|
||
|
|
```csharp
|
||
|
|
public void OnPropertyChanged(string propertyName)
|
||
|
|
```
|
||
|
|
**Note:** Empty implementation—does not raise `PropertyChanged` event.
|
||
|
|
|
||
|
|
#### Properties
|
||
|
|
|
||
|
|
| Property | Type | Default |
|