Merge pull request 'project modal add year: убрала ввод года для его добавления (всегда добавляется год +1)' (#116) from modal-add-year-project into test

Reviewed-on: #116
This commit is contained in:
PotapovaA 2026-08-21 16:21:39 +03:00
commit ba1f8a8bd4
2 changed files with 5 additions and 25 deletions

View File

@ -24,8 +24,8 @@ export const ProjectsApi = {
return api.patch(`/projects/${projectId}/smeta/${year}`, data).then((r) => r.data); return api.patch(`/projects/${projectId}/smeta/${year}`, data).then((r) => r.data);
}, },
addYear: (projectId, year) => { addYear: (projectId) => {
return api.post(`/projects/${projectId}/year`, { year }).then((r) => r.data); return api.post(`/projects/${projectId}/year`).then((r) => r.data);
}, },
delete: (id) => { delete: (id) => {

View File

@ -52,7 +52,6 @@ export default function TaskPage() {
const [projects, setProjects] = useState([]); const [projects, setProjects] = useState([]);
const [isProjectData, setIsProjectData] = useState(false); const [isProjectData, setIsProjectData] = useState(false);
const [addYearModalOpen, setAddYearModalOpen] = useState(false); const [addYearModalOpen, setAddYearModalOpen] = useState(false);
const [newProjectYear, setNewProjectYear] = useState('');
const [isAddingYear, setIsAddingYear] = useState(false); const [isAddingYear, setIsAddingYear] = useState(false);
const [dataReloadKey, setDataReloadKey] = useState(0); const [dataReloadKey, setDataReloadKey] = useState(0);
@ -125,22 +124,15 @@ export default function TaskPage() {
const handleCloseAddYearModal = () => { const handleCloseAddYearModal = () => {
if (isAddingYear) return; if (isAddingYear) return;
setAddYearModalOpen(false); setAddYearModalOpen(false);
setNewProjectYear('');
}; };
const handleAddProjectYear = async () => { const handleAddProjectYear = async () => {
const year = Number(newProjectYear);
if (!Number.isInteger(year) || year < 1) {
toast.error('Введите корректный год');
return;
}
try { try {
setIsAddingYear(true); setIsAddingYear(true);
await ProjectsApi.addYear(id, year); await ProjectsApi.addYear(id);
toast.success(`Год ${year} успешно добавлен`); toast.success(`Год успешно добавлен`);
setAddYearModalOpen(false); setAddYearModalOpen(false);
setNewProjectYear('');
setDataReloadKey((key) => key + 1); setDataReloadKey((key) => key + 1);
} catch (error) { } catch (error) {
toast.error(error?.response?.data?.detail || error?.response?.data?.message || 'Не удалось добавить год'); toast.error(error?.response?.data?.detail || error?.response?.data?.message || 'Не удалось добавить год');
@ -243,19 +235,7 @@ export default function TaskPage() {
</> </>
}> }>
<FormControl fullWidth> <FormControl fullWidth>
<FormLabel required>Год</FormLabel> <FormLabel>Вы точно хотите добавить год?</FormLabel>
<TextField
autoFocus
size='small'
type='number'
placeholder='Введите год'
value={newProjectYear}
disabled={isAddingYear}
onChange={(event) => setNewProjectYear(event.target.value)}
onKeyDown={(event) => {
if (event.key === 'Enter') handleAddProjectYear();
}}
/>
</FormControl> </FormControl>
</Modal> </Modal>
)} )}