refactor: handle img employee

This commit is contained in:
Thanaphon Frappet 2025-01-27 10:06:39 +07:00
parent 79240f53b0
commit 79ec995547
6 changed files with 14 additions and 13 deletions

View file

@ -288,8 +288,8 @@ defineEmits<{
: `${props.row.firstName} ${props.row.lastName} `.trim(),
img:
`${baseUrl}/employee/${props.row.id}/image/${props.row.selectedImage}` ||
'/images/employee-avatar.png',
fallbackImg: '/images/employee-avatar.png',
`/images/employee-avatar-${props.row.gender}.png`,
fallbackImg: `/images/employee-avatar-${props.row.gender}.png`,
male: props.row.gender === 'male',
female: props.row.gender === 'female',
detail: [

View file

@ -2414,7 +2414,7 @@ const emptyCreateDialog = ref(false);
refreshImageState ? `?ts=${Date.now()}` : '',
) || null
"
:fallbackImg="'/images/employee-avatar.png'"
:fallbackImg="`/images/employee-avatar-${currentFromDataEmployee.gender === 'male' ? 'male' : 'female'}.png`"
:tabs-list="
[
{
@ -3795,7 +3795,7 @@ const emptyCreateDialog = ref(false);
style="background: #ee4367"
>
<q-img
src="/images/employee-avatar.png"
:src="`/images/employee-avatar-${currentFromDataEmployee.gender === 'male' ? 'male' : 'female'}.png`"
fit="contain"
style="height: 100%"
/>
@ -4318,7 +4318,7 @@ const emptyCreateDialog = ref(false);
refreshImageState ? `?ts=${Date.now()}` : '',
) || null
"
:fallbackImg="'/images/employee-avatar.png'"
:fallbackImg="`/images/employee-avatar-${currentFromDataEmployee.gender === 'male' ? 'male' : 'female'}.png`"
:tabs-list="[
{
name: 'personalInfo',

View file

@ -1544,7 +1544,6 @@ async function formDownload() {
quotationFormData.workerMax || selectedWorker.length
"
:readonly="readonly"
fallback-img="/images/employee-avatar.png"
:rows="selectedWorkerItem"
@delete="(i) => deleteItem(selectedWorker, i)"
/>

View file

@ -220,7 +220,7 @@ function getEmployeeImageUrl(item: Employee) {
return `${API_BASE_URL}/employee/${item.id}/image/${item.selectedImage}`;
}
// NOTE: static image
return '/images/employee-avatar.png';
return `/images/employee-avatar-${item.gender}.png`;
}
async function getWorkerList() {
@ -374,7 +374,7 @@ watch(() => state.search, getWorkerList);
female: emp.gender === 'female',
male: emp.gender === 'male',
img: getEmployeeImageUrl(emp),
fallbackImg: '/images/employee-avatar.png',
fallbackImg: `/images/employee-avatar-${emp.gender}.png`,
detail: [
{
icon: 'mdi-passport',

View file

@ -207,7 +207,7 @@ function getEmployeeImageUrl(item: Employee) {
return `${API_BASE_URL}/employee/${item.id}/image/${item.selectedImage}`;
}
// NOTE: static image
return '/images/employee-avatar.png';
return `/images/employee-avatar-${item.gender}.png`;
}
function init() {
@ -400,7 +400,7 @@ watch(() => state.search, getWorkerList);
: `${emp.firstName} ${emp.lastName}`,
female: emp.gender === 'female',
male: emp.gender === 'male',
img: '/images/employee-avatar.png',
img: `/images/employee-avatar-${emp.gender}.png`,
index: index,
detail: [
{
@ -486,7 +486,7 @@ watch(() => state.search, getWorkerList);
female: emp.gender === 'female',
male: emp.gender === 'male',
img: getEmployeeImageUrl(emp),
fallbackImg: '/images/employee-avatar.png',
fallbackImg: `/images/employee-avatar-${emp.gender}.png`,
detail: [
{
icon: 'mdi-passport',
@ -567,7 +567,10 @@ watch(() => state.search, getWorkerList);
v-model:current-tab="employeeFormState.currentTab"
v-model:toggle-status="currentFromDataEmployee.status"
fallbackCover="/images/employee-banner.png"
:img="employeeFormState.profileUrl || `/images/employee-avatar.png`"
:img="
employeeFormState.profileUrl ||
`/images/employee-avatar-${currentFromDataEmployee.gender}.png`
"
:toggleTitle="$t('status.title')"
hideFade
@view="

View file

@ -67,7 +67,6 @@ const toggleWorker = defineModel<boolean>('toggleWorker');
@update:employee-amount="(v) => $emit('update:employeeAmount', v)"
:employee-amount
:readonly="readonly"
fallback-img="/images/employee-avatar.png"
:rows="rowWorker"
@delete="(i) => $emit('delete', i)"
/>