oa_app仓库初始化
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<fy-header title="我的资料" back />
|
||||
<view class="card">
|
||||
<view v-for="r in rows" :key="r.k" class="row">
|
||||
<text class="k">{{ r.k }}</text>
|
||||
<text class="v">{{ r.v }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FyHeader from '../../components/fy-header.vue'
|
||||
import { store } from '../../utils/store.js'
|
||||
import { oaGet } from '../../utils/api.js'
|
||||
|
||||
export default {
|
||||
components: { FyHeader },
|
||||
data() { return { profile: {} } },
|
||||
computed: {
|
||||
rows() {
|
||||
const m = store.me || {}
|
||||
const p = this.profile || {}
|
||||
return [
|
||||
{ k: '姓名', v: p.realName || m.name },
|
||||
{ k: '手机', v: p.phone || m.phone },
|
||||
{ k: '部门', v: p.dept || m.department },
|
||||
{ k: '职务', v: p.role || m.title },
|
||||
{ k: '工号', v: p.jobNo || m.jobId || '-' },
|
||||
{ k: '状态', v: p.employeeStatus || m.employeeStatus || '在职' }
|
||||
]
|
||||
}
|
||||
},
|
||||
onShow() {
|
||||
oaGet('/profile', store.token).then((d) => { this.profile = d || {} }).catch(() => {})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.card { margin: 24rpx; overflow: hidden; }
|
||||
.row { display: flex; justify-content: space-between; padding: 28rpx 24rpx; border-bottom: 1rpx solid #eaedff; }
|
||||
.k { color: #737686; font-size: 26rpx; }
|
||||
.v { font-size: 26rpx; }
|
||||
</style>
|
||||
@@ -0,0 +1,32 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<fy-header title="工资条" back />
|
||||
<view v-if="!rows.length" class="empty">暂无工资条</view>
|
||||
<view v-for="r in rows" :key="r.id || r.month" class="card item">
|
||||
<text class="t">{{ r.month || r.period || '工资条' }}</text>
|
||||
<text class="s">应发 {{ r.gross || r.shouldPay || '-' }} · 实发 {{ r.net || r.actual || '-' }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FyHeader from '../../components/fy-header.vue'
|
||||
import { store } from '../../utils/store.js'
|
||||
import { asList } from '../../utils/format.js'
|
||||
import { oaGet } from '../../utils/api.js'
|
||||
|
||||
export default {
|
||||
components: { FyHeader },
|
||||
data() { return { rows: [] } },
|
||||
onShow() {
|
||||
oaGet('/profile/payslips', store.token).then((d) => { this.rows = asList(d) }).catch(() => { this.rows = [] })
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.item { margin: 16rpx 24rpx; padding: 24rpx; }
|
||||
.t { display: block; font-weight: 600; }
|
||||
.s { font-size: 24rpx; color: #737686; }
|
||||
.empty { padding: 80rpx; text-align: center; color: #737686; }
|
||||
</style>
|
||||
@@ -0,0 +1,32 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<fy-header title="我的绩效" back />
|
||||
<view v-if="!rows.length" class="empty">暂无绩效记录</view>
|
||||
<view v-for="r in rows" :key="r.id || r.period" class="card item">
|
||||
<text class="t">{{ r.period || r.quarter || '绩效' }}</text>
|
||||
<text class="s">评级 {{ r.grade || r.level || '-' }} · {{ r.score || '' }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FyHeader from '../../components/fy-header.vue'
|
||||
import { store } from '../../utils/store.js'
|
||||
import { asList } from '../../utils/format.js'
|
||||
import { oaGet } from '../../utils/api.js'
|
||||
|
||||
export default {
|
||||
components: { FyHeader },
|
||||
data() { return { rows: [] } },
|
||||
onShow() {
|
||||
oaGet('/profile/performance', store.token).then((d) => { this.rows = asList(d) }).catch(() => { this.rows = [] })
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.item { margin: 16rpx 24rpx; padding: 24rpx; }
|
||||
.t { display: block; font-weight: 600; }
|
||||
.s { font-size: 24rpx; color: #737686; }
|
||||
.empty { padding: 80rpx; text-align: center; color: #737686; }
|
||||
</style>
|
||||
Reference in New Issue
Block a user