version 5.1 (5.0)
This commit is contained in:
@@ -20,16 +20,16 @@ namespace BeWo.Service.ServiceUtils
|
||||
{
|
||||
public static class AiContextLoader
|
||||
{
|
||||
public static BaseContextSummary LoadContext(AiActionType actionType, AiViewContextDC view_context)
|
||||
public static BaseContextSummary LoadContext(AiActionType actionType, AiViewContextDC view_context, int? sample_count = null)
|
||||
{
|
||||
switch (actionType)
|
||||
{
|
||||
case AiActionType.ServiceRecord:
|
||||
break;
|
||||
case AiActionType.ServiceRecordConversation:
|
||||
return loadServiceRecordConversationContext(view_context.References);
|
||||
return loadServiceRecordConversationContext(view_context.References, sample_count);
|
||||
case AiActionType.ServiceRecordDocumentation:
|
||||
return loadServiceRecordDocumentationContext(view_context.References, view_context.Secondary as string);
|
||||
return loadServiceRecordDocumentationContext(view_context.References, view_context.Secondary as string, sample_count);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -95,20 +95,20 @@ namespace BeWo.Service.ServiceUtils
|
||||
throw BeWoNotImplementedException.CreateFromEnum(actionType);
|
||||
}
|
||||
|
||||
private static BaseContextSummary loadServiceRecordConversationContext(Dictionary<TableID, long[]> context_reference)
|
||||
private static BaseContextSummary loadServiceRecordConversationContext(Dictionary<TableID, long[]> context_reference, int? sample_count = null)
|
||||
{
|
||||
var customer = loadCompactCustomerDC(context_reference);
|
||||
var serviceRecords = loadServiceRecordDCs(context_reference);
|
||||
var serviceRecords = loadServiceRecordDCs(context_reference, sample_count);
|
||||
var supportConcept = loadSupportConceptDC(context_reference);
|
||||
var costBearer = supportConcept.CostBearerList.First(x => x.CostBearerOid == context_reference[TableID.CostBearer][0]);
|
||||
|
||||
return AiContextSummaryFactory.CreateServiceRecordNavigationContextSummary(serviceRecords, customer, costBearer, supportConcept);
|
||||
}
|
||||
|
||||
private static BaseContextSummary loadServiceRecordDocumentationContext(Dictionary<TableID, long[]> context_reference, string doku_text)
|
||||
private static BaseContextSummary loadServiceRecordDocumentationContext(Dictionary<TableID, long[]> context_reference, string doku_text, int? sample_count = null)
|
||||
{
|
||||
var customer = loadCompactCustomerDC(context_reference);
|
||||
var serviceRecords = loadServiceRecordDCs(context_reference);
|
||||
var serviceRecords = loadServiceRecordDCs(context_reference, sample_count);
|
||||
var supportConcept = loadSupportConceptDC(context_reference);
|
||||
var costBearer = supportConcept.CostBearerList.First(x => x.CostBearerOid == context_reference[TableID.CostBearer][0]);
|
||||
|
||||
@@ -127,8 +127,8 @@ namespace BeWo.Service.ServiceUtils
|
||||
=> LoadDataContact<CompactCustomerDC_Customer, Customer, CompactCustomerDC>(MapperFactory.CompactCustomerDC_Customer, context_reference);
|
||||
private static CompactSupportConceptDC loadSupportConceptDC(Dictionary<TableID, long[]> context_reference)
|
||||
=> LoadDataContact<CompactSupportConceptDC_SupportConcept, SupportConcept, CompactSupportConceptDC>(MapperFactory.CompactSupportConceptDC_SupportConcept, context_reference);
|
||||
private static IEnumerable<ServiceRecordDC> loadServiceRecordDCs(Dictionary<TableID, long[]> context_reference)
|
||||
=> LoadDataContacts<ServiceRecordDC_ServiceRecord, ServiceRecord, ServiceRecordDC>(MapperFactory.ServiceRecordDC_ServiceRecord, context_reference);
|
||||
private static IEnumerable<ServiceRecordDC> loadServiceRecordDCs(Dictionary<TableID, long[]> context_reference, int? sample_count = null)
|
||||
=> LoadDataContacts<ServiceRecordDC_ServiceRecord, ServiceRecord, ServiceRecordDC>(MapperFactory.ServiceRecordDC_ServiceRecord, context_reference, sample_count);
|
||||
|
||||
private static TDC LoadDataContact<TMapper, TEntity, TDC>(TMapper mapper, Dictionary<TableID, long[]> context_reference)
|
||||
where TMapper : AbstractIDCEntityMapper<TEntity, TDC>
|
||||
@@ -143,7 +143,7 @@ namespace BeWo.Service.ServiceUtils
|
||||
return dc;
|
||||
}
|
||||
|
||||
private static IEnumerable<TDC> LoadDataContacts<TMapper, TEntity, TDC>(TMapper mapper, Dictionary<TableID, long[]> context_reference)
|
||||
private static IEnumerable<TDC> LoadDataContacts<TMapper, TEntity, TDC>(TMapper mapper, Dictionary<TableID, long[]> context_reference, int? sample_count = null)
|
||||
where TMapper : AbstractIDCEntityMapper<TEntity, TDC>
|
||||
where TEntity : BeWoEntityBase, new()
|
||||
where TDC : class, new()
|
||||
@@ -151,8 +151,13 @@ namespace BeWo.Service.ServiceUtils
|
||||
var example = new TEntity();
|
||||
var tid = example.Tid;
|
||||
var oids = context_reference[tid];
|
||||
|
||||
if (sample_count is int count)
|
||||
oids = context_reference[tid].Take(count).ToArray();
|
||||
|
||||
var entities = DAOFactory.GenericDAO.LoadByIDs<TEntity>(oids);
|
||||
var dcs = mapper.MapToNewDCs(entities);
|
||||
|
||||
return dcs;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user