|
|
|
@ -21,6 +21,21 @@
|
|
|
|
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="detailData?.isEnable" />
|
|
|
|
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="detailData?.isEnable" />
|
|
|
|
</el-descriptions-item>
|
|
|
|
</el-descriptions-item>
|
|
|
|
<el-descriptions-item label="备注">{{ detailData?.remark ?? '' }}</el-descriptions-item>
|
|
|
|
<el-descriptions-item label="备注">{{ detailData?.remark ?? '' }}</el-descriptions-item>
|
|
|
|
|
|
|
|
<el-descriptions-item v-if="detailData?.qrcodeUrl" label="" :span="3">
|
|
|
|
|
|
|
|
<div class="mold-qrcode">
|
|
|
|
|
|
|
|
<el-image
|
|
|
|
|
|
|
|
:src="detailData.qrcodeUrl"
|
|
|
|
|
|
|
|
:preview-src-list="[detailData.qrcodeUrl]"
|
|
|
|
|
|
|
|
preview-teleported
|
|
|
|
|
|
|
|
fit="cover"
|
|
|
|
|
|
|
|
class="mold-qrcode-img"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
<template #error>
|
|
|
|
|
|
|
|
<div class="mold-qrcode-error">二维码加载失败</div>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-image>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-descriptions-item>
|
|
|
|
</el-descriptions>
|
|
|
|
</el-descriptions>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="mold-detail-tabs">
|
|
|
|
<div class="mold-detail-tabs">
|
|
|
|
@ -310,6 +325,12 @@ const maintainDateRange = ref<string[] | undefined>(undefined)
|
|
|
|
const repairExportLoading = ref(false)
|
|
|
|
const repairExportLoading = ref(false)
|
|
|
|
const repairDateRange = ref<string[] | undefined>(undefined)
|
|
|
|
const repairDateRange = ref<string[] | undefined>(undefined)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const openQrCode = () => {
|
|
|
|
|
|
|
|
const url = detailData.value?.qrcodeUrl
|
|
|
|
|
|
|
|
if (!url) return
|
|
|
|
|
|
|
|
window.open(String(url), '_blank')
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const formatDetailDate = (value: any) => {
|
|
|
|
const formatDetailDate = (value: any) => {
|
|
|
|
if (!value) return ''
|
|
|
|
if (!value) return ''
|
|
|
|
return formatDate(new Date(value), 'YYYY-MM-DD')
|
|
|
|
return formatDate(new Date(value), 'YYYY-MM-DD')
|
|
|
|
@ -691,6 +712,49 @@ onMounted(async () => {
|
|
|
|
margin-bottom: 16px;
|
|
|
|
margin-bottom: 16px;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.mold-qrcode {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
gap: 12px;
|
|
|
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.mold-qrcode-img {
|
|
|
|
|
|
|
|
width: 150px;
|
|
|
|
|
|
|
|
height: 150px;
|
|
|
|
|
|
|
|
border-radius: 10px;
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
|
|
border: 1px solid var(--el-border-color-lighter);
|
|
|
|
|
|
|
|
background: var(--el-fill-color-blank);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.mold-qrcode-error {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
color: var(--el-text-color-secondary);
|
|
|
|
|
|
|
|
background: var(--el-fill-color);
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.mold-qrcode-meta {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
gap: 4px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.mold-qrcode-title {
|
|
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
color: var(--el-text-color-primary);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.mold-qrcode-sub {
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
color: var(--el-text-color-secondary);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.mold-history-table {
|
|
|
|
.mold-history-table {
|
|
|
|
margin-top: 8px;
|
|
|
|
margin-top: 8px;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|