Merge pull request 'project modal add year: убрала ввод года для его добавления (всегда добавляется год +1)' (#116) from modal-add-year-project into test
Reviewed-on: #116
This commit is contained in:
commit
ba1f8a8bd4
@ -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) => {
|
||||||
|
|||||||
@ -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>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user