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. 55
      src/views/activity/detail.vue
  3. 8
      src/views/activity/index.vue
  4. 6
      src/views/appeal/index.less
  5. 207
      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. 57
      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
})
}

55
src/views/activity/detail.vue

@ -1,23 +1,21 @@
<template>
<div class='container m-bot50'>
<div class="card">
<img :src="item.coverPic" alt="" style="width: 100%;">
<img :src="info.coverPic" alt="" style="width: 100%;">
<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="活动时间:"
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="报名开始时间:"
value=" item.startTime "></van-cell>
:value=" info.startTime "></van-cell>
<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="活动地点:"
value="item.address"></van-cell>
:value="info.address"></van-cell>
<van-cell :border="false" :title-style="{ 'max-width': '65px' }" title="举办方:"
value="嘉定山社区 重庆路小学"></van-cell>
:value="info.assistingParty"></van-cell>
<van-divider />
<div
v-html="`<p>&nbsp; &nbsp; 春风催心律,正是指数是。为积极响应茂名市全民义务旅意,我是将于近期开展2021“绿名贸易”好心林工艺素知书货哦你的</p><p>&nbsp; &nbsp; &nbsp; &nbsp;刺死活动以再深入贯彻党的二十大精神和习近平生态文明思想,认真贯彻落实习近平总书记是擦广东的重要指示精神。</p><p>&nbsp; &nbsp; &nbsp; 持续性增强全民志绿护绿关铝的自觉性</p>`">
</div>
<div v-html="info.content"></div>
</div>
</div>
<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>
<template #icon>
<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>
</template>
<script>
import { communityActivity } from '@/api/home';
import {addActivityRecord} from "@/api/activity"
export default {
data() {
return {
activityList:[],
signUp: [
{ name: "", mobile: "", remark: "" },
]
],
info:{}
};
},
created() {
},
mounted(){
if(this.$route.query){
this.info = this.$route.query
}
},
methods: {
handelAddResi() {
@ -66,27 +70,8 @@ export default {
handelDelResi() {
this.signUp.pop()
},
async communityActivity() {
let parm = {
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);
}
save(){
signUp
},
},
components: {},

8
src/views/activity/index.vue

@ -2,7 +2,7 @@
<div class='container'>
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="communityActivity" class="card"
: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;">
<div class="flex flex-y flex1 flex-end" style="overflow: hidden;">
<div class="van-ellipsis">{{ item.activityName }}</div>
@ -13,7 +13,7 @@
<span>报名人数</span> <span class="font-size18 orange">{{ item.participants }}</span>/<span
class="font-size14">{{ item.participants }}</span>
</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>
</div>
</div>
@ -64,10 +64,10 @@ export default {
this.activityList = this.activityList.concat(res.list);
}
},
handelClickJump(path) {
handelClickJump(path,item) {
if(path === 'activityDetail'){
if (this.$store.state.app.userInfo.mobile) {
this.$router.push({ path: `/${path}` });
this.$router.push({ path: `/${path}`,query:item });
} else {
this.showRegister = true;
}

6
src/views/appeal/index.less

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

207
src/views/appeal/index.vue

@ -1,146 +1,97 @@
<template>
<div>
<!-- <van-tabs v-model="type" @change="tabList" animated sticky swipeable lazy-render>
<van-tab title="我的事件">-->
<div class="container">
<div class="event-list" v-if="eventList.length > 0">
<div
class="event-item"
v-for="(item, index) in eventList"
:key="index"
@click="$router.push({ path: '/appealDetail', query: { pageType: 'event', ...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 class="time">{{ item.happenTime }}</div>
<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 }}
<div class='container'>
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="collects"
:offset="50">
<div class="event-item m-top10 card" v-for="(item, index) in list" :key="index"
@click="$router.push({ path: '/appealDetail', query: { pageType: 'event', ...item } })">
<div class=" flex flex-y">
<div class="flex">
<van-tag round size="medium" style="margin-right: 5px"
:color="item.statusName == '处理中' ? processing.bg : completion.bg"
:text-color="item.statusName == '处理中' ? processing.text : completion.text">
{{ item.statusName }}
</van-tag>
<span class="text">{{ item.content }}</span>
</div>
<div class="time">{{ item.happenTime }}</div>
<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 class="y66666 font-size13">{{ item.happenTime }}</div>
</div>
<span class="text">{{ item.eventContent }}</span>
</div>
<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>
</van-tab>
</van-tabs>-->
</van-list>
</div>
</template>
<script>
import { collects } from '@/api/event'
import { ImagePreview } from 'vant'
import { requirementList } from '@/api/demand'
import { collects } from '@/api/event'
export default {
name: 'appeal',
components: {
[ImagePreview.Component.name]: ImagePreview.Component
},
data() {
return {
type: 0,
completion: {
bg: 'rgba(79,148,255,0.14)',
text: '#4F94FF'
},
processing: {
bg: 'rgba(255,120,60,0.14)',
text: '#FF783C'
},
eventList: [],
demandList: []
}
return {
type: 0,
list: [],
pageSize: 5,
completion: {
bg: 'rgba(79,148,255,0.14)',
text: '#4F94FF'
},
processing: {
bg: 'rgba(255,120,60,0.14)',
text: '#FF783C'
},
pageNo: 1,
agencyId: null,
finished: false,
loading: true,
showRegister: false,
};
},
mounted() {
this.getEventList()
created() {
this.agencyId = this.$store.state.app.agencyId;
this.collects();
},
methods: {
getEventList() {
let parm = {
pageSize:10,
pageNo:1,
name:this.$store.state.app.userInfo.realName||'',
mobile:this.$store.state.app.userInfo.mobile||'',
agencyId:this.$store.state.app.agencyId
}
collects(parm).then(res => {
this.eventList = res.list;
})
},
getDemandList() {
requirementList({
mobile: this.$store.state.app.userInfo.phone
}).then(res => {
this.demandList = res
})
},
tabList(val) {
console.log(val)
if (val === 0) {
this.getEventList()
} else {
this.getDemandList()
}
},
previewImage(index, urls) {
ImagePreview({
images: urls,
startPosition: index
})
}
}
async collects() {
let parm = {
pageSize: this.pageSize,
pageNo: this.pageNo++,
name: this.$store.state.app.userInfo.realName || '',
mobile: this.$store.state.app.userInfo.mobile || '',
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);
}
},
},
components: {},
computed: {},
watch: {},
}
</script>
<style scoped lang="less">
@import './index';
<style lang='less' scoped>
.activity_content {
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;
}
}
</style>

1
src/views/discussion/discusionDetail.vue

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

2
src/views/message/index.vue

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

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

@ -1,6 +1,6 @@
<template>
<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">
<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;">
@ -43,20 +43,20 @@ export default {
},
methods: {
async communityActivity() {
const {pageNo,pageSize,agencyId} = this
const {pageSize,agencyId} = this
let parm = {
agencyId,
pageNo,
pageNo:this.pageNo++,
pageSize,
userId:this.$store.state.app.userInfo.id
}
let res = await communityActivity(parm)
if (res) {
this.loading = false;
if (res.length < this.pageSize) {
if (res.list.length < this.pageSize) {
this.finished = true;
}
this.list = this.list.concat(res);
this.list = this.list.concat(res.list);
}
},
handelClickJump(path) {

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

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

7
src/views/search/index.vue

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

5
src/views/selectAgency/index.vue

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

57
src/views/userInfo/index.vue

@ -9,14 +9,14 @@
<van-field label="姓名" v-model="surName" placeholder="请输入" />
<van-cell title="性别">
<van-radio-group class="gender" v-model="gender">
<van-radio name="1"></van-radio>
<van-radio name="2" style="margin-left: 50px"></van-radio>
<van-radio :name="0"></van-radio>
<van-radio :name="1" style="margin-left: 50px"></van-radio>
</van-radio-group>
</van-cell>
<van-field label="身份证号码" v-model="idNum" placeholder="请输入" />
<template>
<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>
<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>
@ -147,14 +147,15 @@ export default {
this.type = this.$route.params.type ? this.$route.params.type : ''
document.title = this.$route.params.type === 'edit' ? '编辑' : '注册'
this.userInfo = this.$store.state.app.userInfo
this.gender = this.$store.state.app.userInfo.gender
console.log(this.userInfo, 'this.userInfo');
if (this.type === 'edit') {
this.surName = this.userInfo.realName
this.gender = this.userInfo.gender
this.streetId = this.userInfo.streetId
this.customerId = this.userInfo.customerId
this.communityId = this.userInfo.communityId
this.surName = this.userInfo.realName;
this.gender = this.userInfo.sex;
this.streetId = this.userInfo.streetId;
this.customerId = this.userInfo.customerId;
this.communityId = this.userInfo.agencyId;
this.idNum = this.userInfo.idNum;
this.phone = this.userInfo.mobile;
this.$nextTick(() => {
this.getAllAgencyStreet()
this.getChildAgencyByPid()
@ -197,42 +198,22 @@ export default {
submit() {
console.log(this.gender);
let params = {
gender: this.gender,
userId: this.userInfo.userId,
streetId: this.streetId,
communityId: this.communityId,
quarterId: this.quarterId,
buildingId: this.buildingId,
unitId: this.unitId,
houseNumberId: this.houseNumberId,
gridId: this.gridId,
customerId: this.customerId,
homeId: this.homeId
...this.userInfo
}
// 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
// }
params.agencyId = this.communityId;
params.gender = this.gender;
params.realName = this.surName;
params.idNum = this.idNum;
params.mobile = this.mobile;
if (this.type !== 'edit') {
params.phone = this.phone
params.mobile = this.phone
params.smsCode = this.smsCode
params.surName = this.surName
if (!params.surName) {
if (!params.realName) {
this.$toast.fail('请输入姓名')
return
}
if (!params.phone) {
if (!params.mobile) {
this.$toast.fail('请输入手机号')
return
}

Loading…
Cancel
Save