|
@@ -1,692 +1,1187 @@
|
|
|
-<template>
|
|
|
- <view class="activity-content">
|
|
|
- <!-- tabs -->
|
|
|
- <view class="top-content">
|
|
|
- <view class="tab">
|
|
|
- <view class="tab-item" v-for="(item,index) in tabs" :key="item.id">
|
|
|
- <view class="scroll-tab-item" :class="{active:tabsActive==index}" @click="toggleTab(item,index)">{{item.name}}
|
|
|
- <image src="@/static/img/border_act.png" class="border_act" v-if="tabsActive==index" mode=""></image>
|
|
|
- </view>
|
|
|
-
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <!-- 搜索 -->
|
|
|
- <view class="index-fixed">
|
|
|
- <icon type="search" size="15" class="search_ico"/>
|
|
|
- <text>请输入关键字</text>
|
|
|
- </view>
|
|
|
- <view class="select-conyent">
|
|
|
- <van-dropdown-menu active-color="#333333">
|
|
|
- <van-dropdown-item id="statusstate" :title="activeStateName">
|
|
|
- <view class="menu-items">
|
|
|
- <view class="menu-items-box" @click="overallBtn('statusstate',key)" v-for="key in listActivityStaus" :key="key.Id">
|
|
|
- <view class="items-box">
|
|
|
- <u-icon v-if="key.IsChoose" name="checkbox-mark" color="#2C83FF" size="24"></u-icon>
|
|
|
- </view>
|
|
|
- <text>{{key.StatusName}}</text>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <view class="replacement-box">
|
|
|
- <view class="replacement">
|
|
|
- <text @click="replacementBtn('statusstate')" class="replacement-box">重置</text>
|
|
|
- <text @click="replacementConfirm('statusstate')">确定</text>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </van-dropdown-item>
|
|
|
- <van-dropdown-item id="industry" :title="chartPermissionName">
|
|
|
- <view class="decide">
|
|
|
- <view class="items-box">
|
|
|
- <u-icon v-if="isShowJurisdiction" name="checkbox-mark" color="#2C83FF" size="24"></u-icon>
|
|
|
- </view>
|
|
|
- <text @click="isJurisdiction">始终只展示有权限的行业</text>
|
|
|
- </view>
|
|
|
- <view class="menu-items">
|
|
|
- <view class="menu-items-box" v-for="item in listChartPermission" :key="item.ChartPermissionId" @click="overallClick('industry',item)">
|
|
|
- <view class="items-box">
|
|
|
- <u-icon v-if="item.IsChoose" name="checkbox-mark" color="#2C83FF" size="24"></u-icon>
|
|
|
- </view>
|
|
|
- <text>{{item.PermissionName}}</text>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <view class="replacement">
|
|
|
- <text @click="replacementBtn('industry')" class="replacement-box">重置</text>
|
|
|
- <text @click="replacementConfirm('industry')">确定</text>
|
|
|
- </view>
|
|
|
- </van-dropdown-item>
|
|
|
- <van-dropdown-item id="genre" :title="activityTypeName">
|
|
|
- <view class="menu-items">
|
|
|
- <view class="menu-items-box" @click="overallActivity('genre',item)" v-for="(item,index) in listActivityType" :key="item.ActivityTypeId">
|
|
|
- <view class="items-box">
|
|
|
- <u-icon v-if="item.IsChoose" name="checkbox-mark" color="#2C83FF" size="24"></u-icon>
|
|
|
- </view>
|
|
|
- <text>{{item.ActivityTypeName}}</text>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <view class="replacement">
|
|
|
- <text @click="replacementBtn('genre')" class="replacement-box">重置</text>
|
|
|
- <text @click="replacementConfirm('genre')">确定</text>
|
|
|
- </view>
|
|
|
- </van-dropdown-item>
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- </van-dropdown-menu>
|
|
|
- </view>
|
|
|
-
|
|
|
- </view>
|
|
|
- <view class="box-content">
|
|
|
- <view class="content-list" v-for="(item,index) in collectList" :key="index">
|
|
|
- <view class="list-top" @click="goDetail(item)">
|
|
|
- <view class="list-top-box">
|
|
|
- <text>{{item.ActivityTypeName}}</text>
|
|
|
- <view class="city">
|
|
|
- <image src="../../static/img/advice_ico.png" mode=""></image>
|
|
|
- <text>城市</text>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <text style="color: #2ACDD9; font-size: 26rpx;">{{item.ActiveState == 1 ? '未开始': item.ActiveState == 2 ?'进行中' :'已结束'}}</text>
|
|
|
- </view>
|
|
|
- <view class="list-center" @click="goDetail(item)">
|
|
|
- <text class="title">{{item.ActivityName}}</text>
|
|
|
- <text v-if="item.Expert">专家背景:{{item.Expert}}</text>
|
|
|
- <text v-if="item.DistinguishedGuest">嘉宾:{{item.DistinguishedGuest}}</text>
|
|
|
- <text>活动时间:{{item.ActivityTime}}</text>
|
|
|
- </view>
|
|
|
- <view class="list-bottom">
|
|
|
- <view class="multi" v-if="item.ActivityTypeId==1||item.ActivityTypeId==2||(item.ActivityTypeId==3&&item.IsLimitPeople==0)">
|
|
|
- <text v-if="item.IsSignup!==1" @click="signupAdd(item.ActivityId,1)">预约外呼</text>
|
|
|
- <text v-else @click="signupCancel(item.ActivityId,1)">取消外呼</text>
|
|
|
- <text style="border-left: 1px solid #E5E5E5;">会议提醒</text>
|
|
|
- </view>
|
|
|
- <view class="multi-text" v-else>
|
|
|
- <text v-if="item.IsSignup!==1" @click="signupAdd(item.ActivityId,2)">我要报名({{item.SignupNum}}/{{item.LimitPeopleNum}})</text>
|
|
|
- <text v-else @click="signupCancel(item.ActivityId,2)">取消报名({{item.SignupNum}}/{{item.LimitPeopleNum}})</text>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="totalPage>1"/>
|
|
|
- </view>
|
|
|
- <modalDialog :isShow="isShow" :signupType="signupType" :goFollow="goFollow" :signupStatus="signupStatus" :isCancelShow="isCancelShow" :idTypeCancel="idTypeCancel"/>
|
|
|
- </view>
|
|
|
-</template>
|
|
|
-
|
|
|
-<script>
|
|
|
- import {activity} from "@/config/api.js"
|
|
|
- import { Throttle } from '@/config/util.js'
|
|
|
- import modalDialog from '@/components/modalDialog.vue'
|
|
|
- let app = getApp()
|
|
|
- export default {
|
|
|
- data() {
|
|
|
- return {
|
|
|
- tabs:[{
|
|
|
- name:'全部活动',
|
|
|
- id:1
|
|
|
- },
|
|
|
- {
|
|
|
- name:'我的日程',
|
|
|
- id:2
|
|
|
- },],
|
|
|
- tabsActive:0,
|
|
|
- page_no:1,
|
|
|
- pageSize:10,
|
|
|
- collectList:[],
|
|
|
- status:'loadmore',
|
|
|
- totalPage:'',
|
|
|
- haveData:true,
|
|
|
- loadText: {
|
|
|
- loadmore: '上拉加载更多',
|
|
|
- loading: '加载中',
|
|
|
- nomore: '已经到底了'
|
|
|
- },
|
|
|
- listActivityStaus:[],//状态
|
|
|
- listActivityType:[],//类型
|
|
|
- listChartPermission:[],//分类
|
|
|
- isShowJurisdiction:false,
|
|
|
- activeState:'1',//活动进行状态
|
|
|
- activityTypeIds:'',//活动类型id 多个用 , 隔开
|
|
|
- chartPermissionIds:'',//行业id 多个用 , 隔开
|
|
|
- activeStateName:'未开始',
|
|
|
- chartPermissionName:'行业分类',
|
|
|
- activityTypeName:'活动类型',
|
|
|
- isShowJurisdiction:false,
|
|
|
- isGain:true,
|
|
|
- signupType:'',//关注类型
|
|
|
- goFollow:false,//是否关注公众号
|
|
|
- signupStatus:'Success',//4个不同的类型提示文案
|
|
|
- isShow:false,//弹框
|
|
|
- isCancelShow:false,
|
|
|
- idTypeCancel:{
|
|
|
- id:'',
|
|
|
- type:1
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- computed:{
|
|
|
- //是否仅展示有权限的,1是,0否 默认为0
|
|
|
- isId(){
|
|
|
- return this.isShowJurisdiction ? 1:0
|
|
|
- }
|
|
|
- },
|
|
|
- watch:{
|
|
|
- },
|
|
|
- components: {
|
|
|
- modalDialog
|
|
|
- },
|
|
|
- onLoad(option) {
|
|
|
- if(option.typeName) {
|
|
|
- console.log(option);
|
|
|
- this.activeState=option.statesId//活动进行状态
|
|
|
- this.activityTypeIds=option.typeIds//活动类型id 多个用 , 隔开
|
|
|
- this.chartPermissionIds=option.chartIds//行业id 多个用 , 隔开
|
|
|
- this.activeStateName=option.stateName
|
|
|
- this.chartPermissionName=option.chartName
|
|
|
- this.activityTypeName=option.typeName
|
|
|
- this.isGain=false
|
|
|
- console.log(this.activeState);
|
|
|
- console.log(this.activityTypeIds);
|
|
|
- console.log(this.chartPermissionIds);
|
|
|
- }else {
|
|
|
- this.isGain=true
|
|
|
- }
|
|
|
- this.getUserSearchContent()
|
|
|
- },
|
|
|
- /* 触底 */
|
|
|
- onReachBottom: Throttle(function() {
|
|
|
- if(this.status === 'nomore') return ;
|
|
|
- this.status = 'loading';
|
|
|
- this.page_no++;
|
|
|
- this.getList()
|
|
|
- }),
|
|
|
- methods: {
|
|
|
- //获取列表
|
|
|
- getList(){
|
|
|
- activity.getActivityList({
|
|
|
- PageSize:this.pageSize,
|
|
|
- CurrentIndex:this.page_no,
|
|
|
- ActiveState:this.activeState,//活动进行状态
|
|
|
- ActivityTypeIds:this.activityTypeIds,//活动类型id 多个用 , 隔开
|
|
|
- ChartPermissionIds:this.chartPermissionIds,//行业id 多个用 , 隔开
|
|
|
- }).then(res=>{
|
|
|
- if(res.Ret !== 200) return
|
|
|
- this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
|
|
|
- this.totalPage = res.Data.Paging.Pages;//总页数
|
|
|
- if(this.page_no === 1) {
|
|
|
- this.collectList = res.Data.List || [];
|
|
|
- this.haveData = this.collectList.length ? true : false
|
|
|
- if(this.refresh) {
|
|
|
- uni.stopPullDownRefresh();
|
|
|
- this.refresh = false;
|
|
|
- }
|
|
|
- }else {
|
|
|
- this.collectList.push(...res.Data.List)
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //获取活动详情接口
|
|
|
- getUserSearchContent(){
|
|
|
- activity.getUserSearchContent({
|
|
|
- IsShowJurisdiction:this.isId
|
|
|
- }).then(res=>{
|
|
|
- this.isShowJurisdiction=res.Data.IsShowJurisdiction
|
|
|
- this.listActivityStaus=res.Data.ListActivityStaus
|
|
|
- this.listActivityType=res.Data.ListActivityType
|
|
|
- this.listChartPermission=res.Data.ListChartPermission
|
|
|
- if(this.isGain) {
|
|
|
- this.preserve()
|
|
|
- }else {
|
|
|
- this.getList()
|
|
|
- }
|
|
|
-
|
|
|
- })
|
|
|
- },
|
|
|
- //报名
|
|
|
- signupAdd(id,type){
|
|
|
- activity.signupAdd({
|
|
|
- ActivityId:id,
|
|
|
- SignupType:type,
|
|
|
- }).then(res=>{
|
|
|
- if(res.Ret==200){
|
|
|
- console.log(res);
|
|
|
- if(!res.Data.GoFollow){
|
|
|
- this.isShow=true
|
|
|
- console.log(this.isShow);
|
|
|
- }
|
|
|
- this.signupType=res.Data.SignupType
|
|
|
- this.goFollow=res.Data.GoFollow
|
|
|
- this.signupStatus=res.Data.SignupStatus
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //取消报名
|
|
|
- signupCancel(id,type){
|
|
|
- this.isCancelShow=true
|
|
|
- this.idTypeCancel={
|
|
|
- id,
|
|
|
- type
|
|
|
- }
|
|
|
- // activity.signupCancel({
|
|
|
- // ActivityId:id,
|
|
|
- // SignupType:type,
|
|
|
- // }).then(res=>{
|
|
|
- // if(res.Ret==200){
|
|
|
-
|
|
|
- // }
|
|
|
- // })
|
|
|
- },
|
|
|
- preserve(){
|
|
|
- const arr=[]
|
|
|
- const str=[]
|
|
|
- this.listActivityStaus.forEach(item=>{
|
|
|
- if(item.IsChoose) {
|
|
|
- arr.push(item.Id)
|
|
|
- str.push(item.StatusName)
|
|
|
- }
|
|
|
- })
|
|
|
- if(str.length==this.listActivityStaus.length) {
|
|
|
- this.activeStateName='所有状态'
|
|
|
- }else if(str.length<=0) {
|
|
|
- this.activeStateName='活动状态'
|
|
|
- }else {
|
|
|
- this.activeStateName=str.join(',')
|
|
|
- }
|
|
|
- this.activeState = arr.join(',')
|
|
|
- const hyArr=[]
|
|
|
- const hyStr=[]
|
|
|
- this.listChartPermission.forEach(key=>{
|
|
|
- if(key.IsChoose){
|
|
|
- hyArr.push(key.ChartPermissionId)
|
|
|
- hyStr.push(key.PermissionName)
|
|
|
- }
|
|
|
- })
|
|
|
- if(hyStr.length==this.listChartPermission.length) {
|
|
|
- this.chartPermissionName='所有行业'
|
|
|
- }else if(hyStr.length<=0){
|
|
|
- this.chartPermissionName='行业分类'
|
|
|
- }else {
|
|
|
- this.chartPermissionName=hyStr.join(',')
|
|
|
- }
|
|
|
- this.chartPermissionIds = hyArr.join(',')
|
|
|
- const lxArr=[]
|
|
|
- const lxStr=[]
|
|
|
- this.listActivityType.forEach(key=>{
|
|
|
- if(key.IsChoose){
|
|
|
- lxArr.push(key.ActivityTypeId)
|
|
|
- lxStr.push(key.ActivityTypeName)
|
|
|
- }
|
|
|
- })
|
|
|
- if(lxStr.length==this.listActivityType.length) {
|
|
|
- this.activityTypeName='所有活动'
|
|
|
- }else if(lxStr.length<=0){
|
|
|
- this.activityTypeName='活动类型'
|
|
|
- }else{this.activityTypeName=lxStr.join(',')}
|
|
|
- this.activityTypeIds = lxArr.join(',')
|
|
|
- this.getList()
|
|
|
- },
|
|
|
- toggleTab(item,index){
|
|
|
- if(this.tabsActive!==index) {
|
|
|
- this.tabsActive=index
|
|
|
- }
|
|
|
- },
|
|
|
- //状态的下拉选择
|
|
|
- overallBtn(type,item){
|
|
|
- const arr=[]
|
|
|
- const str=[]
|
|
|
- this.listActivityStaus.forEach(key=>{
|
|
|
- if(key.Id==item.Id){
|
|
|
- key.IsChoose=!key.IsChoose
|
|
|
- }
|
|
|
- })
|
|
|
- this.listActivityStaus.forEach(key=>{
|
|
|
- if(key.IsChoose){
|
|
|
- arr.push(key.Id)
|
|
|
- str.push(key.StatusName)
|
|
|
- }
|
|
|
- })
|
|
|
- if(str.length==this.listActivityStaus.length) {
|
|
|
- this.activeStateName='所有状态'
|
|
|
- }else if(str.length<=0) {
|
|
|
- this.activeStateName='活动状态'
|
|
|
- }else {
|
|
|
- this.activeStateName=str.join(',')
|
|
|
- }
|
|
|
- this.activeState = arr.join(',')
|
|
|
-
|
|
|
- },
|
|
|
- // 行业的下拉选择
|
|
|
- overallClick(type,item){
|
|
|
- const arr=[]
|
|
|
- const str=[]
|
|
|
- this.listChartPermission.forEach(key=>{
|
|
|
- if(key.ChartPermissionId==item.ChartPermissionId){
|
|
|
- key.IsChoose=!key.IsChoose
|
|
|
- }
|
|
|
- })
|
|
|
- this.listChartPermission.forEach(key=>{
|
|
|
- if(key.IsChoose){
|
|
|
- arr.push(key.ChartPermissionId)
|
|
|
- str.push(key.PermissionName)
|
|
|
- }
|
|
|
- })
|
|
|
- if(str.length==this.listChartPermission.length) {
|
|
|
- this.chartPermissionName='所有行业'
|
|
|
- }else if(str.length<=0){
|
|
|
- this.chartPermissionName='行业分类'
|
|
|
- }else {
|
|
|
- this.chartPermissionName=str.join(',')
|
|
|
- }
|
|
|
- this.chartPermissionIds = arr.join(',')
|
|
|
-
|
|
|
- },
|
|
|
- //类型的下拉选择
|
|
|
- overallActivity(type,item){
|
|
|
- const arr=[]
|
|
|
- const str=[]
|
|
|
- this.listActivityType.forEach(key=>{
|
|
|
- if(key.ActivityTypeId==item.ActivityTypeId){
|
|
|
- key.IsChoose=!key.IsChoose
|
|
|
- }
|
|
|
- })
|
|
|
- this.listActivityType.forEach(key=>{
|
|
|
- if(key.IsChoose){
|
|
|
- arr.push(key.ActivityTypeId)
|
|
|
- str.push(key.ActivityTypeName)
|
|
|
- }
|
|
|
- })
|
|
|
- if(str.length==this.listActivityType.length) {
|
|
|
- this.activityTypeName='所有活动'
|
|
|
- }else if(str.length<=0){
|
|
|
- this.activityTypeName='活动类型'
|
|
|
- }else{this.activityTypeName=str.join(',')}
|
|
|
- this.activityTypeIds = arr.join(',')
|
|
|
- },
|
|
|
- /* 新布局产业选项重置按钮 */
|
|
|
- replacementBtn(type){
|
|
|
- if(type=='statusstate'){
|
|
|
- this.listActivityStaus.forEach(item=>item.IsChoose=false)
|
|
|
- this.listActivityStaus[0].IsChoose=true
|
|
|
- this.activeState='1'
|
|
|
- this.activeStateName='未开始'
|
|
|
- }else if(type=='industry') {
|
|
|
- this.listChartPermission.forEach(item=>item.IsChoose=false)
|
|
|
- this.chartPermissionIds=''
|
|
|
- this.chartPermissionName='行业分类'
|
|
|
- }else {
|
|
|
- this.listActivityType.forEach(item=>item.IsChoose=false)
|
|
|
- this.activityTypeIds=''
|
|
|
- this.activityTypeName='活动类型'
|
|
|
- }
|
|
|
- },
|
|
|
- /* 新布局产业选项确定按钮 */
|
|
|
- replacementConfirm(type){
|
|
|
- this.page_no=1
|
|
|
- if(type=='statusstate'){
|
|
|
-
|
|
|
- console.log('状态');
|
|
|
- }else if(type=='industry') {
|
|
|
-
|
|
|
- console.log('行业');
|
|
|
- }else {
|
|
|
-
|
|
|
- console.log('活动');
|
|
|
- }
|
|
|
- this.getList()
|
|
|
- this.selectComponent(`#${type}`).toggle();
|
|
|
- },
|
|
|
- goDetail(item){
|
|
|
- this.$store.dispatch('checkHandle').then(res => {
|
|
|
- app.globalData.isAuth = res.IsAuth;
|
|
|
- app.globalData.isBind = res.IsBind;
|
|
|
- if((!res.IsAuth) && (!res.IsBind)) { // 已授权已绑定
|
|
|
- uni.navigateTo({
|
|
|
- url:'/pages/activityDetail/activityDetail?id=' + item.ActivityId,
|
|
|
- });
|
|
|
- }else if(res.IsAuth) { //未授权
|
|
|
- uni.navigateTo({
|
|
|
- url:'/pages/authGuide/authGuide'
|
|
|
- })
|
|
|
- }else if(res.IsBind && !res.IsAuth){ //已授权未绑定
|
|
|
- uni.navigateTo({
|
|
|
- url:'/pages/login/login'
|
|
|
- })
|
|
|
- }
|
|
|
- })
|
|
|
-
|
|
|
- },
|
|
|
- isJurisdiction(){
|
|
|
- this.isShowJurisdiction = !this.isShowJurisdiction
|
|
|
- this.getUserSearchContent()
|
|
|
- }
|
|
|
- },
|
|
|
- /**
|
|
|
- * 用户点击分享
|
|
|
- */
|
|
|
- onShareAppMessage: function (res) {
|
|
|
- return {
|
|
|
- title: '活动',
|
|
|
- path: '/pages/activity/activity?statesId='+this.activeState+'&typeIds='+this.activityTypeIds+'&chartIds='+this.chartPermissionIds+'&stateName='+this.activeStateName+'&chartName='+this.chartPermissionName+'&typeName='+this.activityTypeName ,
|
|
|
- success: (res)=> {
|
|
|
- },
|
|
|
- fail: (err)=> {
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- }
|
|
|
-</script>
|
|
|
-
|
|
|
-<style scoped lang="scss">
|
|
|
-.activity-content {
|
|
|
- background-color: #f6f6f6;
|
|
|
- .top-content{
|
|
|
- width: 100%;
|
|
|
- background-color: #fff;
|
|
|
- padding: 0 30rpx;
|
|
|
- position: fixed;
|
|
|
- top: 0;
|
|
|
- left: 0;
|
|
|
- z-index: 999;
|
|
|
- .tab {
|
|
|
- display: flex;
|
|
|
- font-size: 32rpx;
|
|
|
- color: #707070;
|
|
|
- .tab-item {
|
|
|
- flex: 1;
|
|
|
- text-align: center;
|
|
|
- .scroll-tab-item {
|
|
|
- height: 78rpx;
|
|
|
- line-height: 48rpx;
|
|
|
- position: relative;
|
|
|
- .border_act {
|
|
|
- position: absolute;
|
|
|
- height: 6rpx;
|
|
|
- width: 340rpx;
|
|
|
- left: 0;
|
|
|
- bottom: 0rpx;
|
|
|
- }
|
|
|
- }
|
|
|
- .active {
|
|
|
- color: #3385FF;
|
|
|
- font-weight: bold;
|
|
|
- font-size: 34rpx;
|
|
|
- }
|
|
|
- image {
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- .index-fixed {
|
|
|
- margin-top: 40rpx;
|
|
|
- width: 100%;
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- height: 70rpx;
|
|
|
- background: #F6F6F6;
|
|
|
- border: 1rpx solid #E5E5E5;
|
|
|
- opacity: 1;
|
|
|
- border-radius: 35rpx;
|
|
|
- padding-left: 34rpx;
|
|
|
- color: #8D8D8D;
|
|
|
- font-size: 24rpx;
|
|
|
- .search_ico {
|
|
|
- padding-right: 16rpx;
|
|
|
- }
|
|
|
- }
|
|
|
- .select-conyent {
|
|
|
- margin-top: 10rpx;
|
|
|
- .decide {
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- margin: 0 auto;
|
|
|
- height: 110rpx;
|
|
|
- width: 690rpx;
|
|
|
- border-bottom: 1px solid #E5E5E5;
|
|
|
- }
|
|
|
- .items-box {
|
|
|
- width: 40rpx;
|
|
|
- }
|
|
|
- .menu-items {
|
|
|
- background-color: #fff;
|
|
|
- width: 100%;
|
|
|
- display: flex;
|
|
|
- flex-wrap:wrap;
|
|
|
- padding: 30rpx 30rpx 0;
|
|
|
- .menu-items-box {
|
|
|
- display: flex;
|
|
|
- width: 50%;
|
|
|
- font-size: 28rpx;
|
|
|
- font-weight: 400;
|
|
|
- margin-bottom: 40rpx;
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- .replacement-box {
|
|
|
- background-color: #fff;
|
|
|
- padding-bottom: 40rpx;
|
|
|
- border-radius: 0rpx 0rpx 16rpx 16rpx;
|
|
|
- }
|
|
|
- .replacement {
|
|
|
- margin: 0rpx 30rpx 20rpx;
|
|
|
- display: flex;
|
|
|
- background-color: #2C83FF;
|
|
|
- opacity: 1;
|
|
|
- height: 60rpx;
|
|
|
- line-height: 58rpx;
|
|
|
- font-size: 28rpx;
|
|
|
- font-weight: 400;
|
|
|
- color: #FFFFFF;
|
|
|
- border-radius: 30rpx;
|
|
|
- text {
|
|
|
- flex: 1;
|
|
|
- text-align: center;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- .replacement-box {
|
|
|
- border: 1rpx solid #2C83FF;
|
|
|
- opacity: 1;
|
|
|
- color: #2C83FF;
|
|
|
- background: #FFFFFF;
|
|
|
- border-radius: 28rpx 0rpx 28rpx 28rpx;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- .box-content {
|
|
|
- padding: 300rpx 34rpx 0;
|
|
|
- .content-list {
|
|
|
- box-sizing: border-box;
|
|
|
- overflow: hidden;
|
|
|
- margin-top: 30rpx;
|
|
|
- height: 396rpx;
|
|
|
- width: 100%;
|
|
|
- background: #FFFFFF;
|
|
|
- box-shadow: 0px 3rpx 6rpx rgba(141, 141, 141, 0.16);
|
|
|
- border-radius: 16rpx;
|
|
|
- font-size: 28rpx;
|
|
|
- .list-top {
|
|
|
- margin: 0 30rpx;
|
|
|
- display: flex;
|
|
|
- justify-content: space-between;
|
|
|
- border-bottom:1rpx solid #E5E5E5 ;
|
|
|
- height: 82rpx;
|
|
|
- line-height: 82rpx;
|
|
|
- color: #333333;
|
|
|
- font-size: 32rpx;
|
|
|
- .list-top-box {
|
|
|
- display: flex;
|
|
|
- }
|
|
|
- .city {
|
|
|
- margin-left: 40rpx;
|
|
|
- display: flex;
|
|
|
- color: #3385FF;
|
|
|
- align-items: center;
|
|
|
- font-size: 26rpx;
|
|
|
- image {
|
|
|
- width: 27rpx;
|
|
|
- height: 32rpx;
|
|
|
- margin-right:12rpx;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- .list-center {
|
|
|
- height: 234rpx;
|
|
|
- width: 100%;
|
|
|
- color: #333333;
|
|
|
- line-height: 60rpx;
|
|
|
- .title {
|
|
|
- padding: 10rpx;
|
|
|
- padding-left: 35rpx;
|
|
|
- white-space:nowrap;
|
|
|
- overflow:hidden;
|
|
|
- text-overflow:ellipsis;
|
|
|
- }
|
|
|
- text {
|
|
|
- padding-left: 50rpx;
|
|
|
- }
|
|
|
- }
|
|
|
- .list-bottom {
|
|
|
- height: 80rpx;
|
|
|
- border-top: 1px solid #E5E5E5;
|
|
|
- .multi {
|
|
|
- display: flex;
|
|
|
- text-align: center;
|
|
|
- line-height: 80rpx;
|
|
|
- color: #3385FF;
|
|
|
- text {
|
|
|
- width: 50%;
|
|
|
- }
|
|
|
- }
|
|
|
- .multi-text {
|
|
|
- line-height: 80rpx;
|
|
|
- color: #3385FF;
|
|
|
- width: 100%;
|
|
|
- text-align: center;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-/deep/.van-dropdown-menu {
|
|
|
- background-color: #fff;
|
|
|
- box-shadow: none !important;
|
|
|
- padding-top: 20rpx;
|
|
|
- }
|
|
|
-
|
|
|
-/deep/.van-dropdown-menu__item{
|
|
|
- box-sizing: border-box;
|
|
|
- width: 190rpx;
|
|
|
- margin-right:40rpx;
|
|
|
- padding-right: 20rpx;
|
|
|
- height: 51rpx;
|
|
|
- border-radius: 26rpx;
|
|
|
- background: #F8F8FA;
|
|
|
- }
|
|
|
-/deep/.van-dropdown-item{
|
|
|
- margin-top: -10rpx;
|
|
|
-}
|
|
|
-/deep/[data-index='2'] {
|
|
|
- margin-right:0rpx;
|
|
|
-}
|
|
|
-/deep/ .van-ellipsis {
|
|
|
- font-size: 24rpx;
|
|
|
-}
|
|
|
+<template>
|
|
|
+ <view class="container activity-content">
|
|
|
+ <!-- tabs -->
|
|
|
+ <view class="top-content">
|
|
|
+ <view class="tab">
|
|
|
+ <view class="tab-item" v-for="(item,index) in tabs" :key="item.id">
|
|
|
+ <view class="scroll-tab-item" :class="{active:tabsActive==index}" @click="toggleTab(item,index)">
|
|
|
+ {{item.name}}
|
|
|
+ <image src="@/static/img/border_act.png" class="border_act" v-if="tabsActive==index" mode="">
|
|
|
+ </image>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <!-- 搜索 -->
|
|
|
+ <view class="index-fixed" v-if="tabsActive==0" @click="goSearch">
|
|
|
+ <icon type="search" size="15" class="search_ico" />
|
|
|
+ <text>请输入关键字</text>
|
|
|
+ </view>
|
|
|
+ <view class="select-conyent" v-if="tabsActive==0">
|
|
|
+ <van-dropdown-menu active-color="#333333">
|
|
|
+ <van-dropdown-item id="statusstate" :title="activeStateName">
|
|
|
+ <view class="menu-items">
|
|
|
+ <view class="menu-items-box" @click="overallBtn('statusstate',key)"
|
|
|
+ v-for="key in listActivityStaus" :key="key.Id">
|
|
|
+ <view class="items-box">
|
|
|
+ <u-icon v-if="key.IsChoose" name="checkbox-mark" color="#2C83FF" size="24"></u-icon>
|
|
|
+ </view>
|
|
|
+ <text>{{key.StatusName}}</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="replacement-box">
|
|
|
+ <view class="replacement">
|
|
|
+ <text @click="replacementBtn('statusstate')" class="replacement-box">重置</text>
|
|
|
+ <text @click="replacementConfirm('statusstate')">确定</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </van-dropdown-item>
|
|
|
+ <van-dropdown-item id="industry" :title="chartPermissionName">
|
|
|
+ <view class="decide">
|
|
|
+ <view class="items-box">
|
|
|
+ <u-icon v-if="isShowJurisdiction" name="checkbox-mark" color="#2C83FF" size="24">
|
|
|
+ </u-icon>
|
|
|
+ </view>
|
|
|
+ <text @click="isJurisdiction">始终只展示有权限的行业</text>
|
|
|
+ </view>
|
|
|
+ <view class="menu-dashed">
|
|
|
+
|
|
|
+ </view>
|
|
|
+ <view class="menu-items">
|
|
|
+ <view class="menu-items-box" v-for="item in listChartPermission"
|
|
|
+ :key="item.ChartPermissionId" @click="overallClick('industry',item)">
|
|
|
+ <view class="items-box">
|
|
|
+ <u-icon v-if="item.IsChoose" name="checkbox-mark"
|
|
|
+ :color="isShowJurisdiction?'#ccc':'#2C83FF'" size="24"></u-icon>
|
|
|
+ </view>
|
|
|
+ <text>{{item.PermissionName}}</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="replacement">
|
|
|
+ <text @click="replacementBtn('industry')" class="replacement-box">重置</text>
|
|
|
+ <text @click="replacementConfirm('industry')">确定</text>
|
|
|
+ </view>
|
|
|
+ </van-dropdown-item>
|
|
|
+ <van-dropdown-item id="genre" :title="activityTypeName">
|
|
|
+ <view class="menu-items">
|
|
|
+ <view class="menu-items-box" @click="overallActivity('genre',item)"
|
|
|
+ v-for="(item,index) in listActivityType" :key="item.ActivityTypeId">
|
|
|
+ <view class="items-box">
|
|
|
+ <u-icon v-if="item.IsChoose" name="checkbox-mark" color="#2C83FF" size="24">
|
|
|
+ </u-icon>
|
|
|
+ </view>
|
|
|
+ <text>{{item.ActivityTypeName}}</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="replacement">
|
|
|
+ <text @click="replacementBtn('genre')" class="replacement-box">重置</text>
|
|
|
+ <text @click="replacementConfirm('genre')">确定</text>
|
|
|
+ </view>
|
|
|
+ </van-dropdown-item>
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ </van-dropdown-menu>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ </view>
|
|
|
+ <view class="box-content" :class="{head:tabsActive==1}" v-if="haveData">
|
|
|
+ <view class="content-list" v-for="(item,index) in collectList" :key="index">
|
|
|
+ <view class="list-top" @click="goDetail(item)">
|
|
|
+ <view class="list-top-box">
|
|
|
+ <text class="title">{{item.ActivityTypeName}}</text>
|
|
|
+ <view class="city" v-if="item.City">
|
|
|
+ <image src="../../static/img/location.png" mode=""></image>
|
|
|
+ <text>{{item.City}}</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <text style="color: #2ACDD9; font-size: 26rpx;" v-if="item.ActiveState==1">未开始</text>
|
|
|
+ <text style="color: #FF4040; font-size: 26rpx;" v-if="item.ActiveState==2">进行中</text>
|
|
|
+ <text style="color: #999999; font-size: 26rpx;" v-if="item.ActiveState==3">已结束</text>
|
|
|
+ </view>
|
|
|
+ <view class="" style="display: flex;">
|
|
|
+ <view class="list-center" @click="goDetail(item)">
|
|
|
+
|
|
|
+ <text class="title" v-if="item.IsBrackets==1">{{item.ActivityName}}</text>
|
|
|
+ <text class="title-two" v-else>艾尔复盘</text>
|
|
|
+ <view class="setting-center">
|
|
|
+ <view class="">
|
|
|
+ <view class="box-expert" style="padding-bottom: 30rpx ;"
|
|
|
+ v-if="item.ActivityTypeName=='专家电话会'||item.ActivityTypeName=='专家线下沙龙'">
|
|
|
+ <view style="width: 140rpx;">
|
|
|
+ 专家背景:
|
|
|
+ </view>
|
|
|
+ <view style="width:400rpx;">{{item.Expert}}</view>
|
|
|
+ </view>
|
|
|
+ <text style="padding-bottom: 30rpx ;"
|
|
|
+ v-if="item.ActivityTypeName=='公司调研电话会'||item.ActivityTypeName=='公司线下调研'">嘉宾:{{item.DistinguishedGuest}}</text>
|
|
|
+ <text style="padding-bottom: 30rpx ;"
|
|
|
+ v-if="item.ActivityTypeName=='分析师电话会'||item.ActivityTypeName=='分析师线下沙龙'">主讲人:{{item.Speaker}}</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <text style="padding-bottom: 30rpx ;">活动时间:{{item.ActivityTime}}</text>
|
|
|
+ </view>
|
|
|
+ <view class="" style="display: flex;align-items: center;padding-right: 30rpx;">
|
|
|
+ <u-icon style="padding-bottom: 30rpx ;" name="arrow-right" color="#BDBDBD" size="34"></u-icon>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="list-bottom"
|
|
|
+ v-if="item.ActiveState==1 &&(item.IsLimitPeople==1 && item.ActivityTypeName=='公司调研电话会')">
|
|
|
+ <view class="multi-text">
|
|
|
+ <text v-if="item.IsSignup!==1"
|
|
|
+ @click="wanttosignup(item.ActivityId)">我要报名({{item.SignupNum}}/{{item.LimitPeopleNum}})</text>
|
|
|
+ <text v-else
|
|
|
+ @click="signupCancel(item.ActivityId,2,item.ActivityTime)">{{item.SignupType ==1?'取消外呼':'取消报名'}}({{item.SignupNum}}/{{item.LimitPeopleNum}})</text>
|
|
|
+
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="list-bottom" v-else-if="item.ActiveState==1">
|
|
|
+ <view class="multi"
|
|
|
+ v-if="item.ActivityTypeId==1||item.ActivityTypeId==2||(item.ActivityTypeId==3&&item.IsLimitPeople==0)">
|
|
|
+ <text class="multi-outbound" v-if="item.IsSignup!==1"
|
|
|
+ @click="signupAdd(item.ActivityId,1)">预约外呼</text>
|
|
|
+ <text class="multi-outbound" v-else
|
|
|
+ @click="signupCancel(item.ActivityId,1,item.ActivityTime)">取消外呼</text>
|
|
|
+ <text class="multi-remind" v-if="item.IsCancelMeetingReminder==0"
|
|
|
+ style="border-left: 1px solid #E5E5E5;"
|
|
|
+ @click="meetingReminderAdd(item.ActivityId)">会议提醒</text>
|
|
|
+ <text class="multi-remind" v-else style="border-left: 1px solid #E5E5E5;"
|
|
|
+ @click="meetingReminderCancel(item.ActivityId)">取消会议提醒</text>
|
|
|
+ </view>
|
|
|
+ <view class="multi-text" v-else>
|
|
|
+ <text v-if="item.IsSignup!==1"
|
|
|
+ @click="signupAdd(item.ActivityId,3)">我要报名({{item.SignupNum}}/{{item.LimitPeopleNum}})</text>
|
|
|
+ <text v-else
|
|
|
+ @click="signupCancel(item.ActivityId,3,item.ActivityTime)">取消报名({{item.SignupNum}}/{{item.LimitPeopleNum}})</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="totalPage>1" />
|
|
|
+
|
|
|
+ </view>
|
|
|
+ <view class="nodata" v-else>
|
|
|
+ <image src="@/static/img/act_search.png" mode="" class="nodata_ico"></image>
|
|
|
+ <text>暂无日程</text>
|
|
|
+ </view>
|
|
|
+ <modalDialog :isShow="isShow" :signupType="signupType" :goFollow="goFollow" :signupStatus="signupStatus"
|
|
|
+ :isCancelShow="isCancelShow" :idTypeCancel="idTypeCancel" @cancelShowBtn="cancelEnsure"
|
|
|
+ :isShowhasPermission="isShowhasPermission" :applyForIsShow="applyForIsShow" :hasPermission="hasPermission"
|
|
|
+ :jurisdictionList="jurisdictionList" />
|
|
|
+ <areaCode :isAreaCode="isAreaCode" :areaCode="areaCode" />
|
|
|
+ <view class="select-box">
|
|
|
+ <u-popup v-model="selectShow" mode="bottom">
|
|
|
+ <view style="color: #333333;font-size: 28rpxrpx;">请选择参会方式</view>
|
|
|
+ <view style="color: #2C83FF;" @click="signupAdd('id',1)">预约外呼</view>
|
|
|
+ <view style="color: #2C83FF;" @click="signupAdd('id',2)">自主拨入</view>
|
|
|
+ <view style="color: #A9AFB8;" @click="selectShow=false">取消</view>
|
|
|
+ </u-popup>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+ import {
|
|
|
+ activity,
|
|
|
+ User
|
|
|
+ } from "@/config/api.js"
|
|
|
+ import {
|
|
|
+ Throttle
|
|
|
+ } from '@/config/util.js'
|
|
|
+ import modalDialog from '@/components/modalDialog.vue'
|
|
|
+ import areaCode from "@/components/areaCode.vue"
|
|
|
+ let app = getApp()
|
|
|
+ export default {
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ tabs: [{
|
|
|
+ name: '全部活动',
|
|
|
+ id: 1
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '我的日程',
|
|
|
+ id: 2
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ tabsActive: 0,
|
|
|
+ page_no: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ collectList: [],
|
|
|
+ status: 'loadmore',
|
|
|
+ totalPage: '',
|
|
|
+ haveData: true,
|
|
|
+ loadText: {
|
|
|
+ loadmore: '上拉加载更多',
|
|
|
+ loading: '加载中',
|
|
|
+ nomore: '已经到底了'
|
|
|
+ },
|
|
|
+ listActivityStaus: [], //状态
|
|
|
+ listActivityType: [], //类型
|
|
|
+ listChartPermission: [], //分类
|
|
|
+ isShowJurisdiction: '',
|
|
|
+ activeState: '1', //活动进行状态
|
|
|
+ activityTypeIds: '', //活动类型id 多个用 , 隔开
|
|
|
+ chartPermissionIds: '', //行业id 多个用 , 隔开
|
|
|
+ activeStateName: '未开始',
|
|
|
+ chartPermissionName: '行业分类',
|
|
|
+ activityTypeName: '活动类型',
|
|
|
+ isShowJurisdiction: false,
|
|
|
+ isGain: true,
|
|
|
+ signupType: '', //关注类型
|
|
|
+ goFollow: false, //是否关注公众号
|
|
|
+ signupStatus: 'Success', //4个不同的类型提示文案
|
|
|
+ isShow: false, //弹框
|
|
|
+ isCancelShow: false,
|
|
|
+ idTypeCancel: {
|
|
|
+ id: '',
|
|
|
+ type: 1,
|
|
|
+ cutId: '',
|
|
|
+ state: '',
|
|
|
+ isNum: false
|
|
|
+ },
|
|
|
+ isId: 0,
|
|
|
+ isAreaCode: false,
|
|
|
+ areaCode: {
|
|
|
+ id: '',
|
|
|
+ type: ''
|
|
|
+ },
|
|
|
+ isNeedAddCountryCode: false,
|
|
|
+ selectShow: false,
|
|
|
+ activityIdAdd: '',
|
|
|
+ hasPermission: '', //是否有权限
|
|
|
+ jurisdictionList: {
|
|
|
+ SellerMobile: '',
|
|
|
+ PopupMsg: '',
|
|
|
+ OperationMode: '',
|
|
|
+ },
|
|
|
+ isShowhasPermission: false, //拨打销售电话
|
|
|
+ applyForIsShow: false, //潜在用户
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ tabsActive() {
|
|
|
+
|
|
|
+ },
|
|
|
+ },
|
|
|
+ components: {
|
|
|
+ modalDialog,
|
|
|
+ areaCode
|
|
|
+ },
|
|
|
+ onLoad(option) {
|
|
|
+ this.countryCcode() //判断是否加区号
|
|
|
+ if (option.typeName) {
|
|
|
+ this.activeState = option.statesId //活动进行状态
|
|
|
+ this.activityTypeIds = option.typeIds //活动类型id 多个用 , 隔开
|
|
|
+ this.chartPermissionIds = option.chartIds //行业id 多个用 , 隔开
|
|
|
+ this.activeStateName = option.stateName
|
|
|
+ this.chartPermissionName = option.chartName
|
|
|
+ this.activityTypeName = option.typeName
|
|
|
+ this.tabsActive = option.tabs
|
|
|
+ this.isGain = false
|
|
|
+ } else {
|
|
|
+ this.isGain = true
|
|
|
+ }
|
|
|
+ if (this.tabsActive == 1) {
|
|
|
+ this.getScheduleList()
|
|
|
+ } else {
|
|
|
+ if (this.isGain) {
|
|
|
+ this.getList()
|
|
|
+ }
|
|
|
+ this.getUserSearchContent()
|
|
|
+ }
|
|
|
+
|
|
|
+ },
|
|
|
+ //切换tabs 刷新页面
|
|
|
+ onTabItemTap() {
|
|
|
+ this.activeStateName = '未开始'
|
|
|
+ this.chartPermissionName = '行业分类'
|
|
|
+ this.activityTypeName = '活动类型'
|
|
|
+ this.activeState = '1' //活动进行状态
|
|
|
+ this.activityTypeIds = '' //活动类型id 多个用 , 隔开
|
|
|
+ this.chartPermissionIds = '' //行业id 多个用 , 隔开
|
|
|
+ this.page_no = 1
|
|
|
+ this.collectList = []
|
|
|
+ this.getList()
|
|
|
+ this.getUserSearchContent()
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ wanttosignup(id) {
|
|
|
+ this.activityIdAdd = id
|
|
|
+ this.selectShow = true
|
|
|
+ },
|
|
|
+ //获取列表
|
|
|
+ getList() {
|
|
|
+ activity.getActivityList({
|
|
|
+ PageSize: this.pageSize,
|
|
|
+ CurrentIndex: this.page_no,
|
|
|
+ ActiveState: this.activeState, //活动进行状态
|
|
|
+ ActivityTypeIds: this.activityTypeIds, //活动类型id 多个用 , 隔开
|
|
|
+ ChartPermissionIds: this.chartPermissionIds, //行业id 多个用 , 隔开
|
|
|
+ IsShowJurisdiction: this.isId
|
|
|
+ }).then(res => {
|
|
|
+ if (res.Ret !== 200) return
|
|
|
+ this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
|
|
|
+ this.totalPage = res.Data.Paging.Pages; //总页数
|
|
|
+ if (this.page_no === 1) {
|
|
|
+ this.collectList = res.Data.List || [];
|
|
|
+ this.haveData = this.collectList.length ? true : false
|
|
|
+ if (this.refresh) {
|
|
|
+ uni.stopPullDownRefresh();
|
|
|
+ this.refresh = false;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.collectList.push(...res.Data.List)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //我的日程
|
|
|
+ getScheduleList() {
|
|
|
+ activity.getScheduleList({
|
|
|
+ PageSize: this.pageSize,
|
|
|
+ CurrentIndex: this.page_no,
|
|
|
+ }).then(res => {
|
|
|
+ if (res.Ret !== 200) return
|
|
|
+ this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
|
|
|
+ this.totalPage = res.Data.Paging.Pages; //总页数
|
|
|
+ if (this.page_no === 1) {
|
|
|
+ this.collectList = res.Data.List || [];
|
|
|
+ this.haveData = this.collectList.length ? true : false
|
|
|
+ if (this.refresh) {
|
|
|
+ uni.stopPullDownRefresh();
|
|
|
+ this.refresh = false;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.collectList.push(...res.Data.List)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获取活动详情接口
|
|
|
+ getUserSearchContent(name) {
|
|
|
+ activity.getUserSearchContent({
|
|
|
+ IsShowJurisdiction: this.isId
|
|
|
+ }).then(res => {
|
|
|
+ this.isShowJurisdiction = res.Data.IsShowJurisdiction
|
|
|
+ this.listActivityStaus = res.Data.ListActivityStaus
|
|
|
+ this.listActivityType = res.Data.ListActivityType
|
|
|
+ this.listChartPermission = res.Data.ListChartPermission || []
|
|
|
+ if (this.isGain) {
|
|
|
+ // this.preserve()
|
|
|
+ } else {
|
|
|
+ this.shareOption()
|
|
|
+ }
|
|
|
+ if (name == 'traverse') {
|
|
|
+ const hyArr = []
|
|
|
+ this.listChartPermission.forEach(key => {
|
|
|
+ if (key.IsChoose) {
|
|
|
+ hyArr.push(key.ChartPermissionId)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ this.chartPermissionIds = hyArr.join(',')
|
|
|
+ }
|
|
|
+
|
|
|
+ })
|
|
|
+ },
|
|
|
+ shareOption() {
|
|
|
+ const arr = this.activeState.split(',').map(item => item - 0)
|
|
|
+ this.listActivityStaus.forEach(item => {
|
|
|
+ if (arr.indexOf(item.Id) !== -1) {
|
|
|
+ item.IsChoose = true
|
|
|
+ } else {
|
|
|
+ item.IsChoose = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ const hyarr = this.chartPermissionIds.split(',').map(item => item - 0)
|
|
|
+ this.listChartPermission.forEach(key => {
|
|
|
+ if (hyarr.indexOf(key.ChartPermissionId) !== -1) {
|
|
|
+ key.IsChoose = true
|
|
|
+ } else {
|
|
|
+ key.IsChoose = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ const lxarr = this.activityTypeIds.split(',').map(item => item - 0)
|
|
|
+ this.listActivityType.forEach(key => {
|
|
|
+ if (lxarr.indexOf(key.ActivityTypeId) !== -1) {
|
|
|
+ key.IsChoose = true
|
|
|
+ } else {
|
|
|
+ key.IsChoose = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.preserve()
|
|
|
+ },
|
|
|
+ //获取是否需要填写区号接口
|
|
|
+ countryCcode() {
|
|
|
+ User.countryCcode().then(res => {
|
|
|
+ if (res.Ret == 200) {
|
|
|
+ this.isNeedAddCountryCode = res.Data.IsNeedAddCountryCode
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //报名
|
|
|
+ signupAdd(id, type) {
|
|
|
+ if (app.globalData.isBind && !app.globalData.isAuth) {
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/login/login'
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.selectShow = false
|
|
|
+ if (id == 'id') {
|
|
|
+ id = this.activityIdAdd
|
|
|
+ }
|
|
|
+ if (this.isNeedAddCountryCode) {
|
|
|
+ this.isAreaCode = true
|
|
|
+ this.areaCode = {
|
|
|
+ id,
|
|
|
+ type,
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ activity.signupAdd({
|
|
|
+ ActivityId: id,
|
|
|
+ SignupType: type,
|
|
|
+ }).then(res => {
|
|
|
+ if (res.Ret == 200) {
|
|
|
+ this.hasPermission = res.Data.HasPermission
|
|
|
+ if (this.hasPermission == 1) {
|
|
|
+ const index = this.collectList.findIndex(item => item.ActivityId == id)
|
|
|
+ this.collectList[index].SignupType = type
|
|
|
+ if (res.Data.GoFollow && res.Data.SignupStatus !== 'Success' || !res.Data
|
|
|
+ .GoFollow) {
|
|
|
+ this.isShow = true
|
|
|
+ } else {
|
|
|
+ this.goFollow = res.Data.GoFollow
|
|
|
+ }
|
|
|
+ this.signupType = res.Data.SignupType
|
|
|
+ this.signupStatus = res.Data.SignupStatus
|
|
|
+ this.idTypeCancel = {
|
|
|
+ cutId: res.Data.ActivityId,
|
|
|
+ state: 1
|
|
|
+ }
|
|
|
+ } else if (this.hasPermission == 2) {
|
|
|
+ this.jurisdictionList.SellerMobile = res.Data.SellerMobile
|
|
|
+ this.jurisdictionList.PopupMsg = res.Data.PopupMsg
|
|
|
+ this.isShowhasPermission = true
|
|
|
+ } else if (this.hasPermission == 3 || this.hasPermission == 4) {
|
|
|
+ this.jurisdictionList.PopupMsg = res.Data.PopupMsg
|
|
|
+ this.applyForIsShow = true
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //取消报名
|
|
|
+ signupCancel(id, type, time) {
|
|
|
+ const str = time.replace(/-/g, '/')
|
|
|
+ const date = new Date(str)
|
|
|
+ const times = date.getTime()
|
|
|
+ const num = new Date().getTime()
|
|
|
+ if (times - num <= 3600000) {
|
|
|
+ uni.showModal({
|
|
|
+ confirmText: '知道了',
|
|
|
+ showCancel: false,
|
|
|
+ confirmColor: '#3385FF',
|
|
|
+ content: type == 1 ? '活动开始前1小时内无法取消预约外呼,请联系对口销售处理' : '活动开始前1小时内无法取消报名,请联系对口销售处理'
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.isCancelShow = true
|
|
|
+ this.idTypeCancel = {
|
|
|
+ id,
|
|
|
+ type,
|
|
|
+ cutId: '',
|
|
|
+ state: 0,
|
|
|
+ isNum: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //遍历
|
|
|
+ preserve() {
|
|
|
+ const arr = []
|
|
|
+ const str = []
|
|
|
+ this.listActivityStaus.forEach(item => {
|
|
|
+ if (item.IsChoose) {
|
|
|
+ arr.push(item.Id)
|
|
|
+ str.push(item.StatusName)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (str.length == this.listActivityStaus.length) {
|
|
|
+ this.activeStateName = '所有状态'
|
|
|
+ } else if (str.length <= 0) {
|
|
|
+ this.activeStateName = '活动状态'
|
|
|
+ } else {
|
|
|
+ this.activeStateName = str.join(',')
|
|
|
+ }
|
|
|
+ this.activeState = arr.join(',')
|
|
|
+ const hyArr = []
|
|
|
+ const hyStr = []
|
|
|
+ this.listChartPermission.forEach(key => {
|
|
|
+ if (key.IsChoose) {
|
|
|
+ hyArr.push(key.ChartPermissionId)
|
|
|
+ hyStr.push(key.PermissionName)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (hyStr.length == this.listChartPermission.length) {
|
|
|
+ this.chartPermissionName = '所有行业'
|
|
|
+ } else if (hyStr.length <= 0) {
|
|
|
+ this.chartPermissionName = '行业分类'
|
|
|
+ } else {
|
|
|
+ this.chartPermissionName = hyStr.join(',')
|
|
|
+ }
|
|
|
+ this.chartPermissionIds = hyArr.join(',')
|
|
|
+ const lxArr = []
|
|
|
+ const lxStr = []
|
|
|
+ this.listActivityType.forEach(key => {
|
|
|
+ if (key.IsChoose) {
|
|
|
+ lxArr.push(key.ActivityTypeId)
|
|
|
+ lxStr.push(key.ActivityTypeName)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (lxStr.length == this.listActivityType.length) {
|
|
|
+ this.activityTypeName = '所有活动'
|
|
|
+ } else if (lxStr.length <= 0) {
|
|
|
+ this.activityTypeName = '活动类型'
|
|
|
+ } else {
|
|
|
+ this.activityTypeName = lxStr.join(',')
|
|
|
+ }
|
|
|
+ this.activityTypeIds = lxArr.join(',')
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ //头部tabs切换
|
|
|
+ toggleTab(item, index) {
|
|
|
+ if (this.tabsActive !== index) {
|
|
|
+ this.tabsActive = index
|
|
|
+ }
|
|
|
+ this.page_no = 1
|
|
|
+ this.collectList = []
|
|
|
+ this.status = 'loadmore'
|
|
|
+ if (this.tabsActive == 0) {
|
|
|
+ this.getList()
|
|
|
+ } else {
|
|
|
+ this.getScheduleList()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //状态的下拉选择
|
|
|
+ overallBtn(type, item) {
|
|
|
+ this.listActivityStaus.forEach(key => {
|
|
|
+ if (key.Id == item.Id) {
|
|
|
+ key.IsChoose = !key.IsChoose
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 行业的下拉选择
|
|
|
+ overallClick(type, item) {
|
|
|
+ if (this.isShowJurisdiction) return
|
|
|
+ this.listChartPermission.forEach(key => {
|
|
|
+ if (key.ChartPermissionId == item.ChartPermissionId) {
|
|
|
+ key.IsChoose = !key.IsChoose
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //类型的下拉选择
|
|
|
+ overallActivity(type, item) {
|
|
|
+ this.listActivityType.forEach(key => {
|
|
|
+ if (key.ActivityTypeId == item.ActivityTypeId) {
|
|
|
+ key.IsChoose = !key.IsChoose
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ },
|
|
|
+ /* 新布局产业选项重置按钮 */
|
|
|
+ replacementBtn(type) {
|
|
|
+ if (type == 'statusstate') {
|
|
|
+ this.listActivityStaus.forEach(item => item.IsChoose = false)
|
|
|
+ this.listActivityStaus[0].IsChoose = true
|
|
|
+ this.activeState = '1'
|
|
|
+ this.activeStateName = '未开始'
|
|
|
+ } else if (type == 'industry') {
|
|
|
+ this.chartPermissionIds = ''
|
|
|
+ this.isShowJurisdiction = false
|
|
|
+ this.isId = 2
|
|
|
+ this.getUserSearchContent()
|
|
|
+ this.listChartPermission.forEach(item => item.IsChoose = false)
|
|
|
+ this.chartPermissionName = '行业分类'
|
|
|
+ } else {
|
|
|
+ this.listActivityType.forEach(item => item.IsChoose = false)
|
|
|
+ this.activityTypeIds = ''
|
|
|
+ this.activityTypeName = '活动类型'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /* 新布局产业选项确定按钮 */
|
|
|
+ replacementConfirm(type) {
|
|
|
+ this.page_no = 1
|
|
|
+ if (type == 'statusstate') {
|
|
|
+ const arr = []
|
|
|
+ const str = []
|
|
|
+ this.listActivityStaus.forEach(key => {
|
|
|
+ if (key.IsChoose) {
|
|
|
+ arr.push(key.Id)
|
|
|
+ str.push(key.StatusName)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (str.length == this.listActivityStaus.length) {
|
|
|
+ this.activeStateName = '所有状态'
|
|
|
+ } else if (str.length <= 0) {
|
|
|
+ this.activeStateName = '活动状态'
|
|
|
+ } else {
|
|
|
+ this.activeStateName = str.join(',')
|
|
|
+ }
|
|
|
+ this.activeState = arr.join(',')
|
|
|
+ } else if (type == 'industry') {
|
|
|
+ const arr = []
|
|
|
+ const str = []
|
|
|
+ this.listChartPermission.forEach(key => {
|
|
|
+ if (key.IsChoose) {
|
|
|
+ arr.push(key.ChartPermissionId)
|
|
|
+ str.push(key.PermissionName)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (str.length == this.listChartPermission.length) {
|
|
|
+ this.chartPermissionName = '所有行业'
|
|
|
+ } else if (str.length <= 0) {
|
|
|
+ this.chartPermissionName = '行业分类'
|
|
|
+ } else {
|
|
|
+ this.chartPermissionName = str.join(',')
|
|
|
+ }
|
|
|
+ this.chartPermissionIds = arr.join(',')
|
|
|
+
|
|
|
+ } else {
|
|
|
+ const arr = []
|
|
|
+ const str = []
|
|
|
+ this.listActivityType.forEach(key => {
|
|
|
+ if (key.IsChoose) {
|
|
|
+ arr.push(key.ActivityTypeId)
|
|
|
+ str.push(key.ActivityTypeName)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (str.length == this.listActivityType.length) {
|
|
|
+ this.activityTypeName = '所有活动'
|
|
|
+ } else if (str.length <= 0) {
|
|
|
+ this.activityTypeName = '活动类型'
|
|
|
+ } else {
|
|
|
+ this.activityTypeName = str.join(',')
|
|
|
+ }
|
|
|
+ this.activityTypeIds = arr.join(',')
|
|
|
+ }
|
|
|
+ this.getList()
|
|
|
+ this.selectComponent(`#${type}`).toggle();
|
|
|
+ },
|
|
|
+ //去往详情页面
|
|
|
+ goDetail(item) {
|
|
|
+ if (!app.globalData.isAuth && !app.globalData.isBind) { // 已授权已绑定
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/activityDetail/activityDetail?id=' + item.ActivityId,
|
|
|
+ });
|
|
|
+ } else if (app.globalData.isAuth) { //未授权
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/authGuide/authGuide'
|
|
|
+ })
|
|
|
+ } else if (app.globalData.isBind && !app.globalData.isAuth) { //已授权未绑定
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/login/login'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //是否展示有权限的行业
|
|
|
+ isJurisdiction() {
|
|
|
+ if (this.isShowJurisdiction) {
|
|
|
+ this.isId = 2
|
|
|
+ } else {
|
|
|
+ this.isId = 1
|
|
|
+ }
|
|
|
+ this.getUserSearchContent('traverse')
|
|
|
+ },
|
|
|
+ //取消弹框的确认事件
|
|
|
+ cancelEnsure(obj, type, unm) {
|
|
|
+ this.selectShow = false
|
|
|
+ if (this.tabsActive == 0) {
|
|
|
+ if (obj.cutId == 0) return
|
|
|
+ if (type == 1) {
|
|
|
+ this.collectList.forEach(item => {
|
|
|
+ if (obj.cutId == item.ActivityId) {
|
|
|
+ item.IsSignup = obj.state
|
|
|
+ if (unm) {
|
|
|
+ item.SignupNum = item.SignupNum - 1
|
|
|
+ } else {
|
|
|
+ item.SignupNum = item.SignupNum + 1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.collectList.forEach(item => {
|
|
|
+ if (obj.cutId == item.ActivityId) {
|
|
|
+ item.IsSignup = obj.state
|
|
|
+ if (unm) {
|
|
|
+ item.SignupNum = item.SignupNum - 1
|
|
|
+ } else {
|
|
|
+ item.SignupNum = item.SignupNum + 1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ this.getScheduleList()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //搜索事件
|
|
|
+ goSearch() {
|
|
|
+ /* */
|
|
|
+ this.$store.dispatch('checkHandle').then(res => {
|
|
|
+ app.globalData.isAuth = res.IsAuth;
|
|
|
+ app.globalData.isBind = res.IsBind;
|
|
|
+ if ((!res.IsAuth) && (!res.IsBind)) { //已授权已绑定
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/activitySearch/activitySearch',
|
|
|
+ });
|
|
|
+ } else if (res.IsAuth) { //未授权
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/authGuide/authGuide'
|
|
|
+ })
|
|
|
+ } else if (res.IsBind && !res.IsAuth) { //已授权未绑定
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/login/login'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //添加会议提醒接口
|
|
|
+ meetingReminderAdd(id) {
|
|
|
+ if (app.globalData.isBind && !app.globalData.isAuth) {
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/login/login'
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ activity.meetingReminderAdd({
|
|
|
+ ActivityId: id
|
|
|
+ }).then(res => {
|
|
|
+ if (res.Ret == 200) {
|
|
|
+ this.hasPermission = res.Data.HasPermission
|
|
|
+ if (this.hasPermission == 1) {
|
|
|
+ uni.showModal({
|
|
|
+ confirmText: '知道了',
|
|
|
+ confirmColor: '#3385FF',
|
|
|
+ content: res.Msg,
|
|
|
+ showCancel: false,
|
|
|
+ success: (res) => {
|
|
|
+
|
|
|
+ this.collectList.forEach(item => {
|
|
|
+ if (id == item.ActivityId) {
|
|
|
+ item.IsCancelMeetingReminder = 1
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else if (this.hasPermission == 2) {
|
|
|
+ this.jurisdictionList.SellerMobile = res.Data.SellerMobile
|
|
|
+ this.jurisdictionList.PopupMsg = res.Data.PopupMsg
|
|
|
+ this.isShowhasPermission = true
|
|
|
+ } else if (this.hasPermission == 3 || this.hasPermission == 4) {
|
|
|
+ this.jurisdictionList.PopupMsg = res.Data.PopupMsg
|
|
|
+ this.applyForIsShow = true
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //取消会议提醒接口
|
|
|
+ meetingReminderCancel(id) {
|
|
|
+ activity.meetingReminderCancel({
|
|
|
+ ActivityId: id
|
|
|
+ }).then(res => {
|
|
|
+ if (res.Ret == 200) {
|
|
|
+ uni.showModal({
|
|
|
+ confirmText: '知道了',
|
|
|
+ confirmColor: '#3385FF',
|
|
|
+ content: res.Msg,
|
|
|
+ showCancel: false,
|
|
|
+ success: (res) => {
|
|
|
+ if (res.confirm) {
|
|
|
+ this.collectList.forEach(item => {
|
|
|
+ if (id == item.ActivityId) {
|
|
|
+ item.IsCancelMeetingReminder = 0
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ authentication() {
|
|
|
+ /* */
|
|
|
+ this.$store.dispatch('checkHandle').then(res => {
|
|
|
+ app.globalData.isAuth = res.IsAuth;
|
|
|
+ app.globalData.isBind = res.IsBind;
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ },
|
|
|
+ onShow() {
|
|
|
+ this.authentication()
|
|
|
+ },
|
|
|
+ /**
|
|
|
+ * 用户点击分享
|
|
|
+ */
|
|
|
+ onShareAppMessage: function(res) {
|
|
|
+ return {
|
|
|
+ title: '活动',
|
|
|
+ path: '/pages/activity/activity?statesId=' + this.activeState + '&typeIds=' + this.activityTypeIds +
|
|
|
+ '&chartIds=' + this.chartPermissionIds + '&stateName=' + this.activeStateName + '&chartName=' +
|
|
|
+ this.chartPermissionName + '&typeName=' + this.activityTypeName + '&tabs=' + this.tabsActive,
|
|
|
+ success: (res) => {},
|
|
|
+ fail: (err) => {}
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /* 触底 */
|
|
|
+ onReachBottom: Throttle(function() {
|
|
|
+ if (this.status === 'nomore') return;
|
|
|
+ this.status = 'loading';
|
|
|
+ this.page_no++;
|
|
|
+ if (this.tabsActive == 0) {
|
|
|
+ this.getList()
|
|
|
+ } else {
|
|
|
+ this.getScheduleList()
|
|
|
+ }
|
|
|
+ }),
|
|
|
+ /* 下拉刷新 */
|
|
|
+ onPullDownRefresh: Throttle(function() {
|
|
|
+ this.page_no = 1;
|
|
|
+ this.refresh = true;
|
|
|
+ if (this.tabsActive == 0) {
|
|
|
+ this.getList()
|
|
|
+ } else {
|
|
|
+ this.getScheduleList()
|
|
|
+ }
|
|
|
+ }),
|
|
|
+ }
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped lang="scss">
|
|
|
+ .activity-content {
|
|
|
+ background-color: #F7F7F7;
|
|
|
+
|
|
|
+ .top-content {
|
|
|
+ width: 100%;
|
|
|
+ background-color: #fff;
|
|
|
+ padding: 0 30rpx;
|
|
|
+ position: fixed;
|
|
|
+ top: 0;
|
|
|
+ left: 0;
|
|
|
+ z-index: 999;
|
|
|
+
|
|
|
+ .tab {
|
|
|
+ display: flex;
|
|
|
+ font-size: 32rpx;
|
|
|
+ color: #707070;
|
|
|
+
|
|
|
+ .tab-item {
|
|
|
+ flex: 1;
|
|
|
+ text-align: center;
|
|
|
+
|
|
|
+ .scroll-tab-item {
|
|
|
+ height: 78rpx;
|
|
|
+ line-height: 48rpx;
|
|
|
+ position: relative;
|
|
|
+
|
|
|
+ .border_act {
|
|
|
+ position: absolute;
|
|
|
+ height: 6rpx;
|
|
|
+ width: 340rpx;
|
|
|
+ left: 0;
|
|
|
+ bottom: 0rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .active {
|
|
|
+ color: #3385FF;
|
|
|
+ font-weight: bold;
|
|
|
+ font-size: 34rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ image {}
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .index-fixed {
|
|
|
+ margin-top: 40rpx;
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ height: 70rpx;
|
|
|
+ background: #F6F6F6;
|
|
|
+ border: 1rpx solid #E5E5E5;
|
|
|
+ opacity: 1;
|
|
|
+ border-radius: 35rpx;
|
|
|
+ padding-left: 34rpx;
|
|
|
+ color: #8D8D8D;
|
|
|
+ font-size: 24rpx;
|
|
|
+
|
|
|
+ .search_ico {
|
|
|
+ padding-right: 16rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .select-conyent {
|
|
|
+ margin-top: 10rpx;
|
|
|
+
|
|
|
+ .decide {
|
|
|
+ background-color: #F8F8FA;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ margin: 0 auto;
|
|
|
+ height: 110rpx;
|
|
|
+ width: 100%;
|
|
|
+ padding-left: 30rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .items-box {
|
|
|
+ width: 40rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .menu-items {
|
|
|
+ background-color: #F8F8FA;
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ padding: 30rpx 30rpx 0;
|
|
|
+
|
|
|
+ .menu-items-box {
|
|
|
+ display: flex;
|
|
|
+ width: 50%;
|
|
|
+ font-size: 28rpx;
|
|
|
+ font-weight: 400;
|
|
|
+ margin-bottom: 40rpx;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .replacement-box {
|
|
|
+ background-color: #fff;
|
|
|
+ padding-bottom: 40rpx;
|
|
|
+ border-radius: 0rpx 0rpx 16rpx 16rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .replacement {
|
|
|
+ margin: 0rpx 30rpx 20rpx;
|
|
|
+ display: flex;
|
|
|
+ background-color: #2C83FF;
|
|
|
+ opacity: 1;
|
|
|
+ height: 60rpx;
|
|
|
+ line-height: 58rpx;
|
|
|
+ font-size: 28rpx;
|
|
|
+ font-weight: 400;
|
|
|
+ color: #FFFFFF;
|
|
|
+ border-radius: 30rpx;
|
|
|
+
|
|
|
+ text {
|
|
|
+ flex: 1;
|
|
|
+ text-align: center;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ .replacement-box {
|
|
|
+ border: 1rpx solid #2C83FF;
|
|
|
+ opacity: 1;
|
|
|
+ color: #2C83FF;
|
|
|
+ background: #FFFFFF;
|
|
|
+ border-radius: 28rpx 0rpx 28rpx 28rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .head {
|
|
|
+ padding-top: 80rpx !important;
|
|
|
+ }
|
|
|
+
|
|
|
+ .menu-dashed {
|
|
|
+ margin: 0 auto;
|
|
|
+ width: 682rpx;
|
|
|
+ border-bottom: 2rpx solid #E5E5E5;
|
|
|
+ }
|
|
|
+
|
|
|
+ .box-content {
|
|
|
+ padding: 300rpx 34rpx 20rpx;
|
|
|
+ background-color: #F7F7F7;
|
|
|
+
|
|
|
+ .content-list {
|
|
|
+ box-sizing: border-box;
|
|
|
+ overflow: hidden;
|
|
|
+ margin-top: 30rpx;
|
|
|
+ // height: 396rpx;
|
|
|
+ width: 100%;
|
|
|
+ background: #FFFFFF;
|
|
|
+ box-shadow: 0px 3rpx 6rpx rgba(141, 141, 141, 0.16);
|
|
|
+ border-radius: 16rpx;
|
|
|
+ font-size: 28rpx;
|
|
|
+
|
|
|
+ .list-top {
|
|
|
+ margin: 0 30rpx;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ border-bottom: 1rpx solid #E5E5E5;
|
|
|
+ height: 82rpx;
|
|
|
+ line-height: 82rpx;
|
|
|
+ color: #333333;
|
|
|
+ font-size: 32rpx;
|
|
|
+
|
|
|
+ .list-top-box {
|
|
|
+ display: flex;
|
|
|
+
|
|
|
+ .title {
|
|
|
+ color: #333333;
|
|
|
+ font-size: 30rpx;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .city {
|
|
|
+ margin-left: 40rpx;
|
|
|
+ display: flex;
|
|
|
+ color: #3385FF;
|
|
|
+ align-items: center;
|
|
|
+ font-size: 26rpx;
|
|
|
+
|
|
|
+ image {
|
|
|
+ width: 27rpx;
|
|
|
+ height: 32rpx;
|
|
|
+ margin-right: 12rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .list-center {
|
|
|
+ width: 100%;
|
|
|
+ color: #333333;
|
|
|
+
|
|
|
+ .title {
|
|
|
+ padding: 20rpx 30rpx 24rpx 30rpx;
|
|
|
+ line-height: 46rpx;
|
|
|
+ color: #333;
|
|
|
+ font-size: 28rpx;
|
|
|
+ font-weight: bold;
|
|
|
+ text-indent: -14rpx
|
|
|
+ }
|
|
|
+
|
|
|
+ .title-two {
|
|
|
+ padding-left: 30rpx;
|
|
|
+ padding-bottom: 24rpx;
|
|
|
+ padding-top: 20rpx;
|
|
|
+ line-height: 46rpx;
|
|
|
+ color: #333;
|
|
|
+ font-size: 28rpx;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
+
|
|
|
+ text {
|
|
|
+ padding-left: 30rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .setting-center {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ padding-right: 30rpx;
|
|
|
+
|
|
|
+ .box-expert {
|
|
|
+ margin-left: 30rpx;
|
|
|
+ display: flex;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .list-bottom {
|
|
|
+ height: 80rpx;
|
|
|
+
|
|
|
+ // border-top: 1px solid #E5E5E5;
|
|
|
+ .multi {
|
|
|
+ display: flex;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 80rpx;
|
|
|
+ color: #3385FF;
|
|
|
+
|
|
|
+ text {
|
|
|
+ width: 50%;
|
|
|
+ }
|
|
|
+
|
|
|
+ .multi-outbound {
|
|
|
+ background: #3385FF;
|
|
|
+ color: #FFFFFF;
|
|
|
+ border-radius: 0px 0px 0px 16rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .multi-remind {
|
|
|
+ background: #EBF4FF;
|
|
|
+ color: #3385FF;
|
|
|
+ border-radius: 0px 0px 16rpx 0px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .multi-text {
|
|
|
+ line-height: 80rpx;
|
|
|
+ color: #FFFFFF;
|
|
|
+ width: 100%;
|
|
|
+ text-align: center;
|
|
|
+ background: #3385FF;
|
|
|
+ opacity: 1;
|
|
|
+ border-radius: 0px 0px 16rpx 16rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .nodata {
|
|
|
+ padding-top: 350rpx;
|
|
|
+
|
|
|
+ image {
|
|
|
+ width: 374rpx;
|
|
|
+ height: 288rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .select-box {
|
|
|
+ width: 100%;
|
|
|
+
|
|
|
+ view {
|
|
|
+ height: 95prx;
|
|
|
+ line-height: 95rpx;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 32rpx;
|
|
|
+ border-bottom: 1rpx solid #EBEBEB;
|
|
|
+ ;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/.van-dropdown-menu {
|
|
|
+ background-color: #fff;
|
|
|
+ box-shadow: none !important;
|
|
|
+ padding-top: 20rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/.van-dropdown-menu__item {
|
|
|
+ box-sizing: border-box;
|
|
|
+ width: 190rpx;
|
|
|
+ margin-right: 40rpx;
|
|
|
+ padding-right: 20rpx;
|
|
|
+ height: 51rpx;
|
|
|
+ border-radius: 26rpx;
|
|
|
+ background: #F8F8FA;
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/.van-dropdown-item {
|
|
|
+ margin-top: -10rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/[data-index='2'] {
|
|
|
+ margin-right: 0rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/ .van-ellipsis {
|
|
|
+ font-size: 24rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
</style>
|