|
|
|
@ -1,131 +1,126 @@ |
|
|
|
<template> |
|
|
|
<div class="g-main"> |
|
|
|
<div class="m-search"> |
|
|
|
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'120px'"> |
|
|
|
<div> |
|
|
|
<el-form-item label="所属组织" prop="agencyId"> |
|
|
|
<el-cascader ref="org" v-model.trim="formData.agencyId" :options="organizationList" |
|
|
|
:props="{ checkStrictly: true, multiple: false, emitPath: true }" style="width: 200px" |
|
|
|
clearable @change="orgChangeHandle"> |
|
|
|
</el-cascader> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属服务团" prop="orgName"> |
|
|
|
<el-select class="item_width_1" v-model.trim="formData.volunteerOrgId" size="small" :disabled="disabled" |
|
|
|
placeholder="请选择" clearable> |
|
|
|
<el-option v-for="item in typeList" :key="item.id" :label="item.orgName" |
|
|
|
:value="item.id"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="志愿者姓名" prop="volunteerName"> |
|
|
|
<el-input v-model.trim="formData.volunteerName" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="志愿者手机号" prop="volunteerMobile"> |
|
|
|
<el-input v-model.trim="formData.volunteerMobile" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="老人姓名" prop="oldPeopleName"> |
|
|
|
<el-input v-model.trim="formData.oldPeopleName" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="老人身份证" prop="oldPeopleIdCard"> |
|
|
|
<el-input v-model.trim="formData.oldPeopleIdCard" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="服务类别" prop="serviceCategory"> |
|
|
|
<el-select class="u-item-width-normal" v-model.trim="formData.serviceCategory" size="small" |
|
|
|
placeholder="请选择" clearable> |
|
|
|
<el-option v-for="item in elderlyList" :key="item.value" :label="item.label" |
|
|
|
:value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="打卡时间" prop="signInTimeFrom" label-width="100px"> |
|
|
|
<el-date-picker class="u-item-width-normal" v-model="formData.signInTimeFrom" type="datetime" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"> |
|
|
|
</el-date-picker> |
|
|
|
<span style="margin: 0 10px;">至</span> |
|
|
|
<el-date-picker class="u-item-width-normal" v-model="formData.signInTimeTo" type="datetime" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"> |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<div class="g-main"> |
|
|
|
<div class="m-search"> |
|
|
|
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'120px'"> |
|
|
|
<div> |
|
|
|
<el-form-item label="所属组织" prop="agencyId"> |
|
|
|
<el-cascader ref="org" v-model.trim="formData.agencyId" :options="organizationList" :show-all-levels="false" |
|
|
|
:props="{ label: 'objectName', value: 'objectId', children: 'children', checkStrictly: true, multiple: false, emitPath: false }" |
|
|
|
style="width: 200px" clearable> |
|
|
|
</el-cascader> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属服务团" prop="orgName"> |
|
|
|
<el-select class="item_width_1" v-model.trim="formData.volunteerOrgId" size="small" :disabled="disabled" |
|
|
|
placeholder="请选择" clearable> |
|
|
|
<el-option v-for="item in typeList" :key="item.id" :label="item.orgName" :value="item.id"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="志愿者姓名" prop="volunteerName"> |
|
|
|
<el-input v-model.trim="formData.volunteerName" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="志愿者手机号" prop="volunteerMobile"> |
|
|
|
<el-input v-model.trim="formData.volunteerMobile" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="老人姓名" prop="oldPeopleName"> |
|
|
|
<el-input v-model.trim="formData.oldPeopleName" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="老人身份证" prop="oldPeopleIdCard"> |
|
|
|
<el-input v-model.trim="formData.oldPeopleIdCard" size="small" class="item_width_1" clearable |
|
|
|
placeholder="请输入关键字"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="服务类别" prop="serviceCategory"> |
|
|
|
<el-select class="u-item-width-normal" v-model.trim="formData.serviceCategory" size="small" |
|
|
|
placeholder="请选择" clearable> |
|
|
|
<el-option v-for="item in elderlyList" :key="item.value" :label="item.label" :value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="打卡时间" prop="signInTimeFrom" label-width="100px"> |
|
|
|
<el-date-picker class="u-item-width-normal" v-model="formData.signInTimeFrom" type="datetime" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"> |
|
|
|
</el-date-picker> |
|
|
|
<span style="margin: 0 10px;">至</span> |
|
|
|
<el-date-picker class="u-item-width-normal" v-model="formData.signInTimeTo" type="datetime" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"> |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</div> |
|
|
|
<div> |
|
|
|
<div style="display: flex; justify-content: flex-end;"> |
|
|
|
<el-button style="margin-left:10px" class="diy-button--blue" size="small" |
|
|
|
@click="handleSearch">查询</el-button> |
|
|
|
<el-button style="margin-left:10px" class="diy-button--white" size="small" |
|
|
|
@click="resetSearch">重置</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
<div class="m-table"> |
|
|
|
<el-table class="table" :data="tableData" border :height="tableHeight" v-loading="tableLoading" |
|
|
|
style="width: 100%;margin-top:16px" @select-all="selectAll" @selection-change="handelSelection"> |
|
|
|
<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-column label="操作" fixed="right" width="230" header-align="center" align="center" |
|
|
|
class="operate"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-button type="text" style="color:#1C6AFD;" size="small" |
|
|
|
@click="handleDetail(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 style="display: flex; justify-content: flex-end;"> |
|
|
|
<el-button style="margin-left:10px" class="diy-button--blue" size="small" |
|
|
|
@click="handleSearch">查询</el-button> |
|
|
|
<el-button style="margin-left:10px" class="diy-button--white" size="small" |
|
|
|
@click="resetSearch">重置</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<el-dialog :visible.sync="initShow" v-if="initShow" :close-on-click-modal="false" :close-on-press-escape="false" |
|
|
|
:title="formTitle" width="1050px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<add-old v-if="initShow" ref="ref_form" :unitList="corganizerList" :gridList="gridList" @closeAdd="closeAdd" |
|
|
|
@dialogCancle="addFormCancleInit" @dialogOk="addFormOkInit"></add-old> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog :visible.sync="detailShow" v-if="detailShow" :close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" title="详情" width="1050px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<service-info v-if="detailShow" ref="ref_detail" :unitList="corganizerList" :gridList="gridList" |
|
|
|
@closeDetail="closeDetail" @dialogCancle="addFormCancleInit" @dialogOk="addFormOkInit"></service-info> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog :visible.sync="showList" v-if="showList" :close-on-click-modal="false" :close-on-press-escape="false" |
|
|
|
title="志愿者成员" width="1050px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<volunteers-list v-if="showList" ref="ref_vol" @closeAdd="closeAdd"></volunteers-list> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog :visible.sync="toExamineShow" v-if="toExamineShow" :close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" title="审核" width="750px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<service-team v-if="toExamineShow" ref="ref_examine" @closeExamine="closeExamine"></service-team> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
<div class="m-table"> |
|
|
|
<el-table class="table" :data="tableData" border :height="tableHeight" v-loading="tableLoading" |
|
|
|
style="width: 100%;margin-top:16px" @select-all="selectAll" @selection-change="handelSelection"> |
|
|
|
<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-column label="操作" fixed="right" width="230" header-align="center" align="center" class="operate"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-button type="text" style="color:#1C6AFD;" size="small" @click="handleDetail(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> |
|
|
|
<el-dialog :visible.sync="initShow" v-if="initShow" :close-on-click-modal="false" :close-on-press-escape="false" |
|
|
|
:title="formTitle" width="1050px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<add-old v-if="initShow" ref="ref_form" :unitList="corganizerList" :gridList="gridList" @closeAdd="closeAdd" |
|
|
|
@dialogCancle="addFormCancleInit" @dialogOk="addFormOkInit"></add-old> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog :visible.sync="detailShow" v-if="detailShow" :close-on-click-modal="false" :close-on-press-escape="false" |
|
|
|
title="详情" width="1050px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<service-info v-if="detailShow" ref="ref_detail" :unitList="corganizerList" :gridList="gridList" |
|
|
|
@closeDetail="closeDetail" @dialogCancle="addFormCancleInit" @dialogOk="addFormOkInit"></service-info> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog :visible.sync="showList" v-if="showList" :close-on-click-modal="false" :close-on-press-escape="false" |
|
|
|
title="志愿者成员" width="1050px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<volunteers-list v-if="showList" ref="ref_vol" @closeAdd="closeAdd"></volunteers-list> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog :visible.sync="toExamineShow" v-if="toExamineShow" :close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" title="审核" width="750px" top="5vh" class="dialog-h" @closed="diaInitClose"> |
|
|
|
<service-team v-if="toExamineShow" ref="ref_examine" @closeExamine="closeExamine"></service-team> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<script> |
|
|
|
|
|
|
|
@ -248,7 +243,7 @@ |
|
|
|
// 获取所属组织列表 |
|
|
|
getFormInfo() { |
|
|
|
this.$http |
|
|
|
.post(`/gov/org/agency/getOrgTreeListByCustomerId`) |
|
|
|
.post(`/gov/org/userhouse/service/serviceScopeTree`) |
|
|
|
.then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg); |
|
|
|
@ -320,6 +315,8 @@ |
|
|
|
const url = "/voluntary/op/service/pc/serviceRecs" |
|
|
|
let params = { |
|
|
|
...this.formData, |
|
|
|
pageNo:this.pageNo, |
|
|
|
pageSize:this.pageSize |
|
|
|
} |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, params) |
|
|
|
@ -372,7 +369,7 @@ |
|
|
|
this.$nextTick(() => { |
|
|
|
this.$refs.ref_form.initForm('summary', row) |
|
|
|
}) |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
}, |
|
|
|
|
|
|
|
handleAdd () { |
|
|
|
@ -399,13 +396,13 @@ |
|
|
|
addFormOk () { |
|
|
|
this.formShow = false |
|
|
|
// this.loadTable() |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
|
|
|
|
}, |
|
|
|
addFormOkInit () { |
|
|
|
this.initShow = false |
|
|
|
// this.loadTable() |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
@ -472,7 +469,7 @@ |
|
|
|
this.pageSize = 10 |
|
|
|
this.pageNo = 1 |
|
|
|
// this.loadTable() |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
}, |
|
|
|
|
|
|
|
//导出表格 |
|
|
|
@ -571,7 +568,7 @@ |
|
|
|
}); |
|
|
|
|
|
|
|
// this.loadTable() |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
} else { |
|
|
|
this.$message.error(msg) |
|
|
|
} |
|
|
|
@ -596,12 +593,12 @@ |
|
|
|
this.pageSize = val |
|
|
|
this.pageNo = 1 |
|
|
|
// this.loadTable() |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
}, |
|
|
|
handleCurrentChange (val) { |
|
|
|
this.pageNo = val |
|
|
|
// this.loadTable() |
|
|
|
this.communityActivityList() |
|
|
|
this.getElderlyInfo() |
|
|
|
}, |
|
|
|
|
|
|
|
// 开启加载动画 |
|
|
|
|