feat: 历史周报+图片预览+照片管理+导入优化+用户合并
新增: - 历史周报: Dashboard/周报详情支持周选择器翻看往周,归档只读 - 图片预览: 全屏大图(移动端+PC端),点击遮罩关闭 - PC端照片管理: 编辑时可上传/删除照片 - 客户导入改为更新模式: 重名自动更新信息,显示操作明细 - 导入跳过原因: 旧周报导入也显示每条跳过原因 优化: - 填报进度权限: 经理只看到自己,支局长/领导看全员 - 客户经理暖灰色hash标签列 - 用户去重合并(4组),数据完整迁移 - CLAUDE.md 更新到最新状态 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -11,6 +11,8 @@ const todayVisitCount = ref(0)
|
||||
const visits = ref<any[]>([])
|
||||
const todayNoteCount = ref(0)
|
||||
const dailyNotes = ref<any[]>([])
|
||||
const previewImageUrl = ref('')
|
||||
const previewDialogVisible = ref(false)
|
||||
const photoUrls = ref<Record<string, string>>({})
|
||||
const loading = ref(false)
|
||||
|
||||
@@ -52,6 +54,8 @@ async function loadToday() {
|
||||
} finally { loading.value = false }
|
||||
}
|
||||
|
||||
function previewPhoto(url: string) { previewImageUrl.value = url; previewDialogVisible.value = true }
|
||||
|
||||
onMounted(loadToday)
|
||||
</script>
|
||||
|
||||
@@ -174,7 +178,7 @@ onMounted(loadToday)
|
||||
<span class="demand-marker">◆</span> {{ v.customer_demand }}
|
||||
</p>
|
||||
<div v-if="v.photos?.length" class="record-photos">
|
||||
<img v-for="key in v.photos" :key="key" :src="photoUrls[key] || ''" class="record-photo" />
|
||||
<img v-for="key in v.photos" :key="key" :src="photoUrls[key] || ''" class="record-photo" @click.stop="previewPhoto(photoUrls[key])" />
|
||||
</div>
|
||||
<div class="record-footer" v-if="v.time_range">
|
||||
<span class="record-time">{{ v.time_range }}</span>
|
||||
@@ -190,6 +194,13 @@ onMounted(loadToday)
|
||||
<p class="empty-hint">点击上方按钮开始填报</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<teleport to="body">
|
||||
<div v-if="previewDialogVisible" class="image-preview-overlay" @click="previewDialogVisible = false">
|
||||
<img :src="previewImageUrl" class="image-preview-full" @click.stop />
|
||||
<button class="image-preview-close" @click="previewDialogVisible = false">✕</button>
|
||||
</div>
|
||||
</teleport>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user