修复已知问题

This commit is contained in:
2024-10-09 12:31:09 +08:00
parent 10533eb67d
commit 6161d9c1d3
12 changed files with 140 additions and 115 deletions
+2 -2
View File
@@ -1,9 +1,9 @@
VITE_APP_NAME=后台管理系统 VITE_APP_NAME=后台管理系统
VITE_SOCKET_URL=wss://server.gxwebsoft.com VITE_SOCKET_URL=wss://server.gxwebsoft.com
VITE_SERVER_URL=https://server.gxwebsoft.com/api VITE_SERVER_URL=https://server.gxwebsoft.com/api
#VITE_THINK_URL=https://gxtyzx-api.websoft.top/api VITE_THINK_URL=https://gxtyzx-api.websoft.top/api
VITE_API_URL=https://modules.gxwebsoft.com/api VITE_API_URL=https://modules.gxwebsoft.com/api
#VITE_SERVER_URL=http://127.0.0.1:9090/api #VITE_SERVER_URL=http://127.0.0.1:9090/api
#VITE_API_URL=http://127.0.0.1:9001/api #VITE_API_URL=http://127.0.0.1:9001/api
VITE_THINK_URL=http://127.0.0.1:9099/api #VITE_THINK_URL=http://127.0.0.1:9099/api
+5 -2
View File
@@ -55,7 +55,10 @@
</uv-cell> </uv-cell>
<uv-cell :title="`订单状态`" :cellStyle="{ padding: '8px' }"> <uv-cell :title="`订单状态`" :cellStyle="{ padding: '8px' }">
<template v-slot:value> <template v-slot:value>
<view v-if="form.payStatus == 0"> <view v-if="form.orderStatus === 2">
<span class="web-text-secondary">已取消</span>
</view>
<view v-else-if="form.payStatus === 0">
<!-- <uv-count-down :time="form.timestamp" format="mm:ss"></uv-count-down> --> <!-- <uv-count-down :time="form.timestamp" format="mm:ss"></uv-count-down> -->
<span style="color: #ff0000">未支付</span> <span style="color: #ff0000">未支付</span>
</view> </view>
@@ -70,7 +73,7 @@
</uni-card> </uni-card>
</block> </block>
<uv-gap height="20"></uv-gap> <uv-gap height="20"></uv-gap>
<view class="checkout-car" v-if="form.payStatus == 0"> <view class="checkout-car" v-if="form.payStatus === 0 && form.orderStatus !== 2">
<view class="car-total"> <view class="car-total">
<text style="color: #ebcf00">¥</text> <text style="color: #ebcf00">¥</text>
<uv-count-to decimals="2" duration="30" color="#ebcf00" bold :endVal="form.payPrice"></uv-count-to> <uv-count-to decimals="2" duration="30" color="#ebcf00" bold :endVal="form.payPrice"></uv-count-to>
+1 -1
View File
@@ -166,7 +166,7 @@ export default {
reload() { reload() {
const app = this; const app = this;
const { where, userId } = this; const { where, userId } = this;
if (userId == 0) { if (userId === 0) {
app.openLogin(); app.openLogin();
return; return;
} }
+14 -13
View File
@@ -10,15 +10,18 @@
v-for="(item, index) in cardList" v-for="(item, index) in cardList"
:key="index" :key="index"
@click="openUrl('/package/user/card-detail?cardId=' + item.id)" @click="openUrl('/package/user/card-detail?cardId=' + item.id)"
:style="{ background: `url(${item.image}) no-repeat center center`, backgroundSize: '100%', opacity: '0.85' }" :style="{ background: `url(https://oss.wsdns.cn/20240920/5e3327e1ad97472e942c824ab1776f52.jpg?x-oss-process=image/resize,m_fixed,w_750/quality,Q_90) no-repeat center center`, backgroundSize: '100%', opacity: '0.85' }"
> >
<view class="content web-cell"> <view class="content web-cell">
<view class="merchant-avatar"> <!-- <view class="merchant-avatar">-->
<uv-avatar :src="item.merchantAvatar" size="36" style="border: 3rpx solid #ffffff"></uv-avatar> <!-- <uv-avatar :src="item.merchantAvatar" size="36" style="border: 3rpx solid #ffffff"></uv-avatar>-->
</view> <!-- </view>-->
<view class="card-info web-cell-content"> <view class="card-info web-cell-content">
<view class="title-bar"> <view class="title-bar">
<view class="web-text-heading" style="color: #ffffff; font-size: 17px; font-weight: 600">{{ item.name }}</view> <view class="web-text-heading" style="color: #ffffff; font-size: 20px; font-weight: 600">{{ item.name }}</view>
<view class="desc py-3" style="text-align: left;">
{{ item.siteNames }}
</view>
<!-- <block v-if="item.type == 2"> <!-- <block v-if="item.type == 2">
<view class="desc web-text-heading" style="color: #ffffff; font-size: 14px">{{ item.month }}个月</view> <view class="desc web-text-heading" style="color: #ffffff; font-size: 14px">{{ item.month }}个月</view>
</block> --> </block> -->
@@ -66,8 +69,7 @@
</template> </template>
<script> <script>
import * as Api from '@/api/booking/userCard'; import * as Api from '@/api/think/thinkUsersVip';
import { pageWechatDeposit } from '@/api/shop/wechatDeposit';
import { getWeek, getKey } from '@/utils/common'; import { getWeek, getKey } from '@/utils/common';
export default { export default {
@@ -137,15 +139,15 @@ export default {
reload() { reload() {
const app = this; const app = this;
const { where, userId } = this; const { where, userId } = this;
if (userId == 0) { if (userId === 0) {
app.openLogin(); app.openLogin();
return; return;
} }
where.userId = userId; where.uid = uni.getStorageSync('uid');
where.status = 1; where.status = 1;
where.sceneType = 'myCardAll'; where.sceneType = 'myCardAll';
app.loadMore = 'loading'; app.loadMore = 'loading';
Api.pageUserCard(where) Api.pageThinkUsersVip(where)
.then((res) => { .then((res) => {
console.log('res: ', res); console.log('res: ', res);
const list = res.list.map((d) => { const list = res.list.map((d) => {
@@ -253,7 +255,7 @@ export default {
/* #endif */ /* #endif */
justify-content: center; justify-content: center;
align-items: center; align-items: center;
height: 150px; height: 380rpx;
text-align: center; text-align: center;
} }
@@ -278,14 +280,13 @@ export default {
.card-list { .card-list {
.container { .container {
width: 700rpx; width: 700rpx;
height: 200rpx; height: 380rpx;
position: relative; position: relative;
margin: 25rpx auto; margin: 25rpx auto;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
border-radius: 20rpx; border-radius: 20rpx;
position: relative;
box-shadow: 0 0px 6px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0px 6px 0 rgba(0, 0, 0, 0.2);
// background: linear-gradient(to right, #70b915, #008e04); // background: linear-gradient(to right, #70b915, #008e04);
color: #ffffff; color: #ffffff;
+1 -1
View File
@@ -126,7 +126,7 @@
app.openLogin() app.openLogin()
return; return;
} }
// where.userId = userId; where.userId = userId;
uni.showLoading({ uni.showLoading({
title: '数据读取中.' title: '数据读取中.'
}) })
+7 -7
View File
@@ -16,11 +16,11 @@
</view> </view>
</view> </view>
</uni-card> </uni-card>
<view class="btn-bar"> <!-- <view class="btn-bar">-->
<uv-button class="save-user-profile" <!-- <uv-button class="save-user-profile"-->
:customStyle="{background: 'linear-gradient(to right, #70b915, #008e04)',borderRadius: '30px',color: '#ffffff'}" <!-- :customStyle="{background: 'linear-gradient(to right, #70b915, #008e04)',borderRadius: '30px',color: '#ffffff'}"-->
text="添加" @click="add"></uv-button> <!-- text="添加" @click="add"></uv-button>-->
</view> <!-- </view>-->
<!-- 登录组件 --> <!-- 登录组件 -->
<ws-login ref="login" :logo="logo" @done="reload" /> <ws-login ref="login" :logo="logo" @done="reload" />
<!-- EmergencyEdit弹窗 --> <!-- EmergencyEdit弹窗 -->
@@ -101,7 +101,7 @@
Api.pageEmergency({ Api.pageEmergency({
userId: userInfo.userId userId: userInfo.userId
}).then(res => { }).then(res => {
app.list = res.list; app.list = []
}) })
}, },
navTo(item) { navTo(item) {
@@ -200,4 +200,4 @@
margin: auto; margin: auto;
clear: both; clear: both;
} }
</style> </style>
+3 -3
View File
@@ -7,7 +7,7 @@
<script> <script>
// import { useUserStore } from '@/store/modules/user'; // import { useUserStore } from '@/store/modules/user';
import * as Api from '@/api/booking/userInvoice'; import * as Api from '@/api/think/thinkInvoice';
import { copyText, openUrl } from '@/utils/common'; import { copyText, openUrl } from '@/utils/common';
// import { useTenantStore } from '@/store/modules/tenant'; // import { useTenantStore } from '@/store/modules/tenant';
@@ -28,7 +28,7 @@ export default {
this.reload(e.id); this.reload(e.id);
}, },
methods: { methods: {
async reload(orderNo) { async reload(oid) {
const app = this; const app = this;
// 当前登录用户信息 // 当前登录用户信息
// const userInfo = await userStore.fetchUserInfo(); // const userInfo = await userStore.fetchUserInfo();
@@ -40,7 +40,7 @@ export default {
// } // }
// 读取最后一次 // 读取最后一次
await Api.showInvoice(orderNo).then((res) => { await Api.pageThinkInvoice({oid}).then((res) => {
if (res) { if (res) {
const json = JSON.parse(res); const json = JSON.parse(res);
if (json.code) { if (json.code) {
+1 -1
View File
@@ -108,7 +108,7 @@
{ {
"path": "user/card", "path": "user/card",
"style": { "style": {
"navigationBarTitleText": "我的卡包", "navigationBarTitleText": "会员服务",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
+2 -2
View File
@@ -58,10 +58,10 @@
</button> </button>
</view> </view>
<view class="card-actions-item" v-if="item.payStatus == 1"> <view class="card-actions-item" v-if="item.payStatus == 1">
<button class="mini-btn" size="mini" v-if="item.isInvoice == 0" @click="onInvoice(item.orderId)"> <button class="mini-btn" size="mini" v-if="item.isOpen === 2" @click="onInvoice(item.orderId)">
申请开票 申请开票
</button> </button>
<button class="mini-btn" size="mini" v-else @click="showInvoice(item.orderId)">查看发票</button> <button class="mini-btn" size="mini" v-else @click="showInvoice(item.id)">查看发票</button>
</view> </view>
</view> </view>
</uni-card> </uni-card>
+86 -82
View File
@@ -20,87 +20,87 @@
<!-- 我的订单 --> <!-- 我的订单 -->
<!-- <ws-user-order :order="order" :is-login="isLogin" @done="openLogin"></ws-user-order> --> <!-- <ws-user-order :order="order" :is-login="isLogin" @done="openLogin"></ws-user-order> -->
<!-- 其他功能 --> <!-- 其他功能 -->
<!-- <uni-card :border="false" :padding="0">--> <uni-card :border="false" :padding="0">
<!-- &lt;!&ndash; 场馆管理可见&ndash;&gt;--> <!-- 场馆管理可见-->
<!-- <block v-if="hasMerchantRole || hasMerchantClerkRole">--> <block v-if="hasMerchantRole || hasMerchantClerkRole">
<!-- <view class="server" style="min-height: 200px">--> <view class="server" style="min-height: 200px">
<!-- <uni-list :border="false">--> <uni-list :border="false">
<!-- <block v-for="(item, index) in mpMenus" :key="index">--> <block v-for="(item, index) in mpMenus" :key="index">
<!-- <block v-if="index === '1981'" v-for="(v,i) in item">--> <block v-if="index === '1981'" v-for="(v,i) in item">
<!-- <uni-list-item :thumb="v.avatar" link @click="navTo(v)">--> <uni-list-item :thumb="v.avatar" link @click="navTo(v)">
<!-- <template v-slot:body>--> <template v-slot:body>
<!-- <view class="slot-box">--> <view class="slot-box">
<!-- <text class="slot-text" :style="{ color: v.color ? v.color : '#333333' }">{{--> <text class="slot-text" :style="{ color: v.color ? v.color : '#333333' }">{{
<!-- v.title--> v.title
<!-- }}--> }}
<!-- </text>--> </text>
<!-- </view>--> </view>
<!-- </template>--> </template>
<!-- </uni-list-item>--> </uni-list-item>
<!-- </block>--> </block>
<!-- </block>--> </block>
<!-- </uni-list>--> </uni-list>
<!-- </view>--> </view>
<!-- </block>--> </block>
<!-- <block v-else>--> <block v-else>
<!-- &lt;!&ndash; 普通会员菜单 &ndash;&gt;--> <!-- 普通会员菜单 -->
<!-- <view class="server" style="min-height: 200px">--> <view class="server" style="min-height: 200px">
<!-- <uni-list :border="false">--> <uni-list :border="false">
<!-- <block v-for="(item, index) in mpMenus" :key="index">--> <block v-for="(item, index) in mpMenus" :key="index">
<!-- <block v-if="index === '1981'" v-for="(v,i) in item">--> <block v-if="index === '1981'" v-for="(v,i) in item">
<!-- <uni-list-item :thumb="v.avatar" link @click="navTo(v)">--> <uni-list-item :thumb="v.avatar" link @click="navTo(v)">
<!-- <template v-slot:body>--> <template v-slot:body>
<!-- <view class="slot-box">--> <view class="slot-box">
<!-- <text class="slot-text" :style="{ color: v.color ? v.color : '#333333' }">{{--> <text class="slot-text" :style="{ color: v.color ? v.color : '#333333' }">{{
<!-- v.title--> v.title
<!-- }}--> }}
<!-- </text>--> </text>
<!-- </view>--> </view>
<!-- </template>--> </template>
<!-- </uni-list-item>--> </uni-list-item>
<!-- </block>--> </block>
<!-- </block>--> </block>
<!-- </uni-list>--> </uni-list>
<!-- </view>--> </view>
<!-- </block>--> </block>
<!-- </uni-card>--> </uni-card>
<block v-for="(item, index) in mpMenus" :key="index"> <!-- <block v-for="(item, index) in mpMenus" :key="index">-->
<block v-if="index === '1981'"> <!-- <block v-if="index === '1981'">-->
<uni-card :title="item[0].groupName" :border="false" :padding="0"> <!-- <uni-card :title="item[0].groupName" :border="false" :padding="0">-->
<uv-skeleton rows="1" rowsHeight="30" rowsWidth="100%" :loading="mpMenus.length === 0" :title="false"> <!-- <uv-skeleton rows="1" rowsHeight="30" rowsWidth="100%" :loading="mpMenus.length === 0" :title="false">-->
<div class="flex space-around py-6 flex-wrap"> <!-- <div class="flex space-around py-6 flex-wrap">-->
<block v-for="(item,index) in item" :key="index"> <!-- <block v-for="(item,index) in item" :key="index">-->
<div <!-- <div-->
class="service-item flex flex-col justify-center items-center web-cell-content web-text-center px-20" <!-- class="service-item flex flex-col justify-center items-center web-cell-content web-text-center px-20"-->
@click="navTo(item)"> <!-- @click="navTo(item)">-->
<image :src="item.avatar" style="width: 30px; height: 30px;" mode="widthFix"></image> <!-- <uv-avatar :src="item.avatar" :size="24" mode="widthFix"></uv-avatar>-->
<text style="white-space: nowrap">{{ item.title }}</text> <!-- <text style="white-space: nowrap">{{ item.title }}</text>-->
</div> <!-- </div>-->
</block> <!-- </block>-->
</div> <!-- </div>-->
<w-gap height="5"></w-gap> <!-- <w-gap height="5"></w-gap>-->
</uv-skeleton> <!-- </uv-skeleton>-->
</uni-card> <!-- </uni-card>-->
</block> <!-- </block>-->
<block v-if="index === '1982' && (hasMerchantClerkRole || hasMerchantRole)"> <!-- <block v-if="index === '1982' && (hasMerchantClerkRole || hasMerchantRole)">-->
<uni-card :title="item[0].groupName" :border="false" :padding="0"> <!-- <uni-card :title="item[0].groupName" :border="false" :padding="0">-->
<uv-skeleton rows="1" rowsHeight="30" rowsWidth="100%" :loading="mpMenus.length === 0" :title="false"> <!-- <uv-skeleton rows="1" rowsHeight="30" rowsWidth="100%" :loading="mpMenus.length === 0" :title="false">-->
<div class="flex space-around py-6 flex-wrap"> <!-- <div class="flex space-around py-6 flex-wrap">-->
<block v-for="(item,index) in item" :key="index"> <!-- <block v-for="(item,index) in item" :key="index">-->
<div <!-- <div-->
class="service-item flex flex-col justify-center items-center web-cell-content web-text-center px-20" <!-- class="service-item flex flex-col justify-center items-center web-cell-content web-text-center px-20"-->
@click="navTo(item)"> <!-- @click="navTo(item)">-->
<image :src="item.avatar" style="width: 30px; height: 30px;" mode="widthFix"></image> <!-- <image :src="item.avatar" style="width: 30px; height: 30px;" mode="widthFix"></image>-->
<text style="white-space: nowrap">{{ item.title }}</text> <!-- <text style="white-space: nowrap">{{ item.title }}</text>-->
</div> <!-- </div>-->
</block> <!-- </block>-->
</div> <!-- </div>-->
<w-gap height="5"></w-gap> <!-- <w-gap height="5"></w-gap>-->
</uv-skeleton> <!-- </uv-skeleton>-->
</uni-card> <!-- </uni-card>-->
</block> <!-- </block>-->
</block> <!-- </block>-->
<!-- <ws-personal :form="users" ref="personal" @done="reload" />--> <!-- <ws-personal :form="users" ref="personal" @done="reload" />-->
<!-- 登录组件 --> <!-- 登录组件 -->
<ws-login ref="login" :logo="logo" @done="reload"/> <ws-login ref="login" :logo="logo" @done="reload"/>
@@ -122,13 +122,14 @@ import Layout from "@/components/layout.vue";
import {useTenantStore} from '@/store/modules/tenant'; import {useTenantStore} from '@/store/modules/tenant';
import {authUser} from "@/api/user"; import {authUser} from "@/api/user";
import UvAvatar from "@/uni_modules/uv-avatar/components/uv-avatar/uv-avatar.vue";
const tenantStore = useTenantStore(); const tenantStore = useTenantStore();
const mpStore = useMpStore(); const mpStore = useMpStore();
const userStore = useUserStore(); const userStore = useUserStore();
export default { export default {
components: {Layout}, components: {UvAvatar, Layout},
data() { data() {
return { return {
statusBarHeight: 104, statusBarHeight: 104,
@@ -306,11 +307,14 @@ export default {
this.hideTools = false; this.hideTools = false;
}, },
// 弹出登录提示框 // 弹出登录提示框
openLogin() { openLogin(text) {
if (!this.isLogin) { if (!this.isLogin) {
this.$refs.login.open('bottom'); this.$refs.login.open('bottom');
return false; return false;
} }
if(text){
uni.navigateTo({url: text})
}
} }
} }
}; };
@@ -1,5 +1,5 @@
<template> <template>
<view class="my-asset" :style="`background: url(${config.myAssets})`"> <view class="my-asset" :style="`background: url(${config.myAssets})`" @click="openIntegral">
<view class="title"> <view class="title">
我的积分 我的积分
</view> </view>
@@ -86,6 +86,9 @@ export default {
// this.coupon = res.toBeUsed; // this.coupon = res.toBeUsed;
// }) // })
}, },
openIntegral(){
this.$emit('done', '/package/user/integral')
},
navTo(item) { navTo(item) {
const app = this; const app = this;
if (!this.isLogin) { if (!this.isLogin) {
@@ -48,6 +48,20 @@
</template> </template>
</uv-cell> </uv-cell>
</uv-form-item> </uv-form-item>
<uv-form-item prop="form.truename" borderBottom>
<uv-cell title="真实姓名:">
<template v-slot:value>
<input placeholder="请输入真实姓名" v-model="form.truename"/>
</template>
</uv-cell>
</uv-form-item>
<uv-form-item prop="form.idcard" borderBottom>
<uv-cell title="身份证号码:">
<template v-slot:value>
<input placeholder="请输入身份证号码" v-model="form.idcard"/>
</template>
</uv-cell>
</uv-form-item>
</uv-form> </uv-form>
</view> </view>
</uni-card> </uni-card>