Browse Source

Merge branch 'dev' of http://120.46.222.128:10021/elink-star/epmet-wx-pa into xiaowang

# Conflicts:
#	src/views/discussion/discusionDetail.vue
feature
是小王呀\24601 1 year ago
parent
commit
95f5555134
  1. 11
      src/api/activity.js
  2. 53
      src/views/activity/detail.vue
  3. 8
      src/views/activity/index.vue
  4. 6
      src/views/appeal/index.less
  5. 167
      src/views/appeal/index.vue
  6. 1
      src/views/discussion/discusionDetail.vue
  7. 2
      src/views/message/index.vue
  8. 10
      src/views/mine/myActivity/index.vue
  9. 2
      src/views/mine/mySatisfaction/index.vue
  10. 7
      src/views/search/index.vue
  11. 5
      src/views/selectAgency/index.vue
  12. 59
      src/views/userInfo/index.vue

11
src/api/activity.js

@ -0,0 +1,11 @@
// axios
import request from '@/utils/request'
// 获取签名
export function addActivityRecord(data) {
return request({
url: '/actual/base/communityActivityApplicationRecord/addActivityRecord',
method: 'post',
data
})
}

53
src/views/activity/detail.vue

@ -1,23 +1,21 @@
<template> <template>
<div class='container m-bot50'> <div class='container m-bot50'>
<div class="card"> <div class="card">
<img :src="item.coverPic" alt="" style="width: 100%;"> <img :src="info.coverPic" alt="" style="width: 100%;">
<div class="m-top15 p0"> <div class="m-top15 p0">
<h2 style="margin: 0; font-size: 21px;">{{ item.activityName }}</h2> <h2 style="margin: 0; font-size: 21px;">{{ info.activityName }}</h2>
<van-cell class="m-top15" :border="false" :title-style="{ 'max-width': '80px' }" title="活动时间:" <van-cell class="m-top15" :border="false" :title-style="{ 'max-width': '80px' }" title="活动时间:"
value="2024-03-12 09:00 至 2024-03-12 17:00"></van-cell> :value="`${info.startTime} 至 ${info.endTime}`"></van-cell>
<van-cell :border="false" :title-style="{ 'max-width': '115px' }" title="报名开始时间:" <van-cell :border="false" :title-style="{ 'max-width': '115px' }" title="报名开始时间:"
value=" item.startTime "></van-cell> :value=" info.startTime "></van-cell>
<van-cell :border="false" :title-style="{ 'max-width': '115px' }" title="报名截止时间:" <van-cell :border="false" :title-style="{ 'max-width': '115px' }" title="报名截止时间:"
value="2024-03-12 09:00"></van-cell> :value="info.endTime"></van-cell>
<van-cell :border="false" :title-style="{ 'max-width': '80px' }" title="活动地点:" <van-cell :border="false" :title-style="{ 'max-width': '80px' }" title="活动地点:"
value="item.address"></van-cell> :value="info.address"></van-cell>
<van-cell :border="false" :title-style="{ 'max-width': '65px' }" title="举办方:" <van-cell :border="false" :title-style="{ 'max-width': '65px' }" title="举办方:"
value="嘉定山社区 重庆路小学"></van-cell> :value="info.assistingParty"></van-cell>
<van-divider /> <van-divider />
<div <div v-html="info.content"></div>
v-html="`<p>&nbsp; &nbsp; 春风催心律,正是指数是。为积极响应茂名市全民义务旅意,我是将于近期开展2021“绿名贸易”好心林工艺素知书货哦你的</p><p>&nbsp; &nbsp; &nbsp; &nbsp;刺死活动以再深入贯彻党的二十大精神和习近平生态文明思想,认真贯彻落实习近平总书记是擦广东的重要指示精神。</p><p>&nbsp; &nbsp; &nbsp; 持续性增强全民志绿护绿关铝的自觉性</p>`">
</div>
</div> </div>
</div> </div>
<div class="card m-top10"> <div class="card m-top10">
@ -40,24 +38,30 @@
<div class="flex1 flex flex-center1 flex-center2"> <van-button size="small" class="m-right7" round> <div class="flex1 flex flex-center1 flex-center2"> <van-button size="small" class="m-right7" round>
<template #icon> <template #icon>
<img src="@/assets/images/icons/share.png" alt="" class="img_20"> <img src="@/assets/images/icons/share.png" alt="" class="img_20">
</template> 转发</van-button> <van-button type="info" size="small" round></van-button></div> </template> 转发</van-button> <van-button type="info" size="small" round @click="save"></van-button></div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { communityActivity } from '@/api/home'; import {addActivityRecord} from "@/api/activity"
export default { export default {
data() { data() {
return { return {
activityList:[], activityList:[],
signUp: [ signUp: [
{ name: "", mobile: "", remark: "" }, { name: "", mobile: "", remark: "" },
] ],
info:{}
}; };
}, },
created() { created() {
},
mounted(){
if(this.$route.query){
this.info = this.$route.query
}
}, },
methods: { methods: {
handelAddResi() { handelAddResi() {
@ -66,27 +70,8 @@ export default {
handelDelResi() { handelDelResi() {
this.signUp.pop() this.signUp.pop()
}, },
async communityActivity() { save(){
let parm = { signUp
pageSize: this.pageSize,
pageNo: this.pageNo++,
agencyId: this.agencyId,
activityName: "",
status: "",
typeId: "",
startTime: "",
endTime: "",
address: "",
assistingParty: ""
}
let res = await communityActivity(parm)
if (res) {
this.loading = false;
if (res.list.length < this.pageSize) {
this.finished = true;
}
this.activityList = this.activityList.concat(res.list);
}
}, },
}, },
components: {}, components: {},

8
src/views/activity/index.vue

@ -2,7 +2,7 @@
<div class='container'> <div class='container'>
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="communityActivity" class="card" <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="communityActivity" class="card"
:offset="50"> :offset="50">
<div class="activity_content flex" v-for="(item, index) in activityList" :key="index"@click="$router.push({ path: `/activityDetail` })"> <div class="activity_content flex" v-for="(item, index) in activityList" :key="index"@click="handelClickJump('activityDetail',item)">
<img :src="item.coverPic" alt="" class="mr10 img_round" style="width: 75px;height: 95px;"> <img :src="item.coverPic" alt="" class="mr10 img_round" style="width: 75px;height: 95px;">
<div class="flex flex-y flex1 flex-end" style="overflow: hidden;"> <div class="flex flex-y flex1 flex-end" style="overflow: hidden;">
<div class="van-ellipsis">{{ item.activityName }}</div> <div class="van-ellipsis">{{ item.activityName }}</div>
@ -13,7 +13,7 @@
<span>报名人数</span> <span class="font-size18 orange">{{ item.participants }}</span>/<span <span>报名人数</span> <span class="font-size18 orange">{{ item.participants }}</span>/<span
class="font-size14">{{ item.participants }}</span> class="font-size14">{{ item.participants }}</span>
</div> </div>
<van-button type="info" size="small" round @click="handelClickJump('activityDetail')" <van-button type="info" size="small" round @click="handelClickJump('activityDetail',item)"
:disabled="item.online !== 1">报名</van-button> :disabled="item.online !== 1">报名</van-button>
</div> </div>
</div> </div>
@ -64,10 +64,10 @@ export default {
this.activityList = this.activityList.concat(res.list); this.activityList = this.activityList.concat(res.list);
} }
}, },
handelClickJump(path) { handelClickJump(path,item) {
if(path === 'activityDetail'){ if(path === 'activityDetail'){
if (this.$store.state.app.userInfo.mobile) { if (this.$store.state.app.userInfo.mobile) {
this.$router.push({ path: `/${path}` }); this.$router.push({ path: `/${path}`,query:item });
} else { } else {
this.showRegister = true; this.showRegister = true;
} }

6
src/views/appeal/index.less

@ -1,13 +1,15 @@
.event-list { .event-list {
border-radius: 10px; border-radius: 10px;
background: #f7f7f7;
overflow: hidden; overflow: hidden;
background: #fff;
} }
.event-item { .event-item {
padding: 15px; padding: 15px;
border-bottom: 1px solid @gray-1; border-bottom: 1px solid @gray-1;
box-sizing: border-box;
background-color: #ffffff;
min-height: 100px;
.title { .title {
.text { .text {
font-size: 16px; font-size: 16px;

167
src/views/appeal/index.vue

@ -1,93 +1,37 @@
<template> <template>
<div> <div class='container'>
<!-- <van-tabs v-model="type" @change="tabList" animated sticky swipeable lazy-render> <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="collects"
<van-tab title="我的事件">--> :offset="50">
<div class="container"> <div class="event-item m-top10 card" v-for="(item, index) in list" :key="index"
<div class="event-list" v-if="eventList.length > 0"> @click="$router.push({ path: '/appealDetail', query: { pageType: 'event', ...item } })">
<div <div class=" flex flex-y">
class="event-item" <div class="flex">
v-for="(item, index) in eventList" <van-tag round size="medium" style="margin-right: 5px"
:key="index" :color="item.statusName == '处理中' ? processing.bg : completion.bg"
@click="$router.push({ path: '/appealDetail', query: { pageType: 'event', ...item } })" :text-color="item.statusName == '处理中' ? processing.text : completion.text">
> {{ item.statusName }}
<div class="title">
<van-tag
round
size="medium"
style="margin-right: 5px"
:color="item.status == '处理中' ? processing.bg : completion.bg"
:text-color="item.status == '处理中' ? processing.text : completion.text"
>
{{ item.status }}
</van-tag> </van-tag>
<span class="text">{{ item.content }}</span> <div class="y66666 font-size13">{{ item.happenTime }}</div>
</div> </div>
<div class="time">{{ item.happenTime }}</div> <span class="text">{{ item.eventContent }}</span>
<div class="imgs">
<van-image
fit="cover"
v-for="(item2, index2) in item.imageList"
@click.prevent.stop="previewImage(index2, item.imageList)"
:src="item2"
:key="index2"
/>
</div>
</div>
</div>
<div class="no-data" v-else>暂无内容</div>
</div>
<!-- </van-tab>
<van-tab title="我的需求">
<div class="container">
<div class="event-list">
<div
class="event-item"
v-for="(item, index) in demandList"
:key="index"
@click="$router.push({ path: '/appealDetail', query: { pageType: 'demand', ...item } })"
>
<div class="title">
<van-tag
round
size="medium"
style="margin-right: 5px"
:color="item.status == '处理中' ? processing.bg : completion.bg"
:text-color="item.status == '处理中' ? processing.text : completion.text"
>
{{ item.status }}
</van-tag>
<span class="text">{{ item.content }}</span>
</div> </div>
<div class="time">{{ item.happenTime }}</div>
<div class="imgs"> <div class="imgs">
<van-image <van-image fit="cover" v-for="(item2, index2) in item.imageList"
fit="cover" @click.prevent.stop="previewImage(index2, item.imageList)" :src="item2" :key="index2" />
v-for="(item2, index2) in item.imageList"
@click.prevent.stop="previewImage(index2, item.imageList)"
:src="item2"
:key="index2"
/>
</div> </div>
</div> </div>
</div> </van-list>
</div>
</van-tab>
</van-tabs>-->
</div> </div>
</template> </template>
<script> <script>
import { collects } from '@/api/event' import { collects } from '@/api/event'
import { ImagePreview } from 'vant'
import { requirementList } from '@/api/demand'
export default { export default {
name: 'appeal',
components: {
[ImagePreview.Component.name]: ImagePreview.Component
},
data() { data() {
return { return {
type: 0, type: 0,
list: [],
pageSize: 5,
completion: { completion: {
bg: 'rgba(79,148,255,0.14)', bg: 'rgba(79,148,255,0.14)',
text: '#4F94FF' text: '#4F94FF'
@ -96,51 +40,58 @@ export default {
bg: 'rgba(255,120,60,0.14)', bg: 'rgba(255,120,60,0.14)',
text: '#FF783C' text: '#FF783C'
}, },
eventList: [], pageNo: 1,
demandList: [] agencyId: null,
} finished: false,
loading: true,
showRegister: false,
};
}, },
mounted() { created() {
this.getEventList() this.agencyId = this.$store.state.app.agencyId;
this.collects();
}, },
methods: { methods: {
getEventList() { async collects() {
let parm = { let parm = {
pageSize:10, pageSize: this.pageSize,
pageNo:1, pageNo: this.pageNo++,
name: this.$store.state.app.userInfo.realName || '', name: this.$store.state.app.userInfo.realName || '',
mobile: this.$store.state.app.userInfo.mobile || '', mobile: this.$store.state.app.userInfo.mobile || '',
agencyId:this.$store.state.app.agencyId agencyId: '1697488876903944195'
}
let res = await collects(parm)
if (res) {
this.loading = false;
if (res.list.length < this.pageSize) {
this.finished = true;
}
this.list = this.list.concat(res.list);
} }
collects(parm).then(res => {
this.eventList = res.list;
})
}, },
getDemandList() {
requirementList({
mobile: this.$store.state.app.userInfo.phone
}).then(res => {
this.demandList = res
})
}, },
tabList(val) { components: {},
console.log(val) computed: {},
if (val === 0) { watch: {},
this.getEventList()
} else {
this.getDemandList()
} }
}, </script>
previewImage(index, urls) {
ImagePreview({ <style lang='less' scoped>
images: urls, .activity_content {
startPosition: index padding-bottom: 15px;
}) box-sizing: border-box;
width: 100%;
border-bottom: 1px solid #EAEAEA;
margin-top: 14px;
min-height: 110px;
.img {
width: 231px;
height: 33px;
} }
&:last-child {
border-bottom: none;
} }
} }
</script>
<style scoped lang="less">
@import './index';
</style> </style>

1
src/views/discussion/discusionDetail.vue

@ -86,6 +86,7 @@ export default {
created(){ created(){
this.eventId=this.$route.query.eventId this.eventId=this.$route.query.eventId
console.log(this.id,"this.id"); console.log(this.id,"this.id");
this.id=this.$route.query.eventId
this.agencyId = this.$store.state.app.agencyId; this.agencyId = this.$store.state.app.agencyId;
this.userId = this.$store.state.app.appId; this.userId = this.$store.state.app.appId;
this.icEventOldDiscussDetil1() this.icEventOldDiscussDetil1()

2
src/views/message/index.vue

@ -44,7 +44,7 @@ export default {
this.loading = true this.loading = true
getWxmpEventAndDemandMessageList({ getWxmpEventAndDemandMessageList({
phone: this.$store.state.app.userInfo.phone, phone: this.$store.state.app.userInfo.phone,
pageNo: this.pageNo, pageNo: this.pageNo++,
pageSize: this.pageSize pageSize: this.pageSize
}).then(res => { }).then(res => {
this.list.push(...res.list) this.list.push(...res.list)

10
src/views/mine/myActivity/index.vue

@ -1,6 +1,6 @@
<template> <template>
<div class='container'> <div class='container'>
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="communitySatisfactionPageList" class="card" <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="communityActivity" class="card"
:offset="50"> :offset="50">
<div class="activity_content flex" v-for="(item, index) in list" :key="index"@click="$router.push({ path: `/activityDetail` })"> <div class="activity_content flex" v-for="(item, index) in list" :key="index"@click="$router.push({ path: `/activityDetail` })">
<img :src="item.coverPic" alt="" class="mr10 img_round" style="width: 75px;height: 95px;"> <img :src="item.coverPic" alt="" class="mr10 img_round" style="width: 75px;height: 95px;">
@ -43,20 +43,20 @@ export default {
}, },
methods: { methods: {
async communityActivity() { async communityActivity() {
const {pageNo,pageSize,agencyId} = this const {pageSize,agencyId} = this
let parm = { let parm = {
agencyId, agencyId,
pageNo, pageNo:this.pageNo++,
pageSize, pageSize,
userId:this.$store.state.app.userInfo.id userId:this.$store.state.app.userInfo.id
} }
let res = await communityActivity(parm) let res = await communityActivity(parm)
if (res) { if (res) {
this.loading = false; this.loading = false;
if (res.length < this.pageSize) { if (res.list.length < this.pageSize) {
this.finished = true; this.finished = true;
} }
this.list = this.list.concat(res); this.list = this.list.concat(res.list);
} }
}, },
handelClickJump(path) { handelClickJump(path) {

2
src/views/mine/mySatisfaction/index.vue

@ -44,7 +44,7 @@ export default {
methods: { methods: {
async communitySatisfactionPageList() { async communitySatisfactionPageList() {
let parm = { let parm = {
residList:[ this.$store.state.app.userInfo.id] residList:[ '1703655913619628033']
} }
let res = await communitySatisfactionPageList(parm) let res = await communitySatisfactionPageList(parm)
if (res) { if (res) {

7
src/views/search/index.vue

@ -55,15 +55,16 @@ export default {
pageNo: 1, pageNo: 1,
keyWordList:this.searchKey keyWordList:this.searchKey
} }
// let res = await keyWordSearch(parm) let res = await keyWordSearch(parm)
// console.log(res); console.log(res);
// setTimeout(() => { // setTimeout(() => {
// for (let i = 0; i < 10; i++) { // for (let i = 0; i < 10; i++) {
// this.tableList.push({title:'',date:'2024-10-5'}); // this.tableList.push({title:'',date:'2024-10-5'});
// } // }
// console.log(this.tableList); // console.log(this.tableList);
// // // //
// this.loading = false; this.loading = false;
// // // //
// if (this.tableList.length >= 40) { // if (this.tableList.length >= 40) {

5
src/views/selectAgency/index.vue

@ -36,7 +36,6 @@ export default {
}, },
methods: { methods: {
async getAgency() { async getAgency() {
// this.cityJson = [cityJson]
this.selfCity = []; this.selfCity = [];
let res = await getAllOrgTreeList() let res = await getAllOrgTreeList()
if (res) { if (res) {
@ -52,10 +51,10 @@ export default {
this.selfCity.push(item); this.selfCity.push(item);
if (item.level === 'community') { if (item.level === 'community') {
let parm = this.$store.state.app.userInfo; let parm = this.$store.state.app.userInfo;
parm.agencyId = item.agencyId; parm.agencyId = item.value;
parm.agencyName= item.label;
let res = await editUser(parm) let res = await editUser(parm)
if (res) { if (res) {
// this.$router.replace('home')
this.$router.replace('/') this.$router.replace('/')
} }
} else { } else {

59
src/views/userInfo/index.vue

@ -9,14 +9,14 @@
<van-field label="姓名" v-model="surName" placeholder="请输入" /> <van-field label="姓名" v-model="surName" placeholder="请输入" />
<van-cell title="性别"> <van-cell title="性别">
<van-radio-group class="gender" v-model="gender"> <van-radio-group class="gender" v-model="gender">
<van-radio name="1"></van-radio> <van-radio :name="0"></van-radio>
<van-radio name="2" style="margin-left: 50px"></van-radio> <van-radio :name="1" style="margin-left: 50px"></van-radio>
</van-radio-group> </van-radio-group>
</van-cell> </van-cell>
<van-field label="身份证号码" v-model="idNum" placeholder="请输入" /> <van-field label="身份证号码" v-model="idNum" placeholder="请输入" />
<template> <template>
<van-field label="手机号" v-model="phone" placeholder="请输入" /> <van-field label="手机号" v-model="phone" placeholder="请输入" />
<van-field label="验证码" v-model="smsCode" placeholder="请输入"> <van-field label="验证码" v-model="smsCode" placeholder="请输入" v-if="type !== 'edit'">
<template #button> <template #button>
<van-button size="mini" round type="info" v-if="time === 60" @click="getCode">获取验证码</van-button> <van-button size="mini" round type="info" v-if="time === 60" @click="getCode">获取验证码</van-button>
<van-button size="mini" round type="info" v-else disabled>{{ time }}s后重试</van-button> <van-button size="mini" round type="info" v-else disabled>{{ time }}s后重试</van-button>
@ -147,14 +147,15 @@ export default {
this.type = this.$route.params.type ? this.$route.params.type : '' this.type = this.$route.params.type ? this.$route.params.type : ''
document.title = this.$route.params.type === 'edit' ? '编辑' : '注册' document.title = this.$route.params.type === 'edit' ? '编辑' : '注册'
this.userInfo = this.$store.state.app.userInfo this.userInfo = this.$store.state.app.userInfo
this.gender = this.$store.state.app.userInfo.gender
console.log(this.userInfo, 'this.userInfo'); console.log(this.userInfo, 'this.userInfo');
if (this.type === 'edit') { if (this.type === 'edit') {
this.surName = this.userInfo.realName this.surName = this.userInfo.realName;
this.gender = this.userInfo.gender this.gender = this.userInfo.sex;
this.streetId = this.userInfo.streetId this.streetId = this.userInfo.streetId;
this.customerId = this.userInfo.customerId this.customerId = this.userInfo.customerId;
this.communityId = this.userInfo.communityId this.communityId = this.userInfo.agencyId;
this.idNum = this.userInfo.idNum;
this.phone = this.userInfo.mobile;
this.$nextTick(() => { this.$nextTick(() => {
this.getAllAgencyStreet() this.getAllAgencyStreet()
this.getChildAgencyByPid() this.getChildAgencyByPid()
@ -197,42 +198,22 @@ export default {
submit() { submit() {
console.log(this.gender); console.log(this.gender);
let params = { let params = {
gender: this.gender, ...this.userInfo
userId: this.userInfo.userId, }
streetId: this.streetId, params.agencyId = this.communityId;
communityId: this.communityId, params.gender = this.gender;
quarterId: this.quarterId, params.realName = this.surName;
buildingId: this.buildingId, params.idNum = this.idNum;
unitId: this.unitId, params.mobile = this.mobile;
houseNumberId: this.houseNumberId,
gridId: this.gridId,
customerId: this.customerId,
homeId: this.homeId
}
// let params1={
// street:this.street,
// userId:this.userInfo.id,
// mobile:this.phone,
// district:this.district,
// surname:this.surName,
// name:this.userInfo.name,
// realName:this.userInfo.realName,
// idNum:this.idNum,
// gender:this.gender,
// // buildingAddress:this.userInfo.realName,
// nickname:this.userInfo.nickname,
// headImgUrl:this.userInfo.headImgUrl,
// customerId:this.customerId
// }
if (this.type !== 'edit') { if (this.type !== 'edit') {
params.phone = this.phone params.mobile = this.phone
params.smsCode = this.smsCode params.smsCode = this.smsCode
params.surName = this.surName params.surName = this.surName
if (!params.surName) { if (!params.realName) {
this.$toast.fail('请输入姓名') this.$toast.fail('请输入姓名')
return return
} }
if (!params.phone) { if (!params.mobile) {
this.$toast.fail('请输入手机号') this.$toast.fail('请输入手机号')
return return
} }

Loading…
Cancel
Save