mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-19 14:20:31 +00:00
fix : handle errors message with item categories.
This commit is contained in:
@@ -80,8 +80,16 @@ function ItemCategoryFormDialogContent({
|
|||||||
[],
|
[],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const transformErrors = (errors, { setErrors }) => {
|
||||||
|
if (errors.find((error) => error.type === 'CATEGORY_NAME_EXISTS')) {
|
||||||
|
setErrors({
|
||||||
|
name: formatMessage({ id: 'category_name_exists' }),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// Handles the form submit.
|
// Handles the form submit.
|
||||||
const handleFormSubmit = (values, { setSubmitting }) => {
|
const handleFormSubmit = (values, { setSubmitting, setErrors }) => {
|
||||||
setSubmitting(true);
|
setSubmitting(true);
|
||||||
const form = { ...values };
|
const form = { ...values };
|
||||||
const afterSubmit = () => {
|
const afterSubmit = () => {
|
||||||
@@ -100,7 +108,9 @@ function ItemCategoryFormDialogContent({
|
|||||||
});
|
});
|
||||||
afterSubmit(response);
|
afterSubmit(response);
|
||||||
};
|
};
|
||||||
const onError = ({ response }) => {
|
|
||||||
|
const onError = (errors) => {
|
||||||
|
transformErrors(errors, { setErrors });
|
||||||
setSubmitting(false);
|
setSubmitting(false);
|
||||||
};
|
};
|
||||||
if (isNewMode) {
|
if (isNewMode) {
|
||||||
|
|||||||
@@ -929,11 +929,14 @@ export default {
|
|||||||
'Are you sure you want to activate this item? You will be able to inactivate it later',
|
'Are you sure you want to activate this item? You will be able to inactivate it later',
|
||||||
inactivate_item: 'Inactivate Item',
|
inactivate_item: 'Inactivate Item',
|
||||||
activate_item: 'Activate Item',
|
activate_item: 'Activate Item',
|
||||||
all_payments:'All Payments',
|
all_payments: 'All Payments',
|
||||||
hide_customizer: 'Hide Customizer',
|
hide_customizer: 'Hide Customizer',
|
||||||
opening_quantity_: 'Opening quantity',
|
opening_quantity_: 'Opening quantity',
|
||||||
opening_average_cost: 'Opening average cost',
|
opening_average_cost: 'Opening average cost',
|
||||||
opening_cost_: 'Opening cost ',
|
opening_cost_: 'Opening cost ',
|
||||||
opening_date_: 'Opening date ',
|
opening_date_: 'Opening date ',
|
||||||
no_results:'No results.'
|
no_results: 'No results.',
|
||||||
};
|
the_invoice_cannot_be_deleted:
|
||||||
|
'The invoice cannot be deleted cause has associated payment transactions',
|
||||||
|
category_name_exists:'Category name exists'
|
||||||
|
};
|
||||||
|
|||||||
@@ -2,11 +2,20 @@ import ApiService from 'services/ApiService';
|
|||||||
import t from 'store/types';
|
import t from 'store/types';
|
||||||
|
|
||||||
export const submitItemCategory = ({ form }) => {
|
export const submitItemCategory = ({ form }) => {
|
||||||
return (dispatch) => {
|
return (dispatch) =>
|
||||||
return ApiService.post('item_categories', { ...form });
|
new Promise((resolve, reject) => {
|
||||||
};
|
ApiService.post('item_categories', form)
|
||||||
};
|
.then((response) => {
|
||||||
|
resolve(response);
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
const { response } = error;
|
||||||
|
const { data } = response;
|
||||||
|
|
||||||
|
reject(data?.errors);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
export const fetchItemCategories = ({ query }) => {
|
export const fetchItemCategories = ({ query }) => {
|
||||||
return (dispatch, getState) =>
|
return (dispatch, getState) =>
|
||||||
new Promise((resolve, reject) => {
|
new Promise((resolve, reject) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user