Browse Source

no message

aXin-0810 1 tuần trước cách đây
mục cha
commit
a47d2d5332

+ 7 - 1
src/common/utils/navPag.js

@@ -134,7 +134,13 @@ export const navToPage = (function () {
         '/packageMine/pages/myWebsit', // 入驻师傅
         '/packageMine/pages/workerEnter', // 入驻师傅
         '/packageMine/pages/phone', // 绑定手机号码
-        '/packageEnter/pages/insurance' // 我的保险
+        '/packageEnter/pages/insurance', // 我的保险
+        '/packageHome/pages/codeActivity/activityForm',
+        '/packageHome/pages/codeActivity/activityExplain',
+        '/packageHome/pages/codeActivity/applyDetail',
+        '/packageHome/pages/codeActivity/activityExplain',
+        '/packageMaterial/pages/partsApply/list',
+        '/packageHome/pages/codeActivity/applyList' //填写信息
       ].find(item => !!~url.indexOf(item)) &&
       userinfo.type !== 'WORKER'
     ) {

+ 27 - 25
src/packageHome/pages/codeActivity/activityExplain.vue

@@ -7,38 +7,40 @@
 </template>
 
 <script>
-  export default {
-    data() {
-      return {
-        id: '',
-        content: '',
-        style: {
-          p: 'font-size: 32rpx; line-height: 52rpx;',
-        }
+export default {
+  data() {
+    return {
+      id: '',
+      content: '',
+      style: {
+        p: 'font-size: 32rpx; line-height: 52rpx;'
       }
-    },
-    onLoad({id}) {
-      this.id = id;
-      this.getDetail();
-    },
-    methods: {
-      getDetail() {
-        this.$api.post('/promotion/questionnaire/detail', {
+    }
+  },
+  onLoad({ id }) {
+    this.id = id
+    this.getDetail()
+  },
+  methods: {
+    getDetail() {
+      this.$api
+        .post('/promotion/questionnaire/detail', {
           id: this.id
-        }).then(res => {
-					this.content = res.data.content;
         })
-      },
-    },
+        .then(res => {
+          this.content = res.data.content
+        })
+    }
   }
+}
 </script>
 
 <style lang="scss" scoped>
-  .content {
-    padding: 0 30rpx 30rpx;
+.content {
+  padding: 0 30rpx 30rpx;
 
-    image {
-      width: 100%;
-    }
+  image {
+    width: 100%;
   }
+}
 </style>

+ 112 - 104
src/packageHome/pages/codeActivity/applyDetail.vue

@@ -1,18 +1,18 @@
 <template>
   <zj-page-layout :hasFooter="true" bgColor="#ffffff">
     <view class="swiper-container" v-if="bannerList.length > 0">
-    	<swiper class="banner-swiper" @change="changeBanner" :autoplay="true">
-    		<block v-for="(item, index) in bannerList" :key='index'>
-    			<swiper-item>
-    				<image :src="item" mode="aspectFill"></image>
-    			</swiper-item>
-    		</block>
-    	</swiper>
-    	<view class="dots-conatiner">
-    		<view class="con" :style="'width:'+(bannerList.length * 20)+'rpx;'" >
-    			<view class="dot" :style=" 'transform:translateX('+ (bannerCurrent * 100) +'%)' "  ></view>
-    		</view>
-    	</view>
+      <swiper class="banner-swiper" @change="changeBanner" :autoplay="true">
+        <block v-for="(item, index) in bannerList" :key="index">
+          <swiper-item>
+            <image :src="item" mode="aspectFill"></image>
+          </swiper-item>
+        </block>
+      </swiper>
+      <view class="dots-conatiner">
+        <view class="con" :style="'width:' + bannerList.length * 20 + 'rpx;'">
+          <view class="dot" :style="'transform:translateX(' + bannerCurrent * 100 + '%)'"></view>
+        </view>
+      </view>
       <view class="explain" @tap="toExplain">活动说明</view>
     </view>
 
@@ -20,45 +20,41 @@
       <view class="form-container">
         <view class="row" v-if="applyDetail.customWebsitName">
           <view class="label">所属网点</view>
-          <view class="value">{{applyDetail.customWebsitName}}</view>
+          <view class="value">{{ applyDetail.customWebsitName }}</view>
         </view>
         <view class="row">
           <view class="label"><text>*</text>您的姓名</view>
-          <view class="value">{{applyDetail.userName}}</view>
+          <view class="value">{{ applyDetail.userName }}</view>
         </view>
         <view class="row">
           <view class="label"><text>*</text>您的电话</view>
-          <view class="value">{{applyDetail.userMobile}}</view>
+          <view class="value">{{ applyDetail.userMobile }}</view>
         </view>
         <view class="row">
           <view class="label"><text>*</text>您的地址</view>
-          <view class="value">{{applyDetail.userAddress}}</view>
+          <view class="value">{{ applyDetail.userAddress }}</view>
         </view>
       </view>
 
       <block v-for="(item, index) in applyDetail.items" :key="index">
         <view class="picker-container" v-if="item.type == 1 || item.type == 2">
-          <view class="label"><text v-if="item.isRequire">*</text>{{item.question}}({{{1: '单选', 2: '多选'}[item.type]}})</view>
+          <view class="label"
+            ><text v-if="item.isRequire">*</text>{{ item.question }}({{ { 1: '单选', 2: '多选' }[item.type] }})</view
+          >
           <view class="img-list" v-if="item.answerType == 1 || item.answerType == 3">
-            <view
-              class="item active"
-              v-for="(it, idx) in item.answer.filter(o => o.active)"
-              :key="idx">
+            <view class="item active" v-for="(it, idx) in item.answer.filter(o => o.active)" :key="idx">
               <image :src="it.option_files[0].url" mode="aspectFill"></image>
-              <view class="text" v-if="item.answerType == 1">{{it.option_value}}</view>
+              <view class="text" v-if="item.answerType == 1">{{ it.option_value }}</view>
             </view>
           </view>
           <view class="text-list" v-else>
-            <view
-              class="item active"
-              v-for="(it, idx) in item.answer.filter(o => o.active)"
-              :key="idx">
-              {{it.option_value}}
+            <view class="item active" v-for="(it, idx) in item.answer.filter(o => o.active)" :key="idx">
+              {{ it.option_value }}
             </view>
           </view>
         </view>
         <view class="input-container" v-else-if="item.type == 3">
-          <view class="label"><text v-if="item.isRequire">*</text>{{item.question}}</view>
+          <view class="label"><text v-if="item.isRequire">*</text>{{ item.question }}</view>
           <u--textarea
             disabled
             autoHeight
@@ -68,7 +64,7 @@
           ></u--textarea>
         </view>
         <view class="input-container" v-else-if="item.type == 4">
-          <view class="label"><text v-if="item.isRequire">*</text>{{item.question}}</view>
+          <view class="label"><text v-if="item.isRequire">*</text>{{ item.question }}</view>
           <view class="images" v-if="item.answer[0].option_value.length">
             <view class="img" v-for="(it, idx) in item.answer[0].option_value" :key="idx">
               <image :src="it" mode="aspectFill" @tap="prevImg(it, item.answer[0].option_value)"></image>
@@ -76,10 +72,10 @@
           </view>
         </view>
         <view class="input-container" v-else-if="item.type == 5">
-          <view class="label"><text v-if="item.isRequire">*</text>{{item.question}}</view>
+          <view class="label"><text v-if="item.isRequire">*</text>{{ item.question }}</view>
           <view class="images" v-if="item.answer[0].option_value.length">
-            <view v-for="(it, idx) in item.answer[0].option_value" :key="idx" class="img" style="width:100%;">
-              <video :src="it" style="width:100%;height: 240px;"></video>
+            <view v-for="(it, idx) in item.answer[0].option_value" :key="idx" class="img" style="width: 100%">
+              <video :src="it" style="width: 100%; height: 240px"></video>
             </view>
           </view>
         </view>
@@ -95,78 +91,86 @@
 </template>
 
 <script>
-  export default {
-    data() {
-      return {
-        id: '',
-        aid: '',
-				bannerList: [], // 轮播图列表
-				bannerCurrent: 0, // 轮播图当前值
+export default {
+  data() {
+    return {
+      id: '',
+      aid: '',
+      bannerList: [], // 轮播图列表
+      bannerCurrent: 0, // 轮播图当前值
 
-        detailData: {},
-        applyDetail: {},
+      detailData: {},
+      applyDetail: {},
 
-        name: '',
-        phone: '',
-        address: '',
-      }
-    },
+      name: '',
+      phone: '',
+      address: ''
+    }
+  },
 
-    onLoad({id, aid}) {
-      this.id = id;
-      this.aid = aid;
-      this.getDetail();
-      this.getApplyDetail();
-    },
+  onLoad({ id, aid }) {
+    this.id = id
+    this.aid = aid
+    this.getDetail()
+    this.getApplyDetail()
+  },
 
-    methods: {
-      //预览图片
-      prevImg(url, urls) {
-      	uni.previewImage({
-      		current: url,
-      		urls: urls
-      	})
-      },
+  methods: {
+    //预览图片
+    prevImg(url, urls) {
+      uni.previewImage({
+        current: url,
+        urls: urls
+      })
+    },
 
-      backPage() {
-        this.$navToPage({
-        	delta: 1
-        }, 'navigateBack')
-      },
+    backPage() {
+      this.$navToPage(
+        {
+          delta: 1
+        },
+        'navigateBack'
+      )
+    },
 
-      getDetail() {
-        this.$api.post('/promotion/questionnaire/detail', {
+    getDetail() {
+      this.$api
+        .post('/promotion/questionnaire/detail', {
           id: this.id
-        }).then(res => {
-          this.detailData = res.data;
-          this.bannerList = res.data.detailImgs.split(',');
         })
-      },
+        .then(res => {
+          this.detailData = res.data
+          this.bannerList = res.data.detailImgs.split(',')
+        })
+    },
 
-      getApplyDetail() {
-        this.$api.post('/promotion/activity/detail', {
+    getApplyDetail() {
+      this.$api
+        .post('/promotion/activity/detail', {
           promotionActivityId: this.aid
-        }).then(res => {
+        })
+        .then(res => {
           res.data.items.forEach(item => {
-            item.answer = JSON.parse(item.answer);
+            item.answer = JSON.parse(item.answer)
           })
-          this.applyDetail = res.data;
+          this.applyDetail = res.data
         })
-      },
+    },
 
-      // 切换广告图
-      changeBanner(e) {
-      	this.bannerCurrent = e.detail.current;
-      },
+    // 切换广告图
+    changeBanner(e) {
+      this.bannerCurrent = e.detail.current
+    },
 
-      toExplain() {
-        this.$navToPage({
-          url: `/packageHome/pages/codeActivity/activityExplain?id=${this.id}`
-        })
-      },
+    toExplain() {
+      this.$navToPage({
+        url: `/packageHome/pages/codeActivity/activityExplain?id=${this.id}`
+      })
+    },
 
-      submitData() {
-        this.$api.postJson('/material/parts/apply/add', {
+    submitData() {
+      this.$api
+        .postJson('/material/parts/apply/add', {
           orderBaseId: this.id,
           items: this.partsList.map(item => {
             return {
@@ -174,16 +178,20 @@
               qty: item.num
             }
           }),
-          remark: this.remark,
-        }).then(res => {
-          this.$successToast('提交成功');
-          this.$navToPage({
-            url: `/packageMaterial/pages/partsApply/list`
-          }, 'redirectTo')
+          remark: this.remark
         })
-      },
-    },
+        .then(res => {
+          this.$successToast('提交成功')
+          this.$navToPage(
+            {
+              url: `/packageMaterial/pages/partsApply/list`
+            },
+            'redirectTo'
+          )
+        })
+    }
   }
+}
 </script>
 
 <style lang="scss" scoped>
@@ -196,7 +204,7 @@
     width: 160rpx;
     height: 60rpx;
     border-radius: 60rpx;
-    background: #FFFFFF;
+    background: #ffffff;
     font-size: 28rpx;
     color: $assist-color;
     border: 1px solid $assist-color;
@@ -206,7 +214,8 @@
   }
   .banner-swiper {
     height: 600rpx;
-    image, video {
+    image,
+    video {
       height: 600rpx;
       width: 750rpx;
       display: block;
@@ -225,13 +234,13 @@
       border-radius: 4rpx;
       overflow: hidden;
       height: 4rpx;
-      background-color: rgba($color: #FFFFFF, $alpha: 0.3);
+      background-color: rgba($color: #ffffff, $alpha: 0.3);
     }
     .dot {
       width: 20rpx;
       height: 4rpx;
-      background-color: #FFFFFF;
-      transition: all .3s;
+      background-color: #ffffff;
+      transition: all 0.3s;
     }
   }
 }
@@ -302,9 +311,9 @@
         width: 40rpx;
         height: 40rpx;
         border-radius: 50%;
-        background: #FF3F42;
+        background: #ff3f42;
         font-size: 24rpx;
-        color: #FFFFFF;
+        color: #ffffff;
         text-align: center;
         line-height: 40rpx;
         display: block;
@@ -375,5 +384,4 @@
     }
   }
 }
-
 </style>

+ 57 - 57
src/packageHome/pages/codeActivity/applyList.vue

@@ -1,79 +1,79 @@
 <template>
-  <zj-page-layout
-    :isScroll="true"
-    :refresherTriggered="refresherTriggered"
-    @refresherrefresh="refresherrefresh">
+  <zj-page-layout :isScroll="true" :refresherTriggered="refresherTriggered" @refresherrefresh="refresherrefresh">
     <view class="list-container">
       <view class="item" v-for="(item, index) in dataList" :key="index" @tap="toDetail(item)">
-        <image :src="(item.detailImgs.split(','))[0]" mode="aspectFill"></image>
+        <image :src="item.detailImgs.split(',')[0]" mode="aspectFill"></image>
         <view class="main">
-          <view class="title">{{item.name}}</view>
-		  <view class="text">{{item.userName}} {{item.userMobile}}</view>
-          <view class="text">提交时间 {{item.createTime}}</view>
+          <view class="title">{{ item.name }}</view>
+          <view class="text">{{ item.userName }} {{ item.userMobile }}</view>
+          <view class="text">提交时间 {{ item.createTime }}</view>
         </view>
         <text class="iconfont icon-jinru"></text>
       </view>
     </view>
     <Loading :type="2" :loadStatus="loadStatus" :dataList="dataList" showText="您还没有提交过报名~" />
-
   </zj-page-layout>
 </template>
 
 <script>
-  export default {
-    data() {
-      return {
-        id: '',
-				dataList: [],
-				pageNum: 1,
-				loadStatus: 0,
-        refresherTriggered: false,
-      }
-    },
-
-    onLoad({id}) {
-      this.id = id;
-      this.getList();
-    },
+export default {
+  data() {
+    return {
+      id: '',
+      dataList: [],
+      pageNum: 1,
+      loadStatus: 0,
+      refresherTriggered: false
+    }
+  },
 
-    methods: {
-      getList() {
-      	this.loadStatus = 1;
-      	this.$api.post('/promotion/activity/list', {
-          promotionQuestionnaireId: this.id || '',
-      	}).then(res => {
-      		this.loadStatus = 0;
-      		let list = res.data;
-      		if (list.length < 1) {
-      		  this.loadStatus = 2;
-      		}
-      		this.dataList = list;
-      	}).catch(() => {
-      		this.loadStatus = 2;
-      	}).finally(res => {
-      		this.refresherTriggered = false;
-      	})
-      },
+  onLoad({ id }) {
+    this.id = id
+    this.getList()
+  },
 
-      refreshList() {
-      	this.dataList = [];
-      	this.pageNum = 1;
-      	this.getList();
-      },
+  methods: {
+    getList() {
+      this.loadStatus = 1
+      this.$api
+        .post('/promotion/activity/list', {
+          promotionQuestionnaireId: this.id || ''
+        })
+        .then(res => {
+          this.loadStatus = 0
+          let list = res.data
+          if (list.length < 1) {
+            this.loadStatus = 2
+          }
+          this.dataList = list
+        })
+        .catch(() => {
+          this.loadStatus = 2
+        })
+        .finally(res => {
+          this.refresherTriggered = false
+        })
+    },
 
-      // 触发下拉刷新
-      refresherrefresh(e) {
-      	this.refresherTriggered = true;
-      	this.refreshList();
-      },
+    refreshList() {
+      this.dataList = []
+      this.pageNum = 1
+      this.getList()
+    },
 
-      toDetail(item) {
-        this.$navToPage({
-          url: `/packageHome/pages/codeActivity/applyDetail?id=${item.promotionQuestionnaireId}&aid=${item.promotionActivityId}`
-        })
-      },
+    // 触发下拉刷新
+    refresherrefresh(e) {
+      this.refresherTriggered = true
+      this.refreshList()
     },
+
+    toDetail(item) {
+      this.$navToPage({
+        url: `/packageHome/pages/codeActivity/applyDetail?id=${item.promotionQuestionnaireId}&aid=${item.promotionActivityId}`
+      })
+    }
   }
+}
 </script>
 
 <style lang="scss" scoped>