refactor: full address on table

This commit is contained in:
puriphatt 2024-09-18 14:29:32 +07:00
parent 286fe5bd31
commit d142991eb0
4 changed files with 112 additions and 20 deletions

View file

@ -348,6 +348,12 @@ const defaultFormData = {
subDistrictId: '',
districtId: '',
provinceId: '',
moo: '',
mooEN: '',
soi: '',
soiEN: '',
street: '',
streetEN: '',
lineId: '',
webUrl: '',
virtual: false,
@ -450,6 +456,12 @@ async function fetchBranchById(id: string) {
webUrl: res.webUrl,
virtual: res.virtual,
selectedImage: res.selectedImage,
moo: res.moo,
mooEN: res.mooEN,
soi: res.soi,
soiEN: res.soiEN,
street: res.street,
streetEN: res.streetEN,
permitExpireDate: new Date(res.permitExpireDate),
permitIssueDate: new Date(res.permitIssueDate),
@ -571,7 +583,6 @@ async function triggerEdit(
currentId.value = id;
if (!currentRecord) return;
currentEdit.value = {
@ -1296,7 +1307,7 @@ watch(currentHq, () => {
() => {
if (
props.row.isHeadOffice &&
props.row._count.branch !== 0
props.row._count?.branch !== 0
) {
fieldSelectedBranch.value = '';
inputSearch = '';
@ -1408,19 +1419,25 @@ watch(currentHq, () => {
<q-td v-if="fieldSelected.includes('branchLabelTel')">
{{
props.row.contact !== undefined
? props.row.contact[0]?.telephoneNo
? props.row.contact[0]?.telephoneNo || '-'
: '-'
}}
</q-td>
<q-td v-if="fieldSelected.includes('contactName')">
{{ props.row.contactName }}
{{ props.row.contactName || '-' }}
</q-td>
<q-td
v-if="fieldSelected.includes('branchLabelAddress')"
>
{{ props.row.address }}
{{
locale === 'eng'
? `${props.row.addressEN} ${props.row.mooEN && `Moo ${props.row.mooEN}`} ${props.row.soiEN && `Soi ${props.row.soiEN}`} ${props.row.streetEN && `${props.row.streetEN} Street`} ${props.row.subDistrict.nameEN} ${props.row.district.nameEN} ${props.row.province.nameEN} ${props.row.subDistrict.zipCode}` ||
'-'
: `${props.row.address} ${props.row.moo && `หมู่ ${props.row.moo}`} ${props.row.soi && `ซอย ${props.row.soi}`} ${props.row.street && `ถนน ${props.row.street}`} ต.${props.row.subDistrict.name} อ.${props.row.district.name} จ.${props.row.province.name} ${props.row.subDistrict.zipCode}` ||
'-'
}}
</q-td>
<q-td>
<KebabAction
@ -1485,13 +1502,13 @@ watch(currentHq, () => {
:virtual-branch="props.row.virtual"
:id="`branch-card-${props.row.name}`"
:class="{
'cursor-pointer': props.row._count.branch !== 0,
'cursor-pointer': props.row._count?.branch !== 0,
}"
@click="
() => {
if (
props.row.isHeadOffice &&
props.row._count.branch !== 0
props.row._count?.branch !== 0
) {
fieldSelectedBranch.value = '';
inputSearch = '';
@ -1524,14 +1541,16 @@ watch(currentHq, () => {
? props.row.nameEN
: props.row.name,
taxNo: props.row.taxNo,
branchLabelTel: props.row.contact
.map((c: BranchContact) => c.telephoneNo)
.join(','),
contactName: props.row.contactName,
branchLabelTel:
props.row.contact &&
props.row.contact
.map((c: BranchContact) => c.telephoneNo || '-')
.join(','),
contactName: props.row.contactName || '-',
branchLabelAddress:
$i18n.locale === 'eng'
? `${props.row.addressEN || ''} ${props.row.subDistrict?.nameEN || ''} ${props.row.district?.nameEN || ''} ${props.row.province?.nameEN || ''}`
: `${props.row.address || ''} ${props.row.subDistrict?.name || ''} ${props.row.district?.name || ''} ${props.row.province?.name || ''}`,
? `${props.row.addressEN} ${props.row.mooEN && `Moo ${props.row.mooEN}`} ${props.row.soiEN && `Soi ${props.row.soiEN}`} ${props.row.streetEN && `${props.row.streetEN} Street`} ${props.row.subDistrict.nameEN} ${props.row.district.nameEN} ${props.row.province.nameEN} ${props.row.subDistrict.zipCode}`
: `${props.row.address} ${props.row.moo && `หมู่ ${props.row.moo}`} ${props.row.soi && `ซอย ${props.row.soi}`} ${props.row.street && `ถนน ${props.row.street}`} ต.${props.row.subDistrict.name} อ.${props.row.district.name} จ.${props.row.province.name} ${props.row.subDistrict.zipCode}`,
branchImgUrl: `/branch/${props.row.id}/branch`,
}"
:field-selected="fieldSelected"
@ -1876,7 +1895,12 @@ watch(currentHq, () => {
v-model:province-id="formData.provinceId"
v-model:district-id="formData.districtId"
v-model:sub-district-id="formData.subDistrictId"
v-model:zip-code="formData.zipCode"
v-model:moo="formData.moo"
v-model:mooEN="formData.mooEN"
v-model:soi="formData.soi"
v-model:soiEN="formData.soiEN"
v-model:street="formData.street"
v-model:streetEN="formData.streetEN"
:readonly="formType === 'view'"
/>
<FormLocation
@ -2235,6 +2259,12 @@ watch(currentHq, () => {
v-model:province-id="formData.provinceId"
v-model:district-id="formData.districtId"
v-model:sub-district-id="formData.subDistrictId"
v-model:moo="formData.moo"
v-model:mooEN="formData.mooEN"
v-model:soi="formData.soi"
v-model:soiEN="formData.soiEN"
v-model:street="formData.street"
v-model:streetEN="formData.streetEN"
v-model:zip-code="formData.zipCode"
class="q-mb-xl"
/>

View file

@ -1269,11 +1269,9 @@ const emptyCreateDialog = ref(false);
<q-td v-if="fieldSelected.includes('address')">
{{
props.row.branch.length !== 0
? props.row.branch[0].address !== null
? `${props.row.branch[0].address} ${props.row.branch[0].moo} ${props.row.branch[0].soi} ${props.row.branch[0].street} จ.${props.row.branch[0].province.name} อ.${props.row.branch[0].district.name} ต.${props.row.branch[0].subDistrict.name} ${props.row.branch[0].subDistrict.zipCode}`
: '-'
: '-'
locale === 'eng'
? `${props.row.branch[0].addressEN} ${props.row.branch[0].mooEN} ${props.row.branch[0].soiEN} ${props.row.branch[0].streetEN} ${props.row.branch[0].subDistrict.nameEN} ${props.row.branch[0].district.nameEN} ${props.row.branch[0].province.nameEN} ${props.row.branch[0].subDistrict.zipCode}`
: `${props.row.branch[0].address} ${props.row.branch[0].moo} ${props.row.branch[0].soi} ${props.row.branch[0].street} ต.${props.row.branch[0].subDistrict.name} อ.${props.row.branch[0].district.name} จ.${props.row.branch[0].province.name} ${props.row.branch[0].subDistrict.zipCode}`
}}
</q-td>
@ -1532,7 +1530,7 @@ const emptyCreateDialog = ref(false);
props.row.branch[0].jobPosition,
)
: key === 'officeTel'
? props.row.branch[0].officeTel
? props.row.branch[0].officeTel || '-'
: ''
}}
</span>