Перейти к содержанию

JournalResultManager: различия между версиями

Материал из Химсофт Вики
 
(не показано 5 промежуточных версий этого же участника)
Строка 33: Строка 33:


==Свойства==
==Свойства==
ID управляемого результата лабораторного журнала:
*<code>journalResultId: number</code>


Данные о текущем результате лабораторного журнала (или null, если результат не найден):
'''<code>journalResultId: number</code>'''
*<code>data: JournalResultResponse | null</code>
*ID управляемого результата лабораторного журнала.


Код результата после выполнения вычислений:
'''<code>data: JournalResultResponse | null</code>'''
*<code>calculationResultCode: CalculationResultCode</code>
*Данные о текущем результате лабораторного журнала (или null, если результат не найден).
 
'''<code>calculationResultCode: CalculationResultCode</code>'''
*Код результата после выполнения вычислений.


==Методы==
==Методы==
<code>setParallels(parallels: ParallelRequest[]): Promise<void></code>
'''<code>setParallels(parallels: ParallelRequest[]): Promise<void></code>'''
*Устанавливает список параллелей для результата анализа показателя.
*Устанавливает список параллелей для результата анализа показателя.
*Обновляет data
*Обновляет data


<code>addParallel(parallel: ParallelRequest): Promise<void></code>
'''<code>addParallel(parallel: ParallelRequest): Promise<void></code>'''
*Добавляет новое параллельное измерение к результату.
*Добавляет новое параллельное измерение к результату.
*Обновляет data
*Обновляет data


<code>excludeParallelFromCalculation(parallelIndex: number): Promise<void></code>
'''<code>excludeParallelFromCalculation(parallelIndex: number): Promise<void></code>'''
*Исключает параллельное измерение из расчёта среднего значения по его порядковому номеру.
*Исключает параллельное измерение из расчёта среднего значения по его порядковому номеру.
*Обновляет data
*Обновляет data


<code>deleteParallelById(id: number): Promise<void></code>
'''<code>deleteParallelById(id: number): Promise<void></code>'''
*Удаляет параллельное измерение по его порядковому ID.
*Удаляет параллельное измерение по его порядковому ID.
*Обновляет data
*Обновляет data


<code>deleteParallelByIndex(parallelIndex: number): Promise<void></code>
'''<code>deleteParallelByIndex(parallelIndex: number): Promise<void></code>'''
*Удаляет параллельное измерение по его порядковому номеру.
*Удаляет параллельное измерение по его порядковому номеру.
*Обновляет data
*Обновляет data


<code>setExecutorsByIds(executorsIds: number[]): Promise<void></code>
'''<code>setExecutorsByIds(executorsIds: number[]): Promise<void></code>'''
*Устанавливает исполнителей по их ID.
*Устанавливает исполнителей по их ID.
*Обновляет data
*Обновляет data


setExecutorsByNames(executorsNames: string[]): Promise<void>
'''<code>setExecutorsByNames(executorsNames: string[]): Promise<void></code>'''
Устанавливает исполнителей по их полным именам.
*Устанавливает исполнителей по их полным именам.
Обновляет data
*Обновляет data


calculate(unacceptableResultAction?: UnacceptableResultAction): Promise<QuantitativeCalculationsResult>
'''<code>calculate(unacceptableResultAction?: UnacceptableResultAction): Promise<QuantitativeCalculationsResult></code>'''
Выполняет расчёт результата для текущего показателя. Устанавливает код результата.
*Выполняет расчёт результата для текущего показателя. Устанавливает код результата.
Обновляет data
*Обновляет data.

Текущая версия от 01:44, 13 мая 2026

JournalResultManager - класс для управления результатами анализа в лабораторных журналах (ЛЖ).

Назначение

Отвечает за логику получения, расчёта, обновления и управления результатом анализа и его параллельными измерениями.

Интерфейс

interface IJournalResultManager {
    journalResultId: number,
    data: JournalResultResponse | null,
    calculationResultCode: CalculationResultCode
    setParallels(parallels: ParallelRequest[]): Promise<void>,
    addParallel(parallel: ParallelRequest): Promise<void>,
    excludeParallelFromCalculation(parallelIndex: number): Promise<void>,
    deleteParallelById(id: number): Promise<void>,
    deleteParallelByIndex(parallelIndex: number): Promise<void>,
    setExecutorsByIds(executorsIds: number[]): Promise<void>,
    setExecutorsByNames(executorsNames: string[]): Promise<void>,
    calculate(unacceptableResultAction?: UnacceptableResultAction): Promise<QuantitativeCalculationsResult>
}

Инициализация

Экземпляр класса инициализируется асинхронно (подгружаются данные о результате ЛЖ):

import { JournalResultManager } from "../../src/servivces/worker/api/interactors"

const journalResultManager = await JournalResultManager(journalResultId)

Свойства

journalResultId: number

  • ID управляемого результата лабораторного журнала.

data: JournalResultResponse | null

  • Данные о текущем результате лабораторного журнала (или null, если результат не найден).

calculationResultCode: CalculationResultCode

  • Код результата после выполнения вычислений.

Методы

setParallels(parallels: ParallelRequest[]): Promise<void>

  • Устанавливает список параллелей для результата анализа показателя.
  • Обновляет data

addParallel(parallel: ParallelRequest): Promise<void>

  • Добавляет новое параллельное измерение к результату.
  • Обновляет data

excludeParallelFromCalculation(parallelIndex: number): Promise<void>

  • Исключает параллельное измерение из расчёта среднего значения по его порядковому номеру.
  • Обновляет data

deleteParallelById(id: number): Promise<void>

  • Удаляет параллельное измерение по его порядковому ID.
  • Обновляет data

deleteParallelByIndex(parallelIndex: number): Promise<void>

  • Удаляет параллельное измерение по его порядковому номеру.
  • Обновляет data

setExecutorsByIds(executorsIds: number[]): Promise<void>

  • Устанавливает исполнителей по их ID.
  • Обновляет data

setExecutorsByNames(executorsNames: string[]): Promise<void>

  • Устанавливает исполнителей по их полным именам.
  • Обновляет data

calculate(unacceptableResultAction?: UnacceptableResultAction): Promise<QuantitativeCalculationsResult>

  • Выполняет расчёт результата для текущего показателя. Устанавливает код результата.
  • Обновляет data.