|
@@ -9,37 +9,47 @@
|
|
|
<van-cell-group :border="false">
|
|
<van-cell-group :border="false">
|
|
|
<van-field
|
|
<van-field
|
|
|
label="卡牌名称"
|
|
label="卡牌名称"
|
|
|
- :value="name"
|
|
|
|
|
|
|
+ :value="form.name"
|
|
|
placeholder="请输入卡牌名称"
|
|
placeholder="请输入卡牌名称"
|
|
|
is-link
|
|
is-link
|
|
|
readonly
|
|
readonly
|
|
|
@click="show = true"
|
|
@click="show = true"
|
|
|
>
|
|
>
|
|
|
</van-field>
|
|
</van-field>
|
|
|
- <van-field label="卡牌销售" :value="sale" @input="sale = $event.detail" placeholder="请输入金额">
|
|
|
|
|
|
|
+ <van-field
|
|
|
|
|
+ label="卡牌售价"
|
|
|
|
|
+ :value="form.price"
|
|
|
|
|
+ @input="form.price = $event.detail"
|
|
|
|
|
+ placeholder="请输入金额"
|
|
|
|
|
+ >
|
|
|
|
|
+ </van-field>
|
|
|
|
|
+ <van-field
|
|
|
|
|
+ label="拼箱结束"
|
|
|
|
|
+ is-link
|
|
|
|
|
+ :value="form.dates"
|
|
|
|
|
+ placeholder="请输入结束日期"
|
|
|
|
|
+ @click="newShow = true"
|
|
|
|
|
+ >
|
|
|
</van-field>
|
|
</van-field>
|
|
|
- <van-field label="拼箱结束" is-link :value="dates" placeholder="请输入结束日期"> </van-field>
|
|
|
|
|
<van-field
|
|
<van-field
|
|
|
label="拼箱人数"
|
|
label="拼箱人数"
|
|
|
- :value="num"
|
|
|
|
|
- @input="num = $event.detail"
|
|
|
|
|
- rows="1"
|
|
|
|
|
- autosize
|
|
|
|
|
|
|
+ :value="form.num"
|
|
|
|
|
+ @input="form.num = $event.detail"
|
|
|
placeholder="请输入参加人数"
|
|
placeholder="请输入参加人数"
|
|
|
>
|
|
>
|
|
|
</van-field>
|
|
</van-field>
|
|
|
<van-field
|
|
<van-field
|
|
|
label="邮费"
|
|
label="邮费"
|
|
|
- :value="price"
|
|
|
|
|
- @input="price = $event.detail"
|
|
|
|
|
- rows="1"
|
|
|
|
|
- autosize
|
|
|
|
|
|
|
+ :value="form.postage"
|
|
|
|
|
+ @input="form.postage = $event.detail"
|
|
|
placeholder="默认邮费10元"
|
|
placeholder="默认邮费10元"
|
|
|
>
|
|
>
|
|
|
</van-field>
|
|
</van-field>
|
|
|
</van-cell-group>
|
|
</van-cell-group>
|
|
|
<div class="box-con">
|
|
<div class="box-con">
|
|
|
<div class="label">卡牌细节图</div>
|
|
<div class="label">卡牌细节图</div>
|
|
|
|
|
+ <van-uploader :file-list="fileList" :after-read="afterRead" @delete="deleteImg" />
|
|
|
|
|
+ <div></div>
|
|
|
<div class="box">
|
|
<div class="box">
|
|
|
<div class="top">
|
|
<div class="top">
|
|
|
<span>选择卡包</span>
|
|
<span>选择卡包</span>
|
|
@@ -75,27 +85,40 @@
|
|
|
</div>
|
|
</div>
|
|
|
<div class="label">卡牌详情描述</div>
|
|
<div class="label">卡牌详情描述</div>
|
|
|
<van-field
|
|
<van-field
|
|
|
- class="message"
|
|
|
|
|
- :border="false"
|
|
|
|
|
- type="text"
|
|
|
|
|
- placeholder="选填,备注对本次交易的说明"
|
|
|
|
|
|
|
+ :value="form.message"
|
|
|
@input="message = $event.detail"
|
|
@input="message = $event.detail"
|
|
|
|
|
+ :border="false"
|
|
|
|
|
+ rows="1"
|
|
|
|
|
+ autosize
|
|
|
|
|
+ type="textarea"
|
|
|
|
|
+ placeholder="多多介绍您的卡牌信息,更受欢迎哦"
|
|
|
/>
|
|
/>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="btn-list">
|
|
<div class="btn-list">
|
|
|
- <div @click="submit2">确认上架</div>
|
|
|
|
|
|
|
+ <div @click="submit">确认上架</div>
|
|
|
</div>
|
|
</div>
|
|
|
<van-action-sheet
|
|
<van-action-sheet
|
|
|
:show="show"
|
|
:show="show"
|
|
|
description="卡牌名称"
|
|
description="卡牌名称"
|
|
|
cancel-text="取消"
|
|
cancel-text="取消"
|
|
|
- @overlay="overlay = false"
|
|
|
|
|
- @click="cancel"
|
|
|
|
|
:actions="actions"
|
|
:actions="actions"
|
|
|
|
|
+ @click-overlay="cancel"
|
|
|
@select="select"
|
|
@select="select"
|
|
|
|
|
+ @cancel="cancel"
|
|
|
>
|
|
>
|
|
|
</van-action-sheet>
|
|
</van-action-sheet>
|
|
|
- <!-- <van-datetime-picker type="year-month" :value="currentDate" :min-date="minDate" @input="onInput" /> -->
|
|
|
|
|
|
|
+
|
|
|
|
|
+ <van-popup :show="newShow" position="bottom" @close="onClose">
|
|
|
|
|
+ <van-datetime-picker
|
|
|
|
|
+ type="datetime"
|
|
|
|
|
+ :value="currentDate"
|
|
|
|
|
+ @confirm="onConfirm"
|
|
|
|
|
+ @cancel="onCancel"
|
|
|
|
|
+ :min-date="minDate"
|
|
|
|
|
+ :max-date="maxDate"
|
|
|
|
|
+ />
|
|
|
|
|
+ </van-popup>
|
|
|
|
|
+ <slot></slot>
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
<script>
|
|
<script>
|
|
@@ -103,55 +126,109 @@ export default {
|
|
|
name: 'addorder',
|
|
name: 'addorder',
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
- name: '',
|
|
|
|
|
- num: '',
|
|
|
|
|
- price: '',
|
|
|
|
|
- sale: '',
|
|
|
|
|
|
|
+ form: {
|
|
|
|
|
+ name: '',
|
|
|
|
|
+ num: '',
|
|
|
|
|
+ postage: 10,
|
|
|
|
|
+ price: '',
|
|
|
|
|
+ dates: '',
|
|
|
|
|
+ message: ''
|
|
|
|
|
+ },
|
|
|
show: false,
|
|
show: false,
|
|
|
|
|
+ newShow: false,
|
|
|
cardCaseInfo: {},
|
|
cardCaseInfo: {},
|
|
|
|
|
+ fileList: [],
|
|
|
chooseIds: [],
|
|
chooseIds: [],
|
|
|
nowChoose: [],
|
|
nowChoose: [],
|
|
|
|
|
+ closeFlag: false,
|
|
|
detailsList: [],
|
|
detailsList: [],
|
|
|
cardList: [{ A: 'A' }, { B: 'B' }, { C: 'C' }],
|
|
cardList: [{ A: 'A' }, { B: 'B' }, { C: 'C' }],
|
|
|
- actions: [
|
|
|
|
|
- {
|
|
|
|
|
- name: '决斗者筑包-古代守护着',
|
|
|
|
|
- children: [
|
|
|
|
|
- {
|
|
|
|
|
- name: 'AAAA'
|
|
|
|
|
- }
|
|
|
|
|
- ],
|
|
|
|
|
- subname: 'aaaa'
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: '精灵宝可梦(繁中)'
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: '其他'
|
|
|
|
|
- }
|
|
|
|
|
- ]
|
|
|
|
|
- // currentDate: new Date().getTime(),
|
|
|
|
|
- // minDate: new Date().getTime()
|
|
|
|
|
|
|
+ actions: [],
|
|
|
|
|
+ minDate: new Date(new Date().getFullYear() - 1, 10, 1).getTime(),
|
|
|
|
|
+ maxDate: new Date(new Date().getFullYear() + 2, 10, 1).getTime(),
|
|
|
|
|
+ currentDate: new Date().getTime()
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
- computed: {
|
|
|
|
|
- // cardList() {
|
|
|
|
|
- // let boxMap = { ...this.detailsList };
|
|
|
|
|
- // return Object.keys(boxMap).map(item => {
|
|
|
|
|
- // return boxMap[item];
|
|
|
|
|
- // });
|
|
|
|
|
- // },
|
|
|
|
|
- // allCards() {
|
|
|
|
|
- // return [...this.cardList].flat();
|
|
|
|
|
- // }
|
|
|
|
|
|
|
+ computed: {},
|
|
|
|
|
+ watch: {
|
|
|
|
|
+ show: {
|
|
|
|
|
+ handler: function(newVal) {
|
|
|
|
|
+ if (newVal) {
|
|
|
|
|
+ this.cardInit();
|
|
|
|
|
+ this.closeFlag = false;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ onLoad() {
|
|
|
|
|
+ this.cartBox();
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ cardInit() {
|
|
|
|
|
+ this.showLoading();
|
|
|
|
|
+ this.$http
|
|
|
|
|
+ .post(
|
|
|
|
|
+ '/series/all',
|
|
|
|
|
+ { query: { del: false }, page: 0, size: 1000 },
|
|
|
|
|
+ {
|
|
|
|
|
+ header: {
|
|
|
|
|
+ 'Content-Type': 'application/json'
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ )
|
|
|
|
|
+ .then(res => {
|
|
|
|
|
+ this.hideLoading();
|
|
|
|
|
+ this.actions = res.content;
|
|
|
|
|
+ })
|
|
|
|
|
+ .catch(e => {
|
|
|
|
|
+ this.hideLoading();
|
|
|
|
|
+ wx.showToast({
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ title: e.error
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ timeFormat(date, fmt) {
|
|
|
|
|
+ var o = {
|
|
|
|
|
+ 'M+': date.getMonth() + 1, //月份
|
|
|
|
|
+ 'd+': date.getDate(), //日
|
|
|
|
|
+ 'h+': date.getHours(), //小时
|
|
|
|
|
+ 'm+': date.getMinutes(), //分
|
|
|
|
|
+ 's+': date.getSeconds() //秒
|
|
|
|
|
+ };
|
|
|
|
|
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
|
|
|
|
|
+ for (var k in o)
|
|
|
|
|
+ if (new RegExp('(' + k + ')').test(fmt))
|
|
|
|
|
+ fmt = fmt.replace(
|
|
|
|
|
+ RegExp.$1,
|
|
|
|
|
+ RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length)
|
|
|
|
|
+ );
|
|
|
|
|
+ return fmt;
|
|
|
|
|
+ },
|
|
|
|
|
+ // 时间确认按钮
|
|
|
|
|
+ onConfirm(event) {
|
|
|
|
|
+ this.currentDate = event.detail;
|
|
|
|
|
+ var timeValue = this.timeFormat(new Date(event.detail), 'yyyy-MM-dd hh:mm');
|
|
|
|
|
+ this.form.dates = timeValue;
|
|
|
|
|
+ this.newShow = false;
|
|
|
|
|
+ },
|
|
|
|
|
+ // 时间取消按钮
|
|
|
|
|
+ onCancel() {
|
|
|
|
|
+ this.newShow = false;
|
|
|
|
|
+ },
|
|
|
|
|
+ // 遮罩层显示与隐藏
|
|
|
|
|
+ onClose() {
|
|
|
|
|
+ this.newShow = false;
|
|
|
|
|
+ },
|
|
|
|
|
+ // 卡牌名称取消按钮
|
|
|
|
|
+ cancel() {
|
|
|
|
|
+ this.show = false;
|
|
|
|
|
+ },
|
|
|
canChoose(info) {
|
|
canChoose(info) {
|
|
|
let status = ['WAIT', 'PROGRESS'];
|
|
let status = ['WAIT', 'PROGRESS'];
|
|
|
return status.includes(info.caseStatus) && !this.sold;
|
|
return status.includes(info.caseStatus) && !this.sold;
|
|
|
},
|
|
},
|
|
|
choose(id, used = false) {
|
|
choose(id, used = false) {
|
|
|
- console.log('=====');
|
|
|
|
|
if (used) {
|
|
if (used) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
@@ -163,41 +240,99 @@ export default {
|
|
|
}
|
|
}
|
|
|
this.nowChoose = list;
|
|
this.nowChoose = list;
|
|
|
},
|
|
},
|
|
|
- submit() {},
|
|
|
|
|
- select(action) {
|
|
|
|
|
- this.name = action.detail.name;
|
|
|
|
|
- this.show = false;
|
|
|
|
|
|
|
+ select(e) {
|
|
|
|
|
+ if (this.closeFlag) {
|
|
|
|
|
+ this.form.name = e.detail.name;
|
|
|
|
|
+ this.show = false;
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ let data = {
|
|
|
|
|
+ seriesId: e.detail.id
|
|
|
|
|
+ };
|
|
|
|
|
+ this.showLoading();
|
|
|
|
|
+ this.$http
|
|
|
|
|
+ .post(
|
|
|
|
|
+ 'collection/all',
|
|
|
|
|
+ { query: data, page: 0, size: 1000 },
|
|
|
|
|
+ {
|
|
|
|
|
+ header: {
|
|
|
|
|
+ 'Content-Type': 'application/json'
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ )
|
|
|
|
|
+ .then(res => {
|
|
|
|
|
+ this.hideLoading();
|
|
|
|
|
+ this.actions = res.content;
|
|
|
|
|
+ this.closeFlag = true;
|
|
|
|
|
+ })
|
|
|
|
|
+ .catch(e => {
|
|
|
|
|
+ this.hideLoading();
|
|
|
|
|
+ wx.showToast({
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ title: e.error
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ cartBox() {
|
|
|
|
|
+ this.$http.post('/cardCase/genNew').then(res => {
|
|
|
|
|
+ console.log(res);
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ afterRead(file) {
|
|
|
|
|
+ this.showLoading();
|
|
|
|
|
+ this.$http
|
|
|
|
|
+ .uploadFile(file.path)
|
|
|
|
|
+ .then(res => {
|
|
|
|
|
+ this.hideLoading();
|
|
|
|
|
+ console.log(res);
|
|
|
|
|
+ let fileList = [];
|
|
|
|
|
+ fileList.push({ ...file, url: res });
|
|
|
|
|
+ this.fileList = fileList;
|
|
|
|
|
+ })
|
|
|
|
|
+ .catch(e => {
|
|
|
|
|
+ this.hideLoading();
|
|
|
|
|
+ wx.showToast({
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ title: e.error
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ deleteImg() {
|
|
|
|
|
+ this.fileList = [];
|
|
|
},
|
|
},
|
|
|
- submit2() {
|
|
|
|
|
- console.log(this.cardList);
|
|
|
|
|
- if (!this.name) {
|
|
|
|
|
|
|
+ submit() {
|
|
|
|
|
+ if (!this.form.name) {
|
|
|
wx.showToast({
|
|
wx.showToast({
|
|
|
icon: 'none',
|
|
icon: 'none',
|
|
|
- title: '卡牌不能为空'
|
|
|
|
|
|
|
+ title: '卡牌名称不能为空'
|
|
|
});
|
|
});
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- if (!this.price) {
|
|
|
|
|
|
|
+ if (!this.form.price) {
|
|
|
wx.showToast({
|
|
wx.showToast({
|
|
|
icon: 'none',
|
|
icon: 'none',
|
|
|
- title: '邮费不能为空'
|
|
|
|
|
|
|
+ title: '价格不能为空'
|
|
|
|
|
+ });
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (!this.form.dates) {
|
|
|
|
|
+ wx.showToast({
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ title: '结束时间不能为空'
|
|
|
});
|
|
});
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- // console.log(this.name);
|
|
|
|
|
- // console.log(this.price);
|
|
|
|
|
- // console.log(this.message);
|
|
|
|
|
wx.showToast({
|
|
wx.showToast({
|
|
|
title: '提交成功'
|
|
title: '提交成功'
|
|
|
});
|
|
});
|
|
|
- },
|
|
|
|
|
- cancel() {
|
|
|
|
|
- this.show = false;
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
</script>
|
|
</script>
|
|
|
<style lang="less" scoped>
|
|
<style lang="less" scoped>
|
|
|
|
|
+/deep/ .van-uploader {
|
|
|
|
|
+ margin-top: 20px;
|
|
|
|
|
+}
|
|
|
/deep/ .van-cell {
|
|
/deep/ .van-cell {
|
|
|
--cell-vertical-padding: 23px;
|
|
--cell-vertical-padding: 23px;
|
|
|
--cell-horizontal-padding: 20px;
|
|
--cell-horizontal-padding: 20px;
|