初始化通话

This commit is contained in:
cbb
2026-02-09 17:11:23 +08:00
parent 009cc1a3da
commit a81add0195
4 changed files with 112 additions and 39 deletions

38
package-lock.json generated
View File

@@ -9,6 +9,10 @@
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"@rongcloud/engine": "^5.36.1",
"@rongcloud/imlib-next": "^5.36.1",
"@rongcloud/plugin-call-plus": "^2.36.0",
"@rongcloud/plugin-rtc": "^5.36.0",
"@tencentcloud/chat-uikit-engine-lite": "^1.0.4",
"@tencentcloud/chat-uikit-uniapp": "^3.2.0",
"@tencentcloud/tui-core-lite": "1.0.0",
@@ -743,6 +747,40 @@
}
}
},
"node_modules/@rongcloud/engine": {
"version": "5.36.1",
"resolved": "https://registry.npmjs.org/@rongcloud/engine/-/engine-5.36.1.tgz",
"integrity": "sha512-BLRE0Koym4h+DGBN0B+9rmVIGNDRELt5NwfaVC+X6tyOJBhzRDvJiIWXzrlYB4GoRQHBF8thADuy8+vx5pTCFg==",
"license": "LGPL 2.1"
},
"node_modules/@rongcloud/imlib-next": {
"version": "5.36.1",
"resolved": "https://registry.npmjs.org/@rongcloud/imlib-next/-/imlib-next-5.36.1.tgz",
"integrity": "sha512-PDTF/YDdUmmLC6c46b1DHT9xrd2dmx6C59KDYmzjclucgFsrEyQ3V40jLOJlZg5ggn7kRtHQOPoRMsfAXWxFuw==",
"license": "LGPL 2.1",
"peerDependencies": {
"@rongcloud/engine": "=5.36.1"
}
},
"node_modules/@rongcloud/plugin-call-plus": {
"version": "2.36.0",
"resolved": "https://registry.npmjs.org/@rongcloud/plugin-call-plus/-/plugin-call-plus-2.36.0.tgz",
"integrity": "sha512-qTwRgNL3wUO51AgT4C/+5Pgpo0TzzIEAK4xW0qhGQfQQTuep7tyF5yL8UpTw6LsSnfBfetQdsYoaQZsgdlpn+g==",
"license": "LGPL 2.1",
"peerDependencies": {
"@rongcloud/engine": "~5.36.1",
"@rongcloud/plugin-rtc": "~5.36.0"
}
},
"node_modules/@rongcloud/plugin-rtc": {
"version": "5.36.0",
"resolved": "https://registry.npmjs.org/@rongcloud/plugin-rtc/-/plugin-rtc-5.36.0.tgz",
"integrity": "sha512-8tKKBdhNs4OXhu6ux7N+nqJqjXOhJriv4LZkmXDfth7RvF4UBhogx5bIEa1VpAj+3Cp0PamCEF6wvHbdPfgYIA==",
"license": "LGPL 2.1",
"peerDependencies": {
"@rongcloud/engine": "~5.36.1"
}
},
"node_modules/@swc/helpers": {
"version": "0.5.18",
"resolved": "https://repo.huaweicloud.com/repository/npm/@swc/helpers/-/helpers-0.5.18.tgz",

View File

@@ -10,13 +10,17 @@
"author": "",
"license": "ISC",
"dependencies": {
"@rongcloud/engine": "^5.36.1",
"@rongcloud/imlib-next": "^5.36.1",
"@rongcloud/plugin-call-plus": "^2.36.0",
"@rongcloud/plugin-rtc": "^5.36.0",
"@tencentcloud/chat-uikit-engine-lite": "^1.0.4",
"@tencentcloud/chat-uikit-uniapp": "^3.2.0",
"@tencentcloud/tui-core-lite": "1.0.0",
"@tencentcloud/tuiroom-engine-js": "^3.6.2",
"@tencentcloud/uikit-base-component-vue3": "^1.3.5",
"@tencentcloud/universal-api": "^2.4.0",
"dayjs": "^1.11.10",
"@tencentcloud/uikit-base-component-vue3": "^1.3.5",
"tuikit-atomicx-vue3": "^5.2.0"
}
}

View File

@@ -71,9 +71,10 @@
// 预览图片
const previewImage = index => {
// detailData.imageGallery
uni.previewImage({
current: goods.value.images[index],
urls: goods.value.images,
current: detailData.value.imageGallery[index],
urls: detailData.value.imageGallery,
indicator: 'number',
loop: true
})
@@ -99,7 +100,7 @@
</script>
<template>
<view class="goods-detail-page">
<view v-if="!loading" class="goods-detail-page">
<!-- 商品图片轮播 -->
<swiper
class="goods-swiper"
@@ -107,19 +108,20 @@
:autoplay="false"
:interval="3000"
:duration="500"
circular
>
<swiper-item v-for="(img, index) in goods.images" :key="index">
circular>
<swiper-item
v-for="(img, index) in detailData.imageGallery"
:key="index">
<image
:src="img"
class="swiper-image"
mode="aspectFit"
@tap="previewImage(index)"
/>
@tap="previewImage(index)" />
<!-- 图片指示器 -->
<view class="image-indicator">
<text class="indicator-text">
{{ index + 1 }}/{{ goods.images.length }}
{{ index + 1
}}/{{ detailData.imageGallery.length }}
</text>
</view>
</swiper-item>
@@ -130,48 +132,77 @@
<!-- 价格和名称 -->
<view class="price-section">
<view class="current-price">
<text class="price-symbol">¥</text>
<text class="price-number">{{ goods.price.toFixed(2) }}</text>
<text v-if="goods.originalPrice" class="original-price">
¥{{ goods.originalPrice.toFixed(2) }}
<text class="price-symbol"
>¥</text
>
<text
class="price-number"
>{{ detailData.payAmount }}</text
>
<text class="original-price">
¥{{ detailData.totalAmount }}
</text>
<view v-if="goods.discount" class="discount-tag">
<!-- <view v-if="goods.discount" class="discount-tag">
<text class="discount-text">{{ goods.discount }}</text>
</view>
</view> -->
</view>
<text class="goods-title">{{ goods.title }}</text>
<!-- <text class="goods-title">{{ goods.title }}</text> -->
</view>
<!-- 商品描述 -->
<text class="goods-description">{{ goods.description }}</text>
<text
class="goods-description"
>{{ detailData.productName }}</text
>
<!-- 商品标签 -->
<view class="tags-section">
<!-- <view class="tags-section">
<view class="tag-item" v-for="tag in goods.tags" :key="tag">
<text class="tag-text">{{ tag }}</text>
</view>
</view>
</view> -->
</view>
<!-- 商品规格信息卡片 -->
<view class="spec-card">
<view class="card-header">
<text class="card-title">商品规格</text>
<text class="card-title"
>商品参数</text
>
</view>
<view class="spec-list">
<view
class="spec-item"
v-for="spec in goods.specifications"
:key="spec.key"
>
<text class="spec-key">{{ spec.key }}</text>
<text class="spec-value">{{ spec.value }}</text>
<view class="spec-item">
<text class="spec-key"
>订单号</text
>
<text
class="spec-value"
>{{ detailData.orderNo }}</text
>
</view>
<view class="spec-item">
<text class="spec-key"
>提交时间</text
>
<text
class="spec-value"
>{{ detailData.updateTime }}</text
>
</view>
<view class="spec-item">
<text class="spec-key"
>规格</text
>
<text
class="spec-value"
>{{ detailData.specText }}</text
>
</view>
</view>
</view>
<!-- 库存和销量信息卡片 -->
<view class="info-card">
<!-- <view class="info-card">
<view class="info-grid">
<view class="info-item">
<text class="info-label">库存</text>
@@ -188,18 +219,16 @@
<text class="info-value">{{ goods.totalSales }}</text>
</view>
</view>
</view>
</view> -->
<!-- 商品详情描述 -->
<view class="detail-card">
<!-- <view class="detail-card">
<view class="card-header">
<text class="card-title">商品详情</text>
</view>
<view class="detail-content">
<!-- 富文本内容 -->
<rich-text :nodes="goods.detailContent"></rich-text>
<!-- 如果没有富文本显示默认描述 -->
<view v-if="!goods.detailContent" class="default-detail">
<view class="detail-section">
<text class="detail-title">产品特色</text>
@@ -219,10 +248,10 @@
</view>
</view>
</view>
</view>
</view> -->
<!-- 配送和售后信息 -->
<view class="service-card">
<!-- <view class="service-card">
<view class="card-header">
<text class="card-title">服务保障</text>
</view>
@@ -251,10 +280,10 @@
</view>
</view>
</view>
</view>
</view> -->
<!-- 商品参数表格 -->
<view class="params-card">
<!-- <view class="params-card">
<view class="card-header">
<text class="card-title">商品参数</text>
</view>
@@ -268,12 +297,14 @@
<text class="param-value">{{ param.value }}</text>
</view>
</view>
</view>
</view> -->
<!-- 底部装饰 -->
<view class="bottom-decor">
<view class="decor-line"></view>
<text class="end-text">商品详情展示完毕</text>
<text class="end-text"
>商品详情展示完毕</text
>
<view class="decor-line"></view>
</view>
</view>