Browse Source

诉求类别的选中,首页的添加居民议事,个人信息的修改,注册信息的修改

feature
是小王呀\24601 10 months ago
parent
commit
6b4cb7b826
  1. 65
      src/views/event/index.vue
  2. 84
      src/views/home/index.vue
  3. 5
      src/views/register/index.vue
  4. 11
      src/views/userInfo/index.vue

65
src/views/event/index.vue

@ -29,7 +29,7 @@
<!-- <Picker label="诉求类别" placeholder="请选择准确的类型便于派单" v-model="streetId" :items="streetOptions" <!-- <Picker label="诉求类别" placeholder="请选择准确的类型便于派单" v-model="streetId" :items="streetOptions"
@change="e => setVal('street', e, 'getChildAgencyByPid')" /> --> @change="e => setVal('street', e, 'getChildAgencyByPid')" /> -->
<van-cell required is-link title="诉求类别" @click="onShowPicker()"> <van-cell required is-link title="诉求类别" @click="onShowPicker()">
<div>{{ selectedValue }}</div> <div>{{ cascaderValue }}</div>
</van-cell> </van-cell>
</div> </div>
<div class="block"> <div class="block">
@ -53,9 +53,9 @@
</van-tabs> </van-tabs>
<van-popup v-model="showType" position="bottom"> <van-popup v-model="showType" position="bottom">
<van-cascader v-model="cascaderValue" title="请选择所在地区" :options="cateOptions" @close="show = false" <van-cascader v-model="cascaderValue" title="请选择所属类别" :options="cateOptions" @close="show = false"
:field-names="{ text: 'categoryName', value: 'categoryCode', children: 'children', }" @change="onChange" :field-names="{ text: 'categoryName', value: 'categoryCode', children: 'children', }" @finish="onChange"
@finish="onFinish" /> />
<!-- <van-cascader :options="cateOptions" <!-- <van-cascader :options="cateOptions"
:height="400" :height="400"
@close="close1" @change="onChange" /> --> @close="close1" @change="onChange" /> -->
@ -83,7 +83,7 @@ export default {
components: {Recording,Audio,Picker, Perfect, Map, appeal}, components: {Recording,Audio,Picker, Perfect, Map, appeal},
data() { data() {
return { return {
cascaderValue:"", cascaderValue:"",//
cateOptions:[], cateOptions:[],
showType:false, showType:false,
streetId:"", streetId:"",
@ -125,49 +125,33 @@ export default {
this.agencyId = this.$store.state.app.agencyId; this.agencyId = this.$store.state.app.agencyId;
}, },
methods: { methods: {
onChange(value,selectedOptions) { onChange(value) {
console.log(value,selectedOptions,"skjlkfdjs"); console.log(value ,"skjlkfdjs");
const lastOption = this.findSelectedOption(value, this.cateOptions); this.cascaderValue = value.selectedOptions[value.tabIndex].categoryName;
if (!lastOption || !lastOption.children || lastOption.children.length === 0) { logic(value.selectedOptions[value.tabIndex].categoryName,"skdlsklfjslkfjl");
this.selectedValue = value; this.showType=false
this.showType = false;
console.log('选中项:', lastOption); // const lastOption = this.findSelectedOption(value, this.cateOptions);
} // if (!lastOption || !lastOption.children || lastOption.children.length === 0) {
// this.selectedValue = value;
// this.showType = false;
// console.log(':', lastOption);
// }
}, },
// //
async getCateOptions() { async getCateOptions() {
const url = '/governance/icEvent/getCategoryTree'; const url = '/governance/icEvent/getCategoryTree';
let params = {}; let params = {};
getCategoryTree(params).then(res => { getCategoryTree(params).then(res => {
// let treeDataNew = this.deepTree(res.data, "children"); //null
let treeDataNew = this.deepTree(res.data, "children");
if (res.code === 0) { if (res.code === 0) {
// this.cateOptions = [];
// ++this.iscascaderShow; this.cateOptions = treeDataNew;
// this.cateOptions = [];
this.cateOptions = res.data;
console.log(this.cateOptions,"SDSDKLJLKSDFJLK");
} else { } else {
this.$message.error(msg); this.$message.error(msg);
} }
// if (this.eventDetailCopy.parentCategoryId) {
// const pids = this.eventDetailCopy.parentCategoryId.split(',');
// pids.push(this.eventDetailCopy.categoryId);
// let nodes = this.cateOptions;
// for (let i = 0; i < pids.length; i++) {
// nodes = this.buildNode(nodes, pids[i])
// }
// if (nodes) {
// this.formData.categoryList.push(nodes)
// }
// }
}) })
console.log(this.cateOptions,"SDSDKLJLKSDFJLK");
// const { data, code, msg } = await requestPost(url, params);
}, },
// //
deepTree(arr, children) { deepTree(arr, children) {
@ -175,11 +159,8 @@ export default {
return arr.map((item) => { return arr.map((item) => {
return { return {
...item, ...item,
[children]: [children]:item[children] &&item[children].length > 0?this.deepTree(item[children], children):null
(item[children] &&
item[children].length > 0 &&
this.deepTree(item[children], children)) ||
null,
}; };
}); });
} }

84
src/views/home/index.vue

@ -87,28 +87,78 @@
</div> </div>
<span @click="$router.push('/discussion')">更多</span> <span @click="$router.push('/discussion')">更多</span>
</div> </div>
<div class="activity_content flex" v-for="(item, index) in eventList" :key="index" <div class="activity_content flex">
@click="$router.push({ path: `/discusionDetail`,query: { eventId:item.eventId} })"> <van-tabs v-model="tagActive" style="width: 100%;" @change="handelChangeTags">
<div class="flex flex-y flex1 flex-end" style="overflow: hidden;"> <van-tab v-for="item in tagList" :key="item.id" :title="item.tagName">
<span class="van-multi-ellipsis--l2"> <div class="flex flex-y flex1 flex-end" v-if="PublicityList.length !== 0">
{{ item.eventContent }} <div class="activity_content flex flex-y" v-for="(item, index) in PublicityList"
</span> :key="index"
<div class="flex flex-end flex-center gray m-top10 font-size13"> @click="$router.push({name:'communityPublicityDetail',query:{id:item.id}})">
<div class="flex flex-center"><img src="@/assets/images/icons/resi.png" <div class="flex flex1 ">
class="img_16 m-right7" alt=""> <span class="van-multi-ellipsis--l2 flex1" style="line-height: 28px;">
<span>参与 {{ item.total }}</span> {{ item.title }}
</span>
<!-- <img v-if="item.coverPic" :src="item.coverPic"
style="width: 100px;height: 60px;" alt=""> -->
</div>
<div class="flex flex-end flex-center gray m-top10 font-size13">
<div class="flex">
<div class="flex flex-center m-right26" v-if="item.tagId && tagList">
{{filterTagId(item.tagId)}}</div>
<div class="flex1 text-align-right">{{item.releaseTime}}</div>
</div>
<div class="flex flex-center" @click.stop="communityPublicityGiveLike(item.id)">
<img src="@/assets/images/icons/support.png" alt=""
class="img_16 m-right7"><span>{{ item.likes || 0}}</span>
</div>
</div>
</div>
</div> </div>
<div class="flex flex-center" @click.stop="handelClicsupport1(item.eventId)"> <div v-else class="no-data">
<img src="@/assets/images/icons/support.png" alt="" class="img_16 m-right7"> 暂无数据~
<span>支持 {{ item.supportNum }}</span>
</div> </div>
<div class="flex flex-center" @click.stop="handelClicopposeNum(item.eventId)"><img </van-tab>
src="@/assets/images/icons/oppose.png" alt="" class="img_16 m-right7"><span>反对 </van-tabs>
{{ item.opposeNum }}</span></div> </div>
</div>
</div>
<div class="card m-top10">
<div class="title">
<div class="flex flex-center2">
<img style="height:20px;" src="@/assets/images/home/biaoqian.png" alt="">
<span class="m-left5" style=" color: black; font-family:pingfang-bold;
font-size: 17px;">居民议事</span>
</div> </div>
<span @click="$router.push('/communityPublicity')">更多</span>
</div> </div>
<div class="activity_content flex" v-for="(item, index) in eventList" :key="index"
@click="$router.push({ path: `/discusionDetail`, query: { eventId: item.eventId } })">
<div class="flex flex-y flex1 flex-end" style="overflow: hidden;">
<span class="van-multi-ellipsis--l2">
{{ item.eventContent }}
</span>
<div class="flex flex-end flex-center gray m-top10 font-size13">
<div class="flex flex-center"><img src="@/assets/images/icons/resi.png"
class="img_16 m-right7" alt="">
<span>参与 {{ item.total }}</span>
</div>
<div class="flex flex-center" @click.stop="handelClicsupport1(item.eventId)">
<img src="@/assets/images/icons/support.png" alt="" class="img_16 m-right7">
<span>支持 {{ item.supportNum }}</span>
</div>
<div class="flex flex-center" @click.stop="handelClicopposeNum(item.eventId)">
<img src="@/assets/images/icons/oppose.png" alt=""
class="img_16 m-right7"><span>反对
{{ item.opposeNum }}</span></div>
</div>
</div>
</div>
</div> </div>
<div class="card m-top10"> <div class="card m-top10">
<div class="title"> <div class="title">
<div class="flex flex-center2"> <div class="flex flex-center2">

5
src/views/register/index.vue

@ -13,9 +13,10 @@
<van-button block class="button" type="info" round @click="submit">注册</van-button> <van-button block class="button" type="info" round @click="submit">注册</van-button>
</div> </div>
</van-tab> </van-tab>
<van-tab title="实名认证"> <van-tab title="志愿者注册">
<div class="block container"> <div class="block container">
<van-field v-model="realName" label="真实姓名" placeholder="请输入" required /> <van-field v-model="realName" label="昵称" placeholder="请输入" required />
<van-field v-model="realName" label="姓名" placeholder="请输入" required />
<van-field v-model="idNum" label="身份证号" placeholder="请输入" required/> <van-field v-model="idNum" label="身份证号" placeholder="请输入" required/>
<van-field v-model="phone" label="手机号" placeholder="请输入" required /> <van-field v-model="phone" label="手机号" placeholder="请输入" required />
<van-field v-model="smsCode" label="验证码" placeholder="请输入" required> <van-field v-model="smsCode" label="验证码" placeholder="请输入" required>

11
src/views/userInfo/index.vue

@ -1,18 +1,18 @@
<template> <template>
<div> <div class="container"> <div> <div class="container">
<div class="block"> <div class="block">
<van-cell title="头像" required> <!-- <van-cell title="头像" required>
<template> <template>
<van-image width="37" height="37" :src="userInfo.headImgUrl" round /> <van-image width="37" height="37" :src="userInfo.headImgUrl" round />
</template> </template>
</van-cell> </van-cell> -->
<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="0"></van-radio> <van-radio :name="0"></van-radio>
<van-radio :name="1" 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="mobile" placeholder="请输入" /> <van-field label="手机号" v-model="mobile" placeholder="请输入" />
@ -348,7 +348,6 @@ export default {
// //
getAllAgencyStreet() { getAllAgencyStreet() {
getAllAgencyStreet({}).then(res => { getAllAgencyStreet({}).then(res => {
this.streetOptions = res.data this.streetOptions = res.data
? res.data.map(item => { ? res.data.map(item => {
return { return {

Loading…
Cancel
Save