fix: в заголовке заявковк на чтение теперь показывает правильный номер

This commit is contained in:
Тимур Городецкий
2026-08-26 16:38:10 +05:00
parent 418e30dfc3
commit 488d3b20da
27 changed files with 118 additions and 28 deletions
@@ -67,7 +67,8 @@ const RecruitingHireForm: React.FC<IRequestFormProps> = ({
onCancel,
onSaved,
editId,
editListId
editListId,
onCodeLoaded
}) => {
const [data, setData] = useState<IFormData>(EMPTY_DATA);
// Вложения — три зоны: удостоверение, резюме и прочие (см. attachmentCategories.ts).
@@ -100,6 +101,7 @@ const RecruitingHireForm: React.FC<IRequestFormProps> = ({
setData(loaded.data);
setRequestStatus(loaded.status);
setRequestCode(loaded.code || undefined);
if (loaded.code) onCodeLoaded?.(loaded.code);
setExistingAttachments(atts);
}
})
@@ -41,6 +41,8 @@ interface IRecruitingHireViewProps {
formKey: string;
/** Партиция, где лежит ЭТА заявка — см. IApprovalViewProps.listId. */
listId?: string;
/** Уведомление о загруженном уникальном коде заявки — см. IApprovalViewProps.onCodeLoaded. */
onCodeLoaded?: (code: string) => void;
}
// Ключ формы «Организация рабочего места» в реестре (data/requests) — цель
@@ -53,7 +55,7 @@ const NOOP_SET: SetField = () => undefined;
// Заявка «на прием» только для просмотра (режим согласующего).
// Переиспользует те же секции, что и форма подачи; редактирование выключено
// через <FormModeProvider readOnly> — поля сами становятся неизменяемыми.
const RecruitingHireView: React.FC<IRecruitingHireViewProps> = ({ context, itemId, formKey, listId }) => {
const RecruitingHireView: React.FC<IRecruitingHireViewProps> = ({ context, itemId, formKey, listId, onCodeLoaded }) => {
const [data, setData] = useState<IFormData>(EMPTY_DATA);
const [status, setStatus] = useState<string>('');
const [code, setCode] = useState<string>('');
@@ -114,6 +116,7 @@ const RecruitingHireView: React.FC<IRecruitingHireViewProps> = ({ context, itemI
setData(loaded.data);
setStatus(loaded.status);
setCode(loaded.code);
onCodeLoaded?.(loaded.code);
setAttachments(files);
setError(null);
setLoading(false);
@@ -113,7 +113,6 @@ export const HIRE_TYPE_OPTIONS: ISelectOption[] = [
/** Варианты «Испытательный срок» — самые частые сроки (совпадают с choices колонки ProbationPeriod). */
export const PROBATION_PERIOD_OPTIONS: ISelectOption[] = [
{ value: 'Без испытательного срока', label: 'Без испытательного срока' },
{ value: '1 месяц', label: '1 месяц' },
{ value: '2 месяца', label: '2 месяца' },
{ value: '3 месяца', label: '3 месяца' },
@@ -31,7 +31,7 @@
{ "internalName": "PpeClothingSize", "title": "СИЗ: размер одежды", "type": "Text" },
{ "internalName": "PpeShoeSize", "title": "СИЗ: размер обуви", "type": "Number" },
{ "internalName": "ProbationPeriod", "title": "Испытательный срок", "type": "Choice", "choices": ["Без испытательного срока", "1 месяц", "2 месяца", "3 месяца", "6 месяцев"] },
{ "internalName": "ProbationPeriod", "title": "Испытательный срок", "type": "Choice", "choices": ["1 месяц", "2 месяца", "3 месяца", "6 месяцев"] },
{ "internalName": "SalaryProbation", "title": "Оклад при испытательном сроке", "type": "Number", "decimals": 2 },
{ "internalName": "SalaryAfterProbation", "title": "Оклад по завершении ИС", "type": "Number", "decimals": 2 },
{ "internalName": "WorkSchedule", "title": "График работы", "type": "Text" },