163 lines
5.5 KiB
Vue
163 lines
5.5 KiB
Vue
<script setup>
|
|
import { ref } from 'vue';
|
|
import FormModel from 'components/FormModel.vue';
|
|
import FetchData from 'src/components/FetchData.vue';
|
|
import VnSelect from 'src/components/common/VnSelect.vue';
|
|
import VnRow from 'components/ui/VnRow.vue';
|
|
import VnInput from 'src/components/common/VnInput.vue';
|
|
import VnInputNumber from 'src/components/common/VnInputNumber.vue';
|
|
|
|
const warehouses = ref([]);
|
|
const companies = ref([]);
|
|
const countries = ref([]);
|
|
const fuelTypes = ref([]);
|
|
const bankPolicies = ref([]);
|
|
const deliveryPoints = ref([]);
|
|
</script>
|
|
<template>
|
|
<FetchData
|
|
url="Warehouses"
|
|
:filter="{ fields: ['id', 'name'] }"
|
|
@on-fetch="(data) => (warehouses = data)"
|
|
auto-load
|
|
/>
|
|
<FetchData
|
|
url="Companies"
|
|
:filter="{ fields: ['id', 'code'] }"
|
|
@on-fetch="(data) => (companies = data)"
|
|
auto-load
|
|
/>
|
|
<FetchData
|
|
url="Countries"
|
|
:filter="{ fields: ['code'] }"
|
|
@on-fetch="(data) => (countries = data)"
|
|
auto-load
|
|
/>
|
|
<FetchData
|
|
url="FuelTypes"
|
|
:filter="{ fields: ['id', 'name'] }"
|
|
@on-fetch="(data) => (fuelTypes = data)"
|
|
auto-load
|
|
/>
|
|
<FetchData
|
|
url="DeliveryPoints"
|
|
:filter="{ fields: ['id', 'name'] }"
|
|
@on-fetch="(data) => (deliveryPoints = data)"
|
|
auto-load
|
|
/>
|
|
<FormModel model="Vehicle" :url-update="`Vehicles/${$route.params.id}`">
|
|
<template #form="{ data }">
|
|
<VnRow>
|
|
<VnInput v-model="data.description" :label="$t('globals.description')" />
|
|
<VnInput v-model="data.numberPlate" :label="$t('vehicle.numberPlate')" />
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnInput
|
|
v-model="data.model"
|
|
:label="$t('globals.model')"
|
|
:required="true"
|
|
/>
|
|
<VnSelect
|
|
url="VehicleTypes"
|
|
v-model="data.vehicleTypeFk"
|
|
:label="$t('globals.type')"
|
|
/>
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnInput
|
|
v-model="data.tradeMark"
|
|
:label="$t('vehicle.tradeMark')"
|
|
:required="true"
|
|
/>
|
|
<VnInput v-model="data.chassis" :label="$t('vehicle.chassis')" />
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnSelect
|
|
v-model="data.fuelTypeFk"
|
|
:label="$t('globals.fuel')"
|
|
:options="fuelTypes"
|
|
/>
|
|
<VnSelect
|
|
v-model="data.deliveryPointFk"
|
|
:label="$t('globals.deliveryPoint')"
|
|
:options="deliveryPoints"
|
|
/>
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnSelect
|
|
v-model="data.companyFk"
|
|
:label="$t('globals.company')"
|
|
:options="companies"
|
|
option-label="code"
|
|
/>
|
|
<VnSelect
|
|
v-model="data.warehouseFk"
|
|
:label="$t('globals.warehouse')"
|
|
:options="warehouses"
|
|
/>
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnSelect
|
|
url="Suppliers"
|
|
:filter="{ fields: ['id', 'name'] }"
|
|
v-model="data.supplierFk"
|
|
:label="$t('globals.supplier')"
|
|
/>
|
|
<VnSelect
|
|
url="Suppliers"
|
|
:filter="{ fields: ['id', 'name'] }"
|
|
v-model="data.supplierCoolerFk"
|
|
:label="$t('vehicle.supplierCooler')"
|
|
/>
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnSelect
|
|
url="BankPolicies"
|
|
:filter="{ fields: ['id', 'ref'] }"
|
|
v-model="data.bankPolicyFk"
|
|
:label="$t('vehicle.leasing')"
|
|
:options="bankPolicies"
|
|
option-label="ref"
|
|
option-value="id"
|
|
/>
|
|
<VnInput v-model="data.leasing" :label="$t('vehicle.nLeasing')" />
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnInputNumber v-model="data.import" :label="$t('globals.amount')" />
|
|
<VnInputNumber
|
|
v-model="data.importCooler"
|
|
:label="$t('vehicle.amountCooler')"
|
|
/>
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnSelect
|
|
url="Ppes"
|
|
option-label="id"
|
|
v-model="data.ppeFk"
|
|
:label="$t('vehicle.ppe')"
|
|
/>
|
|
<VnSelect
|
|
v-model="data.countryCodeFk"
|
|
:label="$t('globals.country')"
|
|
:options="countries"
|
|
option-label="code"
|
|
option-value="code"
|
|
/>
|
|
</VnRow>
|
|
<VnRow>
|
|
<VnInput v-model="data.vin" :label="$t('vehicle.vin')" />
|
|
<span :style="{ 'align-self': $q.screen.gt.xs ? 'end' : 'unset' }">
|
|
<QCheckbox
|
|
v-model="data.isActive"
|
|
:label="$t('vehicle.isActive')"
|
|
:false-value="0"
|
|
:true-value="1"
|
|
dense
|
|
class="q-mt-sm"
|
|
/>
|
|
</span>
|
|
</VnRow>
|
|
</template>
|
|
</FormModel>
|
|
</template>
|