shish před 1 měsícem
rodič
revize
b53f19dd69
1 změnil soubory, kde provedl 98 přidání a 6 odebrání
  1. 98 6
      ghsApp/src/pagesClient/member/detail.vue

+ 98 - 6
ghsApp/src/pagesClient/member/detail.vue

@@ -157,12 +157,28 @@
             </tui-list-cell>
 
             <view style="border:2upx solid #CCCCCC;">
-              <tui-list-cell class="line-cell" :hover="false">
-                <div class="tui-title">下单价格</div>
-                <button class="admin-button-com middle" :class="[form.level == 0 ? 'blue' : 'default']" @click="changeLevelBtn(0)">零售</button>
-                <button class="admin-button-com middle" :class="[form.level == 1 ? 'blue' : 'default']" @click="changeLevelBtn(1)" style="margin-left:5upx;">批发</button>
-                <button class="admin-button-com middle" :class="[form.level == 2 ? 'blue' : 'default']" @click="changeLevelBtn(2)" style="margin-left:5upx;">大客</button>
-                <button class="admin-button-com middle" :class="[form.level == 9 ? 'blue' : 'default']" @click="changeLevelBtn(9)" style="margin-left:5upx;">成本</button>
+              <tui-list-cell class="line-cell member-level-cell" :hover="false">
+                <view class="member-level-wrap">
+                  <view class="member-level-row">
+                    <view class="tui-title member-level-row__label">下单价格</view>
+                    <view class="member-level-row__btns">
+                      <button class="admin-button-com middle" :class="[form.level == 0 ? 'blue' : 'default']" @click="changeLevelBtn(0)">零售</button>
+                      <button class="admin-button-com middle member-level-row__btn" :class="[form.level == 1 ? 'blue' : 'default']" @click="changeLevelBtn(1)">批发</button>
+                    </view>
+                  </view>
+                  <view class="member-level-advanced">
+                    <text class="member-level-advanced__toggle" @click="toggleAdvancedLevel">
+                      {{ showAdvancedLevel ? '收起更多下单价格' : '展开更多下单价格' }}
+                      <text v-if="!showAdvancedLevel && isAdvancedLevel(form.level)" class="member-level-advanced__current">(当前:{{ levelLabel(form.level) }})</text>
+                    </text>
+                    <view class="member-level-row member-level-row--advanced" v-if="showAdvancedLevel">
+                      <view class="member-level-row__btns member-level-row__btns--advanced">
+                        <button class="admin-button-com middle member-level-row__btn member-level-row__btn--warn" :class="[form.level == 2 ? 'blue' : 'default']" @click="changeLevelBtn(2)">大客</button>
+                        <button class="admin-button-com middle member-level-row__btn member-level-row__btn--warn" :class="[form.level == 9 ? 'blue' : 'default']" @click="changeLevelBtn(9)">成本</button>
+                      </view>
+                    </view>
+                  </view>
+                </view>
               </tui-list-cell>
 
               <tui-list-cell class="line-cell" :hover="false" v-if="form.home == 1">
@@ -467,6 +483,7 @@ export default {
         staffId:0,
         debtLimitPay:0
       },
+      showAdvancedLevel: false,
       wlSelData: {},
       discount:null,
       tabsData: [
@@ -781,6 +798,19 @@ export default {
         }
       });
     },
+    /** 展开/收起大客、成本等高级价格档位 */
+    toggleAdvancedLevel() {
+      this.showAdvancedLevel = !this.showAdvancedLevel;
+    },
+    /** 是否为大客、成本等高级档位 */
+    isAdvancedLevel(level) {
+      return Number(level) === 2 || Number(level) === 9;
+    },
+    /** 价格档位文案 */
+    levelLabel(level) {
+      const map = { 0: '零售价', 1: '批发价', 2: '大客价', 9: '成本价' };
+      return map[level] || '';
+    },
     modifySeatSn(){
       if(this.$util.isEmpty(this.userInfo.seatSn)){
         this.$msg('请填写货位号')
@@ -1083,6 +1113,8 @@ export default {
         this.userInfo = res.data;
         this.form.debt = this.userInfo.debt
         this.form.level = this.userInfo.level
+        // 当前已是高级档位时默认展开,避免看不到选中状态
+        this.showAdvancedLevel = this.isAdvancedLevel(this.userInfo.level)
         this.form.black = this.userInfo.black
         this.form.delStatus = this.userInfo.delStatus
         this.form.showStock = this.userInfo.showStock
@@ -1238,6 +1270,66 @@ export default {
   margin-right:120upx;
 }
 
+/* 客户详情:下单价格,常用档与高级档分区,降低误触 */
+.member-level-cell {
+  align-items: flex-start;
+}
+
+.member-level-wrap {
+  flex: 1;
+  min-width: 0;
+}
+
+.member-level-row {
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  justify-content: space-between;
+
+  &__label {
+    flex-shrink: 0;
+    margin-right: 16upx;
+  }
+
+  &__btns {
+    display: flex;
+    flex-direction: row;
+    align-items: center;
+    flex-wrap: wrap;
+    justify-content: flex-end;
+    flex: 1;
+  }
+
+  &__btn {
+    margin-left: 20upx;
+    margin-top: 0;
+
+    &--warn {
+      border-color: #f5a623;
+    }
+  }
+
+  &--advanced {
+    margin-top: 16upx;
+    justify-content: flex-end;
+  }
+}
+
+.member-level-advanced {
+  margin-top: 16upx;
+
+  &__toggle {
+    font-size: 28upx;
+    color: #3385ff;
+    line-height: 38upx;
+  }
+
+  &__current {
+    color: #fa3534;
+    margin-left: 8upx;
+  }
+}
+
 /* 客户详情:收货地址卡片,与上方客户信息区独立留白 */
 .address-block {
   &__head {