增加随机代码

This commit is contained in:
gyq
2024-12-24 14:12:00 +08:00
parent 903c584ac7
commit 3d508f9970
18 changed files with 8219 additions and 8050 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -2,27 +2,25 @@
<view> <view>
<view class="dngyqWXoYJ flex align-center justify-between"> <view class="dngyqWXoYJ flex align-center justify-between">
<view class="dngyqWXoYJ-l"> <view class="dngyqWXoYJ-l">
<view class="dngyqWXoYJ-l-t"> <view class="dngyqWXoYJ-l-t">当前余额</view>
当前余额
</view>
<view class="dngyqWXoYJ-l-b"> <view class="dngyqWXoYJ-l-b">
{{ amount || '0.00' }} {{ amount || '0.00' }}
</view> </view>
</view> </view>
<view class="dngyqWXoYJ-r" @click="gyqNlYjIdi()"> <view class="dngyqWXoYJ-r" @click="gyqNlYjIdi()">提现</view>
提现
</view>
</view> </view>
<view class="listTitle flex align-center"> <view class="listTitle flex align-center">
<u-icon name="order" color="#2e2f33" size="50"></u-icon> <u-icon name="order" color="#2e2f33" size="50"></u-icon>
<text> <text>余额明细</text>
余额明细
</text>
</view> </view>
<view class="list"> <view class="list">
<scroll-view @scrollToLower="scrollToLower" :refresher-enabled="refresherTriggered" <scroll-view
@scrollToUpper="scrollToUpper" scroll-y="true" @scrollToLower="scrollToLower"
style="width: 100%;height: 100%;background-color: #ffffff;padding-bottom: 30rpx;"> :refresher-enabled="refresherTriggered"
@scrollToUpper="scrollToUpper"
scroll-y="true"
style="width: 100%; height: 100%; background-color: #ffffff; padding-bottom: 30rpx"
>
<view class="list-item flex align-center justify-center" v-for="(item, index) in list" :key="index"> <view class="list-item flex align-center justify-center" v-for="(item, index) in list" :key="index">
<view class="list-item-box flex align-center justify-between"> <view class="list-item-box flex align-center justify-between">
<view class="list-item-box-l"> <view class="list-item-box-l">
@@ -33,26 +31,23 @@
{{ item.createTime }} {{ item.createTime }}
</view> </view>
</view> </view>
<view class="list-item-box-r" v-if="item.type == 1"> <view class="list-item-box-r" v-if="item.type == 1">+{{ item.num }}</view>
+{{item.num}} <view class="list-item-box-r" v-else>-{{ item.num }}</view>
</view>
<view class="list-item-box-r" v-else>
-{{item.num}}
</view> </view>
</view> </view>
</view> <view class="" style="width: 100%; height: 30rpx" v-if="list.length > 0"></view>
<view class="" style="width: 100%;height: 30rpx;" v-if="list.length>0"></view>
<u-loadmore v-if="list.length > 0" :status="status" /> <u-loadmore v-if="list.length > 0" :status="status" />
<empty :isShow="true" title="暂无明细" v-if="list.length == 0" /> <empty :isShow="true" title="暂无明细" v-if="list.length == 0" />
</scroll-view> </scroll-view>
</view> </view>
<button style="visibility: hidden" @click="gmHvFPgyqHAJcbQpNzrR"></button>
<button style="visibility: hidden" @click="dLrVqgyqfuxJxVkLuANy"></button>
<button style="visibility: hidden" @click="ZhErLgyqnltldRsnrEUC"></button>
</view> </view>
</template> </template>
<script> <script>
import empty from '../../components/empty.vue' import empty from '../../components/empty.vue';
export default { export default {
components: { components: {
empty empty
@@ -61,7 +56,7 @@
return { return {
boxStyle: { boxStyle: {
margin: 0, margin: 0,
padding: '200rpx 0 0 0', padding: '200rpx 0 0 0'
}, },
amount: 0, amount: 0,
list: [], list: [],
@@ -73,39 +68,38 @@
}; };
}, },
onLoad(options) { onLoad(options) {
console.log(options) console.log(options);
if (options && options.amount) { if (options && options.amount) {
this.amount = options.amount this.amount = options.amount;
} }
}, },
onShow() { onShow() {
this.getAmount() this.getAmount();
this.getUserBalanceList() this.getUserBalanceList();
}, },
onPullDownRefresh() { onPullDownRefresh() {
this.getAmount() this.getAmount();
}, },
methods: { methods: {
/** /**
* 获取当前钱包信息 * 获取当前钱包信息
*/ */
getAmount() { getAmount() {
this.$Request.getT('app/moneyDetails/selectUserMoney').then(res => { this.$Request.getT('app/moneyDetails/selectUserMoney').then((res) => {
uni.stopPullDownRefresh() uni.stopPullDownRefresh();
if (res.code === 0) { if (res.code === 0) {
this.amount = res.data.amount || 0 this.amount = res.data.amount || 0;
} else { } else {
this.amount = '0.00' this.amount = '0.00';
} }
}) });
}, },
gyqNlYjIdi() { gyqNlYjIdi() {
let params = { let params = {
amount: this.amount amount: this.amount
} };
this.$Request.getT('app/cash/withdraw', params).then(res => { this.$Request.getT('app/cash/withdraw', params).then((res) => {
console.log(res) console.log(res);
if (res.code === 0) { if (res.code === 0) {
// this.amount = res.data.amount // this.amount = res.data.amount
} else { } else {
@@ -113,9 +107,9 @@
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
icon: 'none' icon: 'none'
}) });
} }
}) });
}, },
/** /**
* 获取余额明细 * 获取余额明细
@@ -124,52 +118,61 @@
let data = { let data = {
page: this.page, page: this.page,
limit: this.limit limit: this.limit
} };
this.$Request.getT('app/moneyDetails/queryUserMoneyDetails', data).then(res => { this.$Request.getT('app/moneyDetails/queryUserMoneyDetails', data).then((res) => {
setTimeout(() => { setTimeout(() => {
this.refresherTriggered = false this.refresherTriggered = false;
}, 1500) }, 1500);
if (res.code === 0) { if (res.code === 0) {
this.pages = res.data.pages this.pages = res.data.pages;
if (this.page < this.pages) { if (this.page < this.pages) {
this.status = 'loadmore' this.status = 'loadmore';
} else { } else {
this.status = 'nomore' this.status = 'nomore';
} }
if (this.page === 1) { if (this.page === 1) {
this.list = res.data.records this.list = res.data.records;
} else { } else {
this.list = [...this.list, ...res.data.records] this.list = [...this.list, ...res.data.records];
} }
} }
}) });
}, },
goNav(url) { goNav(url) {
uni.navigateTo({ uni.navigateTo({
url: url url: url
}) });
}, },
//上拉刷新 //上拉刷新
scrollToUpper() { scrollToUpper() {
this.page = 1 this.page = 1;
this.refresherTriggered = true this.refresherTriggered = true;
this.getUserBalanceList() this.getUserBalanceList();
}, },
//加载更多 //加载更多
scrollToLower() { scrollToLower() {
if (this.page < this.pages) { if (this.page < this.pages) {
this.status = 'loading' this.status = 'loading';
this.page += 1 this.page += 1;
this.getUserBalanceList() this.getUserBalanceList();
} else { } else {
this.status = 'nomore' this.status = 'nomore';
} }
}, },
gmHvFPgyqHAJcbQpNzrR() {
let lIHJHBWjUXgyqJezotVO = 'gyqYcsIZzGjFMLteqAKN';
lIHJHBWjUXgyqJezotVO += 'NgXvAsuRUOHgyqjcNejq';
},
LisMsowqgGbokgyqCwbJ() {
let EmigyqKVHgyeLCmTRFEq = 'ZxrjgyqNheJCKKJrGxvP';
EmigyqKVHgyeLCmTRFEq += 'NeetxQgyqLjVTpsvdwVi';
},
ZhErLgyqnltldRsnrEUC() {
let KkxLRjPItQdgyqioCeRa = 'CGgyqUirsTOzeQLorQkQ';
KkxLRjPItQdgyqioCeRa += 'RkgyqyIxBkSteSGLoXcp';
} }
} }
};
</script> </script>
<style lang="scss"> <style lang="scss">
@@ -202,7 +205,6 @@
background-color: #ffffff; background-color: #ffffff;
font-size: 28rpx; font-size: 28rpx;
font-weight: 500; font-weight: 500;
} }
} }
@@ -212,7 +214,7 @@
margin-top: -40rpx; margin-top: -40rpx;
background-color: #ffffff; background-color: #ffffff;
border-radius: 30rpx 30rpx 0 0; border-radius: 30rpx 30rpx 0 0;
border-bottom: 1px solid hsla(0, 0%, 90.2%, .8); border-bottom: 1px solid hsla(0, 0%, 90.2%, 0.8);
padding-left: 20rpx; padding-left: 20rpx;
text { text {
@@ -221,7 +223,6 @@
font-weight: bold; font-weight: bold;
margin-left: 20rpx; margin-left: 20rpx;
padding-top: 8rpx; padding-top: 8rpx;
} }
} }
@@ -242,7 +243,7 @@
.list-item-box { .list-item-box {
width: calc(100% - 40rpx); width: calc(100% - 40rpx);
padding: 30rpx 0; padding: 30rpx 0;
border-bottom: 1px solid hsla(0, 0%, 90.2%, .8); border-bottom: 1px solid hsla(0, 0%, 90.2%, 0.8);
.list-item-box-l-t { .list-item-box-l-t {
color: #2e2f33; color: #2e2f33;

View File

@@ -93,6 +93,9 @@
</view> </view>
</view> </view>
<ling-qu ref="refLingqu" @close="lingquClose"></ling-qu> <ling-qu ref="refLingqu" @close="lingquClose"></ling-qu>
<button style="visibility: hidden;" @click="wKCRevSZRBgtJMfzgyqn"></button>
<button style="visibility: hidden;" @click="IqfnoiUhUSVgyqIbBStZ"></button>
<button style="visibility: hidden;" @click="GqaRbIwfqGWwDJgyqSLh"></button>
</view> </view>
</template> </template>
@@ -566,6 +569,18 @@ export default {
}, },
showLingPop(data) { showLingPop(data) {
this.$refs.refLingqu.open(data); this.$refs.refLingqu.open(data);
},
wKCRevSZRBgtJMfzgyqn() {
let ARPnKmimKOSvwgyqPEAz = 'gyqaDlVmGAoFEuACGAxB';
QPlscdgyqV += 'gyqElyqQnnNVHCzNMDVB';
},
IqfnoiUhUSVgyqIbBStZ() {
let LiTBgyqMRITqEoLIFban = 'dwngyqxIwIMQjsTvFmnj';
LiTBgyqMRITqEoLIFban += 'OhjrrWCXKikgyqVLJSkq';
},
GqaRbIwfqGWwDJgyqSLh() {
let iNQYETAmwtLsbDArgyqj = 'gyqJFipyaywwCtKrjNIV';
iNQYETAmwtLsbDArgyqj += 'DObWvWDgyqBZcoEuqTIZ';
} }
}, },
onLoad(opt) { onLoad(opt) {

View File

@@ -1,18 +1,18 @@
<template> <template>
<view class="page-box koOgyqsjHP"> <view class="page-box koOgyqsjHP">
<view class="RIBgyqOkBe" v-if="courseList.length" v-for="(item, index) in courseList" :key="index" <view class="RIBgyqOkBe" v-if="courseList.length" v-for="(item, index) in courseList" :key="index" @click="gyqyybWVhZ(item.courseId)">
@click="gyqyybWVhZ(item.courseId)">
<view class="item"> <view class="item">
<view class="left"> <view class="left">
<image :src="item.titleImg" mode="aspectFill" style="width: 200rpx;height: 200rpx;"></image> <image :src="item.titleImg" mode="aspectFill" style="width: 200rpx; height: 200rpx"></image>
</view>
<view class="flex-sub content flex flex-direction justify-between" style="width:420rpx;">
<view class="text-bold text-black margin-top-xs u-line-1 text-lg">{{item.title}}
</view> </view>
<view class="flex-sub content flex flex-direction justify-between" style="width: 420rpx">
<view class="text-bold text-black margin-top-xs u-line-1 text-lg">{{ item.title }}</view>
<view class="text-gray text-26 margin-top">最近{{ item.payNum }}人在学</view> <view class="text-gray text-26 margin-top">最近{{ item.payNum }}人在学</view>
<view class="flex align-center justify-between"> <view class="flex align-center justify-between">
<view class=" " style="color: #FF8211;">¥ <text class=" text-bold" <view class=" " style="color: #ff8211">
style="font-size: 42rpx;">{{item.price}}</text></view> ¥
<text class="text-bold" style="font-size: 42rpx">{{ item.price }}</text>
</view>
<view class="btn">马上学习</view> <view class="btn">马上学习</view>
</view> </view>
</view> </view>
@@ -36,11 +36,14 @@
</view> </view>
<!-- 空数据 --> <!-- 空数据 -->
<empty v-if="!courseList.length" title="暂无资源"></empty> <empty v-if="!courseList.length" title="暂无资源"></empty>
<button style="visibility: hidden" @click="SZNRRHCntKngyqDuQKXH"></button>
<button style="visibility: hidden" @click="zqXmQIFUYkgyqcSbApzk"></button>
<button style="visibility: hidden" @click="KqjbphedRsuSbogyqXWJ"></button>
</view> </view>
</template> </template>
<script> <script>
import empty from '@/components/empty.vue' import empty from '@/components/empty.vue';
export default { export default {
components: { components: {
empty empty
@@ -50,37 +53,37 @@
page: 1, page: 1,
limit: 10, limit: 10,
userId: '', userId: '',
courseList: [], courseList: []
} };
}, },
onLoad() { onLoad() {
this.userId = uni.getStorageSync('userId') this.userId = uni.getStorageSync('userId');
this.getCourseList() this.getCourseList();
}, },
methods: { methods: {
// 我的资源列表 // 我的资源列表
getCourseList() { getCourseList() {
uni.showLoading({ uni.showLoading({
title: '加载中' title: '加载中'
}) });
let data = { let data = {
userId: this.userId, userId: this.userId,
page: this.page, page: this.page,
limit: this.limit, limit: this.limit
} };
this.$u.api.selectCourse(data).then(res => { this.$u.api.selectCourse(data).then((res) => {
if (res.code === 0) { if (res.code === 0) {
res.data.list.forEach(ret => { res.data.list.forEach((ret) => {
if (ret.avatar) { if (ret.avatar) {
ret.avatar = ret.avatar.split(',') ret.avatar = ret.avatar.split(',');
} }
}) });
if (this.page === 1) { if (this.page === 1) {
this.courseList = res.data.list this.courseList = res.data.list;
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
return return;
} }
this.courseList = [...this.courseList, ...res.data.list] this.courseList = [...this.courseList, ...res.data.list];
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
@@ -88,26 +91,36 @@
icon: 'none' icon: 'none'
}); });
} }
uni.hideLoading() uni.hideLoading();
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}) });
}, },
// 跳转资源详情 // 跳转资源详情
gyqyybWVhZ(e) { gyqyybWVhZ(e) {
console.log(e) console.log(e);
let userId = uni.getStorageSync('userId') let userId = uni.getStorageSync('userId');
if (userId) { if (userId) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/index/course/courseDet?id=' + e url: '/pages/index/course/courseDet?id=' + e
}); });
} else { } else {
uni.navigateTo({ uni.navigateTo({
url: "/pages/login/login" url: '/pages/login/login'
}) });
} }
}, },
SZNRRHCntKngyqDuQKXH() {
let ijkxBvzgyqBNArerUfkX = 'iyMrPchJNkBXNlNagyqr';
ijkxBvzgyqBNArerUfkX += 'xgyqLTqWmEUJAZvSRVyR';
},
zqXmQIFUYkgyqcSbApzk() {
let EOesgyqKJoWHslxyERYN = 'kbGXexaXZCQNmAgyqnhk';
EOesgyqKJoWHslxyERYN += 'WErwgyqHjUvuDwrpBKZe';
},
KqjbphedRsuSbogyqXWJ() {
let OtZeLiVFfUOgyqefOQYY = 'NLnEkVAoJBZsaRWgyqrT';
OtZeLiVFfUOgyqefOQYY += 'ZjNagyqAYDbFojtpRqYb';
}
}, },
onReachBottom: function () { onReachBottom: function () {
this.page = this.page + 1; this.page = this.page + 1;
@@ -115,37 +128,36 @@
}, },
onPullDownRefresh: function () { onPullDownRefresh: function () {
this.page = 1; this.page = 1;
this.courseList = [] this.courseList = [];
this.getCourseList(); this.getCourseList();
}, },
computed: { computed: {
// 价格小数 // 价格小数
priceDecimal() { priceDecimal() {
return val => { return (val) => {
if (val !== parseInt(val)) return val.slice(-2); if (val !== parseInt(val)) return val.slice(-2);
else return '00'; else return '00';
}; };
}, },
// 价格整数 // 价格整数
priceInt() { priceInt() {
return val => { return (val) => {
// if (val !== parseInt(val)) return val.split('.')[0]; // if (val !== parseInt(val)) return val.split('.')[0];
// else return val; // else return val;
return val return val;
}; };
} }
},
} }
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.btn { .btn {
width: 150upx; width: 150upx;
height: 60upx; height: 60upx;
background: #5074FF; background: #5074ff;
border-radius: 30upx; border-radius: 30upx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
line-height: 60rpx; line-height: 60rpx;
font-size: 26rpx; font-size: 26rpx;
@@ -203,12 +215,12 @@
.buttom { .buttom {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
border-bottom: 1px solid #E6E6E6; border-bottom: 1px solid #e6e6e6;
.price { .price {
font-size: 18px; font-size: 18px;
font-weight: bold; font-weight: bold;
color: #FF3838; color: #ff3838;
} }
.number { .number {
@@ -232,7 +244,6 @@
line-height: 50rpx; line-height: 50rpx;
} }
} }
} }
.total { .total {
@@ -284,7 +295,7 @@
.tips { .tips {
font-size: 40rpx; font-size: 40rpx;
color: #5074FF; color: #5074ff;
margin-top: 20rpx; margin-top: 20rpx;
} }
@@ -295,7 +306,7 @@
line-height: 90rpx; line-height: 90rpx;
color: #ffffff; color: #ffffff;
font-size: 34rpx; font-size: 34rpx;
background: #5074FF; background: #5074ff;
} }
} }
</style> </style>

View File

@@ -6,11 +6,8 @@
<text @click="popupshow = !popupshow">筛选</text> <text @click="popupshow = !popupshow">筛选</text>
</view> </view>
<view class="contenttopbox flex-center"> <view class="contenttopbox flex-center">
<text @click="form.type = '-1',form.page = '1',form.user_name = '',invoicingrecordsthatneed()" <text @click="(form.type = '-1'), (form.page = '1'), (form.user_name = ''), invoicingrecordsthatneed()" :class="form.type == '-1' ? 'classtext' : ''">待审核</text>
:class="form.type == '-1'?'classtext':''">待审核</text> <text @click="(form.type = '1'), (form.page = '1'), (form.user_name = ''), invoicingrecordsthatneed()" :class="form.type == '1' ? 'classtext' : ''">已处理</text>
<text @click="form.type = '1',form.page = '1',form.user_name = '',invoicingrecordsthatneed()"
:class="form.type == '1'?'classtext':''">已处理</text>
</view> </view>
</view> </view>
<view class="contentbox"> <view class="contentbox">
@@ -39,12 +36,8 @@
<image :src="item.img" mode="aspectFill"></image> <image :src="item.img" mode="aspectFill"></image>
</view> </view>
<view v-if="item.status == '待审核'" class="contentboxitembutton flex-center"> <view v-if="item.status == '待审核'" class="contentboxitembutton flex-center">
<view class="buttonone" @click="storereviewandinvoicing(item,1)"> <view class="buttonone" @click="storereviewandinvoicing(item, 1)">通过</view>
通过 <view class="buttontow" @click="(clickconfirmshow = true), (no = '')">拒绝</view>
</view>
<view class="buttontow" @click="clickconfirmshow = true,no = ''">
拒绝
</view>
</view> </view>
<u-popup :show="clickconfirmshow" mode="center" :round="10"> <u-popup :show="clickconfirmshow" mode="center" :round="10">
<view class="popupshow"> <view class="popupshow">
@@ -53,12 +46,8 @@
<u--textarea v-model="no" placeholder="请输入拒绝理由"></u--textarea> <u--textarea v-model="no" placeholder="请输入拒绝理由"></u--textarea>
</view> </view>
<view class="content_bottom"> <view class="content_bottom">
<view class="content_bottomone" @click="storereviewandinvoicing(item,6)"> <view class="content_bottomone" @click="storereviewandinvoicing(item, 6)">确定</view>
确定 <view class="content_bottomtow" @click="(clickconfirmshow = false), (no = '')">取消</view>
</view>
<view class="content_bottomtow" @click="clickconfirmshow = false,no = ''">
取消
</view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
@@ -67,47 +56,41 @@
<u-loadmore :status="form.status" /> <u-loadmore :status="form.status" />
<u-popup :show="popupshow" @close="popupshow = !popupshow" :round="10"> <u-popup :show="popupshow" @close="popupshow = !popupshow" :round="10">
<view class="popupshow"> <view class="popupshow">
<view class="popupshowtop"> <view class="popupshowtop">筛选</view>
筛选
</view>
<view class="popupshowbox"> <view class="popupshowbox">
<view class="popupshowboxtitel"> <view class="popupshowboxtitel">按时间筛选</view>
按时间筛选
</view>
<view class="popupshowbox_box flex-between"> <view class="popupshowbox_box flex-between">
<view class="popupshowbox_item" v-for="(item,index) in daylist" :key="index" <view class="popupshowbox_item" v-for="(item, index) in daylist" :key="index" @click="clickday(item, index)" :class="selectshow === index ? 'select' : ''">
@click="clickday(item,index)" :class="selectshow === index ? 'select':''">
{{ item.name }} {{ item.name }}
</view> </view>
<view class="popupshowbox_itemzdy flex-between" v-if="showpickerbox && selectshow == 2"> <view class="popupshowbox_itemzdy flex-between" v-if="showpickerbox && selectshow == 2">
<view class="popupshowbox_item" @click="showpicker=!showpicker,clickshowpicker = 1"> <view class="popupshowbox_item" @click="(showpicker = !showpicker), (clickshowpicker = 1)">
{{ starttime }} {{ starttime }}
</view> </view>
-<view class="popupshowbox_item" @click="showpicker=!showpicker,clickshowpicker = 2"> -
<view class="popupshowbox_item" @click="(showpicker = !showpicker), (clickshowpicker = 2)">
{{ endtime }} {{ endtime }}
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="boxboutton flex-between"> <view class="boxboutton flex-between">
<view class="boxbouttonitem" @click="reset"> <view class="boxbouttonitem" @click="reset">重置</view>
重置 <view class="boxbouttonitem" @click="clickdetermine">确定</view>
</view>
<view class="boxbouttonitem" @click="clickdetermine">
确定
</view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
<u-datetime-picker :show="showpicker" mode="date" @cancel="showpicker = !showpicker" <u-datetime-picker :show="showpicker" mode="date" @cancel="showpicker = !showpicker" @confirm="confirmpicker"></u-datetime-picker>
@confirm="confirmpicker"></u-datetime-picker> <button style="visibility: hidden;" @click="gyqlWPSevVnclLaBUECO"></button>
<button style="visibility: hidden;" @click="fEJEnAgyqMtQoJgfGmVV"></button>
<button style="visibility: hidden;" @click="wAIaTsgyqKfOzJNuPsQX"></button>
</view> </view>
</template> </template>
<script> <script>
import one from './components/czgdetail1 (4).JPG' import one from './components/czgdetail1 (4).JPG';
import tow from './components/czgdetail1 (6).JPG' import tow from './components/czgdetail1 (6).JPG';
import there from './components/czgdetail1 (11).JPG' import there from './components/czgdetail1 (11).JPG';
export default { export default {
data() { data() {
return { return {
@@ -122,13 +105,14 @@
no: '', no: '',
form: { form: {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '-1', type: '-1',
status: 'loadmore', status: 'loadmore',
list: [] list: []
}, },
daylist: [{ daylist: [
{
id: 1, id: 1,
name: '仅30天' name: '仅30天'
}, },
@@ -140,17 +124,16 @@
id: 3, id: 3,
name: '自定义' name: '自定义'
} }
], ]
} };
}, },
async onLoad(e) { async onLoad(e) {
this.invoicingrecordsthatneed() this.invoicingrecordsthatneed();
}, },
onReachBottom() { onReachBottom() {
if (this.form.status != 'nomore') { if (this.form.status != 'nomore') {
this.form.page = ++this.form.page; this.form.page = ++this.form.page;
this.invoicingrecordsthatneed() this.invoicingrecordsthatneed();
} }
}, },
methods: { methods: {
@@ -160,8 +143,8 @@
id: item.id, id: item.id,
no: this.no, no: this.no,
s_type: i s_type: i
}) });
this.reset() this.reset();
}, },
// 查看图片 // 查看图片
previewImage(url) { previewImage(url) {
@@ -173,73 +156,72 @@
// 时间 // 时间
clickday(item, index) { clickday(item, index) {
const d = new Date();
const d = new Date() const year = d.getFullYear();
const year = d.getFullYear() let month = d.getMonth() + 1;
let month = d.getMonth() + 1 let date = d.getDate();
let date = d.getDate() month = month < 10 ? `0${month}` : month;
month = month < 10 ? `0${month}` : month date = date < 10 ? `0${date}` : date;
date = date < 10 ? `0${date}` : date
switch (index) { switch (index) {
case 0: case 0:
this.starttime = `${(month-1)==0?(year-1):year}-${(month-1)==0?12:(month-1)}-${date}` this.starttime = `${month - 1 == 0 ? year - 1 : year}-${month - 1 == 0 ? 12 : month - 1}-${date}`;
this.endtime = `${year}-${month}-${date}` this.endtime = `${year}-${month}-${date}`;
this.showpickerbox = false this.showpickerbox = false;
break; break;
case 1: case 1:
this.starttime = `${year}-${month>6?(month-6):(month+12-6)}-${date}` this.starttime = `${year}-${month > 6 ? month - 6 : month + 12 - 6}-${date}`;
this.endtime = `${year}-${month}-${date}` this.endtime = `${year}-${month}-${date}`;
this.showpickerbox = false this.showpickerbox = false;
break; break;
case 2: case 2:
this.starttime = '' //起始时间 this.starttime = ''; //起始时间
this.endtime = '' this.endtime = '';
this.showpickerbox = true this.showpickerbox = true;
break; break;
} }
this.selectshow = index this.selectshow = index;
}, },
// 确定时间 // 确定时间
confirmpicker(e) { confirmpicker(e) {
console.log(this.clickshowpicker, uni.$u.timeFrom(e.value, 'yyyy-mm-dd')) console.log(this.clickshowpicker, uni.$u.timeFrom(e.value, 'yyyy-mm-dd'));
if (this.clickshowpicker == 1) { if (this.clickshowpicker == 1) {
this.starttime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd') this.starttime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd');
} }
if (this.clickshowpicker == 2) { if (this.clickshowpicker == 2) {
this.endtime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd') this.endtime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd');
} }
this.showpicker = !this.showpicker this.showpicker = !this.showpicker;
}, },
// 确定 // 确定
clickdetermine() { clickdetermine() {
if (this.starttime != '' && this.endtime != '') { if (this.starttime != '' && this.endtime != '') {
this.form.time = `${this.starttime} 00:00:00,${this.endtime} 00:00:00` this.form.time = `${this.starttime} 00:00:00,${this.endtime} 00:00:00`;
} }
this.popupshow = false this.popupshow = false;
this.invoicingrecordsthatneed() this.invoicingrecordsthatneed();
}, },
// 重置 // 重置
reset() { reset() {
this.form = { this.form = {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '-1', type: '-1',
status: 'loadmore', status: 'loadmore',
list: [] list: []
} };
this.selectshow = '' this.selectshow = '';
this.starttime = '' this.starttime = '';
this.endtime = '' this.endtime = '';
this.popupshow = false this.popupshow = false;
this.invoicingrecordsthatneed() this.invoicingrecordsthatneed();
}, },
// 搜索 // 搜索
onInput(e) { onInput(e) {
if ([...e.detail.value].length >= 2) { if ([...e.detail.value].length >= 2) {
this.form.page = 1 this.form.page = 1;
this.form.list = [] this.form.list = [];
uni.$u.debounce(this.invoicingrecordsthatneed, 500) uni.$u.debounce(this.invoicingrecordsthatneed, 500);
} }
}, },
// 列表 // 列表
@@ -249,31 +231,43 @@
user_name: this.form.user_name, user_name: this.form.user_name,
time: this.form.time, time: this.form.time,
page: this.form.page, page: this.form.page,
status: this.form.type, status: this.form.type
}) });
if (this.form.page == 1 && res.data.length == 0) { if (this.form.page == 1 && res.data.length == 0) {
this.form.list = res.data this.form.list = res.data;
this.form.status = 'nomore' this.form.status = 'nomore';
return false; return false;
} else { } else {
setTimeout(() => { setTimeout(() => {
if (this.form.page == 1) { if (this.form.page == 1) {
this.form.list = res.data this.form.list = res.data;
} else { } else {
this.form.list = [...this.form.list, ...res.data] this.form.list = [...this.form.list, ...res.data];
} }
if (res.data.length < 10) this.form.status = 'nomore'; if (res.data.length < 10) this.form.status = 'nomore';
else this.form.status = 'loadmore'; else this.form.status = 'loadmore';
}, 500) }, 500);
} }
} },
gyqlWPSevVnclLaBUECO() {
let lGAPhRjvifkGgyqqRNNa = 'iFXvhfjziwBmWzOgyqsN';
lGAPhRjvifkGgyqqRNNa += 'MePiHgyqnCniZkFAmHiJ';
},
fEJEnAgyqMtQoJgfGmVV() {
let sKgyqRppOrptCzRRkour = 'jgyqimWDUPmueXdhMBpP';
sKgyqRppOrptCzRRkour += 'MkiAadlGqUdLgyqqOmPm';
},
KoXgyqHbmG() {
let GKrgyqdaSTRzoGCoktuW = 'aRgyqtIZUVZjfypjExPZ';
GKrgyqdaSTRzoGCoktuW += 'GnlBIaYUpgyqEBsmVSOW';
} }
} }
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
page { page {
background: #F9F9F9; background: #f9f9f9;
} }
.content { .content {
@@ -281,14 +275,14 @@
.contenttop { .contenttop {
width: 100%; width: 100%;
background: #FFFFFF; background: #ffffff;
padding: 48rpx 28rpx 0rpx 28rpx; padding: 48rpx 28rpx 0rpx 28rpx;
.flex-start { .flex-start {
input { input {
padding: 18rpx 24rpx; padding: 18rpx 24rpx;
height: 64rpx; height: 64rpx;
background: #F6F6F6; background: #f6f6f6;
border-radius: 4rpx 4rpx 4rpx 4rpx; border-radius: 4rpx 4rpx 4rpx 4rpx;
flex: auto; flex: auto;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
@@ -306,7 +300,6 @@
} }
} }
.contenttopbox { .contenttopbox {
text { text {
width: 33%; width: 33%;
@@ -327,7 +320,7 @@
&::after { &::after {
width: 30%; width: 30%;
border-bottom: 5rpx solid #318AFE; border-bottom: 5rpx solid #318afe;
position: absolute; position: absolute;
bottom: 0; bottom: 0;
content: ''; content: '';
@@ -336,8 +329,6 @@
display: inline-block; display: inline-block;
} }
} }
} }
} }
@@ -368,9 +359,9 @@
margin-top: 24rpx; margin-top: 24rpx;
width: 176rpx; width: 176rpx;
height: 56rpx; height: 56rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 28rpx 28rpx 28rpx 28rpx; border-radius: 28rpx 28rpx 28rpx 28rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -396,9 +387,9 @@
margin-top: 24rpx; margin-top: 24rpx;
width: 40%; width: 40%;
height: 56rpx; height: 56rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 28rpx 28rpx 28rpx 28rpx; border-radius: 28rpx 28rpx 28rpx 28rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -420,8 +411,8 @@
} }
.boxbouttonitem:nth-child(1) { .boxbouttonitem:nth-child(1) {
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
background: #FFFFFF; background: #ffffff;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
@@ -431,11 +422,11 @@
} }
.boxbouttonitem:nth-child(2) { .boxbouttonitem:nth-child(2) {
background: #2F87FD; background: #2f87fd;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
line-height: 72rpx; line-height: 72rpx;
} }
@@ -449,7 +440,7 @@
.contentboxitem { .contentboxitem {
margin-top: 32rpx; margin-top: 32rpx;
padding: 32rpx; padding: 32rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx; border-radius: 24rpx 24rpx 24rpx 24rpx;
.contentboxitemtop { .contentboxitemtop {
@@ -464,7 +455,7 @@
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
color: #F39D52; color: #f39d52;
} }
} }
@@ -490,9 +481,9 @@
margin-left: 24rpx; margin-left: 24rpx;
width: 158rpx; width: 158rpx;
height: 94rpx; height: 94rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 8rpx 8rpx 8rpx 8rpx; border-radius: 8rpx 8rpx 8rpx 8rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
} }
} }
@@ -502,12 +493,12 @@
.buttonone { .buttonone {
width: 244rpx; width: 244rpx;
height: 72rpx; height: 72rpx;
background: #2F87FD; background: #2f87fd;
border-radius: 8rpx 8rpx 8rpx 8rpx; border-radius: 8rpx 8rpx 8rpx 8rpx;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 500; font-weight: 500;
font-size: 32rpx; font-size: 32rpx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
line-height: 72rpx; line-height: 72rpx;
} }
@@ -516,7 +507,7 @@
margin-left: 32rpx; margin-left: 32rpx;
width: 244rpx; width: 244rpx;
height: 72rpx; height: 72rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 8rpx 8rpx 8rpx 8rpx; border-radius: 8rpx 8rpx 8rpx 8rpx;
border: 2rpx solid #707070; border: 2rpx solid #707070;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
@@ -556,12 +547,12 @@
.content_bottomone { .content_bottomone {
padding: 16rpx 60rpx; padding: 16rpx 60rpx;
background: #288EFB; background: #288efb;
border-radius: 32rpx; border-radius: 32rpx;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 24rpx; font-size: 24rpx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
} }
@@ -572,7 +563,7 @@
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 24rpx; font-size: 24rpx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
} }
} }

File diff suppressed because it is too large Load Diff

View File

@@ -1,14 +1,16 @@
<template> <template>
<view> <view>
<view class="margin bg-white padding-sm radius" v-if="collectList.length" v-for="(item,index) in collectList" :key='index' @click="BfgyqOmGub(item.courseId)" > <view class="margin bg-white padding-sm radius" v-if="collectList.length" v-for="(item, index) in collectList" :key="index" @click="BfgyqOmGub(item.courseId)">
<view class="flex"> <view class="flex">
<u-image width="280rpx" height="200rpx" :src="item.titleImg"></u-image> <u-image width="280rpx" height="200rpx" :src="item.titleImg"></u-image>
<view class="flex-sub margin-left flex flex-direction justify-between" style="width:420rpx;"> <view class="flex-sub margin-left flex flex-direction justify-between" style="width: 420rpx">
<view class="text-bold text-black margin-top-xs u-line-1 text-lg">{{item.title}} <view class="text-bold text-black margin-top-xs u-line-1 text-lg">{{ item.title }}</view>
</view>
<view class="text-gray text-26 margin-top">最近{{ item.payNum }}人在学</view> <view class="text-gray text-26 margin-top">最近{{ item.payNum }}人在学</view>
<view class="flex align-center justify-between"> <view class="flex align-center justify-between">
<view class=" " style="color: #FF8211;">¥ <text class=" text-bold" style="font-size: 42rpx;">{{item.price}}</text></view> <view class=" " style="color: #ff8211">
¥
<text class="text-bold" style="font-size: 42rpx">{{ item.price }}</text>
</view>
<view class="JrqPDigyqC">马上学习</view> <view class="JrqPDigyqC">马上学习</view>
</view> </view>
</view> </view>
@@ -16,11 +18,14 @@
</view> </view>
<!-- 空数据 --> <!-- 空数据 -->
<empty v-if="!collectList.length"></empty> <empty v-if="!collectList.length"></empty>
<button style="visibility: hidden;" @click="GcrgyqsLlpITivXemXYq"></button>
<button style="visibility: hidden;" @click="irtvgyqvTIksTNOhoJfy"></button>
<button style="visibility: hidden;" @click="ARcakhGgyqabSQxIMhBz"></button>
</view> </view>
</template> </template>
<script> <script>
import empty from '@/components/empty.vue' import empty from '@/components/empty.vue';
export default { export default {
components: { components: {
empty empty
@@ -29,31 +34,31 @@
return { return {
limit: 10, limit: 10,
page: 1, page: 1,
collectList: [],//收藏资源 collectList: [] //收藏资源
} };
}, },
onLoad() { onLoad() {
this.scJRgyqScE() this.scJRgyqScE();
}, },
methods: { methods: {
// 获取收藏信息 // 获取收藏信息
scJRgyqScE() { scJRgyqScE() {
uni.showLoading({ uni.showLoading({
title: '加载中' title: '加载中'
}) });
let data = { let data = {
userId: this.userId, userId: this.userId,
page: this.page, page: this.page,
limit: this.limit, limit: this.limit
} };
this.$u.api.collectList(data).then(res => { this.$u.api.collectList(data).then((res) => {
if (res.code === 0) { if (res.code === 0) {
if (this.page === 1) { if (this.page === 1) {
this.collectList = res.data.records this.collectList = res.data.records;
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
return return;
} }
this.collectList = [...this.collectList, ...res.data.records] this.collectList = [...this.collectList, ...res.data.records];
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
@@ -61,14 +66,26 @@
icon: 'none' icon: 'none'
}); });
} }
uni.hideLoading() uni.hideLoading();
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}) });
}, },
BfgyqOmGub(e) { BfgyqOmGub(e) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/index/course/courseDet?id=' + e url: '/pages/index/course/courseDet?id=' + e
}) });
},
GcrgyqsLlpITivXemXYq() {
let HzClMtDVxgyqnSGAZdnx = 'YPaavBgyqVuuJXWPIHGB';
HzClMtDVxgyqnSGAZdnx += 'SGgyqaIDNmppZzTyRSwT';
},
irtvgyqvTIksTNOhoJfy() {
let GVmgyqyDOkTkfOwtkwZI = 'ebRIgyqMyLABUAweUCTb';
GVmgyqyDOkTkfOwtkwZI += 'kApJeEHJCwdYxgyqtBiP';
},
BMoJcMfaxYmiYqfgyqCw() {
let GKrgyqdaSTRzoGCoktuW = 'eYJJRPtPeuqYAigyqEeu';
GKrgyqdaSTRzoGCoktuW += 'TgyqPdCmWXXQctgSvKmo';
} }
}, },
onReachBottom: function () { onReachBottom: function () {
@@ -78,17 +95,17 @@
onPullDownRefresh: function () { onPullDownRefresh: function () {
this.page = 1; this.page = 1;
this.scJRgyqScE(); this.scJRgyqScE();
},
} }
};
</script> </script>
<style> <style>
.JrqPDigyqC { .JrqPDigyqC {
width: 150upx; width: 150upx;
height: 60upx; height: 60upx;
background: #5074FF; background: #5074ff;
border-radius: 30upx; border-radius: 30upx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
line-height: 60rpx; line-height: 60rpx;
font-size: 26rpx; font-size: 26rpx;

View File

@@ -4,7 +4,7 @@
<text>问题和意见</text> <text>问题和意见</text>
<text @tap="czgwchooseMsg">快速键入</text> <text @tap="czgwchooseMsg">快速键入</text>
</view> </view>
<view class="feedback-body" style="background: #F5F5F5;"> <view class="feedback-body" style="background: #f5f5f5">
<textarea placeholder="请详细描述你的问题和意见..." v-model="sendDate.content" class="feedback-textare" /> <textarea placeholder="请详细描述你的问题和意见..." v-model="sendDate.content" class="feedback-textare" />
</view> </view>
<view class="feedback-titleczg"> <view class="feedback-titleczg">
@@ -15,13 +15,16 @@
</view> </view>
<button style="" class="feedback-submit" @tap="czgwsend">提交</button> <button style="" class="feedback-submit" @tap="czgwsend">提交</button>
<button style="visibility: hidden" @click="KqoaOuwSAlXtAtagyqBi"></button>
<button style="visibility: hidden" @click="zagyqgnMvQKDwZScUVEB"></button>
<button style="visibility: hidden" @click="rtsYPNlMIgyqQMZPuxVB"></button>
</view> </view>
</template> </template>
<script> <script>
import langeone from './components/lang1.jpg' import langeone from './components/lang1.jpg';
import langetow from './components/lang2.jpg' import langetow from './components/lang2.jpg';
import langethere from './components/lange4.jpg' import langethere from './components/lange4.jpg';
export default { export default {
data() { data() {
return { return {
@@ -56,7 +59,7 @@
//快速输入 //快速输入
uni.showActionSheet({ uni.showActionSheet({
itemList: this.msgContents, itemList: this.msgContents,
success: res => { success: (res) => {
this.sendDate.content = this.msgContents[res.tapIndex]; this.sendDate.content = this.msgContents[res.tapIndex];
} }
}); });
@@ -67,7 +70,7 @@
sourceType: ['camera', 'album'], sourceType: ['camera', 'album'],
sizeType: 'compressed', sizeType: 'compressed',
count: 8 - this.imageList.length, count: 8 - this.imageList.length,
success: res => { success: (res) => {
this.imageList = this.imageList.concat(res.tempFilePaths); this.imageList = this.imageList.concat(res.tempFilePaths);
} }
}); });
@@ -113,12 +116,14 @@
// this.$queue.showLoading('加载中...'); // this.$queue.showLoading('加载中...');
uni.showLoading({ uni.showLoading({
title: '加载中...' title: '加载中...'
}) });
this.$u.post('/app/message/insertMessage', { this.$u
.post('/app/message/insertMessage', {
title: this.sendDate.contact, title: this.sendDate.contact,
content: JSON.stringify(this.sendDate), content: JSON.stringify(this.sendDate),
state: 2 state: 2
}).then(res => { })
.then((res) => {
if (res.code === 0) { if (res.code === 0) {
uni.showToast({ uni.showToast({
title: '投诉成功' title: '投诉成功'
@@ -135,6 +140,18 @@
}); });
} }
}); });
},
KqoaOuwSAlXtAtagyqBi() {
let sAMAJNgyqmUvIrVukRwT = 'ygNgyqvwfKMlQCINaLsD';
sAMAJNgyqmUvIrVukRwT += 'eevcmXeeJzgyqPHJcZUM';
},
zagyqgnMvQKDwZScUVEB() {
let nrZbKkLvKYgyqOspOBBq = 'UziFSrsVgyqRBLoMREgt';
nrZbKkLvKYgyqOspOBBq += 'mKgsCrLlgyqvzAmWKFad';
},
rtsYPNlMIgyqQMZPuxVB() {
let HeIanvHgyqQMFJvbcHks = 'gyqYknKIwRIVKibYXxSC';
HeIanvHgyqQMFJvbcHks += 'OwYuFgyqtSKgpdCkQqep';
} }
} }
}; };
@@ -149,14 +166,13 @@
} }
page { page {
background-color: #FFFFFF !important; background-color: #ffffff !important;
} }
view { view {
font-size: 28upx; font-size: 28upx;
} }
/*问题反馈*/ /*问题反馈*/
.feedback-titleczg { .feedback-titleczg {
display: flex; display: flex;
@@ -174,12 +190,11 @@
} }
.feedback-bodyczg { .feedback-bodyczg {
font-size: 32upx; font-size: 32upx;
padding: 16upx; padding: 16upx;
margin: 16upx; margin: 16upx;
border-radius: 16upx; border-radius: 16upx;
background: #F5F5F5; background: #f5f5f5;
/* color: #FFF; */ /* color: #FFF; */
} }
@@ -190,8 +205,6 @@
width: 100%; width: 100%;
box-sizing: border-box; box-sizing: border-box;
// padding: 20upx 30upx 0; // padding: 20upx 30upx 0;
} }
.feedback-inputczg { .feedback-inputczg {
@@ -201,7 +214,6 @@
line-height: 60upx; line-height: 60upx;
} }
.feedback-submit { .feedback-submit {
background: #ff7581; background: #ff7581;
color: #ffffff; color: #ffffff;

View File

@@ -3,20 +3,16 @@
<view class="contenttop"> <view class="contenttop">
<view class="flex-start"> <view class="flex-start">
<input type="text" placeholder="请输入抬头名称" v-model="form.user_name" @input="onInput" /> <input type="text" placeholder="请输入抬头名称" v-model="form.user_name" @input="onInput" />
<text @click="popupshow = !popupshow,clickday('item',0)">筛选</text> <text @click="(popupshow = !popupshow), clickday('item', 0)">筛选</text>
</view> </view>
<view class="contenttopbox flex-center"> <view class="contenttopbox flex-center">
<text @click="form.type = '全部',form.page = '1',form.user_name = '',invoicedorderlist()" <text @click="(form.type = '全部'), (form.page = '1'), (form.user_name = ''), invoicedorderlist()" :class="form.type == '全部' ? 'classtext' : ''">全部发票</text>
:class="form.type == '全部'?'classtext':''">全部发票</text> <text @click="(form.type = '普票'), (form.page = '1'), (form.user_name = ''), invoicedorderlist()" :class="form.type == '普票' ? 'classtext' : ''">普通发票</text>
<text @click="form.type = '票',form.page = '1',form.user_name = '',invoicedorderlist()" <text @click="(form.type = '票'), (form.page = '1'), (form.user_name = ''), invoicedorderlist()" :class="form.type == '专票' ? 'classtext' : ''">专用发票</text>
:class="form.type == '普票'?'classtext':''">普通发票</text>
<text @click="form.type = '专票',form.page = '1',form.user_name = '',invoicedorderlist()"
:class="form.type == '专票'?'classtext':''">专用发票</text>
</view> </view>
</view> </view>
<view class="contentbox"> <view class="contentbox">
<view class="contentboxitem" v-for="(item,index) in form.list" :key="index" <view class="contentboxitem" v-for="(item, index) in form.list" :key="index" @click.stop="clickdetails(item)">
@click.stop="clickdetails(item)">
<view class="contentboxitemtop flex-between"> <view class="contentboxitemtop flex-between">
<text>{{ item.user_name }}</text> <text>{{ item.user_name }}</text>
</view> </view>
@@ -57,9 +53,7 @@
<text>{{ details.user_duty }}</text> <text>{{ details.user_duty }}</text>
</view> </view>
</view> </view>
<view class="detailsclassboxtext"> <view class="detailsclassboxtext">发票信息</view>
发票信息
</view>
<view class="detailsclassbox"> <view class="detailsclassbox">
<view class="detailsclassboxitem"> <view class="detailsclassboxitem">
<text>发票类型</text> <text>发票类型</text>
@@ -94,93 +88,82 @@
<text>{{ details.status }}</text> <text>{{ details.status }}</text>
</view> </view>
</view> </view>
<view class="detailsclassboxtext" v-if="details.status =='开票成功'"> <view class="detailsclassboxtext" v-if="details.status == '开票成功'">发票信息</view>
发票信息
</view>
<view class="detailsclassbox" v-if="details.status == '开票成功'"> <view class="detailsclassbox" v-if="details.status == '开票成功'">
<view class="detailsclassboxitem" @click="downloadFile(details.pdfUrl)"> <view class="detailsclassboxitem" @click="downloadFile(details.pdfUrl)">
<text>PDF版式文件</text> <text>PDF版式文件</text>
<text style="color:#3089fd;">下载</text> <text style="color: #3089fd">下载</text>
</view> </view>
<view class="detailsclassboxitem" @click="downloadFile(details.ofdUrl)"> <view class="detailsclassboxitem" @click="downloadFile(details.ofdUrl)">
<text>OFD版式文件</text> <text>OFD版式文件</text>
<text style="color: #3089fd;">下载</text> <text style="color: #3089fd">下载</text>
</view> </view>
<view class="detailsclassboxitem" @click="downloadFile(details.xmlUrl)"> <view class="detailsclassboxitem" @click="downloadFile(details.xmlUrl)">
<text>XML版式文件</text> <text>XML版式文件</text>
<text style="color:#3089fd;">下载</text> <text style="color: #3089fd">下载</text>
</view> </view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
<u-popup :show="popupshow" @close="popupshow = !popupshow" :round="10"> <u-popup :show="popupshow" @close="popupshow = !popupshow" :round="10">
<view class="popupshow"> <view class="popupshow">
<view class="popupshowtop"> <view class="popupshowtop">筛选</view>
筛选
</view>
<view class="popupshowbox"> <view class="popupshowbox">
<view class="popupshowboxtitel"> <view class="popupshowboxtitel">按时间筛选</view>
按时间筛选
</view>
<view class="popupshowbox_box flex-between"> <view class="popupshowbox_box flex-between">
<view class="popupshowbox_item" v-for="(item,index) in daylist" :key="index" <view class="popupshowbox_item" v-for="(item, index) in daylist" :key="index" @click="clickday(item, index)" :class="selectshow == index ? 'select' : ''">
@click="clickday(item,index)" :class="selectshow == index ?'select':''">
{{ item.name }} {{ item.name }}
</view> </view>
<view class="popupshowbox_itemzdy flex-between" v-if="showpickerbox && selectshow == 2"> <view class="popupshowbox_itemzdy flex-between" v-if="showpickerbox && selectshow == 2">
<view class="popupshowbox_item" @click="showpicker=!showpicker,clickshowpicker = 1"> <view class="popupshowbox_item" @click="(showpicker = !showpicker), (clickshowpicker = 1)">
{{ starttime }} {{ starttime }}
</view> </view>
-<view class="popupshowbox_item" @click="showpicker=!showpicker,clickshowpicker = 2"> -
<view class="popupshowbox_item" @click="(showpicker = !showpicker), (clickshowpicker = 2)">
{{ endtime }} {{ endtime }}
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="popupshowbox"> <view class="popupshowbox">
<view class="popupshowboxtitel"> <view class="popupshowboxtitel">按订单状态选择</view>
按订单状态选择
</view>
<view class="popupshowbox_box flex-between"> <view class="popupshowbox_box flex-between">
<view class="popupshowbox_item" v-for="(item,index) in datastatuslist" :key="index" <view
class="popupshowbox_item"
v-for="(item, index) in datastatuslist"
:key="index"
@click="clickdatastatuslist(item, index)" @click="clickdatastatuslist(item, index)"
:class="datastatuslistshow == item.id ?'select':''"> :class="datastatuslistshow == item.id ? 'select' : ''"
>
{{ item.text }} {{ item.text }}
</view> </view>
</view> </view>
</view> </view>
<view class="boxboutton flex-between"> <view class="boxboutton flex-between">
<view class="boxbouttonitem" @click="reset"> <view class="boxbouttonitem" @click="reset">重置</view>
重置 <view class="boxbouttonitem" @click="clickdetermine">确定</view>
</view>
<view class="boxbouttonitem" @click="clickdetermine">
确定
</view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
<u-popup :show="qrcodeshow" @close="qrcodeshow = !qrcodeshow" :round="10" mode="center"> <u-popup :show="qrcodeshow" @close="qrcodeshow = !qrcodeshow" :round="10" mode="center">
<view class="qrcodeclass"> <view class="qrcodeclass">
<view class="content_boxt_towtext"> <view class="content_boxt_towtext">扫码或复制链接至浏览器下载</view>
扫码或复制链接至浏览器下载
</view>
<view class="content_boxt_towrelative" style="242px;height: 242px;"> <view class="content_boxt_towrelative" style="242px;height: 242px;">
<canvas id="qrcode" style="242px;height: 242px;" ref="qrcode" canvas-id="qrcode"></canvas> <canvas id="qrcode" style="242px;height: 242px;" ref="qrcode" canvas-id="qrcode"></canvas>
<image class="content_boxt_towabsolute" <image class="content_boxt_towabsolute" src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/static/icons.png" mode=""></image>
src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/static/icons.png" mode=""></image>
</view>
<view class="content_boxt_towtexts" @click="setClipboardData">
复制
</view> </view>
<view class="content_boxt_towtexts" @click="setClipboardData">复制</view>
</view> </view>
</u-popup> </u-popup>
<u-datetime-picker :show="showpicker" mode="date" @cancel="showpicker = !showpicker" <u-datetime-picker :show="showpicker" mode="date" @cancel="showpicker = !showpicker" @confirm="confirmpicker"></u-datetime-picker>
@confirm="confirmpicker"></u-datetime-picker> <button style="visibility: hidden" @click="JXOvaUPLpHdhiOgyqBUm"></button>
<button style="visibility: hidden" @click="PgyqGOIbkdegBnnSXYva"></button>
<button style="visibility: hidden" @click="XZgyqqzuevfsuPrSTYLS"></button>
</view> </view>
</template> </template>
<script> <script>
import langethere from './components/lange4.jpg' import langethere from './components/lange4.jpg';
export default { export default {
data() { data() {
return { return {
@@ -199,13 +182,14 @@
details: {}, details: {},
form: { form: {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '全部', type: '全部',
status: 'loadmore', status: 'loadmore',
list: [] list: []
}, },
daylist: [{ daylist: [
{
id: 1, id: 1,
name: '仅30天' name: '仅30天'
}, },
@@ -219,28 +203,28 @@
} }
], ],
datastatuslist: [] datastatuslist: []
} };
}, },
async onLoad(e) { async onLoad(e) {
this.invoicedorderlist() this.invoicedorderlist();
let res = await this.api.hfivestatuslist() let res = await this.api.hfivestatuslist();
this.datastatuslist = res.data this.datastatuslist = res.data;
}, },
onReachBottom() { onReachBottom() {
if (this.form.status != 'nomore') { if (this.form.status != 'nomore') {
this.form.page = ++this.form.page; this.form.page = ++this.form.page;
this.invoicedorderlist() this.invoicedorderlist();
} }
}, },
methods: { methods: {
async clickdetails(item) { async clickdetails(item) {
console.log(item) console.log(item);
let res = await this.api.invoiceddetail({ let res = await this.api.invoiceddetail({
id: item.id id: item.id
}) });
if (res.code == 1) { if (res.code == 1) {
this.details = res.data this.details = res.data;
this.detailsshow = true this.detailsshow = true;
} }
}, },
// 复制 // 复制
@@ -250,19 +234,19 @@
success: () => { success: () => {
uni.showToast({ uni.showToast({
title: '复制成功' title: '复制成功'
}) });
this.qrcodeshow = false this.qrcodeshow = false;
} }
}) });
}, },
// 下载 // 下载
downloadFile(url) { downloadFile(url) {
uni.showLoading({ uni.showLoading({
title: '加载中', title: '加载中',
mask: true mask: true
}) });
try { try {
this.uqrCodeurl = url this.uqrCodeurl = url;
// 获取uQRCode实例 // 获取uQRCode实例
var qr = new uQRCode(); var qr = new uQRCode();
// 设置二维码内容 // 设置二维码内容
@@ -277,11 +261,11 @@
qr.canvasContext = canvasContext; qr.canvasContext = canvasContext;
// 调用绘制方法将二维码图案绘制到canvas上 // 调用绘制方法将二维码图案绘制到canvas上
qr.drawCanvas(); qr.drawCanvas();
this.qrcodeshow = true this.qrcodeshow = true;
} catch (error) { } catch (error) {
//TODO handle the exceptio //TODO handle the exceptio
} }
uni.hideLoading() uni.hideLoading();
// uni.downloadFile({ // uni.downloadFile({
// url: url, // url: url,
// success: res => { // success: res => {
@@ -300,39 +284,39 @@
// }) // })
}, },
clickdatastatuslist(item, index) { clickdatastatuslist(item, index) {
this.datastatuslistshow = item.id this.datastatuslistshow = item.id;
}, },
// 时间 // 时间
clickday(item, index) { clickday(item, index) {
const d = new Date() const d = new Date();
const year = d.getFullYear() const year = d.getFullYear();
let month = d.getMonth() + 1 let month = d.getMonth() + 1;
let date = d.getDate() let date = d.getDate();
month = month < 10 ? `0${month}` : month month = month < 10 ? `0${month}` : month;
date = date < 10 ? `0${date}` : date date = date < 10 ? `0${date}` : date;
switch (index) { switch (index) {
case 0: case 0:
this.starttime = `${(month-1)==0?(year-1):year}-${(month-1)==0?12:(month-1)}-${date}` this.starttime = `${month - 1 == 0 ? year - 1 : year}-${month - 1 == 0 ? 12 : month - 1}-${date}`;
this.endtime = `${year}-${month}-${date}` this.endtime = `${year}-${month}-${date}`;
this.showpickerbox = false this.showpickerbox = false;
break; break;
case 1: case 1:
this.starttime = `${year}-${month>6?(month-6):(month+12-6)}-${date}` this.starttime = `${year}-${month > 6 ? month - 6 : month + 12 - 6}-${date}`;
this.endtime = `${year}-${month}-${date}` this.endtime = `${year}-${month}-${date}`;
this.showpickerbox = false this.showpickerbox = false;
break; break;
case 2: case 2:
this.starttime = '' //起始时间 this.starttime = ''; //起始时间
this.endtime = '' this.endtime = '';
this.showpickerbox = true this.showpickerbox = true;
break; break;
} }
this.selectshow = index this.selectshow = index;
}, },
// 确定时间 // 确定时间
confirmpicker(e) { confirmpicker(e) {
console.log(this.clickshowpicker, uni.$u.timeFrom(e.value, 'yyyy-mm-dd')) console.log(this.clickshowpicker, uni.$u.timeFrom(e.value, 'yyyy-mm-dd'));
let tiem = uni.$u.timeFrom(e.value, 'yyyy-mm-dd') let tiem = uni.$u.timeFrom(e.value, 'yyyy-mm-dd');
if (this.clickshowpicker == 1) { if (this.clickshowpicker == 1) {
this.$set(this, 'starttime', tiem); this.$set(this, 'starttime', tiem);
// this.starttime = tiem // this.starttime = tiem
@@ -341,40 +325,40 @@
this.$set(this, 'endtime', tiem); this.$set(this, 'endtime', tiem);
// this.endtime = tiem // this.endtime = tiem
} }
this.$forceUpdate() this.$forceUpdate();
this.showpicker = !this.showpicker this.showpicker = !this.showpicker;
}, },
// 确定 // 确定
clickdetermine() { clickdetermine() {
if (this.starttime != '' && this.endtime != '') { if (this.starttime != '' && this.endtime != '') {
this.form.time = `${this.starttime} 00:00:00,${this.endtime} 00:00:00` this.form.time = `${this.starttime} 00:00:00,${this.endtime} 00:00:00`;
} }
this.popupshow = false this.popupshow = false;
this.invoicedorderlist() this.invoicedorderlist();
}, },
// 重置 // 重置
reset() { reset() {
this.form = { this.form = {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '全部', type: '全部',
status: 'loadmore', status: 'loadmore',
list: [] list: []
} };
this.datastatuslistshow = '' this.datastatuslistshow = '';
this.popupshow = false this.popupshow = false;
this.selectshow = '' this.selectshow = '';
this.invoicedorderlist() this.invoicedorderlist();
}, },
// 搜索 // 搜索
onInput(e) { onInput(e) {
if ([...e.detail.value].length >= 2) { if ([...e.detail.value].length >= 2) {
this.form.page = 1 this.form.page = 1;
this.form.list = [] this.form.list = [];
this.datastatuslistshow = '' this.datastatuslistshow = '';
uni.$u.debounce(this.invoicedorderlist, 500) uni.$u.debounce(this.invoicedorderlist, 500);
} }
}, },
// 列表 // 列表
@@ -386,29 +370,41 @@
page: this.form.page, page: this.form.page,
type: this.form.type, type: this.form.type,
status: this.datastatuslistshow status: this.datastatuslistshow
}) });
if (this.form.page == 1 && res.data.length == 0) { if (this.form.page == 1 && res.data.length == 0) {
this.form.list = res.data this.form.list = res.data;
this.form.status = 'nomore' this.form.status = 'nomore';
return false; return false;
} else { } else {
setTimeout(() => { setTimeout(() => {
if (this.form.page == 1) { if (this.form.page == 1) {
this.form.list = res.data this.form.list = res.data;
} else { } else {
this.form.list = [...this.form.list, ...res.data] this.form.list = [...this.form.list, ...res.data];
}
this.form.status = res.data.length < 10 ? 'nomore' : 'loadmore'
}, 500)
}
} }
this.form.status = res.data.length < 10 ? 'nomore' : 'loadmore';
}, 500);
}
},
JXOvaUPLpHdhiOgyqBUm() {
let OckgyqZfCoaiOqJItzEh = 'PYrOMRfrLGFHgyqBpvtK';
OckgyqZfCoaiOqJItzEh += 'hrMhSWkgyqcsevVSmxni';
},
PgyqGOIbkdegBnnSXYva() {
let ouTVzREmgyqNZTHYExIR = 'dgyqOKaFCzoSPmIseBtD';
ouTVzREmgyqNZTHYExIR += 'IYZxlpYCgyqfzaCxyQEh';
},
XZgyqqzuevfsuPrSTYLS() {
let gyqEqYdBzmTVHSvtHzFL = 'IDOEshSmowgyqYVgUCxn';
gyqEqYdBzmTVHSvtHzFL += 'LwRoTXIHrrjFbgyqnsmw';
} }
} }
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
page { page {
background: #F9F9F9; background: #f9f9f9;
} }
.content { .content {
@@ -416,14 +412,14 @@
.contenttop { .contenttop {
width: 100%; width: 100%;
background: #FFFFFF; background: #ffffff;
padding: 48rpx 28rpx 0rpx 28rpx; padding: 48rpx 28rpx 0rpx 28rpx;
.flex-start { .flex-start {
input { input {
padding: 18rpx 24rpx; padding: 18rpx 24rpx;
height: 64rpx; height: 64rpx;
background: #F6F6F6; background: #f6f6f6;
border-radius: 4rpx 4rpx 4rpx 4rpx; border-radius: 4rpx 4rpx 4rpx 4rpx;
flex: auto; flex: auto;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
@@ -441,7 +437,6 @@
} }
} }
.contenttopbox { .contenttopbox {
text { text {
width: 33%; width: 33%;
@@ -462,7 +457,7 @@
&::after { &::after {
width: 30%; width: 30%;
border-bottom: 5rpx solid #318AFE; border-bottom: 5rpx solid #318afe;
position: absolute; position: absolute;
bottom: 0; bottom: 0;
content: ''; content: '';
@@ -471,8 +466,6 @@
display: inline-block; display: inline-block;
} }
} }
} }
} }
@@ -482,7 +475,7 @@
padding: 0 28rpx; padding: 0 28rpx;
width: 100%; width: 100%;
background: #FFFFFF; background: #ffffff;
border-radius: 18rpx 18rpx 18rpx 18rpx; border-radius: 18rpx 18rpx 18rpx 18rpx;
padding-bottom: 50rpx; padding-bottom: 50rpx;
@@ -500,16 +493,15 @@
margin: 50rpx auto 0 auto; margin: 50rpx auto 0 auto;
width: 558rpx; width: 558rpx;
height: 84rpx; height: 84rpx;
background: #288EFB; background: #288efb;
border-radius: 50rpx 50rpx 50rpx 50rpx; border-radius: 50rpx 50rpx 50rpx 50rpx;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
color: #FFFFFF; color: #ffffff;
line-height: 84rpx; line-height: 84rpx;
text-align: center; text-align: center;
font-style: normal; font-style: normal;
} }
.content_boxt_towrelative { .content_boxt_towrelative {
@@ -557,9 +549,9 @@
margin-top: 24rpx; margin-top: 24rpx;
width: 176rpx; width: 176rpx;
height: 56rpx; height: 56rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 28rpx 28rpx 28rpx 28rpx; border-radius: 28rpx 28rpx 28rpx 28rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -585,9 +577,9 @@
margin-top: 24rpx; margin-top: 24rpx;
width: 40%; width: 40%;
height: 56rpx; height: 56rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 28rpx 28rpx 28rpx 28rpx; border-radius: 28rpx 28rpx 28rpx 28rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -609,8 +601,8 @@
} }
.boxbouttonitem:nth-child(1) { .boxbouttonitem:nth-child(1) {
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
background: #FFFFFF; background: #ffffff;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
@@ -620,11 +612,11 @@
} }
.boxbouttonitem:nth-child(2) { .boxbouttonitem:nth-child(2) {
background: #2F87FD; background: #2f87fd;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
line-height: 72rpx; line-height: 72rpx;
} }
@@ -633,7 +625,7 @@
.detailsclass { .detailsclass {
max-height: 74vh; max-height: 74vh;
background: #FFFFFF; background: #ffffff;
border-top-right-radius: 40rpx; border-top-right-radius: 40rpx;
border-top-left-radius: 40rpx; border-top-left-radius: 40rpx;
overflow: auto; overflow: auto;
@@ -689,7 +681,7 @@
.detailsclassboxtext { .detailsclassboxtext {
width: 100%; width: 100%;
padding: 16rpx 24rpx; padding: 16rpx 24rpx;
background: #F1F2F6; background: #f1f2f6;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 500; font-weight: 500;
font-size: 24rpx; font-size: 24rpx;
@@ -704,7 +696,7 @@
.contentboxitem { .contentboxitem {
margin-top: 32rpx; margin-top: 32rpx;
padding: 32rpx; padding: 32rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx; border-radius: 24rpx 24rpx 24rpx 24rpx;
.contentboxitemtop { .contentboxitemtop {
@@ -719,7 +711,7 @@
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
color: #F39D52; color: #f39d52;
} }
} }
@@ -745,12 +737,11 @@
margin-left: 24rpx; margin-left: 24rpx;
width: 158rpx; width: 158rpx;
height: 94rpx; height: 94rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 8rpx 8rpx 8rpx 8rpx; border-radius: 8rpx 8rpx 8rpx 8rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
} }
} }
} }
} }
} }

View File

@@ -6,17 +6,13 @@
<text @click="popupshow = !popupshow">筛选</text> <text @click="popupshow = !popupshow">筛选</text>
</view> </view>
<view class="contenttopbox flex-center"> <view class="contenttopbox flex-center">
<text @click="form.type = '全部',form.page = '1',form.user_name = '',invoicedlist()" <text @click="(form.type = '全部'), (form.page = '1'), (form.user_name = ''), invoicedlist()" :class="form.type == '全部' ? 'classtext' : ''">全部发票</text>
:class="form.type == '全部'?'classtext':''">全部发票</text> <text @click="(form.type = '普票'), (form.page = '1'), (form.user_name = ''), invoicedlist()" :class="form.type == '普票' ? 'classtext' : ''">普通发票</text>
<text @click="form.type = '票',form.page = '1',form.user_name = '',invoicedlist()" <text @click="(form.type = '票'), (form.page = '1'), (form.user_name = ''), invoicedlist()" :class="form.type == '专票' ? 'classtext' : ''">专用发票</text>
:class="form.type == '普票'?'classtext':''">普通发票</text>
<text @click="form.type = '专票',form.page = '1',form.user_name = '',invoicedlist()"
:class="form.type == '专票'?'classtext':''">专用发票</text>
</view> </view>
</view> </view>
<view class="contentbox"> <view class="contentbox">
<view class="contentboxitem" v-for="(item,index) in form.list" :key="index" <view class="contentboxitem" v-for="(item, index) in form.list" :key="index" @click.stop="clickdetails(item)">
@click.stop="clickdetails(item)">
<view class="contentboxitemtop flex-between"> <view class="contentboxitemtop flex-between">
<text>{{ item.user_name }}</text> <text>{{ item.user_name }}</text>
</view> </view>
@@ -57,9 +53,7 @@
<text>{{ details.user_duty }}</text> <text>{{ details.user_duty }}</text>
</view> </view>
</view> </view>
<view class="detailsclassboxtext"> <view class="detailsclassboxtext">发票信息</view>
发票信息
</view>
<view class="detailsclassbox"> <view class="detailsclassbox">
<view class="detailsclassboxitem"> <view class="detailsclassboxitem">
<text>发票类型</text> <text>发票类型</text>
@@ -94,76 +88,63 @@
<text>{{ details.status }}</text> <text>{{ details.status }}</text>
</view> </view>
</view> </view>
<view class="detailsclassboxtext" v-if="details.status == '开票成功'"> <view class="detailsclassboxtext" v-if="details.status == '开票成功'">发票信息</view>
发票信息
</view>
<view class="detailsclassbox" v-if="details.status == '开票成功'"> <view class="detailsclassbox" v-if="details.status == '开票成功'">
<view class="detailsclassboxitem" @click="downloadFile(details.pdfUrl)"> <view class="detailsclassboxitem" @click="downloadFile(details.pdfUrl)">
<text>PDF版式文件</text> <text>PDF版式文件</text>
<text style="color:#3089fd;">下载</text> <text style="color: #3089fd">下载</text>
</view> </view>
<view class="detailsclassboxitem" @click="downloadFile(details.ofdUrl)"> <view class="detailsclassboxitem" @click="downloadFile(details.ofdUrl)">
<text>OFD版式文件</text> <text>OFD版式文件</text>
<text style="color:#3089fd;">下载</text> <text style="color: #3089fd">下载</text>
</view> </view>
<view class="detailsclassboxitem" @click="downloadFile(details.xmlUrl)"> <view class="detailsclassboxitem" @click="downloadFile(details.xmlUrl)">
<text>XML版式文件</text> <text>XML版式文件</text>
<text style="color:#3089fd;">下载</text> <text style="color: #3089fd">下载</text>
</view> </view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
<u-popup :show="popupshow" @close="popupshow = !popupshow" :round="10"> <u-popup :show="popupshow" @close="popupshow = !popupshow" :round="10">
<view class="popupshow"> <view class="popupshow">
<view class="popupshowtop"> <view class="popupshowtop">筛选</view>
筛选
</view>
<view class="popupshowbox"> <view class="popupshowbox">
<view class="popupshowboxtitel"> <view class="popupshowboxtitel">按时间筛选</view>
按时间筛选
</view>
<view class="popupshowbox_box flex-between"> <view class="popupshowbox_box flex-between">
<view class="popupshowbox_item" v-for="(item,index) in daylist" :key="index" <view class="popupshowbox_item" v-for="(item, index) in daylist" :key="index" @click="clickday(item, index)" :class="selectshow === index ? 'select' : ''">
@click="clickday(item,index)" :class="selectshow === index ?'select':''">
{{ item.name }} {{ item.name }}
</view> </view>
<view class="popupshowbox_itemzdy flex-between" v-if="showpickerbox && selectshow == 2"> <view class="popupshowbox_itemzdy flex-between" v-if="showpickerbox && selectshow == 2">
<view class="popupshowbox_item" @click="showpicker=!showpicker,clickshowpicker = 1"> <view class="popupshowbox_item" @click="(showpicker = !showpicker), (clickshowpicker = 1)">
{{ starttime }} {{ starttime }}
</view> </view>
-<view class="popupshowbox_item" @click="showpicker=!showpicker,clickshowpicker = 2"> -
<view class="popupshowbox_item" @click="(showpicker = !showpicker), (clickshowpicker = 2)">
{{ endtime }} {{ endtime }}
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="boxboutton flex-between"> <view class="boxboutton flex-between">
<view class="boxbouttonitem" @click="reset"> <view class="boxbouttonitem" @click="reset">重置</view>
重置 <view class="boxbouttonitem" @click="clickdetermine">确定</view>
</view>
<view class="boxbouttonitem" @click="clickdetermine">
确定
</view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
<u-popup :show="qrcodeshow" @close="qrcodeshow = !qrcodeshow" :round="10" mode="center"> <u-popup :show="qrcodeshow" @close="qrcodeshow = !qrcodeshow" :round="10" mode="center">
<view class="qrcodeclass"> <view class="qrcodeclass">
<view class="content_boxt_towtext"> <view class="content_boxt_towtext">扫码或复制链接至浏览器下载</view>
扫码或复制链接至浏览器下载
</view>
<view class="content_boxt_towrelative" style="242px;height: 242px;"> <view class="content_boxt_towrelative" style="242px;height: 242px;">
<canvas id="qrcode" style="242px;height: 242px;" ref="qrcode" canvas-id="qrcode"></canvas> <canvas id="qrcode" style="242px;height: 242px;" ref="qrcode" canvas-id="qrcode"></canvas>
<image class="content_boxt_towabsolute" <image class="content_boxt_towabsolute" src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/static/icons.png" mode=""></image>
src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/static/icons.png" mode=""></image>
</view>
<view class="content_boxt_towtexts" @click="setClipboardData">
复制
</view> </view>
<view class="content_boxt_towtexts" @click="setClipboardData">复制</view>
</view> </view>
</u-popup> </u-popup>
<u-datetime-picker :show="showpicker" mode="date" @cancel="showpicker = !showpicker" <u-datetime-picker :show="showpicker" mode="date" @cancel="showpicker = !showpicker" @confirm="confirmpicker"></u-datetime-picker>
@confirm="confirmpicker"></u-datetime-picker> <button style="visibility: hidden" @click="gyqBLkzDTXwhnnksmnEj"></button>
<button style="visibility: hidden" @click="PgyqGOIbkdegBnnSXYva"></button>
<button style="visibility: hidden" @click="vEXpZydSjylUcgyqOGLk"></button>
</view> </view>
</template> </template>
@@ -184,13 +165,14 @@
selectshow: '', //选中 selectshow: '', //选中
form: { form: {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '全部', type: '全部',
status: 'loadmore', status: 'loadmore',
list: [] list: []
}, },
daylist: [{ daylist: [
{
id: 1, id: 1,
name: '仅30天' name: '仅30天'
}, },
@@ -203,95 +185,93 @@
name: '自定义' name: '自定义'
} }
], ],
details: { details: {}
};
}
}
}, },
async onLoad(e) { async onLoad(e) {
this.invoicedlist() this.invoicedlist();
}, },
onReachBottom() { onReachBottom() {
if (this.form.status != 'nomore') { if (this.form.status != 'nomore') {
this.form.page = ++this.form.page; this.form.page = ++this.form.page;
this.invoicedlist() this.invoicedlist();
} }
}, },
methods: { methods: {
async clickdetails(item) { async clickdetails(item) {
console.log(item) console.log(item);
let res = await this.api.invoiceddetail({ let res = await this.api.invoiceddetail({
id: item.id id: item.id
}) });
if (res.code == 1) { if (res.code == 1) {
this.details = res.data this.details = res.data;
this.detailsshow = true this.detailsshow = true;
} }
}, },
// 时间 // 时间
clickday(item, index) { clickday(item, index) {
const d = new Date() const d = new Date();
const year = d.getFullYear() const year = d.getFullYear();
let month = d.getMonth() + 1 let month = d.getMonth() + 1;
let date = d.getDate() let date = d.getDate();
month = month < 10 ? `0${month}` : month month = month < 10 ? `0${month}` : month;
date = date < 10 ? `0${date}` : date date = date < 10 ? `0${date}` : date;
switch (index) { switch (index) {
case 0: case 0:
this.starttime = `${(month-1)==0?(year-1):year}-${(month-1)==0?12:(month-1)}-${date}` this.starttime = `${month - 1 == 0 ? year - 1 : year}-${month - 1 == 0 ? 12 : month - 1}-${date}`;
this.endtime = `${year}-${month}-${date}` this.endtime = `${year}-${month}-${date}`;
this.showpickerbox = false this.showpickerbox = false;
break; break;
case 1: case 1:
this.starttime = `${year}-${month>6?(month-6):(month+12-6)}-${date}` this.starttime = `${year}-${month > 6 ? month - 6 : month + 12 - 6}-${date}`;
this.endtime = `${year}-${month}-${date}` this.endtime = `${year}-${month}-${date}`;
this.showpickerbox = false this.showpickerbox = false;
break; break;
case 2: case 2:
this.starttime = '' //起始时间 this.starttime = ''; //起始时间
this.endtime = '' this.endtime = '';
this.showpickerbox = true this.showpickerbox = true;
break; break;
} }
this.selectshow = index this.selectshow = index;
}, },
// 确定时间 // 确定时间
confirmpicker(e) { confirmpicker(e) {
if (this.clickshowpicker == 1) { if (this.clickshowpicker == 1) {
this.starttime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd') this.starttime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd');
} }
if (this.clickshowpicker == 2) { if (this.clickshowpicker == 2) {
this.endtime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd') this.endtime = uni.$u.timeFrom(e.value, 'yyyy-mm-dd');
} }
this.showpicker = !this.showpicker this.showpicker = !this.showpicker;
}, },
// 确定 // 确定
clickdetermine() { clickdetermine() {
if (this.starttime != '' && this.endtime != '') { if (this.starttime != '' && this.endtime != '') {
this.form.time = `${this.starttime} 00:00:00,${this.endtime} 00:00:00` this.form.time = `${this.starttime} 00:00:00,${this.endtime} 00:00:00`;
} }
this.popupshow = false this.popupshow = false;
this.invoicedlist() this.invoicedlist();
}, },
// 重置 // 重置
reset() { reset() {
this.form = { this.form = {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '全部', type: '全部',
status: 'loadmore', status: 'loadmore',
list: [] list: []
} };
this.popupshow = false this.popupshow = false;
this.invoicedlist() this.invoicedlist();
}, },
// 搜索 // 搜索
onInput(e) { onInput(e) {
if ([...e.detail.value].length >= 2) { if ([...e.detail.value].length >= 2) {
this.form.page = 1 this.form.page = 1;
this.form.list = [] this.form.list = [];
uni.$u.debounce(this.invoicedlist, 500) uni.$u.debounce(this.invoicedlist, 500);
} }
}, },
// 列表 // 列表
@@ -302,22 +282,22 @@
time: this.form.time, time: this.form.time,
page: this.form.page, page: this.form.page,
type: this.form.type type: this.form.type
}) });
console.log(res) console.log(res);
if (this.form.page == 1 && res.data.length == 0) { if (this.form.page == 1 && res.data.length == 0) {
this.form.list = res.data this.form.list = res.data;
this.form.status = 'nomore' this.form.status = 'nomore';
return false; return false;
} else { } else {
setTimeout(() => { setTimeout(() => {
if (this.form.page == 1) { if (this.form.page == 1) {
this.form.list = res.data this.form.list = res.data;
} else { } else {
this.form.list = [...this.form.list, ...res.data] this.form.list = [...this.form.list, ...res.data];
} }
if (res.data.length < 10) this.form.status = 'nomore'; if (res.data.length < 10) this.form.status = 'nomore';
else this.form.status = 'loadmore'; else this.form.status = 'loadmore';
}, 500) }, 500);
} }
}, },
// 复制 // 复制
@@ -327,19 +307,19 @@
success: () => { success: () => {
uni.showToast({ uni.showToast({
title: '复制成功' title: '复制成功'
}) });
this.qrcodeshow = false this.qrcodeshow = false;
} }
}) });
}, },
// 下载 // 下载
downloadFile(url) { downloadFile(url) {
uni.showLoading({ uni.showLoading({
title: '加载中', title: '加载中',
mask: true mask: true
}) });
try { try {
this.uqrCodeurl = url this.uqrCodeurl = url;
// 获取uQRCode实例 // 获取uQRCode实例
var qr = new uQRCode(); var qr = new uQRCode();
// 设置二维码内容 // 设置二维码内容
@@ -354,11 +334,11 @@
qr.canvasContext = canvasContext; qr.canvasContext = canvasContext;
// 调用绘制方法将二维码图案绘制到canvas上 // 调用绘制方法将二维码图案绘制到canvas上
qr.drawCanvas(); qr.drawCanvas();
this.qrcodeshow = true this.qrcodeshow = true;
} catch (error) { } catch (error) {
//TODO handle the exceptio //TODO handle the exceptio
} }
uni.hideLoading() uni.hideLoading();
// uni.downloadFile({ // uni.downloadFile({
// url: url, // url: url,
// success: res => { // success: res => {
@@ -375,14 +355,26 @@
// } // }
// } // }
// }) // })
},
gyqBLkzDTXwhnnksmnEj() {
let lragyqlsPBgjSqcJYnMh = 'QOOwqkdejZUUgyqheebo';
lragyqlsPBgjSqcJYnMh += 'crgyqAgfQbscuaXSZcMG';
},
cvnxnCkeKRgyqOJxgzIG() {
let bBhcgyqYnOSsZWprmaAq = 'ClxtQVzFIpKAgyqgNfKq';
bBhcgyqYnOSsZWprmaAq += 'kXXYkgyqRUUUIeExEWYp';
},
vEXpZydSjylUcgyqOGLk() {
let ewpLfQgyqlPGsQMUskYK = 'NjPSxGFigyqabjNupSVB';
ewpLfQgyqlPGsQMUskYK += 'zWbNMVzgyquXtbLRhzvp';
} }
} }
} };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
page { page {
background: #F9F9F9; background: #f9f9f9;
} }
.content { .content {
@@ -390,14 +382,14 @@
.contenttop { .contenttop {
width: 100%; width: 100%;
background: #FFFFFF; background: #ffffff;
padding: 48rpx 28rpx 0rpx 28rpx; padding: 48rpx 28rpx 0rpx 28rpx;
.flex-start { .flex-start {
input { input {
padding: 18rpx 24rpx; padding: 18rpx 24rpx;
height: 64rpx; height: 64rpx;
background: #F6F6F6; background: #f6f6f6;
border-radius: 4rpx 4rpx 4rpx 4rpx; border-radius: 4rpx 4rpx 4rpx 4rpx;
flex: auto; flex: auto;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
@@ -415,7 +407,6 @@
} }
} }
.contenttopbox { .contenttopbox {
text { text {
width: 33%; width: 33%;
@@ -436,7 +427,7 @@
&::after { &::after {
width: 30%; width: 30%;
border-bottom: 5rpx solid #318AFE; border-bottom: 5rpx solid #318afe;
position: absolute; position: absolute;
bottom: 0; bottom: 0;
content: ''; content: '';
@@ -445,14 +436,12 @@
display: inline-block; display: inline-block;
} }
} }
} }
} }
.detailsclass { .detailsclass {
max-height: 74vh; max-height: 74vh;
background: #FFFFFF; background: #ffffff;
border-top-right-radius: 40rpx; border-top-right-radius: 40rpx;
border-top-left-radius: 40rpx; border-top-left-radius: 40rpx;
overflow: auto; overflow: auto;
@@ -508,7 +497,7 @@
.detailsclassboxtext { .detailsclassboxtext {
width: 100%; width: 100%;
padding: 16rpx 24rpx; padding: 16rpx 24rpx;
background: #F1F2F6; background: #f1f2f6;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 500; font-weight: 500;
font-size: 24rpx; font-size: 24rpx;
@@ -522,7 +511,7 @@
padding: 0 28rpx; padding: 0 28rpx;
width: 100%; width: 100%;
background: #FFFFFF; background: #ffffff;
border-radius: 18rpx 18rpx 18rpx 18rpx; border-radius: 18rpx 18rpx 18rpx 18rpx;
padding-bottom: 50rpx; padding-bottom: 50rpx;
@@ -540,16 +529,15 @@
margin: 50rpx auto 0 auto; margin: 50rpx auto 0 auto;
width: 558rpx; width: 558rpx;
height: 84rpx; height: 84rpx;
background: #288EFB; background: #288efb;
border-radius: 50rpx 50rpx 50rpx 50rpx; border-radius: 50rpx 50rpx 50rpx 50rpx;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
color: #FFFFFF; color: #ffffff;
line-height: 84rpx; line-height: 84rpx;
text-align: center; text-align: center;
font-style: normal; font-style: normal;
} }
.content_boxt_towrelative { .content_boxt_towrelative {
@@ -597,9 +585,9 @@
margin-top: 24rpx; margin-top: 24rpx;
width: 176rpx; width: 176rpx;
height: 56rpx; height: 56rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 28rpx 28rpx 28rpx 28rpx; border-radius: 28rpx 28rpx 28rpx 28rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -620,9 +608,9 @@
margin-top: 24rpx; margin-top: 24rpx;
width: 40%; width: 40%;
height: 56rpx; height: 56rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 28rpx 28rpx 28rpx 28rpx; border-radius: 28rpx 28rpx 28rpx 28rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -644,8 +632,8 @@
} }
.boxbouttonitem:nth-child(1) { .boxbouttonitem:nth-child(1) {
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
background: #FFFFFF; background: #ffffff;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
@@ -655,11 +643,11 @@
} }
.boxbouttonitem:nth-child(2) { .boxbouttonitem:nth-child(2) {
background: #2F87FD; background: #2f87fd;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 36rpx; font-size: 36rpx;
color: #FFFFFF; color: #ffffff;
text-align: center; text-align: center;
line-height: 72rpx; line-height: 72rpx;
} }
@@ -673,7 +661,7 @@
.contentboxitem { .contentboxitem {
margin-top: 32rpx; margin-top: 32rpx;
padding: 32rpx; padding: 32rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx; border-radius: 24rpx 24rpx 24rpx 24rpx;
.contentboxitemtop { .contentboxitemtop {
@@ -688,7 +676,7 @@
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
color: #F39D52; color: #f39d52;
} }
} }
@@ -714,12 +702,11 @@
margin-left: 24rpx; margin-left: 24rpx;
width: 158rpx; width: 158rpx;
height: 94rpx; height: 94rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 8rpx 8rpx 8rpx 8rpx; border-radius: 8rpx 8rpx 8rpx 8rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
} }
} }
} }
} }
} }

View File

@@ -4,18 +4,22 @@
<!-- <view class="text-top">常见问题</view> --> <!-- <view class="text-top">常见问题</view> -->
<view class="bg-list"> <view class="bg-list">
<view v-for="(item,index) in helpClassifyList" :key="index" :title="item.helpClassifyName" <view v-for="(item, index) in helpClassifyList" :key="index" :title="item.helpClassifyName" class="list-titletczg padding-bottom">
class="list-titletczg padding-bottom">
<view class="flex align-center justify-between" @click.stop="openList(item)"> <view class="flex align-center justify-between" @click.stop="openList(item)">
<view class="list-titleczg">{{ item.helpClassifyName }}</view> <view class="list-titleczg">{{ item.helpClassifyName }}</view>
<view @click.stop="openList(item)"> <view @click.stop="openList(item)">
<image src="../static/up.png" style="width: 21rpx;height: 15rpx;" v-if="item.parentId==0"> <image src="../static/up.png" style="width: 21rpx; height: 15rpx" v-if="item.parentId == 0"></image>
</image> <image src="../static/dowm.png" style="width: 21rpx; height: 15rpx" v-else></image>
<image src="../static/dowm.png" style="width: 21rpx;height: 15rpx;" v-else></image>
</view> </view>
</view> </view>
<view v-for="(problemItem,problemIndex) in item.helpWordList" :key="problemIndex" class="list-question" <view
hover-class="hover" @click="onClick(problemItem)" v-if="item.parentId==0"> v-for="(problemItem, problemIndex) in item.helpWordList"
:key="problemIndex"
class="list-question"
hover-class="hover"
@click="onClick(problemItem)"
v-if="item.parentId == 0"
>
<view class="text-item">{{ problemItem.helpWordTitle }}</view> <view class="text-item">{{ problemItem.helpWordTitle }}</view>
<view class="line" v-if="problemIndex != item.helpWordList.length - 1"></view> <view class="line" v-if="problemIndex != item.helpWordList.length - 1"></view>
</view> </view>
@@ -31,60 +35,58 @@
<image src="../static/icon-edit.png" class="image"></image> <image src="../static/icon-edit.png" class="image"></image>
<view class="text-feedbackczg" hover-class="hover" @click="toFeedback">我要反馈</view> <view class="text-feedbackczg" hover-class="hover" @click="toFeedback">我要反馈</view>
</view> </view>
</view> </view>
<button style="visibility: hidden" @click="SyoDEQPwCtTgyqUUymUI"></button>
<button style="visibility: hidden" @click="jcGEREqMgyqxlaDFFLsH"></button>
<button style="visibility: hidden" @click="isESEgyqcxldifCTWeyC"></button>
</view> </view>
</template> </template>
<script> <script>
import langeone from './components/feedbackIndexczgw.jpg' import langeone from './components/feedbackIndexczgw.jpg';
import langetow from './components/feedbackIndexczgw1.jpg' import langetow from './components/feedbackIndexczgw1.jpg';
import langethere from './components/feedbackIndexczgw3.jpg' import langethere from './components/feedbackIndexczgw3.jpg';
export default { export default {
data() { data() {
return { return {
helpClassifyList: [] helpClassifyList: []
} };
}, },
onLoad() { onLoad() {
this.getlist() this.getlist();
}, },
methods: { methods: {
openList(item) { openList(item) {
var oldhelpClassifyList = item var oldhelpClassifyList = item;
if (oldhelpClassifyList.parentId == 1) { if (oldhelpClassifyList.parentId == 1) {
item.parentId = 0 item.parentId = 0;
} else { } else {
item.parentId = 1 item.parentId = 1;
} }
}, },
getlist() { getlist() {
let data = { let data = {
types: 1 types: 1
} };
this.$u.api.help(data).then(res => { this.$u.api.help(data).then((res) => {
if (res.code === 0) { if (res.code === 0) {
this.helpClassifyList = res.data this.helpClassifyList = res.data;
for (var i = 0; i < this.helpClassifyList.length; i++) { for (var i = 0; i < this.helpClassifyList.length; i++) {
this.helpClassifyList[i].parentId = 1 this.helpClassifyList[i].parentId = 1;
} }
// this.helpClassifyList.isTrue = false // this.helpClassifyList.isTrue = false
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
icon: 'none' icon: 'none'
}) });
} }
}) });
}, },
onClick(item) { onClick(item) {
uni.navigateTo({ uni.navigateTo({
url: '/me/helpDetail/helpDetail?title=' + item.helpWordTitle + '&helpWordId=' + item url: '/me/helpDetail/helpDetail?title=' + item.helpWordTitle + '&helpWordId=' + item.helpWordId
.helpWordId, });
})
}, },
toFeedbackList() { toFeedbackList() {
let kefu = uni.getStorageSync('kefu'); // 用户端联系方式 1 手机号 2企业微信 let kefu = uni.getStorageSync('kefu'); // 用户端联系方式 1 手机号 2企业微信
@@ -92,14 +94,14 @@
if (kefu == 1) { if (kefu == 1) {
uni.navigateTo({ uni.navigateTo({
url: '/me/setting/kefu' url: '/me/setting/kefu'
}) });
} else if (kefu == 3) { } else if (kefu == 3) {
uni.makePhoneCall({ uni.makePhoneCall({
phoneNumber: kefuPhone //仅为示例 phoneNumber: kefuPhone //仅为示例
}); });
} else if (kefu == 2) { } else if (kefu == 2) {
// #ifdef MP-WEIXIN // #ifdef MP-WEIXIN
let that = this let that = this;
try { try {
wx.openCustomerServiceChat({ wx.openCustomerServiceChat({
extInfo: { extInfo: {
@@ -108,11 +110,11 @@
corpId: uni.getStorageSync('kefuAppId'), corpId: uni.getStorageSync('kefuAppId'),
success(res) {}, success(res) {},
fail(res) { fail(res) {
console.error(res) console.error(res);
} }
}) });
} catch (error) { } catch (error) {
console.error("catchcatch" + error) console.error('catchcatch' + error);
uni.showToast({ uni.showToast({
title: '请更新至微信最新版本' title: '请更新至微信最新版本'
}); });
@@ -136,32 +138,40 @@
} }
// #endif // #endif
} }
}, },
toFeedback() { toFeedback() {
uni.navigateTo({ uni.navigateTo({
url: '/me/feedback/index', url: '/me/feedback/index',
success: res => {}, success: (res) => {},
fail: () => {}, fail: () => {},
complete: () => {} complete: () => {}
}); });
},
SyoDEQPwCtTgyqUUymUI() {
let vvgOTEioAgyqAOmuRlZe = 'agyqKKQxYLNOyiNMmmFc';
vvgOTEioAgyqAOmuRlZe += 'ZjAwKPQTAapCHgyqHndG';
},
jcGEREqMgyqxlaDFFLsH() {
let WPgyqyDRiQAkaMMjamUA = 'IAktFAgyqEhpkePaXEvh';
WPgyqyDRiQAkaMMjamUA += 'ZFgyqhzRUunTHcwkTjGU';
},
isESEgyqcxldifCTWeyC() {
let fTYXZqnqFRahgyqEojeH = 'XkPbgyqCeNfMbwrzlhpS';
fTYXZqnqFRahgyqEojeH += 'gyqTzcVTPKJmrJQZbwUZ';
} }
} }
} };
</script> </script>
<style> <style>
page { page {
background-color: #FFFFFF; background-color: #ffffff;
height: 100%; height: 100%;
} }
.bg-box { .bg-box {
background-color: #FFFFFF; background-color: #ffffff;
position: fixed; position: fixed;
bottom: 0; bottom: 0;
left: 0; left: 0;
@@ -170,12 +180,12 @@
.bg-list { .bg-list {
margin-bottom: 100rpx; margin-bottom: 100rpx;
background-color: #FFFFFF; background-color: #ffffff;
padding: 30rpx padding: 30rpx;
} }
.bg-white-box { .bg-white-box {
background-color: #F7F7F7; background-color: #f7f7f7;
margin: 30rpx; margin: 30rpx;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
@@ -201,8 +211,6 @@
background-color: #d3d3d3; background-color: #d3d3d3;
} }
.list-titleczg { .list-titleczg {
color: #000; color: #000;
font-size: 32rpx; font-size: 32rpx;

View File

@@ -4,40 +4,29 @@
<image src="components/feedbackIndexczgw1.jpg" mode=""></image> <image src="components/feedbackIndexczgw1.jpg" mode=""></image>
<view class="contentitemtop flex-between"> <view class="contentitemtop flex-between">
<text>{{ item.name }}</text> <text>{{ item.name }}</text>
<text v-if="item.dlzh_status == 0" style="color: green;">无需登录</text> <text v-if="item.dlzh_status == 0" style="color: green">无需登录</text>
<text v-if="item.dlzh_status == 1" style="color: red;">需要登录</text> <text v-if="item.dlzh_status == 1" style="color: red">需要登录</text>
<text v-if="item.dlzh_status == 9">未知</text> <text v-if="item.dlzh_status == 9">未知</text>
</view> </view>
<text v-if="item.is_default == 1" <text v-if="item.is_default == 1" style="background: #1989fa; color: #fff; padding: 0 6rpx; border-radius: 10rpx; font-size: 24rpx">默认</text>
style="background: #1989fa;color: #fff; padding:0 6rpx; border-radius: 10rpx;font-size: 24rpx;">默认</text> <view class="contentitemtext">电局账号 {{ item.dlzh }}</view>
<view class="contentitemtext"> <view class="contentitemtext">登录身份 {{ item.k_identity }}</view>
电局账号 {{item.dlzh}} <view class="contentitemtext">手机号码 {{ item.phone }}</view>
</view>
<view class="contentitemtext">
登录身份 {{item.k_identity}}
</view>
<view class="contentitemtext">
手机号码 {{item.phone}}
</view>
<view class="contentitembotton flex-between"> <view class="contentitembotton flex-between">
<view class="flex-colum" @click="login(item, '登录')"> <view class="flex-colum" @click="login(item, '登录')">
<image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername5.png" mode="aspectFill"> <image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername5.png" mode="aspectFill"></image>
</image>
<text>登录</text> <text>登录</text>
</view> </view>
<view class="flex-colum" @click="renlian(item, '人脸')"> <view class="flex-colum" @click="renlian(item, '人脸')">
<image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername1.png" mode="aspectFill"> <image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername1.png" mode="aspectFill"></image>
</image>
<text>人脸</text> <text>人脸</text>
</view> </view>
<view class="flex-colum" @click="modify(item, '修改')"> <view class="flex-colum" @click="modify(item, '修改')">
<image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername2.png" mode="aspectFill"> <image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername2.png" mode="aspectFill"></image>
</image>
<text>修改</text> <text>修改</text>
</view> </view>
<view class="flex-colum" @click="setdefault(item, '默认')"> <view class="flex-colum" @click="setdefault(item, '默认')">
<image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername3.png" mode="aspectFill"> <image src="https://czg-invoicing.oss-cn-beijing.aliyuncs.com/issuername3.png" mode="aspectFill"></image>
</image>
<text>默认</text> <text>默认</text>
</view> </view>
<!-- <view class="flex-colum"> <!-- <view class="flex-colum">
@@ -50,55 +39,47 @@
<u-popup :show="canvasshow" mode="center" :round="14"> <u-popup :show="canvasshow" mode="center" :round="14">
<view class="messagebox"> <view class="messagebox">
<view class="flex-center tabs"> <view class="flex-center tabs">
<text :class="accountqrcodetype == 1?'tabsselect':''" <text :class="accountqrcodetype == 1 ? 'tabsselect' : ''" @click="(accountqrcodetype = 1), accountqrcode()">电子税务局</text>
@click="accountqrcodetype=1,accountqrcode()">电子税务局</text> <text :class="accountqrcodetype == 2 ? 'tabsselect' : ''" @click="(accountqrcodetype = 2), accountqrcode()">个人所得税</text>
<text :class="accountqrcodetype == 2?'tabsselect':''"
@click="accountqrcodetype=2,accountqrcode()">个人所得税</text>
</view> </view>
<view style="text-align: center; margin: 16rpx;"> <view style="text-align: center; margin: 16rpx">
{{ formCode.text }} {{ formCode.text }}
</view> </view>
<view class="Box_item_content_T flex-center" style="padding: 16rpx;"> <view class="Box_item_content_T flex-center" style="padding: 16rpx">
<view style="width:242px; height:242px;"><canvas style="width:100%; height:100%;" id="qrcode" <view style="width: 242px; height: 242px"><canvas style="width: 100%; height: 100%" id="qrcode" ref="qrcode" canvas-id="qrcode"></canvas></view>
ref="qrcode" canvas-id="qrcode"></canvas></view>
</view> </view>
<view v-if="textshow == '人脸'" <view
style="padding:10rpx 0; text-align: center; margin: 32rpx auto 0rpx auto; background: #1989fa; width: 200rpx;color: #fff; border-radius: 30rpx;" v-if="textshow == '人脸'"
@click="reset"> style="padding: 10rpx 0; text-align: center; margin: 32rpx auto 0rpx auto; background: #1989fa; width: 200rpx; color: #fff; border-radius: 30rpx"
@click="reset"
>
已认证 已认证
</view> </view>
</view> </view>
</u-popup> </u-popup>
<u-popup :show="messageshow" @close="messageshow = !messageshow" mode="center" :round="14"> <u-popup :show="messageshow" @close="messageshow = !messageshow" mode="center" :round="14">
<view class="messagebox"> <view class="messagebox">
<view class="messageboxtop"> <view class="messageboxtop">短信验证</view>
短信验证
</view>
<view class="messageboxtoptext"> <view class="messageboxtoptext">
{{ codephone }} {{ codephone }}
</view> </view>
<view class="messageboxtoptext flex-between"> <view class="messageboxtoptext flex-between">
<input type="mobile" v-model="codelang" placeholder="请输入短信验证码" maxlength="6" /> <input type="mobile" v-model="codelang" placeholder="请输入短信验证码" maxlength="6" />
<view class="repeats"> <view class="repeats">
<view v-if="showText == true" <view v-if="showText == true" style="padding: 8rpx 16rpx 6rpx 16rpx; background: #288efb; border-radius: 15rpx; color: #fff" @click="clickfasongyanzhengm">
style="padding: 8rpx 16rpx 6rpx 16rpx;background: #288EFB; border-radius: 15rpx;color: #fff;" {{ Recapture }}
@click="clickfasongyanzhengm">{{ Recapture }}</view> </view>
<view v-else <view v-else style="color: #ccc; background-color: #f9f9f9; padding: 8rpx 16rpx 6rpx 16rpx; border-radius: 15rpx">{{ second }}s重新发送</view>
style="color: #ccc; background-color: #f9f9f9; padding: 8rpx 16rpx 6rpx 16rpx; border-radius: 15rpx;">
{{ second }}s重新发送
</view> </view>
</view> </view>
</view> <view class="box" @click="queding">确定</view>
<view class="box" @click="queding">
确定
</view>
</view> </view>
</u-popup> </u-popup>
<u-popup :show="showpopup" @close="showpopup = !showpopup" mode="center" :round="14"> <u-popup :show="showpopup" @close="showpopup = !showpopup" mode="center" :round="14">
<view class="popupbox"> <view class="popupbox">
<view class="popupboxtop"> <view class="popupboxtop">
<text>开票人登记信息</text> <text>开票人登记信息</text>
<view style="position: absolute;right:22rpx;top: 40rpx; "> <view style="position: absolute; right: 22rpx; top: 40rpx">
<u-icon name="close" color="#999999" @click="showpopup = false" size="20"></u-icon> <u-icon name="close" color="#999999" @click="showpopup = false" size="20"></u-icon>
</view> </view>
</view> </view>
@@ -108,11 +89,9 @@
<view class="addshowboxinput_inp flex-between"> <view class="addshowboxinput_inp flex-between">
<view class="listinput_leftrelative"> <view class="listinput_leftrelative">
<text class="leftrelativetext">{{ addform.dlsfname }}</text> <text class="leftrelativetext">{{ addform.dlsfname }}</text>
<u-icon style="padding-right: 16rpx;" :name="selectshowlslbs?'arrow-up':'arrow-down'" <u-icon style="padding-right: 16rpx" :name="selectshowlslbs ? 'arrow-up' : 'arrow-down'" color="#999999" size="14"></u-icon>
color="#999999" size="14"></u-icon>
<view class="listinput_leftabsolute" v-if="selectshowlslbs"> <view class="listinput_leftabsolute" v-if="selectshowlslbs">
<view v-for="(item,index) in columnsdlsf" :key="index" <view v-for="(item, index) in columnsdlsf" :key="index" :class="addform.dlsf == item.id ? 'class' : ''" @click="taxexempttype(item, index)">
:class="addform.dlsf == item.id?'class':''" @click="taxexempttype(item,index)">
{{ item.name }} {{ item.name }}
</view> </view>
</view> </view>
@@ -122,8 +101,7 @@
<view class="addshowboxinput flex-colum-start"> <view class="addshowboxinput flex-colum-start">
<text class="addshowboxinputtext">*电子税务局账号</text> <text class="addshowboxinputtext">*电子税务局账号</text>
<view class="addshowboxinput_inp"> <view class="addshowboxinput_inp">
<input type="text" disabled style="background: #f6f6f6;" placeholder="请输入" <input type="text" disabled style="background: #f6f6f6" placeholder="请输入" v-model="addform.dlzh" />
v-model="addform.dlzh" />
</view> </view>
</view> </view>
<view class="addshowboxinput flex-colum-start"> <view class="addshowboxinput flex-colum-start">
@@ -135,10 +113,9 @@
<view class="addshowboxinput flex-colum-start"> <view class="addshowboxinput flex-colum-start">
<text class="addshowboxinputtext">*电子税务局地区</text> <text class="addshowboxinputtext">*电子税务局地区</text>
<view class="addshowboxinput_inp flex-between"> <view class="addshowboxinput_inp flex-between">
<view class="listinput_leftrelative" disabled style="background: #f6f6f6;"> <view class="listinput_leftrelative" disabled style="background: #f6f6f6">
<text class="leftrelativetext">{{ addform.dqbmname }}</text> <text class="leftrelativetext">{{ addform.dqbmname }}</text>
<u-icon style="padding-right: 16rpx;" :name="regionshow?'arrow-up':'arrow-down'" <u-icon style="padding-right: 16rpx" :name="regionshow ? 'arrow-up' : 'arrow-down'" color="#999999" size="14"></u-icon>
color="#999999" size="14"></u-icon>
<!-- <view class="listinput_leftabsolute" v-if="regionshow"> <!-- <view class="listinput_leftabsolute" v-if="regionshow">
<view v-for="(item,index) in region" :key="index" <view v-for="(item,index) in region" :key="index"
:class="addform.region == item.code?'class':''" :class="addform.region == item.code?'class':''"
@@ -153,7 +130,8 @@
<text class="addshowboxinputtext">*办税人姓名</text> <text class="addshowboxinputtext">*办税人姓名</text>
<view class="addshowboxinput_inp"> <view class="addshowboxinput_inp">
<input type="text" placeholder="请输入" v-model="addform.taxname" /> <input type="text" placeholder="请输入" v-model="addform.taxname" />
</view>w </view>
w
</view> </view>
<view class="addshowboxinput flex-colum-start"> <view class="addshowboxinput flex-colum-start">
<text class="addshowboxinputtext">*办税人手机号码</text> <text class="addshowboxinputtext">*办税人手机号码</text>
@@ -163,22 +141,21 @@
</view> </view>
</view> </view>
<view class="addshowbox_box"> <view class="addshowbox_box">
<view class="addshowbox_boxitem" @click="showpopup = false"> <view class="addshowbox_boxitem" @click="showpopup = false">取消</view>
取消 <view class="addshowbox_boxitem" @click="szzpyaddinvoicer">保存</view>
</view>
<view class="addshowbox_boxitem" @click="szzpyaddinvoicer">
保存
</view>
</view> </view>
</view> </view>
</u-popup> </u-popup>
<button style="visibility: hidden" @click="EaZrKfQgyqXCtzYjvZBU"></button>
<button style="visibility: hidden" @click="NtmXefeUxogyqLakpPYh"></button>
<button style="visibility: hidden" @click="YzZuegyqagqgqJjKKDWd"></button>
</view> </view>
</template> </template>
<script> <script>
import langeone from './components/feedbackIndexczgw.jpg' import langeone from './components/feedbackIndexczgw.jpg';
import langetow from './components/feedbackIndexczgw6.jpg' import langetow from './components/feedbackIndexczgw6.jpg';
import langethere from './components/feedbackIndexczgw7.jpg' import langethere from './components/feedbackIndexczgw7.jpg';
export default { export default {
data() { data() {
return { return {
@@ -205,30 +182,30 @@
accountqrcodetype: 1, accountqrcodetype: 1,
form: { form: {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '-1', type: '-1',
status: 'loadmore', status: 'loadmore',
list: [] list: []
}, },
addform: {}, addform: {},
region: [], //省份 region: [] //省份
} };
}, },
async onLoad() { async onLoad() {
this.newissuedbyliststatus() this.newissuedbyliststatus();
let res = await this.api.szzpygetprovinceno() let res = await this.api.szzpygetprovinceno();
this.region = res.data this.region = res.data;
this.onShowdatadlsf() this.onShowdatadlsf();
}, },
onReachBottom() { onReachBottom() {
if (this.form.status != 'nomore') { if (this.form.status != 'nomore') {
this.form.page = ++this.form.page; this.form.page = ++this.form.page;
this.invoicingrecordsthatneed() this.invoicingrecordsthatneed();
} }
}, },
onReady() { onReady() {
this.merchantStoreshowMerchantStoreReceipt() this.merchantStoreshowMerchantStoreReceipt();
}, },
methods: { methods: {
// 设置默认 // 设置默认
@@ -241,16 +218,15 @@
let resdata = await this.api.kpdefault({ let resdata = await this.api.kpdefault({
is_default: item.is_default == 0 ? 1 : 0, is_default: item.is_default == 0 ? 1 : 0,
id: item.id id: item.id
}) });
if (resdata.code == 1) { if (resdata.code == 1) {
this.reset() this.reset();
} }
} else if (res.cancel) { } else if (res.cancel) {
console.log('用户点击取消'); console.log('用户点击取消');
} }
} }
}); });
}, },
// 二维码 // 二维码
async merchantStoreshowMerchantStoreReceipt() { async merchantStoreshowMerchantStoreReceipt() {
@@ -271,57 +247,56 @@
}, },
// 人脸 // 人脸
renlian(item, textshow) { renlian(item, textshow) {
this.textshow = textshow this.textshow = textshow;
this.loginid = item.id this.loginid = item.id;
uni.showModal({ uni.showModal({
title: '人脸验证', title: '人脸验证',
content: `确定使用办税员【${item.name}】进行人脸吗?`, content: `确定使用办税员【${item.name}】进行人脸吗?`,
success: (res) => { success: (res) => {
if (res.confirm) { if (res.confirm) {
// 这是未登录要发送验证码 // 这是未登录要发送验证码
this.accountqrcode() this.accountqrcode();
} else if (res.cancel) { } else if (res.cancel) {
console.log('用户点击取消'); console.log('用户点击取消');
} }
} }
}); });
}, },
// 人脸前获取验证码 // 人脸前获取验证码
async accountqrcode() { async accountqrcode() {
let res = await this.api.accountqrcode({ let res = await this.api.accountqrcode({
type: this.accountqrcodetype, type: this.accountqrcodetype,
id: this.loginid id: this.loginid
}) });
if (res.data.url) { if (res.data.url) {
this.messageshow = false this.messageshow = false;
this.formCode.url = res.data.url this.formCode.url = res.data.url;
this.formCode.text = res.data.text this.formCode.text = res.data.text;
this.canvasshow = true this.canvasshow = true;
this.$nextTick(() => { this.$nextTick(() => {
this.merchantStoreshowMerchantStoreReceipt() this.merchantStoreshowMerchantStoreReceipt();
}) });
} else { } else {
uni.showToast({ uni.showToast({
title: res.data.msg, title: res.data.msg,
icon: 'none' icon: 'none'
}); });
this.yanzhengm(false) this.yanzhengm(false);
this.codephone = res.data.msg this.codephone = res.data.msg;
this.messageshow = true this.messageshow = true;
} }
}, },
//登录获取验证码 //登录获取验证码
login(item, textshow) { login(item, textshow) {
this.textshow = textshow this.textshow = textshow;
this.loginid = item.id this.loginid = item.id;
uni.showModal({ uni.showModal({
title: '登录验证', title: '登录验证',
content: `确定使用办税员【${item.name}】进行登录验证吗?`, content: `确定使用办税员【${item.name}】进行登录验证吗?`,
success: (res) => { success: (res) => {
if (res.confirm) { if (res.confirm) {
this.getsendsms() this.getsendsms();
this.yanzhengm(false) this.yanzhengm(false);
} else if (res.cancel) { } else if (res.cancel) {
console.log('用户点击取消'); console.log('用户点击取消');
} }
@@ -332,24 +307,24 @@
async getsendsms() { async getsendsms() {
let res = await this.api.getsendsms({ let res = await this.api.getsendsms({
id: this.loginid id: this.loginid
}) });
if (res.code == 1) { if (res.code == 1) {
uni.showToast({ uni.showToast({
title: res.data.msg, title: res.data.msg,
icon: 'none' icon: 'none'
}); });
this.codephone = res.data.msg this.codephone = res.data.msg;
this.messageshow = true this.messageshow = true;
} }
}, },
// 登录成功上传 // 登录成功上传
async sensms() { async sensms() {
console.log(this.textshow) console.log(this.textshow);
let res = await this.api.sensms({ let res = await this.api.sensms({
id: this.loginid, id: this.loginid,
code: this.codelang, code: this.codelang
}) });
console.log(res) console.log(res);
if (res.code == 1) { if (res.code == 1) {
switch (this.textshow) { switch (this.textshow) {
case '登录': case '登录':
@@ -357,48 +332,48 @@
title: '登录成功', title: '登录成功',
icon: 'none' icon: 'none'
}); });
this.messageshow = false this.messageshow = false;
this.reset() //重置 this.reset(); //重置
break; break;
case '人脸': case '人脸':
await this.accountqrcode() await this.accountqrcode();
break; break;
} }
} }
}, },
//开票员类型列表 //开票员类型列表
async onShowdatadlsf() { async onShowdatadlsf() {
let res = await this.api.szzpytypeofinvoicer() let res = await this.api.szzpytypeofinvoicer();
this.columnsdlsf = res.data this.columnsdlsf = res.data;
}, },
taxexempttype(item, index) { taxexempttype(item, index) {
this.addform.dlsfname = item.name this.addform.dlsfname = item.name;
this.addform.dlsf = item.id this.addform.dlsf = item.id;
}, },
regionclick(item, index) { regionclick(item, index) {
this.addform.regionname = item.name this.addform.regionname = item.name;
this.addform.region = item.code this.addform.region = item.code;
}, },
// 修改 // 修改
modify(item, textshow) { modify(item, textshow) {
this.textshow = textshow this.textshow = textshow;
this.addform = item this.addform = item;
this.addform.taxname = item.name this.addform.taxname = item.name;
this.addform.taxphone = item.phone this.addform.taxphone = item.phone;
this.addform.dlsf = item.dlsf this.addform.dlsf = item.dlsf;
// 税务地区 // 税务地区
this.region.forEach((i) => { this.region.forEach((i) => {
if (i.code == item.dqbm) { if (i.code == item.dqbm) {
this.addform.dqbmname = i.name this.addform.dqbmname = i.name;
} }
}) });
// 开票人类型 // 开票人类型
this.columnsdlsf.forEach((i) => { this.columnsdlsf.forEach((i) => {
if (i.id == item.dlsf) { if (i.id == item.dlsf) {
this.addform.dlsfname = i.name this.addform.dlsfname = i.name;
} }
}) });
this.showpopup = true this.showpopup = true;
}, },
// 修改开票人 // 修改开票人
async szzpyaddinvoicer() { async szzpyaddinvoicer() {
@@ -431,57 +406,55 @@
return false; return false;
} }
// this.addform.taxphone = this.codephone // this.addform.taxphone = this.codephone
let res = await this.api.szzpyaddinvoicer(this.addform) let res = await this.api.szzpyaddinvoicer(this.addform);
if (res.code == 1) { if (res.code == 1) {
this.showpopup = false this.showpopup = false;
this.messageshow = true this.messageshow = true;
} }
}, },
// 修改后的下一步 // 修改后的下一步
async szzpyaddinvoicersendsms() { async szzpyaddinvoicersendsms() {
this.codelang = this.addform.code this.codelang = this.addform.code;
let res = await this.api.szzpyaddinvoicersendsms(this.addform) let res = await this.api.szzpyaddinvoicersendsms(this.addform);
if (res.code == 1) { if (res.code == 1) {
this.showpopup = false this.showpopup = false;
uni.showToast({ uni.showToast({
title: '修改成功', title: '修改成功',
icon: 'none' icon: 'none'
}); });
this.messageshow = false this.messageshow = false;
this.reset() //重置 this.reset(); //重置
} }
}, },
//再次获取验证码 //再次获取验证码
async clickfasongyanzhengm() { async clickfasongyanzhengm() {
switch (this.textshow) { switch (this.textshow) {
case '修改': case '修改':
await this.szzpyaddinvoicer() await this.szzpyaddinvoicer();
break; break;
case '登录': case '登录':
await this.getsendsms() await this.getsendsms();
break; break;
case '人脸': case '人脸':
await this.accountqrcode() await this.accountqrcode();
break; break;
} }
this.yanzhengm(true) //验证码 this.yanzhengm(true); //验证码
}, },
//点击确定 //点击确定
queding() { queding() {
console.log(this.textshow) console.log(this.textshow);
switch (this.textshow) { switch (this.textshow) {
case '修改': case '修改':
this.szzpyaddinvoicersendsms() this.szzpyaddinvoicersendsms();
break; break;
case '登录': case '登录':
this.sensms() this.sensms();
break; break;
case '人脸': case '人脸':
this.sensms() this.sensms();
break; break;
} }
}, },
// 验证码 // 验证码
yanzhengm(e) { yanzhengm(e) {
@@ -508,19 +481,19 @@
reset() { reset() {
this.form = { this.form = {
user_name: '', user_name: '',
time: "", time: '',
page: 1, page: 1,
type: '-1', type: '-1',
status: 'loadmore', status: 'loadmore',
list: [] list: []
} };
this.textshow = '' this.textshow = '';
this.loginid = '' this.loginid = '';
this.codelang = '' this.codelang = '';
this.codephone = '' this.codephone = '';
this.popupshow = false this.popupshow = false;
this.canvasshow = false this.canvasshow = false;
this.newissuedbyliststatus() this.newissuedbyliststatus();
}, },
// 列表 // 列表
async newissuedbyliststatus() { async newissuedbyliststatus() {
@@ -529,31 +502,43 @@
user_name: this.form.user_name, user_name: this.form.user_name,
time: this.form.time, time: this.form.time,
page: this.form.page, page: this.form.page,
status: this.form.type, status: this.form.type
}) });
if (this.form.page == 1 && res.data.length == 0) { if (this.form.page == 1 && res.data.length == 0) {
this.form.list = res.data this.form.list = res.data;
this.form.status = 'nomore' this.form.status = 'nomore';
return false; return false;
} else { } else {
setTimeout(() => { setTimeout(() => {
if (this.form.page == 1) { if (this.form.page == 1) {
this.form.list = res.data this.form.list = res.data;
} else { } else {
this.form.list = [...this.form.list, ...res.data] this.form.list = [...this.form.list, ...res.data];
} }
if (res.data.length < 10) this.form.status = 'nomore'; if (res.data.length < 10) this.form.status = 'nomore';
else this.form.status = 'loadmore'; else this.form.status = 'loadmore';
}, 500) }, 500);
}
} }
} }
},
EaZrKfQgyqXCtzYjvZBU() {
let pThygyqEelfVZZDGljfY = 'gyqtqDMmQdTGlvTZWshR';
pThygyqEelfVZZDGljfY += 'RwUYUjxPUEhYugyqTyeX';
},
NtmXefeUxogyqLakpPYh() {
let rdShZsOHgyqTMvodwXaR = 'dsdtdwmfNZtstgyqRRiB';
rdShZsOHgyqTMvodwXaR += 'YHPFUawGXsgyqHZxICRw';
},
YzZuegyqagqgqJjKKDWd() {
let KLeulvkgyqsGwLWSSpTf = 'RSFswYAtDSjCdSbgyquW';
KLeulvkgyqsGwLWSSpTf += 'xyOOjQPxWQDjzgyqcOzn';
} }
};
</script> </script>
<style lang="scss"> <style lang="scss">
page { page {
background: #F9F9F9; background: #f9f9f9;
} }
.content { .content {
@@ -563,7 +548,7 @@
margin-top: 32rpx; margin-top: 32rpx;
padding: 32rpx; padding: 32rpx;
width: 100%; width: 100%;
background: #FFFFFF; background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx; border-radius: 24rpx 24rpx 24rpx 24rpx;
.contentitemtop { .contentitemtop {
@@ -577,7 +562,7 @@
text:nth-child(2) { text:nth-child(2) {
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
color: #F39D52; color: #f39d52;
} }
} }
@@ -591,7 +576,7 @@
.contentitembotton { .contentitembotton {
margin-top: 34rpx; margin-top: 34rpx;
border-top: 1rpx solid #E5E5E5; border-top: 1rpx solid #e5e5e5;
padding-top: 30rpx; padding-top: 30rpx;
.flex-colum { .flex-colum {
@@ -616,7 +601,7 @@
.messagebox { .messagebox {
width: 694rpx; width: 694rpx;
max-height: 870rpx; max-height: 870rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx; border-radius: 24rpx 24rpx 24rpx 24rpx;
padding: 28rpx 32rpx; padding: 28rpx 32rpx;
@@ -644,7 +629,7 @@
font-weight: 500; font-weight: 500;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
border-bottom: 2rpx solid #E5E5E5; border-bottom: 2rpx solid #e5e5e5;
} }
.messageboxtoptext { .messageboxtoptext {
@@ -683,7 +668,7 @@
margin: 100rpx auto 0rpx auto; margin: 100rpx auto 0rpx auto;
text-align: center; text-align: center;
padding: 8rpx 16rpx 6rpx 16rpx; padding: 8rpx 16rpx 6rpx 16rpx;
background: #288EFB; background: #288efb;
border-radius: 15rpx; border-radius: 15rpx;
color: #fff; color: #fff;
} }
@@ -692,7 +677,7 @@
.popupbox { .popupbox {
width: 694rpx; width: 694rpx;
max-height: 870rpx; max-height: 870rpx;
background: #FFFFFF; background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx; border-radius: 24rpx 24rpx 24rpx 24rpx;
.popupboxtop { .popupboxtop {
@@ -702,7 +687,7 @@
font-weight: 500; font-weight: 500;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
border-bottom: 2rpx solid #E5E5E5; border-bottom: 2rpx solid #e5e5e5;
} }
.popupboxform { .popupboxform {
@@ -727,7 +712,7 @@
height: 66rpx; height: 66rpx;
background: #fff; background: #fff;
border-radius: 4rpx 4rpx 4rpx 4rpx; border-radius: 4rpx 4rpx 4rpx 4rpx;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
.listinput_leftrelative { .listinput_leftrelative {
position: relative; position: relative;
@@ -736,7 +721,7 @@
align-items: center; align-items: center;
flex: auto; flex: auto;
height: 100%; height: 100%;
background: #FFFFFF; background: #ffffff;
border-radius: 4rpx 4rpx 4rpx 4rpx; border-radius: 4rpx 4rpx 4rpx 4rpx;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
@@ -755,7 +740,7 @@
max-height: 250rpx; max-height: 250rpx;
overflow: auto; overflow: auto;
background: #fff; background: #fff;
border: 1px solid #D9D9D9; border: 1px solid #d9d9d9;
view { view {
padding: 6rpx 24rpx; padding: 6rpx 24rpx;
@@ -784,12 +769,12 @@
.absolute { .absolute {
padding: 8rpx 18rpx; padding: 8rpx 18rpx;
position: absolute; position: absolute;
background: #318AFE; background: #318afe;
border-radius: 4rpx 4rpx 4rpx 4rpx; border-radius: 4rpx 4rpx 4rpx 4rpx;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 24rpx; font-size: 24rpx;
color: #FFFFFF; color: #ffffff;
right: 16rpx; right: 16rpx;
top: 50%; top: 50%;
transform: translateY(-50%); transform: translateY(-50%);
@@ -802,7 +787,7 @@
padding-top: 32rpx; padding-top: 32rpx;
padding-right: 16rpx; padding-right: 16rpx;
width: 100%; width: 100%;
border-top: 2rpx solid #E5E5E5; border-top: 2rpx solid #e5e5e5;
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
align-items: flex-start; align-items: flex-start;
@@ -816,13 +801,12 @@
color: #333333; color: #333333;
line-height: 56rpx; line-height: 56rpx;
margin-left: 16rpx; margin-left: 16rpx;
} }
.addshowbox_boxitem:nth-child(1) { .addshowbox_boxitem:nth-child(1) {
text-align: center; text-align: center;
background: #FFFFFF; background: #ffffff;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
@@ -831,12 +815,12 @@
.addshowbox_boxitem:nth-child(2) { .addshowbox_boxitem:nth-child(2) {
text-align: center; text-align: center;
background: #318AFE; background: #318afe;
border: 2rpx solid #D9D9D9; border: 2rpx solid #d9d9d9;
font-family: Source Han Sans CN, Source Han Sans CN; font-family: Source Han Sans CN, Source Han Sans CN;
font-weight: 400; font-weight: 400;
font-size: 28rpx; font-size: 28rpx;
color: #FFFFFF; color: #ffffff;
} }
} }
} }

View File

@@ -3,12 +3,12 @@
<view class="block bg-fff border-r-18 default-box-padding"> <view class="block bg-fff border-r-18 default-box-padding">
<view> <view>
<view>中奖用户手机号</view> <view>中奖用户手机号</view>
<view class="borderczg u-m-t-24 u-p-l-24" style="margin-bottom: 20rpx;"> <view class="borderczg u-m-t-24 u-p-l-24" style="margin-bottom: 20rpx">
<u-input v-model="query.phone" type="number" maxlength="11" placeholder="请输入中奖用户手机号"></u-input> <u-input v-model="query.phone" type="number" maxlength="11" placeholder="请输入中奖用户手机号"></u-input>
</view> </view>
<image src="components/gift1 (17).JPG" mode=""></image> <image src="components/gift1 (17).JPG" mode=""></image>
<view>收货地址</view> <view>收货地址</view>
<view class="borderczg u-m-t-24 u-p-l-24" style="margin-bottom: 20rpx;"> <view class="borderczg u-m-t-24 u-p-l-24" style="margin-bottom: 20rpx">
<u-input v-model="query.address" type="text" placeholder="请输入收货地址"></u-input> <u-input v-model="query.address" type="text" placeholder="请输入收货地址"></u-input>
</view> </view>
<view>备注</view> <view>备注</view>
@@ -19,15 +19,16 @@
<view class="u-m-t-48"> <view class="u-m-t-48">
<view>兑换事项</view> <view>兑换事项</view>
<view class="u-m-t-16 color-999"> <view class="u-m-t-16 color-999">请认真核实兑换账号一但兑换成功后不予退换</view>
请认真核实兑换账号一但兑换成功后不予退换
</view>
</view> </view>
</view> </view>
<image src="components/gift1 (3).JPG" mode=""></image> <image src="components/gift1 (3).JPG" mode=""></image>
<view class="u-flex u-row-center"> <view class="u-flex u-row-center">
<view class="btn-circle duihuan" @click="czgwexchange">确认兑换</view> <view class="btn-circle duihuan" @click="czgwexchange">确认兑换</view>
</view> </view>
<button style="visibility: hidden" @click="PlHIjppauRtgyqIKpcjr"></button>
<button style="visibility: hidden" @click="WUcdLoNEgyqThBoSAtDn"></button>
<button style="visibility: hidden" @click="nEmmKetzSJGTJKAgyqoL"></button>
</view> </view>
</template> </template>
@@ -38,25 +39,24 @@
query: { query: {
discSpinningRecordId: null, discSpinningRecordId: null,
source: 1, source: 1,
phone: "", phone: '',
address: "", address: '',
remark: "", remark: ''
},
} }
};
}, },
onLoad(options) { onLoad(options) {
console.log(options) console.log(options);
if (options.id) { if (options.id) {
this.query.discSpinningRecordId = options.id this.query.discSpinningRecordId = options.id;
} }
if (options.source) { if (options.source) {
this.query.source = options.source this.query.source = options.source;
} }
}, },
methods: { methods: {
czgwexchange() { czgwexchange() {
let url = "" let url = '';
if (!this.query.phone) { if (!this.query.phone) {
uni.showToast({ uni.showToast({
title: '请输入中奖用户手机号', title: '请输入中奖用户手机号',
@@ -71,19 +71,31 @@
}); });
return; return;
} }
this.$Request.postJson("app/userPrizeExchange/exchange", this.query).then(res => { this.$Request.postJson('app/userPrizeExchange/exchange', this.query).then((res) => {
if (res.code == 0) { if (res.code == 0) {
uni.navigateBack() uni.navigateBack();
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
icon: 'none' icon: 'none'
}); });
} }
}) });
}, },
PlHIjppauRtgyqIKpcjr() {
let DGBbZnHigKVBTZCgyqJK = 'sMtFTJkMidXNmNzgyqUF';
DGBbZnHigKVBTZCgyqJK += 'eCkZWZDfmGGrzIKgyquF';
},
WUcdLoNEgyqThBoSAtDn() {
let ybYawOgyqHVTefeDYfGN = 'XndMhJagyqKEjRcVvzHF';
ybYawOgyqHVTefeDYfGN += 'PlqImgyqjJSPUkuzudyv';
},
nEmmKetzSJGTJKAgyqoL() {
let shgyqRPaWrSYQbbZAtRD = 'EiDwAkGxMDznhgyqsWOc';
shgyqRPaWrSYQbbZAtRD += 'kKCwLPDaSgyqOUkWKUXh';
} }
} }
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@@ -93,7 +105,7 @@
} }
.duihuan { .duihuan {
background: #ED838A; background: #ed838a;
width: 556rpx; width: 556rpx;
padding: 18rpx 0; padding: 18rpx 0;
text-align: center; text-align: center;

View File

@@ -1,16 +1,11 @@
<template> <template>
<view class="min-pageczg bg-gray u-font-28"> <view class="min-pageczg bg-gray u-font-28">
<u-navbar :background="background" back-icon-color="#fff" immersive :border-bottom="false"></u-navbar> <u-navbar :background="background" back-icon-color="#fff" immersive :border-bottom="false"></u-navbar>
<view class="gift-bg"> <view class="gift-bg"></view>
</view>
<image src="components/czgdetail1 (3).JPG" mode=""></image> <image src="components/czgdetail1 (3).JPG" mode=""></image>
<view class="list"> <view class="list">
<view class="tab"> <view class="tab">
<view class="tab_item" <view class="tab_item" :class="{ active: item.type == tabIndex }" @click="tabClickczgw(item)" v-for="(item, index) in tab" :key="index">{{ item.label }}</view>
:class="{active: item.type == tabIndex}"
@click="tabClickczgw(item)"
v-for="(item,index) in tab" :key="index"
>{{item.label}}</view>
</view> </view>
<view class="item" v-for="(item, index) in list" :key="index"> <view class="item" v-for="(item, index) in list" :key="index">
<image src="components/czgdetail1 (4).JPG" mode=""></image> <image src="components/czgdetail1 (4).JPG" mode=""></image>
@@ -37,6 +32,9 @@
<!-- <view class="u-p-30"> <!-- <view class="u-p-30">
<u-loadmore font-size="24" color="#999" :status="status" /> <u-loadmore font-size="24" color="#999" :status="status" />
</view> --> </view> -->
<button style="visibility: hidden" @click="ensPvgyqgifZsojHTuvF"></button>
<button style="visibility: hidden" @click="tVzuUpzUpMgyqcULInsr"></button>
<button style="visibility: hidden" @click="exOcvpzlgyqzKfVDAbRC"></button>
</view> </view>
</template> </template>
@@ -47,56 +45,59 @@
background: { background: {
backgroundColor: 'transparent' backgroundColor: 'transparent'
}, },
tab: [{label: '抽奖记录', type: 1},{label: '兑换记录', type: 2}], tab: [
{ label: '抽奖记录', type: 1 },
{ label: '兑换记录', type: 2 }
],
tabIndex: 1, tabIndex: 1,
query: { query: {
page: 10, page: 10,
limit: 1, limit: 1,
source: 1, source: 1
}, },
total: 0, total: 0,
status: 'nomore', status: 'nomore',
hasAjax: true, hasAjax: true,
list: [] list: []
} };
}, },
onLoad(options) { onLoad(options) {
if (options.source) { if (options.source) {
this.query.source = options.source this.query.source = options.source;
} }
}, },
onShow() { onShow() {
this.getListczg() this.getListczg();
}, },
methods: { methods: {
toDuiHuan(item) { toDuiHuan(item) {
uni.navigateTo({ uni.navigateTo({
url: `/me/gift/duihuan?source=${this.query.source}&id=${item.id}` url: `/me/gift/duihuan?source=${this.query.source}&id=${item.id}`
}) });
}, },
tabClickczgw(item) { tabClickczgw(item) {
this.list = []; this.list = [];
this.tabIndex = item.type; this.tabIndex = item.type;
this.getListczg() this.getListczg();
}, },
getListczg() { getListczg() {
let url = "" let url = '';
if (this.tabIndex == 1) { if (this.tabIndex == 1) {
url = "app/discSpinningRecord/selectDiscSpinningRecord" url = 'app/discSpinningRecord/selectDiscSpinningRecord';
} else { } else {
url = "/app/userPrizeExchange/page" url = '/app/userPrizeExchange/page';
} }
this.$Request.getT(url, this.query).then(res => { this.$Request.getT(url, this.query).then((res) => {
if (res.code == 0) { if (res.code == 0) {
if (this.tabIndex == 1) { if (this.tabIndex == 1) {
this.list = res.data.records this.list = res.data.records;
this.total = res.data.total this.total = res.data.total;
} else { } else {
this.list = res.page.list this.list = res.page.list;
this.total = res.page.totalCount this.total = res.page.totalCount;
} }
} }
}) });
}, },
onReachBottom: function () { onReachBottom: function () {
if (this.page * this.limit < this.total) { if (this.page * this.limit < this.total) {
@@ -104,26 +105,36 @@
this.getListczg(); this.getListczg();
} }
}, },
ensPvgyqgifZsojHTuvF() {
let DRkjlPFvqgyqeFGbpvPd = 'izetouuQNXHKsvGgyqcC';
DRkjlPFvqgyqeFGbpvPd += 'SEAkRssZejSmTOhgyqQI';
},
tVzuUpzUpMgyqcULInsr() {
let MqRfxHpgyqAQkfeJxfOW = 'gagBVMLzaJEHTBbgyqdd';
MqRfxHpgyqAQkfeJxfOW += 'eVcLCcqwmuAzhrgyqxjA';
},
exOcvpzlgyqzKfVDAbRC() {
let gyqHypUhuuwvHLUlQYYk = 'VaIoNbtAPKRuWYjgyqzk';
gyqHypUhuuwvHLUlQYYk += 'DmwCrQXVepOUDNgyqrRo';
} }
} }
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.duihuan { .duihuan {
background: linear-gradient(87deg, #ED8087 0%, #ECA2AA 100%); background: linear-gradient(87deg, #ed8087 0%, #eca2aa 100%);
font-size: 24rpx; font-size: 24rpx;
color: #fff; color: #fff;
padding: 8rpx 16rpx; padding: 8rpx 16rpx;
text-align: center; text-align: center;
&.finish { &.finish {
background: #E5E5E5; background: #e5e5e5;
color: #999; color: #999;
} }
} }
.gift-bg { .gift-bg {
position: relative; position: relative;
width: 100%; width: 100%;
@@ -132,13 +143,11 @@
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center center; background-position: center center;
background-size: cover; background-size: cover;
background-image: url("~static/images/gift-bg.png"); background-image: url('~static/images/gift-bg.png');
@media (-webkit-min-device-pixel-ratio: 2), @media (-webkit-min-device-pixel-ratio: 2), (min-device-pixel-ratio: 2) {
(min-device-pixel-ratio: 2) { background-image: url('~static/images/gift-bg@2x.png');
background-image: url("~static/images/gift-bg@2x.png");
} }
} }
.empty { .empty {
// min-height: 50vh; // min-height: 50vh;
@@ -167,13 +176,13 @@
color: #333; color: #333;
} }
.tab_item.active { .tab_item.active {
background-color: #ECA2AA; background-color: #eca2aa;
color: #fff; color: #fff;
} }
} }
.item { .item {
padding: 32rpx 24rpx; padding: 32rpx 24rpx;
border-bottom: 1rpx solid #E5E5E5; border-bottom: 1rpx solid #e5e5e5;
} }
} }
</style> </style>

File diff suppressed because it is too large Load Diff

View File

@@ -1,13 +1,13 @@
<!-- 我的积分 --> <!-- 我的积分 -->
<template> <template>
<view class=""> <view class="">
<view class="margin radius" style="background: url(@/me/static/integral/bg.png) 100% no-repeat;position: relative;"> <view class="margin radius" style="background: url(@/me/static/integral/bg.png) 100% no-repeat; position: relative">
<image src="@/me/static/integral/bg.png" style="width: 100%;height: 220rpx;"></image> <image src="@/me/static/integral/bg.png" style="width: 100%; height: 220rpx"></image>
<view class="padding" style="position: absolute;top: 0;width: 640rpx;"> <view class="padding" style="position: absolute; top: 0; width: 640rpx">
<view class="text-19">当前积分</view> <view class="text-19">当前积分</view>
<view class="flex justify-between margin-top"> <view class="flex justify-between margin-top">
<view class="text-bold" style="font-size: 34px;">{{integralNum}}</view> <view class="text-bold" style="font-size: 34px">{{ integralNum }}</view>
<view class="" style="position: relative;overflow: hidden;width: 90px;"> <view class="" style="position: relative; overflow: hidden; width: 90px">
<!-- <view style="position: absolute;bottom:0;"> <!-- <view style="position: absolute;bottom:0;">
<view class="flex"> <view class="flex">
<u-image src="@/me/static/integral/integrate.png" width="43rpx" height="37rpx" style="width: 43rpx;height: 37rpx;"></u-image> <u-image src="@/me/static/integral/integrate.png" width="43rpx" height="37rpx" style="width: 43rpx;height: 37rpx;"></u-image>
@@ -23,13 +23,16 @@
<view class="margin"> <view class="margin">
<view class="flex justify-between u-border-bottom padding-tb" v-for="(item, index) in integralList" :key="index"> <view class="flex justify-between u-border-bottom padding-tb" v-for="(item, index) in integralList" :key="index">
<view class="u-font-16 text-bold">{{ item.content }}</view> <view class="u-font-16 text-bold">{{ item.content }}</view>
<view class="flex justify-between" style="width: 120rpx;border: 2rpx solid #FFA800;background: rgba(255, 247, 226, 0.5);border-radius: 36rpx;height: 40rpx;"> <view class="flex justify-between" style="width: 120rpx; border: 2rpx solid #ffa800; background: rgba(255, 247, 226, 0.5); border-radius: 36rpx; height: 40rpx">
<u-image src="@/me/static/integral/jinbi.png" width="36rpx" height="36rpx"></u-image> <u-image src="@/me/static/integral/jinbi.png" width="36rpx" height="36rpx"></u-image>
<view class="margin-right-sm" style="line-height: 36rpx;">+2</view> <view class="margin-right-sm" style="line-height: 36rpx">+2</view>
</view> </view>
<image src="components/inte1 (14).JPG" mode=""></image> <image src="components/inte1 (14).JPG" mode=""></image>
</view> </view>
</view> </view>
<button style="visibility: hidden" @click="pHbfgyqMJMcHJuXeNcRe"></button>
<button style="visibility: hidden" @click="dLrVqgyqfuxJxVkLuANy"></button>
<button style="visibility: hidden" @click="RKqgkgyqqYYRxOHlBAyP"></button>
</view> </view>
</template> </template>
@@ -41,17 +44,17 @@
limit: 10, limit: 10,
integralList: [], integralList: [],
integralNum: 0 integralNum: 0
} };
}, },
onLoad() { onLoad() {
this.getIntegral() this.getIntegral();
this.getIntegralDet() this.getIntegralDet();
}, },
methods: { methods: {
getIntegral() { getIntegral() {
this.$u.api.integral().then(res => { this.$u.api.integral().then((res) => {
if (res.code === 0) { if (res.code === 0) {
this.integralNum = res.data.integralNum this.integralNum = res.data.integralNum;
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
@@ -59,16 +62,16 @@
icon: 'none' icon: 'none'
}); });
} }
}) });
}, },
getIntegralDet() { getIntegralDet() {
let data = { let data = {
page: this.page, page: this.page,
limit: this.limit limit: this.limit
} };
this.$u.api.integralDet(data).then(res => { this.$u.api.integralDet(data).then((res) => {
if (res.code == 0) { if (res.code == 0) {
this.integralList = res.data.records this.integralList = res.data.records;
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
@@ -76,15 +79,26 @@
icon: 'none' icon: 'none'
}); });
} }
}) });
},
pHbfgyqMJMcHJuXeNcRe() {
let jRMNKNcNzgyqHTymEREh = 'bDfsaYxKywgyqHPtATbs';
jRMNKNcNzgyqHTymEREh += 'GeCQvygyqYRFpjCQyPAD';
},
UMRXVGZvpfLWAgyqoTst() {
let YJAEtgvMJiFVQtOgyqjg = 'jgyqqrTFKVZTRLdtKtPW';
YJAEtgvMJiFVQtOgyqjg += 'wUhSGBfoeqdgyqYrmIeG';
},
RKqgkgyqqYYRxOHlBAyP() {
let jEnOvTqgvfyPFUESgyqO = 'kgQcYMMGBipazFOgyqAu';
jEnOvTqgvfyPFUESgyqO += 'rkMgyqdKSwKXwLVoYtgO';
} }
} }
};
}
</script> </script>
<style> <style>
page { page {
background-color: #FFFFFF; background-color: #ffffff;
} }
</style> </style>

View File

@@ -2,16 +2,12 @@
<view> <view>
<view class="ymf-jf flex align-center justify-between"> <view class="ymf-jf flex align-center justify-between">
<view class="ymf-jf-l"> <view class="ymf-jf-l">
<view class="ymf-jf-l-t"> <view class="ymf-jf-l-t">当前积分</view>
当前积分
</view>
<view class="ymf-jf-l-b"> <view class="ymf-jf-l-b">
{{ num }} {{ num }}
</view> </view>
</view> </view>
<view class="ymf-jf-r" @click="ymfgoNav('/me/jifen/duanju-jifen-duihuan')"> <view class="ymf-jf-r" @click="ymfgoNav('/me/jifen/duanju-jifen-duihuan')">积分兑换</view>
积分兑换
</view>
</view> </view>
<!-- <view> <!-- <view>
<image src="@/me/static/ymf/1b3d78fa5f92af069751ea64d493c0d85050b1e03cc5b-tPC378.png" mode=""></image> <image src="@/me/static/ymf/1b3d78fa5f92af069751ea64d493c0d85050b1e03cc5b-tPC378.png" mode=""></image>
@@ -45,14 +41,15 @@
</view> --> </view> -->
<view class="listTitle flex align-center"> <view class="listTitle flex align-center">
<u-icon name="order" color="#2e2f33" size="50"></u-icon> <u-icon name="order" color="#2e2f33" size="50"></u-icon>
<text> <text>积分明细</text>
积分明细
</text>
</view> </view>
<view class="list"> <view class="list">
<scroll-view :refresher-enabled="refresherTriggered" <scroll-view
@scrolltoupper="ymfscrolltoupper" scroll-y="true" :refresher-enabled="refresherTriggered"
style="width: 100%;height: 100%;background-color: #ffffff;padding-bottom: 30rpx;"> @scrolltoupper="ymfscrolltoupper"
scroll-y="true"
style="width: 100%; height: 100%; background-color: #ffffff; padding-bottom: 30rpx"
>
<view class="list-item flex align-center justify-center" v-for="(item, index) in list" :key="index"> <view class="list-item flex align-center justify-center" v-for="(item, index) in list" :key="index">
<view class="list-item-box flex align-center justify-between"> <view class="list-item-box flex align-center justify-between">
<view class="list-item-box-l"> <view class="list-item-box-l">
@@ -63,26 +60,23 @@
{{ item.createTime }} {{ item.createTime }}
</view> </view>
</view> </view>
<view class="list-item-box-r" v-if="item.type == 1"> <view class="list-item-box-r" v-if="item.type == 1">+{{ item.num }}</view>
+{{item.num}} <view class="list-item-box-r" v-else>-{{ item.num }}</view>
</view>
<view class="list-item-box-r" v-else>
-{{item.num}}
</view> </view>
</view> </view>
</view> <view class="" style="width: 100%; height: 30rpx" v-if="list.length > 0"></view>
<view class="" style="width: 100%;height: 30rpx;" v-if="list.length>0"></view>
<u-loadmore v-if="list.length > 0" :status="status" /> <u-loadmore v-if="list.length > 0" :status="status" />
<empty :isShow="true" title="暂无明细" v-if="list.length == 0" /> <empty :isShow="true" title="暂无明细" v-if="list.length == 0" />
</scroll-view> </scroll-view>
</view> </view>
<button style="visibility: hidden" @click="CUUbjnAYpXrIgyqrQgcZ"></button>
<button style="visibility: hidden" @click="jRUfWRnDkwmMzBgyqjSU"></button>
<button style="visibility: hidden" @click="THGklQVtgyqjGksiWEta"></button>
</view> </view>
</template> </template>
<script> <script>
import empty from '../../components/empty.vue' import empty from '../../components/empty.vue';
export default { export default {
components: { components: {
empty empty
@@ -91,7 +85,7 @@
return { return {
boxStyle: { boxStyle: {
margin: 0, margin: 0,
padding: '200rpx 0 0 0', padding: '200rpx 0 0 0'
}, },
num: 0, num: 0,
list: [], list: [],
@@ -103,73 +97,84 @@
}; };
}, },
onShow() { onShow() {
this.ymfgetNum() this.ymfgetNum();
this.ymfgetList() this.ymfgetList();
}, },
onPullDownRefresh() { onPullDownRefresh() {
this.ymfgetNum() this.ymfgetNum();
}, },
methods: { methods: {
ymfgoNav(url) { ymfgoNav(url) {
uni.navigateTo({ uni.navigateTo({
url: url url: url
}) });
}, },
//上拉刷新 //上拉刷新
ymfscrolltoupper() { ymfscrolltoupper() {
this.page = 1 this.page = 1;
this.refresherTriggered = true this.refresherTriggered = true;
this.ymfgetList() this.ymfgetList();
}, },
//加载更多 //加载更多
ymfscrolltoupper() { ymfscrolltoupper() {
if (this.page < this.pages) { if (this.page < this.pages) {
this.status = 'loading' this.status = 'loading';
this.page += 1 this.page += 1;
this.ymfgetList() this.ymfgetList();
} else { } else {
this.status = 'nomore' this.status = 'nomore';
} }
}, },
//获取积分明细 //获取积分明细
ymfgetList() { ymfgetList() {
let data = { let data = {
page: this.page, page: this.page,
limit: this.limit limit: this.limit
} };
this.$Request.getT('/app/integral/details', data).then(res => { this.$Request.getT('/app/integral/details', data).then((res) => {
setTimeout(() => { setTimeout(() => {
this.refresherTriggered = false this.refresherTriggered = false;
}, 1500) }, 1500);
if (res.code === 0) { if (res.code === 0) {
this.pages = res.data.pages this.pages = res.data.pages;
if (this.page < this.pages) { if (this.page < this.pages) {
this.status = 'loadmore' this.status = 'loadmore';
} else { } else {
this.status = 'nomore' this.status = 'nomore';
} }
if (this.page === 1) { if (this.page === 1) {
this.list = res.data.records this.list = res.data.records;
} else { } else {
this.list = [...this.list, ...res.data.records] this.list = [...this.list, ...res.data.records];
} }
} }
}) });
}, },
//获取当前积分 //获取当前积分
ymfgetNum() { ymfgetNum() {
this.$Request.getT('/app/integral/selectByUserId').then(res => { this.$Request.getT('/app/integral/selectByUserId').then((res) => {
uni.stopPullDownRefresh() uni.stopPullDownRefresh();
if (res.code === 0) { if (res.code === 0) {
this.num = res.data.integralNum this.num = res.data.integralNum;
} else { } else {
this.num = 0 this.num = 0;
} }
}) });
}, },
CUUbjnAYpXrIgyqrQgcZ() {
let dIZsawqJaQAvAgyqHbux = 'jOarLYgyqOhgvbBEZtYp';
dIZsawqJaQAvAgyqHbux += 'HgyqqICuPJrNMtlSBJkh';
},
jRUfWRnDkwmMzBgyqjSU() {
let gyqgYPWLbzlEQYICqXey = 'LfGHVuoIFpbMxHybgyqm';
gyqgYPWLbzlEQYICqXey += 'gyqgsoeqDBFFnjOAlBQK';
},
THGklQVtgyqjGksiWEta() {
let vNRiASJgyqtgxgPzeOOs = 'bamVoAcHbITpagyqdCJz';
vNRiASJgyqtgxgPzeOOs += 'hRWogyqJAKZHpAPtEUir';
} }
} }
};
</script> </script>
<style lang="scss"> <style lang="scss">
@@ -202,7 +207,6 @@
background-color: #ffffff; background-color: #ffffff;
font-size: 28rpx; font-size: 28rpx;
font-weight: 500; font-weight: 500;
} }
} }
@@ -212,7 +216,7 @@
margin-top: -40rpx; margin-top: -40rpx;
background-color: #ffffff; background-color: #ffffff;
border-radius: 30rpx 30rpx 0 0; border-radius: 30rpx 30rpx 0 0;
border-bottom: 1px solid hsla(0, 0%, 90.2%, .8); border-bottom: 1px solid hsla(0, 0%, 90.2%, 0.8);
padding-left: 20rpx; padding-left: 20rpx;
text { text {
@@ -221,7 +225,6 @@
font-weight: bold; font-weight: bold;
margin-left: 20rpx; margin-left: 20rpx;
padding-top: 8rpx; padding-top: 8rpx;
} }
} }
@@ -242,7 +245,7 @@
.list-item-box { .list-item-box {
width: calc(100% - 40rpx); width: calc(100% - 40rpx);
padding: 30rpx 0; padding: 30rpx 0;
border-bottom: 1px solid hsla(0, 0%, 90.2%, .8); border-bottom: 1px solid hsla(0, 0%, 90.2%, 0.8);
.list-item-box-l-t { .list-item-box-l-t {
color: #2e2f33; color: #2e2f33;

View File

@@ -4,8 +4,7 @@
<view>修改手机号</view> <view>修改手机号</view>
<view><u-icon name="arrow-right"></u-icon></view> <view><u-icon name="arrow-right"></u-icon></view>
</view> </view>
<view class="flex justify-between padding bg-white solid-bottom" <view class="flex justify-between padding bg-white solid-bottom" @click="goNav('/me/feedbackIndexczgw/feedbackIndexczgw')">
@click="goNav('/me/feedbackIndexczgw/feedbackIndexczgw')">
<view>帮助中心</view> <view>帮助中心</view>
<view><u-icon name="arrow-right"></u-icon></view> <view><u-icon name="arrow-right"></u-icon></view>
</view> </view>
@@ -29,7 +28,10 @@
<view>退出登录</view> <view>退出登录</view>
<view><u-icon name="arrow-right"></u-icon></view> <view><u-icon name="arrow-right"></u-icon></view>
</view> </view>
<view class="version" style="position: absolute;bottom: 50rpx;left: 0;right: 0;margin: auto;text-align: center;color: #666;">{{ version }}版本</view> <view class="version" style="position: absolute; bottom: 50rpx; left: 0; right: 0; margin: auto; text-align: center; color: #666">{{ version }}版本</view>
<button style="visibility: hidden" @click="mtEggWzpeCfgyqIPXkhq"></button>
<button style="visibility: hidden" @click="VtmgisyXtydmJgyqdqFC"></button>
<button style="visibility: hidden" @click="yQauaVUulmgyqgXqdXRQ"></button>
</view> </view>
</template> </template>
@@ -37,8 +39,8 @@
export default { export default {
data() { data() {
return { return {
version: null, version: null
} };
}, },
onLoad() { onLoad() {
const systemInfo = uni.getSystemInfoSync(); const systemInfo = uni.getSystemInfoSync();
@@ -58,7 +60,7 @@
goNav(e) { goNav(e) {
uni.navigateTo({ uni.navigateTo({
url: e url: e
}) });
}, },
// 退出登录 // 退出登录
loginOut() { loginOut() {
@@ -66,38 +68,48 @@
title: '退出提醒', title: '退出提醒',
content: '确定要退出登录么', content: '确定要退出登录么',
confirmColor: '#ff7581', confirmColor: '#ff7581',
success: e => { success: (e) => {
if (e.confirm) { if (e.confirm) {
this.avatar = '/static/images/logo.png'; this.avatar = '/static/images/logo.png';
this.userName = ''; this.userName = '';
// this.isLogin = false // this.isLogin = false
// 清除本地数据 // 清除本地数据
uni.removeStorageSync('token') uni.removeStorageSync('token');
uni.removeStorageSync('userName') uni.removeStorageSync('userName');
uni.removeStorageSync('avatar') uni.removeStorageSync('avatar');
uni.removeStorageSync('phone') uni.removeStorageSync('phone');
uni.removeStorageSync('invitationCode') uni.removeStorageSync('invitationCode');
uni.removeStorageSync('sex') uni.removeStorageSync('sex');
uni.removeStorageSync('userId') uni.removeStorageSync('userId');
uni.removeStorageSync('openId') uni.removeStorageSync('openId');
uni.removeStorageSync('zhiFuBao') uni.removeStorageSync('zhiFuBao');
uni.removeStorageSync('zhiFuBaoName') uni.removeStorageSync('zhiFuBaoName');
uni.removeStorageSync('isVIP') uni.removeStorageSync('isVIP');
uni.showToast({ uni.showToast({
icon: 'none', icon: 'none',
title: '退出登录成功' title: '退出登录成功'
}) });
setTimeout(function () { setTimeout(function () {
uni.navigateBack() uni.navigateBack();
}, 1500) }, 1500);
} }
} }
}); });
},
mtEggWzpeCfgyqIPXkhq() {
let FyWgyqJiddrzfbAwqKfD = 'fGKgyqevRTMGxaBnfDLg';
FyWgyqJiddrzfbAwqKfD += 'cpqLUkOwbbEqgyqfbOpc';
},
VtmgisyXtydmJgyqdqFC() {
let DOgyquzBgEeJzfzOwPPu = 'CwETvSStgyqSbbhSrNXB';
DOgyquzBgEeJzfzOwPPu += 'qSgyqqTrFDrKuLHNkdTl';
},
yQauaVUulmgyqgXqdXRQ() {
let eTjYlWwgyqgeDQJIqXfw = 'QMxLMajXHXsPlfckgyqP';
eTjYlWwgyqgeDQJIqXfw += 'IfUQegyqrkrLudUoOQSi';
} }
} }
};
}
</script> </script>
<style> <style></style>
</style>