quanwei
2 days ago 04102f7237efefa744090ed7c25f7b5d0807b679
mobile/pages/plus/business/index.vue
@@ -3,7 +3,7 @@
      <!-- 名片展示区域 -->
      <view class="content">
         <view class="business-card">
            <image style="width: 100%;" @tap="viewPicture(businessImage)" mode="widthFix" :src="businessImage">
            <image class="card-image" @tap="viewPicture(businessImage)" mode="widthFix" :src="businessImage">
            </image>
         </view>
@@ -13,6 +13,7 @@
            <view class="btn" @click="switchCard()">切换名片</view>
            <button open-type="share" class="btn">分享名片</button>
            <view class="btn" @click="topUpCard()">置顶名片</view>
            <view class="btn" @click="gotoChatList()">聊天记录</view>
         </view>
         <!-- 数据统计区域 -->
@@ -64,8 +65,10 @@
                     <uni-swipe-action-item :right-options="rightOptions" @click="handleDel(index, card)">
                        <view @click="selectCard(index)" class="card-item">
                           <view :class="{active: card.is_default==1}" class="card-preview">
                              <image style="width: 650rpx;border-radius: 12rpx;" :src="card.mp" mode="widthFix"></image>
                              <image v-show="card.is_default==1" src="@/static/icon/mrmp.png" class="mrmp"></image>
                              <image style="width: 650rpx;border-radius: 12rpx;" :src="card.mp"
                                 mode="widthFix"></image>
                              <image v-show="card.is_default==1" src="@/static/icon/mrmp.png" class="mrmp">
                              </image>
                           </view>
                        </view>
                     </uni-swipe-action-item>
@@ -109,8 +112,8 @@
<script>
   import Popup from '@/components/uni-popup.vue';
import uniSwipeAction from '@/uni_modules/uni-swipe-action/components/uni-swipe-action/uni-swipe-action.vue';
import uniSwipeActionItem from '@/uni_modules/uni-swipe-action/components/uni-swipe-action-item/uni-swipe-action-item.vue';
   import uniSwipeAction from '@/uni_modules/uni-swipe-action/components/uni-swipe-action/uni-swipe-action.vue';
   import uniSwipeActionItem from '@/uni_modules/uni-swipe-action/components/uni-swipe-action-item/uni-swipe-action-item.vue';
   export default {
      components: {
         Popup,
@@ -122,6 +125,7 @@
            businessImage: '',
            business_card_id: '',
            height: 0,
            cardWidth: 0, // 名片宽度
            businessList: [],
            current: 0,
            statistics: {},
@@ -142,6 +146,11 @@
      },
      onLoad() {
         this.screenWidth = uni.getSystemInfoSync().windowWidth * 2 - 70;
         // 计算名片宽度:屏幕宽度减去左右padding(40rpx)
         const systemInfo = uni.getSystemInfoSync();
         this.cardWidth = (systemInfo.windowWidth * 2) - 40; // rpx单位
      },
      onShow() {
         this.getbusinessList();
         this.getVisitorList();
      },
@@ -155,9 +164,9 @@
            }, function(res) {
               _this.businessList = res.data.data;
               if (_this.businessList.length > 0) {
                  for(let i in _this.businessList){
                     if(_this.businessList[i].is_default==1){
                        _this.current=i;
                  for (let i in _this.businessList) {
                     if (_this.businessList[i].is_default == 1) {
                        _this.current = i;
                     }
                  }
                  _this.getbusiness(_this.businessList[_this.current].user_id)
@@ -235,6 +244,10 @@
               this.gotoPage(
                  `/pages/plus/business/add?business_card_id=${this.businessList[this.current].business_card_id}`
               );
            } else {
               this.gotoPage(
                  `/pages/plus/business/add`
               );
            }
         },
         switchCard() {
@@ -256,11 +269,18 @@
         },
         shareCard() {
            // 分享名片逻辑
         },
         viewAllVisitors() {
            // 查看全部访客
            this.gotoPage('/pages/plus/business/visitors');
         },
         // 跳转到聊天记录页面
         gotoChatList() {
            uni.navigateTo({
               url: '/pages/plus/business/chat/list'
            });
         },
         // 置顶名片
         topUpCard() {
@@ -342,7 +362,7 @@
               this.showToast('默认名片不能删除');
               return;
            }
            uni.showModal({
               title: '提示',
               content: '确定要删除这个名片吗?',
@@ -356,12 +376,13 @@
                           // 删除成功,更新列表
                           this.businessList.splice(index, 1);
                           this.showToast('删除成功');
                           // 如果删除的是当前选中的名片,切换到第一个名片
                           if (index === this.current) {
                              if (this.businessList.length > 0) {
                                 this.current = 0;
                                 this.getStatistics(this.businessList[this.current].business_card_id);
                                 this.getStatistics(this.businessList[this.current]
                                    .business_card_id);
                              }
                           } else if (index < this.current) {
                              // 如果删除的是当前选中名片之前的,current减1
@@ -420,6 +441,15 @@
      background: #fff;
      border-radius: 20rpx;
      overflow: hidden;
      box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.08);
      .card-image {
         width: 100%;
         display: block;
         // 确保图片清晰度,使用高质量渲染
         image-rendering: -webkit-optimize-contrast;
         image-rendering: crisp-edges;
      }
      .top-image {
         width: 100%;
@@ -622,6 +652,13 @@
            .card-preview {
               border-radius: 12rpx;
               position: relative;
               overflow: hidden;
               image {
                  // 保持图片原始清晰度
                  display: block;
                  image-rendering: -webkit-optimize-contrast;
               }
               .mrmp {
                  height: 50rpx;