From bed6bacb26e0b05c77be9f295342112fcc665130 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Mon, 23 Aug 2021 15:23:36 +0800
Subject: [PATCH] 保安公司  点击数量跳转 到该公司保安人员保安公司详情 添加营业执照,许可证,社保记录

---
 src/views/securityUnit/armedEscort.vue |  710 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 706 insertions(+), 4 deletions(-)

diff --git a/src/views/securityUnit/armedEscort.vue b/src/views/securityUnit/armedEscort.vue
index a7c2988..07191c0 100644
--- a/src/views/securityUnit/armedEscort.vue
+++ b/src/views/securityUnit/armedEscort.vue
@@ -1,10 +1,712 @@
 <template>
-  <div>武装压运公司</div>
+  <basic-container>
+    <div class="securityUnit">
+      <avue-crud
+        :option="option"
+        :data="data"
+        :page.sync="page"
+        ref="crudrec"
+        @on-load="onLoad"
+        :table-loading="loading"
+        @row-save="rowSave"
+        @search-change="searchChange"
+        @search-reset="searchReset"
+        @row-update="rowUpdate"
+        @row-del="rowDel"
+        @selection-change="selectionChange"
+        @refresh-change="refreshChange"
+      >
+        <!-- @row-click="rowClick" -->
+        <template slot-scope="{ row }" slot="znum">
+          <el-tag
+            class="rowClickSelf"
+            @click="rowClickSelf(row)"
+            title="点击查看保安人员情况"
+            >{{ row.znum }}</el-tag
+          >
+        </template>
+
+        <template slot-scope="{ type, size, row }" slot="menu">
+          <el-button
+            icon="el-icon-s-custom"
+            :size="size"
+            :type="type"
+            @click.stop="rowClick(row)"
+            >查看
+          </el-button>
+          <el-button
+            :size="size"
+            :type="type"
+            @click="handleUploadPage(row)"
+            icon="el-icon-circle-check"
+            >附件上传
+          </el-button>
+        </template>
+        <template slot="menuLeft">
+          <el-button
+            type="primary"
+            icon="el-icon-plus"
+            size="small"
+            plain
+            @click.stop="rowSave"
+            >新增</el-button
+          >
+          <el-button
+            type="danger"
+            size="small"
+            plain
+            icon="el-icon-delete"
+            @click="handleDelete"
+            >删 除
+          </el-button>
+          <el-button
+            type="success"
+            size="small"
+            plain
+            icon="el-icon-upload2"
+            @click="handleImport1"
+            >批量导入
+          </el-button>
+        </template>
+      </avue-crud>
+      <div class="lod" v-show="forms != -1">
+        <div class="lod-in">
+          <!-- <el-col class="trees" v-if="forms == 0">
+          <div class="box">
+            <el-scrollbar>
+              <basic-container>
+                <avue-tree
+                  :option="treeOption"
+                  :data="treeData"
+                  @node-click="nodeClick"
+                />
+              </basic-container>
+            </el-scrollbar>
+          </div>
+        </el-col> -->
+          <avue-form
+            ref="form"
+            v-model="obj0"
+            :option="option0"
+            v-if="forms == 0"
+          >
+            <template slot="menuForm">
+              <el-button type="primary" @click="tip0">下一页</el-button>
+              <el-button type="info" @click="tipover">取消</el-button>
+            </template>
+          </avue-form>
+          <avue-form
+            ref="form1"
+            v-model="obj1"
+            :option="option1"
+            v-else-if="forms == 1"
+          >
+            <template slot="menuForm">
+              <el-button type="primary" @click="tip1up1">上一页</el-button>
+              <el-button type="primary" @click="tip1">下一页</el-button>
+              <el-button type="info" @click="tipover">取消</el-button>
+            </template>
+          </avue-form>
+          <avue-form
+            ref="form2"
+            v-model="obj2"
+            :option="option2"
+            v-else-if="forms == 2"
+          >
+            <template slot="menuForm">
+              <el-button type="primary" @click="tip2up2">上一页</el-button>
+              <el-button type="primary" @click="tip2">提交</el-button>
+              <el-button type="info" @click="tipover">取消</el-button>
+            </template>
+          </avue-form>
+        </div>
+      </div>
+    </div>
+    <el-dialog
+      title="保安单位导入"
+      append-to-body
+      :visible.sync="excelBox1"
+      width="555px"
+    >
+      <avue-form
+        :option="excelOption1"
+        v-model="excelForm1"
+        :upload-after="uploadAfter1"
+      >
+        <template slot="excelTemplate">
+          <el-button type="primary" @click="handleTemplate1">
+            点击下载<i class="el-icon-download el-icon--right"></i>
+          </el-button>
+        </template>
+      </avue-form>
+    </el-dialog>
+  </basic-container>
 </template>
 
 <script>
-export default {};
+import { column, column0, column1, column2 } from "./data";
+import {
+  getdata,
+  adddata,
+  update,
+  remove,
+  adddata1,
+  adddata2,
+  getDeptLazyTree,
+} from "@/api/securityUnit/securityUnit";
+import { mapGetters } from "vuex";
+export default {
+  data() {
+    var w = 160,
+      s = 12;
+    return {
+      excelBox1: false,
+      excelForm1: {},
+      excelOption1: {
+        submitBtn: false,
+        emptyBtn: false,
+        column: [
+          {
+            label: "文件上传",
+            prop: "excelFile",
+            type: "upload",
+            drag: true,
+            loadText: "文件上传中,请稍等",
+            span: 24,
+            propsHttp: {
+              res: "data",
+            },
+            tip: "请上传 .xls,.xlsx 标准格式文件",
+            action: "/api/information/import-informaton",
+          },
+          {
+            label: "模板下载",
+            prop: "excelTemplate",
+            formslot: true,
+            span: 24,
+          },
+        ],
+      },
+
+      loading: true, //保安单位基本信息
+      selectionList: [],
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+      },
+
+      treeData: [],
+      treeOption: {
+        title: "我是标题",
+        filterText: "搜索关键字自定义",
+        defaultExpandAll: true,
+        addBtn: false,
+        menu: false,
+        size: "small",
+        formOption: {
+          labelWidth: 100,
+          column: [
+            {
+              label: "自定义项",
+              prop: "label",
+            },
+          ],
+        },
+        props: {
+          labelText: "标题",
+          label: "title",
+          value: "id",
+          children: "children",
+        },
+      },
+
+      obj0: {
+        title0: "保安单位基本信息",
+      },
+      option0: {
+        emptyBtn: false,
+        submitBtn: false,
+        gutter: 30,
+        column: column0,
+      },
+      obj1: {
+        title1: "保安单位出资人员",
+      },
+      option1: {
+        emptyBtn: false,
+        submitBtn: false,
+        gutter: 30,
+        column: column1,
+      },
+      obj2: {
+        title2: "主要管理人员信息",
+      },
+      option2: {
+        emptyBtn: false,
+        submitBtn: false,
+        gutter: 30,
+        column: column2,
+      },
+
+      forms: -1,
+      data0: {},
+      data1: {},
+      data2: {},
+      b0: {},
+      b1: {},
+      b2: {},
+      noshehuibianma: 0,
+      nobumen: 0,
+
+      query: {},
+      data: [],
+      option: {
+        index: true,
+        addBtn: false,
+        // card: true,
+        tip: false,
+        searchSize: "mini",
+        searchMenuSpan: 6,
+        height: 583,
+        menuWidth: 275,
+        border: true,
+        align: "center",
+        selection: true,
+        column: column,
+      },
+    };
+  },
+  computed: {
+    ...mapGetters(["userInfo"]),
+    ids() {
+      let ids = [];
+      this.selectionList.forEach((ele) => {
+        ids.push(ele.creditcode);
+      });
+      return ids.join(",");
+    },
+    ids1() {
+      let ids1 = [];
+      this.selectionList1.forEach((ele) => {
+        ids1.push(ele.id);
+      });
+      return ids1.join(",");
+    },
+    ids2() {
+      let ids2 = [];
+      this.selectionList2.forEach((ele) => {
+        ids2.push(ele.id);
+      });
+      return ids2.join(",");
+    },
+    haveID() {
+      return this.obj0.creditcode;
+    },
+  },
+  methods: {
+    rowClickSelf(val) {
+      // console.log(val.departmentid);
+      this.$router.push({
+        path: "/securityGuardOnce/index",
+        query: { departmentid: val.departmentid },
+      });
+    },
+    handleImport1() {
+      this.excelBox1 = true;
+    },
+    uploadAfter1(res, done, loading, column) {
+      window.console.log(column);
+      this.excelBox1 = false;
+      // this.refreshChange();
+      done();
+    },
+    handleTemplate1() {
+      window.open(`/api/examSubjectChoices/export-template`);
+    },
+
+    // handleChangeTABS(column) {
+    //   this.typeTABS = column;
+    //   // this.$message.success(JSON.stringify(column));
+    //   if (column.prop == "tab1") {
+    //     this.loading1 = false;
+    //     this.loading2 = false;
+    //     this.onLoad(this.page);
+    //   } else if (column.prop == "tab2") {
+    //     this.loading = false;
+    //     this.loading2 = false;
+    //     this.onLoad1(this.page1); //第二个表格不会自动执行
+    //   } else if (column.prop == "tab3") {
+    //     this.loading1 = false;
+    //     this.loading = false;
+    //     this.onLoad2(this.page2); //第二个表格不会自动执行
+    //   }
+    // },
+    //保安单位基本信息
+    sizeChange(val) {
+      this.page1.currentPage = 1;
+      this.page1.pageSize = val;
+      // this.getData();
+      this.onLoad(this.page, this.query);
+      //   this.$message.success("行数" + val);
+    },
+    currentChange(val) {
+      this.page1.currentPage = val;
+      // this.getData();
+      this.onLoad(this.page, this.query);
+      //   this.$message.success("页码" + val);
+    },
+    rowSave(form, done, loading) {
+      // console.log("save1");
+      this.forms = 0;
+      var that = this;
+      //先获取部门接口
+      getDeptLazyTree().then((res) => {
+        var d = res.data.data;
+        that.treeData = d;
+        // console.log(d);
+      });
+    },
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    searchReset() {
+      this.query = {};
+      this.onLoad(this.page);
+    },
+    rowUpdate(row, index, done, loading) {
+      delete row.tenantid;
+      delete row.regstsat;
+      console.log(row, 0);
+      update(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    rowDel(row) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          console.log(row);
+          return remove(row.creditcode, row.departmentid);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+        });
+    },
+    selectionChange(list) {
+      this.selectionList = list;
+    },
+    handleDelete() {
+      if (this.selectionList.length === 0) {
+        this.$message.warning("请选择至少一条数据");
+        return;
+      }
+      this.$confirm("确定批量将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          console.log(this.ids);
+          // return remove(this.ids);
+        })
+        .then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          this.$refs.crudrec.toggleSelection();
+        });
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.query);
+    },
+    rowClick(row) {
+      // console.log(row);
+      // row.identificationnumber; //统一社会信用代 码
+      window.localStorage.setItem("danweidata", JSON.stringify(row));
+      this.$router.push({
+        path: "/securityUnitChild",
+        // redirect: { name: "foo" },
+        query: { rowsecurity: "fromSecurity" },
+        // params: { row: row.identificationnumber },
+      });
+    },
+    //跳转到附近列表页面
+    handleUploadPage(row) {
+      this.$router.push({
+        path: `/resource/attachCopy`,
+        query: {
+          deptId: row.departmentid,
+          enterprisename: row.enterprisename,
+        },
+      });
+    },
+    onLoad(page, params = {}) {
+      if (this.userInfo.role_id == "1414840172333842433") {
+        console.log("是公安add jurisdiction");
+        params["jurisdiction"] = this.userInfo.jurisdiction;
+      }
+      params["stats"] = "3";
+      this.loading = true;
+      getdata(
+        page.currentPage,
+        page.pageSize,
+        Object.assign(params, this.query)
+      ).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.data = data.records;
+        window.localStorage.setItem("danweidataS", JSON.stringify(this.data));
+        console.log(this.data);
+        this.loading = false;
+      });
+    },
+    // nodeClick(data) {//分局   不在这添加
+    //   // this.treeDeptId = data.id;
+    //   // this.page.currentPage = 1;
+    //   // this.onLoad(this.page);
+    //   // this.$message.success(JSON.stringify(data));
+    //   this.obj0["departmentid"] = data.title;
+    //   this.obj1["departmentid"] = data.title;
+    //   this.obj2["departmentid"] = data.title;
+    //   this.obj0["useid"] = data.id;
+    //   this.obj1["useid"] = data.id;
+    //   this.obj2["useid"] = data.id;
+    //   this.nobumen = 1;
+    // },
+    tip0() {
+      if (this.panduanmeiyouziduan()) {
+        return;
+      }
+      var d = {};
+      for (var k in this.obj0) {
+        for (var i in column0) {
+          if (k == column0[i].prop && k != "title0") {
+            d[k] = this.obj0[k];
+          }
+        }
+      }
+      console.log(d);
+      for (var k in d) {
+        if (d[k] == "" || d[k] == undefined) {
+          console.log(k);
+          this.$message.warning("请检查表单是否填写完整!");
+          return;
+        }
+      }
+      console.log(d, 0);
+      this.data0 = d;
+      this.forms = 1;
+    },
+    tip1() {
+      if (this.panduanmeiyouziduan()) {
+        return;
+      }
+      var d = {};
+      for (var k in this.obj1) {
+        for (var i in column1) {
+          if (k == column1[i].prop && k != "title1") {
+            d[k] = this.obj1[k];
+          }
+        }
+      }
+      d["capital"] = d["capital2"];
+      delete d["capital2"];
+      // console.log(d);
+      for (var k in d) {
+        if (d[k] == "" || d[k] == undefined) {
+          console.log(k);
+          this.$message.warning("请检查表单是否填写完整!");
+          return;
+        }
+      }
+      console.log(d, 1);
+      this.data1 = d;
+      this.forms = 2;
+    },
+    tip2() {
+      if (this.panduanmeiyouziduan()) {
+        return;
+      }
+      var d = {};
+      for (var k in this.obj2) {
+        for (var i in column2) {
+          if (k == column2[i].prop && k != "title2") {
+            d[k] = this.obj2[k];
+          }
+        }
+      }
+      console.log(d);
+      d["cardid"] = d["cardid2"];
+      delete d["cardid2"];
+      d["cell"] = d["cell2"];
+      delete d["cell2"];
+      // d["shareholdingratio"] = d["shareholdingratio2"];
+      // delete d["shareholdingratio2"];
+      for (var k in d) {
+        if (d[k] == "" || d[k] == undefined) {
+          console.log(k);
+          this.$message.warning("请检查表单是否填写完整!");
+          return;
+        }
+      }
+      console.log(d, 2);
+      this.data2 = d;
+
+      // this.data0.departmentid = this.data0.useid;
+      // this.data1.departmentid = this.data1.useid;
+      // this.data2.departmentid = this.data2.useid;
+      // delete this.data0.useid;
+      // delete this.data1.useid;
+      // delete this.data2.useid;
+
+      adddata(this.data0).then((res) => {
+        console.log(res, 0);
+      });
+      adddata1(this.data1).then((res) => {
+        console.log(res, 1);
+      });
+      adddata2(this.data2).then((res) => {
+        console.log(res, 2);
+      });
+      var time = setTimeout(() => {
+        this.onLoad(this.page, this.query);
+        console.log(this.data0, this.data1, this.data2, "已刷新");
+      }, 500);
+      this.tipover();
+    },
+    tip1up1() {
+      this.forms = 0;
+    },
+    tip2up2() {
+      this.forms = 1;
+    },
+    tipover() {
+      this.forms = -1;
+      this.obj0 = {
+        title0: "保安单位基本信息",
+      };
+      this.obj1 = {
+        title1: "保安单位出资人员",
+      };
+      this.obj2 = {
+        title2: "主要管理人员信息",
+      };
+      this.data0 = {};
+      this.data1 = {};
+      this.data2 = {};
+      this.noshehuibianma = 0;
+      this.nobumen = 0;
+    },
+    panduanmeiyouziduan() {
+      if (this.noshehuibianma == 0) {
+        this.$message.warning("请输入统一社会信用代码");
+        return true;
+      }
+      if (this.nobumen == 0) {
+        return false;
+        this.$message.warning("请选则部门");
+      }
+      return false;
+    },
+  },
+  watch: {
+    haveID() {
+      // console.log(this.haveID);
+      if (this.haveID != undefined) {
+        if (this.haveID.length > 5) {
+          //统一社会信用代码判断
+          this.noshehuibianma = 1;
+        } else {
+          this.noshehuibianma = 0;
+        }
+      }
+    },
+    havedata() {
+      console.log(this.havedata, "qqqqq");
+    },
+  },
+  mounted() {},
+};
 </script>
 
-<style>
-</style>
\ No newline at end of file
+<style lang="scss">
+.securityUnit {
+  width: 100%;
+  height: 100%;
+  //   border: 1px solid #000;
+  box-sizing: border-box;
+}
+// .el-card__body {
+//   padding-bottom: 5px !important;
+// }
+// .avue-crud__tip,
+// .el-tag,
+// .el-tag--light {
+//   padding: 0 !important;
+// }
+
+.lod {
+  position: absolute;
+  top: 0;
+  left: 0;
+  width: 100%;
+  height: 100%;
+  background-color: rgba($color: #000000, $alpha: 0.5);
+  padding: 100px 0 0 0;
+  z-index: 500 !important;
+  display: flex;
+  // align-items: center;
+  justify-content: center;
+  .trees {
+    z-index: 501 !important;
+    position: absolute;
+    width: 15%;
+    top: 100px;
+    left: 0;
+    // display: none;
+  }
+  .lod-in {
+    width: 70%;
+    height: auto;
+    background-color: transparent;
+
+    // padding: 10px 0 0 0;
+  }
+
+  .el-collapse-item {
+    padding-top: 15px !important;
+  }
+}
+.el-collapse {
+  border-top: 1px solid transparent !important;
+}
+.rowClickSelf {
+  &:hover {
+    cursor: pointer;
+  }
+}
+</style>

--
Gitblit v1.9.3