优化
This commit is contained in:
@@ -1,15 +1,26 @@
|
||||
<script setup lang="ts">
|
||||
import type { SmartLoadingCandidate } from '../types'
|
||||
import { computed } from 'vue'
|
||||
import type { SmartLoadingCandidate, SmartLoadingCandidateGroupMember } from '../types'
|
||||
|
||||
defineProps<{ candidate: SmartLoadingCandidate }>()
|
||||
const props = defineProps<{
|
||||
candidate?: SmartLoadingCandidate
|
||||
members?: SmartLoadingCandidateGroupMember[]
|
||||
sealedPallet?: boolean
|
||||
fallbackInboundCode?: string | null
|
||||
}>()
|
||||
const displayedMembers = computed(() => props.members || props.candidate?.groupMembers || [])
|
||||
const isSealedPallet = computed(() => props.candidate
|
||||
? props.candidate.unitType === 'SEALED_PALLET'
|
||||
: props.sealedPallet === true)
|
||||
const inboundCode = computed(() => props.fallbackInboundCode ?? props.candidate?.inboundCode)
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<details v-if="candidate.unitType === 'SEALED_PALLET' && candidate.groupMembers.length">
|
||||
<summary>{{ candidate.groupMembers.length }} 个入仓码 · 展开</summary>
|
||||
<div v-for="member in candidate.groupMembers" :key="`${member.accountId}:${member.inboundId}`">
|
||||
<details v-if="isSealedPallet && displayedMembers.length">
|
||||
<summary>{{ displayedMembers.length }} 个入仓码 · 展开</summary>
|
||||
<div v-for="member in displayedMembers" :key="`${member.accountId}:${member.inboundId}`">
|
||||
{{ member.inboundCode || '—' }}:{{ member.availablePackageCount }} 箱
|
||||
</div>
|
||||
</details>
|
||||
<span v-else>{{ candidate.inboundCode || '—' }}</span>
|
||||
<span v-else>{{ inboundCode || '—' }}</span>
|
||||
</template>
|
||||
|
||||
Reference in New Issue
Block a user