diff --git a/src/App.vue b/src/App.vue index a701a1e4723255e80e3954681e6ffb4f2a55c996..67da2c4bc4e31f4f3f44dca22a9587a82019f8dd 100644 --- a/src/App.vue +++ b/src/App.vue @@ -11,7 +11,9 @@ export default { txtCount: '', txtRestInterval: '', txtRestIdx: '', - txtIntervalRest: '' + txtRestTime: '', + txtLastTime: '', + needClean: true } }, methods: { @@ -28,30 +30,60 @@ export default { } } }, + setNum(num) { + return num >= 10 ? num : '0' + num + }, getSchedule() { - const result = '' + let result = '' let dateTime = '' if (this.txtStart.trim().length > 0 && this.txtInterval.trim().length > 0 && this.txtCount.trim().length > 0) { + const count = this.txtLastInterval.trim().length > 0 ? parseInt(this.txtCount) - 1 : parseInt(this.txtCount) const interval = parseInt(this.txtInterval) * 60 * 1000 dateTime = new Date(`2023-03-01 ${this.txtStart}`).getTime() - for (let index = 1; index <= parseInt(this.txtCount); index++) { + for (let index = 1; index <= parseInt(count); index++) { const curDate = new Date(dateTime) - result += `
${curDate.getHours()}:${curDate.getMinutes()}
` + dateTime += interval + const endDate = new Date(dateTime) + result += `+ 【场次${index}】 + ${this.setNum(curDate.getHours())}:${this.setNum(curDate.getMinutes())}-${this.setNum(endDate.getHours())}:${this.setNum(endDate.getMinutes())} +
` + if (this.txtRestIdx.trim().length > 0 && parseInt(this.txtRestIdx) === idx) { - const restTime = parseFloat(this.txtRestInterval) * 60 * 60 * 1000 - date += restTime - } else { - date += interval - } + // 分割间歇 + const restTime = this.txtRestInterval.trim().length > 0 ? parseFloat(this.txtRestInterval) * 60 * 60 * 1000 : 0 + dateTime += restTime + } else if (index < count && this.txtIntervalRest.trim().length > 0) { + // 演出间歇 + const intervalRestTime = parseFloat(this.txtIntervalRest) * 60 * 1000 + dateTime += intervalRestTime + } else if(index === count && this.txtLastInterval.trim().length > 0) { + // 演出间歇 + const lastInterval = parseFloat(this.txtLastInterval) * 60 * 1000 + dateTime += lastInterval + } } + console.log('result', result) } else { this.resultList = ''; return false } if(this.txtLastInterval.length > 0) { - const lastInterval = parseInt(this.txtLastInterval) * 60 * 1000 + const curDate = new Date(dateTime) + const lastTime = parseFloat(this.txtLastInterval) * 60 * 1000 + dateTime += lastTime + const endDate = new Date(dateTime) + result += `+ 【场次${this.txtCount}】 + ${this.setNum(curDate.getHours())}:${this.setNum(curDate.getMinutes())}-${this.setNum(endDate.getHours())}:${this.setNum(endDate.getMinutes())} +
` + } + if (this.needClean) { + this.resultList = result; + } else { + this.resultList += this.resultList.length > 0 ? '输入结果:
@@ -135,8 +171,14 @@ section { section.bg-01 { background-color: #d0e4a8; } +section.bg-01 .result { + border-color: rgb(1, 178, 1); +} section.bg-02{ background-color: #f5f5d5; } +section.bg-02 .result { + border-color: orange; +}