mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-07 18:25:09 +00:00
[AAE-10089] Process variables values are not shown for old tasks and … (#7744)
* [AAE-10089] Process variables values are not shown for old tasks and processes * fix unit test and variable names * change variableId
This commit is contained in:
parent
fd0110e5c7
commit
26c46cfb9d
@ -20,6 +20,7 @@ import { ProcessInstanceVariable } from '../models/process-instance-variable.mod
|
|||||||
export const getProcessInstanceVariableMock = (variable: Partial<ProcessInstanceVariable> = {}): ProcessInstanceVariable => ({
|
export const getProcessInstanceVariableMock = (variable: Partial<ProcessInstanceVariable> = {}): ProcessInstanceVariable => ({
|
||||||
id: 1,
|
id: 1,
|
||||||
variableDefinitionId: 'variableDefinitionId',
|
variableDefinitionId: 'variableDefinitionId',
|
||||||
|
processDefinitionKey: 'processDefinitionKey',
|
||||||
value: 'value',
|
value: 'value',
|
||||||
appName: 'appName',
|
appName: 'appName',
|
||||||
createTime: 'createTime',
|
createTime: 'createTime',
|
||||||
|
@ -22,6 +22,7 @@ export type WithVariablesMap<T> = T & {
|
|||||||
export interface ProcessInstanceVariable {
|
export interface ProcessInstanceVariable {
|
||||||
id: number;
|
id: number;
|
||||||
variableDefinitionId: string;
|
variableDefinitionId: string;
|
||||||
|
processDefinitionKey: string;
|
||||||
value: string;
|
value: string;
|
||||||
appName: string;
|
appName: string;
|
||||||
createTime: string;
|
createTime: string;
|
||||||
|
@ -31,7 +31,8 @@ describe('VariableMapperService', () => {
|
|||||||
|
|
||||||
it('should map variables by column title', () => {
|
it('should map variables by column title', () => {
|
||||||
const variable: ProcessInstanceVariable = getProcessInstanceVariableMock({
|
const variable: ProcessInstanceVariable = getProcessInstanceVariableMock({
|
||||||
variableDefinitionId: 'variableDefinitionIdOne'
|
processDefinitionKey: 'processKey',
|
||||||
|
name: 'variableName'
|
||||||
});
|
});
|
||||||
|
|
||||||
const objectWithVariables = {
|
const objectWithVariables = {
|
||||||
|
@ -26,7 +26,7 @@ export class VariableMapperService {
|
|||||||
instancesList: T[] = [],
|
instancesList: T[] = [],
|
||||||
columnsSchema: DataColumn<ProcessListDataColumnCustomData>[] = []
|
columnsSchema: DataColumn<ProcessListDataColumnCustomData>[] = []
|
||||||
): Array<WithVariablesMap<T>> {
|
): Array<WithVariablesMap<T>> {
|
||||||
const columnsByVariableId = this.mapColumnKeysByVariableId(columnsSchema);
|
const columnsByVariables = this.mapColumnKeysByVariable(columnsSchema);
|
||||||
|
|
||||||
const rowsViewModel = instancesList.map<WithVariablesMap<T>>((instance) => {
|
const rowsViewModel = instancesList.map<WithVariablesMap<T>>((instance) => {
|
||||||
if (!instance.variables?.length) {
|
if (!instance.variables?.length) {
|
||||||
@ -34,9 +34,9 @@ export class VariableMapperService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const variablesMap = (instance.variables ?? []).reduce<{[columnTitle: string]: ProcessInstanceVariable}>((variableAccumulator, variable) => {
|
const variablesMap = (instance.variables ?? []).reduce<{[columnTitle: string]: ProcessInstanceVariable}>((variableAccumulator, variable) => {
|
||||||
const processVariableDefinitionId = variable.variableDefinitionId;
|
const processVariableDefinitionPayload = `${variable.processDefinitionKey}/${variable.name}`;
|
||||||
|
|
||||||
const column = columnsByVariableId[processVariableDefinitionId];
|
const column = columnsByVariables[processVariableDefinitionPayload];
|
||||||
if (column) {
|
if (column) {
|
||||||
variableAccumulator[column] = {
|
variableAccumulator[column] = {
|
||||||
...variable,
|
...variable,
|
||||||
@ -56,23 +56,23 @@ export class VariableMapperService {
|
|||||||
return rowsViewModel;
|
return rowsViewModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
private mapColumnKeysByVariableId(
|
private mapColumnKeysByVariable(
|
||||||
columnsSchema: DataColumn<ProcessListDataColumnCustomData>[]
|
columnsSchema: DataColumn<ProcessListDataColumnCustomData>[]
|
||||||
): { [variableId: string]: string } {
|
): { [key: string]: string } {
|
||||||
const columnsByVariableId = columnsSchema
|
const columnsByVariables = columnsSchema
|
||||||
.filter(column => !!column.customData)
|
.filter(column => !!column.customData)
|
||||||
.reduce<{ [variableId: string]: string }>((columnsByVariable, column) => {
|
.reduce<{ [key: string]: string }>((columnsByVariable, column) => {
|
||||||
const columnTitle = column.title;
|
const columnTitle = column.title;
|
||||||
const variableIds = column.customData.assignedVariableDefinitionIds;
|
const variables = column.customData.variableDefinitionsPayload;
|
||||||
|
|
||||||
variableIds.forEach((variableId) => {
|
variables.forEach((key) => {
|
||||||
columnsByVariable[variableId] = columnTitle;
|
columnsByVariable[key] = columnTitle;
|
||||||
});
|
});
|
||||||
return columnsByVariable;
|
return columnsByVariable;
|
||||||
|
|
||||||
}, {});
|
}, {});
|
||||||
|
|
||||||
return columnsByVariableId;
|
return columnsByVariables;
|
||||||
}
|
}
|
||||||
|
|
||||||
private mapProcessVariableTypes(variableType: string): DataColumnType {
|
private mapProcessVariableTypes(variableType: string): DataColumnType {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user