Explorar el Código

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner into dev

Xiao_123 hace 4 meses
padre
commit
d3e91dccde

+ 1 - 1
components.d.ts

@@ -43,7 +43,7 @@ declare module 'vue' {
     IndustryTypeCard: typeof import('./src/components/industryTypeCard/index.vue')['default']
     Info: typeof import('./src/components/Enterprise/info.vue')['default']
     InitPay: typeof import('./src/components/personalRecharge/initPay.vue')['default']
-    Item: typeof import('./src/components/Position/item.vue')['default']
+    Item: typeof import('./src/components/PositionLongStrip/item.vue')['default']
     JobTypeCard: typeof import('./src/components/jobTypeCard/index.vue')['default']
     ListGroup: typeof import('./src/components/FormUI/nestedListGroup/components/listGroup.vue')['default']
     Loading: typeof import('./src/components/Loading/index.vue')['default']

+ 10 - 80
src/components/FormUI/su-number-box/su-number-box.vue

@@ -1,26 +1,11 @@
 <template>
   <view class="uni-numbox">
-    <!-- <view @click="_calcValue('minus')" class="uni-numbox__minus uni-numbox-btns" :style="{ background }"> -->
-    <!-- <text class="uni-numbox--text" :class="{ 'uni-numbox--disabled': inputValue <= min || disabled }"
-				:style="{ color }">
-				-
-			</text> -->
-    <!-- <text
-      class="cicon-move-round"
-      :class="{
-        'uni-numbox--disabled': inputValue <= min || disabled,
-        'groupon-btn': activity === 'groupon',
-        'seckill-btn': activity === 'seckill',
-      }"
-      @click="_calcValue('minus')"
-    ></text> -->
     <v-btn
       icon="mdi-minus" 
       size="x-small" 
       :disabled="inputValue <= min || disabled" 
       @click="_calcValue('minus')"
     ></v-btn>
-    <!-- </view> -->
     <input
       :disabled="disabled"
       @focus="_onFocus"
@@ -30,18 +15,6 @@
       v-model="inputValue"
       :style="{ color }"
     />
-    <!-- <view @click="_calcValue('plus')" class="uni-numbox__plus uni-numbox-btns">
-			<text class="uni-numbox--text" :class="{ 'uni-numbox--disabled': inputValue >= max || disabled }">+</text>
-		</view> -->
-    <!-- <text
-      class="cicon-add-round"
-      :class="{
-        'uni-numbox--disabled': inputValue >= max || disabled,
-        'groupon-btn': activity === 'groupon',
-        'seckill-btn': activity === 'seckill',
-      }"
-      @click="_calcValue('plus')"
-    ></text> -->
     <v-btn
       icon="mdi-plus" 
       size="x-small" 
@@ -182,11 +155,6 @@
         return scale;
       },
       _onBlur(event) {
-        // let value = event.detail.value;
-        // if (!value) {
-        //   // this.inputValue = 0;
-        //   return;
-        // }
         let value = this.inputValue;
         this.$emit('blur', value);
         value = +value;
@@ -207,52 +175,14 @@
   };
 </script>
 <style lang="scss" scoped>
-  .uni-numbox .uni-numbox--disabled {
-    color: #c0c0c0 !important;
-    /* #ifdef H5 */
-    cursor: not-allowed;
-    /* #endif */
-  }
-
-  .uni-numbox {
-    /* #ifndef APP-NVUE */
-    display: flex;
-    /* #endif */
-    align-items: center;
-  }
-
-  .uni-numbox__value {
-    width: 70px;
-    text-align: center;
-    // font-size: 30rpx;
-  }
-
-  .cicon-move-round {
-    font-size: 44rpx;
-    color: var(--ui-BG-Main);
-  }
-
-  .cicon-add-round {
-    font-size: 44rpx;
-    color: var(--ui-BG-Main);
-  }
-
-  .groupon-btn {
-    color: #ff6000;
-  }
-
-  .seckill-btn {
-    color: #ff5854;
-  }
-
-  input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{
-    -webkit-appearance: none !important;
-    margin: 0; 
-  }
-  .inputItem {
-    width: 70px; 
-    border: 1px solid #eee; 
-    padding: 2px 5px; 
-    text-align: center;
-  }
+input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{
+  -webkit-appearance: none !important;
+  margin: 0; 
+}
+.inputItem {
+  width: 70px; 
+  border: 1px solid #eee; 
+  padding: 2px 5px; 
+  text-align: center;
+}
 </style>

+ 1 - 1
src/views/mall/components/details.vue

@@ -3,7 +3,7 @@
   <div class="default-width py-5" v-if="state.goodsInfo && Object.keys(state.goodsInfo).length">
     <div class="d-flex justify-space-between">
       <v-btn class="mb-3" size="large" color="primary" variant="text" prepend-icon="mdi-chevron-triple-left" @click="router.go(-1)">返回上一页</v-btn>
-      <v-btn class="mb-3" size="large" color="primary" variant="text" prepend-icon="mdi-account-circle-outline" to="/mall/user/order">我的订单</v-btn>
+      <v-btn v-if="getToken()" class="mb-3" size="large" color="primary" variant="text" prepend-icon="mdi-account-circle-outline" to="/mall/user/order">我的订单</v-btn>
     </div>
     <v-card class="carousel border-radius-8 white-bgc pa-5" style="width: 100%;">
       <div class=" d-flex">

+ 15 - 15
src/views/mall/components/details/comment-item.vue

@@ -4,14 +4,12 @@
     <!-- 用户评论 -->
     <div class="d-flex align-center mb-2">
       <div class="d-flexx mr-3">
-        <!-- <image class="avatar" :src="item.userAvatar"></image> -->
         <v-avatar class="avatar">
           <v-img alt="" :src="getUserAvatar(item.userAvatar, '1')" ></v-img>
         </v-avatar>
       </div>
       <div class="nickname mr-3 mb-1">{{ item.userNickname }}</div>
       <div class="">
-        <!-- <uni-rate :readonly="true" v-model="item.scores" size="18" /> -->
         <v-rating
           readonly
           :length="5"
@@ -64,43 +62,45 @@ const handleClick = (index) => {
 
 <style lang="scss" scoped>
   .avatar {
-    width: 52rpx;
-    height: 52rpx;
+    width: 40px;
+    height: 40px;
     border-radius: 50%;
   }
 
   .nickname {
-    font-size: 26rpx;
+    font-size: 14px;
     font-weight: 500;
     color: #999999;
   }
 
   .content {
-    width: 636rpx;
-    font-size: 26rpx;
+    width: 100%;
+    font-size: 14px;
     font-weight: 400;
     color: #333333;
   }
 
   .reply-box {
     background: #f8f8f8;
-    border-radius: 8rpx;
-    padding: 16rpx;
+    border-radius: 4px;
+    padding: 16px;
+    width: 100%;
   }
 
   .reply-title {
-    // position: absolute;
+    position: absolute;
     font-weight: 400;
-    font-size: 26rpx;
-    line-height: 40rpx;
+    font-size: 14px;
+    line-height: 32px;
     color: #333333;
   }
 
   .reply-content {
-    text-indent: 128rpx;
+    text-indent: 80px;
     font-weight: 400;
-    font-size: 26rpx;
-    line-height: 40rpx;
+    font-size: 14px;
+    line-height: 32px;
     color: #333333;
+    width: 100%;
   }
 </style>

+ 9 - 0
src/views/mall/components/details/describe.vue

@@ -16,4 +16,13 @@ const props = defineProps({
 // console.log('content:', props.content)
 </script>
 <style lang="scss" scoped>
+.detailsBox {
+  width: 100%;
+}
+:deep(img) {
+  max-width: 100%;
+}
+:deep(ol) {
+  margin: 0 20px;
+}
 </style>

+ 2 - 43
src/views/mall/components/details/detail-comment-card.vue

@@ -15,7 +15,7 @@
       <v-tabs v-model="currentTab" align-tabs="start" color="#ff8a04" @update:model-value="onTabsChange">
         <v-tab v-for="item of typeList" :key="item.name" :value="item.tab">{{ item.name }}</v-tab>
       </v-tabs>
-      <div class="card-content mt-5 px-3" style="min-height: 300px;">
+      <div class="card-content mt-8 px-3" style="min-height: 300px;">
         <template v-if="state.commentList.length">
           <div class="comment-box" v-for="item in state.commentList" :key="item.id">
             <comment-item :item="item" />
@@ -101,57 +101,16 @@
 
 <style lang="scss" scoped>
   .detail-comment-card {
-    margin: 0 20rpx 20rpx 20rpx;
-    padding: 20rpx 20rpx 0 20rpx;
     .card-header {
-      .line {
-        width: 6rpx;
-        height: 30rpx;
-        background: linear-gradient(180deg, var(--v-primary-base) 0%, var(--v-primary-lighten1) 100%);
-        border-radius: 3rpx;
-      }
-
-      .title {
-        font-size: 30rpx;
-        font-weight: bold;
-        line-height: normal;
-      }
-
       .des {
-        font-size: 24rpx;
         color: #999999;
       }
-
-      .more-btn {
-        font-size: 24rpx;
-        color: var(--v-primary-base);
-        line-height: normal;
-      }
-
-      .cicon-forward {
-        font-size: 24rpx;
-        line-height: normal;
-        color: var(--v-primary-base);
-        margin-top: 4rpx;
-      }
     }
   }
   .comment-box {
-    border-bottom: 2rpx solid #eeeeee;
+    // border-bottom: 1px solid #eeeeee;
     &:last-child {
       border: none;
     }
   }
-  .tabClass {
-    color: #666;
-    cursor: pointer;
-    font-size: 18px;
-    font-weight: 400;
-    letter-spacing: 0;
-    margin-right: 32px;
-  }
-  .tabClassAct {
-    color: #1a1a1a;
-    font-weight: bold;
-  }
 </style>

+ 2 - 2
src/views/mall/components/details/order/addressSelection.vue

@@ -13,8 +13,8 @@
               <div class="phone ml-3">{{ state.addressInfo.mobile }}</div>
             </div>
             <div class="d-flex mt-1">
-              <div class="default font-color" v-if="state.addressInfo.defaultStatus">[默认]</div>
-              <div class="line2 ml-3">
+              <div class="default font-color mr-3" v-if="state.addressInfo.defaultStatus">[默认]</div>
+              <div class="line2">
                 {{ state.addressInfo.areaName }} {{ state.addressInfo.detailAddress }}
               </div>
             </div>

+ 4 - 109
src/views/mall/components/details/order/confirm.vue

@@ -22,11 +22,7 @@
       <div>
         <div class="order-item d-flex">
           <div class="item-title mr-3 ">商品金额:</div>
-          <div>
-            <span class="item-value">
-              ¥{{ fen2yuan(state.orderInfo.price.totalPrice) }}
-            </span>
-          </div>
+          <div>¥{{ fen2yuan(state.orderInfo.price.totalPrice) }}</div>
         </div>
         <!-- 快递配置时,信息的展示 -->
         <div
@@ -35,7 +31,7 @@
         >
           <div class="item-title mr-3">运{{ spaces() }}费:</div>
           <div>
-            <span class="item-value text-red" v-if="state.orderInfo.price.deliveryPrice > 0">
+            <span class="text-red" v-if="state.orderInfo.price.deliveryPrice > 0">
               +¥{{ fen2yuan(state.orderInfo.price.deliveryPrice) }}
             </span>
             <div class="item-value" v-else>免运费</div>
@@ -158,23 +154,6 @@
     await getOrderInfo()
   }
 
-
-  // ========== 积分 ==========
-  /**
-   * 使用积分抵扣
-   */
-  const changeIntegral = async () => {
-    state.pointStatus = !state.pointStatus;
-    await getOrderInfo();
-  };
-
-  // 选择优惠券
-  async function onSelectCoupon(couponId) {
-    state.orderPayload.couponId = couponId;
-    await getOrderInfo();
-    state.showCoupon = false;
-  }
-
   // 提交订单
   function onConfirm() {
     if (addressState.value.deliveryType === 1 && !addressState.value.addressInfo.id) {
@@ -219,7 +198,7 @@
     };
     const res = await payOrderSubmit(obj)
     console.log('提交支付订单payOrderSubmit:', res)
-    Snackbar.warning('支付成功!')
+    Snackbar.warning('支付成功,请前往我的订单查看!')
     emit('paySuccess')
     userStore.getUserInfos()
   }
@@ -281,7 +260,6 @@
     //     id: data.id,
     //   });
     // }
-
   }
 
   // 检查库存 & 计算订单价格
@@ -328,102 +306,19 @@
 
 <style lang="scss" scoped>
   .addressBox {
-    // border: 1px solid #000;
     margin-bottom: 20px;
   }
   .goodsListBox {
     background: linear-gradient(to bottom, #e93323 0%, #e93323 100%);
     // background: linear-gradient(to bottom, var(--v-primary-base) 0%, var(--v-primary-base) 100%);
   }
-  .score-img {
-    width: 36rpx;
-    height: 36rpx;
-    margin: 0 4rpx;
-  }
-
   .order-item {
-    height: 80rpx;
-
-    .item-title {
-      font-size: 28rpx;
-      font-weight: 400;
-      color: #7a7a7a;
-    }
-
-    .item-value {
-      font-size: 28rpx;
-      font-weight: 500;
-      color: #7a7a7a;
-    }
-
-    .text-disabled {
-      color: #070606;
-    }
-
-    .item-icon {
-      color: #999;
-    }
-
-    .remark-input {
-      text-align: right;
-    }
-
-    .item-placeholder {
-      color: #999;
-      font-size: 26rpx;
-      text-align: right;
-    }
+    color: #7a7a7a;
   }
 
   .total-box-footer {
-    height: 90rpx;
-
     .total-num {
       color: #7a7a7a;
     }
   }
-
-  .footer-box {
-    height: 100rpx;
-
-    .submit-btn {
-      width: 240rpx;
-      height: 70rpx;
-      font-size: 28rpx;
-      font-weight: 500;
-
-      .goto-pay-text {
-        line-height: 28rpx;
-      }
-    }
-
-    .cancel-btn {
-      width: 240rpx;
-      height: 80rpx;
-      font-size: 26rpx;
-      background-color: #e5e5e5;
-      color: #999;
-    }
-  }
-
-  .title {
-    font-size: 36rpx;
-    font-weight: bold;
-    color: #333333;
-  }
-
-  .subtitle {
-    font-size: 28rpx;
-    color: #999999;
-  }
-
-  .cicon-checkbox {
-    font-size: 36rpx;
-    color: var(--v-primary-base);
-  }
-
-  .cicon-box {
-    font-size: 36rpx;
-    color: #999999;
-  }
 </style>

+ 1 - 1
src/views/mall/components/s-goods-item/index.vue

@@ -37,7 +37,7 @@
    *
    * @property {String} img 											- 图片
    * @property {String} title 										- 标题
-   * @property {Number} titleWidth = 0								- 标题宽度,默认0,单位rpx
+   * @property {Number} titleWidth = 0								- 标题宽度,默认0,单位
    * @property {String} skuText 										- 规格
    * @property {String | Number} price 								- 价格
    * @property {String} priceColor 									- 价格颜色