shiftReportApprovedSchema
@mineflow/contracts / shiftReportApprovedSchema
Variable: shiftReportApprovedSchema
const shiftReportApprovedSchema: ZodObject<{
actorId: ZodUUID;
approvedAt: ZodISODateTime;
approvedBy: ZodUUID;
approveSagaId: ZodUUID;
organizationId: ZodUUID;
productionObjectId: ZodUUID;
reportId: ZodUUID;
shiftDate: ZodISODateTime;
shiftType: ZodEnum<{
day: "day";
night: "night";
}>;
summary: ZodDefault<ZodObject<{
assetWorkingHours: ZodDefault<ZodArray<ZodObject<{
assetId: ZodUUID;
hoursWorked: ZodNumber;
}, $strip>>>;
blastedBlocks: ZodDefault<ZodNumber>;
blastedExplosiveKg: ZodDefault<ZodNumber>;
blastedVolumeM3: ZodDefault<ZodNumber>;
blastingByBlock: ZodDefault<ZodArray<ZodObject<{
blockCode: ZodString;
volumeM3: ZodNumber;
}, $strip>>>;
drilledMeters: ZodDefault<ZodNumber>;
drillingByBlock: ZodDefault<ZodArray<ZodObject<{
blockCode: ZodString;
depthMeters: ZodNumber;
}, $strip>>>;
fuelConsumedLitres: ZodDefault<ZodNumber>;
holesDrilled: ZodDefault<ZodNumber>;
personnelCount: ZodDefault<ZodNumber>;
}, $strip>>;
}, $strip>;
Defined in: events/prd/shift-report.ts:169
prd.shift-report.approved — отчёт утверждён инженером (submitted → approved).
Запускает 5-шаговую approve-сагу (см. ApproveShiftReportSaga). Подписчики:
SCM/EAM/HR/ANA — каждый выполняет свой эффект из саги. Notifications.
Q5 (open-questions) — schema выровнена с entity:
убраны несуществующие reportNumber и shiftId, добавлены реальные поля
(productionObjectId, shiftDate, shiftType, approveSagaId, organizationId).