|
|
@@ -97,8 +97,7 @@
|
|
|
>
|
|
|
{{ Certificate.ValidDate }}
|
|
|
</el-form-item>
|
|
|
- <!-- <el-form-item
|
|
|
- v-if="category === 'ticket'"
|
|
|
+ <el-form-item
|
|
|
verify
|
|
|
prop="playDateBegin"
|
|
|
label="游玩日期">
|
|
|
@@ -106,13 +105,13 @@
|
|
|
:clearable="false"
|
|
|
type="date"
|
|
|
:editable="false"
|
|
|
+ :disabled="disablePlayDateBegin"
|
|
|
:picker-options="dateOption"
|
|
|
v-model="form.playDateBegin"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
- </el-form-item> -->
|
|
|
+ </el-form-item>
|
|
|
<el-form-item
|
|
|
- v-if="category === 'ticket'"
|
|
|
prop="playDateEnd"
|
|
|
label="结束日期">
|
|
|
<el-date-picker
|
|
|
@@ -270,7 +269,6 @@ export default {
|
|
|
papersType: IDENTIFY_TYPES,
|
|
|
checkWayList,
|
|
|
pricePlan: [],
|
|
|
- playEndDate: '',
|
|
|
currentPrice: 0,
|
|
|
currentPlan: null,
|
|
|
retail_lockCheckStyle: this.$localStore.get('retail_lockCheckStyle') || false,
|
|
|
@@ -310,7 +308,8 @@ export default {
|
|
|
disabledDate () {
|
|
|
return false
|
|
|
}
|
|
|
- }
|
|
|
+ },
|
|
|
+ disablePlayDateBegin: false
|
|
|
}
|
|
|
},
|
|
|
created () {
|
|
|
@@ -338,10 +337,21 @@ export default {
|
|
|
|
|
|
this.Certificate = {}
|
|
|
},
|
|
|
- setEndDate () {
|
|
|
- let endDate = moment(this.form.playDateBegin).add(this.currentTicket.useDays - 1, 'days').endOf('day').valueOf()
|
|
|
- this.form.playDateEnd = new Date(endDate)
|
|
|
- this.playEndDate = moment(endDate).format('YYYY-MM-DD')
|
|
|
+ setEndDate (val) {
|
|
|
+ const { category, currentTicket } = this
|
|
|
+ const { useDateType, memberUseDateType, useDays } = currentTicket
|
|
|
+
|
|
|
+ if ((category === 'ticket' && useDateType === 1) || (category === 'member' && memberUseDateType === 2)) {
|
|
|
+ this.form.playDateEnd = moment(val).add((useDays || 1) - 1, 'days').format('YYYY-MM-DD')
|
|
|
+ }
|
|
|
+
|
|
|
+ if (category === 'batch') {
|
|
|
+ this.form.playDateEnd = moment(val).format('YYYY-MM-DD')
|
|
|
+ }
|
|
|
+
|
|
|
+ if (category === 'member' && memberUseDateType === 1) {
|
|
|
+ this.form.playDateEnd = moment(val).add((useDays || 1) - 1, 'days').format('YYYY-MM-DD')
|
|
|
+ }
|
|
|
},
|
|
|
// 更新游客列表
|
|
|
updateTourist (data) {
|
|
|
@@ -395,11 +405,11 @@ export default {
|
|
|
|
|
|
this.syncTouristList()
|
|
|
|
|
|
- let { guestName, guestIdentify, guestIdentifyType, guestPhone, playDateEnd } = this.form
|
|
|
+ const { guestName, guestIdentify, guestIdentifyType, guestPhone, playDateBegin, playDateEnd } = this.form
|
|
|
|
|
|
- let { id, name, checkCount, playDate, selectBatch, isUseDateLimit } = this.currentTicket
|
|
|
+ const { id, name, checkCount, selectBatch, isUseDateLimit } = this.currentTicket
|
|
|
|
|
|
- let price = this.currentPrice
|
|
|
+ const price = this.currentPrice
|
|
|
|
|
|
if (this.form.checkWay === 3) {
|
|
|
// 是否存在未填写的内容
|
|
|
@@ -423,9 +433,8 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- const pdb = playDate
|
|
|
- const pde = this.category === 'batch' ? playDate
|
|
|
- : isUseDateLimit ? moment(playDateEnd).format('YYYY-MM-DD') : moment(playDateEnd).format('YYYY-MM-DD')
|
|
|
+ const pdb = moment(playDateBegin).format('YYYY-MM-DD')
|
|
|
+ const pde = moment(playDateEnd).format('YYYY-MM-DD')
|
|
|
|
|
|
let tickets = this.touristList.map(item => {
|
|
|
return {
|
|
|
@@ -489,7 +498,7 @@ export default {
|
|
|
guestPhone: '',
|
|
|
guestIdentify: '',
|
|
|
guestIdentifyType: 0,
|
|
|
- playDateBegin: new Date(moment().startOf('day').valueOf()),
|
|
|
+ playDateBegin: moment().format('YYYY-MM-DD'),
|
|
|
lock: false // 是否可编辑
|
|
|
}]
|
|
|
|
|
|
@@ -521,17 +530,44 @@ export default {
|
|
|
|
|
|
},
|
|
|
watch: {
|
|
|
- currentTicket (val) {
|
|
|
+ async currentTicket (val) {
|
|
|
if (!val) return
|
|
|
|
|
|
+ await this.$nextTick()
|
|
|
this.resetForm()
|
|
|
-
|
|
|
- // 设置初始日期
|
|
|
- if (moment(val.useDateStart).isAfter(new Date())) {
|
|
|
- this.form.playDateBegin = val.useDateStart
|
|
|
- } else if (!this.form.playDateBegin) {
|
|
|
- this.form.playDateBegin = new Date(moment().startOf('day').valueOf())
|
|
|
+ const { useDateType, useDateStart, useDateEnd, useDays, memberUseDateType, playDate } = val
|
|
|
+ this.disablePlayDateBegin = false
|
|
|
+
|
|
|
+ switch (this.category) {
|
|
|
+ case 'ticket':
|
|
|
+ if (useDateType === 2) {
|
|
|
+ this.form.playDateBegin = moment(useDateStart).format('YYYY-MM-DD')
|
|
|
+ this.form.playDateEnd = moment(useDateEnd).format('YYYY-MM-DD')
|
|
|
+ this.disablePlayDateBegin = true
|
|
|
+ } else {
|
|
|
+ this.form.playDateBegin = moment().format('YYYY-MM-DD')
|
|
|
+ this.form.playDateEnd = moment().add((useDays || 1) - 1, 'days').format('YYYY-MM-DD')
|
|
|
+ }
|
|
|
+ break
|
|
|
+ case 'batch':
|
|
|
+ this.form.playDateBegin = moment(playDate).format('YYYY-MM-DD')
|
|
|
+ this.form.playDateEnd = moment(playDate).format('YYYY-MM-DD')
|
|
|
+ this.disablePlayDateBegin = true
|
|
|
+ break
|
|
|
+ case 'member':
|
|
|
+ if (memberUseDateType === 1) {
|
|
|
+ this.form.playDateBegin = moment(playDate).format('YYYY-MM-DD')
|
|
|
+ this.form.playDateEnd = moment(playDate).add((useDays || 1) - 1, 'days').format('YYYY-MM-DD')
|
|
|
+ } else {
|
|
|
+ this.form.playDateBegin = moment(useDateStart).format('YYYY-MM-DD')
|
|
|
+ this.form.playDateEnd = moment(useDateEnd).format('YYYY-MM-DD')
|
|
|
+ }
|
|
|
+ this.disablePlayDateBegin = true
|
|
|
+ break
|
|
|
+ default :
|
|
|
+ break
|
|
|
}
|
|
|
+
|
|
|
// 设置不可选日期
|
|
|
this.dateOption.disabledDate = (date) => {
|
|
|
let beforeToday = moment().subtract(1, 'days').isAfter(date)
|
|
|
@@ -559,7 +595,7 @@ export default {
|
|
|
},
|
|
|
'form.playDateBegin' (val) {
|
|
|
if (val) {
|
|
|
- this.setEndDate()
|
|
|
+ this.setEndDate(val)
|
|
|
this.currentPlan = null
|
|
|
this.$emit('changePlayDate', moment(val).format('YYYY-MM-DD'))
|
|
|
this.timer && clearTimeout(this.timer)
|