|
|
- <template>
- <view class="customer-service">
-
- <navbar leftClick @leftClick="$utils.navigateBack" title="客服中心" />
-
- <view class="content">
- <!-- 客服介绍 -->
- <view class="intro">
- <view class="title">我们为您提供贴心服务</view>
- <view class="desc">如有任何问题,请随时联系我们的客服团队</view>
- </view>
-
- <!-- 客服列表 -->
- <view class="service-list">
- <view
- class="service-item"
- v-for="(item, index) in serviceList"
- :key="index"
- @click="showQRCode(item)"
- >
- <image class="avatar" :src="item.avatar" mode="aspectFill"></image>
- <view class="info">
- <view class="name">{{ item.name }}</view>
- <view class="contact">{{ item.contact }}</view>
- </view>
- <uv-icon name="arrow-right" size="24rpx" color="#999"></uv-icon>
- </view>
- </view>
-
- </view>
-
- <!-- 微信二维码弹窗 -->
- <uv-popup ref="qrPopup" :round="20" bgColor="#fff">
- <view class="qr-popup">
- <view class="qr-header">
- <view class="title">{{ currentService.name }}</view>
- <view class="subtitle">扫码添加微信</view>
- </view>
- <view class="qr-content">
- <image class="qr-code" :src="currentService.qrCode" mode="aspectFit"></image>
- <view class="qr-tips">长按保存二维码,微信扫码添加</view>
- </view>
- <view class="qr-actions">
- <uv-button type="primary" @click="$refs.qrPopup.close()">知道了</uv-button>
- </view>
- </view>
- </uv-popup>
- </view>
- </template>
-
- <script>
- export default {
- data() {
- return {
- currentService: {},
- serviceList: [
- {
- name: '客服小美',
- contact: '微信:kefu001',
- avatar: '/static/image/avatar/kefu1.jpg',
- qrCode: '/static/image/qrcode/kefu1_qr.jpg'
- },
- {
- name: '客服小丽',
- contact: '手机:138-8888-8888',
- avatar: '/static/image/avatar/kefu2.jpg',
- qrCode: '/static/image/qrcode/kefu2_qr.jpg'
- },
- {
- name: '客服小雨',
- contact: '微信:kefu003',
- avatar: '/static/image/avatar/kefu3.jpg',
- qrCode: '/static/image/qrcode/kefu3_qr.jpg'
- },
- {
- name: '客服小花',
- contact: '手机:139-9999-9999',
- avatar: '/static/image/avatar/kefu4.jpg',
- qrCode: '/static/image/qrcode/kefu4_qr.jpg'
- }
- ]
- }
- },
- methods: {
- // 显示二维码弹窗
- showQRCode(service) {
- this.currentService = service
- this.$refs.qrPopup.open('center')
- }
- }
- }
- </script>
-
- <style scoped lang="scss">
- .customer-service {
- background-color: #f5f5f5;
- min-height: 100vh;
-
- .content {
- padding: 20rpx;
- }
-
- .intro {
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
- padding: 40rpx;
- border-radius: 20rpx;
- margin-bottom: 30rpx;
-
- .title {
- color: #fff;
- font-size: 36rpx;
- font-weight: bold;
- margin-bottom: 10rpx;
- }
-
- .desc {
- color: rgba(255, 255, 255, 0.8);
- font-size: 28rpx;
- }
- }
-
- .service-list {
- background-color: #fff;
- border-radius: 20rpx;
- padding: 20rpx;
- margin-bottom: 30rpx;
-
- .service-item {
- display: flex;
- align-items: center;
- padding: 30rpx 20rpx;
- border-bottom: 1rpx solid #f0f0f0;
-
- &:last-child {
- border-bottom: none;
- }
-
- .avatar {
- width: 80rpx;
- height: 80rpx;
- border-radius: 50%;
- margin-right: 20rpx;
- }
-
- .info {
- flex: 1;
-
- .name {
- font-size: 32rpx;
- font-weight: bold;
- color: #333;
- margin-bottom: 8rpx;
- }
-
- .contact {
- font-size: 26rpx;
- color: #666;
- }
- }
- }
- }
-
- .qr-popup {
- padding: 40rpx;
- text-align: center;
- width: 600rpx;
-
- .qr-header {
- margin-bottom: 30rpx;
-
- .title {
- font-size: 36rpx;
- font-weight: bold;
- color: #333;
- margin-bottom: 10rpx;
- }
-
- .subtitle {
- font-size: 28rpx;
- color: #666;
- }
- }
-
- .qr-content {
- margin-bottom: 30rpx;
-
- .qr-code {
- width: 400rpx;
- height: 400rpx;
- border-radius: 20rpx;
- margin-bottom: 20rpx;
- }
-
- .qr-tips {
- font-size: 24rpx;
- color: #999;
- line-height: 1.5;
- }
- }
-
- .qr-actions {
- display: flex;
- justify-content: center;
- }
- }
- }
- </style>
|