保安服务企业管理-验收版本
shuishen
2021-09-11 6a2a3bb262e13ea320c509d4431ca40a1963b0a1
部分文件改动,公司单位及其他
9 files modified
2190 ■■■■■ changed files
src/router/axios.js 2 ●●● patch | view | raw | blame | history
src/views/securityEquipment/car.js 30 ●●●●● patch | view | raw | blame | history
src/views/securityEquipment/equipments.js 62 ●●●●● patch | view | raw | blame | history
src/views/securityUnit/armedEscort.vue 407 ●●●● patch | view | raw | blame | history
src/views/securityUnit/data.js 48 ●●●● patch | view | raw | blame | history
src/views/securityUnit/localCompany.vue 433 ●●●●● patch | view | raw | blame | history
src/views/securityUnit/securityTraining.vue 407 ●●●● patch | view | raw | blame | history
src/views/securityUnit/selfRecruitedSecurityGuard.vue 406 ●●●● patch | view | raw | blame | history
src/views/securityUnit/transRegionalcompany.vue 395 ●●●● patch | view | raw | blame | history
src/router/axios.js
@@ -17,7 +17,7 @@
import 'nprogress/nprogress.css';
//默认超时时间
axios.defaults.timeout = 10000;
axios.defaults.timeout = 300000;
//返回其他状态码
axios.defaults.validateStatus = function (status) {
  return status >= 200 && status <= 500;
src/views/securityEquipment/car.js
@@ -146,5 +146,33 @@
            trigger: "blur"
        }],
        searchSpan: 4,
    }
  },
  {
    label: "行驶情况",
    prop: "drivingConditions",
    // search: true,
    width: 110,
    hide: true,
    // search: true,
    searchSpan: 4,
  },
  {
    label: "车辆图片",
    type: "upload",
    listType: "picture-img",
    propsHttp: {
      res: "data",
      url: "link",
    },
    canvasOption: {
      text: " ",
      ratio: 0.1,
    },
    action: "/api/blade-resource/oss/endpoint/put-file",
    tip: "只能上传单张车辆图片,且不超过500kb",
    span: 10,
    // row: true,
    prop: "picture",
  },
]
src/views/securityEquipment/equipments.js
@@ -47,6 +47,51 @@
        width: 70,
    },
    {
      label: "装备类型",
      search: true,
      searchSpan: 4,
      prop: "type",
      slot: true,
      type: "select",
      rules: [
        {
          required: true,
          message: "请选择装备类型",
          trigger: "blur",
        },
      ],
      dicData: [
        {
          label: "交通工具",
          value: 1,
        },
        {
          label: "通讯设备",
          value: 2,
        },
        {
          label: "非杀伤性防卫器材",
          value: 3,
        },
        {
          label: "人体安全防护器材",
          value: 4,
        },
        {
          label: "救生器材",
          value: 5,
        },
        {
          label: "训练器材",
          value: 6,
        },
        {
          label: "其他器材",
          value: 7,
        },
      ],
    },
    {
        label: "所属保安公司",
        prop: "deptId",
        searchSpan: 6,
@@ -67,6 +112,8 @@
        type: "select",
        width: 250,
    },
    {
        label: "负责人",
        prop: "personInCharge",
@@ -104,5 +151,20 @@
            message: "请输入出厂日期",
            trigger: "blur"
        }]
    },
    {
        label: "采购时间",
        prop: "purchaseTime",
        type: "date",
        format: 'yyyy-MM-dd',
        searchSpan: 4,
        // span:8,
        valueFormat: 'yyyy-MM-dd',
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入采购时间",
            trigger: "blur"
        }]
    }
]
src/views/securityUnit/armedEscort.vue
@@ -1,8 +1,7 @@
<template>
  <basic-container>
    <div class="securityUnit">
      <avue-crud
        :option="option"
            <avue-crud :option="option"
        :data="data"
        :page.sync="page"
        ref="crudrec"
@@ -14,127 +13,126 @@
        @row-update="rowUpdate"
        @row-del="rowDel"
        @selection-change="selectionChange"
        @refresh-change="refreshChange"
      >
                       @refresh-change="refreshChange">
        <!-- @row-click="rowClick" -->
        <template slot-scope="{ row }" slot="znum">
          <el-tag
            class="rowClickSelf"
                <template slot-scope="{ row }"
                          slot="znum">
                    <el-tag class="rowClickSelf"
            @click="rowClickSelf(row)"
            title="点击查看保安人员情况"
            >{{ row.znum }}</el-tag
          >
                            title="点击查看保安人员情况">{{ row.znum }}</el-tag>
        </template>
        <template slot-scope="{ type, size, row }" slot="menu">
          <el-button
            icon="el-icon-s-custom"
                <template slot-scope="{ type, size, row }"
                          slot="menu">
                    <el-button icon="el-icon-s-custom"
            :size="size"
            :type="type"
            @click.stop="rowClick(row)"
            >查看
                               @click.stop="rowClick(row)">查看
          </el-button>
          <el-button
            :size="size"
                    <el-button :size="size"
            :type="type"
            @click="handleUploadPage(row)"
            icon="el-icon-circle-check"
            >附件上传
                               icon="el-icon-circle-check">附件上传
          </el-button>
        </template>
        <template slot="menuLeft">
          <el-button
            type="primary"
                    <el-button type="primary"
            icon="el-icon-plus"
            size="small"
            plain
            @click.stop="rowSave"
            >新增</el-button
          >
          <el-button
            type="danger"
                               @click.stop="rowSave">信息登记</el-button>
                    <el-button type="danger"
            size="small"
            plain
            icon="el-icon-delete"
            @click="handleDelete"
            >删 除
                               @click="handleDelete">删 除
          </el-button>
          <el-button
            type="success"
                    <el-button type="success"
            size="small"
            plain
            icon="el-icon-upload2"
            @click="handleImport1"
            >批量导入
                               @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"
            <el-dialog title="信息登记"
                       append-to-body
                       :visible.sync="forms"
                       :close-on-click-modal='false'
                       @close="tipover"
                       class="information-box"
                       width="60%">
                <el-tabs v-model="activeName"
                         @tab-click="handleClick">
                    <el-tab-pane label="保安单位基本信息"
                                 name="first">
                        <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>
                                   :option="option0">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form1"
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
            v-model="obj1"
            :option="option1"
            v-else-if="forms == 1"
          >
                                   :option="option1">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form2"
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
            v-model="obj2"
            :option="option2"
            v-else-if="forms == 2"
          >
                                   :option="option2">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
                    </el-tab-pane>
                </el-tabs>
            </el-dialog>
        </div>
      </div>
    </div>
    <el-dialog
      title="保安单位导入"
        <el-dialog title="保安单位导入"
      append-to-body
      :visible.sync="excelBox1"
      width="555px"
    >
      <avue-form
        :option="excelOption1"
                   width="555px">
            <avue-form :option="excelOption1"
        v-model="excelForm1"
        :upload-after="uploadAfter1"
      >
                       :upload-after="uploadAfter1">
        <template slot="excelTemplate">
          <el-button type="primary" @click="handleTemplate1">
                    <el-button type="primary"
                               @click="handleTemplate1">
            点击下载<i class="el-icon-download el-icon--right"></i>
          </el-button>
        </template>
@@ -222,7 +220,39 @@
      },
      obj0: {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            },
            obj1: {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            },
            obj2: {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      },
      option0: {
        emptyBtn: false,
@@ -230,18 +260,14 @@
        gutter: 30,
        column: column0,
      },
      obj1: {
        title1: "保安单位出资人员",
      },
      option1: {
        emptyBtn: false,
        submitBtn: false,
        gutter: 30,
        column: column1,
      },
      obj2: {
        title2: "主要管理人员信息",
      },
      option2: {
        emptyBtn: false,
        submitBtn: false,
@@ -249,7 +275,7 @@
        column: column2,
      },
      forms: -1,
            forms: false,
      data0: {},
      data1: {},
      data2: {},
@@ -275,6 +301,9 @@
        selection: true,
        column: column,
      },
            activeName: 'first',
    };
  },
  computed: {
@@ -358,7 +387,8 @@
    },
    rowSave(form, done, loading) {
      // console.log("save1");
      this.forms = 0;
            this.forms = true;
            this.activeName = 'first';
      var that = this;
      //先获取部门接口
      getDeptLazyTree().then((res) => {
@@ -497,84 +527,84 @@
    //   this.obj2["useid"] = data.id;
    //   this.nobumen = 1;
    // },
    tip0() {
        submitAdd () {
      if (this.panduanmeiyouziduan()) {
        return;
      }
      var d = {};
            var oneObj = {};
      for (var k in this.obj0) {
        for (var i in column0) {
          if (k == column0[i].prop && k != "title0") {
            d[k] = this.obj0[k];
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
          }
        }
      }
      console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
          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];
            this.data0 = oneObj;
            var twoObj = {};
            for (var twok in this.obj1) {
                for (var twoi in column1) {
                    if (twok == column1[twoi].prop && twok != "title1") {
                        twoObj[twok] = this.obj1[twok];
          }
        }
      }
      d["capital"] = d["capital2"];
      delete d["capital2"];
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
      // console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
          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];
            this.data1 = twoObj;
            var threeObj = {};
            for (var threek in this.obj2) {
                for (var threei in column2) {
                    if (threek == column2[threei].prop && threek != "title2") {
                        threeObj[threek] = this.obj2[threek];
          }
        }
      }
      console.log(d);
      d["cardid"] = d["cardid2"];
      delete d["cardid2"];
      d["cell"] = d["cell2"];
      delete d["cell2"];
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["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("请检查表单是否填写完整!");
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
          return;
        }
      }
      console.log(d, 2);
      this.data2 = d;
            this.data2 = threeObj;
      // this.data0.departmentid = this.data0.useid;
      // this.data1.departmentid = this.data1.useid;
@@ -598,22 +628,44 @@
      }, 500);
      this.tipover();
    },
    tip1up1() {
      this.forms = 0;
    },
    tip2up2() {
      this.forms = 1;
    },
    tipover() {
      this.forms = -1;
            this.forms = false;
      this.obj0 = {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      };
      this.obj1 = {
        title1: "保安单位出资人员",
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
      };
      this.obj2 = {
        title2: "主要管理人员信息",
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      };
      this.data0 = {};
      this.data1 = {};
@@ -649,7 +701,24 @@
      console.log(this.havedata, "qqqqq");
    },
  },
  mounted() {},
    mounted () {
        var that = this
        this.option0.column.forEach(item => {
            if (item.prop == "creditcode") {
                item.change = function (e) {
                    that.obj1.creditcode = e.value
                    that.obj2.creditcode = e.value
                }
            }
        })
    },
};
</script>
@@ -669,38 +738,6 @@
//   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;
}
src/views/securityUnit/data.js
@@ -1,15 +1,12 @@
var DIC = [
    {
var DIC = [{
        label: '招聘中',
        value: 1,
    }, {
        label: '停止招聘',
        value: 2,
    }
]
}]
export var column = [
    {
export var column = [{
        label: "统一社会信用代码",
        prop: "creditcode",
        width: 140,
@@ -44,13 +41,11 @@
            value: "dictKey"
        },
        width: 130,
        rules: [
            {
    rules: [{
                required: true,
                message: "请选择企业类型",
                trigger: "click",
            },
        ],
    }, ],
    },
    {
        label: "法定代表人",
@@ -173,10 +168,9 @@
    },
]
var w = 160
    , s = 12;
export var column0 = [
    {
var w = 160,
  s = 12;
export var column0 = [{
        label: "",
        labelWidth: 20,
        type: 'title',
@@ -210,13 +204,11 @@
        },
        labelWidth: w,
        span: s,
        rules: [
            {
    rules: [{
                required: true,
                message: "请选择所属辖区",
                trigger: "click",
            },
        ],
    }, ],
    },
    // {
    //     label: "机构",
@@ -250,13 +242,11 @@
        },
        labelWidth: w,
        span: s,
        rules: [
            {
    rules: [{
                required: true,
                message: "请选择企业类型",
                trigger: "click",
            },
        ],
    }, ],
    },
    {
        label: "企业名称",
@@ -280,6 +270,14 @@
            trigger: "blur"
        }]
    },
  {
    label: "法定代表人电话",
    prop: "representativecell",
    labelWidth: w,
    span: s,
  },
    // {
    //     label: "企业类型",
    //     prop: "stats",
@@ -431,8 +429,7 @@
    }
]
export var column1 = [
    {
export var column1 = [{
        label: "",
        labelWidth: 20,
        type: 'title',
@@ -546,8 +543,7 @@
    },
]
export var column2 = [
    {
export var column2 = [{
        label: "",
        labelWidth: 20,
        type: 'title',
src/views/securityUnit/localCompany.vue
@@ -1,8 +1,7 @@
<template>
  <basic-container>
    <div class="securityUnit">
      <avue-crud
        :option="option"
            <avue-crud :option="option"
        :data="data"
        :page.sync="page"
        ref="crudrec"
@@ -14,132 +13,133 @@
        @row-update="rowUpdate"
        @row-del="rowDel"
        @selection-change="selectionChange"
        @refresh-change="refreshChange"
      >
                       @refresh-change="refreshChange">
        <!-- @row-click="rowClick" -->
        <template slot-scope="{ row }" slot="znum">
          <el-tag
            class="rowClickSelf"
                <template slot-scope="{ row }"
                          slot="znum">
                    <el-tag class="rowClickSelf"
            @click="rowClickSelf(row)"
            title="点击查看保安人员情况"
            >{{ row.znum }}</el-tag
          >
                            title="点击查看保安人员情况">{{ row.znum }}</el-tag>
        </template>
        <template slot-scope="{ type, size, row }" slot="menu">
          <el-button
            icon="el-icon-s-custom"
                <template slot-scope="{ type, size, row }"
                          slot="menu">
                    <el-button icon="el-icon-s-custom"
            :size="size"
            :type="type"
            @click.stop="rowClick(row)"
            >查看
                               @click.stop="rowClick(row)">查看
          </el-button>
          <el-button
            :size="size"
                    <el-button :size="size"
            :type="type"
            @click="handleUploadPage(row)"
            icon="el-icon-circle-check"
            >附件上传
                               icon="el-icon-circle-check">附件上传
          </el-button>
        </template>
        <template slot="menuLeft">
          <el-button
            type="primary"
                    <el-button type="primary"
            icon="el-icon-plus"
            size="small"
            plain
            @click.stop="rowSave"
            >新增</el-button
          >
          <el-button
            type="danger"
                               @click.stop="rowSave">信息登记</el-button>
                    <el-button type="danger"
            size="small"
            plain
            icon="el-icon-delete"
            @click="handleDelete"
            >删 除
                               @click="handleDelete">删 除
          </el-button>
          <el-button
            type="success"
                    <el-button type="success"
            size="small"
            plain
            icon="el-icon-upload2"
            @click="handleImport1"
            >批量导入
                               @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"
            <el-dialog title="信息登记"
                       append-to-body
                       :visible.sync="forms"
                       :close-on-click-modal='false'
                       @close="tipover"
                       class="information-box"
                       width="60%">
                <el-tabs v-model="activeName"
                         @tab-click="handleClick">
                    <el-tab-pane label="保安单位基本信息"
                                 name="first">
                        <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>
                                   :option="option0">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form1"
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
            v-model="obj1"
            :option="option1"
            v-else-if="forms == 1"
          >
                                   :option="option1">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form2"
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
            v-model="obj2"
            :option="option2"
            v-else-if="forms == 2"
          >
                                   :option="option2">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
                    </el-tab-pane>
                </el-tabs>
            </el-dialog>
        </div>
      </div>
    </div>
    <el-dialog
      title="保安单位导入"
        <el-dialog title="保安单位导入"
      append-to-body
      :visible.sync="excelBox1"
      width="555px"
    >
      <avue-form
        :option="excelOption1"
                   width="555px">
            <avue-form :option="excelOption1"
        v-model="excelForm1"
        :upload-after="uploadAfter1"
      >
                       :upload-after="uploadAfter1">
        <template slot="excelTemplate">
          <el-button type="primary" @click="handleTemplate1">
                    <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>
@@ -222,26 +222,55 @@
      },
      obj0: {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      },
            obj1: {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            },
            obj2: {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            },
      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,
@@ -249,7 +278,7 @@
        column: column2,
      },
      forms: -1,
            forms: false,
      data0: {},
      data1: {},
      data2: {},
@@ -274,7 +303,13 @@
        align: "center",
        selection: true,
        column: column,
                addTitle: "信息登记",
                addBtnText: "信息登记",
      },
            activeName: 'first',
    };
  },
  computed: {
@@ -305,6 +340,9 @@
    },
  },
  methods: {
        handleClick (tab, event) {
            console.log(tab, event);
        },
    rowClickSelf(val) {
      // console.log(val.departmentid);
      this.$router.push({
@@ -358,7 +396,8 @@
    },
    rowSave(form, done, loading) {
      // console.log("save1");
      this.forms = 0;
            this.forms = true;
            this.activeName = 'first';
      var that = this;
      //先获取部门接口
      getDeptLazyTree().then((res) => {
@@ -497,84 +536,85 @@
    //   this.obj2["useid"] = data.id;
    //   this.nobumen = 1;
    // },
    tip0() {
        submitAdd () {
      if (this.panduanmeiyouziduan()) {
        return;
      }
      var d = {};
            var oneObj = {};
      for (var k in this.obj0) {
        for (var i in column0) {
          if (k == column0[i].prop && k != "title0") {
            d[k] = this.obj0[k];
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
          }
        }
      }
      console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
          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];
            this.data0 = oneObj;
            var twoObj = {};
            for (var twok in this.obj1) {
                for (var twoi in column1) {
                    if (twok == column1[twoi].prop && twok != "title1") {
                        twoObj[twok] = this.obj1[twok];
          }
        }
      }
      d["capital"] = d["capital2"];
      delete d["capital2"];
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
      // console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
          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];
            this.data1 = twoObj;
            var threeObj = {};
            for (var threek in this.obj2) {
                for (var threei in column2) {
                    if (threek == column2[threei].prop && threek != "title2") {
                        threeObj[threek] = this.obj2[threek];
          }
        }
      }
      console.log(d);
      d["cardid"] = d["cardid2"];
      delete d["cardid2"];
      d["cell"] = d["cell2"];
      delete d["cell2"];
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["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("请检查表单是否填写完整!");
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
          return;
        }
      }
      console.log(d, 2);
      this.data2 = d;
            this.data2 = threeObj;
      // this.data0.departmentid = this.data0.useid;
      // this.data1.departmentid = this.data1.useid;
@@ -598,22 +638,44 @@
      }, 500);
      this.tipover();
    },
    tip1up1() {
      this.forms = 0;
    },
    tip2up2() {
      this.forms = 1;
    },
    tipover() {
      this.forms = -1;
            this.forms = false;
      this.obj0 = {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      };
      this.obj1 = {
        title1: "保安单位出资人员",
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
      };
      this.obj2 = {
        title2: "主要管理人员信息",
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      };
      this.data0 = {};
      this.data1 = {};
@@ -649,7 +711,24 @@
      console.log(this.havedata, "qqqqq");
    },
  },
  mounted() {},
    mounted () {
        var that = this
        this.option0.column.forEach(item => {
            if (item.prop == "creditcode") {
                item.change = function (e) {
                    that.obj1.creditcode = e.value
                    that.obj2.creditcode = e.value
                }
            }
        })
    },
};
</script>
@@ -669,38 +748,6 @@
//   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;
}
@@ -709,4 +756,20 @@
    cursor: pointer;
  }
}
.information-box {
    .el-dialog {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        margin: auto !important;
        height: 86% !important;
        .el-dialog__body {
            padding: 10px 20px !important;
        }
    }
}
</style>
src/views/securityUnit/securityTraining.vue
@@ -1,8 +1,7 @@
<template>
  <basic-container>
    <div class="securityUnit">
      <avue-crud
        :option="option"
            <avue-crud :option="option"
        :data="data"
        :page.sync="page"
        ref="crudrec"
@@ -14,127 +13,126 @@
        @row-update="rowUpdate"
        @row-del="rowDel"
        @selection-change="selectionChange"
        @refresh-change="refreshChange"
      >
                       @refresh-change="refreshChange">
        <!-- @row-click="rowClick" -->
        <template slot-scope="{ row }" slot="znum">
          <el-tag
            class="rowClickSelf"
                <template slot-scope="{ row }"
                          slot="znum">
                    <el-tag class="rowClickSelf"
            @click="rowClickSelf(row)"
            title="点击查看保安人员情况"
            >{{ row.znum }}</el-tag
          >
                            title="点击查看保安人员情况">{{ row.znum }}</el-tag>
        </template>
        <template slot-scope="{ type, size, row }" slot="menu">
          <el-button
            icon="el-icon-s-custom"
                <template slot-scope="{ type, size, row }"
                          slot="menu">
                    <el-button icon="el-icon-s-custom"
            :size="size"
            :type="type"
            @click.stop="rowClick(row)"
            >查看
                               @click.stop="rowClick(row)">查看
          </el-button>
          <el-button
            :size="size"
                    <el-button :size="size"
            :type="type"
            @click="handleUploadPage(row)"
            icon="el-icon-circle-check"
            >附件上传
                               icon="el-icon-circle-check">附件上传
          </el-button>
        </template>
        <template slot="menuLeft">
          <el-button
            type="primary"
                    <el-button type="primary"
            icon="el-icon-plus"
            size="small"
            plain
            @click.stop="rowSave"
            >新增</el-button
          >
          <el-button
            type="danger"
                               @click.stop="rowSave">信息登记</el-button>
                    <el-button type="danger"
            size="small"
            plain
            icon="el-icon-delete"
            @click="handleDelete"
            >删 除
                               @click="handleDelete">删 除
          </el-button>
          <el-button
            type="success"
                    <el-button type="success"
            size="small"
            plain
            icon="el-icon-upload2"
            @click="handleImport1"
            >批量导入
                               @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"
            <el-dialog title="信息登记"
                       append-to-body
                       :visible.sync="forms"
                       :close-on-click-modal='false'
                       @close="tipover"
                       class="information-box"
                       width="60%">
                <el-tabs v-model="activeName"
                         @tab-click="handleClick">
                    <el-tab-pane label="保安单位基本信息"
                                 name="first">
                        <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>
                                   :option="option0">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form1"
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
            v-model="obj1"
            :option="option1"
            v-else-if="forms == 1"
          >
                                   :option="option1">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form2"
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
            v-model="obj2"
            :option="option2"
            v-else-if="forms == 2"
          >
                                   :option="option2">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
                    </el-tab-pane>
                </el-tabs>
            </el-dialog>
        </div>
      </div>
    </div>
    <el-dialog
      title="保安单位导入"
        <el-dialog title="保安单位导入"
      append-to-body
      :visible.sync="excelBox1"
      width="555px"
    >
      <avue-form
        :option="excelOption1"
                   width="555px">
            <avue-form :option="excelOption1"
        v-model="excelForm1"
        :upload-after="uploadAfter1"
      >
                       :upload-after="uploadAfter1">
        <template slot="excelTemplate">
          <el-button type="primary" @click="handleTemplate1">
                    <el-button type="primary"
                               @click="handleTemplate1">
            点击下载<i class="el-icon-download el-icon--right"></i>
          </el-button>
        </template>
@@ -252,7 +250,39 @@
      // },
      obj0: {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            },
            obj1: {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            },
            obj2: {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      },
      option0: {
        emptyBtn: false,
@@ -260,18 +290,14 @@
        gutter: 30,
        column: column0,
      },
      obj1: {
        title1: "保安单位出资人员",
      },
      option1: {
        emptyBtn: false,
        submitBtn: false,
        gutter: 30,
        column: column1,
      },
      obj2: {
        title2: "主要管理人员信息",
      },
      option2: {
        emptyBtn: false,
        submitBtn: false,
@@ -279,7 +305,7 @@
        column: column2,
      },
      forms: -1,
            forms: false,
      data0: {},
      data1: {},
      data2: {},
@@ -306,6 +332,9 @@
        selection: true,
        column: column,
      },
            activeName: 'first',
    };
  },
  computed: {
@@ -389,7 +418,8 @@
    },
    rowSave(form, done, loading) {
      // console.log("save1");
      this.forms = 0;
            this.forms = true;
            this.activeName = 'first';
      var that = this;
      //先获取部门接口
      getDeptLazyTree().then((res) => {
@@ -528,84 +558,84 @@
    //   this.obj2["useid"] = data.id;
    //   this.nobumen = 1;
    // },
    tip0() {
        submitAdd () {
      if (this.panduanmeiyouziduan()) {
        return;
      }
      var d = {};
            var oneObj = {};
      for (var k in this.obj0) {
        for (var i in column0) {
          if (k == column0[i].prop && k != "title0") {
            d[k] = this.obj0[k];
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
          }
        }
      }
      console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
          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];
            this.data0 = oneObj;
            var twoObj = {};
            for (var twok in this.obj1) {
                for (var twoi in column1) {
                    if (twok == column1[twoi].prop && twok != "title1") {
                        twoObj[twok] = this.obj1[twok];
          }
        }
      }
      d["capital"] = d["capital2"];
      delete d["capital2"];
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
      // console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
          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];
            this.data1 = twoObj;
            var threeObj = {};
            for (var threek in this.obj2) {
                for (var threei in column2) {
                    if (threek == column2[threei].prop && threek != "title2") {
                        threeObj[threek] = this.obj2[threek];
          }
        }
      }
      console.log(d);
      d["cardid"] = d["cardid2"];
      delete d["cardid2"];
      d["cell"] = d["cell2"];
      delete d["cell2"];
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["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("请检查表单是否填写完整!");
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
          return;
        }
      }
      console.log(d, 2);
      this.data2 = d;
            this.data2 = threeObj;
      // this.data0.departmentid = this.data0.useid;
      // this.data1.departmentid = this.data1.useid;
@@ -629,22 +659,44 @@
      }, 500);
      this.tipover();
    },
    tip1up1() {
      this.forms = 0;
    },
    tip2up2() {
      this.forms = 1;
    },
    tipover() {
      this.forms = -1;
            this.forms = false;
      this.obj0 = {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      };
      this.obj1 = {
        title1: "保安单位出资人员",
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
      };
      this.obj2 = {
        title2: "主要管理人员信息",
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      };
      this.data0 = {};
      this.data1 = {};
@@ -680,7 +732,24 @@
      console.log(this.havedata, "qqqqq");
    },
  },
  mounted() {},
    mounted () {
        var that = this
        this.option0.column.forEach(item => {
            if (item.prop == "creditcode") {
                item.change = function (e) {
                    that.obj1.creditcode = e.value
                    that.obj2.creditcode = e.value
                }
            }
        })
    },
};
</script>
@@ -700,38 +769,6 @@
//   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;
}
src/views/securityUnit/selfRecruitedSecurityGuard.vue
@@ -1,8 +1,7 @@
<template>
  <basic-container>
    <div class="securityUnit">
      <avue-crud
        :option="option"
            <avue-crud :option="option"
        :data="data"
        :page.sync="page"
        ref="crudrec"
@@ -14,127 +13,126 @@
        @row-update="rowUpdate"
        @row-del="rowDel"
        @selection-change="selectionChange"
        @refresh-change="refreshChange"
      >
                       @refresh-change="refreshChange">
        <!-- @row-click="rowClick" -->
        <template slot-scope="{ row }" slot="znum">
          <el-tag
            class="rowClickSelf"
                <template slot-scope="{ row }"
                          slot="znum">
                    <el-tag class="rowClickSelf"
            @click="rowClickSelf(row)"
            title="点击查看保安人员情况"
            >{{ row.znum }}</el-tag
          >
                            title="点击查看保安人员情况">{{ row.znum }}</el-tag>
        </template>
        <template slot-scope="{ type, size, row }" slot="menu">
          <el-button
            icon="el-icon-s-custom"
                <template slot-scope="{ type, size, row }"
                          slot="menu">
                    <el-button icon="el-icon-s-custom"
            :size="size"
            :type="type"
            @click.stop="rowClick(row)"
            >查看
                               @click.stop="rowClick(row)">查看
          </el-button>
          <el-button
            :size="size"
                    <el-button :size="size"
            :type="type"
            @click="handleUploadPage(row)"
            icon="el-icon-circle-check"
            >附件上传
                               icon="el-icon-circle-check">附件上传
          </el-button>
        </template>
        <template slot="menuLeft">
          <el-button
            type="primary"
                    <el-button type="primary"
            icon="el-icon-plus"
            size="small"
            plain
            @click.stop="rowSave"
            >新增</el-button
          >
          <el-button
            type="danger"
                               @click.stop="rowSave">信息登记</el-button>
                    <el-button type="danger"
            size="small"
            plain
            icon="el-icon-delete"
            @click="handleDelete"
            >删 除
                               @click="handleDelete">删 除
          </el-button>
          <el-button
            type="success"
                    <el-button type="success"
            size="small"
            plain
            icon="el-icon-upload2"
            @click="handleImport1"
            >批量导入
                               @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"
            <el-dialog title="信息登记"
                       append-to-body
                       :visible.sync="forms"
                       :close-on-click-modal='false'
                       @close="tipover"
                       class="information-box"
                       width="60%">
                <el-tabs v-model="activeName"
                         @tab-click="handleClick">
                    <el-tab-pane label="保安单位基本信息"
                                 name="first">
                        <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>
                                   :option="option0">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form1"
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
            v-model="obj1"
            :option="option1"
            v-else-if="forms == 1"
          >
                                   :option="option1">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form2"
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
            v-model="obj2"
            :option="option2"
            v-else-if="forms == 2"
          >
                                   :option="option2">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
                    </el-tab-pane>
                </el-tabs>
            </el-dialog>
        </div>
      </div>
    </div>
    <el-dialog
      title="保安单位导入"
        <el-dialog title="保安单位导入"
      append-to-body
      :visible.sync="excelBox1"
      width="555px"
    >
      <avue-form
        :option="excelOption1"
                   width="555px">
            <avue-form :option="excelOption1"
        v-model="excelForm1"
        :upload-after="uploadAfter1"
      >
                       :upload-after="uploadAfter1">
        <template slot="excelTemplate">
          <el-button type="primary" @click="handleTemplate1">
                    <el-button type="primary"
                               @click="handleTemplate1">
            点击下载<i class="el-icon-download el-icon--right"></i>
          </el-button>
        </template>
@@ -252,7 +250,39 @@
      // },
      obj0: {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            },
            obj1: {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            },
            obj2: {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      },
      option0: {
        emptyBtn: false,
@@ -260,18 +290,14 @@
        gutter: 30,
        column: column0,
      },
      obj1: {
        title1: "保安单位出资人员",
      },
      option1: {
        emptyBtn: false,
        submitBtn: false,
        gutter: 30,
        column: column1,
      },
      obj2: {
        title2: "主要管理人员信息",
      },
      option2: {
        emptyBtn: false,
        submitBtn: false,
@@ -279,7 +305,7 @@
        column: column2,
      },
      forms: -1,
            forms: false,
      data0: {},
      data1: {},
      data2: {},
@@ -323,6 +349,8 @@
          },
        ],
      },
            activeName: 'first',
    };
  },
  computed: {
@@ -406,7 +434,8 @@
    },
    rowSave(form, done, loading) {
      // console.log("save1");
      this.forms = 0;
            this.forms = true;
            this.activeName = 'first';
      var that = this;
      //先获取部门接口
      getDeptLazyTree().then((res) => {
@@ -545,84 +574,84 @@
    //   this.obj2["useid"] = data.id;
    //   this.nobumen = 1;
    // },
    tip0() {
        submitAdd () {
      if (this.panduanmeiyouziduan()) {
        return;
      }
      var d = {};
            var oneObj = {};
      for (var k in this.obj0) {
        for (var i in column0) {
          if (k == column0[i].prop && k != "title0") {
            d[k] = this.obj0[k];
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
          }
        }
      }
      console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
          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];
            this.data0 = oneObj;
            var twoObj = {};
            for (var twok in this.obj1) {
                for (var twoi in column1) {
                    if (twok == column1[twoi].prop && twok != "title1") {
                        twoObj[twok] = this.obj1[twok];
          }
        }
      }
      d["capital"] = d["capital2"];
      delete d["capital2"];
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
      // console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
          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];
            this.data1 = twoObj;
            var threeObj = {};
            for (var threek in this.obj2) {
                for (var threei in column2) {
                    if (threek == column2[threei].prop && threek != "title2") {
                        threeObj[threek] = this.obj2[threek];
          }
        }
      }
      console.log(d);
      d["cardid"] = d["cardid2"];
      delete d["cardid2"];
      d["cell"] = d["cell2"];
      delete d["cell2"];
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["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("请检查表单是否填写完整!");
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
          return;
        }
      }
      console.log(d, 2);
      this.data2 = d;
            this.data2 = threeObj;
      // this.data0.departmentid = this.data0.useid;
      // this.data1.departmentid = this.data1.useid;
@@ -646,22 +675,44 @@
      }, 500);
      this.tipover();
    },
    tip1up1() {
      this.forms = 0;
    },
    tip2up2() {
      this.forms = 1;
    },
    tipover() {
      this.forms = -1;
            this.forms = false;
      this.obj0 = {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      };
      this.obj1 = {
        title1: "保安单位出资人员",
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
      };
      this.obj2 = {
        title2: "主要管理人员信息",
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      };
      this.data0 = {};
      this.data1 = {};
@@ -697,7 +748,24 @@
      console.log(this.havedata, "qqqqq");
    },
  },
  mounted() {},
    mounted () {
        var that = this
        this.option0.column.forEach(item => {
            if (item.prop == "creditcode") {
                item.change = function (e) {
                    that.obj1.creditcode = e.value
                    that.obj2.creditcode = e.value
                }
            }
        })
    },
};
</script>
@@ -717,38 +785,6 @@
//   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;
}
src/views/securityUnit/transRegionalcompany.vue
@@ -1,8 +1,7 @@
<template>
  <basic-container>
    <div class="securityUnit">
      <avue-crud
        :option="option"
            <avue-crud :option="option"
        :data="data"
        :page.sync="page"
        ref="crudrec"
@@ -14,129 +13,128 @@
        @row-update="rowUpdate"
        @row-del="rowDel"
        @selection-change="selectionChange"
        @refresh-change="refreshChange"
      >
                       @refresh-change="refreshChange">
        <!-- @row-click="rowClick" -->
        <template slot-scope="{ row }" slot="znum">
          <el-tag
            class="rowClickSelf"
                <template slot-scope="{ row }"
                          slot="znum">
                    <el-tag class="rowClickSelf"
            @click="rowClickSelf(row)"
            title="点击查看保安人员情况"
            >{{ row.znum }}</el-tag
          >
                            title="点击查看保安人员情况">{{ row.znum }}</el-tag>
        </template>
        <template slot-scope="{ type, size, row }" slot="menu">
          <el-button
            icon="el-icon-s-custom"
                <template slot-scope="{ type, size, row }"
                          slot="menu">
                    <el-button icon="el-icon-s-custom"
            :size="size"
            :type="type"
            @click.stop="rowClick(row)"
            >查看
                               @click.stop="rowClick(row)">查看
          </el-button>
          <el-button
            :size="size"
                    <el-button :size="size"
            :type="type"
            @click="handleUploadPage(row)"
            icon="el-icon-circle-check"
            >附件上传
                               icon="el-icon-circle-check">附件上传
          </el-button>
        </template>
        <template slot="menuLeft">
          <el-button
            type="primary"
                    <el-button type="primary"
            icon="el-icon-plus"
            size="small"
            plain
            @click.stop="rowSave"
            >新增</el-button
          >
                               @click.stop="rowSave">信息登记</el-button>
          <el-button
            type="danger"
                    <el-button type="danger"
            size="small"
            plain
            icon="el-icon-delete"
            @click="handleDelete"
            >删 除
                               @click="handleDelete">删 除
          </el-button>
          <el-button
            type="success"
                    <el-button type="success"
            size="small"
            plain
            icon="el-icon-upload2"
            @click="handleImport1"
            >批量导入
                               @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"
            <el-dialog title="信息登记"
                       append-to-body
                       :visible.sync="forms"
                       :close-on-click-modal='false'
                       @close="tipover"
                       class="information-box"
                       width="60%">
                <el-tabs v-model="activeName"
                         @tab-click="handleClick">
                    <el-tab-pane label="保安单位基本信息"
                                 name="first">
                        <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>
                                   :option="option0">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form1"
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
            v-model="obj1"
            :option="option1"
            v-else-if="forms == 1"
          >
                                   :option="option1">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
          <avue-form
            ref="form2"
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
            v-model="obj2"
            :option="option2"
            v-else-if="forms == 2"
          >
                                   :option="option2">
            <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>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
            </template>
          </avue-form>
                    </el-tab-pane>
                </el-tabs>
            </el-dialog>
        </div>
      </div>
    </div>
    <el-dialog
      title="保安单位导入"
        <el-dialog title="保安单位导入"
      append-to-body
      :visible.sync="excelBox1"
      width="555px"
    >
      <avue-form
        :option="excelOption1"
                   width="555px">
            <avue-form :option="excelOption1"
        v-model="excelForm1"
        :upload-after="uploadAfter1"
      >
                       :upload-after="uploadAfter1">
        <template slot="excelTemplate">
          <el-button type="primary" @click="handleTemplate1">
                    <el-button type="primary"
                               @click="handleTemplate1">
            点击下载<i class="el-icon-download el-icon--right"></i>
          </el-button>
        </template>
@@ -254,7 +252,23 @@
      // },
      obj0: {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      },
      option0: {
        emptyBtn: false,
@@ -263,7 +277,13 @@
        column: column0,
      },
      obj1: {
        title1: "保安单位出资人员",
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
      },
      option1: {
        emptyBtn: false,
@@ -272,7 +292,11 @@
        column: column1,
      },
      obj2: {
        title2: "主要管理人员信息",
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      },
      option2: {
        emptyBtn: false,
@@ -281,7 +305,7 @@
        column: column2,
      },
      forms: -1,
            forms: false,
      data0: {},
      data1: {},
      data2: {},
@@ -308,6 +332,8 @@
        selection: true,
        column: column,
      },
            activeName: 'first',
    };
  },
  computed: {
@@ -391,7 +417,8 @@
    },
    rowSave(form, done, loading) {
      // console.log("save1");
      this.forms = 0;
            this.forms = true;
            this.activeName = 'first';
      var that = this;
      //先获取部门接口
      getDeptLazyTree().then((res) => {
@@ -530,84 +557,84 @@
    //   this.obj2["useid"] = data.id;
    //   this.nobumen = 1;
    // },
    tip0() {
        submitAdd () {
      if (this.panduanmeiyouziduan()) {
        return;
      }
      var d = {};
            var oneObj = {};
      for (var k in this.obj0) {
        for (var i in column0) {
          if (k == column0[i].prop && k != "title0") {
            d[k] = this.obj0[k];
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
          }
        }
      }
      console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
          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];
            this.data0 = oneObj;
            var twoObj = {};
            for (var twok in this.obj1) {
                for (var twoi in column1) {
                    if (twok == column1[twoi].prop && twok != "title1") {
                        twoObj[twok] = this.obj1[twok];
          }
        }
      }
      d["capital"] = d["capital2"];
      delete d["capital2"];
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
      // console.log(d);
      for (var k in d) {
        if (d[k] == "" || d[k] == undefined) {
          console.log(k);
          this.$message.warning("请检查表单是否填写完整!");
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
          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];
            this.data1 = twoObj;
            var threeObj = {};
            for (var threek in this.obj2) {
                for (var threei in column2) {
                    if (threek == column2[threei].prop && threek != "title2") {
                        threeObj[threek] = this.obj2[threek];
          }
        }
      }
      console.log(d);
      d["cardid"] = d["cardid2"];
      delete d["cardid2"];
      d["cell"] = d["cell2"];
      delete d["cell2"];
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["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("请检查表单是否填写完整!");
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
          return;
        }
      }
      console.log(d, 2);
      this.data2 = d;
            this.data2 = threeObj;
      // this.data0.departmentid = this.data0.useid;
      // this.data1.departmentid = this.data1.useid;
@@ -631,22 +658,43 @@
      }, 500);
      this.tipover();
    },
    tip1up1() {
      this.forms = 0;
    },
    tip2up2() {
      this.forms = 1;
    },
    tipover() {
      this.forms = -1;
            this.forms = false;
      this.obj0 = {
        title0: "保安单位基本信息",
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
      };
      this.obj1 = {
        title1: "保安单位出资人员",
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
      };
      this.obj2 = {
        title2: "主要管理人员信息",
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
      };
      this.data0 = {};
      this.data1 = {};
@@ -682,7 +730,24 @@
      console.log(this.havedata, "qqqqq");
    },
  },
  mounted() {},
    mounted () {
        var that = this
        this.option0.column.forEach(item => {
            if (item.prop == "creditcode") {
                item.change = function (e) {
                    that.obj1.creditcode = e.value
                    that.obj2.creditcode = e.value
                }
            }
        })
    },
};
</script>
@@ -702,38 +767,6 @@
//   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;
}