From a9d66d4f4a1c5d7a7e9a14ed7b4b190598e29a09 Mon Sep 17 00:00:00 2001
From: dzc <2388224167@qq.com>
Date: Mon, 5 Jan 2026 16:17:18 +0800
Subject: [PATCH] =?UTF-8?q?feat:bug=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
@logo/base-poster.svg | 84 +
@logo/logo.png | Bin 0 -> 6047 bytes
src/pages.json | 77 -
src/pages/components/user-look-wechat.vue | 180 ++
src/pages/home/city.vue | 172 +-
src/pages/home/detail.vue | 3 +-
src/pages/login/login.vue | 4 +-
src/pages/message/chat-box.vue | 2795 ++++++++---------
.../message/components/user-info-car.vue | 79 +
src/pages/message/components/warning-car.vue | 9 +
src/pages/tabbar/components/scroll-moment.vue | 156 +-
src/pages/tabbar/home.vue | 62 +-
src/pages/tabbar/moments.vue | 37 +-
src/pages/wechat-tabbar/index.vue | 2 +-
.../pages/components/gift-record-item.vue | 5 +-
src/pages/wechat/pages/withdraw.vue | 5 +-
.../components/moment-card/moment-card.vue | 225 +-
src/sheep/util/permission.ts | 138 +
src/static/icon/self/iconfont.css | 42 +-
19 files changed, 2212 insertions(+), 1863 deletions(-)
create mode 100644 @logo/base-poster.svg
create mode 100644 @logo/logo.png
create mode 100644 src/pages/components/user-look-wechat.vue
create mode 100644 src/pages/message/components/user-info-car.vue
create mode 100644 src/pages/message/components/warning-car.vue
create mode 100644 src/sheep/util/permission.ts
diff --git a/@logo/base-poster.svg b/@logo/base-poster.svg
new file mode 100644
index 00000000..df2d06bc
--- /dev/null
+++ b/@logo/base-poster.svg
@@ -0,0 +1,84 @@
+
diff --git a/@logo/logo.png b/@logo/logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..87d09d09c04651cda59cfc9a4bf33dde67dac81d
GIT binary patch
literal 6047
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
Z{|{+<{Ag@B0agG2002ovPDHLkV1nvZsj~n8
literal 0
HcmV?d00001
diff --git a/src/pages.json b/src/pages.json
index 9f87df87..b9bfcdd3 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -12,83 +12,6 @@
}
},
"pages": [
- // {
- // "path": "pages/index/index",
- // "aliasPath": "/",
- // "style": {
- // "navigationBarTitleText": "首页",
- // "enablePullDownRefresh": true
- // },
- // "meta": {
- // "auth": false,
- // "sync": true,
- // "title": "首页",
- // "group": "商城"
- // }
- // },
- // {
- // "path": "pages/index/user",
- // "style": {
- // "navigationBarTitleText": "个人中心",
- // "enablePullDownRefresh": true
- // },
- // "meta": {
- // "sync": true,
- // "title": "个人中心",
- // "group": "商城"
- // }
- // },
- // {
- // "path": "pages/index/category",
- // "style": {
- // "navigationBarTitleText": "商品分类"
- // },
- // "meta": {
- // "sync": true,
- // "title": "商品分类",
- // "group": "商城"
- // }
- // },
- // {
- // "path": "pages/index/cart",
- // "style": {
- // "navigationBarTitleText": "购物车"
- // },
- // "meta": {
- // "sync": true,
- // "title": "购物车",
- // "group": "商城"
- // }
- // },
- // {
- // "path": "pages/index/login",
- // "style": {
- // "navigationBarTitleText": "登录"
- // }
- // },
- // {
- // "path": "pages/index/search",
- // "style": {
- // "navigationBarTitleText": "搜索"
- // },
- // "meta": {
- // "sync": true,
- // "title": "搜索",
- // "group": "商城"
- // }
- // },
- // {
- // "path": "pages/index/page",
- // "style": {
- // "navigationBarTitleText": ""
- // },
- // "meta": {
- // "auth": false,
- // "sync": true,
- // "title": "自定义页面",
- // "group": "商城"
- // }
- // },
// #ifdef MP-WEIXIN
{
"path": "pages/wechat-tabbar/index",
diff --git a/src/pages/components/user-look-wechat.vue b/src/pages/components/user-look-wechat.vue
new file mode 100644
index 00000000..3b820927
--- /dev/null
+++ b/src/pages/components/user-look-wechat.vue
@@ -0,0 +1,180 @@
+
+
+
+
+
+
+ {{ user.member.wechatNum || '*************' }}
+
+
+ 成为
+ VIP
+ 免费解锁
+
+
+ 已解锁对方微信
+
+
+
+ 解锁
+
+
+ 查看
+
+
+
+
+
+
+
+
+
+ {{ user.member.wechatNum || '*************' }}
+
+
+
+
+ 今日vip特权已使用{{ lookWechatDetail.todayCount }}/{{
+ lookWechatDetail.todayCountTotal }}次
+
+ 使用VIP特权免费解锁
+
+
+
+
+
+
+
+ {{ user.member.wechatNum || '*************'
+ }}
+
+
+ 解锁微信只能展示24小时
+ 添加备注"荷塘月色App"会快速通过哟
+
+ 今日vip特权已使用{{ lookWechatDetail.todayCount }}/{{
+ lookWechatDetail.todayCountTotal }}次
+
+ 复制微信号
+
+
+ 搜索不到微信?点击【
+ 立即举报
+ 】退还次数
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/pages/home/city.vue b/src/pages/home/city.vue
index 9f35156b..f0340dfa 100644
--- a/src/pages/home/city.vue
+++ b/src/pages/home/city.vue
@@ -1,96 +1,120 @@
-
-
+
+
- 热门城市
+
+
+
+ {{ userCity?.t || '未选择' }}
+
+ 当前位置
+
+ 热门城市
-
+
{{ item.t }}
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/pages/home/detail.vue b/src/pages/home/detail.vue
index 50229439..c0c4a79c 100644
--- a/src/pages/home/detail.vue
+++ b/src/pages/home/detail.vue
@@ -436,8 +436,7 @@ const goChat = async () => {
});
return;
}
-
- uni.navigateTo({ url: '/pages/message/chat-box?chatIdx=' + chatIdx });
+ uni.navigateTo({ url: `/pages/message/chat-box?chatIdx=${chatIdx}&memberId=${userDetail.value.memberId}` });
});
};
diff --git a/src/pages/login/login.vue b/src/pages/login/login.vue
index 2f8a2b8b..a2bbf942 100644
--- a/src/pages/login/login.vue
+++ b/src/pages/login/login.vue
@@ -15,8 +15,8 @@
-
-
+
+
获取验证码 ({{ countDown }}s)
diff --git a/src/pages/message/chat-box.vue b/src/pages/message/chat-box.vue
index 89e7f45f..aae538c3 100644
--- a/src/pages/message/chat-box.vue
+++ b/src/pages/message/chat-box.vue
@@ -13,36 +13,21 @@
+
+
-
+
+
-
+
@@ -53,12 +38,7 @@
-
+
@@ -67,81 +47,43 @@
-
+
-
+
-
+
-
-
+
-
+
文件
-
+
相册
-
+
拍摄
@@ -154,11 +96,8 @@
送礼物
-
+
回执消息
@@ -179,53 +118,27 @@
-
+
-
+
-
+
-
+
-
+
礼物
@@ -233,22 +146,14 @@
{{ (userWallet.balance / 100.0).toFixed(2).replace(/\.?0+$/, '') }}
-
+
充值
-
+
{{ item.title }}
@@ -263,1343 +168,1359 @@
diff --git a/src/pages/message/components/user-info-car.vue b/src/pages/message/components/user-info-car.vue
new file mode 100644
index 00000000..8e27f14c
--- /dev/null
+++ b/src/pages/message/components/user-info-car.vue
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+ 基本资料:
+ {{ user?.member?.memberAge }}岁
+
+ {{ user?.member?.memberHeight }}cm
+
+
+
+
+
+ 所在城市:
+ {{ user?.member?.memberCity }}
+
+
+
+
+
+
+ 已认证
+
+
+
+
+
+
+
+
+
+
+ 相册暂无照片
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/pages/message/components/warning-car.vue b/src/pages/message/components/warning-car.vue
new file mode 100644
index 00000000..d5985767
--- /dev/null
+++ b/src/pages/message/components/warning-car.vue
@@ -0,0 +1,9 @@
+
+
+ 请勿通过平台进行非法交易,如被举报核实将作封号处理。任何私下交易行为,请谨慎判断,以防人身或财产损失
+
+
+
+
\ No newline at end of file
diff --git a/src/pages/tabbar/components/scroll-moment.vue b/src/pages/tabbar/components/scroll-moment.vue
index 38c008a2..1ce080ba 100644
--- a/src/pages/tabbar/components/scroll-moment.vue
+++ b/src/pages/tabbar/components/scroll-moment.vue
@@ -1,109 +1,85 @@
-
-
+
+
-
+
-
+
-
+
diff --git a/src/pages/tabbar/home.vue b/src/pages/tabbar/home.vue
index 6f56eb69..728054d8 100644
--- a/src/pages/tabbar/home.vue
+++ b/src/pages/tabbar/home.vue
@@ -13,9 +13,8 @@
-
(current = e.detail.current)" :duration="200" disable-touch>
+ @change="(e) => (current = e.detail.current)" :duration="200">
@@ -52,6 +51,7 @@ import { computed, ref } from 'vue';
import segmented from '@/sheep/components/segmented/segmented.vue';
import RecentApi from '@/sheep/api/member/recent';
import ScrollUser from './components/scroll-user.vue';
+import { requestPermission, gotoAppPermissionSetting } from "@/sheep/util/permission"
// @ts-ignore
import sheep from '@/sheep';
import { onLoad, onShow } from '@dcloudio/uni-app';
@@ -59,7 +59,20 @@ import { onLoad, onShow } from '@dcloudio/uni-app';
const current = ref(0);
const segmentedItems = ref([]);
const isOpenGPS = ref(true);
-const userCity = computed(() => sheep.$store('user').userCity);
+const userCity = computed(() => {
+ const selectCity = sheep.$store('user').userCity
+ if (selectCity && selectCity.t) return selectCity
+ const currentLocation = sheep.$store('user')?.userInfo?.currentLocation
+ if (!currentLocation) return null
+ const city = {
+ v: null,
+ t: currentLocation.city,
+ lng: String(currentLocation.lng),
+ lat: String(currentLocation.lat),
+ }
+ sheep.$store('user').setUserCity(city);
+ return city
+});
onLoad(async () => {
// 获取顶部导航栏tab菜单
@@ -78,6 +91,7 @@ const getLocation = () => {
uni.getLocation({
geocode: true,
success: (res) => {
+ console.log("位置授权:", res);
const params = {
lat: String(res.latitude),
lon: String(res.longitude),
@@ -95,39 +109,17 @@ const getLocation = () => {
});
};
-const openSystemGPS = () => {
+const openSystemGPS = async () => {
// #ifdef APP-PLUS || MP-WEIXIN
- const system = uni.getSystemInfoSync();
- if (system.platform === 'android') {
- // 安卓手机授权之后还需打开定位服务功能GPS
- const context: any = plus.android.importClass('android.content.Context');
- const locationManager: any = plus.android.importClass('android.location.LocationManager');
- const main: any = plus.android.runtimeMainActivity();
- const mainSvr = main.getSystemService(context.LOCATION_SERVICE);
- if (!mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER)) {
- if (!mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER)) {
- const Intent: any = plus.android.importClass('android.content.Intent');
- const Settings: any = plus.android.importClass('android.provider.Settings');
- const intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
- main.startActivity(intent); // 打开系统设置GPS服务页面
- }
- }
- } else if (system.platform == 'ios') {
- // ios打开对应的通知栏
- uni.showModal({
- title: '定位权限开启提醒',
- content: '未开启定位,请前往设置!',
- confirmText: '去设置',
- success: function (res) {
- if (res.confirm) {
- const app = plus.ios.invoke('UIApplication', 'sharedApplication');
- const setting = plus.ios.invoke('NSURL', 'URLWithString:', 'app-settings:');
- plus.ios.invoke(app, 'openURL:', setting);
- plus.ios.deleteObject(setting);
- plus.ios.deleteObject(app);
- }
- },
- });
+ const permissionStatus = await requestPermission("location")
+ console.log("APP授权:", permissionStatus);
+ // 已拒绝|受限
+ if (permissionStatus === 'denied') {
+ gotoAppPermissionSetting()
+ }
+ // 已授权
+ if (permissionStatus === 'granted') {
+ isOpenGPS.value = true;
}
// #endif
// #ifdef H5
diff --git a/src/pages/tabbar/moments.vue b/src/pages/tabbar/moments.vue
index a9b0e0fa..5c82eb89 100644
--- a/src/pages/tabbar/moments.vue
+++ b/src/pages/tabbar/moments.vue
@@ -13,13 +13,8 @@
- (current = e.detail.current)"
- :duration="200"
- disable-touch
- >
+ (current = e.detail.current)" :duration="200" disable-touch>
@@ -28,20 +23,20 @@
diff --git a/src/pages/wechat-tabbar/index.vue b/src/pages/wechat-tabbar/index.vue
index 9bacea51..f51070a0 100644
--- a/src/pages/wechat-tabbar/index.vue
+++ b/src/pages/wechat-tabbar/index.vue
@@ -220,7 +220,7 @@ const getTradeConfig = async () => {
if (data.brokerageWithdrawMinPrice !== undefined) {
state.rule[1].title = `邀请奖励满${fen2yuanSimple(
data.brokerageWithdrawMinPrice,
- )}元可提现,3个月工作日内到账`;
+ )}元可提现,2个工作日内到账`;
}
if (data.brokerageFirstPercent !== undefined) {
state.rule[0].title = `通过链接/二维码邀请用户首次充值,可获得${data.brokerageFirstPercent || 50
diff --git a/src/pages/wechat/pages/components/gift-record-item.vue b/src/pages/wechat/pages/components/gift-record-item.vue
index 1f0878db..1d1959a2 100644
--- a/src/pages/wechat/pages/components/gift-record-item.vue
+++ b/src/pages/wechat/pages/components/gift-record-item.vue
@@ -2,7 +2,10 @@
礼物提现
- {{ fen2yuan(item.txPrice) }} 元
+
+ {{ fen2yuanSimple(item.txPrice) }}元
+ ({{ fen2yuanSimple(item.txYdPrice) }}缘豆)
+
diff --git a/src/pages/wechat/pages/withdraw.vue b/src/pages/wechat/pages/withdraw.vue
index 75bc7017..930749dd 100644
--- a/src/pages/wechat/pages/withdraw.vue
+++ b/src/pages/wechat/pages/withdraw.vue
@@ -6,8 +6,9 @@
-
+
历史记录
diff --git a/src/sheep/components/moment-card/moment-card.vue b/src/sheep/components/moment-card/moment-card.vue
index bfe38723..c2b0b7aa 100644
--- a/src/sheep/components/moment-card/moment-card.vue
+++ b/src/sheep/components/moment-card/moment-card.vue
@@ -1,28 +1,23 @@
-
+
- {{ member?.memberNickname }}
+
+ {{ member?.memberNickname }}
+
+
+
+ {{ item.tagTitle }}
+
+
+
{{ formatDate(data.createTime, 'YYYY-MM-DD HH:mm') }}
-
-
-
- {{ item.tagTitle }}
-
-
{{ getGender(member.memberSex) }}
·
@@ -35,14 +30,8 @@
{{ data.description }}
-
+
@@ -74,112 +63,112 @@
diff --git a/src/sheep/util/permission.ts b/src/sheep/util/permission.ts
new file mode 100644
index 00000000..df0d8937
--- /dev/null
+++ b/src/sheep/util/permission.ts
@@ -0,0 +1,138 @@
+type PermissionId = 'location';
+/**
+ * 权限请求状态
+ * - none: 未请求
+ * - granted: 已授权
+ * - denied: 已拒绝|受限
+ * - prompt: 未授权
+ */
+type RequestStatus = 'granted' | 'denied' | 'prompt';
+
+/**
+ * 跳转应用权限设置页面
+ */
+export const gotoAppPermissionSetting = () => {
+ const system = uni.getSystemInfoSync();
+ console.log('system:', system);
+ if (system.platform === 'ios') {
+ // @ts-ignore
+ const UIApplication = plus.ios.import('UIApplication');
+ const application2 = UIApplication.sharedApplication();
+ // @ts-ignore
+ const NSURL2 = plus.ios.import('NSURL');
+ const setting2 = NSURL2.URLWithString('app-settings:');
+ application2.openURL(setting2);
+ plus.ios.deleteObject(setting2);
+ plus.ios.deleteObject(NSURL2);
+ plus.ios.deleteObject(application2);
+ }
+ if (system.platform == 'android') {
+ const Intent = plus.android.importClass('android.content.Intent');
+ const Settings = plus.android.importClass('android.provider.Settings');
+ const Uri = plus.android.importClass('android.net.Uri');
+ const mainActivity = plus.android.runtimeMainActivity();
+ // @ts-ignore
+ const intent = new Intent();
+ // @ts-ignore
+ intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
+ // @ts-ignore
+ const uri = Uri.fromParts('package', mainActivity.getPackageName(), null);
+ intent.setData(uri);
+ // @ts-ignore
+ mainActivity.startActivity(intent);
+ }
+};
+
+export const requestPermission = (permissionId: PermissionId): Promise => {
+ const system = uni.getSystemInfoSync();
+ if (system.platform === 'android') {
+ return requestAndroid(permissionId);
+ }
+ if (system.platform === 'ios') {
+ return requestIos(permissionId);
+ }
+ return Promise.resolve('denied');
+};
+
+/******************************** ios相关 ********************************/
+
+const requestIos = (permissionId: PermissionId): Promise => {
+ return new Promise((resolve, reject) => {
+ switch (permissionId) {
+ case 'location':
+ resolve(iosLocation());
+ break;
+ default:
+ resolve('denied');
+ break;
+ }
+ });
+};
+
+/**
+ * 请求ios定位权限
+ * @returns 权限请求状态
+ */
+const iosLocation = (): RequestStatus => {
+ let result: RequestStatus = 'denied';
+ // @ts-ignore
+ const cllocationManger = plus.ios.import('CLLocationManager');
+ const enable = cllocationManger.locationServicesEnabled();
+ const status = cllocationManger.authorizationStatus();
+ if (!enable) {
+ result = 'denied';
+ } else if (status === 0) {
+ result = 'prompt';
+ } else if (status === 3 || status === 4) {
+ result = 'granted';
+ } else {
+ result = 'denied';
+ }
+ plus.ios.deleteObject(cllocationManger);
+ return result;
+};
+
+/******************************** andorid相关 ********************************/
+
+/**
+ * 请求android权限
+ */
+const requestAndroid = (permissionID: PermissionId): Promise => {
+ return new Promise((resolve, reject) => {
+ let androidPermissionKey = '';
+ switch (permissionID) {
+ case 'location':
+ androidPermissionKey = 'android.permission.ACCESS_FINE_LOCATION';
+ break;
+ }
+ if (!androidPermissionKey) {
+ resolve('denied');
+ }
+ plus.android.requestPermissions(
+ [permissionID],
+ function (resultObj) {
+ let result: RequestStatus = 'denied';
+ for (let i = 0; i < resultObj.granted.length; i++) {
+ const grantedPermission = resultObj.granted[i];
+ console.log('已获取的权限:');
+ result = 'granted';
+ }
+ for (let i = 0; i < resultObj.deniedPresent.length; i++) {
+ const deniedPresentPermission = resultObj.deniedPresent[i];
+ console.log('拒绝本次申请的权限:');
+ result = 'denied';
+ }
+ for (let i = 0; i < resultObj.deniedAlways.length; i++) {
+ const deniedAlwaysPermission = resultObj.deniedAlways[i];
+ console.log('永久拒绝申请的权限:');
+ result = 'denied';
+ }
+ resolve(result);
+ },
+ function (error) {
+ console.error(`|请求android权限|${permissionID}:`, error);
+ resolve('denied');
+ },
+ );
+ });
+};
diff --git a/src/static/icon/self/iconfont.css b/src/static/icon/self/iconfont.css
index 74ecae03..90d91034 100644
--- a/src/static/icon/self/iconfont.css
+++ b/src/static/icon/self/iconfont.css
@@ -1,8 +1,8 @@
@font-face {
font-family: "iconfont"; /* Project id 5079650 */
- src: url('//at.alicdn.com/t/c/font_5079650_0eztc033f38b.woff2?t=1765772507380') format('woff2'),
- url('//at.alicdn.com/t/c/font_5079650_0eztc033f38b.woff?t=1765772507380') format('woff'),
- url('//at.alicdn.com/t/c/font_5079650_0eztc033f38b.ttf?t=1765772507380') format('truetype');
+ src: url('//at.alicdn.com/t/c/font_5079650_ql5o5wq6mdh.woff2?t=1767594984419') format('woff2'),
+ url('//at.alicdn.com/t/c/font_5079650_ql5o5wq6mdh.woff?t=1767594984419') format('woff'),
+ url('//at.alicdn.com/t/c/font_5079650_ql5o5wq6mdh.ttf?t=1767594984419') format('truetype');
}
.iconfont {
@@ -13,6 +13,42 @@
-moz-osx-font-smoothing: grayscale;
}
+.icon-a-ziyuan592:before {
+ content: "\e78e";
+}
+
+.icon-renzheng1:before {
+ content: "\e6a1";
+}
+
+.icon-anquan1:before {
+ content: "\e663";
+}
+
+.icon-tupian:before {
+ content: "\e662";
+}
+
+.icon-anquan:before {
+ content: "\ec4d";
+}
+
+.icon-chengshi:before {
+ content: "\e665";
+}
+
+.icon-gerenxinxi:before {
+ content: "\e64c";
+}
+
+.icon-chengshi1:before {
+ content: "\e66e";
+}
+
+.icon-icon-phone:before {
+ content: "\e657";
+}
+
.icon-weixin:before {
content: "\e63d";
}