Filtering tasks and assigning a person in charge during Excel import
This commit is contained in:
@@ -98,6 +98,22 @@ function moodLabel(mood: PersonMood) {
|
||||
return PERSON_MOOD_LABELS[mood];
|
||||
}
|
||||
|
||||
/** کد شخص در نرمافزار مبدأ (دیدار و مشابه) */
|
||||
function externalCode(person: PersonDto): string {
|
||||
const fields = person.customFields ?? {};
|
||||
for (const key of ['didarId', 'customerCode'] as const) {
|
||||
const raw = fields[key];
|
||||
if (typeof raw === 'string' && raw.trim()) return raw.trim();
|
||||
if (typeof raw === 'number' && Number.isFinite(raw)) return String(raw);
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
function externalCodeLabel(person: PersonDto): string {
|
||||
const code = externalCode(person);
|
||||
return code ? toFaDigits(code) : '—';
|
||||
}
|
||||
|
||||
function formatDate(value: string) {
|
||||
try {
|
||||
return formatJalaliNumeric(new Date(value));
|
||||
@@ -430,6 +446,9 @@ onMounted(load);
|
||||
<p class="role">
|
||||
{{ [p.position, p.company?.name].filter(Boolean).join(' • ') || 'بدون سمت' }}
|
||||
</p>
|
||||
<p v-if="externalCode(p)" class="line">
|
||||
<span>کد مبدأ: {{ externalCodeLabel(p) }}</span>
|
||||
</p>
|
||||
<p v-if="p.mobile || p.phone" class="line" dir="ltr">
|
||||
<UiIcon name="phone" :size="13" />
|
||||
<span>{{ p.mobile || p.phone }}</span>
|
||||
@@ -449,6 +468,7 @@ onMounted(load);
|
||||
<tr>
|
||||
<th>وضعیت</th>
|
||||
<th>نام شخص</th>
|
||||
<th>کد مبدأ</th>
|
||||
<th>سمت</th>
|
||||
<th>شرکت</th>
|
||||
<th>تلفن</th>
|
||||
@@ -471,6 +491,7 @@ onMounted(load);
|
||||
{{ p.fullName }}
|
||||
</RouterLink>
|
||||
</td>
|
||||
<td dir="ltr">{{ externalCodeLabel(p) }}</td>
|
||||
<td>{{ p.position || '—' }}</td>
|
||||
<td>
|
||||
<RouterLink
|
||||
|
||||
Reference in New Issue
Block a user