7 changed files with 431 additions and 492 deletions
@ -1,213 +0,0 @@ |
|||||
<template> |
|
||||
<div style="padding: 20px 20px 0 20px ; height: 650px;"> |
|
||||
<div class="dialog-h-content scroll-h"> |
|
||||
<el-table class="table" :data="tableData" border height="550px" |
|
||||
style="width: 100%;margin-top:16px" > |
|
||||
<el-table-column type="selection" fixed="left" align="center" width="50"></el-table-column> |
|
||||
<el-table-column prop="orgNamePath" header-align="center" align="center" label="所属组织"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="volunteerOrgName" header-align="center" align="center" label="所属服务团"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="oldPeopleName" header-align="center" align="center" label="老人姓名"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="oldPeopleIdCard" header-align="center" align="center" label="老人身份证号"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="categoryLabels" header-align="center" align="center" label="服务项目"> |
|
||||
<template slot-scope="scope"> |
|
||||
<div>{{ scope.row.categoryLabels.join(",") }}</div> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="serviceTime" header-align="center" align="center" label="服务时长(小时)"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="pointNum" header-align="center" align="center" label="积分"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="signInTime" header-align="center" align="center" label="到岗打卡时间"> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="signOutTime" header-align="center" align="center" label="离岗打卡时间"> |
|
||||
</el-table-column> |
|
||||
</el-table> |
|
||||
<div> |
|
||||
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="pageNo" |
|
||||
:page-sizes="[20, 50, 100, 200]" :page-size="parseInt(pageSize)" layout="sizes, prev, pager, next, total" |
|
||||
:total="total"> |
|
||||
</el-pagination> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
import { mapGetters } from 'vuex' |
|
||||
import { Loading } from 'element-ui' // 引入Loading服务 |
|
||||
import { requestPost } from '@/js/dai/request' |
|
||||
import Tinymce from '@c/tinymce2/index.vue' |
|
||||
import daiMap from "@/utils/dai-map"; |
|
||||
import util from '@js/util.js'; |
|
||||
// import UploadImage from './upload-image.vue' |
|
||||
import UploadImage from '@/views/modules/plugins/rent/upload-image.vue' |
|
||||
|
|
||||
|
|
||||
var map |
|
||||
var search |
|
||||
var markers |
|
||||
var infoWindowList |
|
||||
var geocoder // 新建一个正逆地址解析类 |
|
||||
|
|
||||
let loading // 加载动画 |
|
||||
export default { |
|
||||
data() { |
|
||||
return { |
|
||||
tableData:[], |
|
||||
formType:"add", |
|
||||
formData: { |
|
||||
}, |
|
||||
|
|
||||
} |
|
||||
|
|
||||
}, |
|
||||
|
|
||||
components: {Tinymce, UploadImage }, |
|
||||
mounted() { |
|
||||
}, |
|
||||
|
|
||||
methods: { |
|
||||
async initForm(row) { |
|
||||
this.startLoading() |
|
||||
this.formData=row |
|
||||
console.log(row,"dsf;lkfsdkl"); |
|
||||
this.getElderlyInfo() |
|
||||
this.endLoading() |
|
||||
|
|
||||
}, |
|
||||
async getElderlyInfo () { |
|
||||
this.formData.agencyId="7b6f9a9f9f38d5f9fa7ce94a93d6eb28" |
|
||||
const url = "/voluntary/op/service/pc/serviceRecs" |
|
||||
let params = { |
|
||||
volunteerName:this.formData.name, |
|
||||
volunteerMobile:this.formData.mobile |
|
||||
|
|
||||
} |
|
||||
|
|
||||
const { data, code, msg } = await requestPost(url, params) |
|
||||
if (code === 0) { |
|
||||
this.tableData = data.list |
|
||||
} else { |
|
||||
this.$message.error(msg) |
|
||||
} |
|
||||
}, |
|
||||
|
|
||||
handleSizeChange (val) { |
|
||||
this.pageSize = val |
|
||||
this.pageNo = 1 |
|
||||
this.getElderlyInfo() |
|
||||
}, |
|
||||
handleCurrentChange (val) { |
|
||||
this.pageNo = val |
|
||||
// this.loadTable() |
|
||||
this.getElderlyInfo() |
|
||||
}, |
|
||||
// 开启加载动画 |
|
||||
startLoading() { |
|
||||
loading = Loading.service({ |
|
||||
lock: true, // 是否锁定 |
|
||||
text: '正在加载……', // 加载中需要显示的文字 |
|
||||
background: 'rgba(0,0,0,.7)' // 背景颜色 |
|
||||
}) |
|
||||
}, |
|
||||
// 结束加载动画 |
|
||||
endLoading() { |
|
||||
// clearTimeout(timer); |
|
||||
if (loading) { |
|
||||
loading.close() |
|
||||
} |
|
||||
} |
|
||||
}, |
|
||||
computed: { |
|
||||
}, |
|
||||
props: { |
|
||||
|
|
||||
|
|
||||
|
|
||||
}, |
|
||||
destroyed () { |
|
||||
map = null |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
|
|
||||
<style lang="scss" scoped> |
|
||||
@import "@/assets/scss/modules/visual/communityManageForm.scss"; |
|
||||
</style> |
|
||||
<style lang="scss" scoped> |
|
||||
.no-border-card { |
|
||||
border: none !important; |
|
||||
box-shadow: none !important; |
|
||||
} |
|
||||
.info-label { |
|
||||
width: 120px; |
|
||||
padding: 10px; |
|
||||
border: 1px solid #ebeef5; |
|
||||
|
|
||||
white-space: nowrap; /* 防止换行 */ |
|
||||
} |
|
||||
.item_width_1 { |
|
||||
width: 634px; |
|
||||
/deep/.tox .tox-dialog { |
|
||||
z-index: 20000; |
|
||||
} |
|
||||
} |
|
||||
.u-item-width-normal{ |
|
||||
width: 222px; |
|
||||
} |
|
||||
|
|
||||
.tinymce_view { |
|
||||
::v-deep .tox .tox-dialog { |
|
||||
z-index: 2000000000; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.div_map { |
|
||||
position: relative; |
|
||||
} |
|
||||
|
|
||||
.div_searchmap { |
|
||||
z-index: 5000; |
|
||||
position: absolute; |
|
||||
top: 5px; |
|
||||
left: 5px; |
|
||||
} |
|
||||
|
|
||||
.tinymce_view { |
|
||||
height: 400px; |
|
||||
overflow: auto; |
|
||||
} |
|
||||
|
|
||||
.text_p { |
|
||||
margin: 0; |
|
||||
padding: 0 10px; |
|
||||
border: 1px solid #d9d9d9; |
|
||||
border-radius: 5px; |
|
||||
|
|
||||
>p { |
|
||||
margin: 0; |
|
||||
} |
|
||||
} |
|
||||
.label-wrap ::v-deep(.el-form-item__label) { |
|
||||
white-space: normal; |
|
||||
line-height: 1.2; |
|
||||
text-align: right |
|
||||
} |
|
||||
.newqsa { |
|
||||
border-left: 4px solid #2683DB; |
|
||||
height: 100%; |
|
||||
// width: 4px; |
|
||||
padding-left: 8px; |
|
||||
margin-bottom: 10px; |
|
||||
|
|
||||
} |
|
||||
.newqsa_text{ |
|
||||
font-size: 15px; |
|
||||
font-weight: 600; |
|
||||
} |
|
||||
</style> |
|
@ -0,0 +1,215 @@ |
|||||
|
<template> |
||||
|
<div class="g-main" style="padding: 30px;"> |
||||
|
<div class=""> |
||||
|
<el-form :inline="true" :model="searchData" class="demo-form-inline" style="" > |
||||
|
<el-form-item label="姓名"> |
||||
|
<el-input placeholder="请输入内容" v-model="searchData.redeemerName" style="width: 150px" clearable> |
||||
|
</el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="手机号" label-width="80px"> |
||||
|
<el-input placeholder="请输入内容" v-model="searchData.redeemerMobile" style="width: 150px" clearable> |
||||
|
</el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="兑换时间选择" label-width="120px"> |
||||
|
<el-date-picker v-model="searchData.redeemTimeFrom" type="datetime" placeholder="开始时间" |
||||
|
format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" style="width: 150px"> |
||||
|
</el-date-picker><span style="margin: 0 10px">至</span><el-date-picker v-model="searchData.redeemTimeTo" type="datetime" |
||||
|
placeholder="结束时间" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" style="width: 150px"> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<div style="display: flex; justify-content: flex-end; margin:10px 0 20px 0;"> |
||||
|
<el-button type="primary" @click="handleSeach" style="margin: 20rpx;">查询</el-button> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<!-- <div class="flex flex-center1 flex-center2 m-bottom10 " style=""> |
||||
|
<div>姓名:</div> |
||||
|
<el-input placeholder="请输入内容" v-model="searchData.redeemerName" style="width: 200px" clearable> |
||||
|
</el-input> |
||||
|
</div> |
||||
|
<div class="flex flex-center1 flex-center2 m-bottom10" style=""> |
||||
|
<div>手机号:</div> |
||||
|
<el-input placeholder="请输入内容" v-model="searchData.redeemerMobile" style="width: 200px" clearable> |
||||
|
</el-input> |
||||
|
</div> --> |
||||
|
<!-- <div class="flex flex-center1 flex-center2 m-bottom10" style=""> |
||||
|
<div>状态:</div> |
||||
|
<el-select v-model="searchData.StatusName" placeholder="请选择"> |
||||
|
<el-option v-for="item in Status" :key="item.value" :label="item.label" :value="item.value"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
|
||||
|
</div> --> |
||||
|
<!-- <div class="flex flex-center1 flex-center2 m-bottom10" style=""> |
||||
|
<div>兑换时间选择:</div> |
||||
|
<el-date-picker v-model="searchData.redeemTimeFrom" type="datetime" placeholder="开始时间" |
||||
|
format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"> |
||||
|
</el-date-picker>至 <el-date-picker v-model="searchData.redeemTimeTo" type="datetime" placeholder="结束时间" |
||||
|
format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"> |
||||
|
</el-date-picker> |
||||
|
</div> --> |
||||
|
<!-- |
||||
|
<div> |
||||
|
<el-button type="primary" class="m-bottom10" @click="handleSeach">查询</el-button> |
||||
|
</div> --> |
||||
|
</div> |
||||
|
<div> |
||||
|
<el-table :data="tableData" border> |
||||
|
<el-table-column label="序号" width="80" header-align="center" align="center" |
||||
|
type="index"></el-table-column> |
||||
|
<el-table-column prop="redeemerName" header-align="center" align="center" label="姓名"> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="redeemTime" header-align="center" align="center" label="兑换时间"> |
||||
|
</el-table-column> |
||||
|
<!-- <el-table-column prop="ActivityCount" header-align="center" align="center" label="姓名"> |
||||
|
</el-table-column> --> |
||||
|
. <el-table-column prop="redeemerIdCard" header-align="center" align="center" label="身份证号"> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="redeemerMobile" header-align="center" align="center" label="手机号"> |
||||
|
</el-table-column> |
||||
|
|
||||
|
<el-table-column prop="ActivityCount" header-align="center" align="center" label="核销时间"> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="rcvTime" header-align="center" align="center" label="状态"> |
||||
|
<template slot-scope="scope"> |
||||
|
<span v-if="scope.row.rcvTime == null">未核销</span> |
||||
|
<span v-else>已核销</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="ActivityCount" header-align="center" align="center" label="核销"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button v-if="scope.row.rcvTime == null" type="text" @click="handleWrite(scope.row)">核销</el-button> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<div> |
||||
|
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" |
||||
|
:current-page.sync="pageNo" :page-sizes="[10, 20, 50]" :page-size="pageSize" |
||||
|
layout="sizes, prev, pager, next, total" :total="total"> |
||||
|
</el-pagination> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
<script> |
||||
|
import { requestPost,requestGet } from "@/js/dai/request"; |
||||
|
export default { |
||||
|
data() { |
||||
|
return { |
||||
|
Status:[ |
||||
|
{ |
||||
|
value: '0', |
||||
|
label: '待使用' |
||||
|
}, |
||||
|
{ |
||||
|
value: '1', |
||||
|
label: '已使用' |
||||
|
} |
||||
|
], |
||||
|
ExchangeTime:"", |
||||
|
labelPosition: 'right', |
||||
|
tableData: [], |
||||
|
searchData:{ |
||||
|
redeemerMobile:"", |
||||
|
redeemerName:"", |
||||
|
redeemTimeTo:"", |
||||
|
redeemTimeFrom:"", |
||||
|
}, |
||||
|
pageNo:1, |
||||
|
pageSize:10, |
||||
|
total:0, |
||||
|
awardId:"", |
||||
|
}; |
||||
|
}, |
||||
|
props:{ |
||||
|
list:{ |
||||
|
type: Object, |
||||
|
default: () => {} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
//点击核销 |
||||
|
handleWrite(row){ |
||||
|
let url="/voluntary/points/admin/receiveAward"; |
||||
|
console.log(row,"awardId"); |
||||
|
|
||||
|
let params={ |
||||
|
redeemRecordId:row.awardId, |
||||
|
} |
||||
|
console.log(params,"params"); |
||||
|
|
||||
|
requestPost(url,params).then(res=>{ |
||||
|
console.log(res); |
||||
|
this.getTableData() |
||||
|
}) |
||||
|
}, |
||||
|
//分页 |
||||
|
handleSizeChange(val) { |
||||
|
console.log(`每页 ${val} 条`); |
||||
|
this.pageSize = val; |
||||
|
window.localStorage.setItem("pageSize", val); |
||||
|
this.getTableData( |
||||
|
) |
||||
|
}, |
||||
|
handleSizeChange(val) { |
||||
|
console.log(`每页 ${val} 条`); |
||||
|
this.pageSize = val; |
||||
|
window.localStorage.setItem("pageSize", val); |
||||
|
this.getTableData(); |
||||
|
}, |
||||
|
handleCurrentChange(val) { |
||||
|
console.log(`当前页: ${val}`); |
||||
|
this.pageNo = val; |
||||
|
this.getTableData(); |
||||
|
}, |
||||
|
handleSeach(){ |
||||
|
this.pageNo = 1; |
||||
|
console.log(this.SearchName); |
||||
|
this.getTableData() |
||||
|
|
||||
|
}, |
||||
|
async getTableData() { |
||||
|
// const url = "http://yapi.elinkservice.cn/mock/245/gov/project/project/project-list"; |
||||
|
const url = "/voluntary/points/admin/listRedeemRecords"; |
||||
|
let params = { |
||||
|
awardId:this.awardId, |
||||
|
mobile:this.searchData.redeemerMobile, |
||||
|
name:this.searchData.redeemerName, |
||||
|
redeemTimeFrom:this.searchData.redeemTimeFrom, |
||||
|
redeemTimeTo:this.searchData.redeemTimeTo, |
||||
|
pageSize:this.pageSize, |
||||
|
pageNo:this.pageNo |
||||
|
} |
||||
|
console.log(params,"params"); |
||||
|
console.log(this.awardId,"awardId" |
||||
|
) |
||||
|
const { data, code, msg } = await requestGet(url, params) |
||||
|
if (code === 0) { |
||||
|
console.log("列表请求成功!!!!!!!!!!!!!!"); |
||||
|
this.total = data.total || 0; |
||||
|
this.tableData = data.list |
||||
|
console.log(this.tableData,"this.tableData"); |
||||
|
} else { |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
}, |
||||
|
created() { |
||||
|
console.log(this.list,"list"); |
||||
|
this.tableData=this.list |
||||
|
this.awardId=this.list.id |
||||
|
console.log(this.awardId,"awardId"); |
||||
|
this.getTableData( |
||||
|
|
||||
|
) |
||||
|
|
||||
|
}, |
||||
|
} |
||||
|
|
||||
|
</script> |
||||
|
<style lang="scss" scoped> |
||||
|
@import "@/assets/scss/modules/management/volunteet.scss"; |
||||
|
</style> |
Loading…
Reference in new issue