Compare commits

..

No commits in common. "02213b2d060812470d34fc90ddc0b4b22ef101dc" and "339e41d5e25c92b62a86c2e071dd7c92f2e0e838" have entirely different histories.

4 changed files with 35 additions and 107 deletions

View File

@ -1,73 +1,35 @@
import { timeFormat } from '@climblee/uv-ui/libs/function' import { timeFormat } from '@climblee/uv-ui/libs/function'
export default { export default {
//清洁任务 //清洁任务
task_hygienes: { task_hygienes: [
data: [ // {
// { // title: '申请人',
// title: '申请人', // dataIndex: 'name',
// dataIndex: 'name', // },
// }, {
{ title: '所属门店',
title: '所属门店', dataIndex: 'taskable.store.title',
dataIndex: 'taskable.store.title', // borderBottom: false,
// borderBottom: false, // labelPosition: 'top'
// labelPosition: 'top'
},
{
title: '电话号码',
dataIndex: '',
},
{
title: '申请时间',
dataIndex: 'created_at',
format: timeFormat,
},
{
title: '清洁范围',
dataIndex: 'taskable.description',
labelPosition: 'top',
},
{
title: '清洁结果',
dataIndex: 'taskable.photos',
type: 'album',
},
],
},
reimbursements: {
params: {
include: 'employee,store,type',
}, },
data: [ {
{ title: '电话号码',
title: '审核状态', dataIndex: '',
dataIndex: 'workflow_check.check_status_text', },
}, {
{ title: '申请时间',
title: '未通过理由', dataIndex: 'created_at',
dataIndex: 'workflow_check.check_remarks', format: timeFormat,
isShow: (item) => { },
return item?.workflow_check?.check_status == 4 {
}, title: '清洁范围',
}, dataIndex: 'taskable.description',
{ labelPosition: 'top',
title: '报销分类', },
dataIndex: 'type.name', {
}, title: '清洁结果',
{ dataIndex: 'taskable.photos',
title: '报销金额', type: 'album',
dataIndex: 'expense', },
}, ]
{
title: '报销原因',
dataIndex: 'reason',
labelPosition: 'top',
},
{
title: '报销凭证',
dataIndex: 'photos',
type: 'album',
},
]
}
} }

View File

@ -1,12 +1,8 @@
<template> <template>
<view> <view>
<CuNavbar title="审核详情"> <CuNavbar title="任务详情">
<template #right> <template #right>
<view <view class="text-sm text-white" @click="goPath(`/pages/audits/log?id=${id}&type=${type}`)"></view>
class="text-sm text-white"
@click="goPath(`/pages/audits/log?id=${id}&type=${type}`)"
>审核流程</view
>
</template> </template>
</CuNavbar> </CuNavbar>
<view class="px-base mt-30rpx"> <view class="px-base mt-30rpx">
@ -56,8 +52,7 @@ import BaseData from './base-data.vue'
import datajson from './data.data' import datajson from './data.data'
const value = ref('') const value = ref('')
const colums = computed(() => datajson[type.value].data ?? []) const colums = computed(() => datajson[type.value] ?? [])
const params = computed(() => datajson[type.value].params ?? {})
const id = ref(null) const id = ref(null)
const type = ref(null) const type = ref(null)
const data = ref(null) const data = ref(null)
@ -119,7 +114,6 @@ const getData = async () => {
const resData = await http.get(`/workflow/${id.value}`, { const resData = await http.get(`/workflow/${id.value}`, {
params: { params: {
subject_type: type.value, subject_type: type.value,
...params.value,
}, },
}) })
data.value = resData.data data.value = resData.data
@ -127,6 +121,7 @@ const getData = async () => {
console.log(resData) console.log(resData)
} }
const goPath = (url) => { const goPath = (url) => {
uni.navigateTo({ url }) uni.navigateTo({ url })
} }

View File

@ -83,7 +83,7 @@ const tabList = ref([
{ {
name: '报销审核', name: '报销审核',
apiUrl: '/workflow', apiUrl: '/workflow',
params: { subject_type: 'reimbursements', include: 'employee,store,type' }, params: { subject_type: 'reimbursements' },
}, },
]) ])

View File

@ -11,30 +11,6 @@
</view> </view>
</template> </template>
</CuNavbar> </CuNavbar>
<view class="px-base mt-30rpx">
<view class="card-shadow bg-white rounded-19rpx p-base">
<view class="flex">
<view class="w-120rpx h-120rpx rounded-full overflow-hidden">
<image class="w-full h-full" :src="userInfo?.avatar"></image>
</view>
<view class="ml-20rpx">
<view class="text-28rpx font-medium flex items-center">
<view>{{ userInfo.name }}</view>
</view>
<view class="text-26rpx">{{ userInfo.phone }}</view>
<view class="flex">
<uv-tags
v-for="(item, i) in userInfo.jobs"
:key="i"
plain
size="mini"
:text="item.name"
></uv-tags>
</view>
</view>
</view>
</view>
</view>
<view class="px-base space-y-15rpx mt-30rpx"> <view class="px-base space-y-15rpx mt-30rpx">
<view class="card" v-for="(item, i) in opList" :key="i"> <view class="card" v-for="(item, i) in opList" :key="i">
<TitleComp :title="item.title"></TitleComp> <TitleComp :title="item.title"></TitleComp>
@ -51,15 +27,10 @@
</view> </view>
</template> </template>
<script setup> <script setup>
import { computed } from 'vue'
import TitleComp from '@/components/title-comp/index' import TitleComp from '@/components/title-comp/index'
import OpItem from './components/op-item.vue' import OpItem from './components/op-item.vue'
import CuNavbar from '@/components/cu-navbar/index' import CuNavbar from '@/components/cu-navbar/index'
import checkPermission from '@/utils/permission' import checkPermission from '@/utils/permission'
import { useUserStore } from '@/store/modules/user'
const userStore = useUserStore()
const userInfo = computed(() => userStore.userInfo)
const opList = [ const opList = [
{ {