Administrator
2022-04-11 79d9fc857559982b00b68b2d709807bdc4cd286f
src/views/securityGuard/securityGuard.vue
@@ -169,10 +169,11 @@
                  icon="el-icon-view"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_view"
                  @click.stop="rowClick(row)"
                  >查看
                </el-button>
                <br />
                <br v-if="permission.securityGuard_view" />
                <el-button
                  icon="el-icon-scissors"
                  :size="size"
@@ -216,6 +217,15 @@
                  v-if="permission.securityGuard_check"
                  @click.stop="rowCheck(row)"
                  >异常
                </el-button>
                <br v-if="permission.securityGuard_check" />
                <el-button
                  icon="el-icon-money"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_check_apply"
                  @click.stop="rowCheckApply(row)"
                  >证件核实申请
                </el-button>
                <!-- <br />
                <el-button
@@ -306,7 +316,7 @@
          </template>
          <!-- 自定义新增和编辑中的指纹信息 -->
          <!-- src="http://223.82.109.183:2081/zhba/upload/picture/85004574ae23472da37350b918960206.png" -->
          <!-- src="http://61.131.136.25:2081/zhba/upload/picture/85004574ae23472da37350b918960206.png" -->
          <template slot-scope="{ type, disabled }" slot="fingerprintForm">
            <div class="zhiwenMain">
              <!-- <img class="zhiwenImgs" :src="zhiwenImg" alt="" />
@@ -432,6 +442,28 @@
          >
          </avue-form>
        </el-dialog>
        <el-dialog
          title="证件核实申请"
          :visible.sync="securityCheckApplyvisible"
          width="width"
          :modal="true"
          :modal-append-to-body="true"
          :append-to-body="true"
          :close-on-click-modal="false"
          :close-on-press-escape="false"
          :before-close="dialogBeforeClose"
        >
          <div>
            <avue-form
              ref="formSecurityCheckApply"
              :option="optionSecurityCheckApply"
              v-model="formSecurityCheckApply"
              @reset-change="emptytChange"
              @submit="submitSecurityCheckApply"
            >
            </avue-form>
          </div>
        </el-dialog>
        <div style="position: fixed; top: 9999px; width: 100%; height: 100%">
          <div class="certificate_box" id="certificateDom">
            <div class="security_main" ref="certificateBox">
@@ -493,7 +525,7 @@
      >
      <!-- <div style="font-size: 14px">连接身份证设备失败</div> -->
      <!-- v-show="haveSEL == 'noDrive'" -->
      <!-- href="http://223.82.109.183:2081/zhba/upload/20211201/64d8b76f3aecae93e18d015bbca89aba.rar" -->
      <!-- href="http://61.131.136.25:2081/zhba/upload/20211201/64d8b76f3aecae93e18d015bbca89aba.rar" -->
      <!-- <a href="javascript;">未安装身份证驱动,点击下载</a> -->
    </div>
  </el-row>
@@ -517,6 +549,7 @@
  checkAccountByUser
} from "@/api/system/user";
import { securityApply } from "@/api/accreditationRecords/accreditationRecords";
import { add } from "@/api/securityapplyRecord/securityapplyRecord";
import { getList } from "@/api/securityGuard/securityGuard";
import { getDeptLazyTree } from "@/api/system/dept";
import { getInformationDetails } from "@/api/securityUnit/securityUnit";
@@ -764,6 +797,7 @@
      excelBox1: false,
      excelBox2: false,
      isSecurity: true,
      securityCheckApplyvisible: false,
      excelForm1: {},
      excelOption1: {
        submitBtn: false,
@@ -875,6 +909,85 @@
      },
      choiceList: [],
      deptIdss: "",
      optionSecurityCheckApply: {
        height: "auto",
        calcHeight: 30,
        dialogWidth: 1000,
        tip: false,
        searchShow: true,
        searchMenuSpan: 6,
        border: true,
        index: true,
        stripe: true,
        viewBtn: false,
        addBtn: false,
        editBtn: false,
        selection: true,
        excelBtn: false,
        menuWidth: 230,
        dialogClickModal: false,
        column: [
          {
            label: "姓名",
            prop: "realName",
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: true,
                message: "请输入姓名",
                trigger: "blur"
              }
            ]
          },
          {
            label: "保安证编号",
            prop: "number",
            labelWidth: 110,
            disabled: false,
            rules: [
              {
                required: true,
                message: "请输入保安证编号",
                trigger: "blur"
              }
            ]
          },
          {
            label: "保安员证图片",
            prop: "url",
            labelWidth: 110,
            type: "upload",
            span: 24,
            listType: "picture-img",
            tip: "上传jpg/png文件,图片不超过1M",
            propsHttp: {
              res: "data",
              url: "url"
            },
            canvasOption: {
              text: " ",
              ratio: 1.0
            },
            action: "/api/blade-resource/oss/endpoint/put-files",
            rules: [
              {
                required: true,
                message: "请上传保安员证图片",
                trigger: "blur"
              }
            ]
          },
          {
            label: "申请理由",
            labelWidth: 110,
            span: 24,
            type: "textarea",
            prop: "applyReason"
          }
        ]
      },
      formSecurityCheckApply: {},
      option: {
        searchIndex: 6, //收缩展示数量
        searchIcon: true, //搜索是否收缩
@@ -898,7 +1011,7 @@
        searchMenuSpan: 6,
        stripe: true,
        border: true,
        delBtn: true,
        // delBtn: true,
        align: "center",
        index: true,
        // delBtnText: "注销",
@@ -910,6 +1023,8 @@
        dialogClickModal: false,
        column: securityFormPageColumn,
        ...this.$store.state.control.clearOtherBut,
        // addBtn: false,
        editBtn: false,
        group: [
          {
            label: "基础信息",
@@ -1094,11 +1209,6 @@
              {
                label: "是否持证",
                prop: "hold",
                // dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
                // props: {
                //   label: "dictValue",
                //   value: "dictKey",
                // },
                type: "select",
                dicData: [
                  {
@@ -1135,24 +1245,24 @@
                  }
                ]
              },
              {
                label: "保安证书照片",
                prop: "email",
                type: "upload",
                listType: "picture-img",
                display: true,
                propsHttp: {
                  res: "data",
                  url: "url"
                },
                canvasOption: {
                  text: " ",
                  ratio: 1.0
                },
                action: "/api/blade-resource/oss/endpoint/put-files",
                tip: "上传jpg,png格式图片,大小不超过2M",
                span: 12
              },
              // {
              //   label: "保安证书照片",
              //   prop: "email",
              //   type: "upload",
              //   listType: "picture-img",
              //   display: true,
              //   propsHttp: {
              //     res: "data",
              //     url: "url"
              //   },
              //   canvasOption: {
              //     text: " ",
              //     ratio: 1.0
              //   },
              //   action: "/api/blade-resource/oss/endpoint/put-files",
              //   tip: "上传jpg,png格式图片,大小不超过2M",
              //   span: 12
              // },
              {
                label: "民族",
                prop: "nation"
@@ -1432,8 +1542,8 @@
          this.option.group,
          "securitynumber"
        );
        var emailcolumn = this.findObject(this.option.group, "email");
        // console.log(val,1234);
        // var emailcolumn = this.findObject(this.option.group, "email");
        console.log(val, 1234);
        if (val == 1) {
          securitynumbercolumn.display = true;
          securitynumbercolumn.rules = [
@@ -1443,7 +1553,7 @@
              trigger: "blur"
            }
          ];
          emailcolumn.display = true;
          // emailcolumn.display = true;
        } else {
          securitynumbercolumn.display = false;
          securitynumbercolumn.rules = [
@@ -1453,7 +1563,7 @@
              trigger: "blur"
            }
          ];
          emailcolumn.display = false;
          // emailcolumn.display = false;
        }
      },
      immediate: true
@@ -1538,10 +1648,11 @@
      "screenHeight"
    ]),
    permissionList() {
      console.log(this.permission, 789787);
      return {
        addBtn: this.vaildData(this.permission.securityGuard_add, false),
        viewBtn: this.vaildData(null, false),
        delBtn: this.vaildData(this.permission.securityGuard_delete, false),
        delBtn: this.vaildData(null, false),
        editBtn: this.vaildData(this.permission.securityGuard_edit, false)
      };
    },
@@ -1567,7 +1678,6 @@
  beforeCreate() {},
  created() {
    var that = this;
    // console.log(this.userInfo, 9999);
    if (this.userInfo.role_name == "办证管理员") {
      this.search["userType"] = 7;
      this.search["hold"] = "1";
@@ -1588,7 +1698,11 @@
      column.dicUrl =
        "/api/blade-system/dept/security_lazy-tree?deptId=" +
        this.userInfo.dept_id;
    } else if (roleName == "公安管理员" || roleName == "administrator") {
    } else if (
      roleName == "公安管理员" ||
      roleName == "administrator" ||
      this.userInfo.role_name == "民警"
    ) {
      var columnDept = that.findObject(that.option.column, "deptId");
      columnDept.dicUrl =
        "/api/blade-system/dept/security_lazy-tree?jurisdiction=" +
@@ -2087,6 +2201,33 @@
          });
        });
    },
    // 证件核实申请
    rowCheckApply(row) {
      this.formSecurityCheckApply = {
        id: null,
        realName: row.realName,
        userId: row.id
      };
      this.securityCheckApplyvisible = true;
    },
    //证件核实申请提交
    submitSecurityCheckApply(row, done, loading) {
      var that = this;
      row["createUser"] = this.userInfo.Id;
      add(row).then(() => {
        that.$refs.formSecurityCheckApply.resetFields();
        this.$message({
          type: "success",
          message: `操作成功`
        });
        this.securityCheckApplyvisible = false;
        this.onLoad(this.page);
        done();
      });
      error => {
        window.console.log(error);
      };
    },
    //保安员信息导出
    handleExportSecurityInfo() {
      this.$confirm("是否导出保安员信息数据?", "提示", {
@@ -2094,12 +2235,6 @@
        cancelButtonText: "取消",
        type: "warning"
      }).then(() => {
        //获取查询条件
        // const { releaseTimeRange } = this.search;
        // if (releaseTimeRange) {
        //   this.search["startTime"] = releaseTimeRange[0];
        //   this.search["endTime"] = releaseTimeRange[1];
        // }
        var data = {
          cardid: this.search.cardid,
          deptId: this.search.deptId,
@@ -2128,7 +2263,10 @@
          //如果是培训公司管理员
          data["trainingUnitId"] = this.userInfo.Id;
        }
        if (this.userInfo.role_name == "公安管理员") {
        if (
          this.userInfo.role_name == "公安管理员" ||
          this.userInfo.role_name == "民警"
        ) {
          //如果是公安管理员
          data["jurisdiction"] = this.userInfo.jurisdiction;
        }
@@ -2200,19 +2338,40 @@
      };
      securitySave(userMap).then(
        () => {
        res => {
          // console.log(res.data,111111111111111111);
          this.initFlag = false;
          this.$alert("账号为身份证号码,密码为身份证后六位", "温馨提示", {
            confirmButtonText: "确定",
            callback: action => {
              this.$message({
                type: "success",
                message: `操作成功`
              });
              this.onLoad(this.page);
              done();
            }
          });
          if (res.data.code == 200) {
            this.$alert("账号为身份证号码,密码为身份证后六位", "温馨提示", {
              confirmButtonText: "确定",
              callback: action => {
                this.$message({
                  type: "success",
                  message: `操作成功`
                });
                this.onLoad(this.page);
                done();
              }
            });
          }
          //保安员证编号不匹配的情况
          if (res.data.code == 201) {
            this.$alert(
              "用户新增成功!账号为身份证号码,密码为身份证后六位!注:当前保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请!",
              "温馨提示",
              {
                confirmButtonText: "确定",
                callback: action => {
                  this.$message({
                    type: "success",
                    message: `操作成功`
                  });
                  this.onLoad(this.page);
                  done();
                }
              }
            );
          }
        },
        error => {
          window.console.log(error);
@@ -2240,13 +2399,32 @@
        row["cell"] = this.nowCell;
      }
      update(row).then(
        () => {
        res => {
          this.initFlag = false;
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!"
          });
          if (res.data.code == 200) {
            this.$message({
              type: "success",
              message: "操作成功!"
            });
          }
          if (res.data.code == 201) {
            this.$alert(
              "修改成功!注:当前保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请!",
              "温馨提示",
              {
                confirmButtonText: "确定",
                callback: action => {
                  this.$message({
                    type: "success",
                    message: `操作成功`
                  });
                  this.onLoad(this.page);
                  done();
                }
              }
            );
          }
          done();
        },
        error => {
@@ -2451,7 +2629,7 @@
    SFZopens() {
      if (this.haveSEL == "noDrive") {
        let url =
          "http://223.82.109.183:2081/zhba/upload/20211201/64d8b76f3aecae93e18d015bbca89aba.rar";
          "http://61.131.136.25:2081/zhba/upload/20211201/64d8b76f3aecae93e18d015bbca89aba.rar";
        window.open(url, "_self");
      } else if (this.haveSEL == "noEquipment") {
        this.radio = true;
@@ -2727,7 +2905,8 @@
              "/api/blade-user/import-security?deptId=" + this.deptIds;
          } else if (
            roleAlias == "公安管理员" ||
            roleAlias == "administrator"
            roleAlias == "administrator" ||
            this.userInfo.role_name == "民警"
          ) {
            params["jurisdiction"] = that.userInfo.jurisdiction;
            var ColumnDeptUpdate = that.findObject(that.option.group, "deptId");