feat(api): в сущность FIeld добавлено поле IsMultipleValue для реализации записи повторяющихся полей, как сервер приложений в компонентном составе виртуальных серверов

This commit is contained in:
Mikhail Kuznetsov
2025-09-22 15:25:17 +10:00
parent 8b0f173abe
commit 6ca6e65224
16 changed files with 3996 additions and 87 deletions

View File

@@ -110,18 +110,26 @@ namespace PARR.API.MappingProfiles
CreateMap<UnitFieldValue, UnitFieldValueResponse>();
CreateMap<UnitInValue, AttributeResponse>()
.ForMember(d => d.Field, o => o.MapFrom(s => s.Field))
.ForMember(d => d.Value, o => o.MapFrom(s => s.Value));
CreateMap<Unit, UnitResponse>()
.Include<Unit, UnitWithAttributesResponse>()
.ForMember(d => d.Name, o => o.MapFrom(s => s.Name));
CreateMap<Unit, UnitWithAttributesResponse>()
.ForMember(d => d.Attributes, o => o.MapFrom(s => s.UnitValues!.OrderBy(s => (string.IsNullOrEmpty(s.Field!.DisplayName)) ? s.Field!.AihitName : s.Field!.DisplayName)))
.ForMember(d => d.Childrens, o => o.MapFrom(s => s.ChildUnits.Select(t => t.ChildUnit).OrderBy(t => t.Name)))
.ForMember(d => d.Parents, o => o.MapFrom(s => s.ParentUnits.Select(t => t.ParentUnit).OrderBy(t => t.Name)));
.ForMember(d => d.Parents, o => o.MapFrom(s => s.ParentUnits.Select(t => t.ParentUnit).OrderBy(t => t.Name)))
.ForMember(d => d.Attributes, o => o.MapFrom(s => s.UnitValues.GroupBy(g => g.Field)
.Select(fieldGroup => new AttributeResponse
{
Field = new FieldResponse {
Id = fieldGroup.Key!.Id,
Name = string.IsNullOrEmpty(fieldGroup.Key.DisplayName)? fieldGroup.Key.AihitName: fieldGroup.Key.DisplayName,
IsMultipleValue = fieldGroup.Key.IsMultipleValue
},
Values = fieldGroup.Select(s => new UnitFieldValueResponse { Id = s.ValueId, Value = s.Value!.Value }).ToList()
}
)
));
#endregion
#region WorkGroup
@@ -307,9 +315,9 @@ namespace PARR.API.MappingProfiles
CreateMap<JobUnitFilter, UnitFilterResponse>()
.ForMember(d => d.UnitFilterMask, o => o.MapFrom(d => d.UnitFilter));
CreateMap<FieldFilter, FieldResponse>();
CreateMap<JobFieldFilter, FieldResponse>();
CreateMap<FieldFilter, FieldFilterResponse>();
CreateMap<JobFieldFilter, FieldFilterResponse>();
CreateMap<JobRelationshipFilter, RelationshipFilterResponse>()
.ForMember(d => d.Field, o => o.MapFrom(s => s.UnitField));