|
|
@@ -9,6 +9,13 @@
|
|
|
fit="cover"
|
|
|
class="top-img"
|
|
|
/>
|
|
|
+ <div
|
|
|
+ class="history"
|
|
|
+ v-if="isMinter"
|
|
|
+ @click="$router.push(`/productList?minterId=${info.id}&source=TRANSFER`)"
|
|
|
+ >
|
|
|
+ 历史创作
|
|
|
+ </div>
|
|
|
<div class="userInfo-content">
|
|
|
<div class="userInfo-top">
|
|
|
<van-image
|
|
|
@@ -28,7 +35,7 @@
|
|
|
<img v-if="info.authStatus === 'SUCCESS'" src="@assets/renzheng_icon_pre.png" alt="" />
|
|
|
</div>
|
|
|
<div class="text2">
|
|
|
- <span>{{ info.id }}</span>
|
|
|
+ <span>用户ID:{{ info.id }}</span>
|
|
|
<img @click="copy" src="@assets/svgs/copy_icon.svg" alt="" />
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -72,7 +79,7 @@
|
|
|
</div>
|
|
|
|
|
|
<van-sticky ref="top" :offset-top="bar.value.show ? 46 : 0">
|
|
|
- <div class="menu">
|
|
|
+ <div class="menu" v-if="isMinter">
|
|
|
<div class="menu-item" @click="changeMenu('DEFAULT')" :class="{ active: type === 'DEFAULT' }">
|
|
|
藏品类目
|
|
|
</div>
|
|
|
@@ -80,12 +87,21 @@
|
|
|
盲盒类目
|
|
|
</div>
|
|
|
<div class="flex1"></div>
|
|
|
- <div class="search" @click="$router.push(`/productSearch?minterId=${info.id}`)">
|
|
|
- <img src="@assets/svgs/search.svg" alt="" />
|
|
|
+ <van-checkbox @change="getData(true)" class="sala" v-model="salable">仅看在售</van-checkbox>
|
|
|
+ <div
|
|
|
+ class="search"
|
|
|
+ @click="
|
|
|
+ $router.push(
|
|
|
+ `/productSearch?${isMinter ? 'minterId' : 'ownerId'}=${info.id}&source=${sourceType}`
|
|
|
+ )
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <img src="@assets/icon-sosuo.png" alt="" />
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<van-tabs
|
|
|
+ v-else
|
|
|
v-model:active="salable"
|
|
|
:ellipsis="false"
|
|
|
@change="getData(true)"
|
|
|
@@ -94,6 +110,7 @@
|
|
|
>
|
|
|
<van-tab title="全部" name=""></van-tab>
|
|
|
<van-tab title="寄售" :name="true"></van-tab>
|
|
|
+ <van-tab title="仅展示" :name="false"></van-tab>
|
|
|
</van-tabs>
|
|
|
</van-sticky>
|
|
|
<van-list
|
|
|
@@ -139,6 +156,20 @@ export default {
|
|
|
};
|
|
|
}
|
|
|
return {};
|
|
|
+ },
|
|
|
+ isMinter() {
|
|
|
+ let authorities = [...(this.info.authorities || [])];
|
|
|
+ let info = authorities.find(item => {
|
|
|
+ return item.name == 'ROLE_MINTER';
|
|
|
+ });
|
|
|
+ return !!info;
|
|
|
+ },
|
|
|
+ sourceType() {
|
|
|
+ if (this.isMinter) {
|
|
|
+ return 'OFFICIAL,USER';
|
|
|
+ } else {
|
|
|
+ return 'TRANSFER';
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
inject: ['bar'],
|
|
|
@@ -161,16 +192,29 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
beforeData() {
|
|
|
- return {
|
|
|
- query: {
|
|
|
- type: this.type,
|
|
|
- salable: this.salable,
|
|
|
- minterId: this.info.id || this.$route.query.id,
|
|
|
- del: false,
|
|
|
- source: 'OFFICIAL,USER'
|
|
|
- },
|
|
|
- sort: this.sort
|
|
|
- };
|
|
|
+ if (this.isMinter) {
|
|
|
+ return {
|
|
|
+ query: {
|
|
|
+ type: this.type,
|
|
|
+ salable: this.salable || '',
|
|
|
+ minterId: this.info.id || this.$route.query.id,
|
|
|
+ del: false,
|
|
|
+ source: this.sourceType
|
|
|
+ },
|
|
|
+ sort: this.sort
|
|
|
+ };
|
|
|
+ } else {
|
|
|
+ return {
|
|
|
+ query: {
|
|
|
+ type: this.type,
|
|
|
+ salable: this.salable,
|
|
|
+ ownerId: this.info.id || this.$route.query.id,
|
|
|
+ del: false,
|
|
|
+ source: this.sourceType
|
|
|
+ },
|
|
|
+ sort: this.sort
|
|
|
+ };
|
|
|
+ }
|
|
|
},
|
|
|
copy() {
|
|
|
this.$copyText(this.info.id).then(
|
|
|
@@ -233,6 +277,9 @@ export default {
|
|
|
</script>
|
|
|
|
|
|
<style lang="less" scoped>
|
|
|
+/deep/.van-tab {
|
|
|
+ margin-right: 26px !important;
|
|
|
+}
|
|
|
.mine {
|
|
|
background-color: #0f0f0f;
|
|
|
}
|
|
|
@@ -240,6 +287,19 @@ export default {
|
|
|
padding-top: 35vw;
|
|
|
position: relative;
|
|
|
|
|
|
+ .history {
|
|
|
+ position: absolute;
|
|
|
+ right: 16px;
|
|
|
+ font-size: @font1;
|
|
|
+ color: #ffffff;
|
|
|
+ line-height: 24px;
|
|
|
+ padding: 0 10px;
|
|
|
+ background-color: fade(@bg, 80%);
|
|
|
+ border-radius: 13px;
|
|
|
+ top: calc(35vw - 34px);
|
|
|
+ z-index: 2;
|
|
|
+ }
|
|
|
+
|
|
|
.top-img {
|
|
|
position: absolute;
|
|
|
top: 0;
|
|
|
@@ -388,9 +448,44 @@ export default {
|
|
|
font-weight: bold;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ .search {
|
|
|
+ img {
|
|
|
+ width: 24px;
|
|
|
+ height: 24px;
|
|
|
+ display: block;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
.list {
|
|
|
padding: 8px 8px 100px;
|
|
|
}
|
|
|
+
|
|
|
+/deep/.sala {
|
|
|
+ margin-right: 10px;
|
|
|
+ .van-checkbox__icon {
|
|
|
+ color: #fff;
|
|
|
+ transform: scale(0.6);
|
|
|
+
|
|
|
+ .van-icon {
|
|
|
+ border-color: @text3;
|
|
|
+ }
|
|
|
+
|
|
|
+ &.van-checkbox__icon--checked {
|
|
|
+ .van-icon {
|
|
|
+ border-width: 0;
|
|
|
+ .linear();
|
|
|
+ &::before {
|
|
|
+ color: #fff;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .van-checkbox__label {
|
|
|
+ color: @text3;
|
|
|
+ margin-left: 0px;
|
|
|
+ font-size: @font1;
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|