浏览代码

chore: 调整

yijianjun 2 月之前
父节点
当前提交
3c579afb46

+ 10 - 0
src/api/powerdistribution/maintenance.js

@@ -175,6 +175,16 @@ export function maintenanceMonthList(params) {
   });
   });
 }
 }
 
 
+// 月计划导出
+export function maintenanceMonthExport(params) {
+  return request({
+    url: `/power/maintenanceMonth/export`,
+    method: "post",
+    params,
+    responseType: "blob",
+  });
+}
+
 //获取月计划明细详细信息
 //获取月计划明细详细信息
 export function maintenanceMonthDetail(id) {
 export function maintenanceMonthDetail(id) {
   return request({
   return request({

+ 9 - 0
src/api/powerdistribution/power-outage-control.js

@@ -53,3 +53,12 @@ export function stopActualList(params) {
     params,
     params,
   });
   });
 }
 }
+
+// 完成情况列表导出
+export function stopActualExport(reportYear) {
+  return request({
+    url: `/power/stopActual/export?reportYear=${reportYear}`,
+    method: "post",
+    responseType: "blob",
+  });
+}

+ 9 - 0
src/api/powerdistribution/quantity-of-work.js

@@ -8,3 +8,12 @@ export function workCompleStatistics(params) {
     params,
     params,
   });
   });
 }
 }
+// 导出
+export function workCompleStatisticsExport(params) {
+  return request({
+    url: "/power/workCompleStatistics/export",
+    method: "post",
+    params,
+    responseType: "blob",
+  });
+}

+ 10 - 0
src/api/secure/pdm-work-plan.js

@@ -17,3 +17,13 @@ export function updateWorkPlan(data) {
     data,
     data,
   });
   });
 }
 }
+
+// 导出
+export function workPlanExport(params) {
+  return request({
+    url: `/power/workPlan/export`,
+    method: "post",
+    params,
+    responseType: "blob",
+  });
+}

+ 31 - 0
src/views/distributionnetwork/maintenance/month-plan/index.vue

@@ -71,7 +71,11 @@
           @click="uploadApproveFile"
           @click="uploadApproveFile"
           >上传审批单</el-button
           >上传审批单</el-button
         >
         >
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
       </el-col>
       </el-col>
+
       <right-toolbar
       <right-toolbar
         :showSearch.sync="showSearch"
         :showSearch.sync="showSearch"
         @queryTable="getList"
         @queryTable="getList"
@@ -230,6 +234,7 @@ import recordDetails from "./details";
 import {
 import {
   maintenanceMonthList,
   maintenanceMonthList,
   maintenanceMonthUpdate,
   maintenanceMonthUpdate,
+  maintenanceMonthExport,
 } from "@/api/powerdistribution/maintenance";
 } from "@/api/powerdistribution/maintenance";
 import Update from "./Update.vue";
 import Update from "./Update.vue";
 import fileUpload from "../process/components/fileUpload";
 import fileUpload from "../process/components/fileUpload";
@@ -280,6 +285,32 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await maintenanceMonthExport({
+        mplanNo: this.queryParams.mplanNo,
+        mplanSt: this.queryParams.mplanSt,
+        pageNum: this.queryParams.pageNum,
+        pageSize: this.queryParams.pageSize,
+        startDate: this.queryParams.reportDate[0],
+        endDate: this.queryParams.reportDate[1],
+      });
+      if (res) {
+        const elink = document.createElement("a");
+        let dateStr = this.queryParams.reportDate[0]
+          ? `_${this.queryParams.reportDate[0]}-${this.queryParams.reportDate[1]}`
+          : "";
+        elink.download = `月计划${dateStr}.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     //查看
     //查看
     table_show(row) {
     table_show(row) {
       this.dialog.detailsSave = true;
       this.dialog.detailsSave = true;

+ 40 - 2
src/views/distributionnetwork/power-outage-control/completion-status/index.vue

@@ -1,7 +1,13 @@
 <template>
 <template>
   <!-- 完成情况 -->
   <!-- 完成情况 -->
   <div class="app-container scroll-auto">
   <div class="app-container scroll-auto">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      size="small"
+      :inline="true"
+      v-show="showSearch"
+    >
       <el-form-item label="时间" prop="reportYear">
       <el-form-item label="时间" prop="reportYear">
         <el-date-picker
         <el-date-picker
           v-model="queryParams.reportYear"
           v-model="queryParams.reportYear"
@@ -26,6 +32,17 @@
         >
         >
       </el-form-item>
       </el-form-item>
     </el-form>
     </el-form>
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
+      </el-col>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
+    </el-row>
     <el-tabs v-model="activeTab">
     <el-tabs v-model="activeTab">
       <el-tab-pane label="总目标">
       <el-tab-pane label="总目标">
         <TableCmponent
         <TableCmponent
@@ -54,11 +71,16 @@
 
 
 <script>
 <script>
 import TableCmponent from "./components/TableCmponent.vue";
 import TableCmponent from "./components/TableCmponent.vue";
-import { stopActualList } from "@/api/powerdistribution/power-outage-control";
+import {
+  stopActualList,
+  stopActualExport,
+} from "@/api/powerdistribution/power-outage-control";
 export default {
 export default {
   components: { TableCmponent },
   components: { TableCmponent },
   data() {
   data() {
     return {
     return {
+      // 显示搜索条件
+      showSearch: true,
       //当前选中的tab
       //当前选中的tab
       activeTab: "",
       activeTab: "",
       dataList: [],
       dataList: [],
@@ -74,6 +96,22 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await stopActualExport(this.queryParams.reportYear);
+      if (res) {
+        const elink = document.createElement("a");
+        elink.download = `停电完成情况-${this.queryParams.reportYear}.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     /** 查询列表 */
     /** 查询列表 */
     getList() {
     getList() {
       this.loading = true;
       this.loading = true;

+ 15 - 1
src/views/distributionnetwork/power-outage-control/duration-analysis/components/DetailsDrawer.vue

@@ -17,6 +17,11 @@
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :lg="24">
             <el-col :lg="24">
+              <el-form-item label="原因类型">
+                {{ stopTypeMap[form.stopType] }}
+              </el-form-item>
+            </el-col>
+            <el-col :lg="24">
               <el-form-item label="停电原因" prop="stopReason"
               <el-form-item label="停电原因" prop="stopReason"
                 >{{ form.stopReason }}
                 >{{ form.stopReason }}
               </el-form-item>
               </el-form-item>
@@ -143,10 +148,19 @@ export default {
       visible: false,
       visible: false,
       isSaveing: false,
       isSaveing: false,
       stopTypeList: [],
       stopTypeList: [],
+      stopTypeMap: {},
     };
     };
   },
   },
-  mounted() {},
+  mounted() {
+    this.getstopTypeMap();
+  },
   methods: {
   methods: {
+    async getstopTypeMap() {
+      const { data = [] } = await this.getDicts("pdm_stop_type");
+      data.forEach((e) => {
+        this.stopTypeMap[e.dictValue] = e.dictLabel;
+      });
+    },
     //显示
     //显示
     async openModel(row) {
     async openModel(row) {
       this.visible = true;
       this.visible = true;

+ 28 - 0
src/views/distributionnetwork/power-outage-control/duration-analysis/components/InputReasonModel.vue

@@ -16,6 +16,24 @@
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
+        <el-row>
+          <el-col :span="24">
+            <el-form-item label="原因类型">
+              <el-select
+                style="width: 100%"
+                placeholder="请选择"
+                v-model="form.stopType"
+              >
+                <el-option
+                  v-for="(ite, i) in stopTypeList"
+                  :key="i"
+                  :label="ite.dictLabel"
+                  :value="ite.dictValue"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
         <el-row :gutter="30">
         <el-row :gutter="30">
           <el-col :span="24">
           <el-col :span="24">
             <el-form-item label="停电原因">
             <el-form-item label="停电原因">
@@ -47,12 +65,22 @@ export default {
       title: "录入原因",
       title: "录入原因",
       form: {
       form: {
         stopReason: "",
         stopReason: "",
+        stopType: "",
       },
       },
       loading: false,
       loading: false,
       dialog: false,
       dialog: false,
+      stopTypeList: [],
     };
     };
   },
   },
+  mounted() {
+    this.getWorkType();
+  },
   methods: {
   methods: {
+    // 作业类型
+    async getWorkType() {
+      const { data } = await this.getDicts("pdm_stop_type");
+      this.stopTypeList = data;
+    },
     openModel(data) {
     openModel(data) {
       this.form = { ...data };
       this.form = { ...data };
       this.dialog = true;
       this.dialog = true;

+ 13 - 0
src/views/distributionnetwork/power-outage-control/duration-analysis/index.vue

@@ -249,6 +249,11 @@
           prop="standardTime"
           prop="standardTime"
           width="90"
           width="90"
         />
         />
+        <el-table-column label="原因类型" align="center" prop=" stopType">
+          <template slot-scope="{ row }">{{
+            stopTypeMap[row.stopType]
+          }}</template>
+        </el-table-column>
         <el-table-column
         <el-table-column
           label="停电原因"
           label="停电原因"
           align="center"
           align="center"
@@ -306,13 +311,21 @@ export default {
       selectedRows: [],
       selectedRows: [],
       // 研判停电类型
       // 研判停电类型
       judgePoweroffNatureDscList: [],
       judgePoweroffNatureDscList: [],
+      stopTypeMap: {},
     };
     };
   },
   },
   created() {
   created() {
     this.getjudgePoweroffNatureDscList();
     this.getjudgePoweroffNatureDscList();
+    this.getstopTypeMap();
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async getstopTypeMap() {
+      const { data = [] } = await this.getDicts("pdm_stop_type");
+      data.forEach((e) => {
+        this.stopTypeMap[e.dictValue] = e.dictLabel;
+      });
+    },
     // 风险类型
     // 风险类型
     async getjudgePoweroffNatureDscList() {
     async getjudgePoweroffNatureDscList() {
       const { data } = await this.getDicts("stop_type");
       const { data } = await this.getDicts("stop_type");

+ 167 - 95
src/views/distributionnetwork/quantity-of-work/index.vue

@@ -1,6 +1,12 @@
 <template>
 <template>
   <div class="app-container scroll-auto">
   <div class="app-container scroll-auto">
-    <el-form ref="queryForm" :model="queryParams" size="small" :inline="true">
+    <el-form
+      ref="queryForm"
+      :model="queryParams"
+      size="small"
+      :inline="true"
+      v-show="showSearch"
+    >
       <el-form-item label="批次工程名称" prop="batchName">
       <el-form-item label="批次工程名称" prop="batchName">
         <el-input
         <el-input
           v-model="queryParams.batchName"
           v-model="queryParams.batchName"
@@ -52,6 +58,20 @@
           />
           />
         </el-select>
         </el-select>
       </el-form-item>
       </el-form-item>
+      <el-form-item label="异常状态" prop="excType">
+        <el-select
+          v-model="queryParams.excType"
+          placeholder="请选择异常状态"
+          clearable
+        >
+          <el-option
+            v-for="dict in excTypeOption"
+            :key="dict.value"
+            :label="dict.label"
+            :value="dict.value"
+          />
+        </el-select>
+      </el-form-item>
       <el-form-item>
       <el-form-item>
         <el-button
         <el-button
           type="primary"
           type="primary"
@@ -65,6 +85,17 @@
         >
         >
       </el-form-item>
       </el-form-item>
     </el-form>
     </el-form>
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
+      </el-col>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
+    </el-row>
     <div class="table">
     <div class="table">
       <el-table
       <el-table
         ref="renewalTable"
         ref="renewalTable"
@@ -131,19 +162,26 @@
           fixed="left"
           fixed="left"
         />
         />
         <el-table-column
         <el-table-column
+          label="关联作业总信息数"
+          prop="workTotal"
+          align="center"
+          width="100"
+          fixed="left"
+        />
+        <el-table-column
           label="10千伏电缆线路"
           label="10千伏电缆线路"
           prop="vehicleNo"
           prop="vehicleNo"
           align="center"
           align="center"
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="lineCableNewPlanQt"
             prop="lineCableNewPlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="lineCableNewAccuQt"
             prop="lineCableNewAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -155,31 +193,32 @@
               ></template
               ></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
+            label="周累计工程量"
             align="center"
             align="center"
-            prop="lineCableNewAccuQtWork"
+            prop="lineCableNewAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.lineCableNewAccuQt == null }">{{
-                scope.row.lineCableNewAccuQtWork
-              }}</span></template
-            >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="周累计量"
+            label="作业周完成量"
             align="center"
             align="center"
-            prop="lineCableNewAccuQtWeek"
+            prop="lineCableNewAccuQtWorkWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="作业周完成量"
+            label="关联作业信息数"
             align="center"
             align="center"
-            prop="lineCableNewAccuQtWorkWeek"
+            prop="lineCableNewAccuQtWork"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.lineCableNewAccuQt == null }">{{
+                scope.row.lineCableNewAccuQtWork
+              }}</span></template
+            >
           </el-table-column>
           </el-table-column>
         </el-table-column>
         </el-table-column>
 
 
@@ -189,13 +228,13 @@
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="lineOverhdNewPlanQt"
             prop="lineOverhdNewPlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="lineOverhdNewAccuQt"
             prop="lineOverhdNewAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -207,31 +246,32 @@
               ></template
               ></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
+            label="周累计工程量"
             align="center"
             align="center"
-            prop="lineOverhdNewAccuQtWork"
+            prop="lineOverhdNewAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.lineOverhdNewAccuQt == null }">{{
-                scope.row.lineOverhdNewAccuQtWork
-              }}</span></template
-            >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="周累计量"
+            label="作业周完成量"
             align="center"
             align="center"
-            prop="lineOverhdNewAccuQtWeek"
+            prop="lineOverhdNewAccuQtWorkWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="作业周完成量"
+            label="关联作业信息数"
             align="center"
             align="center"
-            prop="lineOverhdNewAccuQtWorkWeek"
+            prop="lineOverhdNewAccuQtWork"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.lineOverhdNewAccuQt == null }">{{
+                scope.row.lineOverhdNewAccuQtWork
+              }}</span></template
+            >
           </el-table-column>
           </el-table-column>
         </el-table-column>
         </el-table-column>
         <el-table-column
         <el-table-column
@@ -240,13 +280,13 @@
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="distTransNewPlanQt"
             prop="distTransNewPlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="distTransNewAccuQt"
             prop="distTransNewAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -258,31 +298,32 @@
               ></template
               ></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
+            label="周累计工程量"
             align="center"
             align="center"
-            prop="distTransNewAccuQtWork"
+            prop="distTransNewAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.distTransNewAccuQt == null }">{{
-                scope.row.distTransNewAccuQtWork
-              }}</span></template
-            >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="周累计量"
+            label="作业周完成量"
             align="center"
             align="center"
-            prop="distTransNewAccuQtWeek"
+            prop="distTransNewAccuQtWorkWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="作业周完成量"
+            label="关联作业信息数"
             align="center"
             align="center"
-            prop="distTransNewAccuQtWorkWeek"
+            prop="distTransNewAccuQtWork"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.distTransNewAccuQt == null }">{{
+                scope.row.distTransNewAccuQtWork
+              }}</span></template
+            >
           </el-table-column>
           </el-table-column>
         </el-table-column>
         </el-table-column>
         <el-table-column
         <el-table-column
@@ -292,13 +333,13 @@
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="lowVoltLinePlanQt"
             prop="lowVoltLinePlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="lowVoltLineAccuQt"
             prop="lowVoltLineAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -310,31 +351,32 @@
               ></template
               ></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
+            label="周累计工程量"
             align="center"
             align="center"
-            prop="lowVoltLineAccuQtWork"
+            prop="lowVoltLineAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.lowVoltLineAccuQt == null }">{{
-                scope.row.lowVoltLineAccuQtWork
-              }}</span></template
-            >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="周累计量"
+            label="作业周完成量"
             align="center"
             align="center"
-            prop="lowVoltLineAccuQtWeek"
+            prop="lowVoltLineAccuQtWorkWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="作业周完成量"
+            label="关联作业信息数"
             align="center"
             align="center"
-            prop="lowVoltLineAccuQtWorkWeek"
+            prop="lowVoltLineAccuQtWork"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.lowVoltLineAccuQt == null }">{{
+                scope.row.lowVoltLineAccuQtWork
+              }}</span></template
+            >
           </el-table-column>
           </el-table-column>
         </el-table-column>
         </el-table-column>
 
 
@@ -344,13 +386,13 @@
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="towerPlanQt"
             prop="towerPlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="towerAccuQt"
             prop="towerAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -361,31 +403,32 @@
               }}</span></template
               }}</span></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
+            label="周累计工程量"
             align="center"
             align="center"
-            prop="towerAccuQtWork"
+            prop="towerAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.towerAccuQt == null }">{{
-                scope.row.towerAccuQtWork
-              }}</span></template
-            >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="周累计量"
+            label="作业周完成量"
             align="center"
             align="center"
-            prop="towerAccuQtWeek"
+            prop="towerAccuQtWorkWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="作业周完成量"
+            label="关联作业信息数"
             align="center"
             align="center"
-            prop="towerAccuQtWorkWeek"
+            prop="towerAccuQtWork"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.towerAccuQt == null }">{{
+                scope.row.towerAccuQtWork
+              }}</span></template
+            >
           </el-table-column>
           </el-table-column>
         </el-table-column>
         </el-table-column>
         <el-table-column
         <el-table-column
@@ -394,13 +437,13 @@
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="ringCabinetPlanQt"
             prop="ringCabinetPlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="ringCabinetAccuQt"
             prop="ringCabinetAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -412,31 +455,32 @@
               ></template
               ></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
+            label="周累计工程量"
             align="center"
             align="center"
-            prop="ringCabinetAccuQtWork"
+            prop="ringCabinetAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.ringCabinetAccuQt == null }">{{
-                scope.row.ringCabinetAccuQtWork
-              }}</span></template
-            >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="周累计量"
+            label="作业周完成量"
             align="center"
             align="center"
-            prop="ringCabinetAccuQtWeek"
+            prop="ringCabinetAccuQtWorkWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
-            label="作业周完成量"
+            label="关联作业信息数"
             align="center"
             align="center"
-            prop="ringCabinetAccuQtWorkWeek"
+            prop="ringCabinetAccuQtWork"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.ringCabinetAccuQt == null }">{{
+                scope.row.ringCabinetAccuQtWork
+              }}</span></template
+            >
           </el-table-column>
           </el-table-column>
         </el-table-column>
         </el-table-column>
         <el-table-column
         <el-table-column
@@ -445,13 +489,13 @@
           :show-overflow-tooltip="true"
           :show-overflow-tooltip="true"
         >
         >
           <el-table-column
           <el-table-column
-            label="计划量"
+            label="计划工程量"
             align="center"
             align="center"
             prop="poleTabPlanQt"
             prop="poleTabPlanQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
           <el-table-column
           <el-table-column
-            label="累计量"
+            label="累计工程量"
             align="center"
             align="center"
             prop="poleTabAccuQt"
             prop="poleTabAccuQt"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -462,20 +506,9 @@
               }}</span></template
               }}</span></template
             >
             >
           </el-table-column>
           </el-table-column>
+
           <el-table-column
           <el-table-column
-            label="作业数量"
-            align="center"
-            prop="poleTabAccuQtWork"
-            :show-overflow-tooltip="true"
-          >
-            <template scope="scope">
-              <span :class="{ isRed: scope.row.poleTabAccuQt == null }">{{
-                scope.row.poleTabAccuQtWork
-              }}</span></template
-            >
-          </el-table-column>
-          <el-table-column
-            label="周累计量"
+            label="周累计工程量"
             align="center"
             align="center"
             prop="poleTabAccuQtWeek"
             prop="poleTabAccuQtWeek"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
@@ -495,6 +528,18 @@
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           >
           >
           </el-table-column>
           </el-table-column>
+          <el-table-column
+            label="关联作业信息数"
+            align="center"
+            prop="poleTabAccuQtWork"
+            :show-overflow-tooltip="true"
+          >
+            <template scope="scope">
+              <span :class="{ isRed: scope.row.poleTabAccuQt == null }">{{
+                scope.row.poleTabAccuQtWork
+              }}</span></template
+            >
+          </el-table-column>
         </el-table-column>
         </el-table-column>
       </el-table>
       </el-table>
       <pagination
       <pagination
@@ -510,11 +555,16 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { workCompleStatistics } from "@/api/powerdistribution/quantity-of-work";
+import {
+  workCompleStatistics,
+  workCompleStatisticsExport,
+} from "@/api/powerdistribution/quantity-of-work";
 
 
 export default {
 export default {
   data() {
   data() {
     return {
     return {
+      // 显示搜索条件
+      showSearch: true,
       dataList: [],
       dataList: [],
       loading: true,
       loading: true,
       total: 0,
       total: 0,
@@ -528,6 +578,10 @@ export default {
         { value: "10", label: "农网" },
         { value: "10", label: "农网" },
         { value: "20", label: "城网" },
         { value: "20", label: "城网" },
       ],
       ],
+      excTypeOption: [
+        { value: "0", label: "否" },
+        { value: "1", label: "是" },
+      ],
       // 查询参数
       // 查询参数
       queryParams: {
       queryParams: {
         pageNum: 1,
         pageNum: 1,
@@ -544,6 +598,24 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await workCompleStatisticsExport({
+        ...this.queryParams,
+      });
+      if (res) {
+        const elink = document.createElement("a");
+        elink.download = `工程完成情况_${this.queryParams.planYear}.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     /** 查询列表 */
     /** 查询列表 */
     getList() {
     getList() {
       this.loading = true;
       this.loading = true;

+ 25 - 1
src/views/distributionnetwork/secure/abnormal-data/index.vue

@@ -100,6 +100,11 @@
       </el-form-item>
       </el-form-item>
     </el-form>
     </el-form>
     <el-row :gutter="10" class="mb8">
     <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
+      </el-col>
       <right-toolbar
       <right-toolbar
         :showSearch.sync="showSearch"
         :showSearch.sync="showSearch"
         @queryTable="getList"
         @queryTable="getList"
@@ -246,7 +251,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { getWorkPlanList } from "@/api/secure/pdm-work-plan";
+import { getWorkPlanList, workPlanExport } from "@/api/secure/pdm-work-plan";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
 export default {
 export default {
@@ -294,6 +299,25 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await workPlanExport({
+        ...this.queryParams,
+        dataFlag: 1,
+      });
+      if (res) {
+        const elink = document.createElement("a");
+        elink.download = `作业异常数据.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     // 风险类型
     // 风险类型
     async getExceptionTypeList() {
     async getExceptionTypeList() {
       const { data } = await this.getDicts("power_exception_type");
       const { data } = await this.getDicts("power_exception_type");

+ 23 - 1
src/views/distributionnetwork/secure/reason-for-cancellation/index.vue

@@ -93,6 +93,9 @@
           @click="handleUpdate(selectedRows[0], '录入取消原因')"
           @click="handleUpdate(selectedRows[0], '录入取消原因')"
           >录入取消原因</el-button
           >录入取消原因</el-button
         >
         >
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
       </el-col>
       </el-col>
       <right-toolbar
       <right-toolbar
         :showSearch.sync="showSearch"
         :showSearch.sync="showSearch"
@@ -248,7 +251,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { getWorkPlanList } from "@/api/secure/pdm-work-plan";
+import { getWorkPlanList, workPlanExport } from "@/api/secure/pdm-work-plan";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import WorkPlanModel from "../components/WorkPlanModel.vue";
 import WorkPlanModel from "../components/WorkPlanModel.vue";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
@@ -297,6 +300,25 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await workPlanExport({
+        ...this.queryParams,
+        planExecStDsc: "已取消",
+      });
+      if (res) {
+        const elink = document.createElement("a");
+        elink.download = `计划取消原因.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     async getCancelType() {
     async getCancelType() {
       const { data = [] } = await this.getDicts("pdm_cancel_type");
       const { data = [] } = await this.getDicts("pdm_cancel_type");
       data.forEach((e) => {
       data.forEach((e) => {

+ 23 - 1
src/views/distributionnetwork/secure/reason-for-the-plan/index.vue

@@ -93,6 +93,9 @@
           @click="handleUpdate(selectedRows[0], '录入临时计划原因')"
           @click="handleUpdate(selectedRows[0], '录入临时计划原因')"
           >录入临时计划原因</el-button
           >录入临时计划原因</el-button
         >
         >
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
       </el-col>
       </el-col>
       <right-toolbar
       <right-toolbar
         :showSearch.sync="showSearch"
         :showSearch.sync="showSearch"
@@ -256,7 +259,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { getWorkPlanList } from "@/api/secure/pdm-work-plan";
+import { getWorkPlanList, workPlanExport } from "@/api/secure/pdm-work-plan";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import WorkPlanModel from "../components/WorkPlanModel.vue";
 import WorkPlanModel from "../components/WorkPlanModel.vue";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
@@ -308,6 +311,25 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await workPlanExport({
+        ...this.queryParams,
+        planTypCd: this.planTypCd,
+      });
+      if (res) {
+        const elink = document.createElement("a");
+        elink.download = `临时计划原因.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     async getTemporaryType() {
     async getTemporaryType() {
       const { data = [] } = await this.getDicts("pdm_temporary_type");
       const { data = [] } = await this.getDicts("pdm_temporary_type");
       data.forEach((e) => {
       data.forEach((e) => {

+ 25 - 1
src/views/distributionnetwork/secure/risk-identification/index.vue

@@ -115,6 +115,11 @@
       </el-form-item>
       </el-form-item>
     </el-form>
     </el-form>
     <el-row :gutter="10" class="mb8">
     <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button type="primary" plain size="mini" @click="handleExport"
+          >导出</el-button
+        >
+      </el-col>
       <right-toolbar
       <right-toolbar
         :showSearch.sync="showSearch"
         :showSearch.sync="showSearch"
         @queryTable="getList"
         @queryTable="getList"
@@ -277,7 +282,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import { getWorkPlanList } from "@/api/secure/pdm-work-plan";
+import { getWorkPlanList, workPlanExport } from "@/api/secure/pdm-work-plan";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import { getWorkUnitList } from "@/api/secure/daily-newspaper";
 import { getRiskRoleList } from "@/api/secure/pdm-risk-role";
 import { getRiskRoleList } from "@/api/secure/pdm-risk-role";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
 import WorkPlanDetailModel from "../components/WorkPlanDetailModel.vue";
@@ -332,6 +337,25 @@ export default {
     this.getList();
     this.getList();
   },
   },
   methods: {
   methods: {
+    async handleExport() {
+      const res = await workPlanExport({
+        ...this.queryParams,
+        riskFlag: "1",
+      });
+      if (res) {
+        const elink = document.createElement("a");
+        elink.download = `风险辨识.xlsx`;
+        elink.style.display = "none";
+        const blob = new Blob([res], { type: "application/vnd.ms-excel" });
+        elink.href = URL.createObjectURL(blob);
+        document.body.appendChild(elink);
+        elink.click();
+        document.body.removeChild(elink);
+        window.URL.revokeObjectURL(url);
+      } else {
+        this.$message.error("导出异常请联系管理员");
+      }
+    },
     // 风险类型
     // 风险类型
     async getExceptionTypeList() {
     async getExceptionTypeList() {
       const { data } = await this.getDicts("power_exception_type");
       const { data } = await this.getDicts("power_exception_type");