保安服务企业管理-验收版本
shuishen
2021-09-11 6a2a3bb262e13ea320c509d4431ca40a1963b0a1
部分文件改动,公司单位及其他
9 files modified
8738 ■■■■ changed files
src/router/axios.js 2 ●●● patch | view | raw | blame | history
src/views/securityEquipment/car.js 308 ●●●● patch | view | raw | blame | history
src/views/securityEquipment/equipments.js 64 ●●●●● patch | view | raw | blame | history
src/views/securityUnit/armedEscort.vue 1377 ●●●● patch | view | raw | blame | history
src/views/securityUnit/data.js 1256 ●●●● patch | view | raw | blame | history
src/views/securityUnit/localCompany.vue 1403 ●●●● patch | view | raw | blame | history
src/views/securityUnit/securityTraining.vue 1433 ●●●● patch | view | raw | blame | history
src/views/securityUnit/selfRecruitedSecurityGuard.vue 1466 ●●●● patch | view | raw | blame | history
src/views/securityUnit/transRegionalcompany.vue 1429 ●●●● 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
@@ -1,150 +1,178 @@
var DIC = [{
    label: '招聘中',
    value: 1,
  label: '招聘中',
  value: 1,
}, {
    label: '停止招聘',
    value: 2,
  label: '停止招聘',
  value: 2,
}]
export var column = [
    // {
    //     label: "id",
    //     prop: "id",
    //     hide: true,
    //     editDisplay: false,
    //     addDisplay: false
    // },
    {
        label: "车牌号码",
        prop: "carNumber",
        searchSpan: 3,
        search: true,
        rules: [{
            required: true,
            message: "请输入车牌号码",
            trigger: "blur"
        }]
  // {
  //     label: "id",
  //     prop: "id",
  //     hide: true,
  //     editDisplay: false,
  //     addDisplay: false
  // },
  {
    label: "车牌号码",
    prop: "carNumber",
    searchSpan: 3,
    search: true,
    rules: [{
      required: true,
      message: "请输入车牌号码",
      trigger: "blur"
    }]
  },
  {
    label: "号码种类",
    prop: "numberType",
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=carNumberType",
    search: true,
    type: "select",
    props: {
      label: "dictValue",
      value: "dictKey"
    },
    {
        label: "号码种类",
        prop: "numberType",
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=carNumberType",
        search: true,
        type: "select",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        dataType: "number",
        searchSpan: 3,
        rules: [{
            required: true,
            message: "请输入号码种类",
            trigger: "blur"
        }],
    }, //上面不显示
    {
        label: "车辆类型",
        prop: "carType",
        rules: [{
            required: true,
            message: "请输入车辆类型",
            trigger: "blur"
        }],
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=carType",
        search: true,
        searchSpan: 3,
        type: "select",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        dataType: "number",
    }, {
        label: "车辆型号",
        prop: "mode",
        // search: true,
        width: 110,
        overHidden: true,
        // search: true,
        rules: [{
            required: true,
            message: "请输入车辆型号",
            trigger: "blur"
        }]
    dataType: "number",
    searchSpan: 3,
    rules: [{
      required: true,
      message: "请输入号码种类",
      trigger: "blur"
    }],
  }, //上面不显示
  {
    label: "车辆类型",
    prop: "carType",
    rules: [{
      required: true,
      message: "请输入车辆类型",
      trigger: "blur"
    }],
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=carType",
    search: true,
    searchSpan: 3,
    type: "select",
    props: {
      label: "dictValue",
      value: "dictKey"
    },
    {
        label: "所属保安公司",
        prop: "deptId",
        rules: [{
            required: true,
            message: "请输入保安公司",
            trigger: "blur"
        }],
        search: true,
        // addDisplay: true,
        // editDisplay: true,
        // viewDisplay: true,
        searchSpan: 4,
        searchLabelWidth: 110,
        overHidden: true,
        // searchSpan: 4,
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
        props: {
            label: "title",
            value: "id"
        },
        type: "select",
    dataType: "number",
  }, {
    label: "车辆型号",
    prop: "mode",
    // search: true,
    width: 110,
    overHidden: true,
    // search: true,
    rules: [{
      required: true,
      message: "请输入车辆型号",
      trigger: "blur"
    }]
  },
  {
    label: "所属保安公司",
    prop: "deptId",
    rules: [{
      required: true,
      message: "请输入保安公司",
      trigger: "blur"
    }],
    search: true,
    // addDisplay: true,
    // editDisplay: true,
    // viewDisplay: true,
    searchSpan: 4,
    searchLabelWidth: 110,
    overHidden: true,
    // searchSpan: 4,
    dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
    props: {
      label: "title",
      value: "id"
    },
    {
        label: "责任人",
        prop: "personInCharge",
        rules: [{
            required: true,
            message: "请输入责任人",
            trigger: "blur"
        }]
    type: "select",
  },
  {
    label: "责任人",
    prop: "personInCharge",
    rules: [{
      required: true,
      message: "请输入责任人",
      trigger: "blur"
    }]
  },
  {
    label: "厂商",
    prop: "brand",
    // search: true,
    width: 110,
    overHidden: true,
    search: true,
    rules: [{
      required: true,
      message: "请输入厂商",
      trigger: "blur"
    }],
    searchSpan: 4,
  },
  {
    label: "出厂日期",
    prop: "dateForProduction",
    type: "date",
    format: "yyyy-MM-dd",
    valueFormat: "yyyy-MM-dd",
    searchSpan: 4,
    overHidden: true,
    rules: [{
      required: true,
      message: "请输入出厂日期",
      trigger: "blur"
    }]
  },
  {
    label: "环保标志",
    prop: "umweltsatz",
    // search: true,
    width: 110,
    overHidden: true,
    // search: true,
    rules: [{
      required: true,
      message: "请输入环保标志(如:国IV)",
      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",
    },
    {
        label: "厂商",
        prop: "brand",
        // search: true,
        width: 110,
        overHidden: true,
        search: true,
        rules: [{
            required: true,
            message: "请输入厂商",
            trigger: "blur"
        }],
        searchSpan: 4,
    canvasOption: {
      text: " ",
      ratio: 0.1,
    },
    {
        label: "出厂日期",
        prop: "dateForProduction",
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "yyyy-MM-dd",
        searchSpan: 4,
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入出厂日期",
            trigger: "blur"
        }]
    },
    {
        label: "环保标志",
        prop: "umweltsatz",
        // search: true,
        width: 110,
        overHidden: true,
        // search: true,
        rules: [{
            required: true,
            message: "请输入环保标志(如:国IV)",
            trigger: "blur"
        }],
        searchSpan: 4,
    }
]
    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,664 +1,733 @@
<template>
  <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>
    <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>
                <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>
            <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">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
                                   v-model="obj1"
                                   :option="option1">
                            <template slot="menuForm">
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
                                   v-model="obj2"
                                   :option="option2">
                            <template slot="menuForm">
                                <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="保安单位导入"
      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>
        <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>
import { column, column0, column1, column2 } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
  adddata1,
  adddata2,
  getDeptLazyTree,
    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",
    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,
                    },
                ],
            },
            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",
            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: {
                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,
            },
            option1: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column1,
            },
            option2: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column2,
            },
            forms: false,
            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,
            },
            activeName: 'first',
        };
    },
    computed: {
        ...mapGetters(["userInfo"]),
        ids () {
            let ids = [];
            this.selectionList.forEach((ele) => {
                ids.push(ele.creditcode);
            });
            return ids.join(",");
        },
        props: {
          labelText: "标题",
          label: "title",
          value: "id",
          children: "children",
        ids1 () {
            let ids1 = [];
            this.selectionList1.forEach((ele) => {
                ids1.push(ele.id);
            });
            return ids1.join(",");
        },
      },
      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();
        ids2 () {
            let ids2 = [];
            this.selectionList2.forEach((ele) => {
                ids2.push(ele.id);
            });
            return ids2.join(",");
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
        haveID () {
            return this.obj0.creditcode;
        },
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          console.log(row);
          return remove(row.creditcode, row.departmentid);
    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 = true;
            this.activeName = 'first';
            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;
        // },
        submitAdd () {
            if (this.panduanmeiyouziduan()) {
                return;
            }
            var oneObj = {};
            for (var k in this.obj0) {
                for (var i in column0) {
                    if (k == column0[i].prop && k != "title0") {
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
                    }
                }
            }
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
                    return;
                }
            }
            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];
                    }
                }
            }
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
            // console.log(d);
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
                    return;
                }
            }
            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];
                    }
                }
            }
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["cell2"];
            // d["shareholdingratio"] = d["shareholdingratio2"];
            // delete d["shareholdingratio2"];
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
                    return;
                }
            }
            this.data2 = threeObj;
            // 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();
        },
        tipover () {
            this.forms = false;
            this.obj0 = {
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            };
            this.obj1 = {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            };
            this.obj2 = {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            };
            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 () {
        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
                }
            }
        })
        .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 lang="scss">
.securityUnit {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
    width: 100%;
    height: 100%;
    //   border: 1px solid #000;
    box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
@@ -669,44 +738,12 @@
//   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;
    border-top: 1px solid transparent !important;
}
.rowClickSelf {
  &:hover {
    cursor: pointer;
  }
    &:hover {
        cursor: pointer;
    }
}
</style>
src/views/securityUnit/data.js
@@ -1,638 +1,634 @@
var DIC = [
    {
        label: '招聘中',
        value: 1,
    }, {
        label: '停止招聘',
        value: 2,
var DIC = [{
  label: '招聘中',
  value: 1,
}, {
  label: '停止招聘',
  value: 2,
}]
export var column = [{
    label: "统一社会信用代码",
    prop: "creditcode",
    width: 140,
    hide: true,
    labelWidth: 160,
    // hide: true,
    // editDisplay: false,
    // addDisplay: false
  },
  {
    label: "企业名称",
    prop: "enterprisename",
    search: true,
    width: 260,
    searchSpan: 4,
    labelWidth: 160,
    // width: 130,
    overHidden: true
  },
  {
    label: "企业类型",
    prop: "stats",
    type: "tree",
    hide: true,
    labelWidth: 160,
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=stats",
    props: {
      label: "dictValue",
      value: "dictKey"
    },
    width: 130,
    rules: [{
      required: true,
      message: "请选择企业类型",
      trigger: "click",
    }, ],
  },
  {
    label: "法定代表人",
    labelWidth: 160,
    prop: "representative",
    width: 110,
    search: true,
    searchSpan: 4,
    searchLabelWidth: 100
  },
  {
    label: "法定代表人电话",
    labelWidth: 160,
    prop: "representativecell",
    width: 120,
    // search: true,
    searchSpan: 4,
    searchLabelWidth: 100
  },
  {
    label: "保安人数",
    labelWidth: 160,
    prop: "znum",
    width: 69,
    // search: true,
    searchSpan: 4,
    searchLabelWidth: 100
  },
  {
    label: "派遣人数",
    labelWidth: 160,
    prop: "pnum",
    width: 69,
    // search: true,
    searchSpan: 4,
    searchLabelWidth: 100
  },
  {
    label: "持证人数",
    labelWidth: 160,
    prop: "cnum",
    width: 69,
    // search: true,
    searchSpan: 4,
    searchLabelWidth: 100
  },
  {
    label: "注册时间",
    prop: "establishtime",
    labelWidth: 160,
    width: 130,
    overHidden: true,
    type: "date",
    format: "yyyy-MM-dd",
    valueFormat: "timestamp",
  },
  {
    label: "注册资本",
    prop: "registeredcapital",
    hide: true,
    labelWidth: 160,
    // search: true,
    width: 80,
  },
  {
    label: "联系人",
    prop: "contacts",
    labelWidth: 160,
    width: 85,
  }, {
    label: "联系电话",
    prop: "contactscell",
    labelWidth: 160,
    width: 95,
  },
  {
    label: "注册地址",
    prop: "address",
    labelWidth: 160,
    // search: true,
    hide: true,
  },
  {
    label: "经营范围",
    prop: "business",
    // search: true,
    labelWidth: 160,
    hide: true,
    // width: 110,
    overHidden: true
  },
  {
    label: "所属辖区",
    prop: "region",
    labelWidth: 160,
    // width: 110,
    // search: true,
    overHidden: true
  },
  {
    label: "登记机关",
    prop: "registration",
    // search: true,
    labelWidth: 160,
    // width: 88,
    overHidden: true,
    hide: true,
  },
  {
    label: "所属行业",
    prop: "industry",
    labelWidth: 160,
    hide: true,
    // search: true,
    // width: 88,
  },
]
var w = 160,
  s = 12;
export var column0 = [{
    label: "",
    labelWidth: 20,
    type: 'title',
    prop: "title0",
    span: 24,
    styles: {
      fontSize: '24px'
    }
  },
  {
    label: "统一社会信用代码",
    prop: "creditcode",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入社会信用代码",
      trigger: "blur"
    }]
  },
  {
    label: "辖区",
    prop: "jurisdiction",
    // type: "tree",
    // disabled: true,
    type: "tree",
    dicUrl: "/api//jurisdiction/lazy-trees",
    props: {
      label: "title",
      value: "id"
    },
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请选择所属辖区",
      trigger: "click",
    }, ],
  },
  // {
  //     label: "机构",
  //     prop: "departmentids",
  //     // type: "tree",
  //     // disabled: true,
  //     type: "tree",
  //     dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0",
  //     props: {
  //         label: "title",
  //         value: "id"
  //     },
  //     labelWidth: w,
  //     span: s,
  //     rules: [
  //         {
  //             required: true,
  //             message: "请选择所属部门",
  //             trigger: "click",
  //         },
  //     ],
  // },
  {
    label: "企业类型",
    prop: "stats",
    type: "tree",
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=stats",
    props: {
      label: "dictValue",
      value: "dictKey"
    },
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请选择企业类型",
      trigger: "click",
    }, ],
  },
  {
    label: "企业名称",
    prop: "enterprisename",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入企业名称",
      trigger: "blur"
    }]
  },
  {
    label: "法定代表人",
    prop: "representative",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入法定代表人",
      trigger: "blur"
    }]
  },
  {
    label: "法定代表人电话",
    prop: "representativecell",
    labelWidth: w,
    span: s,
  },
  // {
  //     label: "企业类型",
  //     prop: "stats",
  //     labelWidth: w,
  //     span: s,
  //     rules: [{
  //         required: true,
  //         message: "请输入企业类型",
  //         trigger: "blur"
  //     }]
  // },
  {
    label: "注册时间",
    prop: "establishtime",
    labelWidth: w,
    span: s,
    type: "date",
    format: "yyyy-MM-dd",
    valueFormat: "timestamp",
    rules: [{
      required: true,
      message: "请输入注册时间",
      trigger: "blur"
    }]
  },
  {
    label: "注册资本(万元人民币)",
    prop: "registeredcapital",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入注册资本",
      trigger: "blur"
    }]
  },
  {
    label: "实缴资本(万元人民币)",
    prop: "capital",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入实缴资本",
      trigger: "blur"
    }]
  },
  {
    label: "组织机构代码",
    prop: "organizationcode",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入组织机构代码",
      trigger: "blur"
    }]
  },
  {
    label: "工商注册号",
    prop: "registrationnumber",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入工商注册号",
      trigger: "blur"
    }]
  },
  {
    label: "纳税人识别号",
    prop: "identificationnumber",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入纳税人识别号",
      trigger: "blur"
    }]
  },
  {
    label: "企业类型",
    prop: "enterprises",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入企业类型",
      trigger: "blur"
    }]
  },
  {
    label: "注册地址",
    prop: "address",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入注册地址",
      trigger: "blur"
    }]
  },
  {
    label: "经营范围",
    prop: "business",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入经营范围",
      trigger: "blur"
    }]
  },
  {
    label: "所属地区",
    prop: "region",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入所属地区",
      trigger: "blur"
    }]
  },
  {
    label: "登记机关",
    prop: "registration",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入登记机关",
      trigger: "blur"
    }]
    // overHidden: true,
  },
  {
    label: "所属行业",
    prop: "industry",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入所属行业",
      trigger: "blur"
    }]
  }
]
export var column = [
    {
        label: "统一社会信用代码",
        prop: "creditcode",
        width: 140,
        hide: true,
        labelWidth: 160,
        // hide: true,
        // editDisplay: false,
        // addDisplay: false
    },
    {
        label: "企业名称",
        prop: "enterprisename",
        search: true,
        width: 260,
        searchSpan: 4,
        labelWidth: 160,
        // width: 130,
        overHidden: true
    },
    {
        label: "企业类型",
        prop: "stats",
        type: "tree",
        hide: true,
        labelWidth: 160,
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=stats",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        width: 130,
        rules: [
            {
                required: true,
                message: "请选择企业类型",
                trigger: "click",
            },
        ],
    },
    {
        label: "法定代表人",
        labelWidth: 160,
        prop: "representative",
        width: 110,
        search: true,
        searchSpan: 4,
        searchLabelWidth: 100
    },
    {
        label: "法定代表人电话",
        labelWidth: 160,
        prop: "representativecell",
        width: 120,
        // search: true,
        searchSpan: 4,
        searchLabelWidth: 100
    },
    {
        label: "保安人数",
        labelWidth: 160,
        prop: "znum",
        width: 69,
        // search: true,
        searchSpan: 4,
        searchLabelWidth: 100
    },
    {
        label: "派遣人数",
        labelWidth: 160,
        prop: "pnum",
        width: 69,
        // search: true,
        searchSpan: 4,
        searchLabelWidth: 100
    },
    {
        label: "持证人数",
        labelWidth: 160,
        prop: "cnum",
        width: 69,
        // search: true,
        searchSpan: 4,
        searchLabelWidth: 100
    },
    {
        label: "注册时间",
        prop: "establishtime",
        labelWidth: 160,
        width: 130,
        overHidden: true,
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
    },
    {
        label: "注册资本",
        prop: "registeredcapital",
        hide: true,
        labelWidth: 160,
        // search: true,
        width: 80,
    },
    {
        label: "联系人",
        prop: "contacts",
        labelWidth: 160,
        width: 85,
    }, {
        label: "联系电话",
        prop: "contactscell",
        labelWidth: 160,
        width: 95,
    },
    {
        label: "注册地址",
        prop: "address",
        labelWidth: 160,
        // search: true,
        hide: true,
    },
    {
        label: "经营范围",
        prop: "business",
        // search: true,
        labelWidth: 160,
        hide: true,
        // width: 110,
        overHidden: true
    },
    {
        label: "所属辖区",
        prop: "region",
        labelWidth: 160,
        // width: 110,
        // search: true,
        overHidden: true
    },
    {
        label: "登记机关",
        prop: "registration",
        // search: true,
        labelWidth: 160,
        // width: 88,
        overHidden: true,
        hide: true,
    },
    {
        label: "所属行业",
        prop: "industry",
        labelWidth: 160,
        hide: true,
        // search: true,
        // width: 88,
    },
]
var w = 160
    , s = 12;
export var column0 = [
    {
        label: "",
        labelWidth: 20,
        type: 'title',
        prop: "title0",
        span: 24,
        styles: {
            fontSize: '24px'
        }
    },
    {
        label: "统一社会信用代码",
        prop: "creditcode",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入社会信用代码",
            trigger: "blur"
        }]
    },
    {
        label: "辖区",
        prop: "jurisdiction",
        // type: "tree",
        // disabled: true,
        type: "tree",
        dicUrl: "/api//jurisdiction/lazy-trees",
        props: {
            label: "title",
            value: "id"
        },
        labelWidth: w,
        span: s,
        rules: [
            {
                required: true,
                message: "请选择所属辖区",
                trigger: "click",
            },
        ],
    },
    // {
    //     label: "机构",
    //     prop: "departmentids",
    //     // type: "tree",
    //     // disabled: true,
    //     type: "tree",
    //     dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0",
    //     props: {
    //         label: "title",
    //         value: "id"
    //     },
    //     labelWidth: w,
    //     span: s,
    //     rules: [
    //         {
    //             required: true,
    //             message: "请选择所属部门",
    //             trigger: "click",
    //         },
    //     ],
    // },
    {
        label: "企业类型",
        prop: "stats",
        type: "tree",
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=stats",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        labelWidth: w,
        span: s,
        rules: [
            {
                required: true,
                message: "请选择企业类型",
                trigger: "click",
            },
        ],
    },
    {
        label: "企业名称",
        prop: "enterprisename",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入企业名称",
            trigger: "blur"
        }]
    },
    {
        label: "法定代表人",
        prop: "representative",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入法定代表人",
            trigger: "blur"
        }]
    },
    // {
    //     label: "企业类型",
    //     prop: "stats",
    //     labelWidth: w,
    //     span: s,
    //     rules: [{
    //         required: true,
    //         message: "请输入企业类型",
    //         trigger: "blur"
    //     }]
    // },
    {
        label: "注册时间",
        prop: "establishtime",
        labelWidth: w,
        span: s,
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        rules: [{
            required: true,
            message: "请输入注册时间",
            trigger: "blur"
        }]
    },
    {
        label: "注册资本(万元人民币)",
        prop: "registeredcapital",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入注册资本",
            trigger: "blur"
        }]
    },
    {
        label: "实缴资本(万元人民币)",
        prop: "capital",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入实缴资本",
            trigger: "blur"
        }]
    },
    {
        label: "组织机构代码",
        prop: "organizationcode",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入组织机构代码",
            trigger: "blur"
        }]
    },
    {
        label: "工商注册号",
        prop: "registrationnumber",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入工商注册号",
            trigger: "blur"
        }]
    },
    {
        label: "纳税人识别号",
        prop: "identificationnumber",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入纳税人识别号",
            trigger: "blur"
        }]
    },
    {
        label: "企业类型",
        prop: "enterprises",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入企业类型",
            trigger: "blur"
        }]
    },
    {
        label: "注册地址",
        prop: "address",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入注册地址",
            trigger: "blur"
        }]
    },
    {
        label: "经营范围",
        prop: "business",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入经营范围",
            trigger: "blur"
        }]
    },
    {
        label: "所属地区",
        prop: "region",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入所属地区",
            trigger: "blur"
        }]
    },
    {
        label: "登记机关",
        prop: "registration",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入登记机关",
            trigger: "blur"
        }]
        // overHidden: true,
    },
    {
        label: "所属行业",
        prop: "industry",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入所属行业",
            trigger: "blur"
        }]
export var column1 = [{
    label: "",
    labelWidth: 20,
    type: 'title',
    prop: "title1",
    span: 24,
    styles: {
      fontSize: '24px'
    }
  },
  {
    label: "统一社会信用代码",
    prop: "creditcode",
    disabled: true,
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入统一社会信用代码",
      trigger: "blur"
    }]
  },
  // {
  //     label: "部门",
  //     prop: "departmentid",
  //     // type: "tree",
  //     disabled: true,
  //     dicData: [],
  //     labelWidth: w,
  //     span: s,
  //     props: {
  //         label: "title",
  //     },
  //     rules: [
  //         {
  //             required: true,
  //             message: "请选择所属部门",
  //             trigger: "click",
  //         },
  //     ],
  // },
  {
    label: "股东",
    prop: "shareholder",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入法定代表人",
      trigger: "blur"
    }]
  }, {
    label: "持股比例(%)",
    prop: "shareholdingratio",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入持股比例",
      trigger: "blur"
    }]
  },
  // {
  //     label: "最终受益股份",
  //     prop: "beneficial",
  //     labelWidth: w,
  //     span: s
  // },
  {
    label: "出资金额",
    prop: "capital2",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入出资金额",
      trigger: "blur"
    }]
  }, {
    label: "出资时间",
    prop: "capitaltime",
    type: "date",
    format: "yyyy-MM-dd",
    valueFormat: "timestamp",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入法定代表人",
      trigger: "blur"
    }]
  }, {
    label: "身份证",
    prop: "cardid",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入身份证",
      trigger: "blur"
    }]
  }, {
    label: "联系电话",
    prop: "cell",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入联系电话",
      trigger: "blur"
    }]
  },
]
export var column1 = [
    {
        label: "",
        labelWidth: 20,
        type: 'title',
        prop: "title1",
        span: 24,
        styles: {
            fontSize: '24px'
        }
    },
    {
        label: "统一社会信用代码",
        prop: "creditcode",
        disabled: true,
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入统一社会信用代码",
            trigger: "blur"
        }]
    },
    // {
    //     label: "部门",
    //     prop: "departmentid",
    //     // type: "tree",
    //     disabled: true,
    //     dicData: [],
    //     labelWidth: w,
    //     span: s,
    //     props: {
    //         label: "title",
    //     },
    //     rules: [
    //         {
    //             required: true,
    //             message: "请选择所属部门",
    //             trigger: "click",
    //         },
    //     ],
    // },
    {
        label: "股东",
        prop: "shareholder",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入法定代表人",
            trigger: "blur"
        }]
    }, {
        label: "持股比例(%)",
        prop: "shareholdingratio",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入持股比例",
            trigger: "blur"
        }]
    },
    // {
    //     label: "最终受益股份",
    //     prop: "beneficial",
    //     labelWidth: w,
    //     span: s
    // },
    {
        label: "出资金额",
        prop: "capital2",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入出资金额",
            trigger: "blur"
        }]
    }, {
        label: "出资时间",
        prop: "capitaltime",
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入法定代表人",
            trigger: "blur"
        }]
    }, {
        label: "身份证",
        prop: "cardid",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入身份证",
            trigger: "blur"
        }]
    }, {
        label: "联系电话",
        prop: "cell",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入联系电话",
            trigger: "blur"
        }]
    },
]
export var column2 = [
    {
        label: "",
        labelWidth: 20,
        type: 'title',
        prop: "title2",
        span: 24,
        styles: {
            fontSize: '24px'
        }
    },
    {
        label: "统一社会信用代码",
        prop: "creditcode",
        disabled: true,
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入统一社会信用代码",
            trigger: "blur"
        }]
    },
    // {
    //     label: "部门",
    //     prop: "departmentid",
    //     // type: "tree",
    //     disabled: true,
    //     dicData: [],
    //     labelWidth: w,
    //     span: s,
    //     props: {
    //         label: "title",
    //     },
    //     rules: [
    //         {
    //             required: true,
    //             message: "请选择所属部门",
    //             trigger: "click",
    //         },
    //     ],
    // },
    {
        label: "姓名",
        prop: "name",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入姓名",
            trigger: "blur"
        }]
    }, {
        label: "职务",
        prop: "post",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入职务",
            trigger: "blur"
        }]
    }, {
        label: "身份证",
        prop: "cardid2",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入身份证",
            trigger: "blur"
        }]
    }, {
        label: "联系电话",
        prop: "cell2",
        labelWidth: w,
        span: s,
        rules: [{
            required: true,
            message: "请输入联系电话",
            trigger: "blur"
        }]
export var column2 = [{
    label: "",
    labelWidth: 20,
    type: 'title',
    prop: "title2",
    span: 24,
    styles: {
      fontSize: '24px'
    }
    // , {
    //     label: "持股比例(%)",
    //     prop: "shareholdingratio2",
    //     labelWidth: w,
    //     span: s
    // }
  },
  {
    label: "统一社会信用代码",
    prop: "creditcode",
    disabled: true,
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入统一社会信用代码",
      trigger: "blur"
    }]
  },
  // {
  //     label: "部门",
  //     prop: "departmentid",
  //     // type: "tree",
  //     disabled: true,
  //     dicData: [],
  //     labelWidth: w,
  //     span: s,
  //     props: {
  //         label: "title",
  //     },
  //     rules: [
  //         {
  //             required: true,
  //             message: "请选择所属部门",
  //             trigger: "click",
  //         },
  //     ],
  // },
  {
    label: "姓名",
    prop: "name",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入姓名",
      trigger: "blur"
    }]
  }, {
    label: "职务",
    prop: "post",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入职务",
      trigger: "blur"
    }]
  }, {
    label: "身份证",
    prop: "cardid2",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入身份证",
      trigger: "blur"
    }]
  }, {
    label: "联系电话",
    prop: "cell2",
    labelWidth: w,
    span: s,
    rules: [{
      required: true,
      message: "请输入联系电话",
      trigger: "blur"
    }]
  }
  // , {
  //     label: "持股比例(%)",
  //     prop: "shareholdingratio2",
  //     labelWidth: w,
  //     span: s
  // }
]
src/views/securityUnit/localCompany.vue
@@ -1,664 +1,743 @@
<template>
  <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>
    <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>
                <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>
            <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">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
                                   v-model="obj1"
                                   :option="option1">
                            <template slot="menuForm">
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
                                   v-model="obj2"
                                   :option="option2">
                            <template slot="menuForm">
                                <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="保安单位导入"
      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>
        <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>
import { column, column0, column1, column2 } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
  adddata1,
  adddata2,
  getDeptLazyTree,
    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",
    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,
                    },
                ],
            },
            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",
            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: {
                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,
            },
            option1: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column1,
            },
            option2: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column2,
            },
            forms: false,
            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,
                addTitle: "信息登记",
                addBtnText: "信息登记",
            },
            activeName: 'first',
        };
    },
    computed: {
        ...mapGetters(["userInfo"]),
        ids () {
            let ids = [];
            this.selectionList.forEach((ele) => {
                ids.push(ele.creditcode);
            });
            return ids.join(",");
        },
        props: {
          labelText: "标题",
          label: "title",
          value: "id",
          children: "children",
        ids1 () {
            let ids1 = [];
            this.selectionList1.forEach((ele) => {
                ids1.push(ele.id);
            });
            return ids1.join(",");
        },
      },
      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();
        ids2 () {
            let ids2 = [];
            this.selectionList2.forEach((ele) => {
                ids2.push(ele.id);
            });
            return ids2.join(",");
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
        haveID () {
            return this.obj0.creditcode;
        },
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          console.log(row);
          return remove(row.creditcode, row.departmentid);
    methods: {
        handleClick (tab, event) {
            console.log(tab, event);
        },
        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 = true;
            this.activeName = 'first';
            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"] = "2";
            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;
        // },
        submitAdd () {
            if (this.panduanmeiyouziduan()) {
                return;
            }
            var oneObj = {};
            for (var k in this.obj0) {
                for (var i in column0) {
                    if (k == column0[i].prop && k != "title0") {
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
                    }
                }
            }
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
                    return;
                }
            }
            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];
                    }
                }
            }
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
            // console.log(d);
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
                    return;
                }
            }
            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];
                    }
                }
            }
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["cell2"];
            // d["shareholdingratio"] = d["shareholdingratio2"];
            // delete d["shareholdingratio2"];
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
                    return;
                }
            }
            this.data2 = threeObj;
            // 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();
        },
        tipover () {
            this.forms = false;
            this.obj0 = {
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            };
            this.obj1 = {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            };
            this.obj2 = {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            };
            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 () {
        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
                }
            }
        })
        .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"] = "2";
      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 lang="scss">
.securityUnit {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
    width: 100%;
    height: 100%;
    //   border: 1px solid #000;
    box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
@@ -669,44 +748,28 @@
//   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;
    border-top: 1px solid transparent !important;
}
.rowClickSelf {
  &:hover {
    cursor: pointer;
  }
    &:hover {
        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,695 +1,764 @@
<template>
  <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>
    <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>
                <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>
            <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">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
                                   v-model="obj1"
                                   :option="option1">
                            <template slot="menuForm">
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
                                   v-model="obj2"
                                   :option="option2">
                            <template slot="menuForm">
                                <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="保安单位导入"
      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>
        <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>
import { column, column0, column1, column2 } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
  adddata1,
  adddata2,
  getDeptLazyTree,
    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",
    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,
                    },
                ],
            },
            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",
            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",
                },
            },
            // treeOption: {
            //   nodeKey: "id",
            //   // lazy: true,
            //   // treeLoad: function (node, resolve) {
            //   //   // const parentId = node.level === 0 ? 0 : node.data.id;
            //   //   getDeptLazyTree().then((res) => {
            //   //     resolve(
            //   //       res.data.data.map((item) => {
            //   //         console.log({
            //   //           ...item,
            //   //           leaf: !item.hasChildren,
            //   //         });
            //   //         return {
            //   //           ...item,
            //   //           leaf: !item.hasChildren,
            //   //         };
            //   //       })
            //   //     );
            //   //   });
            //   // },
            //   addBtn: false,
            //   menu: false,
            //   size: "small",
            //   props: {
            //     labelText: "标题",
            //     label: "title",
            //     value: "value",
            //     children: "children",
            //   },
            // },
            obj0: {
                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,
            },
            option1: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column1,
            },
            option2: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column2,
            },
            forms: false,
            data0: {},
            data1: {},
            data2: {},
            b0: {},
            b1: {},
            b2: {},
            noshehuibianma: 0,
            nobumen: 0,
            query: {},
            data: [],
            option: {
                index: true,
                addBtn: false,
                // card: true,
                tip: false,
                searchSize: "mini",
                border: true,
                searchMenuSpan: 6,
                height: 583,
                menuWidth: 275,
                align: "center",
                selection: true,
                column: column,
            },
            activeName: 'first',
        };
    },
    computed: {
        ...mapGetters(["userInfo"]),
        ids () {
            let ids = [];
            this.selectionList.forEach((ele) => {
                ids.push(ele.creditcode);
            });
            return ids.join(",");
        },
        props: {
          labelText: "标题",
          label: "title",
          value: "id",
          children: "children",
        ids1 () {
            let ids1 = [];
            this.selectionList1.forEach((ele) => {
                ids1.push(ele.id);
            });
            return ids1.join(",");
        },
      },
      // treeOption: {
      //   nodeKey: "id",
      //   // lazy: true,
      //   // treeLoad: function (node, resolve) {
      //   //   // const parentId = node.level === 0 ? 0 : node.data.id;
      //   //   getDeptLazyTree().then((res) => {
      //   //     resolve(
      //   //       res.data.data.map((item) => {
      //   //         console.log({
      //   //           ...item,
      //   //           leaf: !item.hasChildren,
      //   //         });
      //   //         return {
      //   //           ...item,
      //   //           leaf: !item.hasChildren,
      //   //         };
      //   //       })
      //   //     );
      //   //   });
      //   // },
      //   addBtn: false,
      //   menu: false,
      //   size: "small",
      //   props: {
      //     labelText: "标题",
      //     label: "title",
      //     value: "value",
      //     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",
        border: true,
        searchMenuSpan: 6,
        height: 583,
        menuWidth: 275,
        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();
        ids2 () {
            let ids2 = [];
            this.selectionList2.forEach((ele) => {
                ids2.push(ele.id);
            });
            return ids2.join(",");
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
        haveID () {
            return this.obj0.creditcode;
        },
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          console.log(row);
          return remove(row.creditcode, row.departmentid);
    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 = true;
            this.activeName = 'first';
            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"] = 1;
            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;
        // },
        submitAdd () {
            if (this.panduanmeiyouziduan()) {
                return;
            }
            var oneObj = {};
            for (var k in this.obj0) {
                for (var i in column0) {
                    if (k == column0[i].prop && k != "title0") {
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
                    }
                }
            }
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
                    return;
                }
            }
            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];
                    }
                }
            }
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
            // console.log(d);
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
                    return;
                }
            }
            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];
                    }
                }
            }
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["cell2"];
            // d["shareholdingratio"] = d["shareholdingratio2"];
            // delete d["shareholdingratio2"];
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
                    return;
                }
            }
            this.data2 = threeObj;
            // 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();
        },
        tipover () {
            this.forms = false;
            this.obj0 = {
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            };
            this.obj1 = {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            };
            this.obj2 = {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            };
            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 () {
        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
                }
            }
        })
        .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"] = 1;
      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 lang="scss">
.securityUnit {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
    width: 100%;
    height: 100%;
    //   border: 1px solid #000;
    box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
@@ -700,39 +769,7 @@
//   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;
    border-top: 1px solid transparent !important;
}
</style>
src/views/securityUnit/selfRecruitedSecurityGuard.vue
@@ -1,712 +1,780 @@
<template>
  <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>
    <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>
                <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>
            <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">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
                                   v-model="obj1"
                                   :option="option1">
                            <template slot="menuForm">
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
                                   v-model="obj2"
                                   :option="option2">
                            <template slot="menuForm">
                                <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="保安单位导入"
      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>
        <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>
import { column, column0, column1, column2 } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
  adddata1,
  adddata2,
  getDeptLazyTree,
    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",
    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,
                    },
                ],
            },
            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",
            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",
                },
            },
            // treeOption: {
            //   nodeKey: "id",
            //   // lazy: true,
            //   // treeLoad: function (node, resolve) {
            //   //   // const parentId = node.level === 0 ? 0 : node.data.id;
            //   //   getDeptLazyTree().then((res) => {
            //   //     resolve(
            //   //       res.data.data.map((item) => {
            //   //         console.log({
            //   //           ...item,
            //   //           leaf: !item.hasChildren,
            //   //         });
            //   //         return {
            //   //           ...item,
            //   //           leaf: !item.hasChildren,
            //   //         };
            //   //       })
            //   //     );
            //   //   });
            //   // },
            //   addBtn: false,
            //   menu: false,
            //   size: "small",
            //   props: {
            //     labelText: "标题",
            //     label: "title",
            //     value: "value",
            //     children: "children",
            //   },
            // },
            obj0: {
                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,
            },
            option1: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column1,
            },
            option2: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column2,
            },
            forms: false,
            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,
                align: "center",
                border: true,
                selection: true,
                column: [
                    ...column,
                    {
                        label: "服务区域",
                        labelWidth: 160,
                        prop: "fregion",
                        width: 69,
                    },
                    {
                        label: "服务时间",
                        labelWidth: 160,
                        prop: "ftime",
                        width: 69,
                        type: "date",
                        format: "yyyy-MM-dd",
                        valueFormat: "timestamp",
                    },
                ],
            },
            activeName: 'first',
        };
    },
    computed: {
        ...mapGetters(["userInfo"]),
        ids () {
            let ids = [];
            this.selectionList.forEach((ele) => {
                ids.push(ele.creditcode);
            });
            return ids.join(",");
        },
        props: {
          labelText: "标题",
          label: "title",
          value: "id",
          children: "children",
        ids1 () {
            let ids1 = [];
            this.selectionList1.forEach((ele) => {
                ids1.push(ele.id);
            });
            return ids1.join(",");
        },
      },
      // treeOption: {
      //   nodeKey: "id",
      //   // lazy: true,
      //   // treeLoad: function (node, resolve) {
      //   //   // const parentId = node.level === 0 ? 0 : node.data.id;
      //   //   getDeptLazyTree().then((res) => {
      //   //     resolve(
      //   //       res.data.data.map((item) => {
      //   //         console.log({
      //   //           ...item,
      //   //           leaf: !item.hasChildren,
      //   //         });
      //   //         return {
      //   //           ...item,
      //   //           leaf: !item.hasChildren,
      //   //         };
      //   //       })
      //   //     );
      //   //   });
      //   // },
      //   addBtn: false,
      //   menu: false,
      //   size: "small",
      //   props: {
      //     labelText: "标题",
      //     label: "title",
      //     value: "value",
      //     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,
        align: "center",
        border: true,
        selection: true,
        column: [
          ...column,
          {
            label: "服务区域",
            labelWidth: 160,
            prop: "fregion",
            width: 69,
          },
          {
            label: "服务时间",
            labelWidth: 160,
            prop: "ftime",
            width: 69,
            type: "date",
            format: "yyyy-MM-dd",
            valueFormat: "timestamp",
          },
        ],
      },
    };
  },
  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();
        ids2 () {
            let ids2 = [];
            this.selectionList2.forEach((ele) => {
                ids2.push(ele.id);
            });
            return ids2.join(",");
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
        haveID () {
            return this.obj0.creditcode;
        },
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          console.log(row);
          return remove(row.creditcode, row.departmentid);
    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 = true;
            this.activeName = 'first';
            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"] = 0;
            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;
        // },
        submitAdd () {
            if (this.panduanmeiyouziduan()) {
                return;
            }
            var oneObj = {};
            for (var k in this.obj0) {
                for (var i in column0) {
                    if (k == column0[i].prop && k != "title0") {
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
                    }
                }
            }
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
                    return;
                }
            }
            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];
                    }
                }
            }
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
            // console.log(d);
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
                    return;
                }
            }
            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];
                    }
                }
            }
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["cell2"];
            // d["shareholdingratio"] = d["shareholdingratio2"];
            // delete d["shareholdingratio2"];
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
                    return;
                }
            }
            this.data2 = threeObj;
            // 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();
        },
        tipover () {
            this.forms = false;
            this.obj0 = {
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            };
            this.obj1 = {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            };
            this.obj2 = {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            };
            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 () {
        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
                }
            }
        })
        .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"] = 0;
      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 lang="scss">
.securityUnit {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
    width: 100%;
    height: 100%;
    //   border: 1px solid #000;
    box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
@@ -717,39 +785,7 @@
//   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;
    border-top: 1px solid transparent !important;
}
</style>
src/views/securityUnit/transRegionalcompany.vue
@@ -1,697 +1,762 @@
<template>
  <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" -->
    <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="{ 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
          >
                <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>
                    <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>
            <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">
                            <template slot="menuForm"
                                      align='center'>
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="保安单位出资人员"
                                 name="second">
                        <avue-form ref="form1"
                                   v-model="obj1"
                                   :option="option1">
                            <template slot="menuForm">
                                <el-button type="primary"
                                           @click="submitAdd">提交</el-button>
                                <el-button type="info"
                                           @click="tipover">取消</el-button>
                            </template>
                        </avue-form>
                    </el-tab-pane>
                    <el-tab-pane label="主要管理人员信息"
                                 name="third">
                        <avue-form ref="form2"
                                   v-model="obj2"
                                   :option="option2">
                            <template slot="menuForm">
                                <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="保安单位导入"
      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>
        <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>
import { column, column0, column1, column2 } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
  adddata1,
  adddata2,
  getDeptLazyTree,
    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",
    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,
                    },
                ],
            },
            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",
            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",
                },
            },
            // treeOption: {
            //   nodeKey: "id",
            //   // lazy: true,
            //   // treeLoad: function (node, resolve) {
            //   //   // const parentId = node.level === 0 ? 0 : node.data.id;
            //   //   getDeptLazyTree().then((res) => {
            //   //     resolve(
            //   //       res.data.data.map((item) => {
            //   //         console.log({
            //   //           ...item,
            //   //           leaf: !item.hasChildren,
            //   //         });
            //   //         return {
            //   //           ...item,
            //   //           leaf: !item.hasChildren,
            //   //         };
            //   //       })
            //   //     );
            //   //   });
            //   // },
            //   addBtn: false,
            //   menu: false,
            //   size: "small",
            //   props: {
            //     labelText: "标题",
            //     label: "title",
            //     value: "value",
            //     children: "children",
            //   },
            // },
            obj0: {
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            },
            option0: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column0,
            },
            obj1: {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            },
            option1: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column1,
            },
            obj2: {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            },
            option2: {
                emptyBtn: false,
                submitBtn: false,
                gutter: 30,
                column: column2,
            },
            forms: false,
            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,
                align: "center",
                border: true,
                selection: true,
                column: column,
            },
            activeName: 'first',
        };
    },
    computed: {
        ...mapGetters(["userInfo"]),
        ids () {
            let ids = [];
            this.selectionList.forEach((ele) => {
                ids.push(ele.creditcode);
            });
            return ids.join(",");
        },
        props: {
          labelText: "标题",
          label: "title",
          value: "id",
          children: "children",
        ids1 () {
            let ids1 = [];
            this.selectionList1.forEach((ele) => {
                ids1.push(ele.id);
            });
            return ids1.join(",");
        },
      },
      // treeOption: {
      //   nodeKey: "id",
      //   // lazy: true,
      //   // treeLoad: function (node, resolve) {
      //   //   // const parentId = node.level === 0 ? 0 : node.data.id;
      //   //   getDeptLazyTree().then((res) => {
      //   //     resolve(
      //   //       res.data.data.map((item) => {
      //   //         console.log({
      //   //           ...item,
      //   //           leaf: !item.hasChildren,
      //   //         });
      //   //         return {
      //   //           ...item,
      //   //           leaf: !item.hasChildren,
      //   //         };
      //   //       })
      //   //     );
      //   //   });
      //   // },
      //   addBtn: false,
      //   menu: false,
      //   size: "small",
      //   props: {
      //     labelText: "标题",
      //     label: "title",
      //     value: "value",
      //     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,
        align: "center",
        border: true,
        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();
        ids2 () {
            let ids2 = [];
            this.selectionList2.forEach((ele) => {
                ids2.push(ele.id);
            });
            return ids2.join(",");
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
        haveID () {
            return this.obj0.creditcode;
        },
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          console.log(row);
          return remove(row.creditcode, row.departmentid);
    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 = true;
            this.activeName = 'first';
            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"] = 4;
            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;
        // },
        submitAdd () {
            if (this.panduanmeiyouziduan()) {
                return;
            }
            var oneObj = {};
            for (var k in this.obj0) {
                for (var i in column0) {
                    if (k == column0[i].prop && k != "title0") {
                        oneObj[k] = this.obj0[k];
                    }
                    if (column0[i].prop == 'creditcode') {
                        column1[1].value = column0[i].value
                    }
                }
            }
            for (var key in oneObj) {
                if (oneObj[key] == "" || oneObj[key] == undefined) {
                    console.log(key);
                    this.$message.warning("请检查表单是否填写完整!1");
                    return;
                }
            }
            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];
                    }
                }
            }
            twoObj["capital"] = twoObj["capital2"];
            delete twoObj["capital2"];
            // console.log(d);
            for (var twokey in twoObj) {
                if (twoObj[twokey] == "" || twoObj[twokey] == undefined) {
                    console.log(twokey);
                    this.$message.warning("请检查表单是否填写完整!2");
                    return;
                }
            }
            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];
                    }
                }
            }
            threeObj["cardid"] = threeObj["cardid2"];
            delete threeObj["cardid2"];
            threeObj["cell"] = threeObj["cell2"];
            delete threeObj["cell2"];
            // d["shareholdingratio"] = d["shareholdingratio2"];
            // delete d["shareholdingratio2"];
            for (var threekey in threeObj) {
                if (threeObj[threekey] == "" || threeObj[threekey] == undefined) {
                    console.log(threekey);
                    this.$message.warning("请检查表单是否填写完整!3");
                    return;
                }
            }
            this.data2 = threeObj;
            // 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();
        },
        tipover () {
            this.forms = false;
            this.obj0 = {
                creditcode: '',
                jurisdiction: '',
                stats: '',
                enterprisename: '',
                representative: '',
                establishtime: '',
                registeredcapital: '',
                capital: '',
                organizationcode: '',
                registrationnumber: '',
                identificationnumber: '',
                enterprises: '',
                address: '',
                business: '',
                region: '',
                registration: '',
                industry: ''
            };
            this.obj1 = {
                creditcode: '',
                shareholder: '',
                shareholdingratio: '',
                capital2: '',
                capitaltime: '',
                cardid: '',
                cell: ''
            };
            this.obj2 = {
                creditcode: '',
                name: '',
                post: '',
                cardid2: '',
                cell2: ''
            };
            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 () {
        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
                }
            }
        })
        .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"] = 4;
      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 lang="scss">
.securityUnit {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
    width: 100%;
    height: 100%;
    //   border: 1px solid #000;
    box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
@@ -702,39 +767,7 @@
//   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;
    border-top: 1px solid transparent !important;
}
</style>