|
|
@@ -28,7 +28,7 @@
|
|
|
<div
|
|
|
class="product"
|
|
|
:class="{ active: chooseId === item.id }"
|
|
|
- v-for="item in list"
|
|
|
+ v-for="item in showList"
|
|
|
:key="item.id"
|
|
|
@click="choose(item.id)"
|
|
|
>
|
|
|
@@ -69,11 +69,11 @@
|
|
|
:border="false"
|
|
|
name="uploader"
|
|
|
label="上传图片"
|
|
|
- :rules="[{ required: true, message: '请上传图片' }]"
|
|
|
+ :rules="[{ required: true, message: '请上传星图' }]"
|
|
|
>
|
|
|
<template #label>
|
|
|
<div class="title">
|
|
|
- <span>上传图片</span>
|
|
|
+ <span>上传星图</span>
|
|
|
<span>建议1:1大小,图片不大于250KB</span>
|
|
|
</div>
|
|
|
</template>
|
|
|
@@ -89,19 +89,19 @@
|
|
|
</template>
|
|
|
</van-field>
|
|
|
<van-field
|
|
|
- name="图片名称"
|
|
|
- label="图片名称"
|
|
|
- placeholder="请输入图片名称"
|
|
|
+ name="星图名称"
|
|
|
+ label="星图名称"
|
|
|
+ placeholder="请输入星图名称"
|
|
|
v-model="form.picName"
|
|
|
required
|
|
|
- :rules="[{ required: true, message: '请填写图片名称' }]"
|
|
|
+ :rules="[{ required: true, message: '请填写星图名称' }]"
|
|
|
/>
|
|
|
<van-field
|
|
|
:border="false"
|
|
|
class="textarea"
|
|
|
- name="图片介绍"
|
|
|
- label="图片介绍"
|
|
|
- placeholder="请输入图片介绍,让大家更了解~"
|
|
|
+ name="星图介绍"
|
|
|
+ label="星图介绍"
|
|
|
+ placeholder="请输入星图介绍,让大家更了解~"
|
|
|
v-model="form.picDesc"
|
|
|
clearable
|
|
|
rows="4"
|
|
|
@@ -109,32 +109,49 @@
|
|
|
type="textarea"
|
|
|
maxlength="800"
|
|
|
show-word-limit
|
|
|
- :rules="[{ required: true, message: '请输入问题描述' }]"
|
|
|
+ :rules="[{ required: true, message: '请填写星图介绍' }]"
|
|
|
/>
|
|
|
<div class="tips">
|
|
|
<div class="text1">铸造提示</div>
|
|
|
<div class="text2">
|
|
|
1.所有上传作品,需后台审核。审核成功后,冷却期为24小时,在藏品室可查看,但是不可以进行展示与转让。24小时到后,可进行展示与转让。<br />
|
|
|
- 2.上传作品,仅可展示,可以转让,不可以交易
|
|
|
+ 2.上传作品,仅可展示,可以转让,不可以交易。<br />
|
|
|
+ 3.审核标准:上传内容不得涉及政治、低俗、暴力、血腥、色情、违禁品等内容,一经发现,立即封号处理。<br />
|
|
|
+ 4.请上传个人原创作品,作品内容形式不限,作品一经上传无法修改。<br />
|
|
|
+ 5.最终解释权归RAEX绿洲宇宙平台所有。
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="btn btns">
|
|
|
<van-button type="primary" @click="step = 0" plain round> 上一步</van-button>
|
|
|
- <van-button round type="primary" native-type="submit">提交审核</van-button>
|
|
|
+ <van-button round type="primary" native-type="submit">提交铸造</van-button>
|
|
|
</div>
|
|
|
</van-form>
|
|
|
+ <div class="zhuzao" v-else-if="step === 2">
|
|
|
+ <Vue3Lottie :width="200" :animationData="star2JSON" />
|
|
|
+ <div class="lottie-text">星球铸造中</div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import product from '../../mixins/product';
|
|
|
import list from '../../mixins/list';
|
|
|
+import { Vue3Lottie } from 'vue3-lottie';
|
|
|
+import 'vue3-lottie/dist/style.css';
|
|
|
+import zuzhaoJSON from '../../assets/lottie/zuzhao.json';
|
|
|
+import starJSON from '../../assets/lottie/star.json';
|
|
|
+import star1JSON from '../../assets/lottie/star1.json';
|
|
|
+import star2JSON from '../../assets/lottie/star2.json';
|
|
|
+
|
|
|
export default {
|
|
|
mixins: [product, list],
|
|
|
+ components: {
|
|
|
+ Vue3Lottie
|
|
|
+ },
|
|
|
data() {
|
|
|
return {
|
|
|
step: 0,
|
|
|
- steps: ['销毁藏品', '上传图片', '提交审核'],
|
|
|
+ steps: ['销毁藏品', '上传星图', '星图铸造', '提交审核'],
|
|
|
empty: false,
|
|
|
list: [],
|
|
|
chooseId: 0,
|
|
|
@@ -142,17 +159,44 @@ export default {
|
|
|
url: '/asset/all',
|
|
|
form: {},
|
|
|
photoAssetId: 0,
|
|
|
- info: {}
|
|
|
+ info: {},
|
|
|
+ nots: [],
|
|
|
+ zuzhaoJSON,
|
|
|
+ starJSON,
|
|
|
+ star1JSON,
|
|
|
+ star2JSON
|
|
|
};
|
|
|
},
|
|
|
inject: ['barHeight'],
|
|
|
+ computed: {
|
|
|
+ showList() {
|
|
|
+ let list = [...this.list];
|
|
|
+ let nots = [...this.nots];
|
|
|
+ return list.filter(item => {
|
|
|
+ let flag = true;
|
|
|
+ nots.forEach(_not => {
|
|
|
+ if (item.name.indexOf(_not) !== -1) {
|
|
|
+ flag = false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return flag;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.$http.get('/sysConfig/get/xingtu_not').then(res => {
|
|
|
+ if (res.value) {
|
|
|
+ this.nots = res.value.split(',');
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
methods: {
|
|
|
beforeData() {
|
|
|
return {
|
|
|
query: {
|
|
|
userId: this.$store.state.userInfo.id,
|
|
|
status: 'NORMAL',
|
|
|
- type: 'DEFAULT,BLIND_BOX,PICTURE'
|
|
|
+ type: 'DEFAULT,BLIND_BOX'
|
|
|
},
|
|
|
sort: 'id,desc'
|
|
|
};
|
|
|
@@ -203,7 +247,10 @@ export default {
|
|
|
.post('/photoAsset/save', form, { body: 'json' })
|
|
|
.then(res => {
|
|
|
this.$toast.clear();
|
|
|
- this.$router.replace('/starCreateResult?id=' + res.id);
|
|
|
+ this.step = 2;
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$router.replace('/starCreateResult?id=' + res.id);
|
|
|
+ }, 3000);
|
|
|
})
|
|
|
.catch(e => {
|
|
|
if (e.error) {
|
|
|
@@ -224,7 +271,7 @@ export default {
|
|
|
height: 72px;
|
|
|
.flex();
|
|
|
.step {
|
|
|
- width: 33.33vw;
|
|
|
+ width: 25vw;
|
|
|
.flex-col();
|
|
|
align-items: center;
|
|
|
.box {
|
|
|
@@ -242,7 +289,7 @@ export default {
|
|
|
}
|
|
|
&::after {
|
|
|
content: '';
|
|
|
- width: 40vw;
|
|
|
+ width: 25vw;
|
|
|
background-color: #a2885c;
|
|
|
height: 1px;
|
|
|
position: absolute;
|
|
|
@@ -263,18 +310,18 @@ export default {
|
|
|
&:nth-child(1) {
|
|
|
.box {
|
|
|
&::after {
|
|
|
- width: 16.5vw;
|
|
|
+ width: 12.5vw;
|
|
|
left: 12px;
|
|
|
transform: translate(0, 6px);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- &:nth-child(3) {
|
|
|
+ &:last-child {
|
|
|
.box {
|
|
|
&::after {
|
|
|
- width: 16.5vw;
|
|
|
- left: 12px;
|
|
|
+ width: 12.5vw;
|
|
|
+ right: 12px;
|
|
|
transform: translate(-100%, 6px);
|
|
|
}
|
|
|
}
|
|
|
@@ -453,4 +500,17 @@ export default {
|
|
|
margin-top: 6px;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+.zhuzao {
|
|
|
+ .flex-col();
|
|
|
+ align-items: center;
|
|
|
+ padding: 80px 0;
|
|
|
+
|
|
|
+ .lottie-text {
|
|
|
+ font-size: 12px;
|
|
|
+ color: #939599;
|
|
|
+ line-height: 20px;
|
|
|
+ transform: translateY(-10px);
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|