diff --git a/src/components/FormModel.vue b/src/components/FormModel.vue
index c569f2553..9638d71d7 100644
--- a/src/components/FormModel.vue
+++ b/src/components/FormModel.vue
@@ -107,7 +107,7 @@ const isLoading = ref(false);
const isResetting = ref(false);
const hasChanges = ref(!$props.observeFormChanges);
const originalData = ref({});
-const formData = computed(() => state.get(modelValue));
+const formData = computed(() => getValue(state.get(modelValue)));
const defaultButtons = computed(() => ({
save: {
dataCy: 'saveDefaultBtn',
@@ -193,7 +193,7 @@ async function fetch() {
let { data } = await axios.get($props.url, {
params: { filter: JSON.stringify($props.filter) },
});
- if (Array.isArray(data)) data = data[0] ?? {};
+ data = getValue(data);
updateAndEmit('onFetch', data);
} catch (e) {
@@ -274,6 +274,10 @@ function trimData(data) {
return data;
}
+function getValue(data) {
+ return Array.isArray(data) ? data[0] : data ?? {};
+}
+
defineExpose({
save,
isLoading,
diff --git a/src/pages/Route/Vehicle/Card/VehicleBasicData.vue b/src/pages/Route/Vehicle/Card/VehicleBasicData.vue
new file mode 100644
index 000000000..a09dad8a9
--- /dev/null
+++ b/src/pages/Route/Vehicle/Card/VehicleBasicData.vue
@@ -0,0 +1,81 @@
+
+
+ (warehouses = data)"
+ auto-load
+ />
+ (companies = data)"
+ auto-load
+ />
+ (countries = data)"
+ auto-load
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/router/modules/vehicle.js b/src/router/modules/vehicle.js
index 750f9395d..ce4d8ad38 100644
--- a/src/router/modules/vehicle.js
+++ b/src/router/modules/vehicle.js
@@ -12,7 +12,7 @@ export default {
redirect: { name: 'VehicleCard' },
menus: {
main: [],
- card: ['VehicleBasicData', 'VehicleLog'],
+ card: ['VehicleBasicData'],
},
children: [
{
@@ -31,15 +31,16 @@ export default {
component: () =>
import('src/pages/Route/Vehicle/Card/VehicleSummary.vue'),
},
- // {
- // name: 'VehicleBasicData',
- // path: 'basic-data',
- // meta: {
- // title: 'basicData',
- // icon: 'vn:settings',
- // },
- // component: () => import('pages/Route/Vehicle/Card/VehicleBasicData.vue'),
- // },
+ {
+ name: 'VehicleBasicData',
+ path: 'basic-data',
+ meta: {
+ title: 'basicData',
+ icon: 'vn:settings',
+ },
+ component: () =>
+ import('pages/Route/Vehicle/Card/VehicleBasicData.vue'),
+ },
],
},
],