zhaoyun 5 月之前
父節點
當前提交
5638a0a218
共有 2 個文件被更改,包括 29 次插入3 次删除
  1. 1 1
      src/api/secure/daily-newspaper.js
  2. 28 2
      src/views/distributionnetwork/secure/weekly-report/index.vue

+ 1 - 1
src/api/secure/daily-newspaper.js

@@ -29,7 +29,7 @@ export function getReportWeek(param) {
 //周报导出
 export function weekExport(startDate, endDate) {
   return request({
-    url: `/power/report/weekExport?startDate=${startDate}&endDate=${endDate}`,
+    url: `/power/weklyReport/export?beingDate=${startDate}&endDate=${endDate}`,
     method: "post",
     responseType: "blob",
   });

+ 28 - 2
src/views/distributionnetwork/secure/weekly-report/index.vue

@@ -213,16 +213,42 @@ export default {
       const day = String(date.getDate()).padStart(2, "0");
       return `${year}${month}${day}`;
     },
+	//根据日期获取第几周
+	getWeek(dateTime) {
+	  var time,
+	        week,
+	        checkDate = new Date(dateTime);
+	      checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));
+	      time = checkDate.getTime();
+	      checkDate.setMonth(0);
+	      checkDate.setDate(1);
+	      week = Math.floor(Math.round((time - checkDate) / 86400000) / 7) + 1;
+	      return week;
+	},
+	formatDateToYYYYMMDD(dateStr) {
+	  // 检查输入字符串是否为8位数字,即yyyymmdd格式
+	  if (!/^\d{8}$/.test(dateStr)) {
+	    throw new Error('Invalid date format. Expected yyyymmdd.');
+	  }
+	  // 提取年月日部分
+	  const year = dateStr.substring(0, 4);
+	  const month = dateStr.substring(4, 6);
+	  const day = dateStr.substring(6, 8);
+	
+	  // 格式化并返回yyyy-mm-dd格式的字符串
+	  return `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')}`;
+	},   
     async onExport() {
       const res = await weekExport(
         this.queryParams.startDate,
         this.queryParams.endDate
       );
+	  const weekNum=this.getWeek(this.formatDateToYYYYMMDD(this.queryParams.startDate));
       if (res) {
         const elink = document.createElement("a");
-        elink.download = `周报-${this.queryParams.startDate}_${this.queryParams.endDate}.xls`;
+        elink.download = `配电专业生产周例会汇报材料(第`+weekNum+`周).doc`;
         elink.style.display = "none";
-        const blob = new Blob([res], { type: "application/x-msdownload" });
+        const blob = new Blob([res], { type: "application/msword;charset=UTF-8" });
         elink.href = URL.createObjectURL(blob);
         document.body.appendChild(elink);
         elink.click();