lct-37: норматив реакции ДДС на доклад бригады, отметка D6 и настраиваемый лимит
This commit is contained in:
parent
3f5f57877a
commit
a998b0c2f7
12 changed files with 213 additions and 7 deletions
|
|
@ -75,7 +75,8 @@ export function Debrief({ report, big = false }: { report: SessionReport; big?:
|
|||
{report.passed ? "Зачёт" : "Не зачтено"}: на разборе {report.failed_metrics} пунктов; допустимо пропустить {report.criteria.allowed_errors}. {report.exercise === "dds" && <>На первичное решение ДДС отводится
|
||||
{` ${report.criteria.decision_time_limit_seconds} с`}</>}
|
||||
{report.exercise === "dds" && <>; норматив отработки карточки ДДС —
|
||||
{` ${report.criteria.dds_card_work_time_limit_seconds ?? 180} с`}</>}
|
||||
{` ${report.criteria.dds_card_work_time_limit_seconds ?? 180} с`}; статус по докладу бригады —
|
||||
{` не позже ${report.criteria.dds_report_reaction_limit_seconds ?? 45} с`}</>}
|
||||
{report.exercise === "card" && <>Норматив заполнения КИО —
|
||||
{` ${report.criteria.card_fill_time_limit_seconds ?? 180} с`}</>}
|
||||
{report.exercise && report.exercise !== "dds" && <>
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ const DDS_METRICS: MetricOption[] = [
|
|||
{ key: "dds_completion", label: "Завершение работ", hint: "Фиксация завершения или отказа от работ." },
|
||||
{ key: "dds_reply", label: "Основание и сведения", hint: "Комментарии к статусам и содержание полученных сведений." },
|
||||
{ key: "dds_work_time", label: "Время отработки карточки", hint: "Соблюдение лимита полного цикла карточки." },
|
||||
{ key: "dds_report_reaction", label: "Реакция на доклад бригады", hint: "Статус по докладу бригады не позже лимита занятия." },
|
||||
];
|
||||
|
||||
const CARD_METRICS = OPERATOR_METRICS.filter(({ key }) => [
|
||||
|
|
|
|||
|
|
@ -86,6 +86,7 @@ export function Instructor() {
|
|||
const [decisionTimeLimit, setDecisionTimeLimit] = useState(30);
|
||||
const [cardFillTimeLimit, setCardFillTimeLimit] = useState(180);
|
||||
const [ddsCardWorkTimeLimit, setDdsCardWorkTimeLimit] = useState(180);
|
||||
const [ddsReportReactionLimit, setDdsReportReactionLimit] = useState(45);
|
||||
const [allowedErrors, setAllowedErrors] = useState(0);
|
||||
const [requireCorrectGrammar, setRequireCorrectGrammar] = useState(true);
|
||||
const [lessonScoreWeights, setLessonScoreWeights] = useState<Record<string, number>>({});
|
||||
|
|
@ -300,6 +301,7 @@ export function Instructor() {
|
|||
decision_time_limit_seconds: decisionTimeLimit,
|
||||
card_fill_time_limit_seconds: cardFillTimeLimit,
|
||||
dds_card_work_time_limit_seconds: ddsCardWorkTimeLimit,
|
||||
dds_report_reaction_limit_seconds: ddsReportReactionLimit,
|
||||
allowed_errors: allowedErrors,
|
||||
require_correct_grammar: requireCorrectGrammar,
|
||||
score_weights: lessonScoreWeights,
|
||||
|
|
@ -307,7 +309,7 @@ export function Instructor() {
|
|||
});
|
||||
if (sent) toStart.current = null;
|
||||
}, [sessionId, control, scenarioId, extraScenarioIds, mode, trainee, traineeId, trainees.data,
|
||||
exercise, decisionTimeLimit, cardFillTimeLimit, ddsCardWorkTimeLimit, allowedErrors, requireCorrectGrammar, wholeTicket, selectedTicketScenarios,
|
||||
exercise, decisionTimeLimit, cardFillTimeLimit, ddsCardWorkTimeLimit, ddsReportReactionLimit, allowedErrors, requireCorrectGrammar, wholeTicket, selectedTicketScenarios,
|
||||
ddsArrivalIntervalSeconds, ddsMaxWaiting, lessonScoreWeights, scenarios.data,
|
||||
randomScenario, visibleScenarios]);
|
||||
|
||||
|
|
@ -649,6 +651,13 @@ export function Instructor() {
|
|||
onCommit={setDdsCardWorkTimeLimit} />
|
||||
<small className="ref">По умолчанию 180 секунд; не заменяет 30-секундное первичное решение.</small>
|
||||
</label>}
|
||||
{(exercise === "dds" || exercise === "card_dds") && <label className="lesson-criterion">
|
||||
Реакция на доклад бригады, секунд
|
||||
<LessonNumberInput label="Лимит реакции на доклад бригады, секунд"
|
||||
value={ddsReportReactionLimit} min={5} max={600} fallback={45}
|
||||
onCommit={setDdsReportReactionLimit} />
|
||||
<small className="ref">По умолчанию 45 секунд: статус по докладу бригады — не позже лимита.</small>
|
||||
</label>}
|
||||
<label className="lesson-criterion">
|
||||
Допустимо нарушенных метрик
|
||||
<LessonNumberInput label="Допустимое число ошибок" value={allowedErrors}
|
||||
|
|
|
|||
|
|
@ -396,6 +396,7 @@ export interface LessonCriteria {
|
|||
decision_time_limit_seconds?: number;
|
||||
card_fill_time_limit_seconds?: number;
|
||||
dds_card_work_time_limit_seconds?: number;
|
||||
dds_report_reaction_limit_seconds?: number;
|
||||
allowed_errors?: number;
|
||||
require_correct_grammar?: boolean;
|
||||
score_weights?: Record<string, number>;
|
||||
|
|
|
|||
Loading…
Reference in a new issue