<template>
	<scroll-view :style="{height: `calc(${approveListHeight}px - 20rpx)`}" class="di-scroll" scroll-y @scrolltolower="handleOnreachBottom" :refresher-triggered="triggered"
		refresher-enabled @refresherrefresh="handlePullDownRefresh">
		<view class="di-scroll-list">
			<!-- 右滑 -->
			<u-swipe-action
				style="margin-bottom: 20rpx;border-radius: 10rpx;overflow: hidden;"
				v-for="(item, index) in list"
				:show="activeIndex === item[primaryKey]"
				:key="index" 
				:index='item.id'
				@content-click="(id) => handleClickContext(id, item)">
				<di-descriptions :title="item.processDefinitionName" label-col="3" value-col="9" :border-bottom="true" >
					<template slot="right" v-if="categoryMap[item.category]">
						<u-tag size="mini" :text="categoryMap[item.category].label" :type="categoryMap[item.category].type" mode="light" />
					</template>
					<!-- <di-descriptions-item label="节点名称" :value="item.name" :ellipsis="true"/>
					<di-descriptions-item label="开始时间" :value="item.createTime" :ellipsis="true"/> -->
                    <di-descriptions-item label="流程单号" :value="item.processNo" :ellipsis="true"/>
                    <di-descriptions-item label="待办节点" :value="item.name" :ellipsis="true"/>
                    <di-descriptions-item label="提交人" :value="item.applyUserName" :ellipsis="true"/>
                    <di-descriptions-item label="申请时间" :value="item.applyTime" :ellipsis="true"/>
				</di-descriptions>
			</u-swipe-action>
		</view>
		<u-loadmore v-if="!triggered" :status="status" :loadText='loadText' margin-top="24" margin-bottom="20" />
	</scroll-view>
</template>

<script>
	import approveList from './approveList'
	export default {
		mixins: [approveList],
		data() {
			return {
				baseApi: '/cusFlowTask',
				listApi: 'myTodoList',
				customQueryParam: {
				    category: 'todo',
					taskCategory: 'todo',
				},
				categoryMap: {
				  todo: {
				    label: '待办',
				    type: 'primary'
				  },
				  hold: {
				    label: '暂存',
				    type: 'warning'
				  },
				  cc: {
				    label: '抄送',
				    type: 'success'
				  }
				}
			}
		},
    methods: {
      async handleClickContext (id, item) {
        /* if (!item.assignee) {
          await this.claim(item.id)
        } */
        this.handle2ProcessTask(id, item.procInstId, item.category, item.procDefId, true)
      },
      async claim (taskId) {
        await this.$dibootApi.put('/workflow/task/taskOperate', {
          taskId,
          taskOperate: 'claim'
        })
      }
    }
	}
</script>

<style lang="scss">
.di-scroll-list {
	background: none;
}
</style>
