@@ -453,13 +453,22 @@ export class AnalyticsRepository extends Repository<AnalyticsRepository> {
453453 '"individualEnrollment"."experimentId" as "experimentId"' ,
454454 '"individualEnrollment"."conditionId" as "conditionId"' ,
455455 '"individualEnrollment"."partitionId" as "partitionId"' ,
456+ '"decisionPointData"."site" as "site"' ,
457+ '"decisionPointData"."target" as "target"' ,
456458 ] )
459+ . leftJoin (
460+ DecisionPoint ,
461+ 'decisionPointData' ,
462+ 'decisionPointData.experimentId = individualEnrollment.experimentId AND decisionPointData.id = individualEnrollment.partitionId'
463+ )
457464 . groupBy ( 'individualEnrollment.userId' )
458465 . addGroupBy ( 'individualEnrollment.groupId' )
459466 . addGroupBy ( 'individualEnrollment.enrollmentCode' )
460467 . addGroupBy ( 'individualEnrollment.experimentId' )
461468 . addGroupBy ( 'individualEnrollment.conditionId' )
462469 . addGroupBy ( 'individualEnrollment.partitionId' )
470+ . addGroupBy ( 'decisionPointData.site' )
471+ . addGroupBy ( 'decisionPointData.target' )
463472 . orderBy ( 'individualEnrollment.userId' , 'ASC' )
464473 . where ( 'individualEnrollment.experimentId = :experimentId::uuid' , { experimentId } ) ;
465474
@@ -515,6 +524,8 @@ export class AnalyticsRepository extends Repository<AnalyticsRepository> {
515524 enrollmentCode : individualEnrollmentQueryResult . enrollmentCode ,
516525 expDecisionPointId : individualEnrollmentQueryResult . partitionId ,
517526 expConditionId : individualEnrollmentQueryResult . conditionId ,
527+ site : individualEnrollmentQueryResult . site ,
528+ target : individualEnrollmentQueryResult . target ,
518529 } ) ;
519530 }
520531 } ) ;
@@ -549,16 +560,22 @@ export class AnalyticsRepository extends Repository<AnalyticsRepository> {
549560 const userMonitoredResults =
550561 groupedMonitoredDecisionPointQueryResults [ individualEnrollmentExperiment . userId ] || [ ] ;
551562
552- return userMonitoredResults . map ( ( monitoredDecisionPointQueryResult ) => ( {
553- ...individualEnrollmentExperiment ,
554- site : monitoredDecisionPointQueryResult . site ,
555- target : monitoredDecisionPointQueryResult . target ,
556- markExperimentPointTime : monitoredDecisionPointQueryResult . markExperimentPointTime ,
557- stratificationValue : experimentsData . stratification
558- ? userStratificationFactorQueryResult . find ( ( user ) => user . userId === individualEnrollmentExperiment . userId )
559- ?. stratificationFactorValue
560- : null ,
561- } ) ) ;
563+ return userMonitoredResults
564+ . filter (
565+ ( monitoredDecisionPointQueryResult ) =>
566+ monitoredDecisionPointQueryResult . site === individualEnrollmentExperiment . site &&
567+ monitoredDecisionPointQueryResult . target === individualEnrollmentExperiment . target
568+ )
569+ . map ( ( monitoredDecisionPointQueryResult ) => ( {
570+ ...individualEnrollmentExperiment ,
571+ site : monitoredDecisionPointQueryResult . site ,
572+ target : monitoredDecisionPointQueryResult . target ,
573+ markExperimentPointTime : monitoredDecisionPointQueryResult . markExperimentPointTime ,
574+ stratificationValue : experimentsData . stratification
575+ ? userStratificationFactorQueryResult . find ( ( user ) => user . userId === individualEnrollmentExperiment . userId )
576+ ?. stratificationFactorValue
577+ : null ,
578+ } ) ) ;
562579 } ) ;
563580 return combinedCSVExportData ;
564581 }
0 commit comments