2025-01-17 14:52:47 +08:00

66 lines
1.8 KiB
Vue

<template>
<scroll-view class="flex-1 box-border" :scroll-y="true">
<view class="mx-4 pt-4 flex flex-items-center text-3.5 font-bold">
<view class="bg-#dfecff flex-1 px-3 py-6 rounded-2">
<view>使用指南</view>
</view>
<view class="w-4"></view>
<view class="bg-#feebda flex-1 px-3 py-6 rounded-2">
<view>常见问题</view>
</view>
</view>
<view class="py-4">
<wd-collapse v-model="collapseRoot" custom-class="!bg-transparent !border-0">
<wd-collapse-item
v-for="group in list"
:key="group.groupId"
:name="group.groupName"
:title="group.groupName"
>
<view
v-for="(item, index) in group.processDefs"
:key="item.processDefId"
:class="[index === group.processDefs.length - 1 ? '' : 'mb-2']"
class="flex flex-items-center bg-white px-3 py-3 mx-1 rounded-2"
@click="toDetail(item)"
>
<image :src="item.icon" class="w-7 h-7 rounded-2"></image>
<view class="text-3.5 ml-2">{{ item.processDefName }}</view>
</view>
</wd-collapse-item>
</wd-collapse>
</view>
</scroll-view>
</template>
<script setup lang="ts">
const collapseRoot = ref<string[]>([])
onMounted(() => {
collapseRoot.value = props.list.map(item => item.groupName)
})
const props = defineProps({
list: {
type: Array,
required: true
}
})
const toDetail = (item: Record<string, any>) => {
uni.navigateTo({
url: `/pages/approval/create-application?id=${item.processDefId}&title=${item.processDefName}`
})
}
</script>
<style lang="scss" scoped>
.wd-collapse-item::after {
height: 0 !important;
}
:deep(.wd-collapse-item__header::after) {
height: 0 !important;
}
</style>