OpenTimeUtil.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /* eslint-disable no-underscore-dangle */
  2. import moment from "moment";
  3. export default class OpenTimeUtil {
  4. constructor(startTime, endTime, week, weekWords) {
  5. this.startTime = startTime || "08:00:00";
  6. this.endTime = endTime || "23:00:00";
  7. this.week = week || "";
  8. this.weekWords = weekWords || {};
  9. }
  10. getStartTimeStr() {
  11. return moment(this.startTime, "HH:mm:ss").format("HH:mm");
  12. }
  13. getEndTimeStr() {
  14. return moment(this.endTime, "HH:mm:ss").format("HH:mm");
  15. }
  16. getWeekStr() {
  17. let _weeks = this.week.split(",");
  18. if (_weeks.length === 7) {
  19. return this.weekWords.all;
  20. }
  21. _weeks = _weeks.map(item => {
  22. return this.weekWords[item];
  23. });
  24. return _weeks.join(",");
  25. }
  26. getTimeStr() {
  27. return `${this.getStartTimeStr()}~${this.getEndTimeStr()}`;
  28. }
  29. getShowStr() {
  30. return `${this.getStartTimeStr()}~${this.getEndTimeStr()} ${this.getWeekStr()}`;
  31. }
  32. setStartTime(startTime) {
  33. this.startTime = moment(startTime, "HH:mm").format("HH:mm:ss");
  34. }
  35. setEndTime(endTime) {
  36. this.endTime = moment(endTime, "HH:mm").format("HH:mm:ss");
  37. }
  38. setWeek(week) {
  39. this.week = week || [];
  40. }
  41. setWeekWords(weekWords) {
  42. this.weekWords = weekWords || {};
  43. }
  44. }