lijinlong
李劲龙 2 years ago
parent 9a09703913
commit 8d2cbc07ff

@ -64,8 +64,8 @@ export function canyuList(data) {
//新增邀请 //新增邀请
export function yaoqingAdd(data) { export function yaoqingAdd(data) {
return request({ return request({
url: '/zhiyuanzhe/invite', url: `/zhiyuanzhe/activity/inviteTwo/${data}`,
method: 'post', method: 'post',
data
}) })
} }

@ -9,26 +9,47 @@
import request from "@/utils/request"; import request from "@/utils/request";
export default { export default {
list(params){ list(params) {
return request({ return request({
url:'/zhiyuanzhe/activity/list', url: "/zhiyuanzhe/activity/list",
method:"get", method: "get",
params, params,
}) });
},
eventRecommendations(params) {
return request({
url: "/zhiyuanzhe/activity/eventRecommendations",
method: "get",
params,
});
},
eventInvitations(params) {
return request({
url: "/zhiyuanzhe/activity/eventInvitations",
method: "get",
params,
});
}, },
// 查看详情 // 查看详情
activity(id){ activity(id) {
return request({ return request({
url:'/zhiyuanzhe/activity/' + id, url: "/zhiyuanzhe/activity/" + id,
method:"get", method: "get",
}) });
}, },
// 参与活动 // 参与活动
zyzreport(data) { zyzreport(data) {
return request({ return request({
url:'/zhiyuanzhe/zyzreport', url: "/zhiyuanzhe/zyzreport",
method:"post", method: "post",
data data,
}) });
} },
} enroll(data) {
return request({
url: "/zhiyuanzhe/activity/enroll",
method: "post",
data,
});
},
};

@ -39,8 +39,14 @@
width="100" width="100"
> >
</el-table-column> </el-table-column>
<el-table-column prop="duration" label="服务时长"> </el-table-column> <!-- <el-table-column prop="duration" label="服务时长"> </el-table-column> -->
<el-table-column prop="duration" label="匹配度"> </el-table-column> <el-table-column prop="degreeOfMatch" label="匹配度">
<template slot-scope="scope">
<div class="degreeOfMatch">
<div>{{ scope.row.degreeOfMatch }}%</div>
</div>
</template></el-table-column
>
<el-table-column prop="publisher" label="活动举办方"> </el-table-column> <el-table-column prop="publisher" label="活动举办方"> </el-table-column>
<el-table-column prop="activityTime" label="参加时间"> <el-table-column prop="activityTime" label="参加时间">
@ -51,7 +57,7 @@
<el-table-column prop="involveStaus" label="状态"> <el-table-column prop="involveStaus" label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="activity"> <div class="activity">
<div>{{ scope.row.involveStaus == 1 ? "未报名" : "已报名" }}</div> <div>{{ scope.row.activityStatus == 2 ? "已报名" : "未报名" }}</div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
@ -65,6 +71,7 @@
<div <div
class="look" class="look"
@click="participation(scope.row)" @click="participation(scope.row)"
v-if="scope.row.activityStatus != 2"
> >
<!-- <img src="@/assets/images/look.png" alt=""> --> <!-- <img src="@/assets/images/look.png" alt=""> -->
<span>报名</span> <span>报名</span>
@ -147,6 +154,7 @@ export default {
pages: { pages: {
pageSize: 10, pageSize: 10,
pageNum: 1, pageNum: 1,
userId: this.$store.getters.userId,
}, },
total: 0, total: 0,
loading: false, loading: false,
@ -186,7 +194,7 @@ export default {
methods: { methods: {
// //
cleara() { cleara() {
this.getList("1") this.getList("1");
}, },
// //
changeValue(value) { changeValue(value) {
@ -195,6 +203,7 @@ export default {
this.pages = { this.pages = {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
userId: this.$store.getters.userId,
}; };
this.getList(); this.getList();
}, },
@ -206,11 +215,12 @@ export default {
this.pages = { this.pages = {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
userId: this.$store.getters.userId,
}; };
this.input.name = ""; this.input.name = "";
} }
let obj = { ...this.pages, ...this.input }; let obj = { ...this.pages, ...this.input };
let data = await this.$api.huodongtuijian.list(obj); let data = await this.$api.huodongtuijian.eventInvitations(obj);
if (data.code == 200) { if (data.code == 200) {
this.loading = false; this.loading = false;
this.tableData = data.rows; this.tableData = data.rows;
@ -293,8 +303,9 @@ export default {
}); });
let obj = { let obj = {
activityId: row.id, activityId: row.id,
userId: this.$store.getters.userId,
}; };
let data = await this.$api.huodongtuijian.zyzreport(obj); let data = await this.$api.huodongtuijian.enroll(obj);
// alert('submit!'); // alert('submit!');
if (data.code == 200) { if (data.code == 200) {
downloadLoadingInstance.close(); downloadLoadingInstance.close();

@ -39,8 +39,14 @@
width="100" width="100"
> >
</el-table-column> </el-table-column>
<el-table-column prop="duration" label="服务时长"> </el-table-column> <!-- <el-table-column prop="duration" label="服务时长"> </el-table-column> -->
<el-table-column prop="duration" label="匹配度"> </el-table-column> <el-table-column prop="degreeOfMatch" label="匹配度">
<template slot-scope="scope">
<div class="degreeOfMatch">
<div>{{ scope.row.degreeOfMatch }}%</div>
</div>
</template></el-table-column
>
<el-table-column prop="publisher" label="活动举办方"> </el-table-column> <el-table-column prop="publisher" label="活动举办方"> </el-table-column>
<el-table-column prop="activityTime" label="参加时间"> <el-table-column prop="activityTime" label="参加时间">
@ -51,7 +57,7 @@
<el-table-column prop="involveStaus" label="状态"> <el-table-column prop="involveStaus" label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="activity"> <div class="activity">
<div>{{ scope.row.involveStaus == 1 ? "未报名" : "已报名" }}</div> <div>{{ scope.row.activityStatus == 2 ? "已报名" : "未报名" }}</div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
@ -65,7 +71,7 @@
<div <div
class="look" class="look"
@click="participation(scope.row)" @click="participation(scope.row)"
v-if="scope.row.involveStaus == 2" v-if="scope.row.activityStatus != 2"
> >
<!-- <img src="@/assets/images/look.png" alt=""> --> <!-- <img src="@/assets/images/look.png" alt=""> -->
<span>报名</span> <span>报名</span>
@ -148,6 +154,7 @@ export default {
pages: { pages: {
pageSize: 10, pageSize: 10,
pageNum: 1, pageNum: 1,
userId: this.$store.getters.userId,
}, },
total: 0, total: 0,
loading: false, loading: false,
@ -187,7 +194,7 @@ export default {
methods: { methods: {
// //
cleara() { cleara() {
this.getList("1") this.getList("1");
}, },
// //
changeValue(value) { changeValue(value) {
@ -196,6 +203,7 @@ export default {
this.pages = { this.pages = {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
userId: this.$store.getters.userId,
}; };
this.getList(); this.getList();
}, },
@ -207,11 +215,12 @@ export default {
this.pages = { this.pages = {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
userId: this.$store.getters.userId,
}; };
this.input.name = ""; this.input.name = "";
} }
let obj = { ...this.pages, ...this.input }; let obj = { ...this.pages, ...this.input };
let data = await this.$api.huodongtuijian.list(obj); let data = await this.$api.huodongtuijian.eventRecommendations(obj);
if (data.code == 200) { if (data.code == 200) {
this.loading = false; this.loading = false;
this.tableData = data.rows; this.tableData = data.rows;
@ -294,8 +303,9 @@ export default {
}); });
let obj = { let obj = {
activityId: row.id, activityId: row.id,
userId: this.$store.getters.userId,
}; };
let data = await this.$api.huodongtuijian.zyzreport(obj); let data = await this.$api.huodongtuijian.enroll(obj);
// alert('submit!'); // alert('submit!');
if (data.code == 200) { if (data.code == 200) {
downloadLoadingInstance.close(); downloadLoadingInstance.close();

@ -69,7 +69,7 @@
:style="`background-image:url('${require('../../../../assets/images/profile.jpg')}')`" :style="`background-image:url('${require('../../../../assets/images/profile.jpg')}')`"
></div> ></div>
<div class="leftName"> <div class="leftName">
<div>{{ item.id }}</div> <div>{{ item.nickName }}</div>
<div class="mainTag"> <div class="mainTag">
<div <div
v-show="item != ''" v-show="item != ''"
@ -84,11 +84,18 @@
<div class="rightSub"> <div class="rightSub">
<div class="numPercen"> <div class="numPercen">
<span>匹配度:</span> <span>匹配度:</span>
<span>1%</span> <span>{{ item.degreeOfMatch }}%</span>
</div> </div>
<div class="itemBtn"> <div class="itemBtn" style="justify-content: center">
<div class="look" @click="looks1(item.id)"></div> <div class="look" @click="looks1(item.id)"></div>
<div class="looks" @click="invite(item)"></div> <div
class="looks"
style="margin:0 0 0 10px"
@click="invite(item)"
v-if="detailData.status == 1 && item.status == 0"
>
邀请
</div>
</div> </div>
</div> </div>
</div> </div>
@ -124,9 +131,9 @@
:style="`background-image:url('${require('../../../../assets/images/profile.jpg')}')`" :style="`background-image:url('${require('../../../../assets/images/profile.jpg')}')`"
></div> ></div>
<div class="leftName"> <div class="leftName">
<div>周爱</div> <div>{{ item.nickName }}</div>
<div class="mainTag"> <div class="mainTag">
<div <div
v-show="item != ''" v-show="item != ''"
v-for="(item, index) in item.arrlist" v-for="(item, index) in item.arrlist"
:key="index" :key="index"
@ -139,7 +146,7 @@
<div class="rightSub"> <div class="rightSub">
<div class="numPercen"> <div class="numPercen">
<span>匹配度:</span> <span>匹配度:</span>
<span>99%</span> <span>{{ item.degreeOfMatch }}%</span>
</div> </div>
<div class="itemBtn" style="justify-content: center"> <div class="itemBtn" style="justify-content: center">
<div class="look" @click="looks2(item)"></div> <div class="look" @click="looks2(item)"></div>
@ -169,7 +176,7 @@
:destroy-on-close="true" :destroy-on-close="true"
> >
<div slot="title"> <div slot="title">
<div class="titleText">查看人员详情12</div> <div class="titleText">查看人员详情</div>
</div> </div>
<div class="center-content"> <div class="center-content">
<el-descriptions class="margin-top" :column="2" border> <el-descriptions class="margin-top" :column="2" border>
@ -290,12 +297,15 @@ export default {
"schoolRange", "schoolRange",
"nationalityRange", "nationalityRange",
], ],
e: {},
}; };
}, },
props: {}, props: {},
created() {}, created() {},
methods: { methods: {
open(e) { open(e) {
console.log(e);
this.e = e;
activityGet(e).then((res) => { activityGet(e).then((res) => {
this.detailData = res.data; this.detailData = res.data;
for (let key1 in this.personParams) { for (let key1 in this.personParams) {
@ -337,31 +347,49 @@ export default {
getPersonData() { getPersonData() {
// //
this.load1 = true; this.load1 = true;
peopleList(this.personParams).then((res) => { this.detailData;
this.personList = res.rows; this.personList = this.detailData.unregisteredUsers;
if (this.personList.length > 0) { if (this.personList.length > 0) {
this.personList.forEach((item) => { this.personList.forEach((item) => {
item.arrlist = this.labelgenerate(item); item.arrlist = this.labelgenerate(item);
}); });
} }
this.load1 = false;
this.personTotal = res.total; // peopleList(this.personParams).then((res) => {
this.load1 = false; // this.personList = res.rows;
}); // if (this.personList.length > 0) {
// this.personList.forEach((item) => {
// item.arrlist = this.labelgenerate(item);
// });
// }
// this.personTotal = res.total;
// this.load1 = false;
// });
}, },
getParticipationData() { getParticipationData() {
this.load2 = true; this.load2 = true;
// //
canyuList(this.participationParams).then((res) => { this.detailData;
this.participationList = res.rows; this.participationList = this.detailData.enrolledUsers;
if (this.participationList.length > 0) { if (this.participationList.length > 0) {
this.participationList.forEach((item) => { this.participationList.forEach((item) => {
item.arrlist = this.labelgenerate(item); item.arrlist = this.labelgenerate(item);
}); });
} }
this.participationTotal = res.total; this.load2 = false;
this.load2 = false;
}); // canyuList(this.participationParams).then((res) => {
// this.participationList = res.rows;
// if (this.participationList.length > 0) {
// this.participationList.forEach((item) => {
// item.arrlist = this.labelgenerate(item);
// });
// }
// this.participationTotal = res.total;
// this.load2 = false;
// });
}, },
// //
changePersonSize(e) { changePersonSize(e) {
@ -400,9 +428,28 @@ export default {
this.$modal this.$modal
.confirm("是否确认邀请该人参加活动?") .confirm("是否确认邀请该人参加活动?")
.then(() => { .then(() => {
yaoqingAdd({ activityId: this.detailData.id, uid: e.uid }).then( yaoqingAdd(e.id).then(
() => { () => {
this.$modal.msgSuccess("邀请成功"); this.$modal.msgSuccess("邀请成功");
activityGet(this.e).then((res) => {
this.detailData = res.data;
for (let key1 in this.personParams) {
for (let key2 in this.detailData) {
if (key1 == key2) {
this.personParams[key1] = this.detailData[key2];
}
}
}
this.detailDatalist = this.labelgenerate(this.detailData);
if (this.personParams.sexRange == "") {
this.personParams.sexRange = "男,女";
}
this.participationParams.activityId = this.detailData.id;
this.getPersonData();
this.getParticipationData();
this.dialogVisible = true;
});
} }
); );
}) })

@ -2,8 +2,8 @@
<div class="app-container" ref="apps"> <div class="app-container" ref="apps">
<div class="titleInput" ref="titleInput"> <div class="titleInput" ref="titleInput">
<el-input <el-input
placeholder="请输入国籍" placeholder="请输入姓名"
v-model="afterParams.nationalityRange" v-model="afterParams.nickName"
class="input-with-select" class="input-with-select"
> >
<el-button <el-button
@ -22,7 +22,7 @@
:style="`background-image:url('${require('../../../../assets/images/profile.jpg')}')`" :style="`background-image:url('${require('../../../../assets/images/profile.jpg')}')`"
></div> ></div>
<div class="leftName"> <div class="leftName">
<div>{{item.nationalityRange}}</div> <div>{{item.nickName}}</div>
<div class="mainTag"> <div class="mainTag">
<!-- <div>{{ item.ageRange }}</div> <!-- <div>{{ item.ageRange }}</div>
<div> <div>
@ -87,7 +87,7 @@ export default {
pageNum: 1, pageNum: 1,
}, },
afterParams: { afterParams: {
nationalityRange: "", nickName: "",
}, },
total: 0, total: 0,
loads: false, loads: false,
@ -182,7 +182,7 @@ export default {
search() { search() {
this.form = { ...this.form, ...this.afterParams }; this.form = { ...this.form, ...this.afterParams };
this.getList(); this.getList();
this.afterParams.nationalityRange = "" this.afterParams.nickName = ""
}, },
// //
@ -310,7 +310,7 @@ export default {
} }
} }
.peopleContent { .peopleContent {
height: 490px; // height: 490px;
width: 100%; width: 100%;
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
@ -335,8 +335,8 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
.leftAvatar { .leftAvatar {
min-height: 100%; min-height: 100px;
width: 77px; min-width: 100px;
background-size: 100% 100%; background-size: 100% 100%;
border-radius: 10px; border-radius: 10px;
} }
@ -354,13 +354,13 @@ export default {
} }
} }
.rightSub { .rightSub {
flex: 1; flex: 1.5;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
.lookDetail { .lookDetail {
width: 50px; width: 80px;
height: 50px; height: 80px;
background: #ffffff; background: #ffffff;
box-shadow: 0px 0px 15px 0px rgba(77, 161, 254, 0.17); box-shadow: 0px 0px 15px 0px rgba(77, 161, 254, 0.17);
border-radius: 50%; border-radius: 50%;

Loading…
Cancel
Save