以下是优化后的代码:

let paramYear = this.year; let paramMonth = this.month; if (parseInt(this.month) + 1 == 13) { paramYear = parseInt(this.year) + 1; paramMonth = 0; } let date = new Date(paramYear, paramMonth, 1); let calendar = new Date(); await Promise.all([ monthManagementApi.getHoliday(paramYear).then(res => { this.holidayList = res.data; }), monthManagementApi.getWeekDay(paramYear).then(res => { this.weekDayList = res.data; }), serviceTrackingApi.getParamByConfigkey("service_tracking_score_overdays").then(res => { let overtimeday = !isNaN(res.data.configPara) ? res.data.configPara : 6; let days = new Date(paramYear, paramMonth + 1, 0).getDate(); let work = []; for (let i = 1; i <= days; i++) { date.setDate(i); let weekDay = date.getDay(); const currentDate = moment(date).format("YYYY-MM-DD"); if ( (weekDay > 0 && weekDay < 6 && this.holidayList.every(holiday => !this.getAllDate(holiday.startDate, holiday.endDate).includes(currentDate))) || this.weekDayList.some(weekDay => this.getAllDate(weekDay.startDate, weekDay.endDate).includes(currentDate)) ) { if (work.length <= overtimeday) { work.push(date.toLocaleDateString()); } } } let workDate = work[work.length - 1]; let workTwo = new Date(workDate); let workMonth = workTwo.getMonth() + 1; let workYear = workTwo.getFullYear(); let workDay = workTwo.getDate(); let overdueParams = { trackingYear: this.year, trackingMonth: this.month }; await overdueApi.getPage(overdueParams).then(response => { this.dateList = response.data.rows; }); let endDate = ${workYear}年${workMonth}月${workDay}日; let sendDay = new Date(workYear, workMonth - 1, workDay); let sendMonth = sendDay.getMonth() == 0 ? 12 : sendDay.getMonth(); if ((calendar - sendDay) < 0) { if (calendar.getFullYear() <= sendDay.getFullYear() && calendar.getMonth() < sendMonth && calendar.getDate() < sendDay.getDate()) { this.closingDate = 温馨提示:本次月评截止日期为${endDate} 23:59,已到打分截止日期,如需补打分请联系管理员。; this.isNotOvertime = false; } else { this.closingDate = 温馨提示 本次月评截止日期为:${endDate} 23:59; this.isNotOvertime = true; } } else { if (this.dateList.length != 0) { let deptOrgId = this.dateList[0].orgId; let momentIsBetween = moment().isBetween(moment(this.dateList[0].intervalStart), moment(this.dateList[0].intervalEnd), null, '()'); let isThisYearAndMonth = this.year == this.dateList[0].trackingYear && this.month == this.dateList[0].trackingMonth; if (isThisYearAndMonth && momentIsBetween) { if (this.dateList[0].orgId == "" && this.dateList[0].supplierId == "") { this.closingDate = 温馨提示:本次月评截止日期为${endDate} 23:59,已到打分截止日期,目前为超期补打分时间(${moment(this.dateList[0].intervalStart).format("YYYY-MM-DD")} - ${moment(this.dateList[0].intervalEnd).format("YYYY-MM-DD")})。; this.isNotOvertime = true; } else if

请优化以下JavaScript代码:nn-let-paramYear-=-thisyear;n--------let-paramMonth-=-thismonth;n--------if-parseIntthismonth-+-1-==-13-n----------paramYear-=-parseIntthisyear-+-1;n----------paramMonth-=-0;n--------n--------let-date-=-new-Date;n--------设置日期n------

原文地址: https://www.cveoy.top/t/topic/rSX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录