Administrator
2022-03-05 124f80d24929c3be9444b1d28b02f1c93c6cd815
src/views/securityGuard/securityGuard.vue
@@ -1,6 +1,6 @@
<template>
  <el-row :class="{ securityGuard: isSecurity }">
    <el-col :span="0" style="display: none">
    <!-- <el-col :span="0" style="display: none">
      <div class="box">
        <el-scrollbar>
          <basic-container>
@@ -12,14 +12,17 @@
          </basic-container>
        </el-scrollbar>
      </div>
    </el-col>
    </el-col> -->
    <el-col :span="24">
      <basic-container
        :class="[
          $store.state.control.windowWidth >= 1024 ? 'tooRowSearch' : '',
          screenSize == 1366 ? 'smallSize' : 'normalSize',
          $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : '',
        ]"
      >
        <!-- :key="option.height" -->
        <avue-crud
          class="tablesss"
          :option="option"
          :search.sync="search"
          :table-loading="loading"
@@ -155,7 +158,92 @@
          </template>
          <template slot-scope="{ type, size, row }" slot="menu">
            <el-button
            <el-tooltip
              placement="bottom"
              effect="light"
              transition="el-collapse-transition"
              popper-class="caozuolanpopper"
            >
              <div slot="content">
                <el-button
                  icon="el-icon-view"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_view"
                  @click.stop="rowClick(row)"
                  >查看
                </el-button>
                <br />
                <el-button
                  icon="el-icon-scissors"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_delete && row.status != 2"
                  @click="$refs.crud.rowEdit(row, index)"
                  >编辑
                </el-button>
                <br v-if="permission.securityGuard_delete && row.status != 2" />
                <el-button
                  icon="el-icon-close"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_delete && row.status != 2"
                  @click="$refs.crud.rowDel(row, index)"
                  >注销
                </el-button>
                <br v-if="permission.securityGuard_delete && row.status != 2" />
                <el-button
                  icon="el-icon-circle-close"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_delete && row.status != 2"
                  @click.stop="rowStatus(row)"
                  >离职
                </el-button>
                <br v-if="permission.securityGuard_delete && row.status != 2" />
                <el-button
                  icon="el-icon-search"
                  :size="size"
                  :type="type"
                  v-if="row.status == 2"
                  @click.stop="rowDellook(row)"
                  >离职查询
                </el-button>
                <br v-if="row.status == 2" />
                <el-button
                  icon="el-icon-user"
                  :size="size"
                  :type="type"
                  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"
                  @click.stop="rowCheckApply(row)"
                  >证件核实申请
                </el-button>
                <!-- <br />
                <el-button
                  icon="el-icon-edit"
                  style="display: none"
                  :size="size"
                  :type="type"
                  v-if="permission.securityGuard_paper"
                  @click.stop="certificateClick(row)"
                  >纸质证书制作
                </el-button> -->
              </div>
              <el-button icon="el-icon-s-operation" :size="size" :type="type"
                >操作
              </el-button>
            </el-tooltip>
            <!-- <el-button
              icon="el-icon-s-custom"
              :size="size"
              :type="type"
@@ -168,7 +256,7 @@
              :type="type"
              v-if="permission.securityGuard_delete && row.status != 2"
              @click.stop="rowStatus(row)"
              >离职登记
              >离职
            </el-button>
            <el-button
              icon="el-icon-edit"
@@ -194,7 +282,7 @@
              v-if="permission.securityGuard_paper"
              @click.stop="certificateClick(row)"
              >纸质证书制作
            </el-button>
            </el-button> -->
          </template>
          <template slot-scope="{ row }" slot="sex">
@@ -354,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">
@@ -397,6 +507,7 @@
    </el-col>
    <div
      :class="[
        'downSFZ',
        $store.state.control.windowWidth >= 1024
          ? 'downSFZqudong'
          : 'downSFZqudongS',
@@ -435,10 +546,13 @@
  getUserPractitionersInfo,
  updatePaperTime,
  getzhiwen, //指纹
  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";
import { getRoleTree, getRoleDetail } from "@/api/system/role";
import { mapGetters } from "vuex";
import website from "@/config/website";
@@ -446,7 +560,7 @@
import { securityFormPageColumn } from "./data";
import { mapState } from "vuex";
import Qs from "qs";
import { MessageBox } from 'element-ui';
import { MessageBox } from "element-ui";
//加载指纹类
import Client from "./Client";
@@ -531,6 +645,35 @@
    function trim(str) {
      return str.replace(/(^\s*)|(\s*$)/g, "");
    }
    /**
     * 身份证号码账号校验
     */
    let useBack = "";
    function checkAccount(idCard, callback) {
      var data = {
        cardid: idCard,
      };
      if (window.deptIdss) {
        data["deptId"] = window.deptIdss;
      }
      //调用接口校验
      if (useBack != idCard) {
        useBack = idCard;
        checkAccountByUser(data)
          .then((res) => {
            useBack = "ok";
            callback();
          })
          .catch((error) => {
            callback("当前身份证号码已录入!");
          });
      } else if (useBack == "ok") {
        callback();
      } else {
        console.log("cf");
        callback(new Error("当前身份证号码已录入!"));
      }
    }
    const validatePassCardid = (rule, value, callback) => {
      let ok = false;
      if (value.length == 18) {
@@ -550,7 +693,14 @@
      }
      if (ok) {
        callback();
        // console.log(this.nowCell,123456);
        if (this.type == 1 || this.nowCell == 2) {
          //修改不校验身份证hao
          callback();
        } else {
          //调用接口进行账户重复校验
          checkAccount(value, callback);
        }
      } else {
        callback(new Error("身份证错误"));
      }
@@ -601,7 +751,17 @@
        callback();
      }
    };
    // let table = document.getElementsByClassName("tablesss");
    // let heard = table[0].getElementsByClassName("avue-crud__search");
    // let usNum =
    //   this.windowWidth <= 1376 && this.windowHeight <= 778 ? 170 : 332;
    // // that.option.height = +h - (+heard[0].clientHeight + 332);
    // let optionHeight = +this.windowHeight - (+heard[0].clientHeight + +usNum);
    return {
      startTimecc: null,
      sort: "",
      type: 2,
      sortName: "",
      nowCell: "", //空为手动,2为身份证设备读取
      // 表格数据
      defaults: {},
@@ -637,6 +797,7 @@
      excelBox1: false,
      excelBox2: false,
      isSecurity: true,
      securityCheckApplyvisible: false,
      excelForm1: {},
      excelOption1: {
        submitBtn: false,
@@ -747,7 +908,89 @@
        },
      },
      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, //搜索是否收缩
        height: "auto",
        calcHeight: 80,
        tip: true,
@@ -768,11 +1011,11 @@
        searchMenuSpan: 6,
        stripe: true,
        border: true,
        delBtn: true,
        // delBtn: true,
        align: "center",
        index: true,
        delBtnText: "注销",
        menuWidth: 280,
        // delBtnText: "注销",
        menuWidth: 90,
        selection: true,
        viewBtn: true,
        defaultExpandAll: true,
@@ -780,6 +1023,8 @@
        dialogClickModal: false,
        column: securityFormPageColumn,
        ...this.$store.state.control.clearOtherBut,
        // addBtn: false,
        editBtn: false,
        group: [
          {
            label: "基础信息",
@@ -916,10 +1161,10 @@
                },
                canvasOption: {
                  text: " ",
                  ratio: 0.1,
                  ratio: 1.0,
                },
                action: "/api/blade-resource/oss/endpoint/put-files",
                tip: "上传身份证一寸近期彩色正面免冠图象, (358像素(宽) × 441像素(高)、分辨率350dpi)且不超过500kb",
                tip: "上传近期一寸彩色正面免冠图象, (358像素(宽) × 441像素(高)、分辨率350dpi)且不小于30kb,不超过500kb",
                span: 12,
                // row: true,
                prop: "avatar",
@@ -963,11 +1208,6 @@
              {
                label: "是否持证",
                prop: "hold",
                // dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
                // props: {
                //   label: "dictValue",
                //   value: "dictKey",
                // },
                type: "select",
                dicData: [
                  {
@@ -986,7 +1226,7 @@
                rules: [
                  {
                    required: true,
                    message: "请选择",
                    message: "请选择是否有持证",
                    trigger: "blur",
                  },
                ],
@@ -995,22 +1235,32 @@
                label: "保安员证编号",
                prop: "securitynumber",
                hide: true,
                display: true,
                rules: [
                  {
                    required: false,
                    message: "请输入保安员证编号",
                    trigger: "blur",
                  },
                ],
              },
              // {
              //   label: "发证日期",
              //   prop: "paperTime",
              //   hide: true,
              //   type: "date",
              //   format: "yyyy-MM-dd",
              //   valueFormat: "yyyy-MM-dd",
              // },
              {
                label: "电子邮箱",
                prop: "email",
              },
              // {
              //     label: "籍贯",
              //     prop: "nativeplace",
              //   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: "民族",
@@ -1254,6 +1504,8 @@
          },
        ],
      },
      tablevisible: true,
      onceTableChange: 1,
    };
  },
  watch: {
@@ -1275,28 +1527,69 @@
        this.initData(this.form.tenantId);
      }
    },
    "form.deptId": {
      handler(val) {
        if (val) {
          window.deptIdss = val;
        }
      },
      immediate: true,
    },
    "form.hold": {
      handler(val) {
        var securitynumbercolumn = this.findObject(
          this.option.group,
          "securitynumber"
        );
        // var emailcolumn = this.findObject(this.option.group, "email");
        console.log(val,1234);
        if (val == 1) {
          securitynumbercolumn.display = true;
          securitynumbercolumn.rules = [
            {
              required: true,
              message: "请输入保安员证编号",
              trigger: "blur",
            },
          ];
          // emailcolumn.display = true;
        } else {
          securitynumbercolumn.display = false;
          securitynumbercolumn.rules = [
            {
              required: false,
              message: "请输入保安员证编号",
              trigger: "blur",
            },
          ];
          // emailcolumn.display = false;
        }
      },
      immediate: true,
    },
    "form.fingerprint"() {
      let that = this;
      if (this.form.fingerprint != undefined) {
        that.isopen = true;
        let isoks = false;
        function sets(state, fingerprint, myPicture) {
        function sets(state, dom, fingerprint, myPicture) {
          isoks = state;
          var winzhiwen = document.getElementById("zhiwen").contentWindow;
          winzhiwen.setZhiwenData({
            imgBMP: fingerprint,
            // imgBMP: imgBMP,
            // CID_img_raw: CID_img_raw,
            featuredatas: myPicture,
            isoks: isoks,
          });
          dom.onload = function () {
            // var winzhiwen = document.getElementById("zhiwen").contentWindow;
            var winzhiwen = dom.contentWindow;
            winzhiwen.setZhiwenData({
              imgBMP: fingerprint,
              // imgBMP: imgBMP,
              // CID_img_raw: CID_img_raw,
              featuredatas: myPicture,
              isoks: isoks,
            });
          };
        }
        setTimeout(() => {
          // if()
        var doZhiwen = (dom) => {
          if (!this.form.id) {
            sets(false);
            sets(false, dom);
            return;
          }
          // return;
@@ -1309,13 +1602,27 @@
                data.myPicture != "" &&
                data.myPicture != undefined
              ) {
                sets(true, data.fingerprint, data.myPicture);
                sets(true, dom, data.fingerprint, data.myPicture);
              } else {
                sets(false);
                sets(false, dom);
              }
            }
          });
        }, 1800);
        };
        // setTimeout(() => {
        // var iframeDom = document.getElementById("zhiwen");
        //   console.log(iframeDom,111111);
        //   iframeDom.onload = function () {
        //     doZhiwen();
        //   };
        //   doZhiwen();
        // }, 2800);
        //判断是否加载完成指纹dom
        that.checkDom("", (dom) => {
          // console.log(dom);
          doZhiwen(dom);
        });
      } else {
        that.isopen = false;
      }
@@ -1331,12 +1638,19 @@
    },
  },
  computed: {
    ...mapGetters(["userInfo", "permission"]),
    ...mapGetters([
      "userInfo",
      "permission",
      "windowHeight",
      "windowWidth",
      "screenSize",
      "screenHeight",
    ]),
    permissionList() {
      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),
      };
    },
@@ -1362,7 +1676,6 @@
  beforeCreate() {},
  created() {
    var that = this;
    // console.log(this.userInfo, 9999);
    if (this.userInfo.role_name == "办证管理员") {
      this.search["userType"] = 7;
      this.search["hold"] = "1";
@@ -1383,7 +1696,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=" +
@@ -1419,6 +1736,11 @@
    }
  },
  mounted() {
    // console.log(this.screenSize, "screenSize");
    this.option.height = this.screenHeight;
    this.$store.commit("setWindowSizeHeightAdd");
    // this.$store.dispatch("MOUNTED_TABLE_SIZE");
    // this.option.column[0].hide = true
    // 非保安单位模式默认加载管理组数据
    if (!website.tenantMode) {
@@ -1434,6 +1756,34 @@
    // this.olondSFZ(); //检查身份证设备是否存在
  },
  methods: {
    checkDom(name, fn) {
      //  声明定时器
      let that = this;
      var timer = null;
      //  检查dom是否执行完成
      function checkDom() {
        let dom = document.getElementById("zhiwen");
        if (dom) {
          //  执行dom加载完成后的操作
          //  清除定时器
          if (!timer) {
            clearTimeout(timer);
          }
          if (fn) {
            //回调函数
            fn(dom);
            return;
          } else {
            return dom;
          }
        } else {
          //  自我调用
          timer = setTimeout(checkDom, 100);
        }
      }
      //  首次执行
      checkDom();
    },
    openccc() {
      console.log(this.zhiwenImg);
      // console.log(this.zhiwenChart);
@@ -1623,10 +1973,18 @@
        this.userInfo.account == "南昌市保安服务总公司" ||
        this.userInfo.account == "押运分公司"
      ) {
        window.open(`/api/blade-user/export-template-securityYy`);
        window.open(
          `/api/blade-user/export-template-securityYy?${
            this.website.tokenHeader
          }=${getToken()}`
        );
        return;
      }
      window.open(`/api/blade-user/export-template-security`);
      window.open(
        `/api/blade-user/export-template-security?${
          this.website.tokenHeader
        }=${getToken()}`
      );
    },
    handleImport2() {
      this.excelBox2 = true;
@@ -1722,10 +2080,17 @@
      };
      updatePaperTime(data);
    },
    rowClickSelf(row) {
      this.$router.push({
        path: "/securityUnitChild",
        query: { fromSecunityGuardId: row },
    rowClickSelf(deptId) {
      var data = {
        departmentid: deptId,
      };
      getInformationDetails(data).then((res) => {
        var obj = res.data.data;
        var data = JSON.stringify(obj);
        this.$router.push({
          path: "/securityUnitChild",
          query: { data: data },
        });
      });
    },
    nodeClick(data) {
@@ -1789,7 +2154,7 @@
          return securityApply(data);
        })
        .then(() => {
          // this.$refs.crud.toggleSelection();
          this.$refs.crud.toggleSelection();
          this.$message({
            type: "success",
            message: "操作成功!",
@@ -1827,12 +2192,39 @@
          return securityApply(data);
        })
        .then(() => {
          // this.$refs.crud.toggleSelection();
          this.$refs.crud.toggleSelection();
          this.$message({
            type: "success",
            message: "操作成功!",
          });
        });
    },
    // 证件核实申请
    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() {
@@ -1841,12 +2233,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,
@@ -1875,7 +2261,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;
        }
@@ -2089,6 +2478,8 @@
    },
    selectionClear() {
      // this.selectionList = [];
      this.sort = "";
      this.sortName = "";
      // this.$refs.crud.toggleSelection();
    },
    handleDelete() {
@@ -2337,6 +2728,12 @@
      var that = this;
      // console.log(type, 123);
      this.beginSFZ();
      if (["edit"].includes(type)) {
        this.type = 1;
      }
      if (["add"].includes(type)) {
        this.type = 2;
      }
      if (["edit", "view"].includes(type)) {
        getUser(this.form.id).then((res) => {
          this.form = res.data.data;
@@ -2390,9 +2787,30 @@
    },
    //排序
    sortChange(value) {
      console.log(value, 51151515);
      // console.log(value, 51151515);
      if (value.order == "ascending") {
        this.sort = "asc";
      }
      if (value.order == "descending") {
        this.sort = "desc";
      }
      this.sortName = value.prop;
      //字段匹配
      if (value.prop == "sexs") {
        this.sortName = "sex";
      }
      if (value.prop == "examinationType") {
        this.sortName = "examination_type";
      }
      if (value.prop == "userType") {
        this.sortName = "user_type";
      }
      this.onLoad(this.page, this.query);
    },
    onLoad(page, params = {}) {
      if (this.isNotChangeSize) {
        this.loading = true;
      }
      params = this.search;
      var that = this;
      //获取当前登录人员的角色信息
@@ -2445,7 +2863,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");
@@ -2469,6 +2888,13 @@
              "/api/blade-system/dept/security_lazy-tree";
          }
          if (this.sort) {
            params["sort"] = this.sort;
          }
          if (this.sortName) {
            params["sortName"] = this.sortName;
          }
          let values = {
            ...params,
          };
@@ -2478,7 +2904,6 @@
            ...that.query,
          };
          that.loading = true;
          getList(page.currentPage, page.pageSize, values).then((res) => {
            const data = res.data.data;
            that.page.total = data.total;
@@ -2493,6 +2918,7 @@
            that.data = data.records;
            that.loading = false;
            that.selectionClear();
            that.$store.commit("setWindowSizeHeightAdd");
          });
        });
      });
@@ -2565,23 +2991,29 @@
    //照片上传拦截
    uploadBefore(file, done, loading, column) {
      //如果你想修改file文件,由于上传的file是只读文件,必须复制新的file才可以修改名字,完后赋值到done函数里,如果不修改的话直接写done()即可
      if (file.type.indexOf("image/") == -1) {
        MessageBox.alert("上传图片格式错误,请上传图片类型,如:JPG,PNG后缀的文件。")
        loading();
        return false;
      }
      let data = window.URL.createObjectURL(new Blob([file]));
      this.filename = file;
      this.option.img = data;
      //判断文件大小
      const isLt1M = file.size >= 30*1024 && file.size <= 500*1024;
      if (!isLt1M) {
        MessageBox.alert("上传图片大小必须大于30KB,且小于500KB!")
        loading();
        return false;
      //判断角色
      if (this.userInfo.role_name != "administrator") {
        if (file.type.indexOf("image/") == -1) {
          MessageBox.alert(
            "上传图片格式错误,请上传图片类型,如:JPG,PNG后缀的文件。"
          );
          loading();
          return false;
        }
        let data = window.URL.createObjectURL(new Blob([file]));
        this.filename = file;
        this.option.img = data;
        //判断文件大小
        const isLt1M = file.size >= 30 * 1024 && file.size <= 500 * 1024;
        if (!isLt1M) {
          MessageBox.alert("上传图片大小必须大于30KB,且小于500KB!");
          loading();
          return false;
        }
        done();
        return isLt1M;
      }
      done();
      return isLt1M;
    },
  },
};
@@ -2834,7 +3266,7 @@
.downSFZqudong {
  position: absolute;
  right: 239px;
  top: 153px;
  top: 93px;
  font-size: 14px;
  a {
    text-decoration: underline;