Merge refactor/i18n into develop

This commit is contained in:
Methapon Metanipat 2024-08-26 16:24:08 +07:00
parent 3da5bf9079
commit c681b19e39
99 changed files with 2192 additions and 2987 deletions

View file

@ -158,7 +158,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
name="mdi-hospital-box-outline"
style="background-color: var(--surface-3)"
/>
{{ $t(`formDialogTitleHealthCheck`) }}
{{ $t(`customerEmployee.formHealthCheck.title`) }}
<AddButton
v-if="!readonly"
id="btn-add-bank"
@ -184,7 +184,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
spaced="lg"
/>
<span class="col-12 flex justify-between items-center">
{{ $t('customer.form.instance', { index: index + 1 }) }}
{{ $t('general.times', { number: index + 1 }) }}
<div class="row items-center">
<UndoButton
v-if="!readonly && !!checkup.id && !checkup.statusSave"
@ -228,7 +228,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
:readonly="readonly || checkup.statusSave"
hide-bottom-space
class="col-5"
:label="$t('formDialogInputCheckupRes')"
:label="$t('customerEmployee.formHealthCheck.result')"
v-model="checkup.checkupResult"
/>
<q-select
@ -251,13 +251,13 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
:options="checkupTypeOptions"
:hide-dropdown-icon="readonly || checkup.statusSave"
:for="`${prefixId}-select-checkup-type`"
:label="$t('formDialogInputCheckupType')"
:label="$t('customerEmployee.formHealthCheck.checkupType')"
@filter="checkupTypeFilter"
>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
@ -279,7 +279,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
v-model="checkup.provinceId"
:dense="dense"
:readonly="readonly || checkup.statusSave"
:label="$t('province')"
:label="$t('form.province')"
:hide-dropdown-icon="readonly || checkup.statusSave"
:for="`${prefixId}-select-province`"
:options="provinceOptions"
@ -288,7 +288,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
@ -301,7 +301,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
:readonly="readonly || checkup.statusSave"
hide-bottom-space
class="col-5"
:label="$t('formDialogInputHospital')"
:label="$t('customerEmployee.formHealthCheck.hospital')"
v-model="checkup.hospitalName"
:for="`${prefixId}-input-hospital`"
/>
@ -325,20 +325,20 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
:hide-dropdown-icon="readonly || checkup.statusSave"
:options="medicalBenefitOptions"
:for="`${prefixId}-select-province`"
:label="$t('formDialogInputMedicalBenefit')"
:label="$t('customerEmployee.formHealthCheck.medicalBenefit')"
@filter="medicalBenefitFilter"
>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
</q-select>
<q-input
lazy-rules="ondemand"
:label="$t('formDialogInputRemark')"
:label="$t('general.remark')"
:dense="dense"
outlined
:readonly="readonly || checkup.statusSave"
@ -349,7 +349,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
:for="`${prefixId}-input-remark`"
/>
<DatePicker
:label="$t('formDialogInputCoverageStartDate')"
:label="$t('customerEmployee.formHealthCheck.coverageStartDate')"
v-model="checkup.coverageStartDate"
class="col"
:id="`${prefixId}-input-coverage-start-date`"
@ -357,7 +357,7 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
clearable
/>
<DatePicker
:label="$t('formDialogInputCoverageExpiretDate')"
:label="$t('customerEmployee.formHealthCheck.coverageExpireDate')"
v-model="checkup.coverageExpireDate"
class="col"
:id="`${prefixId}-input-coverage-expire-date`"
@ -385,13 +385,13 @@ const insuranceCompanyFilter = selectFilterOptionRefMod(
:hide-dropdown-icon="readonly || checkup.statusSave"
:options="insuranceCompanyOptions"
:for="`${prefixId}-select-province`"
:label="$t('formDialogInputInsuranceCompany')"
:label="$t('customerEmployee.formHealthCheck.insuranceCompany')"
@filter="insuranceCompanyFilter"
>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>

View file

@ -30,8 +30,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
name="mdi-human-male-female-child"
style="background-color: var(--surface-3)"
/>
{{ $t('formDialogTitleFamilyHistory') }}
{{ $t('customerEmployee.form.group.family') }}
<div class="row q-ml-auto">
<UndoButton
v-if="!readonly && !!employeeOther.id && !employeeOther.statusSave"
@ -73,14 +72,14 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
outlined
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
:label="$t('formDialogInputCitizenId')"
:label="$t('customerEmployee.formFamily.citizenId')"
class="col"
v-model="employeeOther.citizenId"
/>
</div>
<div class="col-12 app-text-muted-2">
<q-icon size="xs" class="q-mr-xs" name="mdi-human-male" />
{{ $t('formDialogTitleFamilyHistoryDad') }}
{{ $t('customerEmployee.formFamily.father') }}
</div>
<div class="col-12 row q-col-gutter-sm">
<q-input
@ -91,7 +90,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputFirstName')"
:label="$t('form.firstName')"
v-model="employeeOther.fatherFirstName"
/>
<q-input
@ -102,7 +101,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputLastName')"
:label="$t('form.lastName')"
v-model="employeeOther.fatherLastName"
/>
<q-input
@ -113,7 +112,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputFirstNameEN')"
:label="$t('form.firstNameEN')"
v-model="employeeOther.fatherFirstNameEN"
/>
<q-input
@ -124,7 +123,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputLastNameEN')"
:label="$t('form.lastNameEN')"
v-model="employeeOther.fatherLastNameEN"
/>
<q-input
@ -135,14 +134,14 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-6"
:label="$t('formDialogInputFamilyBirthPlace')"
:label="$t('customerEmployee.formFamily.fatherBirthPlace')"
v-model="employeeOther.fatherBirthPlace"
/>
</div>
<div class="col-12 app-text-muted-2">
<q-icon size="xs" class="q-mr-xs" name="mdi-human-female" />
{{ $t('formDialogTitleFamilyHistoryMom') }}
{{ $t('customerEmployee.formFamily.mother') }}
</div>
<div class="col-12 row q-col-gutter-sm">
<q-input
@ -153,7 +152,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputFirstName')"
:label="$t('form.firstName')"
v-model="employeeOther.motherFirstName"
/>
<q-input
@ -164,7 +163,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputLastName')"
:label="$t('form.lastName')"
v-model="employeeOther.motherLastName"
/>
<q-input
@ -175,7 +174,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputFirstNameEN')"
:label="$t('form.firstNameEN')"
v-model="employeeOther.motherFirstNameEN"
/>
<q-input
@ -186,7 +185,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputLastNameEN')"
:label="$t('form.lastNameEN')"
v-model="employeeOther.motherLastNameEN"
/>
<q-input
@ -197,7 +196,7 @@ const employeeOther = defineModel<EmployeeOtherCreate>('employeeOther');
:readonly="readonly || employeeOther.statusSave"
hide-bottom-space
class="col-6"
:label="$t('formDialogInputFamilyBirthPlace')"
:label="$t('customerEmployee.formFamily.motherBirthPlace')"
v-model="employeeOther.motherBirthPlace"
/>
</div>

View file

@ -115,7 +115,7 @@ watch(
:hide-dropdown-icon="readonly"
:options="passportTypeOptions"
:for="`${prefixId}-select-passport-type`"
:label="$t('formDialogInputPassportType')"
:label="$t('customerEmployee.form.passportType')"
:rules="[
(val: string) =>
!!val || $t('selectValidate') + $t('formDialogInputPassportType'),
@ -125,7 +125,7 @@ watch(
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
@ -138,7 +138,7 @@ watch(
:readonly="readonly"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputPassportNo')"
:label="$t('customerEmployee.form.passportNo')"
v-model="passportNumber"
:rules="[
(val: string) =>
@ -153,7 +153,7 @@ watch(
:readonly="readonly"
hide-bottom-space
class="col-6"
:label="$t('formDialogInputPassportRef')"
:label="$t('customerEmployee.form.passportRef')"
:model-value="
readonly
? previousPassportReference || '-'
@ -171,7 +171,7 @@ watch(
:readonly="readonly"
hide-bottom-space
class="col-md-3 col-6"
:label="$t('formDialogInputWPassportPlace')"
:label="$t('customerEmployee.form.passportPlace')"
v-model="passportIssuingPlace"
:rules="[
(val: string) =>
@ -198,7 +198,7 @@ watch(
:hide-dropdown-icon="readonly"
:options="passportIssuingCountryOptions"
:for="`${prefixId}-select-passport-country`"
:label="$t('formDialogInputPassportCountry')"
:label="$t('customerEmployee.form.passportIssuer')"
:rules="[
(val: string) =>
!!val ||
@ -209,14 +209,14 @@ watch(
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
</q-select>
<DatePicker
:id="`${prefixId}-date-picker-passport-issueance`"
:label="$t('formDialogInputPassportIssuance')"
:label="$t('customerEmployee.form.passportIssueDate')"
v-model="passportIssueDate"
class="col-md-3 col-6"
:readonly="readonly"
@ -228,7 +228,7 @@ watch(
/>
<DatePicker
:id="`${prefixId}-date-picker-passport-expire`"
:label="$t('formDialogInputPassportExpire')"
:label="$t('customerEmployee.form.passportExpireDate')"
v-model="passportExpiryDate"
class="col-md-3 col-6"
:readonly="readonly"

View file

@ -117,7 +117,7 @@ watch(
:options="visaTypeOptions"
:hide-dropdown-icon="readonly"
:for="`${prefixId}-select-visa-type`"
:label="$t('formDialogInputVisaType')"
:label="$t('customerEmployee.form.visaType')"
@filter="visaTypeFilter"
:model-value="readonly ? visaType || '-' : visaType"
@update:model-value="
@ -128,7 +128,7 @@ watch(
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
@ -145,7 +145,7 @@ watch(
:readonly="readonly"
hide-bottom-space
class="col-4"
:label="$t('formDialogInputVisaNo')"
:label="$t('customerEmployee.form.visaNo')"
:model-value="readonly ? visaNumber || '-' : visaNumber"
@update:model-value="
(v) => (typeof v === 'string' ? (visaNumber = v) : '')
@ -159,7 +159,7 @@ watch(
class="col-2"
:id="`${prefixId}-date-picker-visa-issuance`"
:readonly="readonly"
:label="$t('formDialogInputVisaIssuance')"
:label="$t('customerEmployee.form.visaIssuance')"
v-model="visaIssueDate"
clearable
/>
@ -167,7 +167,7 @@ watch(
class="col-2"
:id="`${prefixId}-date-picker-visa-expire`"
:readonly="readonly"
:label="$t('formDialogInputVisaExpire')"
:label="$t('customerEmployee.form.visaExpire')"
v-model="visaExpiryDate"
clearable
/>
@ -180,7 +180,7 @@ watch(
:readonly="readonly"
hide-bottom-space
class="col-5"
:label="$t('formDialogInputVisaPlace')"
:label="$t('customerEmployee.form.visaPlace')"
:model-value="readonly ? visaIssuingPlace || '-' : visaIssuingPlace"
@update:model-value="
(v) => (typeof v === 'string' ? (visaIssuingPlace = v) : '')
@ -194,7 +194,7 @@ watch(
class="col-4"
:id="`${prefixId}-date-picker-visa-until`"
:readonly="readonly"
:label="$t('formDialogInputVisaStayUntil')"
:label="$t('customerEmployee.form.visaStayUntil')"
v-model="visaStayUntilDate"
clearable
/>
@ -207,7 +207,7 @@ watch(
:readonly="readonly"
hide-bottom-space
class="col-5"
:label="$t('formDialogInputVisaTM6')"
:label="$t('customerEmployee.form.visaTM6')"
:model-value="readonly ? tm6Number || '-' : tm6Number"
@update:model-value="
(v) => (typeof v === 'string' ? (tm6Number = v) : '')
@ -222,7 +222,7 @@ watch(
class="col-4"
:id="`${prefixId}-date-picker-visa-enter`"
:readonly="readonly"
:label="$t('formDialogInputVisaEnter')"
:label="$t('customerEmployee.form.visaEnter')"
v-model="entryDate"
clearable
/>

View file

@ -114,7 +114,7 @@ const workplaceFilter = selectFilterOptionRefMod(
name="mdi-briefcase-outline"
style="background-color: var(--surface-3)"
/>
{{ $t(`workHistory`) }}
{{ $t(`customerEmployee.formWorkHistory.title`) }}
<AddButton
v-if="!readonly"
id="btn-add-bank"
@ -140,7 +140,7 @@ const workplaceFilter = selectFilterOptionRefMod(
spaced="lg"
/>
<span class="col-12 flex justify-between items-center">
{{ $t('customer.form.instance', { index: index + 1 }) }}
{{ $t('general.times', { number: index + 1 }) }}
<div class="row items-center">
<UndoButton
@ -196,13 +196,13 @@ const workplaceFilter = selectFilterOptionRefMod(
:options="jobTypeOptions"
:hide-dropdown-icon="readonly"
:for="`${prefixId}-select-job-type`"
:label="$t('formDialogInputJobType')"
:label="$t('customerEmployee.formWorkHistory.jobType')"
@filter="jobTypeFilter"
>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
@ -227,13 +227,13 @@ const workplaceFilter = selectFilterOptionRefMod(
:options="workplaceOptions"
:hide-dropdown-icon="readonly"
:for="`${prefixId}-select-province`"
:label="$t('formDialogInputWorkPlace')"
:label="$t('customerEmployee.formWorkHistory.workplace')"
@filter="workplaceFilter"
>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>
@ -241,7 +241,7 @@ const workplaceFilter = selectFilterOptionRefMod(
<q-input
lazy-rules="ondemand"
:for="`${prefixId}-input-work-end-date`"
:label="$t('formDialogInputRemark')"
:label="$t('general.remark')"
:dense="dense"
outlined
:readonly="readonly || work.statusSave"
@ -251,7 +251,7 @@ const workplaceFilter = selectFilterOptionRefMod(
type="textarea"
/>
<DatePicker
:label="$t('formDialogInputWorkUntil')"
:label="$t('customerEmployee.formWorkHistory.workUntil')"
v-model="work.workEndDate"
class="col-3"
:id="`${prefixId}-input-work-until-date`"
@ -267,11 +267,11 @@ const workplaceFilter = selectFilterOptionRefMod(
:readonly="readonly || work.statusSave"
hide-bottom-space
class="col-6"
:label="$t('formDialogInputWorkPermitNo')"
:label="$t('customerEmployee.formWorkHistory.permitNo')"
v-model="work.workPermitNo"
/>
<DatePicker
:label="$t('formDialogInputWorkPermitIssueDate')"
:label="$t('customerEmployee.formWorkHistory.permitIssueDate')"
v-model="work.workPermitIssuDate"
class="col-3"
:id="`${prefixId}-date-picker-work-permit-issue-date`"
@ -279,7 +279,7 @@ const workplaceFilter = selectFilterOptionRefMod(
clearable
/>
<DatePicker
:label="$t('formDialogInputWorkPermitExpireDate')"
:label="$t('customerEmployee.formWorkHistory.permitExpireDate')"
v-model="work.workPermitExpireDate"
class="col-3"
:id="`${prefixId}-date-picker-work-permit-expire-date`"
@ -295,7 +295,7 @@ const workplaceFilter = selectFilterOptionRefMod(
:readonly="readonly || work.statusSave"
hide-bottom-space
class="col-5"
:label="$t('formDialogInputOwnerName')"
:label="$t('customerEmployee.formWorkHistory.employerName')"
v-model="work.ownerName"
/>
<q-select
@ -318,13 +318,13 @@ const workplaceFilter = selectFilterOptionRefMod(
:options="positionNameOptions"
:hide-dropdown-icon="readonly || work.statusSave"
:for="`${prefixId}-select-position-name`"
:label="$t('formDialogInputJobPosition')"
:label="$t('customerEmployee.formWorkHistory.jobPosition')"
@filter="positionNameFilter"
>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
{{ $t('noResults') }}
{{ $t('general.noData') }}
</q-item-section>
</q-item>
</template>

View file

@ -67,35 +67,35 @@ const fieldName = [
{
name: 'nrcNo',
title: 'formDialogTitleInformation',
i18n: 'formDialogEmployeeNRCNo',
i18n: 'customerEmployee.form.nrcNo',
},
{
name: 'firstName',
title: 'personalInfo',
i18n: 'formDialogInputFirstName',
i18n: 'form.firstName',
},
{
name: 'firstNameEN',
title: 'personalInfo',
i18n: 'formDialogInputFirstNameEN',
i18n: 'form.firstNameEN',
},
{ name: 'lastName', title: 'personalInfo', i18n: 'formDialogInputLastName' },
{
name: 'lastNameEN',
title: 'personalInfo',
i18n: 'formDialogInputLastNameEN',
i18n: 'form.lastNameEN',
},
{
name: 'dateOfBirth',
title: 'personalInfo',
i18n: 'formDialogInputBirthDate',
i18n: 'form.birthDate',
},
{ name: 'gender', title: 'personalInfo', i18n: 'formDialogInputGender' },
{
name: 'nationality',
title: 'personalInfo',
i18n: 'formDialogInputNationality',
i18n: 'general.nationality',
},
{
@ -339,14 +339,14 @@ watch(
autoApply
:teleport="true"
v-model="currentDate"
:locale="$i18n.locale === 'th-th' ? 'th' : 'en'"
:locale="$i18n.locale === 'tha' ? 'th' : 'en'"
:enableTimePicker="false"
>
<template #year="{ value }">
{{ $i18n.locale === 'th-th' ? value + 543 : value }}
{{ $i18n.locale === 'tha' ? value + 543 : value }}
</template>
<template #year-overlay-value="{ value }">
{{ $i18n.locale === 'th-th' ? value + 543 : value }}
{{ $i18n.locale === 'tha' ? value + 543 : value }}
</template>
<template #trigger>
<span class="text-weight-medium q-px-xl">
@ -394,7 +394,7 @@ watch(
<div class="column q-pl-md items-start">
<span class="text-weight-bold">
{{
$i18n.locale === 'en-US'
$i18n.locale === 'eng'
? `${props.row.updatedBy.firstNameEN} ${props.row.updatedBy.lastNameEN}`
: (`${props.row.updatedBy.firstName} ${props.row.updatedBy.lastName}` ??
'-')

View file

@ -20,7 +20,7 @@ const prop = withDefaults(
fieldSelected: () => [
'orderNumber',
'firstName',
'formDialogInputAge',
'general.age',
'formDialogInputNationality',
'formDialogInputPassportNo',
'passportExpiryDate',
@ -167,7 +167,7 @@ const prop = withDefaults(
</div>
</q-td>
<q-td v-if="fieldSelected.includes('formDialogInputAge')">
<q-td v-if="fieldSelected.includes('general.age')">
{{ calculateAge(props.row.dateOfBirth) || '-' }}
</q-td>
@ -195,9 +195,9 @@ const prop = withDefaults(
</div>
<div class="col app-text-muted">
{{
$i18n.locale === 'en-US'
? `${props.row.customerBranch.nameEN}`
: `${props.row.customerBranch.name}`
$i18n.locale === 'eng'
? `${props.row.customerBranch.registerNameEN}`
: `${props.row.customerBranch.registerName}`
}}
</div>
</div>
@ -242,7 +242,7 @@ const prop = withDefaults(
style="color: hsl(var(--green-6-hsl))"
/>
<span class="col-9 q-px-md flex items-center">
{{ $t('viewDetail') }}
{{ $t('general.viewDetail') }}
</span>
</q-item>
@ -261,7 +261,7 @@ const prop = withDefaults(
style="color: hsl(var(--cyan-6-hsl))"
/>
<span class="col-9 q-px-md flex items-center">
{{ $t('edit') }}
{{ $t('general.edit') }}
</span>
</q-item>
<q-item
@ -285,7 +285,7 @@ const prop = withDefaults(
}"
/>
<span class="col-9 q-px-md flex items-center">
{{ $t('delete') }}
{{ $t('general.delete') }}
</span>
</q-item>
@ -325,7 +325,7 @@ const prop = withDefaults(
:data="{
code: props.row.code,
name:
$i18n.locale === 'en-US'
$i18n.locale === 'eng'
? `${props.row.firstNameEN} ${props.row.lastNameEN} `.trim()
: `${props.row.firstName} ${props.row.lastName} `.trim(),
img: props.row.profileImageUrl || '/images/employee-avatar.png',
@ -348,7 +348,7 @@ const prop = withDefaults(
:tag="[
{
color: 'pink',
value: $t('EMPLOYEE'),
value: $t('customer.employee'),
},
]"
:disabled="props.row.status === 'INACTIVE'"

View file

@ -135,7 +135,7 @@ onMounted(() => {
:readonly="readonly"
hide-bottom-space
class="col-12"
:label="$t('formDialogEmployerBranchCode')"
:label="$t('customer.form.branchCode')"
v-model="customerBranch"
:option-value="
(v) => ({
@ -154,7 +154,10 @@ onMounted(() => {
@filter="(val, update) => $emit('filterOwnerBranch', val, update)"
:rules="[
(val: string) =>
!!val || $t('selectValidate') + $t('formDialogEmployerBranchCode'),
!!val ||
$t('form.error.selectField', {
field: $t('customer.form.employerBranch'),
}),
]"
>
<template v-slot:option="scope">
@ -168,58 +171,57 @@ onMounted(() => {
</div>
<div class="q-mt-sm">
<div>
{{ scope.opt.code }} {{ $t('branchName') }}:
{{
$i18n.locale === 'en-US' ? scope.opt.nameEN : scope.opt.name
}}
{{ scope.opt.code }} {{ $t('general.name') }}:
<template v-if="scope.opt.customer.customerType === 'CORP'">
{{
$i18n.locale === 'eng'
? scope.opt.registerName
: scope.opt.registerNameEN
}}
</template>
<template v-else>
{{
$i18n.locale === 'eng'
? scope.opt.customer.firstNameEN ||
'-' + ' ' + scope.opt.customer.lastNameEN ||
''
: scope.opt.customer.firstName ||
'-' + ' ' + scope.opt.customer.lastName ||
''
}}
</template>
</div>
<div class="text-caption app-text-muted-2 q-mb-xs">
<div v-if="scope.opt.customer" class="col column">
<span>
{{ $t('customerBranchName') }}:
{{ $t('customerEmployee.form.employerSelect.branchName') }}:
{{
$i18n.locale === 'en-US'
? scope.opt.customer.customerNameEN
: scope.opt.customer.customerName
$i18n.locale === 'eng'
? scope.opt.registerNameEN
: scope.opt.registerName
}}
</span>
<span>
{{ $t('customerEmployee.form.employerSelect.branchName') }}:
{{
scope.opt.customer.customerType === 'PERS'
? $t('formDialogCustomerName')
: $t('companyOwnerName')
}}:
{{
$i18n.locale === 'en-US'
? scope.opt.customer.personName
: scope.opt.customer.personName
$i18n.locale === 'eng'
? scope.opt.customer.firstNameEN ||
'-' + ' ' + scope.opt.customer.lastNameEN
: scope.opt.customer.firstName ||
'-' + ' ' + scope.opt.customer.lastName
}}
</span>
</div>
<div v-if="scope.opt.province" class="col">
{{ $t('address') }}
{{ $t('general.address') }}
{{
$i18n.locale === 'en-US'
? scope.opt.addressEN
: scope.opt.address
$i18n.locale === 'eng'
? `${scope.opt.addressEN || ''} ${scope.opt.subDistrict.nameEN || ''} ${scope.opt.district.nameEN || ''} ${scope.opt.province.nameEN || ''}`
: `${scope.opt.address || ''} ${scope.opt.subDistrict.name || ''} ${scope.opt.district.name || ''} ${scope.opt.province.name || ''}`
}}
{{
$i18n.locale === 'en-US'
? scope.opt.subDistrict.nameEN
: scope.opt.subDistrict.name
}}
{{
$i18n.locale === 'en-US'
? scope.opt.district.nameEN
: scope.opt.district.name
}}
{{
$i18n.locale === 'en-US'
? scope.opt.province.nameEN
: scope.opt.province.name
}}
{{ scope.opt.zipCode }}
{{ scope.opt.subDistrict?.zipCode || '' }}
</div>
</div>
</div>
@ -235,90 +237,50 @@ onMounted(() => {
>
<div class="q-mr-sm">
{{ scope.opt.code }}
{{ $t('branchName') }}:
{{ $i18n.locale === 'en-US' ? scope.opt.nameEN : scope.opt.name }}
{{ $t('customerEmployee.form.employerSelect.branchName') }}:
{{
$i18n.locale === 'eng'
? scope.opt.registerNameEN
: scope.opt.registerName
}}
</div>
<div
class="text-caption app-text-muted-2"
v-if="scope.opt.customer && scope.opt.province"
>
{{ $t('customerBranchName') }}:
{{ $t('customerEmployee.form.employerSelect.branchName') }}:
{{
$i18n.locale === 'en-US'
? scope.opt.customer.customerNameEN
: scope.opt.customer.customerName
$i18n.locale === 'eng'
? scope.opt.customer.firstNameEN ||
'-' + ' ' + scope.opt.customer.lastNameEN
: scope.opt.customer.firstName ||
'-' + ' ' + scope.opt.customer.lastName
}}
{{ $t('general.address') }}
{{
scope.opt.customer.customerType === 'PERS'
? $t('formDialogCustomerName')
: $t('companyOwnerName')
}}:
{{
$i18n.locale === 'en-US'
? scope.opt.customer.personName
: scope.opt.customer.personName
$i18n.locale === 'eng'
? `${scope.opt.addressEN || ''} ${scope.opt.subDistrict.nameEN || ''} ${scope.opt.district.nameEN || ''} ${scope.opt.province.nameEN || ''}`
: `${scope.opt.address || ''} ${scope.opt.subDistrict.name || ''} ${scope.opt.district.name || ''} ${scope.opt.province.name || ''}`
}}
{{ $t('address') }}
{{
$i18n.locale === 'en-US'
? scope.opt.addressEN
: scope.opt.address
}}
{{
$i18n.locale === 'en-US'
? scope.opt.subDistrict.nameEN
: scope.opt.subDistrict.name
}}
{{
$i18n.locale === 'en-US'
? scope.opt.district.nameEN
: scope.opt.district.name
}}
{{
$i18n.locale === 'en-US'
? scope.opt.province.nameEN
: scope.opt.province.name
}}
{{ scope.opt.zipCode }}
{{ scope.opt.subDistrict?.zipCode || '' }}
<q-tooltip v-if="scope.opt.customer && scope.opt.province">
{{ $t('customerBranchName') }}:
{{ $t('customerEmployee.form.employerSelect.branchName') }}:
{{
$i18n.locale === 'en-US'
? scope.opt.customer.customerNameEN
: scope.opt.customer.customerName
}}
{{
scope.opt.customer.customerType === 'PERS'
? $t('formDialogCustomerName')
: $t('companyOwnerName')
}}:
{{
$i18n.locale === 'en-US'
? scope.opt.customer.personName
: scope.opt.customer.personName
$i18n.locale === 'eng'
? scope.opt.customer.firstNameEN ||
'-' + ' ' + scope.opt.customer.lastNameEN
: scope.opt.customer.firstName ||
'-' + ' ' + scope.opt.customer.lastName
}}
{{ $t('address') }}
{{
$i18n.locale === 'en-US'
? scope.opt.addressEN
: scope.opt.address
$i18n.locale === 'eng'
? `${scope.opt.addressEN || ''} ${scope.opt.subDistrict.nameEN || ''} ${scope.opt.district.nameEN || ''} ${scope.opt.province.nameEN || ''}`
: `${scope.opt.address || ''} ${scope.opt.subDistrict.name || ''} ${scope.opt.district.name || ''} ${scope.opt.province.name || ''}`
}}
{{
$i18n.locale === 'en-US'
? scope.opt.subDistrict.nameEN
: scope.opt.subDistrict.name
}}
{{
$i18n.locale === 'en-US'
? scope.opt.district.nameEN
: scope.opt.district.name
}}
{{
$i18n.locale === 'en-US'
? scope.opt.province.nameEN
: scope.opt.province.name
}}
{{ scope.opt.zipCode }}
{{ scope.opt.zipCode || '' }}
</q-tooltip>
</div>
</div>
@ -343,7 +305,7 @@ onMounted(() => {
:readonly="readonly"
:disable="!readonly"
class="col-3"
:label="$t('formDialogEmployeeID')"
:label="$t('customerEmployee.form.employeeCode')"
v-model="code"
/>
@ -356,7 +318,7 @@ onMounted(() => {
hide-bottom-space
:readonly="readonly"
class="col-6"
:label="$t('formDialogEmployeeNRCNo')"
:label="$t('customerEmployee.form.nrcNo')"
:model-value="readonly ? nrcNo || '-' : nrcNo"
@update:model-value="(v) => (typeof v === 'string' ? (nrcNo = v) : '')"
/>