cfofpp 6 mesiacov pred
rodič
commit
83fc7f0b0c

+ 2 - 14
src/views/distributionnetwork/secure/abnormal-data/index.vue

@@ -162,23 +162,11 @@ export default {
     this.getList();
   },
   methods: {
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.form = { ...row };
-      this.openDataScope = true;
-      this.title = "编辑";
-    },
     /** 查询列表 */
     getList() {
       this.loading = true;
-      getWorkPlanList({ ...this.queryParams }).then((response) => {
-        this.dataList = response.rows.filter(
-          (ite) =>
-            ite.voltLvlDsc == "其他" &&
-            !ite.isEnergizedOpDsc &&
-            ite.poweroffTypDsc &&
-            ite.workticketTypDsc == "配电带电作业工作票"
-        );
+      getWorkPlanList({ ...this.queryParams, dataFlag: 1 }).then((response) => {
+        this.dataList = response.rows;
         this.loading = false;
       });
     },

+ 186 - 0
src/views/distributionnetwork/secure/components/WorkPlanModel.vue

@@ -0,0 +1,186 @@
+<template>
+  <el-drawer
+    :title="title"
+    :before-close="handleClose"
+    :visible.sync="dialog"
+    direction="ttb"
+    ref="drawer"
+  >
+    <div class="demo-drawer__content" style="padding: 0 20px">
+      <el-form :model="form">
+        <el-row :gutter="30">
+          <el-col :span="8">
+            <el-form-item label="作业内容">
+              <el-input v-model="form.opContent" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="作业地址">
+              <el-input v-model="form.opAddr" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="线路/变电站">
+              <el-input v-model="form.subsOrLineId" disabled></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
+          <el-col :span="8">
+            <el-form-item label="电压等级">
+              <el-input v-model="form.voltLvlCd" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="作业类型">
+              <el-input v-model="form.opTypCd" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="管理单位">
+              <el-input v-model="form.mgmtOrgNm" disabled></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
+          <el-col :span="8">
+            <el-form-item label="作业单位">
+              <el-input v-model="form.submitOrgNm" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="工作负责人">
+              <el-input v-model="form.workPrincipNm" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="作业班组">
+              <el-input v-model="form.workTeamNm" disabled></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
+          <el-col :span="8">
+            <el-form-item label="作业风险">
+              <el-input v-model="form.opRiskLvlDsc" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="作业人数">
+              <el-input v-model="form.mainBusiOrgOpNum" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="作业开始时间">
+              <el-input v-model="form.planStartWkTm" disabled></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
+          <el-col :span="8">
+            <el-form-item label="作业结束时间">
+              <el-input v-model="form.planEndTm" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="专业类型">
+              <el-input v-model="form.majorTypCd" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24" v-if="title == '录入取消原因'">
+            <el-form-item label="取消原因">
+              <el-input
+                type="textarea"
+                :rows="3"
+                placeholder="请输入取消原因"
+                v-model="form.cancelReason"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="24" v-if="title == '录入临时计划原因'">
+            <el-form-item label="临时计划原因">
+              <el-input
+                type="textarea"
+                :rows="3"
+                placeholder="请输入临时计划原因"
+                v-model="form.planReason"
+              />
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <div class="demo-drawer__footer" style="text-align: right">
+        <el-button @click="cancelForm">取 消</el-button>
+        <el-button
+          type="primary"
+          @click="$refs.drawer.closeDrawer()"
+          :loading="loading"
+          >{{ loading ? "提交中 ..." : "确 定" }}</el-button
+        >
+      </div>
+    </div>
+  </el-drawer>
+</template>
+
+<script>
+import { updateWorkPlan } from "@/api/secure/pdm-work-plan";
+export default {
+  data() {
+    return {
+      title: "",
+      form: {
+        opContent: "",
+        opAddr: "",
+        subsOrLineId: "",
+        voltLvlCd: "",
+        opTypCd: "",
+        mgmtOrgNm: "",
+        submitOrgNm: "",
+        workPrincipNm: "",
+        workTeamNm: "",
+        opRiskLvlDsc: "",
+        mainBusiOrgOpNum: "",
+        planStartWkTm: "",
+        planEndTm: "",
+        majorTypCd: "",
+        cancelReason: "",
+        planReason: "",
+      },
+      loading: false,
+      dialog: false,
+    };
+  },
+  methods: {
+    openModel(data, title) {
+      this.form = { ...data };
+      this.title = title;
+      this.dialog = true;
+    },
+    handleClose(done) {
+      if (this.loading) {
+        return;
+      }
+      this.loading = true;
+      updateWorkPlan(this.form).then((response) => {
+        this.$modal.msgSuccess("修改成功");
+        this.loading = false;
+        this.dialog = false;
+        this.$emit("refresh");
+      });
+    },
+    cancelForm() {
+      this.loading = false;
+      this.dialog = false;
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+::v-deep {
+  .el-drawer.ttb,
+  .el-drawer.btt {
+    height: 90% !important;
+  }
+}
+</style>

+ 13 - 47
src/views/distributionnetwork/secure/reason-for-cancellation/index.vue

@@ -49,7 +49,12 @@
         <el-table-column prop="date" label="序号" width="80" align="center">
           <template slot-scope="scope">{{ scope.$index + 1 }}</template>
         </el-table-column>
-        <el-table-column label="作业内容" align="center" prop="opContent" />
+        <el-table-column
+          label="作业内容"
+          align="center"
+          prop="opContent"
+          :show-overflow-tooltip="true"
+        />
         <el-table-column
           label="作业地址"
           align="center"
@@ -153,44 +158,22 @@
           class-name="small-padding fixed-width"
         >
           <template slot-scope="scope">
-            <el-button
-              size="mini"
-              type="text"
-              icon="el-icon-edit"
-              @click="handleUpdate(scope.row)"
-              >编辑</el-button
+            <el-button size="mini" type="text" @click="handleUpdate(scope.row)"
+              >录入取消原因</el-button
             >
           </template>
         </el-table-column>
       </el-table>
     </div>
-    <el-dialog
-      :title="title"
-      :visible.sync="openDataScope"
-      width="500px"
-      append-to-body
-    >
-      <el-form :model="form" label-width="70px">
-        <el-form-item label="取消原因">
-          <el-input
-            type="textarea"
-            :rows="3"
-            placeholder="请输入取消原因"
-            v-model="form.cancelReason"
-          />
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitDataScope">确 定</el-button>
-        <el-button @click="cancelDataScope">取 消</el-button>
-      </div>
-    </el-dialog>
+    <WorkPlanModel ref="workPlanModelRef" @refresh="getList()"></WorkPlanModel>
   </div>
 </template>
 
 <script>
-import { getWorkPlanList, updateWorkPlan } from "@/api/secure/pdm-work-plan";
+import { getWorkPlanList } from "@/api/secure/pdm-work-plan";
+import WorkPlanModel from "../components/WorkPlanModel.vue";
 export default {
+  components: { WorkPlanModel },
   data() {
     return {
       dataList: [],
@@ -207,9 +190,6 @@ export default {
         workPrincipNm: "",
         submitOrgNm: "",
       },
-      form: {},
-      openDataScope: false,
-      title: "",
     };
   },
   created() {
@@ -218,21 +198,7 @@ export default {
   methods: {
     /** 修改按钮操作 */
     handleUpdate(row) {
-      this.form = { ...row };
-      this.openDataScope = true;
-      this.title = "编辑";
-    },
-    /** 提交按钮 */
-    submitDataScope() {
-      updateWorkPlan(this.form).then((response) => {
-        this.$modal.msgSuccess("修改成功");
-        this.openDataScope = false;
-        this.getList();
-      });
-    },
-    // 取消按钮
-    cancelDataScope() {
-      this.openDataScope = false;
+      this.$refs.workPlanModelRef.openModel({ ...row }, "录入取消原因");
     },
     /** 查询列表 */
     getList() {

+ 25 - 56
src/views/distributionnetwork/secure/reason-for-the-plan/index.vue

@@ -46,10 +46,15 @@
     </el-form>
     <div class="table">
       <el-table v-loading="loading" :data="dataList">
-        <el-table-column prop="date" label="序号" width="80" align="center">
+        <el-table-column prop="date" label="序号" width="70" align="center">
           <template slot-scope="scope">{{ scope.$index + 1 }}</template>
         </el-table-column>
-        <el-table-column label="作业内容" align="center" prop="opContent" />
+        <el-table-column
+          label="作业内容"
+          align="center"
+          prop="opContent"
+          :show-overflow-tooltip="true"
+        />
         <el-table-column
           label="作业地址"
           align="center"
@@ -147,44 +152,22 @@
           class-name="small-padding fixed-width"
         >
           <template slot-scope="scope">
-            <el-button
-              size="mini"
-              type="text"
-              icon="el-icon-edit"
-              @click="handleUpdate(scope.row)"
-              >编辑</el-button
+            <el-button size="mini" type="text" @click="handleUpdate(scope.row)"
+              >录入临时计划原因</el-button
             >
           </template>
         </el-table-column>
       </el-table>
     </div>
-    <el-dialog
-      :title="title"
-      :visible.sync="openDataScope"
-      width="500px"
-      append-to-body
-    >
-      <el-form :model="form" label-width="100px">
-        <el-form-item label="临时计划原因">
-          <el-input
-            type="textarea"
-            :rows="3"
-            placeholder="请输入临时计划原因"
-            v-model="form.planReason"
-          />
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitDataScope">确 定</el-button>
-        <el-button @click="cancelDataScope">取 消</el-button>
-      </div>
-    </el-dialog>
+    <WorkPlanModel ref="workPlanModelRef" @refresh="getList()"></WorkPlanModel>
   </div>
 </template>
 
 <script>
-import { getWorkPlanList, updateWorkPlan } from "@/api/secure/pdm-work-plan";
+import { getWorkPlanList } from "@/api/secure/pdm-work-plan";
+import WorkPlanModel from "../components/WorkPlanModel.vue";
 export default {
+  components: { WorkPlanModel },
   data() {
     return {
       dataList: [],
@@ -201,42 +184,28 @@ export default {
         workPrincipNm: "",
         submitOrgNm: "",
       },
-      form: {},
-      openDataScope: false,
-      title: "",
+      planTypCd: "",
     };
   },
-  created() {
+  async mounted() {
+    const { data } = await this.getDicts("power_plan_typ_cd");
+    this.planTypCd = data && data.length ? data[1].dictValue : undefined;
     this.getList();
   },
   methods: {
     /** 修改按钮操作 */
     handleUpdate(row) {
-      this.form = { ...row };
-      this.openDataScope = true;
-      this.title = "编辑";
-    },
-    /** 提交按钮 */
-    submitDataScope() {
-      updateWorkPlan(this.form).then((response) => {
-        this.$modal.msgSuccess("修改成功");
-        this.openDataScope = false;
-        this.getList();
-      });
-    },
-    // 取消按钮
-    cancelDataScope() {
-      this.openDataScope = false;
+      this.$refs.workPlanModelRef.openModel({ ...row }, "录入临时计划原因");
     },
     /** 查询列表 */
-    getList() {
+    async getList() {
       this.loading = true;
-      getWorkPlanList({ ...this.queryParams }).then((response) => {
-        this.dataList = response.rows.filter(
-          (ite) => ite.planTypDsc == "临时计划"
-        );
-        this.loading = false;
-      });
+      getWorkPlanList({ ...this.queryParams, planTypCd: this.planTypCd }).then(
+        (response) => {
+          this.dataList = response.rows;
+          this.loading = false;
+        }
+      );
     },
     /** 搜索按钮操作 */
     handleQuery() {

+ 7 - 7
src/views/distributionnetwork/secure/weekly-report/components/level3-above-plans-table.vue

@@ -3,19 +3,19 @@
     <el-table-column prop="date" label="序号" width="80" align="center">
       <template slot-scope="scope">{{ scope.$index + 1 }}</template>
     </el-table-column>
-    <el-table-column prop="name" label="工作内容" align="center">
+    <el-table-column prop="opContent" label="工作内容" align="center">
     </el-table-column>
-    <el-table-column prop="name" label="风险等级" align="center">
+    <el-table-column prop="opRiskLvlDsc" label="风险等级" align="center">
     </el-table-column>
-    <el-table-column prop="name" label="作业时间" align="center">
+    <el-table-column prop="planStartWkTm" label="作业时间" align="center">
     </el-table-column>
-    <el-table-column prop="name" label="施工单位" align="center">
+    <el-table-column prop="ovhaulConstOrgNm" label="施工单位" align="center">
     </el-table-column>
-    <el-table-column prop="name" label="运维单位" align="center">
+    <el-table-column prop="opMaintOrgNm" label="运维单位" align="center">
     </el-table-column>
-    <el-table-column prop="name" label="专业部门" align="center">
+    <el-table-column prop="majorMgmtDept" label="专业部门" align="center">
     </el-table-column>
-    <el-table-column prop="name" label="到岗到位安排" align="center">
+    <el-table-column prop="workPrincipNm" label="到岗到位安排" align="center">
     </el-table-column>
   </el-table>
 </template>

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

@@ -174,11 +174,11 @@ export default {
     /** 搜索按钮操作 */
     async handleQuery() {
       this.loading = true;
-      const { appointmentList, illegalList, nextList, planList } =
+      const { workList, appointmentList, illegalList, nextList, planList } =
         await getReportWeek(this.startDate, this.endDate);
       this.$nextTick(() => {
         this.$refs["weeklyPlanSituationTableRef"].tableData = planList;
-        this.$refs["level3AbovePlansTableRef"].tableData = [];
+        this.$refs["level3AbovePlansTableRef"].tableData = workList;
         this.$refs["nextWeekPlanSituationTableRef"].tableData = nextList;
         this.$refs["weeklyViolationSituationTableRef"].tableData = illegalList;
         this.$refs["thoughtfulJobSituationTableRef"].tableData =