project modal add year: убрала ввод года для его добавления (всегда добавляется год +1) #116
@ -24,8 +24,8 @@ export const ProjectsApi = {
|
||||
return api.patch(`/projects/${projectId}/smeta/${year}`, data).then((r) => r.data);
|
||||
},
|
||||
|
||||
addYear: (projectId, year) => {
|
||||
return api.post(`/projects/${projectId}/year`, { year }).then((r) => r.data);
|
||||
addYear: (projectId) => {
|
||||
return api.post(`/projects/${projectId}/year`).then((r) => r.data);
|
||||
},
|
||||
|
||||
delete: (id) => {
|
||||
|
||||
@ -52,7 +52,6 @@ export default function TaskPage() {
|
||||
const [projects, setProjects] = useState([]);
|
||||
const [isProjectData, setIsProjectData] = useState(false);
|
||||
const [addYearModalOpen, setAddYearModalOpen] = useState(false);
|
||||
const [newProjectYear, setNewProjectYear] = useState('');
|
||||
const [isAddingYear, setIsAddingYear] = useState(false);
|
||||
const [dataReloadKey, setDataReloadKey] = useState(0);
|
||||
|
||||
@ -125,22 +124,15 @@ export default function TaskPage() {
|
||||
const handleCloseAddYearModal = () => {
|
||||
if (isAddingYear) return;
|
||||
setAddYearModalOpen(false);
|
||||
setNewProjectYear('');
|
||||
};
|
||||
|
||||
const handleAddProjectYear = async () => {
|
||||
const year = Number(newProjectYear);
|
||||
if (!Number.isInteger(year) || year < 1) {
|
||||
toast.error('Введите корректный год');
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
setIsAddingYear(true);
|
||||
await ProjectsApi.addYear(id, year);
|
||||
toast.success(`Год ${year} успешно добавлен`);
|
||||
await ProjectsApi.addYear(id);
|
||||
toast.success(`Год успешно добавлен`);
|
||||
setAddYearModalOpen(false);
|
||||
setNewProjectYear('');
|
||||
setDataReloadKey((key) => key + 1);
|
||||
} catch (error) {
|
||||
toast.error(error?.response?.data?.detail || error?.response?.data?.message || 'Не удалось добавить год');
|
||||
@ -243,19 +235,7 @@ export default function TaskPage() {
|
||||
</>
|
||||
}>
|
||||
<FormControl fullWidth>
|
||||
<FormLabel required>Год</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();
|
||||
}}
|
||||
/>
|
||||
<FormLabel>Вы точно хотите добавить год?</FormLabel>
|
||||
</FormControl>
|
||||
</Modal>
|
||||
)}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user