$employeePosition = EmployeePosition::findOne($attributes['employee_position_id']);
if ($employeePosition) {
$groupName = $employeePosition->name;
+ // Если выбрана смена, добавляем её к названию
if (!empty($attributes['shift'])) {
$groupName .= ' ' . $attributes['shift'];
}
}
}
+ // Очищаем shift для не-специальных групп
unset($attributes['shift']);
} else {
// Для остальных групп group_name берем из текстового поля
$attributes['group_name'] = $attributes['custom_position'];
unset($attributes['custom_position']);
}
- // Очищаем employee_position_id для не-специальных групп
+ // Ð\9eÑ\87иÑ\89аем employee_position_id и shift длÑ\8f не-Ñ\81пеÑ\86иалÑ\8cнÑ\8bÑ\85 гÑ\80Ñ\83пп
$attributes['employee_position_id'] = null;
+ unset($attributes['shift']);
}
$model->setAttributes($attributes, false);
ArrayHelper::map($positions, 'id', 'name'), ['prompt' => 'Выберите должность']
)->label(false)) ?>
- <?php PrintBlockHelper::printBlock('Смена', Html::dropDownList('shift', '', [
+ <?php PrintBlockHelper::printBlock('Смена', Html::dropDownList('Admin[shift]', '', [
'' => 'Не выбрана',
'день' => 'День',
'ночь' => 'Ночь'
$('#positionFieldRegular').show();
// Очищаем поле employee_position_id для не-специальных групп
$('select[name="Admin[employee_position_id]"]').val('');
+ // Очищаем поле shift для не-специальных групп
+ $('select[name="Admin[shift]"]').val('');
}
}
var initialGroupId = $('select[name="Admin[group_id]"]').val();
changePositionFieldVisibility(initialGroupId);
- // Для не-специальных групп очищаем employee_position_id при загрузке
+ // Ð\94лÑ\8f не-Ñ\81пеÑ\86иалÑ\8cнÑ\8bÑ\85 гÑ\80Ñ\83пп оÑ\87иÑ\89аем employee_position_id и shift пÑ\80и загÑ\80Ñ\83зке
var specialGroups = <?= $specialGroupsJson ?>;
var isSpecialGroup = specialGroups.includes(parseInt(initialGroupId));
if (!isSpecialGroup) {
$('select[name="Admin[employee_position_id]"]').val('');
+ $('select[name="Admin[shift]"]').val('');
}
});
</script>
\ No newline at end of file