Browse Source

140环境

feature
是小王呀\24601 6 months ago
parent
commit
95776d1190
  1. 2
      .env.production.sit
  2. 53
      src/views/modules/home/index.vue
  3. 76
      src/views/modules/informationArchive/elderlyArchives/cpts/add-old.vue
  4. 5
      src/views/modules/informationArchive/serviceTeamManagement/cpts/service-info.vue
  5. 13
      src/views/modules/informationArchive/serviceTeamManagement/cpts/volunteers-list.vue
  6. 14
      src/views/modules/informationArchive/serviceTeamManagement/index.vue
  7. 5
      src/views/modules/informationArchive/volunteerProfile/cpts/service-info.vue
  8. 21
      src/views/modules/informationArchive/volunteerProfile/cpts/service-team.vue
  9. 44
      src/views/modules/informationArchive/volunteerProfile/index.vue
  10. 99
      src/views/modules/volunteerService/serviceRecord/cpts/service-info.vue
  11. 73
      src/views/modules/volunteerService/serviceRecord/index.vue

2
.env.production.sit

@ -1,6 +1,6 @@
NODE_ENV=production NODE_ENV=production
# VUE_APP_API_SERVER = https://epmet-test.elinkservice.cn/api # VUE_APP_API_SERVER = https://epmet-test.elinkservice.cn/api
VUE_APP_API_SERVER = http://219.146.91.110:30801/api VUE_APP_API_SERVER = http://192.168.1.140/api
# VUE_APP_API_SERVER = http://192.168.1.60:8080/api # VUE_APP_API_SERVER = http://192.168.1.60:8080/api
VUE_APP_BIPASS_API_SERVER = http://dcommunity-dev.elinkservice.cn:30801/linkdata/linkdata-gateway/route VUE_APP_BIPASS_API_SERVER = http://dcommunity-dev.elinkservice.cn:30801/linkdata/linkdata-gateway/route
VUE_APP_NODE_ENV=prod:sit VUE_APP_NODE_ENV=prod:sit

53
src/views/modules/home/index.vue

@ -171,7 +171,7 @@
<div class="header" style="display: flex;align-items: center;justify-content: space-between;"> <div class="header" style="display: flex;align-items: center;justify-content: space-between;">
<div class="newqsa"><span>服务团排名</span> <span style="color: #cccccc;"></span> <div class="newqsa"><span>服务团排名</span> <span style="color: #cccccc;"></span>
</div> </div>
<div class="update-settings" @click="jumpToJuMin()" v-show="showAll"> <div class="update-settings" @click="jumpToJuMin()" >
<el-select v-model="serviceGroupType" placeholder="请选择" style="width: 110px;" @change="handelClickToRank"> <el-select v-model="serviceGroupType" placeholder="请选择" style="width: 110px;" @change="handelClickToRank">
<el-option v-for="item in listOfServiceGroups" :key="item.value" :label="item.name" :value="item.value"> <el-option v-for="item in listOfServiceGroups" :key="item.value" :label="item.name" :value="item.value">
</el-option> </el-option>
@ -186,14 +186,14 @@
{{ index + 1 }} {{ index + 1 }}
</div> </div>
<div class="team-content"> <div class="team-content">
<div class="team-name">{{ team.name }}</div> <div class="team-name">{{ team.agencyName }}</div>
<div class="team-stats"> <div class="team-stats">
志愿者 志愿者
<span class="highlight">{{ team.volunteers }}</span>   <span class="highlight">{{ team.volunteerNum }}</span>  
服务时长 服务时长
<span class="highlight">{{ team.hours.toLocaleString() }}</span> 小时  <span class="highlight">{{ team.serviceTime.toLocaleString() }}</span> 小时 
积分 积分
<span class="highlight">{{ team.points }}</span> <span class="highlight">{{ team.pointNum }}</span>
</div> </div>
</div> </div>
</div> </div>
@ -226,30 +226,18 @@ export default {
} }
return { return {
teams: [ teams: [
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
{ name: "XX区XX服务团", volunteers: 11, hours: 1250, points: 3680 },
], ],
listOfServiceGroups: [ listOfServiceGroups: [
{ {
value: 0, value: "volunteerNum",
name: "志愿者" name: "志愿者"
}, },
{ {
value: 1, value: "serviceTime",
name: "服务时长" name: "服务时长"
}, },
{ {
value: 2, value: "pointNum",
name: "积分" name: "积分"
}, },
], ],
@ -349,18 +337,19 @@ export default {
// //
async getlistServiceGroups() { async getlistServiceGroups() {
const url = "/actual/base/resiCategory/intelligentPredictioncategoryCountList"; const url = "/voluntary/volunteerInfo/homePage/orderByVolunteerInfo";
// let params = { let params = {
// }; agencyId: this.$store.state.user.agencyId,
// const { data, code, msg } = await requestGet(url, params); orderBy:this.serviceGroupType
// if (code === 0) { };
// if (data) { const { data, code, msg } = await requestGet(url, params);
// this.teams = data; if (code === 0) {
if (data) {
// } this.teams = data;
// } else { }
// this.$message.error(msg); } else {
// } this.$message.error(msg);
}
}, },
handleChangeAgency(val) { handleChangeAgency(val) {

76
src/views/modules/informationArchive/elderlyArchives/cpts/add-old.vue

@ -10,7 +10,7 @@
<el-form-item label="所属服务团" prop="volunteerOrgId" label-width="100px"> <el-form-item label="所属服务团" prop="volunteerOrgId" label-width="100px">
<el-select class="u-item-width-normal" v-model.trim="formData.volunteerOrgId" <el-select class="u-item-width-normal" v-model.trim="formData.volunteerOrgId"
size="small" placeholder="请选择" clearable> size="small" placeholder="请选择" clearable>
<el-option v-for="item in typeList" :key="item.typeName" :label="item.typeName" <el-option v-for="item in typeList" :key="item.id" :label="item.orgName"
:value="item.id"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
@ -67,7 +67,7 @@
<el-upload :headers="$getElUploadHeaders()" ref="upload" :action="uploadUlr" :limit="1" <el-upload :headers="$getElUploadHeaders()" ref="upload" :action="uploadUlr" :limit="1"
:accept="'.jpg,.png,.jpeg,.bmp'" :with-credentials="true" :show-file-list="false" :accept="'.jpg,.png,.jpeg,.bmp'" :with-credentials="true" :show-file-list="false"
:auto-upload="true" :on-success="handleExcelSuccess" :auto-upload="true" :on-success="handleExcelSuccess"
:before-upload="beforeExcelUpload" :http-request="uploadHttpRequest"> >
<img style="width: 180px;height: 180px;" v-if="formData.headImg" <img style="width: 180px;height: 180px;" v-if="formData.headImg"
:src="formData.headImg"> :src="formData.headImg">
<img style="width: 180px;height: 180px;" v-else <img style="width: 180px;height: 180px;" v-else
@ -200,15 +200,15 @@
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<el-form-item label="服务需求" prop="albumName" label-width="100px" class="label-wrap"> <el-form-item label="服务需求" prop="albumName" label-width="100px" class="label-wrap">
<el-select class="u-item-width-normal" v-model.trim="formData.typeId" size="small" <el-select class="u-item-width-normal" v-model.trim="formData.typefatherId" size="small"
placeholder="请选择" clearable> placeholder="请选择" clearable @change="handleChidren">
<el-option v-for="item in ServiceGroupList" :key="item.value" :label="item.label" <el-option v-for="item in ServiceGroupList" :key="item.id" :label="item.categoryName"
:value="item.value"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
<el-select style="margin-left: 10px;" class="u-item-width-normal" <el-select style="margin-left: 10px;" class="u-item-width-normal"
v-model.trim="formData.typeId" size="small" placeholder="请选择" clearable> v-model.trim="formData.typeId" size="small" placeholder="请选择" clearable>
<el-option v-for="item in typeList" :key="item.typeName" :label="item.typeName" <el-option v-for="item in childrenList" :key="item.id" :label="item.categoryName"
:value="item.id"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
@ -303,7 +303,7 @@
<script> <script>
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import { Loading } from 'element-ui' // Loading import { Loading } from 'element-ui' // Loading
import { requestPost } from '@/js/dai/request' import { requestPost,requestGet } from '@/js/dai/request'
import Tinymce from '@c/tinymce2/index.vue' import Tinymce from '@c/tinymce2/index.vue'
import daiMap from "@/utils/dai-map"; import daiMap from "@/utils/dai-map";
import util from '@js/util.js'; import util from '@js/util.js';
@ -321,6 +321,7 @@
export default { export default {
data() { data() {
return { return {
childrenList:[],
genderList:[ genderList:[
{ {
value:1, value:1,
@ -370,6 +371,7 @@
label: "本级和直接上下级组织共享" label: "本级和直接上下级组织共享"
}, },
], ],
typeList:[],
ethnicList:[], ethnicList:[],
formType:"add", formType:"add",
agencyIdArray: [], agencyIdArray: [],
@ -410,9 +412,9 @@
deathFlag: '', deathFlag: '',
deathRemark: '' deathRemark: ''
}, },
pid:0,
elderlyList:[], elderlyList:[],
healthStatusList:[], healthStatusList:[],
corganizerList: [],
uploadUrl: window.SITE_CONFIG['apiURL'] + '/oss/file/uploadqrcodeV2', uploadUrl: window.SITE_CONFIG['apiURL'] + '/oss/file/uploadqrcodeV2',
customerId: localStorage.getItem('customerId'), customerId: localStorage.getItem('customerId'),
hasHePassedAway: [ hasHePassedAway: [
@ -477,21 +479,54 @@
this.getelderlyStatus() this.getelderlyStatus()
this.gethealthStatus() this.gethealthStatus()
this.loadNations() this.loadNations()
this.getServiceGroup() this.getVolunteerOrg()
this.loadTable()
}, },
methods: { methods: {
// async handleChidren(row) {
async getServiceGroup() { console.log(row, "sdfkl");
const {code, data,msg } = await this.$http.post('sys/dict/data/dictTree/elder_service_group'); const url = "/voluntary/serviceCategory/page"
console.log(data,"dkjsdkl"); const params = {
this.ServiceGroupList = data || []; pid: row
// if (code === 0) { }
let { data, msg, code } = await requestGet(url, params)
// } else { if (code == 0) {
// this.$message.error(msg); this.childrenList = data.list
// }
} else {
this.$message.error(msg)
}
}, },
//
async loadTable () {
const url = "/voluntary/serviceCategory/page"
const params={
pid:this.pid
}
let {data,msg,code } = await requestGet(url,params)
if(code == 0){
this.ServiceGroupList = data.list
}else{
this.$message.error(msg)
}
},
//
async getVolunteerOrg () {
const url = "/voluntary/volunteerOrg/page"
let params = {
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.typeList = data.list
} else {
this.$message.error(msg)
}
},
async loadNations() { async loadNations() {
let url = '/sys/dict/data/nation' let url = '/sys/dict/data/nation'
await requestPost(url, {}).then(res=>{ await requestPost(url, {}).then(res=>{
@ -548,7 +583,6 @@
}, },
async handleComfirm() { async handleComfirm() {
this.formData.volunteerOrgId="1911679232436404226"
if(!this.formData.volunteerOrgId){ if(!this.formData.volunteerOrgId){
return this.$message.error("请选择所属服务团") return this.$message.error("请选择所属服务团")
} }

5
src/views/modules/informationArchive/serviceTeamManagement/cpts/service-info.vue

@ -189,11 +189,6 @@
</el-row> </el-row>
</el-form> </el-form>
</div> </div>
<div style="text-align: right ; margin-right: 20px;">
<el-button size="small" @click="handleCancle"> </el-button>
<el-button size="small" type="primary" @click="handleComfirm"> </el-button>
</div>
</div> </div>
</template> </template>

13
src/views/modules/informationArchive/serviceTeamManagement/cpts/volunteers-list.vue

@ -83,8 +83,7 @@ methods: {
}, },
async initForm(row) { async initForm(row) {
console.log(row,"dsclkjdslk"); console.log(row,"dsclkjdslk");
// this.formData=row this.getTableData(row)
this.getTableData()
}, },
handleSizeChange(val) { handleSizeChange(val) {
@ -96,15 +95,15 @@ methods: {
this.pageNo = val; this.pageNo = val;
this.getTableData(); this.getTableData();
}, },
async getTableData() { async getTableData(row) {
const url = "/actual/base/communityOneTableDownloadRecord/page"; const url = "/voluntary/volunteerInfo/page";
const { pageSize, pageNo, formData } = this; const { pageSize, pageNo, formData } = this;
const { data, code, msg } = await requestGet(url, { const { data, code, msg } = await requestPost(url, {
pageSize, pageSize,
pageNo, pageNo,
taskId:this.taskId, volunteerOrgId:row.id,
}); });
if (code === 0) {`` if (code === 0) {
this.total = data.total || 0; this.total = data.total || 0;
this.tableData = data.list this.tableData = data.list
? data.list.map((item) => { ? data.list.map((item) => {

14
src/views/modules/informationArchive/serviceTeamManagement/index.vue

@ -64,7 +64,7 @@
<el-table-column prop="address" header-align="center" align="center" label="志愿者成员"> <el-table-column prop="address" header-align="center" align="center" label="志愿者成员">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" style="color:#1C6AFD;" size="small" @click="handleVoleer(scope.row)">1</el-button> <el-button type="text" style="color:#1C6AFD;" size="small" @click="handleVoleer(scope.row)">{{scope.row.numberNum}}</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -72,19 +72,11 @@
</el-table-column> </el-table-column>
<el-table-column prop="familyPrimaryContactPhone" header-align="center" align="center" label="服务积分"> <el-table-column prop="familyPrimaryContactPhone" header-align="center" align="center" label="服务积分">
</el-table-column> </el-table-column>
<el-table-column prop="subAllowance" header-align="center" align="center" label="审核"> <el-table-column prop="createdTime" header-align="center" align="center" label="注册时间">
<template slot-scope="scope">
</template>
</el-table-column>
<el-table-column prop="hlepThePoor" header-align="center" align="center" label="注册时间">
<template slot-scope="scope">
</template>
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="230" header-align="center" align="center" class="operate"> <el-table-column label="操作" fixed="right" width="230" header-align="center" align="center" class="operate">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" style="color:#1C6AFD;" size="small" @click="handleDetail(scope.row)">查看</el-button> <el-button type="text" style="color:#1C6AFD;" size="small" @click="handleDetail(scope.row)">查看</el-button>
<el-button type="text" style="color:#1C6AFD;" size="small"
@click="handleToExamine(scope.row)">审核</el-button>
<el-button type="text" style="color:rgb(28, 106, 253);" size="small" <el-button type="text" style="color:rgb(28, 106, 253);" size="small"
@click="handleDelete(scope.row)">删除</el-button> @click="handleDelete(scope.row)">删除</el-button>
</template> </template>
@ -269,7 +261,7 @@
this.getElderlyInfo() this.getElderlyInfo()
}, },
async getElderlyInfo () { async getElderlyInfo () {
const url = "/voluntary/volunteerOrg/applicationList" const url = "/voluntary/volunteerOrg/page"
let params = { let params = {
...this.formData, ...this.formData,
} }

5
src/views/modules/informationArchive/volunteerProfile/cpts/service-info.vue

@ -84,8 +84,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="兴趣特长" prop="communitySecretaryPhone" label-width="130px"> <el-form-item label="兴趣特长" prop="identityName" label-width="130px">
<div>{{this.formData.communitySecretaryPhone }}</div> <div>{{this.formData.identityName }}</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -117,6 +117,7 @@
export default { export default {
data() { data() {
return { return {
genderList:[ genderList:[
{ {
value:1, value:1,

21
src/views/modules/informationArchive/volunteerProfile/cpts/service-team.vue

@ -2,12 +2,12 @@
<div class="" style=" padding: 20px;"> <div class="" style=" padding: 20px;">
<el-form :model="formData" ref="ref_searchform" :label-width="'120px'"> <el-form :model="formData" ref="ref_searchform" :label-width="'120px'">
<div> <div>
<el-form-item label="审核结果" prop="name"> <el-form-item label="审核结果" prop="approve">
<el-radio v-model="toExamine" label="0">备选项</el-radio> <el-radio v-model="formData.approve" :label=1>通过</el-radio>
<el-radio v-model="toExamine" label="1">备选项</el-radio> <el-radio v-model="formData.approve" :label=2>驳回</el-radio>
</el-form-item> </el-form-item>
<el-form-item label="不通过原因" prop="mobile"> <el-form-item label="不通过原因" prop="approveRemark" v-if="formData.approve===2">
<el-input v-model.trim="formData.mobile" size="small" class="item_width_1" clearable placeholder="请输入"> <el-input v-model.trim="formData.approveRemark" size="small" class="item_width_1" clearable placeholder="请输入">
</el-input> </el-input>
</el-form-item> </el-form-item>
</div> </div>
@ -38,7 +38,9 @@
return { return {
toExamine:0, toExamine:0,
id:"", id:"",
formData:{} formData:{
}
} }
@ -50,9 +52,9 @@
}, },
methods: { methods: {
async initForm(id) { async initForm(row) {
this.startLoading() this.startLoading()
this.id=id this.formData.id=row.id
this.endLoading() this.endLoading()
}, },
@ -60,7 +62,8 @@
this.HandleExamine() this.HandleExamine()
}, },
async HandleExamine() { async HandleExamine() {
let url = '/actual/base/albums/update' let url = '/voluntary/volunteerInfo/approveById'
console.log(this.formData,"sdfkjsdfjkl");
const { data, code, internalMsg } = await requestPost(url, this.formData) const { data, code, internalMsg } = await requestPost(url, this.formData)
if (code === 0) { if (code === 0) {
this.$message({ this.$message({

44
src/views/modules/informationArchive/volunteerProfile/index.vue

@ -27,8 +27,8 @@
<el-input v-model.trim="formData.mobile" size="small" class="item_width_1" clearable placeholder="请输入关键字"> <el-input v-model.trim="formData.mobile" size="small" class="item_width_1" clearable placeholder="请输入关键字">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="审核状态" prop="hlepThePoor"> <el-form-item label="审核状态" prop="approve">
<el-select class="item_width_1" v-model.trim="formData.hlepThePoor" size="small" placeholder="请选择" <el-select class="item_width_1" v-model.trim="formData.approve" size="small" placeholder="请选择"
clearable> clearable>
<el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
@ -67,7 +67,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="name" header-align="center" align="center" label="真实姓名"> <el-table-column prop="name" header-align="center" align="center" label="真实姓名">
</el-table-column> </el-table-column>
<el-table-column prop="gender" header-align="center" align="center" label="兴趣特长"> <el-table-column prop="identityName" header-align="center" align="center" label="兴趣特长">
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="手机号"> <el-table-column prop="mobile" header-align="center" align="center" label="手机号">
</el-table-column> </el-table-column>
@ -79,14 +79,18 @@
</el-table-column> </el-table-column>
<el-table-column prop="points" header-align="center" align="center" label="积分"> <el-table-column prop="points" header-align="center" align="center" label="积分">
</el-table-column> </el-table-column>
<el-table-column prop="birthday" header-align="center" align="center" label="审核"> <el-table-column prop="approve" header-align="center" align="center" label="审核">
<template slot-scope="scope">
<div>{{ scope.row.approve===0?"待审核":scope.row.approve===1?"已通过":"驳回" }}</div>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="createdTime" header-align="center" align="center" label="注册时间"> <el-table-column prop="createdTime" header-align="center" align="center" label="注册时间">
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="230" header-align="center" align="center" class="operate"> <el-table-column label="操作" fixed="right" width="230" header-align="center" align="center" class="operate">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" style="color:#1C6AFD;" size="small" @click="handleDetail(scope.row)">查看</el-button> <el-button type="text" style="color:#1C6AFD;" size="small" @click="handleDetail(scope.row)">查看</el-button>
<el-button type="text" style="color:#1C6AFD;" size="small" <el-button v-if="scope.row.approve===0" type="text" style="color:#1C6AFD;" size="small"
@click="handleToExamine(scope.row)">审核</el-button> @click="handleToExamine(scope.row)">审核</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -132,6 +136,12 @@
export default { export default {
data () { data () {
return { return {
identityList: [{ name: '医疗急救', key: '0' },
{ name: '体育竞技', key: '1' },
{ name: '驾驶运输', key: '2' },
{ name: '法律服务', key: '3' },
{ name: '信息技术', key: '4' },
{ name: '经营管理', key: '5' }, { name: '公共关系', key: '6' }, { name: '教育培训', key: '7' }, { name: '电器维修', key: '8' }, { name: '安全保卫', key: '9' }, { name: '财会金融', key: '10' }, { name: '设计创意', key: '11' }, { name: '客服接待', key: '12' }, { name: '物业养护', key: '13' }, { name: '新闻写作', key: '14' }, { name: '精通外语', key: '15' }, { name: '音乐', key: '16' }, { name: '心理咨询', key: '17' }, { name: '护理照护', key: '18' }, { name: '手工制作', key: '19' }, { name: '文化艺术', key: '20' }, { name: '网络技术', key: '21' }, { name: '摄像摄影', key: '22' }],
toExamineShow:false, toExamineShow:false,
organizationList: [], organizationList: [],
showList:false, showList:false,
@ -150,11 +160,15 @@
statusList: [ statusList: [
{ {
value: 0, value: 0,
label: "不通过" label: "待审核"
}, },
{ {
value: 1, value: 1,
label: "通过" label: "已通过 "
},
{
value: 1,
label: "驳回"
}, },
], ],
elderlyList:[], elderlyList:[],
@ -211,6 +225,7 @@
methods: { methods: {
closeExamine(){ closeExamine(){
this.toExamineShow=false this.toExamineShow=false
this.getElderlyInfo()
}, },
// //
@ -297,6 +312,19 @@
} }
if (code === 0) { if (code === 0) {
this.tableData = data.list this.tableData = data.list
this.tableData.forEach(item => {
console.log(item,"dsflkjsdlk;");
item.identityName = item.identityType
.map(typeValue => {
console.log(typeValue.toString(),"sdflj;sdfl;");
const match = this.identityList.find(identity => identity.key === typeValue.toString());
return match ? match.name : '';
})
.filter(name => name !== '') //
.join(','); //
});
console.log(this.tableData,"dslkjdslk");
} else { } else {
this.$message.error(msg) this.$message.error(msg)
@ -356,7 +384,7 @@
handleToExamine (row,type) { handleToExamine (row,type) {
this.toExamineShow = true this.toExamineShow = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.ref_examine.initForm(row.id, type) this.$refs.ref_examine.initForm(row, type)
}) })
}, },

99
src/views/modules/volunteerService/serviceRecord/cpts/service-info.vue

@ -8,42 +8,42 @@
<td class="info-label" style="width: 200px;">老人姓名</td class="info-label"> <td class="info-label" style="width: 200px;">老人姓名</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
<el-button type="text" style="color:#1C6AFD;" size="small" @click="handleEldInfo(formData)"> <el-button type="text" style="color:#1C6AFD;" size="small" @click="handleEldInfo(formData)">
{{ formData.address }} [查看] {{ elderlyDate.name }} [查看]
</el-button> </el-button>
</td class="info-label"> </td class="info-label">
<td class="info-label" style="">性别</td class="info-label"> <td class="info-label" style="">性别</td class="info-label">
<td class="info-label" style="">{{ formData.address ? '男' : '女' }}</td class="info-label"> <td class="info-label" style="">{{ elderlyDate.gender ? '男' : '女' }}</td class="info-label">
<td class="info-label" style="">年龄</td class="info-label"> <td class="info-label" style="">年龄</td class="info-label">
<td class="info-label" style="">{{ formData.address }}</td class="info-label"> <td class="info-label" style="">{{ elderlyDate.address }}</td class="info-label">
</tr> </tr>
<tr> <tr>
<td class="info-label" style="">主要联系人姓名</td class="info-label"> <td class="info-label" style="">主要联系人姓名</td class="info-label">
<td class="info-label" style="">{{ formData.address }} <td class="info-label" style="">{{ elderlyDate.familyPrimaryContactName }}
</td class="info-label"> </td class="info-label">
<td class="info-label" style="">主要联系人电话</td class="info-label"> <td class="info-label" style="">主要联系人电话</td class="info-label">
<td class="info-label" style="">{{ formData.address }} <td class="info-label" style="">{{ elderlyDate.familyPrimaryContactPhone }}
</td class="info-label">
<td class="info-label" style="">与老人关系</td class="info-label">
<td class="info-label" style="">{{ formData.address }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
<tr> <tr>
<td class="info-label" style="">地址</td class="info-label"> <td class="info-label" style="">地址</td class="info-label">
<td class="info-label" colspan="5" style="">{{ formData.address }}</td class="info-label"> <td class="info-label" colspan="5" style="">{{ elderlyDate.address }}</td class="info-label">
</tr> </tr>
</table> </table>
</el-card> </el-card>
<div class="newqsa"><span class="newqsa_text">到岗志愿者</span></div> <div class="newqsa"><span class="newqsa_text">到岗志愿者</span></div>
<div style="padding:10px 20px;"> <div style="padding:10px 20px;">
<el-table class="table" :data="tableData" border :height="tableHeight" v-loading="tableLoading" <el-table class="table" :data="formData.arrivers" border v-loading="tableLoading"
style="width: 100%;margin-top:16px"> style="width: 100%;margin-top:16px">
<el-table-column prop="orgName" header-align="center" align="center" label="所属服务团"> <el-table-column prop="volunteerOrgName" header-align="center" align="center" label="所属服务团">
</el-table-column> </el-table-column>
<el-table-column prop="operator" header-align="center" align="center" label="志愿者姓名"> <el-table-column prop="name" header-align="center" align="center" label="志愿者姓名">
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="微信昵称"> <el-table-column prop="nickName" header-align="center" align="center" label="微信昵称">
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="性别"> <el-table-column prop="gender" header-align="center" align="center" label="性别">
<template slot-scope="scope">
<div>{{ scope.row.gender==="2"?"女":"男" }}</div>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="手机号"> <el-table-column prop="mobile" header-align="center" align="center" label="手机号">
</el-table-column> </el-table-column>
@ -63,37 +63,37 @@
<tr> <tr>
<td class="info-label">打卡志愿者</td class="info-label"> <td class="info-label">打卡志愿者</td class="info-label">
<td class="info-label" colspan="5" style=""> <td class="info-label" colspan="5" style="">
{{ formData.address }} {{ formData.signInVolunteerName }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
<tr> <tr>
<td class="info-label" style="">服务项目</td class="info-label"> <td class="info-label" style="">服务项目</td class="info-label">
<td class="info-label" colspan="5" style=""> <td class="info-label" colspan="5" style="">
{{ formData.address }} {{ formData.categoryLabels.join(",") }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
<tr> <tr>
<td class="info-label" style="">服务时长</td class="info-label"> <td class="info-label" style="">服务时长</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
{{ formData.address }} {{ formData.serviceTime }}
</td class="info-label"> </td class="info-label">
<td class="info-label" style="">获取积分</td class="info-label"> <td class="info-label" style="">获取积分</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
{{ formData.address }} {{ formData.points }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
<tr> <tr>
<td class="info-label" style="">服务描述</td class="info-label"> <td class="info-label" style="">服务描述</td class="info-label">
<td class="info-label" colspan="5" style=""> <td class="info-label" colspan="5" style="">
{{ formData.address }} {{ formData.description }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
<tr style="height: 100px;"> <tr style="height: 100px;">
<td class="info-label" style="">视频图片</td class="info-label"> <td class="info-label" style="">视频图片</td class="info-label">
<td class="info-label" colspan="5" style=""> <td class="info-label" colspan="5" style="">
<div v-for="(item,index) in tupian"> <div v-for="(item,index) in formData.attachmentsJson">
<el-image style="width: 100px; height: 100px" :src="item.url" :preview-src-list="srcList"> <el-image style="width: 100px; height: 100px" :src="item.url" :preview-src-list="formData.attachmentsJson">
</el-image> </el-image>
</div> </div>
</td class="info-label"> </td class="info-label">
@ -101,21 +101,21 @@
<tr> <tr>
<td class="info-label" style="">到岗打卡时间</td class="info-label"> <td class="info-label" style="">到岗打卡时间</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
{{ formData.address }} {{ formData.signInTime }}
</td class="info-label"> </td class="info-label">
<td class="info-label" style="">到岗打卡地址</td class="info-label"> <td class="info-label" style="">到岗打卡地址</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
{{ formData.address }} {{ formData.signInAddress }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
<tr> <tr>
<td class="info-label" style="">离岗打卡时间</td class="info-label"> <td class="info-label" style="">离岗打卡时间</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
{{ formData.address }} {{ formData.signOutTime }}
</td class="info-label"> </td class="info-label">
<td class="info-label" style="">离岗打卡地址</td class="info-label"> <td class="info-label" style="">离岗打卡地址</td class="info-label">
<td class="info-label" style=""> <td class="info-label" style="">
{{ formData.address }} {{ formData.signOutAddress }}
</td class="info-label"> </td class="info-label">
</tr> </tr>
</table> </table>
@ -137,7 +137,7 @@
import infoOld from "../../../informationArchive/elderlyArchives/cpts/info-old.vue" import infoOld from "../../../informationArchive/elderlyArchives/cpts/info-old.vue"
import daiMap from "@/utils/dai-map"; import daiMap from "@/utils/dai-map";
import { Loading } from 'element-ui' // Loading import { Loading } from 'element-ui' // Loading
import { requestPost } from '@/js/dai/request' import { requestPost,requestGet} from '@/js/dai/request'
var map var map
var search var search
var markers var markers
@ -148,6 +148,7 @@
export default { export default {
data() { data() {
return { return {
elderlyDate:{},
toEldInfo:false, toEldInfo:false,
tupian:[], tupian:[],
tableLoading: false, tableLoading: false,
@ -165,6 +166,19 @@
}, },
methods: { methods: {
async getElderlyInfo (row) {
const url ="/voluntary/elderlyInfo/page"
let params ={
idNum:row
}
const { data, code, msg } = await requestGet(url, params)
if (code === 0) {
this.elderlyDate = data.list
} else {
this.$message.error(msg)
}
},
// init // init
initMap(latitude, longitude) { initMap(latitude, longitude) {
console.log(latitude, longitude, "564564568"); console.log(latitude, longitude, "564564568");
@ -197,41 +211,32 @@
}, },
async getElderlyInfo () { async getServiceRecDetail (row) {
if (this.formData.agencyId) { const url = "/voluntary/op/service/pc/serviceRecDetail"
this.formData.agencyId=this.formData.agencyId.toString()
}
const url = "/voluntary/volunteerOrg/applicationList"
let params = { let params = {
...this.formData, serviceRecId:row
} }
const { data, code, msg } = await requestGet(url, params)
const { data, code, msg } = await requestPost(url, params)
if (code === 0) { if (code === 0) {
this.formData = data.list console.log(data,"sdf;klsdf;lk");
this.formData=data
} else { } else {
this.$message.error(msg) this.$message.error(msg)
} }
this.$nextTick(() => { this.$nextTick(() => {
if (!map) { if (!map) {
console.log("map", map,this.formData.latitude, this.formData.longitude) this.initMap(this.formData.signOutLatitude, this.formData.signOutLongitude);
// this.initMap(this.formData.latitude, this.formData.longitude);
this.initMap("80", "120");
console.log("map", map,this.formData.latitude, this.formData.longitude)
} else { } else {
console.log("map1", map,this.formData.latitude, this.formData.longitude) map.setCenter(this.formData.signOutLatitude, this.formData.signOutLongitude);
map.setCenter(this.formData.latitude, this.formData.longitude); map.setMarker(this.formData.signOutLatitude, this.formData.signOutLongitude);
map.setMarker(this.formData.latitude, this.formData.longitude);
console.log("mapmapmap", map)
} }
}) })
}, },
async initForm(row) { async initForm(row) {
this.startLoading() this.startLoading()
console.log(row,"dsfdjkl"); this.getServiceRecDetail(row.serviceRecId)
this.formData=row this.getElderlyInfo(row.oldPeopleIdCard)
this.getElderlyInfo()
this.endLoading() this.endLoading()
}, },

73
src/views/modules/volunteerService/serviceRecord/index.vue

@ -12,45 +12,45 @@
<el-form-item label="所属服务团" prop="orgName"> <el-form-item label="所属服务团" prop="orgName">
<el-select class="item_width_1" v-model.trim="formData.volunteerOrgId" size="small" <el-select class="item_width_1" v-model.trim="formData.volunteerOrgId" size="small"
placeholder="请选择" clearable> placeholder="请选择" clearable>
<el-option v-for="item in typeList" :key="item.typeName" :label="item.typeName" <el-option v-for="item in typeList" :key="item.id" :label="item.orgName"
:value="item.id"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="志愿者姓名" prop="operator"> <el-form-item label="志愿者姓名" prop="volunteerName">
<el-input v-model.trim="formData.operator" size="small" class="item_width_1" clearable <el-input v-model.trim="formData.volunteerName" size="small" class="item_width_1" clearable
placeholder="请输入关键字"> placeholder="请输入关键字">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="志愿者手机号" prop="mobile"> <el-form-item label="志愿者手机号" prop="volunteerMobile">
<el-input v-model.trim="formData.mobile" size="small" class="item_width_1" clearable <el-input v-model.trim="formData.volunteerMobile" size="small" class="item_width_1" clearable
placeholder="请输入关键字"> placeholder="请输入关键字">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="老人姓名" prop="operator"> <el-form-item label="老人姓名" prop="oldPeopleName">
<el-input v-model.trim="formData.operator" size="small" class="item_width_1" clearable <el-input v-model.trim="formData.oldPeopleName" size="small" class="item_width_1" clearable
placeholder="请输入关键字"> placeholder="请输入关键字">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="老人身份证" prop="mobile"> <el-form-item label="老人身份证" prop="oldPeopleIdCard">
<el-input v-model.trim="formData.mobile" size="small" class="item_width_1" clearable <el-input v-model.trim="formData.oldPeopleIdCard" size="small" class="item_width_1" clearable
placeholder="请输入关键字"> placeholder="请输入关键字">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="服务类别" prop="auditStatus"> <el-form-item label="服务类别" prop="serviceCategory">
<el-select class="u-item-width-normal" v-model.trim="formData.statusCategory" size="small" <el-select class="u-item-width-normal" v-model.trim="formData.serviceCategory" size="small"
placeholder="请选择" clearable> placeholder="请选择" clearable>
<el-option v-for="item in elderlyList" :key="item.value" :label="item.label" <el-option v-for="item in elderlyList" :key="item.value" :label="item.label"
:value="item.value"> :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="打卡时间" prop="createTimeFrom" label-width="100px"> <el-form-item label="打卡时间" prop="signInTimeFrom" label-width="100px">
<el-date-picker class="u-item-width-normal" v-model="formData.createTimeFrom" type="datetime" <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="选择日期"> value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期">
</el-date-picker> </el-date-picker>
<span style="margin: 0 10px;"></span> <span style="margin: 0 10px;"></span>
<el-date-picker class="u-item-width-normal" v-model="formData.createTimeTo" type="datetime" <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="选择日期"> value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd HH:mm:ss" placeholder="选择日期">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
@ -70,23 +70,26 @@
<el-table class="table" :data="tableData" border :height="tableHeight" v-loading="tableLoading" <el-table class="table" :data="tableData" border :height="tableHeight" v-loading="tableLoading"
style="width: 100%;margin-top:16px" @select-all="selectAll" @selection-change="handelSelection"> 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 type="selection" fixed="left" align="center" width="50"></el-table-column>
<el-table-column prop="agencyName" header-align="center" align="center" label="所属组织"> <el-table-column prop="orgNamePath" header-align="center" align="center" label="所属组织">
</el-table-column> </el-table-column>
<el-table-column prop="orgName" header-align="center" align="center" label="所属服务团"> <el-table-column prop="volunteerOrgName" header-align="center" align="center" label="所属服务团">
</el-table-column> </el-table-column>
<el-table-column prop="operator" header-align="center" align="center" label="老人姓名"> <el-table-column prop="oldPeopleName" header-align="center" align="center" label="老人姓名">
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="老人身份证号"> <el-table-column prop="oldPeopleIdCard" header-align="center" align="center" label="老人身份证号">
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="服务项目"> <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>
<el-table-column prop="mobile" header-align="center" align="center" label="服务时长(小时)"> <el-table-column prop="serviceTime" header-align="center" align="center" label="服务时长(小时)">
</el-table-column> </el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="积分"> <el-table-column prop="pointNum" header-align="center" align="center" label="积分">
</el-table-column> </el-table-column>
<el-table-column prop="createTime" header-align="center" align="center" label="到岗打卡时间"> <el-table-column prop="signInTime" header-align="center" align="center" label="到岗打卡时间">
</el-table-column> </el-table-column>
<el-table-column prop="createTime" header-align="center" align="center" label="离岗打卡时间"> <el-table-column prop="signOutTime" header-align="center" align="center" label="离岗打卡时间">
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="230" header-align="center" align="center" <el-table-column label="操作" fixed="right" width="230" header-align="center" align="center"
class="operate"> class="operate">
@ -197,13 +200,27 @@
async mounted () { async mounted () {
// //
const { user } = this.$store.state const { user } = this.$store.state
this.agencyId = user.agencyId this.formData.agencyId = user.agencyId
this.getFormInfo() this.getFormInfo()
this.getElderlyInfo() this.getElderlyInfo()
this.getelderlyStatus() this.getelderlyStatus()
this.getVolunteerOrg()
}, },
methods: { methods: {
//
async getVolunteerOrg() {
const url = "/voluntary/volunteerOrg/page"
let params = {
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.typeList = data.list
} else {
this.$message.error(msg)
}
},
closeDetail(){ closeDetail(){
this.detailShow=false this.detailShow=false
}, },
@ -294,9 +311,11 @@
}, },
async getElderlyInfo () { async getElderlyInfo () {
if (this.formData.agencyId) { if (this.formData.agencyId) {
this.formData.agencyId=this.formData.agencyId.toString() // this.formData.agencyId=this.formData.agencyId.toString()
}
const url = "/voluntary/volunteerOrg/applicationList" }
this.formData.agencyId="7b6f9a9f9f38d5f9fa7ce94a93d6eb28"
const url = "/voluntary/op/service/pc/serviceRecs"
let params = { let params = {
...this.formData, ...this.formData,

Loading…
Cancel
Save