소스 검색

1.报工查询

javababay 2 년 전
부모
커밋
5be49c64b8
1개의 변경된 파일1293개의 추가작업 그리고 0개의 파일을 삭제
  1. 1293 0
      src/views/energyOperationSupport/components/MaintenanceStopService/submittedselect.vue

+ 1293 - 0
src/views/energyOperationSupport/components/MaintenanceStopService/submittedselect.vue

@@ -0,0 +1,1293 @@
+<template>
+  <!-- 报工查看 -->
+  <div class="submittedselect">
+    <div class="box">
+      <div class="box-top">
+        <el-form
+          style="overflow: hidden"
+          :style="filterForm.show ? null : { height: '0px' }"
+          size="mini"
+          label-width="85px"
+        >
+          <el-row>
+            <el-col :span="7">
+              <el-form-item label="申报日期">
+                <zj-timegran-date
+                  v-model="filterForm.data.declaretime"
+                  style="width: 100%"
+                  :type="'daterange'"
+                  :timegranId="filterForm.data.timegranid"
+                  :oneFoo="getselect"
+                  :defaultOffset="-1"
+                  :custom="1"
+                ></zj-timegran-date>
+              </el-form-item>
+            </el-col>
+            <el-col :span="4">
+              <el-form-item label="施工单位">
+                <el-input
+                  clearable
+                  v-model="filterForm.data.applyer"
+                  placeholder=""
+                  style="width: 100%"
+                ></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="4">
+              <el-form-item label="报工序号">
+                <el-input
+                  clearable
+                  v-model="filterForm.data.declareid"
+                  placeholder=""
+                  style="width: 100%"
+                >
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="4">
+              <el-form-item label="报工状态">
+                <el-select
+                  filterable
+                  clearable
+                  v-model="filterForm.data.billstatus"
+                  placeholder=""
+                  style="width: 100%"
+                >
+                  <el-option
+                    v-for="item of nameObj.billstatus.arr"
+                    :key="item.name"
+                    :value="item.name"
+                    :label="item.name"
+                  ></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+        <div class="box-top-gjl">
+          <div style="float: right; text-align: right">
+            <el-button
+              class="button"
+              type="primary"
+              size="mini"
+              icon="el-icon-search"
+              v-privilege="activeMenu + 'QUERY'"
+              @click="getformselect(1)"
+              >查询</el-button
+            >
+            <el-button
+              class="button"
+              type="primary"
+              size="mini"
+              icon="el-icon-refresh"
+              v-privilege="activeMenu + 'QUERY'"
+              @click="tableDataCancel()"
+              >重置</el-button
+            >
+            <el-button
+              size="mini"
+              :icon="
+                filterForm.show ? 'el-icon-caret-top' : 'el-icon-caret-bottom'
+              "
+              :title="filterForm.show ? '收起搜索区' : '展开搜索区'"
+              @click="
+                filterForm.show = !filterForm.show;
+                $nextTick(() => {
+                  singleTableHeight =
+                    getRoleHeight($refs['singleTable'].$el) - 45;
+                });
+              "
+              >{{ filterForm.show ? "收起" : "展开" }}</el-button
+            >
+          </div>
+        </div>
+      </div>
+      <div class="box-bottom">
+        <el-table
+          :default-sort="{ prop: 'construid', order: 'descending' }"
+          stripe
+          id="singleTable"
+          ref="singleTable"
+          :data="tableDataa"
+          v-loading="tableLoading"
+          style="width: 100%"
+          :height="180"
+          border
+          size="mini"
+          highlight-current-row
+          @selection-change="handleSelectionChange"
+          row-key="id"
+        >
+          <el-table-column
+            type="index"
+            :index="indexMethod"
+            label="序号"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="construid"
+            label="报工序号"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="state"
+            label="报工状态"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="signtime"
+            label="报工日期"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="bz"
+            label="报工人"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="constructionunits"
+            label="施工单位"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="construpeople"
+            label="施工人数"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            sortable
+            prop="construcontent"
+            label="报工内容"
+            min-width="100px"
+            :show-overflow-tooltip="true"
+          ></el-table-column>
+          <el-table-column
+            class-name="gn-TableDownloadExcel-none"
+            label="操作"
+            align="center"
+            width="240px"
+            fixed="right"
+          >
+            <template slot-scope="scope">
+              <div>
+                <el-button
+                  type="primary"
+                  size="mini"
+                  @click="but_editaa(scope.row)"
+                  >查看</el-button
+                >
+                <el-button
+                  size="mini"
+                  type="primary"
+                  @click="downloadFile(scope.row)"
+                  :loading="loading"
+                  >下载附件
+                </el-button>
+              </div>
+            </template>
+          </el-table-column>
+          >
+        </el-table>
+        <el-pagination
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="total"
+          :page-sizes="[10, 20, 50, 100, 500, 1000]"
+          :page-size="pageSize"
+          :current-page.sync="pageNum"
+          @size-change="tableSizeChange"
+          @current-change="getselect()"
+          style="text-align: right; margin-top: 10px"
+        ></el-pagination>
+      </div>
+    </div>
+    <el-dialog
+      :title="'检修停复役申请单 - 报工明细'"
+      :visible.sync="newdialog.editorBox.show"
+      width="940px"
+      :close-on-click-modal="false"
+      :show-close="!loading"
+    >
+      <div>
+        <el-form
+          ref="dialog_form"
+          :model="dialog.editorBox.form.data"
+          :rules="dialog.editorBox.form.rules"
+          size="mini"
+          label-width="120px"
+        >
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="报工序号" prop="construid">
+                <el-input
+                  clearable
+                  v-model="dialog.editorBox.form.dataa.construid"
+                  placeholder=""
+                  style="width: 100%"
+                  disabled
+                ></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="设备名称" prop="devicename">
+                <el-input
+                  clearable
+                  v-model="dialog.editorBox.form.data.devicename"
+                  placeholder=""
+                  style="width: 100%"
+                  disabled
+                ></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="设备分类" prop="equipment">
+                <el-input
+                  clearable
+                  v-model="dialog.editorBox.form.data.equipment"
+                  placeholder=""
+                  style="width: 100%"
+                  disabled
+                ></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="报工日期" prop="signtime">
+                <el-input
+                  clearable
+                  v-model="dialog.editorBox.form.data.signtime"
+                  placeholder=""
+                  style="width: 100%"
+                  disabled
+                ></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="报工人员" prop="bz">
+                <el-input
+                  clearable
+                  v-model="dialog.editorBox.form.dataa.bz"
+                  placeholder=""
+                  style="width: 100%"
+                  disabled
+                ></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="施工单位" prop="constructionunits">
+                <el-input
+                  disabled
+                  clearable
+                  v-model="dialog.editorBox.form.data.constructionunits"
+                  placeholder=""
+                  style="width: 100%"
+                ></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="施工人数" prop="construpeople">
+                <el-input
+                  clearable
+                  disabled
+                  v-model="dialog.editorBox.form.data.construpeople"
+                  placeholder=""
+                  style="width: 100%"
+                ></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-container>
+            <el-main style="padding: 0">
+              <el-form-item label="报工内容" prop="construcontent">
+                <el-input
+                  clearable
+                  disabled
+                  class="nr-textarea"
+                  type="textarea"
+                  v-model="dialog.editorBox.form.dataa.construcontent"
+                  placeholder=""
+                  style="width: 100%"
+                ></el-input>
+              </el-form-item>
+            </el-main>
+          </el-container>
+        </el-form>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="datesave()">确认</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog
+      :title="'文件下载列表'"
+      :visible.sync="dialog.editorBox.showtype"
+      width="610px"
+      :close-on-click-modal="false"
+      :show-close="!loading"
+    >
+      <div>
+        <el-form size="mini" ref="dialog_form_arr" label-width="0px">
+          <el-table
+            stripe
+            id="singleTable"
+            ref="singleTable"
+            :data="tableDatavalue"
+            v-loading="tableLoading"
+            style="width: 100%"
+            :height="singleTableHeight"
+            border
+            size="mini"
+            highlight-current-row
+            @selection-change="handleSelectionChange"
+          >
+            <el-table-column
+              sortable
+              fixed
+              prop="fileName"
+              label="文件名称"
+              width="160px"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              sortable
+              fixed
+              prop="filePath"
+              label="文件路径"
+              width="340px"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column label="操作" width="100px" fixed="right"
+              ><template slot-scope="scope">
+                <el-button
+                  size="small"
+                  type="primary"
+                  icon="el-icon-download"
+                  @click="downloadFilevalue(scope.row)"
+                  :loading="loading"
+                  >点击下载
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+        </el-form>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import fileUploadBox from "~/components/zg/fileUploadBox.vue";
+import timegranDate from "~/components/zg/timegranDate.vue";
+import { formatDate } from "@/utils/util.js";
+import store from "@/store/index.js";
+export default {
+  name: "MaintenanceApplication",
+  components: {
+    "zj-fileUploadBox": fileUploadBox,
+  },
+  data() {
+    return {
+      buttondispaly: false,
+      declaretime: "",
+      leixin: "add",
+      multipleSelection: [],
+      pickerOptions: {
+        shortcuts: [
+          {
+            text: "最近一周",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
+              picker.$emit("pick", [start, end]);
+            },
+          },
+          {
+            text: "最近一个月",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
+              picker.$emit("pick", [start, end]);
+            },
+          },
+          {
+            text: "最近三个月",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
+              picker.$emit("pick", [start, end]);
+            },
+          },
+        ],
+      },
+      store,
+      userInfo: {
+        data: null,
+      },
+      activeMenu: "",
+      filterForm: {
+        show: true,
+        data: {
+          billstatus: "", //审核状态
+          equipmentname: "", //检修类型
+          chargeman: "", //申请人
+          applayer: "一烧结", //申请单位
+          reasoncontent: "", //申请内容
+          bz: "", //备注
+          signtime: "", //审批时间
+          approver: "", //审批人
+          chargetime: "", //申请时间
+          declaretime: "", //申报日期
+          declareid: "", //申报序号
+          filename: "", //文件名
+        },
+      },
+      pageNum: 1,
+      pageSize: 20,
+      total: 0,
+      singleTableHeight: 100,
+      tableDatavalue: [],
+      tableData: [],
+      nameObj: {
+        equipment: {
+          obj: {},
+          arr: [],
+        },
+        devicename: {
+          obj: {},
+          arr: [],
+        },
+        id: {
+          obj: {},
+          arr: [],
+        },
+        name: {
+          obj: {},
+          arr: [],
+        },
+        billstatus: {
+          obj: {
+            end: "已通过",
+            start: "已驳回",
+            check: "审核中",
+          },
+          arr: [
+            {
+              id: "end",
+              name: "已通过",
+            },
+            {
+              id: "start",
+              name: "已驳回",
+            },
+            {
+              id: "check",
+              name: "审核中",
+            },
+            {
+              id: "starta",
+              name: "已完成",
+            },
+            {
+              id: "startb",
+              name: "进行中",
+            },
+          ],
+        },
+        equipmentname: {
+          obj: {
+            value1: "委外",
+            value2: "自检",
+          },
+          arr: [
+            {
+              id: "value1",
+              name: "委外",
+            },
+            {
+              id: "value2",
+              name: "自检",
+            },
+          ],
+        },
+      },
+      loading: false,
+      tableLoading: false,
+      dialog: {
+        editorBox: {
+          showtype: false,
+          show: false,
+          type: "",
+          form: {
+            data: {
+              billstatus: "", //审核状态
+              equipmentname: "", //检修类型
+              chargeman: "", //申请人
+              applayer: "", //申请单位
+              reasoncontent: "", //申请内容
+              bz: "", //备注
+              signtime: "", //审批时间
+              approver: "", //审批人
+              chargetime: "", //申请时间
+              declaretime: "", //申报日期
+              declareid: "", //申报序号
+              filename: "",
+              devicename: "", //设备名称
+              equipment: "", //设备分类
+              constructionunits: "", //施工单位
+              construpeople: "", //施工人数
+            },
+            rules: {
+              // billsno: [
+              //     { required: true, message: '该项不能为空', trigger: 'change' }
+              // ],
+              creattime: [
+                { required: true, message: "该项不能为空", trigger: "change" },
+              ],
+              applyer: [
+                { required: true, message: "该项不能为空", trigger: "change" },
+              ],
+              equipmentname: [
+                { required: true, message: "该项不能为空", trigger: "change" },
+              ],
+              chargeman: [
+                { required: true, message: "该项不能为空", trigger: "change" },
+              ],
+            },
+          },
+          files: [
+            // {
+            //     name: '测试',
+            //     url: '',
+            //     file: null,
+            //     operation: '' // add or del
+            // }
+          ],
+        },
+      },
+    };
+  },
+  created() {
+    this.activeMenu = window.localStorage.getItem("activeMenu");
+    this.getselect();
+  },
+  mounted() {
+    let that = this;
+    window.PEDataObj = {
+      // 将数据绑定到window上,供main页面使用
+      vm: that,
+      // tableArr:用于导出成Excel的表格的信息
+      tableArr: [
+        {
+          name: "",
+          id: "singleTable",
+        },
+      ],
+    };
+    that.$nextTick(() => {
+      // 立即获取的height有一定偏差,通过setTimeout延迟来解决
+      setTimeout(() => {
+        that.singleTableHeight =
+          that.getRoleHeight(that.$refs["singleTable"].$el) - 45;
+      }, 1);
+    });
+    that.store.dispatch("getUserInfo").then((res) => {
+      that.userInfo.data = res.data;
+    });
+    that.getselect();
+    that.getNodeData();
+    that.getNodeDataa();
+  },
+  methods: {
+    //文件下载
+    downloadFilevalue(row) {
+      let that = this;
+      let SubmitData = {
+        fileName: row.fileName,
+        filePath: row.filePath,
+      };
+      that.loading = true;
+      let urla = "pass/ems/v1/tmaintenancefiles/downloadFile/";
+      that.axios
+        .get(urla, {
+          params: SubmitData,
+          responseType: "blob",
+        })
+        .then(function (res) {
+          console.log("fdgd");
+          that.saveAs(res, row.fileName);
+          that.$message({
+            message: "下载成功",
+            type: "success",
+          });
+          that.loading = false;
+        })
+        .catch(function () {
+          that.$message.error("下载失败");
+          that.loading = false;
+        });
+    },
+    saveAs(data, fileName) {
+      this.loading = true;
+      let urlObject = window.URL || window.webkitURL || window;
+      // 将二进制流转为blob
+      let exportBlob = new Blob([data]);
+      if (typeof window.navigator.msSaveBlob !== "undefined") {
+        // 兼容IE,window.navigator.msSaveBlob:以本地方式保存文件
+        window.navigator.msSaveBlob(exportBlob, decodeURI(fileName));
+        this.loading = false;
+      } else {
+        // 创建新的URL并指向File对象或者Blob对象的地址
+        let blobURL = urlObject.createObjectURL(exportBlob);
+        let saveLink = document.createElement("a");
+        // 兼容:某些浏览器不支持HTML5的download属性
+        if (typeof saveLink.download === "undefined") {
+          saveLink.setAttribute("target", "_blank");
+        } else {
+          saveLink.download = fileName;
+        }
+        // 创建新的URL并指向File对象或者Blob对象的地址
+        saveLink.href = blobURL;
+        saveLink.click();
+        // 释放blob URL地址
+        urlObject.revokeObjectURL(exportBlob);
+        this.loading = false;
+        // let blob = new Blob([data])
+        // let fileURL = urlObject.createObjectURL(blob);
+        // 下载代码
+        // let downEle = document.createElement('a')
+        // let fname = `download` //下载文件的名字
+        // downEle.href = fileURL
+        // downEle.setAttribute('download', fname)
+        // document.body.appendChild(downEle)
+        // downEle.click()
+        // window.open(fileURL);
+      }
+    },
+    downloadFile(row) {
+      let that = this;
+      let id = row.declareid;
+      let url = "pass/ems/v1/tmaintenancefiles/getlist/";
+      that.axios.get(url + "?" + "id=" + id).then(function (res) {
+        if (res.code === "0") {
+          let arr = [];
+          for (let item of res.data) {
+            arr.push({
+              fileName: item.filename,
+              filePath: item.filepath,
+            });
+          }
+          that.tableDatavalue = arr;
+          that.dialog.editorBox.showtype = true;
+          that.tableLoading = false;
+        } else {
+          that.$message.error(res.message);
+        }
+      });
+    },
+    getNodeDataa() {
+      let that = this;
+      let node = "4";
+      let url = "pass/ems/v1/tprocessinfors/getmeuns/";
+      that.axios.get(url + "?" + "node=" + node).then(function (res) {
+        if (res.code === "0") {
+          let arr = [];
+          let obj = {};
+          for (let item of res.data) {
+            arr.push({
+              id: item.id,
+              name: item.name,
+            });
+            obj[item.id] = {
+              name: item.name,
+              node: item.node,
+            };
+          }
+          that.nameObj.equipment.arr = arr;
+          that.nameObj.equipment.obj = obj;
+        } else {
+          that.$message.error(res.message);
+        }
+      });
+    },
+    // 获取工序列表
+    getNodeData() {
+      let that = this;
+      let node = "3";
+      let url = "pass/ems/v1/tprocessinfors/getmeuns/";
+      that.axios.get(url + "?" + "node=" + node).then(function (res) {
+        if (res.code === "0") {
+          let arr = [];
+          let obj = {};
+          for (let item of res.data) {
+            arr.push({
+              id: item.id,
+              name: item.name,
+            });
+            obj[item.id] = {
+              name: item.name,
+              node: item.node,
+            };
+          }
+          that.nameObj.devicename.arr = arr;
+          that.nameObj.devicename.obj = obj;
+        } else {
+          that.$message.error(res.message);
+        }
+      });
+    },
+    //  计算树区域高度
+    getRoleHeight(dom) {
+      return window.innerHeight - dom.offsetTop;
+    },
+    getformselect(pageNum) {
+      let that = this;
+      let params = {
+        declaretime: that.filterForm.data.declaretime[0],
+        declaretime1: that.filterForm.data.declaretime[1],
+        applayer: that.filterForm.data.applayer,
+        declareid: that.filterForm.data.declareid,
+        billstatus: that.filterForm.data.billstatus,
+        record: 0,
+      };
+      that.pageNum = pageNum || that.pageNum;
+      that.tableLoading = true;
+      let url =
+        "pass/ems/v1/tmaintenances/like/?pageNum=" +
+        that.pageNum +
+        "&pageSize=" +
+        that.pageSize;
+      this.axios
+        .get(url, {
+          params: params,
+        })
+        .then(function (res) {
+          if (res.code === "0") {
+            let arr = [];
+            for (let item of res.data.list) {
+              arr.push({
+                billstatus: item.billstatus, //审核状态
+                equipmentname: item.equipmentname, //检修类型
+                applayer: item.applayer, //申请单位
+                signtime: item.signtime, //审批时间
+                approver: item.approver, //审批人
+                chargetime: item.chargetime, //申请时间
+                declaretime: item.declaretime, //申报日期
+                declareid: item.declareid, //申报序号
+                chargeman: item.chargeman,
+                reasoncontent: item.reasoncontent, //申请内容
+                bz: item.bz, //备注
+                filename: item.filename,
+                devicename: item.devicename,
+                equipment: item.equipment,
+                constructionunits: item.constructionunits,
+                construpeople: item.construpeople,
+              });
+            }
+
+            that.tableData = arr;
+            console.log("测试" + arr);
+            that.total = res.data.total;
+            that.tableLoading = false;
+          } else {
+            this.$message.error(res.message);
+          }
+        });
+    },
+    getselect(pageNum) {
+      let that = this;
+      let params = {
+        declaretime: that.filterForm.data.declaretime, //报工日期
+        applayer: that.filterForm.data.applayer, //申请单位
+        declareid: that.filterForm.data.declareid, //报工序号
+        state: that.filterForm.dataa.state, //报工状态
+        record: 0, //逻辑删除
+      };
+      that.pageNum = pageNum || that.pageNum;
+      that.tableLoading = true;
+      let url =
+        "pass/ems/v1/tmaintenances/likeapproval/?pageNum=" +
+        that.pageNum +
+        "&pageSize=" +
+        that.pageSize;
+      this.axios
+        .get(url, {
+          params: params,
+        })
+        .then(function (res) {
+          if (res.code === "0") {
+            let arr = [];
+            for (let item of res.data.list) {
+              arr.push({
+                billstatus: item.billstatus, //审核状态
+                equipmentname: item.equipmentname, //检修类型
+                applayer: item.applayer, //申请单位
+                signtime: item.signtime, //审批时间
+                approver: item.approver, //审批人
+                chargetime: item.chargetime, //申请时间
+                declaretime: item.declaretime, //申报日期
+                declareid: item.declareid, //申报序号
+                chargeman: item.chargeman,
+                reasoncontent: item.reasoncontent, //申请内容
+                bz: item.bz, //备注
+                filename: item.filename,
+                devicename: item.devicename,
+                equipment: item.equipment,
+                constructionunits: item.constructionunits,
+                construpeople: item.construpeople,
+              });
+            }
+
+            that.tableData = arr;
+            console.log("测试" + arr);
+            that.total = res.data.total;
+            that.tableLoading = false;
+          } else {
+            this.$message.error(res.message);
+          }
+        });
+    },
+    // 改变表格显示条数
+    tableSizeChange(val) {
+      let that = this;
+      that.pageSize = val;
+      that.getselect(1);
+    },
+    // 重置搜索
+    tableDataCancel() {
+      let that = this;
+      for (let key in that.filterForm.data) {
+        if (that.filterForm.data[key] instanceof Array) {
+          that.filterForm.data[key] = [];
+        } else {
+          that.filterForm.data[key] = "";
+        }
+      }
+      that.getselect(1);
+    },
+    but_add() {
+      let that = this;
+      that.dialog.editorBox.files = [];
+      for (let key in that.dialog.editorBox.form.data) {
+        that.dialog.editorBox.form.data[key] = "";
+      }
+      let nowDate = formatDate(new Date(), "yyyy-MM-dd");
+      that.dialog.editorBox.form.data.signtime = nowDate;
+      that.dialog.editorBox.form.data.chargetime = nowDate;
+      that.dialog.editorBox.form.data.declaretime = nowDate;
+      that.dialog.editorBox.form.data.chargeman = that.userInfo.data.userName;
+      that.dialog.editorBox.type = "add";
+      that.dialog.editorBox.show = true;
+      setTimeout(() => {
+        that.$refs["dialog_form"].clearValidate();
+      }, 100);
+    },
+    submitBut() {
+      let that = this;
+      if (that.dialog.editorBox.type === "put") {
+        that
+          .$confirm("是否同意审批?", "提示", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning",
+          })
+          .then(() => {
+            that.dataSave();
+          })
+          .catch(() => {});
+      } else {
+        that
+          .$confirm("是否驳回?", "提示", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning",
+          })
+          .then(() => {
+            that.dataSaves();
+          })
+          .catch(() => {});
+      }
+    },
+    // 批量删除
+    but_del_plural() {
+      let that = this;
+      if (that.multipleSelection.length > 0) {
+        let ids = [];
+        for (let item of that.multipleSelection) {
+          ids.push(item.declareid);
+        }
+        that
+          .$confirm("是否删除已选数据?", "提示", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            state: "warning",
+          })
+          .then(() => {
+            this.axios
+              .put("pass/ems/v1/tmaintenances/del/" + ids)
+              .then(function (res) {
+                if (res.code === "0") {
+                  that.$message({
+                    message: "删除成功",
+                    type: "success",
+                  });
+                  that.getselect();
+                } else {
+                  if (res.code === "51") {
+                  }
+                  that.$message.error(res.message);
+                }
+              })
+              .catch(function () {});
+          });
+      } else {
+        this.$message.error("至少要选择一条数据");
+      }
+    },
+    // 通过审核
+    but_edit() {
+      let that = this;
+      that.dialog.editorBox.form.data.approver = that.userInfo.data.approver;
+      if (that.multipleSelection.length > 0) {
+        let parmas = [];
+        for (let item of that.multipleSelection) {
+          parmas.push({
+            declareid: item.declareid,
+            billstatus: "已通过",
+            approver: that.userInfo.data.userName,
+            signtime: "",
+          });
+        }
+        that.loading = true;
+        that.axios
+          .put("pass/ems/v1/tmaintenances/pusAlla/", parmas)
+          .then(function (res) {
+            if (res.code === "0") {
+              let msg = res.message;
+              if (!msg || msg === "操作成功") {
+                that.$message({
+                  message: "操作成功",
+                  type: "success",
+                });
+              } else {
+                that.$message.warning("修改成功,注意:" + msg);
+              }
+              that.getselect();
+              that.dialog.editorBox.show = false;
+            } else {
+              that.$message.error(res.message);
+            }
+            that.loading = false;
+          })
+          .catch(function () {
+            that.loading = false;
+          });
+      } else {
+        this.$message.error("至少要选择一条数据");
+      }
+    },
+    //驳回
+    reject() {
+      let that = this;
+      if (that.multipleSelection.length > 0) {
+        let parmas = [];
+        for (let item of that.multipleSelection) {
+          parmas.push({ declareid: item.declareid, billstatus: "已驳回" });
+        }
+        that.loading = true;
+        that.axios
+          .put("pass/ems/v1/tmaintenances/pusAlla/", parmas)
+          .then(function (res) {
+            if (res.code === "0") {
+              let msg = res.message;
+              if (!msg || msg === "操作成功") {
+                that.$message({
+                  message: "驳回成功",
+                  type: "success",
+                });
+              } else {
+                that.$message.warning("修改成功,注意:" + msg);
+              }
+              that.getselect();
+              that.dialog.editorBox.show = false;
+            } else {
+              that.$message.error(res.message);
+            }
+            that.loading = false;
+          })
+          .catch(function () {
+            that.loading = false;
+          });
+      } else {
+        this.$message.error("至少要选择一条数据");
+      }
+    },
+    // 表格中多选按钮的相关方法
+    handleSelectionChange(val) {
+      for (let key in val) {
+        let bil = val[key].billstatus;
+        if (bil == "已完成" || bil == "进行中") {
+          this.buttondispaly = true;
+        } else {
+          this.buttondispaly = false;
+        }
+      }
+      console.log("val" + val);
+      this.multipleSelection = val;
+    },
+    //点击行触发,选中或不选中复选框
+    handleRowClick(row, column, event) {
+      this.$refs.singleTable.toggleRowSelection(row);
+      console.log(row);
+    },
+    // 修改
+    but_edit_plural() {
+      let that = this;
+      that.leixin = "PUT";
+      that.dialog.editorBox.type = "PUT";
+      that.dialog.editorBox.show = true;
+      if (that.multipleSelection.length > 0) {
+        let ids = [];
+        for (let item of that.multipleSelection) {
+          ids.push(
+            item.equipmentname,
+            item.bz,
+            item.reasoncontent,
+            item.declaretime,
+            item.chargeman,
+            item.declareid,
+            item.filename,
+            item.devicename,
+            item.equipment,
+            item.constructionunits,
+            item.construpeople
+          );
+        }
+        that.dialog.editorBox.form.data.equipmentname = ids[0];
+        that.dialog.editorBox.form.data.bz = ids[1];
+        that.dialog.editorBox.form.data.reasoncontent = ids[2];
+        that.dialog.editorBox.form.data.declaretime = ids[3];
+        that.dialog.editorBox.form.data.chargeman = ids[4];
+        that.dialog.editorBox.form.data.declareid = ids[5];
+        that.dialog.editorBox.form.data.devicename = ids[6];
+        that.dialog.editorBox.form.data.equipment = ids[7];
+        that.dialog.editorBox.form.data.constructionunits = ids[8];
+        that.dialog.editorBox.form.data.construpeople = ids[9];
+      }
+    },
+    submitUpload() {
+      let that = this;
+      this.$refs.upload1.submit();
+    },
+    dataSaves(billstatus) {
+      let that = this;
+      that.dialog.editorBox.type = "PUT";
+      let SubmitData = {
+        billstatus: "编辑中",
+        declareid: that.dialog.editorBox.form.data.declareid,
+        chargetime: that.dialog.editorBox.form.data.chargetime,
+        applayer: "一烧结",
+        equipmentname: that.dialog.editorBox.form.data.equipmentname,
+        chargeman: that.dialog.editorBox.form.data.chargeman,
+        reasoncontent: that.dialog.editorBox.form.data.reasoncontent,
+        bz: that.dialog.editorBox.form.data.bz,
+        declaretime: that.dialog.editorBox.form.data.declaretime,
+        record: null,
+      };
+      let message = "保存成功";
+      if (billstatus && billstatus !== "编辑中") {
+        SubmitData.billstatus = billstatus;
+        message = "操作成功";
+      }
+      that.$refs["dialog_form"].validate((valid) => {
+        if (valid) {
+          that.loading = true;
+          let url = "pass/ems/v1/tmaintenances/pus/";
+          let fileData = new FormData();
+          for (let key in SubmitData) {
+            fileData.append(key, SubmitData[key] ? SubmitData[key] : "");
+          }
+          let del = "";
+          // 保存的文件名
+          let filename = "";
+          for (let item of that.dialog.editorBox.files) {
+            if (item.operation === "add" && item.file && item.name) {
+              fileData.append("file", item.file);
+            }
+            if (item.operation === "del" && item.name) {
+              del += item.name + ";";
+            }
+            if (item.operation !== "del" && item.name) {
+              filename += item.name + ";";
+            }
+          }
+          fileData.set("filename", filename);
+          fileData.set("del", del);
+          that.axios
+            .put(url, fileData, {
+              headers: { "Content-Type": "multipart/form-data" },
+            })
+            .then(function (res) {
+              if (res.code === "0") {
+                that.$message({
+                  message: message,
+                  type: "success",
+                });
+                that.getselect();
+                that.dialog.editorBox.show = false;
+              } else {
+                that.$message.error(res.message);
+              }
+              that.loading = false;
+            })
+            .catch(function () {
+              that.loading = false;
+            });
+        }
+      });
+    },
+    dataSave(billstatus) {
+      let that = this;
+      let SubmitData = {
+        billstatus: "编辑中",
+        declareid: "1sj_" + that.dialog.editorBox.form.data.declareid,
+        chargetime: that.dialog.editorBox.form.data.chargetime,
+        applayer: "一烧结",
+        equipmentname: that.dialog.editorBox.form.data.equipmentname,
+        chargeman: that.dialog.editorBox.form.data.chargeman,
+        reasoncontent: that.dialog.editorBox.form.data.reasoncontent,
+        bz: that.dialog.editorBox.form.data.bz,
+        declaretime: that.dialog.editorBox.form.data.declaretime,
+        record: null,
+      };
+      let message = "保存成功";
+      if (billstatus && billstatus !== "编辑中") {
+        SubmitData.billstatus = billstatus;
+        message = "操作成功";
+      }
+      that.$refs["dialog_form"].validate((valid) => {
+        if (valid) {
+          that.loading = true;
+          let url = "pass/ems/v1/tmaintenances/submit/";
+          let fileData = new FormData();
+          for (let key in SubmitData) {
+            fileData.append(key, SubmitData[key] ? SubmitData[key] : "");
+          }
+          let del = "";
+          // 保存的文件名
+          let filename = "";
+          for (let item of that.dialog.editorBox.files) {
+            if (item.operation === "add" && item.file && item.name) {
+              fileData.append("file", item.file);
+            }
+            if (item.operation === "del" && item.name) {
+              del += item.name + ";";
+            }
+            if (item.operation !== "del" && item.name) {
+              filename += item.name + ";";
+            }
+          }
+          fileData.set("filename", filename);
+          fileData.set("del", del);
+          that.axios
+            .put(url, fileData, {
+              headers: { "Content-Type": "multipart/form-data" },
+            })
+            .then(function (res) {
+              if (res.code === "0") {
+                that.$message({
+                  message: message,
+                  type: "success",
+                });
+                that.getselect();
+                that.dialog.editorBox.show = false;
+              } else {
+                that.$message.error(res.message);
+              }
+              that.loading = false;
+            })
+            .catch(function () {
+              that.loading = false;
+            });
+        }
+      });
+    },
+    but_edita(row) {
+      let that = this;
+      that.dialog.editorBox.type = "PUT";
+      that.dialog.editorBox.files = [];
+      for (let key in that.dialog.editorBox.form.data) {
+        if (typeof row[key] !== "undefined") {
+          that.dialog.editorBox.form.data[key] = row[key];
+        } else {
+          console.log("key:" + key);
+        }
+      }
+      if (row.filename) {
+        let fn = (row.filename + "").trim().split(";");
+        if (fn && fn.length > 0) {
+          let declareid = row.declareid;
+          for (let i = 0; i < fn.length; i++) {
+            if (fn[i]) {
+              let fname = {
+                name: fn[i],
+                url:
+                  "/icore.icp.web/pass/ems/static/" + declareid + "/" + fn[i],
+                file: null,
+                operation: "",
+              };
+              that.dialog.editorBox.files.push(fname);
+            }
+          }
+        }
+      }
+      that.dialog.editorBox.show = true;
+    },
+  },
+};
+</script>
+
+<style lang="less">
+.submittedselect {
+  min-width: 700px;
+  height: 100%;
+  .box {
+    height: 100%;
+    padding: 15px 15px 0 15px;
+    .box-top {
+      .el-form-item {
+        margin-bottom: 7px;
+      }
+      .box-top-gjl {
+        overflow: hidden;
+        padding: 7px 0;
+        border-top: 1px solid #ccc;
+      }
+    }
+  }
+  .nr-textarea {
+    .el-textarea__inner {
+      min-height: 130px !important;
+    }
+  }
+  .fileUploadBox {
+    height: 130px;
+    min-height: 130px !important;
+    margin-bottom: 18px;
+  }
+}
+</style>