<template> <view class="content"> <u-list @scrolltolower="scrolltolower" v-if="list.length > 0"> <u-list-item v-for="(item, index) in list" :key="index"> <view class="flex-between main-title"> <text>申请人:{{ item.jobName }}</text> </view> <view class="flex-between main-title"> <text>作业编号:{{ item.id }}</text> </view> <view class="flex-between main-title"> <text>作业分公司:{{ item.corpName }}</text> </view> <view class="flex-between main-title"> <text>申请时间:{{ item.createdTime }}</text> </view> <view class="flex-between main-title"> <text>当前步骤:{{ item.taskName }}</text> </view> <view class=" mt-10 flex_btn"> <view class="flex_btn"> <u-button type="primary" text="修改" size="mini" class="bth-mini" v-if="item.canEditFlag === '1'" @click="handleEditTask(item)" /> <u-button type="primary" text="流程" size="mini" class="bth-mini ml-10" @click="$u.route({ url: '/pages/eight_assignments/technological_process', params: {taskId:item.taskId,type,title} })"/> <u-button type="primary" text="审批" size="mini" class="bth-mini ml-10" v-if="item.canEditFlag !== '1'" @click="$u.route({ url: '/pages/eight_assignments/view_info', params: {taskId:item.taskId,jobId:item.jobId,type,title} })"/> </view> <view v-for="(item1, index1) in item.buttons" :key="index1" class="flex_btn"> <u-button type="primary" size="mini" shape="circle" :text="item1.name" class="bth-mini ml-10" @click="$u.route({ url: item1.route, params: {taskId: item.taskId,EW_RU_JOB_ID: item.jobId, isView: '1'}, })" /> </view> </view> </u-list-item> </u-list> <empty v-else></empty> </view> </template> <script> import {getToDoTaskList} from "@/api"; export default { data() { return { type: '', title: '', pageSize: 10, currentPage: 1, totalPage: 0, list: [] } }, onLoad(query) { this.type = query.type this.title = query.title uni.setNavigationBarTitle({ title: this.title + '待办' }) }, onShow() { this.resetList() }, methods: { async getData() { let resData = await getToDoTaskList({ showCount: this.pageSize, currentPage: this.currentPage, TYPE: this.type, vectors: '0', REQUEST_SOURCE: '2' }); this.list = [...this.list, ...resData.list.list]; this.totalPage = resData.list.totalPage; }, resetList() { this.pageSize = 10 this.currentPage = 1 this.list = [] this.getData() }, scrolltolower() { this.currentPage++; if (this.totalPage >= this.currentPage) this.getData(); }, handleEditTask(value) { let tempUrlStr = this.type.replace(/([a-z])([A-Z])/g, '\$1_\$2').toLowerCase() uni.$u.route({ url: `/pages/eight_assignments/${tempUrlStr}/apply`, params: { taskId: value.taskId, CORPINFO_ID: value.corpId } }) } }, } </script> <style scoped> .flex_btn{ display: flex; justify-content: flex-end; } </style>