北尚诉办前端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

141 lines
5.9 KiB

<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-heart__actuserclocklog}">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-button type="primary" @click="backToActList">返回</el-button>
</el-form-item>
<div>
<el-form-item label="状态">
<el-select v-model="dataForm.status" placeholder="状态" clearable>
<el-option label="审核通过" :value="1"></el-option>
<el-option label="打卡" :value="2"></el-option>
<el-option label="确认加积分" :value="5"></el-option>
<el-option label="拒绝加积分" :value="6"></el-option>
</el-select>
</el-form-item>
<el-form-item label="姓名"><el-input v-model="dataForm.realName" placeholder="请输入" clearable></el-input></el-form-item>
<el-form-item label="手机号"><el-input v-model="dataForm.mobile" placeholder="请输入" clearable></el-input></el-form-item>
</div>
<div class="block">
<span class="demonstration">注册时间</span>&nbsp;&nbsp;
<el-date-picker @change='setRegistTime' v-model="time" value-format="yyyy-MM-dd" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>&nbsp;
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
</div>
</el-form>
<el-table v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" style="width: 100%;">
<el-table-column label="序号" type="index" show-overflow-tooltip align="center" width="50"></el-table-column>
<el-table-column prop="realName" label="报名人" header-align="center" align="center"></el-table-column>
<el-table-column prop="sex" label="性别" :formatter="formatSex" header-align="center" align="center"></el-table-column>
<el-table-column prop="age" label="年龄" header-align="center" align="center"></el-table-column>
<el-table-column prop="mobile" label="联系电话" header-align="center" align="center"></el-table-column>
<el-table-column prop="clockAddress" label="打卡地点" header-align="center" align="center"></el-table-column>
<el-table-column prop="clockCount" label="打卡次数" header-align="center" align="center"></el-table-column>
<el-table-column prop="status" label="打卡状态" :formatter="formatState" header-align="center" align="center"></el-table-column>
<el-table-column prop="checkPoint" :formatter="isCheckPoint" label="是否发放积分" header-align="center" align="center"></el-table-column>
<el-table-column prop="point" label="积分" header-align="center" align="center"></el-table-column>
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
<template slot-scope="scope">
<!-- <el-button type="text" size="small" :disabled="scope.row.status ==='0'? false :true" @click="addOrUpdateHandle(scope.row.id)">审核</el-button>-->
<el-button v-if="$hasPermission('heart:actinfo:look')" type="text" size="small" @click="detailHandle(scope.row.id)">查看</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination
:current-page="page"
:page-sizes="[10, 20, 50, 100]"
:page-size="limit"
:total="total"
layout="total, sizes, prev, pager, next, jumper"
@size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle">
</el-pagination>
<!-- 弹窗, 新增 / 修改 -->
<actuserclock-detai v-if="detailVisible" ref="actuserrelationDetail" @refreshDataList="getDataList"></actuserclock-detai>
</div>
</el-card>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
import ActUserClockDetail from './actuserclock-detail'
export default {
name: 'ActUserClockLog',
mixins: [mixinViewModule],
data () {
return {
mixinViewModuleOptions: {
getDataListURL: '/heart/actuserclocklog/clockPage',
getDataListIsPage: true
},
dataForm: {
id: '',
actId: '',
startTime: '',
endTime: ''
},
detailVisible: false,
time: ''
}
},
mounted () {
this.dataForm.actId = this.$route.query.id
this.getDataList()
},
methods: {
backToActList () {
this.$emit('refreshDataList')
this.$parent.selectComponent = 'ActInfoList'
this.$router.push({ path: '/heart-actinfo' })
},
detailHandle (id) {
this.$parent.selectComponent = 'ActUserClockDetail'
this.$router.push({ path: '/heart-actinfo', query: { id: id, actId: this.dataForm.actId } })
},
setRegistTime () {
this.dataForm.startTime = this.time[0]
this.dataForm.endTime = this.time[1]
},
formatState: function (row, column) {
let state = row.status
if (state === '0') {
return '报名'
} else if (state === '1') {
return '审核通过'
} else if (state === '2') {
return '打卡'
} else if (state === '3') {
return '取消报名'
} else if (state === '4') {
return '审核不通过'
} else if (state === '5') {
return '确认加积分'
} else if (state === '6') {
return '拒绝加积分'
}
},
formatSex: function (row, column) {
let state = row.sex
if (state === '0') {
return '女'
} else if (state === '1') {
return '男'
}
},
// 是否发放积分转义
isCheckPoint: function (row, column) {
let state = row.checkPoint
if (state === '0') {
return '否'
} else if (state === '1') {
return '是'
}
}
},
components: {
ActUserClockDetail
}
}
</script>