oa_app仓库初始化
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<fy-header title="发起申请" back />
|
||||
<view v-if="!canApply" class="deny">当前账号没有发起申请权限</view>
|
||||
<view v-else>
|
||||
<view class="search">
|
||||
<input v-model="q" placeholder="搜索审批流程或申请事项..." />
|
||||
</view>
|
||||
<view v-for="g in groups" :key="g.category" class="block">
|
||||
<text class="cat">{{ g.category }}</text>
|
||||
<view class="card">
|
||||
<view v-for="k in g.items" :key="k.kind" class="item" @click="open(k)">
|
||||
<view>
|
||||
<text class="t">{{ k.title }}</text>
|
||||
<text class="d">{{ k.hint }}</text>
|
||||
</view>
|
||||
<text class="arr">›</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FyHeader from '../../components/fy-header.vue'
|
||||
import { store } from '../../utils/store.js'
|
||||
import { groupedApplyKinds, visibleApplyKinds } from '../../utils/apply.js'
|
||||
|
||||
export default {
|
||||
components: { FyHeader },
|
||||
data() { return { q: '' } },
|
||||
computed: {
|
||||
canApply() { return store.can('personal', 'apply') },
|
||||
groups() {
|
||||
const me = store.me || {}
|
||||
let kinds = visibleApplyKinds({
|
||||
employeeStatus: me.employeeStatus,
|
||||
isSuper: me.isSuper,
|
||||
role: me.title
|
||||
})
|
||||
if (this.q.trim()) {
|
||||
const q = this.q.trim()
|
||||
kinds = kinds.filter((k) => (k.title + k.hint + k.group).includes(q))
|
||||
}
|
||||
return groupedApplyKinds(kinds)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
open(k) {
|
||||
uni.navigateTo({ url: '/pages/apply/form?kind=' + k.kind })
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.search { padding: 16rpx 24rpx; }
|
||||
.search input { height: 80rpx; background: #f2f3ff; border-radius: 16rpx; padding: 0 24rpx; }
|
||||
.block { margin: 8rpx 24rpx 24rpx; }
|
||||
.cat { font-size: 22rpx; color: #434655; font-weight: 600; }
|
||||
.item { display: flex; justify-content: space-between; align-items: center; padding: 24rpx; border-bottom: 1rpx solid #eaedff; }
|
||||
.t { display: block; font-size: 28rpx; font-weight: 600; }
|
||||
.d { font-size: 22rpx; color: #737686; }
|
||||
.arr { color: #c3c6d7; }
|
||||
.deny { padding: 80rpx; text-align: center; color: #737686; }
|
||||
</style>
|
||||
Reference in New Issue
Block a user