|
@@ -508,7 +508,7 @@ export default defineComponent({
|
|
|
<i class={styles.bottom_line}></i>
|
|
|
</span>
|
|
|
</div>
|
|
|
- <div class={styles.vip_member_tip}></div>
|
|
|
+ <div class={styles.svip_member_tip}></div>
|
|
|
</div>
|
|
|
</div>
|
|
|
) : null}
|
|
@@ -530,117 +530,122 @@ export default defineComponent({
|
|
|
)}
|
|
|
|
|
|
{/* 选择会员模式 */}
|
|
|
- <div class={styles.system_list_section}>
|
|
|
- <div
|
|
|
- class={[
|
|
|
- styles['system-list'],
|
|
|
- state.tabActive === 'VIP' ? styles.system_list_vip : '',
|
|
|
- memberInfos.value.memberLength === 2 ? styles.list_two : '',
|
|
|
- memberInfos.value.memberLength === 1 ? styles.list_one : ''
|
|
|
- ]}
|
|
|
- >
|
|
|
- {memberInfos.value.memberLength >= 2 ? (
|
|
|
- <>
|
|
|
- {state.memberShowList.map((member: any) => (
|
|
|
- <div
|
|
|
- class={[
|
|
|
- styles['system-item'],
|
|
|
- member.id === state.selectMember.id
|
|
|
- ? styles.active
|
|
|
- : '',
|
|
|
- member.discount === 1 ? styles.discountItem : ''
|
|
|
- ]}
|
|
|
- onClick={() => {
|
|
|
- state.selectMember = member
|
|
|
- }}
|
|
|
- >
|
|
|
- {/* 只有永久才会有数量提示 */}
|
|
|
- {member.period === 'PERPETUAL' && (
|
|
|
- <span class={[styles.iconPermanent]}></span>
|
|
|
- )}
|
|
|
-
|
|
|
- <p class={styles.s_title}>{member.title}</p>
|
|
|
- {member.discount === 1 && (
|
|
|
- <span class={styles.discountTag}></span>
|
|
|
- )}
|
|
|
- <p class={styles.price}>
|
|
|
- <span>¥</span>
|
|
|
- {moneyFormat(calcSalePrice(member), '0,0[.]00')}
|
|
|
- </p>
|
|
|
- <del
|
|
|
+ {(vipList.value.length > 0 || svipList.value.length > 0) && (
|
|
|
+ <div class={styles.system_list_section}>
|
|
|
+ <div
|
|
|
+ class={[
|
|
|
+ styles['system-list'],
|
|
|
+ state.tabActive === 'VIP' ? styles.system_list_vip : '',
|
|
|
+ memberInfos.value.memberLength === 2 ? styles.list_two : '',
|
|
|
+ memberInfos.value.memberLength === 1 ? styles.list_one : ''
|
|
|
+ ]}
|
|
|
+ >
|
|
|
+ {memberInfos.value.memberLength >= 2 ? (
|
|
|
+ <>
|
|
|
+ {state.memberShowList.map((member: any) => (
|
|
|
+ <div
|
|
|
class={[
|
|
|
- styles.originalPrice,
|
|
|
- calcSalePrice(member) >= member.originalPrice ||
|
|
|
- member.desc
|
|
|
- ? styles.originalPriceHide
|
|
|
- : ''
|
|
|
+ styles['system-item'],
|
|
|
+ member.id === state.selectMember.id
|
|
|
+ ? styles.active
|
|
|
+ : '',
|
|
|
+ member.discount === 1 ? styles.discountItem : ''
|
|
|
]}
|
|
|
+ onClick={() => {
|
|
|
+ state.selectMember = member
|
|
|
+ }}
|
|
|
>
|
|
|
- ¥{moneyFormat(member.originalPrice, '0,0[.]00')}
|
|
|
- </del>
|
|
|
-
|
|
|
- {member.desc && (
|
|
|
- <p class={styles.extraTip}>{member.desc}</p>
|
|
|
- )}
|
|
|
- </div>
|
|
|
- ))}
|
|
|
- </>
|
|
|
- ) : (
|
|
|
- <>
|
|
|
- {/* 一条数据的样式 */}
|
|
|
- {state.memberShowList.map((member: any) => (
|
|
|
- <div class={[styles['system-item']]}>
|
|
|
- {/* 只有永久才会有数量提示 */}
|
|
|
- {member.period === 'PERPETUAL' && (
|
|
|
- <span class={[styles.iconPermanent]}></span>
|
|
|
- )}
|
|
|
-
|
|
|
- {member.discount === 1 && (
|
|
|
- <span class={styles.discountTag}></span>
|
|
|
- )}
|
|
|
- <div class={styles.oneInfo}>
|
|
|
- <div class={styles.priceS}>
|
|
|
- <p class={styles.price}>
|
|
|
- <span>¥</span>
|
|
|
- {moneyFormat(calcSalePrice(member), '0,0[.]00')}
|
|
|
- </p>
|
|
|
- <p class={styles.s_title}>{member.title}</p>
|
|
|
- </div>
|
|
|
{/* 只有永久才会有数量提示 */}
|
|
|
- {member.period === 'PERPETUAL' ? (
|
|
|
- <div class={styles.oneMaxNum}>限量1000份</div>
|
|
|
- ) : (
|
|
|
- <div
|
|
|
- class={[styles.oneMaxNum, styles.oneMaxNumPrice]}
|
|
|
- >
|
|
|
- ¥{member.originalPrice}
|
|
|
- </div>
|
|
|
+ {member.period === 'PERPETUAL' && (
|
|
|
+ <span class={[styles.iconPermanent]}></span>
|
|
|
+ )}
|
|
|
+
|
|
|
+ <p class={styles.s_title}>{member.title}</p>
|
|
|
+ {member.discount === 1 && (
|
|
|
+ <span class={styles.discountTag}></span>
|
|
|
+ )}
|
|
|
+ <p class={styles.price}>
|
|
|
+ <span>¥</span>
|
|
|
+ {moneyFormat(calcSalePrice(member), '0,0[.]00')}
|
|
|
+ </p>
|
|
|
+ <del
|
|
|
+ class={[
|
|
|
+ styles.originalPrice,
|
|
|
+ calcSalePrice(member) >= member.originalPrice ||
|
|
|
+ member.desc
|
|
|
+ ? styles.originalPriceHide
|
|
|
+ : ''
|
|
|
+ ]}
|
|
|
+ >
|
|
|
+ ¥{moneyFormat(member.originalPrice, '0,0[.]00')}
|
|
|
+ </del>
|
|
|
+
|
|
|
+ {member.desc && (
|
|
|
+ <p class={styles.extraTip}>{member.desc}</p>
|
|
|
)}
|
|
|
</div>
|
|
|
- <span
|
|
|
- class={[
|
|
|
- styles.oneBtn,
|
|
|
- ['EXPIREVIP', 'VIP', 'PERMANENT'].includes(
|
|
|
- userMemberStatus.value
|
|
|
- )
|
|
|
- ? styles.onBtnRenew
|
|
|
- : '',
|
|
|
- userMemberStatus.value === 'PERMANENT'
|
|
|
- ? styles.onBtnDisbled
|
|
|
- : ''
|
|
|
- ]}
|
|
|
- onClick={() => {
|
|
|
- if (userMemberStatus.value === 'PERMANENT') return
|
|
|
- onSubmit()
|
|
|
- }}
|
|
|
- ></span>
|
|
|
- <i class={styles.itemBg}></i>
|
|
|
- </div>
|
|
|
- ))}
|
|
|
- </>
|
|
|
- )}
|
|
|
+ ))}
|
|
|
+ </>
|
|
|
+ ) : (
|
|
|
+ <>
|
|
|
+ {/* 一条数据的样式 */}
|
|
|
+ {state.memberShowList.map((member: any) => (
|
|
|
+ <div class={[styles['system-item']]}>
|
|
|
+ {/* 只有永久才会有数量提示 */}
|
|
|
+ {member.period === 'PERPETUAL' && (
|
|
|
+ <span class={[styles.iconPermanent]}></span>
|
|
|
+ )}
|
|
|
+
|
|
|
+ {member.discount === 1 && (
|
|
|
+ <span class={styles.discountTag}></span>
|
|
|
+ )}
|
|
|
+ <div class={styles.oneInfo}>
|
|
|
+ <div class={styles.priceS}>
|
|
|
+ <p class={styles.price}>
|
|
|
+ <span>¥</span>
|
|
|
+ {moneyFormat(calcSalePrice(member), '0,0[.]00')}
|
|
|
+ </p>
|
|
|
+ <p class={styles.s_title}>{member.title}</p>
|
|
|
+ </div>
|
|
|
+ {/* 只有永久才会有数量提示 */}
|
|
|
+ {member.period === 'PERPETUAL' ? (
|
|
|
+ <div class={styles.oneMaxNum}>限量1000份</div>
|
|
|
+ ) : (
|
|
|
+ <div
|
|
|
+ class={[
|
|
|
+ styles.oneMaxNum,
|
|
|
+ styles.oneMaxNumPrice
|
|
|
+ ]}
|
|
|
+ >
|
|
|
+ ¥{member.originalPrice}
|
|
|
+ </div>
|
|
|
+ )}
|
|
|
+ </div>
|
|
|
+ <span
|
|
|
+ class={[
|
|
|
+ styles.oneBtn,
|
|
|
+ ['EXPIREVIP', 'VIP', 'PERMANENT'].includes(
|
|
|
+ userMemberStatus.value
|
|
|
+ )
|
|
|
+ ? styles.onBtnRenew
|
|
|
+ : '',
|
|
|
+ userMemberStatus.value === 'PERMANENT'
|
|
|
+ ? styles.onBtnDisbled
|
|
|
+ : ''
|
|
|
+ ]}
|
|
|
+ onClick={() => {
|
|
|
+ if (userMemberStatus.value === 'PERMANENT') return
|
|
|
+ onSubmit()
|
|
|
+ }}
|
|
|
+ ></span>
|
|
|
+ <i class={styles.itemBg}></i>
|
|
|
+ </div>
|
|
|
+ ))}
|
|
|
+ </>
|
|
|
+ )}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ )}
|
|
|
|
|
|
{/* 是选择会员 会员天数大于0 */}
|
|
|
{state.tabActive === 'VIP' &&
|
|
@@ -655,18 +660,23 @@ export default defineComponent({
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <ColSticky position="bottom">
|
|
|
- <div class={styles.btnGroup}>
|
|
|
- <Button
|
|
|
- block
|
|
|
- color="linear-gradient( 241deg, #FFD984 0%, #FFEAB9 100%)"
|
|
|
- class={[styles.btn, isPermanent.value ? styles.btnDisabled : '']}
|
|
|
- onClick={onSubmit}
|
|
|
- >
|
|
|
- {btnSubmitText.value}
|
|
|
- </Button>
|
|
|
- </div>
|
|
|
- </ColSticky>
|
|
|
+ {(vipList.value.length > 0 || svipList.value.length > 0) && (
|
|
|
+ <ColSticky position="bottom">
|
|
|
+ <div class={styles.btnGroup}>
|
|
|
+ <Button
|
|
|
+ block
|
|
|
+ color="linear-gradient( 241deg, #FFD984 0%, #FFEAB9 100%)"
|
|
|
+ class={[
|
|
|
+ styles.btn,
|
|
|
+ isPermanent.value ? styles.btnDisabled : ''
|
|
|
+ ]}
|
|
|
+ onClick={onSubmit}
|
|
|
+ >
|
|
|
+ {btnSubmitText.value}
|
|
|
+ </Button>
|
|
|
+ </div>
|
|
|
+ </ColSticky>
|
|
|
+ )}
|
|
|
|
|
|
<Popup
|
|
|
v-model:show={state.shareStatus}
|