Explorar o código

fix: 今日新增专员跳转错误修复

xuyunhui hai 1 ano
pai
achega
7f21fa35f8

+ 2 - 2
common/js/env.js

@@ -1,7 +1,7 @@
 "use strict";
 
-let baseUrl = `https://jje.admin.xinyuekj.com.cn`
-// let baseUrl = `https://jje.admin.xinyuekj.com.cn/test-api`
+// let baseUrl = `https://jje.admin.xinyuekj.com.cn`
+let baseUrl = `https://jje.admin.xinyuekj.com.cn/test-api`
 // let baseUrl = `http://65i1sxopd9qp.ngrok.xiaomiqiu123.top`
 // let baseUrl = `https://jje.xinyuekj.com.cn/prod-api`
 

+ 7 - 0
pages.json

@@ -199,6 +199,13 @@
 				"navigationBarTitleText" : "今日新增专员记录"
 			}
 		},
+		{
+			"path" : "pages/CouponUsage/todaySpecialistsList",
+			"style" :
+			{
+				"navigationBarTitleText" : "用券情况"
+			}
+		},
 		{
 			"path" : "pages/specialistsDetail/specialistsDetail",
 			"style" :

+ 6 - 0
pages/CouponUsage/index.rpx.css

@@ -0,0 +1,6 @@
+.page {
+    padding: 0 32rpx;
+    background: #f7f7f7;
+    height: 100vh;
+}
+

+ 45 - 0
pages/CouponUsage/module/index.rpx.css

@@ -0,0 +1,45 @@
+.page{
+    background: #F7F7F7;
+}
+.item{
+    padding: 20rpx 32rpx;
+    background: #ffffff;
+    margin-top: 24rpx;
+    border-radius: 15rpx;
+}
+
+.listItemMsg{
+    font-weight: 400;
+    font-size: 28rpx;
+    color: #333333;
+    line-height: 44rpx;
+}
+
+.memberNo{
+    width: 300rpx;
+}
+.msg{
+    flex: 1;
+}
+.time{
+    font-weight: 400;
+    font-size: 30rpx;
+    color: #999999;
+    line-height: 44rpx;
+}
+.remark{
+    color: #D9001B;
+    font-weight: 400;
+    font-size: 28rpx;
+    line-height: 44rpx;
+}
+.detail{
+    color: #169BD5;
+    font-weight: 400;
+    font-size: 28rpx;
+    line-height: 44rpx;
+}
+.name{
+    font-size: 32rpx;
+    font-weight: bold;
+}

+ 132 - 0
pages/CouponUsage/module/mescrollUni-item.vue

@@ -0,0 +1,132 @@
+<template>
+	<!--
+    swiper中的transfrom会使fixed失效,此时用height固定高度;
+    swiper中无法触发mescroll-mixins.js的onPageScroll和onReachBottom方法,只能用mescroll-uni,不能用mescroll-body
+    -->
+	<!-- ref动态生成: 字节跳动小程序编辑器不支持一个页面存在相同的ref (如不考虑字节跳动小程序可固定值为 ref="mescrollRef") -->
+	<!-- top的高度等于悬浮菜单tabs的高度 -->
+	<mescroll-uni :ref="'mescrollRef' + i" @init="mescrollInit" :height="height" :down="downOption" @down="downCallback"
+		:up="upOption" @up="upCallback" @emptyclick="emptyClick">
+		<view>
+			<view class="flex-col justify-between item" v-for="(item,index) in list" :key="index">
+        <view class="flex-row justify-between">
+          <view class="flex-col justify-center">
+            <text class="name">{{ item.couponName }}</text>
+          </view>
+          <view class="flex-col justify-around">
+            <text class="time">{{item.useCoupon}}/{{item.totalUseCoupon}}</text>
+          </view>
+        </view>
+			</view>
+		</view>
+	</mescroll-uni>
+</template>
+
+<script>
+	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
+	import MescrollMoreItemMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mixins/mescroll-more-item.js"
+	export default {
+		mixins: [MescrollMixin, MescrollMoreItemMixin], // 注意此处还需使用MescrollMoreItemMixin (必须写在MescrollMixin后面)
+		components: {
+		},
+
+		data() {
+			return {
+				downOption: {
+					auto: false // 不自动加载 (mixin已处理第一个tab触发downCallback)
+				},
+				upOption: {
+					auto: false, // 不自动加载
+					// page: {
+					// 	num: 0, // 当前页码,默认0,回调之前会加1,即callback(page)会从1开始
+					// 	size: 10 // 每页数据的数量
+					// },
+					noMoreSize: 4, //如果列表已无数据,可设置列表的总数量要大于半页才显示无更多数据;避免列表数据过少(比如只有一条数据),显示无更多数据会不好看; 默认5
+					empty: {
+						icon: '/static/dataNull.png',
+						tip: '暂无内容', // 提示
+						// btnText: '去看看'
+					},
+					textNoMore: '没有更多了'
+				},
+				list:[],
+			}
+		},
+		props: {
+			i: Number, // 每个tab页的专属下标 (除了支付宝小程序必须在这里定义, 其他平台都可不用写, 因为已在MescrollMoreItemMixin定义)
+			index: { // 当前tab的下标 (除了支付宝小程序必须在这里定义, 其他平台都可不用写, 因为已在MescrollMoreItemMixin定义)
+				type: Number,
+				default () {
+					return 0
+				}
+			},
+
+			height: [Number, String], // mescroll的高度
+
+		},
+		watch:{
+
+		},
+
+		created(){
+
+
+		},
+
+		methods: {
+
+
+			/*下拉刷新的回调 */
+			downCallback() {
+				// 这里加载你想下拉刷新的数据, 比如刷新轮播数据
+				// loadSwiper();
+				// 下拉刷新的回调,默认重置上拉加载列表为第一页 (自动执行 page.num=1, 再触发upCallback方法 )
+				this.mescroll.resetUpScroll()
+			},
+			/*上拉加载的回调: 其中page.num:当前页 从1开始, page.size:每页数据条数,默认10 */
+			upCallback(page) {
+				//联网加载数据
+				this.$api.service.useCouponCondition().then((res) => {
+					//联网成功的回调,隐藏下拉刷新和上拉加载的状态;
+					this.mescroll.endSuccess(res.data.data.length,res.data.data.length === 10);
+					//设置列表数据
+					this.list = res.data.data; //追加新数据
+				}).catch((err) => {
+					//联网失败, 结束加载
+					this.mescroll.endErr();
+				})
+
+
+			},
+
+			//点击空布局按钮的回调
+			emptyClick() {
+				uni.showToast({
+					title: '点击了按钮,具体逻辑自行实现'
+				})
+			},
+			// 搜索
+			doSearch() {
+				this.list = []; // 先清空列表,显示加载进度
+				this.mescroll.resetUpScroll();
+			},
+
+
+			navigateToPage(url){
+				uni.navigateTo({
+					url:url
+				})
+			},
+
+			openAddRemarkPopup(e){
+				console.log(e)
+				this.$emit('openAddRemarkPopup',e)
+			},
+		}
+	}
+</script>
+<style>
+	@import '/common/css/common.css';
+	@import './index.rpx.css';
+
+</style>

+ 72 - 0
pages/CouponUsage/todaySpecialistsList.vue

@@ -0,0 +1,72 @@
+<template>
+    <view class="page" >
+        <!-- #ifdef H5-->
+        <uni-nav-bar v-if="!$isWxBrowser()" :fixed="true" background-color="#FFE05C" :border="false" :statusBar="false"
+                     left-icon="left" title="用券情况" @clickLeft="back"/>
+        <!-- #endif -->
+
+        <view :style="{height:height}">
+            <mescroll-item ref="MescrollItem" :i="0"  :index="0"  :height="height" @openAddRemarkPopup="openAddRemarkPopup">
+            </mescroll-item>
+        </view>
+
+        <add-remark-popup ref="addRemarkPopup"></add-remark-popup>
+
+        <!--#ifdef H5-->
+        <liu-drag-button v-if="$isWxBrowser()" @clickBtn="back">返回</liu-drag-button>
+        <!--#endif-->
+    </view>
+</template>
+
+<script>
+    import addRemarkPopup from "../../components/addRemarkPopup/addRemarkPopup";
+    import MescrollItem from "./module/mescrollUni-item.vue";
+    export default {
+        components: {
+            MescrollItem,addRemarkPopup
+        },
+        data() {
+            return {
+                height:'',
+            }
+        },
+        onLoad(e) {
+
+            let sysInfo = uni.getSystemInfoSync()
+            this.height = sysInfo.windowHeight  - 50 + 'px' //除标题栏栏外的屏幕可用高度
+        },
+
+        onShow(){
+
+        },
+
+        methods: {
+            back() {
+                let pages = getCurrentPages()
+                if (pages.length > 1){
+                    uni.navigateBack({
+                        delta: 1,
+                        fail:err=>{
+                            console.log(err)
+                        }
+                    })
+                }else {
+                    uni.switchTab({
+                        url: '/pages/my/my'
+                    });
+                }
+            },
+
+            openAddRemarkPopup(e){
+                console.log('this.$refs.addRemarkPopup',this.$refs.addRemarkPopup)
+                this.$refs.addRemarkPopup.openPopup()
+            }
+
+
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    @import './index.rpx.css';
+</style>

+ 1 - 1
pages/index/attach/attach.vue

@@ -10,7 +10,7 @@
 						<text>{{homeStaticsData.totalInvite || 0}}</text>
 					</view>
 				</view>
-				<view class="flex-col gridItem leftBorder" @click="navigateToPage('/pages/todaySpecialistsList/todaySpecialistsList')">
+				<view class="flex-col gridItem leftBorder" @click="navigateToPage('/pages/CouponUsage/todaySpecialistsList')">
 					<view  class="title flex-row justify-center">
 						<text>用券情况</text>
 					</view>

+ 0 - 1
pages/index/attach/index.rpx.css

@@ -1,5 +1,4 @@
 .attach{
-    /*background-image: url("/static/index/indexbg.png");*/
     background-image: url('https://jje.xinyuekj.com.cn/tk/static/index/indexbg.png');
     background-repeat: no-repeat;
     background-size: 750rpx 680rpx;

+ 3 - 5
pages/index/index.vue

@@ -40,17 +40,15 @@
 		onLoad() {
 			let sysInfo = uni.getSystemInfoSync()
 			this.height = sysInfo.windowHeight + 'px'
-
-
 		},
 		onShow() {
 			this.userInfo = uni.getStorageSync('spreadUserInfo')
 			console.log('时间戳', new Date().getTime())
-
 			this.userInfo = uni.getStorageSync('spreadUserInfo')
-			this.isManager = this.userInfo.isManager
-			this.roleTag = this.userInfo.roleTag
 
+			this.isManager = this.userInfo.isManager
+			this.roleTag = '0'
+      console.log(this.isManager,'类型',this.roleTag )
 		},
 		methods: {
 			// 微信支付

+ 1 - 2
pages/index/manager/index.rpx.css

@@ -1,6 +1,5 @@
 .manager{
-    background-image: url("/static/index/indexbg.png");
-    /*background-image: url('https://jje.xinyuekj.com.cn/tk/static/index/indexbg.png');*/
+    background-image: url('https://jje.xinyuekj.com.cn/tk/static/index/indexbg.png');
     background-repeat: no-repeat;
     background-size: 750rpx 680rpx;
     background-color: #F9F9F9;

+ 1 - 1
pages/index/manager/manager.vue

@@ -11,7 +11,7 @@
 						<text>{{homeStaticsData.expandUserTotal || 0}}</text>
 					</view>
 				</view>
-				<view class="flex-col gridItem leftBorder" >
+				<view class="flex-col gridItem leftBorder" @click="navigateToPage('/pages/todaySpecialistsList/todaySpecialistsList')">
 					<view  class="title flex-row justify-center">
 						<text>今日新增专员</text>
 					</view>

+ 140 - 118
pages/todaySpecialistsList/module/mescrollUni-item.vue

@@ -1,132 +1,154 @@
 <template>
-	<!--
+  <!--
     swiper中的transfrom会使fixed失效,此时用height固定高度;
     swiper中无法触发mescroll-mixins.js的onPageScroll和onReachBottom方法,只能用mescroll-uni,不能用mescroll-body
     -->
-	<!-- ref动态生成: 字节跳动小程序编辑器不支持一个页面存在相同的ref (如不考虑字节跳动小程序可固定值为 ref="mescrollRef") -->
-	<!-- top的高度等于悬浮菜单tabs的高度 -->
-	<mescroll-uni :ref="'mescrollRef' + i" @init="mescrollInit" :height="height" :down="downOption" @down="downCallback"
-		:up="upOption" @up="upCallback" @emptyclick="emptyClick">
-		<view>
-			<view class="flex-col justify-between item" v-for="(item,index) in list" :key="index">
-        <view class="flex-row justify-between">
-          <view class="flex-col justify-center">
-            <text class="name">{{ item.couponName }}</text>
+  <!-- ref动态生成: 字节跳动小程序编辑器不支持一个页面存在相同的ref (如不考虑字节跳动小程序可固定值为 ref="mescrollRef") -->
+  <!-- top的高度等于悬浮菜单tabs的高度 -->
+  <mescroll-uni :ref="'mescrollRef' + i" @init="mescrollInit" :height="height" :down="downOption" @down="downCallback"
+                :up="upOption" @up="upCallback" @emptyclick="emptyClick">
+    <view>
+      <view class="flex-col justify-between item" v-for="(item,index) in list" :key="index">
+        <view class="flex-row justify-between listItemMsg">
+          <view class="memberNo">
+            <text>{{item.name}}</text>
           </view>
-          <view class="flex-col justify-around">
-            <text class="time">{{item.useCoupon}}/{{item.totalUseCoupon}}</text>
+          <view class="flex-row justify-between msg">
+            <text>{{item.phone}}</text>
+            <text class="detail" @click="navigateToPage('/pages/specialistsDetail/specialistsDetail?id=' + item.id)">详情</text>
           </view>
         </view>
-			</view>
-		</view>
-	</mescroll-uni>
+        <view class="flex-row justify-between">
+          <text class="time">{{item.createTime}}</text>
+          <text class="remark" @click="openAddRemarkPopup(item.id)">备注</text>
+        </view>
+      </view>
+    </view>
+  </mescroll-uni>
 </template>
 
 <script>
-	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
-	import MescrollMoreItemMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mixins/mescroll-more-item.js"
-	export default {
-		mixins: [MescrollMixin, MescrollMoreItemMixin], // 注意此处还需使用MescrollMoreItemMixin (必须写在MescrollMixin后面)
-		components: {
-		},
-
-		data() {
-			return {
-				downOption: {
-					auto: false // 不自动加载 (mixin已处理第一个tab触发downCallback)
-				},
-				upOption: {
-					auto: false, // 不自动加载
-					// page: {
-					// 	num: 0, // 当前页码,默认0,回调之前会加1,即callback(page)会从1开始
-					// 	size: 10 // 每页数据的数量
-					// },
-					noMoreSize: 4, //如果列表已无数据,可设置列表的总数量要大于半页才显示无更多数据;避免列表数据过少(比如只有一条数据),显示无更多数据会不好看; 默认5
-					empty: {
-						icon: '/static/dataNull.png',
-						tip: '暂无内容', // 提示
-						// btnText: '去看看'
-					},
-					textNoMore: '没有更多了'
-				},
-				list:[],
-			}
-		},
-		props: {
-			i: Number, // 每个tab页的专属下标 (除了支付宝小程序必须在这里定义, 其他平台都可不用写, 因为已在MescrollMoreItemMixin定义)
-			index: { // 当前tab的下标 (除了支付宝小程序必须在这里定义, 其他平台都可不用写, 因为已在MescrollMoreItemMixin定义)
-				type: Number,
-				default () {
-					return 0
-				}
-			},
-
-			height: [Number, String], // mescroll的高度
-
-		},
-		watch:{
-
-		},
-
-		created(){
-
-
-		},
-
-		methods: {
-
-
-			/*下拉刷新的回调 */
-			downCallback() {
-				// 这里加载你想下拉刷新的数据, 比如刷新轮播数据
-				// loadSwiper();
-				// 下拉刷新的回调,默认重置上拉加载列表为第一页 (自动执行 page.num=1, 再触发upCallback方法 )
-				this.mescroll.resetUpScroll()
-			},
-			/*上拉加载的回调: 其中page.num:当前页 从1开始, page.size:每页数据条数,默认10 */
-			upCallback(page) {
-				//联网加载数据
-				this.$api.service.useCouponCondition().then((res) => {
-					//联网成功的回调,隐藏下拉刷新和上拉加载的状态;
-					this.mescroll.endSuccess(res.data.data.length,res.data.data.length === 10);
-					//设置列表数据
-					this.list = res.data.data; //追加新数据
-				}).catch((err) => {
-					//联网失败, 结束加载
-					this.mescroll.endErr();
-				})
-
-
-			},
-
-			//点击空布局按钮的回调
-			emptyClick() {
-				uni.showToast({
-					title: '点击了按钮,具体逻辑自行实现'
-				})
-			},
-			// 搜索
-			doSearch() {
-				this.list = []; // 先清空列表,显示加载进度
-				this.mescroll.resetUpScroll();
-			},
-
-
-			navigateToPage(url){
-				uni.navigateTo({
-					url:url
-				})
-			},
-
-			openAddRemarkPopup(e){
-				console.log(e)
-				this.$emit('openAddRemarkPopup',e)
-			},
-		}
-	}
+import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
+import MescrollMoreItemMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mixins/mescroll-more-item.js"
+export default {
+  mixins: [MescrollMixin, MescrollMoreItemMixin], // 注意此处还需使用MescrollMoreItemMixin (必须写在MescrollMixin后面)
+  components: {
+  },
+
+  data() {
+    return {
+      downOption: {
+        auto: false // 不自动加载 (mixin已处理第一个tab触发downCallback)
+      },
+      upOption: {
+        auto: false, // 不自动加载
+        // page: {
+        // 	num: 0, // 当前页码,默认0,回调之前会加1,即callback(page)会从1开始
+        // 	size: 10 // 每页数据的数量
+        // },
+        noMoreSize: 4, //如果列表已无数据,可设置列表的总数量要大于半页才显示无更多数据;避免列表数据过少(比如只有一条数据),显示无更多数据会不好看; 默认5
+        empty: {
+          icon: '/static/dataNull.png',
+          tip: '暂无内容', // 提示
+          // btnText: '去看看'
+        },
+        textNoMore: '没有更多了'
+      },
+      list:[],
+    }
+  },
+  props: {
+    i: Number, // 每个tab页的专属下标 (除了支付宝小程序必须在这里定义, 其他平台都可不用写, 因为已在MescrollMoreItemMixin定义)
+    index: { // 当前tab的下标 (除了支付宝小程序必须在这里定义, 其他平台都可不用写, 因为已在MescrollMoreItemMixin定义)
+      type: Number,
+      default () {
+        return 0
+      }
+    },
+
+    height: [Number, String], // mescroll的高度
+
+  },
+  watch:{
+
+  },
+
+  created(){
+
+
+  },
+
+  methods: {
+
+
+    /*下拉刷新的回调 */
+    downCallback() {
+      // 这里加载你想下拉刷新的数据, 比如刷新轮播数据
+      // loadSwiper();
+      // 下拉刷新的回调,默认重置上拉加载列表为第一页 (自动执行 page.num=1, 再触发upCallback方法 )
+      this.mescroll.resetUpScroll()
+    },
+    /*上拉加载的回调: 其中page.num:当前页 从1开始, page.size:每页数据条数,默认10 */
+    upCallback(page) {
+
+      //联网加载数据
+      let httpData = {
+        pageNum:page.num,
+        pageSize:10,
+        orderByColumn:'createTime',
+        isAsc:'desc'
+      }
+
+      this.$api.service.getTodayAttacheList(httpData).then((res) => {
+        //联网成功的回调,隐藏下拉刷新和上拉加载的状态;
+        this.mescroll.endSuccess(res.data.rows.length,res.data.rows.length === 10);
+        //设置列表数据
+        if (page.num === 1) this.list = []; //如果是第一页需手动制空列表
+        this.list = this.list.concat(res.data.rows); //追加新数据
+      }).catch((err) => {
+        //联网失败, 结束加载
+        this.mescroll.endErr();
+      })
+
+
+    },
+
+    //点击空布局按钮的回调
+    emptyClick() {
+      uni.showToast({
+        title: '点击了按钮,具体逻辑自行实现'
+      })
+    },
+    // 搜索
+    doSearch() {
+      this.list = []; // 先清空列表,显示加载进度
+      this.mescroll.resetUpScroll();
+    },
+
+
+    navigateToPage(url){
+      uni.navigateTo({
+        url:url
+      })
+    },
+
+    openAddRemarkPopup(e){
+      console.log(e)
+      this.$emit('openAddRemarkPopup',e)
+    },
+
+
+
+    goOrderDetail(item){
+      uni.navigateTo({
+        url:'/myPages/transactionRecordDetail/index?item='+JSON.stringify(item)
+      })
+    },
+  }
+}
 </script>
 <style>
-	@import '/common/css/common.css';
-	@import './index.rpx.css';
+@import '/common/css/common.css';
+@import './index.rpx.css';
 
 </style>

+ 2 - 2
pages/todaySpecialistsList/todaySpecialistsList.vue

@@ -2,7 +2,7 @@
     <view class="page" >
         <!-- #ifdef H5-->
         <uni-nav-bar v-if="!$isWxBrowser()" :fixed="true" background-color="#FFE05C" :border="false" :statusBar="false"
-                     left-icon="left" title="用券情况" @clickLeft="back"/>
+                     left-icon="left" title="今日新增专员" @clickLeft="back"/>
         <!-- #endif -->
 
         <view :style="{height:height}">
@@ -37,7 +37,7 @@
         },
 
         onShow(){
-
+          this.$refs.MescrollItem.downCallback()
         },
 
         methods: {