保安服务企业管理项目备份
zhongrj
2023-06-25 0caae4016eb87ea3a5d5ee472c1ddd22c38fe0c9
晋城保安系统
26 files modified
22 files deleted
24948 ■■■■ changed files
.eslintrc.js 17 ●●●●● patch | view | raw | blame | history
package-lock.json 23312 ●●●● patch | view | raw | blame | history
package.json 16 ●●●● patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/mapboxStreets.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/mapboxTerrain.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/naturalEarthII.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/openStreetMap.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/sentinel-2.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/stamenToner.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/ImageryProviders/stamenWatercolor.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/TimelineIcons.png patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/compass.s3m patch | view | raw | blame | history
public/libs/Cesium/Widgets/Images/info-loading.gif patch | view | raw | blame | history
public/libs/Cesium/Widgets/lighter.css 7 ●●●●● patch | view | raw | blame | history
public/libs/Cesium/Widgets/lighterShared.css 52 ●●●●● patch | view | raw | blame | history
public/libs/Cesium/Widgets/shared.css 116 ●●●●● patch | view | raw | blame | history
public/libs/Cesium/Widgets/widgets.css 18 ●●●●● patch | view | raw | blame | history
public/libs/jquery-1.12.4.min.js 74 ●●●●● patch | view | raw | blame | history
public/libs/jsWebControl-1.0.0.min.js 36 ●●●●● patch | view | raw | blame | history
public/libs/jsencrypt.min.js 1 ●●●● patch | view | raw | blame | history
public/libs/webs.exe patch | view | raw | blame | history
public/papers.html 227 ●●●●● patch | view | raw | blame | history
public/papersApply.html 176 ●●●●● patch | view | raw | blame | history
public/papersTrain.html 223 ●●●●● patch | view | raw | blame | history
public/securityInfo copy.html 4 ●●●● patch | view | raw | blame | history
public/securityInfo.html 4 ●●●● patch | view | raw | blame | history
public/securityInfos1.html 2 ●●● patch | view | raw | blame | history
public/securityPrint.html 4 ●●●● patch | view | raw | blame | history
src/api/examapi/performance.js 10 ●●●●● patch | view | raw | blame | history
src/views/accreditationRecords/accreditationRecordsPaper.vue 2 ●●● patch | view | raw | blame | history
src/views/licenseApproval/securityGuard.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/securityPermit.vue 4 ●●●● patch | view | raw | blame | history
src/views/licenseApproval/securityTraining.vue 4 ●●●● patch | view | raw | blame | history
src/views/onSiteInspection/company.js 20 ●●●● patch | view | raw | blame | history
src/views/onSiteInspection/securityStaffdata.js 10 ●●●● patch | view | raw | blame | history
src/views/securityGuard/baoanz.vue 2 ●●● patch | view | raw | blame | history
src/views/securityGuard/data.js 32 ●●●● patch | view | raw | blame | history
src/views/securityGuard/securityGuard.vue 63 ●●●● patch | view | raw | blame | history
src/views/securityGuard/securityGuardDetail.vue 2 ●●● patch | view | raw | blame | history
src/views/securityGuard/securityGuard指纹自动识别(集成VUE报错)-9.vue 2 ●●● patch | view | raw | blame | history
src/views/securityMan/index.vue 2 ●●● patch | view | raw | blame | history
src/views/statisticalQueryManagement/businessStatisticsDetail.vue 2 ●●● patch | view | raw | blame | history
src/views/trainApply/index.vue 22 ●●●●● patch | view | raw | blame | history
src/views/trainExam/performance.vue 372 ●●●●● patch | view | raw | blame | history
src/views/trainExam/singleperformance.vue 91 ●●●● patch | view | raw | blame | history
src/views/traincompany/index.vue 2 ●●● patch | view | raw | blame | history
src/views/trainingRegistration/data.js 6 ●●●● patch | view | raw | blame | history
vue.config.js 7 ●●●●● patch | view | raw | blame | history
.eslintrc.js
File was deleted
package-lock.json
Diff too large
package.json
@@ -14,7 +14,7 @@
    "avue-plugin-ueditor": "^0.1.4",
    "axios": "^0.18.0",
    "babel-polyfill": "^6.26.0",
    "cesium": "^1.64.0",
    "cesium": "1.64.0",
    "classlist-polyfill": "^1.2.0",
    "crypto-js": "^4.0.0",
    "element-ui": "^2.15.1",
@@ -56,5 +56,17 @@
      "vue-cli-service lint",
      "git add"
    ]
  }
  },
  "description": "src\\components\\map\\Draw.js 中 import GeometryType from \"ol/geom/GeometryType.js\"; 已弃用,下载的时候会下载不到",
  "main": ".postcssrc.js",
  "directories": {
    "test": "test"
  },
  "repository": {
    "type": "git",
    "url": "http://192.168.0.105:10010/r/zhba_enterprises_bf.git"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}
public/libs/Cesium/Widgets/Images/ImageryProviders/mapboxStreets.png
Binary files differ
public/libs/Cesium/Widgets/Images/ImageryProviders/mapboxTerrain.png
Binary files differ
public/libs/Cesium/Widgets/Images/ImageryProviders/naturalEarthII.png
Binary files differ
public/libs/Cesium/Widgets/Images/ImageryProviders/openStreetMap.png
Binary files differ
public/libs/Cesium/Widgets/Images/ImageryProviders/sentinel-2.png
Binary files differ
public/libs/Cesium/Widgets/Images/ImageryProviders/stamenToner.png
Binary files differ
public/libs/Cesium/Widgets/Images/ImageryProviders/stamenWatercolor.png
Binary files differ
public/libs/Cesium/Widgets/Images/TimelineIcons.png
Binary files differ
public/libs/Cesium/Widgets/Images/compass.s3m
Binary files differ
public/libs/Cesium/Widgets/Images/info-loading.gif
Binary files differ
public/libs/Cesium/Widgets/lighter.css
File was deleted
public/libs/Cesium/Widgets/lighterShared.css
File was deleted
public/libs/Cesium/Widgets/shared.css
File was deleted
public/libs/Cesium/Widgets/widgets.css
File was deleted
public/libs/jquery-1.12.4.min.js
File was deleted
public/libs/jsWebControl-1.0.0.min.js
File was deleted
public/libs/jsencrypt.min.js
File was deleted
public/libs/webs.exe
Binary files differ
public/papers.html
File was deleted
public/papersApply.html
File was deleted
public/papersTrain.html
File was deleted
public/securityInfo copy.html
@@ -129,7 +129,7 @@
            </div>
            <div class="row-content">
                <span class="title">公司名称</span>
                <span>&nbsp;&nbsp;&nbsp;&nbsp;南昌市保安服务公司</span>
                <span>&nbsp;&nbsp;&nbsp;&nbsp;晋城市保安服务公司</span>
            </div>
        </div> -->
    </div>
@@ -154,7 +154,7 @@
            //计算发证机关
            var fzjg = "";
            if (data.securitynumber.indexOf("赣") != -1) {
                fzjg = "南昌市公安局"
                fzjg = "晋城市公安局"
            }
            var str = `<div class="top">
            <div class="avatar">
public/securityInfo.html
@@ -156,7 +156,7 @@
            </div>
            <div class="row-content">
                <span class="title">公司名称</span>
                <span>&nbsp;&nbsp;&nbsp;&nbsp;南昌市保安服务公司</span>
                <span>&nbsp;&nbsp;&nbsp;&nbsp;晋城市保安服务公司</span>
            </div>
        </div> -->
    </div>
@@ -181,7 +181,7 @@
            //计算发证机关
            var fzjg = "";
            if (data.securitynumber.indexOf("赣") != -1) {
                fzjg = "南昌市公安局"
                fzjg = "晋城市公安局"
            }
            var classRed = ""
public/securityInfos1.html
@@ -109,7 +109,7 @@
            </div>
            <div class="row-content">
                <span class="title">公司名称</span>
                <span>&nbsp;&nbsp;&nbsp;&nbsp;南昌市保安服务公司</span>
                <span>&nbsp;&nbsp;&nbsp;&nbsp;晋城市保安服务公司</span>
            </div>
            <div class="row-content">
                <span class="title">性别</span>
public/securityPrint.html
@@ -193,7 +193,7 @@
                <div class="table-down">
                    <div class="paper-unit">
                        <span>发证机关:</span>
                        <span>南昌市公安局</span>
                        <span>晋城市公安局</span>
                    </div>
                    <div class="paper-date">
                        <span>发证日期:</span>
@@ -250,7 +250,7 @@
                        </div>
                        <div class="security-info">
                            <span>发证机关:</span>
                            <span>&nbsp;南昌市公安局</span>
                            <span>&nbsp;晋城市公安局</span>
                        </div>
                        <div class="security-info">
                            <span>发证日期:</span>
src/api/examapi/performance.js
@@ -20,6 +20,16 @@
    })
}
export const remove = (ids) => {
    return request({
        url: '/api/examScore/remove',
        method: 'post',
        params: {
            ids,
        }
    })
}
export const updateAbsent = (row) => {
    return request({
        url: '/api/examScore/updateAbsent',
src/views/accreditationRecords/accreditationRecordsPaper.vue
@@ -173,7 +173,7 @@
          <div class="security_m_l_titleName widt">
            {{ certificateObj.realName }}
          </div>
          <div class="security_m_r_o_jg widt">南昌市公安局</div>
          <div class="security_m_r_o_jg widt">晋城市公安局</div>
          <div class="security_m_l_titlepaperTimenian widt">
            {{ certificateYear }}
          </div>
src/views/licenseApproval/securityGuard.vue
@@ -184,14 +184,14 @@
        >
          <h3>回执单</h3>
          <p>
            南昌市公安局已收到
            晋城市公安局已收到
            <span>{{ rowData == null ? "" : rowData.enterprisename }}</span>
            的相关备案申请!
          </p>
          <div class="examine-bottom">
            <ul>
              <li>审批单位:<span>南昌市公安局</span></li>
              <li>审批单位:<span>晋城市公安局</span></li>
              <li>
                日期:<span>{{
                  rowData == null ? "" : rowData.examinetime
src/views/licenseApproval/securityPermit.vue
@@ -110,7 +110,7 @@
              <span class="l-m-r-once">{{ item }}</span>
            </div>
          </div>
          <div class="licence-bottom">发证机关(南昌市公安局)</div>
          <div class="licence-bottom">发证机关(晋城市公安局)</div>
          <div class="l-bottom">
            发证日期
            <span class="l-b-t">{{
@@ -162,7 +162,7 @@
              <span class="l-m-r-once">{{ item }}</span>
            </div>
          </div>
          <div class="licence-bottom">发证机关(南昌市公安局)</div>
          <div class="licence-bottom">发证机关(晋城市公安局)</div>
          <div class="l-bottom">
            发证日期
            <span class="l-b-t">{{
src/views/licenseApproval/securityTraining.vue
@@ -110,7 +110,7 @@
              <span class="l-m-r-once">{{ item }}</span>
            </div>
          </div>
          <div class="licence-bottom">发证机关(南昌市公安局)</div>
          <div class="licence-bottom">发证机关(晋城市公安局)</div>
          <div class="l-bottom">
            发证日期
            <span class="l-b-t">{{
@@ -162,7 +162,7 @@
              <span class="l-m-r-once">{{ item }}</span>
            </div>
          </div>
          <div class="licence-bottom">发证机关(南昌市公安局)</div>
          <div class="licence-bottom">发证机关(晋城市公安局)</div>
          <div class="l-bottom">
            发证日期
            <span class="l-b-t">{{
src/views/onSiteInspection/company.js
@@ -32,7 +32,7 @@
            "tenantName": "平台运维",
            "userTypeName": "用户平台",
            "roleName": "群防群控队伍,普通群众",
            "deptName": "南昌市公安局,高新技术开发区分局,瑶湖派出所",
            "deptName": "晋城市公安局,高新技术开发区分局,瑶湖派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -68,7 +68,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,经济技术开发区分局,蛟桥派出所",
            "deptName": "晋城市公安局,经济技术开发区分局,蛟桥派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -104,7 +104,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,西湖分局,桃花派出所",
            "deptName": "晋城市公安局,西湖分局,桃花派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -140,7 +140,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,红谷滩分局,九龙湖派出所",
            "deptName": "晋城市公安局,红谷滩分局,九龙湖派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -176,7 +176,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,红谷滩分局,九龙湖派出所",
            "deptName": "晋城市公安局,红谷滩分局,九龙湖派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -212,7 +212,7 @@
            "tenantName": "平台运维",
            "userTypeName": "WEB",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,高新技术开发区分局,高新派出所",
            "deptName": "晋城市公安局,高新技术开发区分局,高新派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -248,7 +248,7 @@
            "tenantName": "平台运维",
            "userTypeName": "WEB",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,高新技术开发区分局,高新派出所",
            "deptName": "晋城市公安局,高新技术开发区分局,高新派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -284,7 +284,7 @@
            "tenantName": "平台运维",
            "userTypeName": "WEB",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,高新技术开发区分局,高新派出所",
            "deptName": "晋城市公安局,高新技术开发区分局,高新派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -320,7 +320,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,经济技术开发区分局,冠山派出所",
            "deptName": "晋城市公安局,经济技术开发区分局,冠山派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -356,7 +356,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,西湖分局,广润门派出所",
            "deptName": "晋城市公安局,西湖分局,广润门派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
src/views/onSiteInspection/securityStaffdata.js
@@ -32,7 +32,7 @@
            "tenantName": "平台运维",
            "userTypeName": "用户平台",
            "roleName": "群防群控队伍,普通群众",
            "deptName": "南昌市公安局,高新技术开发区分局,瑶湖派出所",
            "deptName": "晋城市公安局,高新技术开发区分局,瑶湖派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -68,7 +68,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,经济技术开发区分局,蛟桥派出所",
            "deptName": "晋城市公安局,经济技术开发区分局,蛟桥派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -104,7 +104,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,西湖分局,桃花派出所",
            "deptName": "晋城市公安局,西湖分局,桃花派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -140,7 +140,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,红谷滩分局,九龙湖派出所",
            "deptName": "晋城市公安局,红谷滩分局,九龙湖派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
@@ -176,7 +176,7 @@
            "tenantName": "平台运维",
            "userTypeName": "",
            "roleName": "群防群控队伍",
            "deptName": "南昌市公安局,红谷滩分局,九龙湖派出所",
            "deptName": "晋城市公安局,红谷滩分局,九龙湖派出所",
            "postName": "",
            "sexName": "男",
            "userExt": "",
src/views/securityGuard/baoanz.vue
@@ -22,7 +22,7 @@
                {{ data.securitynumber }}
            </div>
            <div class="b-m-ups-1 b-m-ups-2">
                <!-- {{ data.securitynumber }} -->南昌市公安局
                <!-- {{ data.securitynumber }} -->晋城市公安局
            </div>
            <div class="b-m-ups-1 b-m-ups-2">
                {{ data.paperTime || "---" }}
src/views/securityGuard/data.js
@@ -502,17 +502,35 @@
    searchLabelWidth: 50,
    display: false
  },
  // {
  //   label: "企业名称",
  //   searchLabelWidth: 75,
  //   // prop: "deptName",
  //   prop: "deptId",
  //   type: "tree",
  //   // dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
  //   props: {
  //     label: "title",
  //     value: "id"
  //   },
  //   // hide: true,
  //   slot: true,
  //   searchSpan: 5,
  //   display: false,
  //   search: true,
  //   minWidth: 160
  // },
  {
    label: "企业名称",
    label: "从业单位",
    searchLabelWidth: 75,
    // prop: "deptName",
    prop: "deptId",
    type: "tree",
    prop: "unitName",
    // type: "tree",
    // dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
    props: {
      label: "title",
      value: "id"
    },
    // props: {
    //   label: "title",
    //   value: "id"
    // },
    // hide: true,
    slot: true,
    searchSpan: 5,
src/views/securityGuard/securityGuard.vue
@@ -70,6 +70,7 @@
            </el-button>
            <el-button
              type="primary"
              style="display: none;"
              size="small"
              plain
              v-if="permission.securityGuard_security_apply"
@@ -79,6 +80,7 @@
            </el-button>
            <el-button
              type="primary"
              style="display: none;"
              size="small"
              plain
              v-if="permission.securityGuard_security_paper_apply"
@@ -98,10 +100,10 @@
            <el-button
              type="danger"
              style="display: none"
              size="small"
              plain
              icon="el-icon-delete"
              v-if="permission.securityGuard_delete"
              @click="handleDelete"
              >注 销
            </el-button>
@@ -297,6 +299,10 @@
              >{{ row.deptName }}
            </el-tag>
          </template>
          <template slot-scope="{ row }" slot="unitName">
            <el-tag>{{ row.unitName }}
            </el-tag>
          </template>
          <template slot-scope="{ row }" slot="tenantName">
            <el-tag>{{ row.tenantName }}</el-tag>
          </template>
@@ -470,7 +476,7 @@
              <div class="security_m_l_titleName widt">
                {{ certificateObj.realName }}
              </div>
              <div class="security_m_r_o_jg widt">南昌市公安局</div>
              <div class="security_m_r_o_jg widt">晋城市公安局</div>
              <div class="security_m_l_titlepaperTimenian widt">
                {{ certificateYear }}
              </div>
@@ -996,17 +1002,17 @@
        tip: true,
        searchShow: true,
        reserveSelection: true,
        selectable: row => {
          if (
            row.hold !== "1" ||
            row.securitynumber == null ||
            row.securitynumber == ""
          ) {
            return false;
          } else {
            return true;
          }
        },
        // selectable: row => {
        //   if (
        //     row.hold !== "1" ||
        //     row.securitynumber == null ||
        //     row.securitynumber == ""
        //   ) {
        //     return false;
        //   } else {
        //     return true;
        //   }
        // },
        indexWidth: 55,
        searchMenuSpan: 6,
        stripe: true,
@@ -1284,14 +1290,14 @@
                label: "政治面貌",
                prop: "politicaloutlook"
              },
              {
                label: "健康状态",
                prop: "healstats"
              },
              {
                label: "身高",
                prop: "height"
              },
              // {
              //   label: "健康状态",
              //   prop: "healstats"
              // },
              // {
              //   label: "身高",
              //   prop: "height"
              // },
              {
                label: "联系地址",
                prop: "address"
@@ -1328,15 +1334,12 @@
                ]
              },
              {
                label: "入职时间",
                prop: "rtime",
                type: "date",
                format: "yyyy-MM-dd",
                valueFormat: "yyyy-MM-dd",
                label: "从业单位",
                prop: "unitName",
                rules: [
                  {
                    required: true,
                    message: "请输入入职时间",
                    message: "请输入从业单位",
                    trigger: "click"
                  }
                ]
@@ -1717,7 +1720,7 @@
    // });
    if (
      this.userInfo.account == "南昌市保安服务总公司" ||
      this.userInfo.account == "晋城市保安服务总公司" ||
      this.userInfo.account == "押运分公司"
    ) {
      this.option.column.push({
@@ -1972,7 +1975,7 @@
    },
    handleTemplate1() {
      if (
        this.userInfo.account == "南昌市保安服务总公司" ||
        this.userInfo.account == "晋城市保安服务总公司" ||
        this.userInfo.account == "押运分公司"
      ) {
        window.open(
@@ -2510,7 +2513,7 @@
      done();
    },
    selectionChange(list) {
      // this.selectionList = list;
      this.selectionList = list;
      this.choiceList = [];
      for (let k in list) {
        this.choiceList.push({
src/views/securityGuard/securityGuardDetail.vue
@@ -58,7 +58,7 @@
              编号:<span class="bmb-b-s">{{ obj0.securitynumber }}</span>
            </div>
            <div class="bmb-b">
              发证机关:<span class="bmb-b-s">南昌市公安局</span>
              发证机关:<span class="bmb-b-s">晋城市公安局</span>
            </div>
            <div class="bmb-b">
              发证日期:<span class="bmb-b-s">{{
src/views/securityGuard/securityGuard指纹自动识别(集成VUE报错)-9.vue
@@ -324,7 +324,7 @@
              <div class="security_m_l_titleName widt">
                {{ certificateObj.realName }}
              </div>
              <div class="security_m_r_o_jg widt">南昌市公安局</div>
              <div class="security_m_r_o_jg widt">晋城市公安局</div>
              <div class="security_m_l_titlepaperTimenian widt">
                {{ certificateYear }}
              </div>
src/views/securityMan/index.vue
@@ -55,7 +55,7 @@
              编号:<span class="bmb-b-s">{{ obj0.securitynumber }}</span>
            </div>
            <div class="bmb-b">
              发证机关:<span class="bmb-b-s">南昌市公安局</span>
              发证机关:<span class="bmb-b-s">晋城市公安局</span>
            </div>
            <div class="bmb-b">
              发证日期:<span class="bmb-b-s">{{
src/views/statisticalQueryManagement/businessStatisticsDetail.vue
@@ -144,7 +144,7 @@
      subofficeOptions: [
        {
          value: "0",
          label: "南昌市公安局"
          label: "晋城市公安局"
        },
        {
          value: "2",
src/views/trainApply/index.vue
@@ -286,11 +286,10 @@
            overHidden: true,
          },
          {
            label: "所属企业",
            prop: "deptName",
            label: "从业单位",
            prop: "unitName",
            search: true,
            searchSpan: 5,
            slot: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -409,23 +408,6 @@
              },
            ],
          },
          // {
          //     label: "试卷分数",
          //     prop: "paperScore",
          //     slot: true,
          //     // 表单新增时是否禁止
          //     addDisabled: false,
          //     // 表单新增时是否可见
          //     addDisplay: false,
          //     // 表单新增时是否为查看模式
          //     addDetail: false,
          //     // 表单编辑时是否禁止
          //     editDisabled: true,
          //     // 表单编辑时是否可见
          //     editDisplay: true,
          //     // 表单编辑时是否为查看模式
          //     editDetail: false
          // },
          {
            label: "报名时间",
            prop: "trainingTime",
src/views/trainExam/performance.vue
@@ -1,53 +1,37 @@
/* * @Author: Morpheus * @Date: 2021-07-05 16:31:54 * @Last Modified by: liu *
@Last Modified time: 2021-11-27 10:20:19 * menu-name 成绩管理 */
<template>
  <basic-container
    :class="[
      'exam-card-body',
      $store.state.control.screenSize == 1366 ? 'smallSize' : 'normalSize',
      $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : ''
    ]"
  >
    <avue-crud
      v-model="obj"
      class="company-box tablesss"
      :option="questionBankOption"
      :search.sync="questionBankSearch"
      :table-loading="questionBankLoading"
      :data="questionBankData"
      :permission="permissionList"
      ref="questionBankCrud"
      :page.sync="questionBankPage"
      @sort-change="sortChange"
      @on-load="questionBankOnLoad"
      @selection-change="questionBankSelectionChange"
      @search-change="questionBankSearchChange"
      @search-reset="questionBankSearchReset"
      @current-change="questionBankCurrentChange"
      @size-change="questionBankSizeChange"
      @row-update="questionBankRowUpdate"
      @refresh-change="refreshChange"
    >
  <basic-container :class="[
    'exam-card-body',
    $store.state.control.screenSize == 1366 ? 'smallSize' : 'normalSize',
    $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : ''
  ]">
    <avue-crud v-model="obj" class="company-box tablesss" :option="questionBankOption" :search.sync="questionBankSearch"
      :table-loading="questionBankLoading" :data="questionBankData" :permission="permissionList" ref="questionBankCrud"
      :page.sync="questionBankPage" @sort-change="sortChange" @on-load="questionBankOnLoad"
      @selection-change="questionBankSelectionChange" @search-change="questionBankSearchChange"
      @search-reset="questionBankSearchReset" @current-change="questionBankCurrentChange"
      @size-change="questionBankSizeChange" @row-update="questionBankRowUpdate" @refresh-change="refreshChange">
      <template slot-scope="{ row }" slot="theoryGrade">
        {{ row.theoryGrade }}
      </template>
      <template slot-scope="{ row }" slot="learnGrade">
        {{ row.learnGrade == "" ? "暂未录入" : row.learnGrade }}
      </template>
      <!-- <template slot-scope="{ row }" slot="learnGrade">
         {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade==0?'合格':'不合格'}}
      </template> -->
      <template slot-scope="{ row }" slot="allGrade">
        {{ row.allGrade == -1 ? "" : row.allGrade }}
      </template>
      <template slot-scope="{ row }" slot="qualified">
        {{
          row.qualified == ""
            ? ""
            : row.qualified == 0
          ? ""
          : row.qualified == 0
            ? "合格"
            : row.qualified == 1
            ? "不合格"
            : row.qualified == 3
            ? "缺考,成绩无效"
            : ""
              ? "不合格"
              : row.qualified == 3
                ? "缺考,成绩无效"
                : ""
        }}
      </template>
@@ -65,90 +49,36 @@
                                       plain
                                       @click="handleDelete">删除
                            </el-button> -->
        <el-button
          type="success"
          size="small"
          plain
          icon="el-icon-upload2"
          v-if="permission.trainExam_performance_import"
          @click="handleImport"
          >实操成绩导入
        <el-button type="success" size="small" plain icon="el-icon-upload2" v-if="permission.trainExam_performance_import"
          @click="handleImport">实操成绩导入
        </el-button>
        <el-button
          type="warning"
          size="small"
          plain
          icon="el-icon-download"
          v-if="permission.trainExam_performance_export"
          @click="handleExport"
          >成绩导出
        <el-button type="warning" size="small" plain icon="el-icon-download"
          v-if="permission.trainExam_performance_export" @click="handleExport">成绩导出
        </el-button>
        <el-button
          type="primary"
          size="small"
          plain
          v-if="permission.trainExam_performance_paper_apply"
          icon="el-icon-collection-tag"
          @click="handleSecurityPaperApply"
          >证书制证申请
        <el-button type="danger" size="small" plain icon="el-icon-delete" v-if="permission.trainExam_performance_delete"
          @click="handleDelete">删 除
        </el-button>
        <el-button
          type="primary"
          size="small"
          plain
          v-if="permission.trainExam_performance_worker_paper_apply"
          icon="el-icon-collection-tag"
          @click="handleWorkerPaperApply"
          >上岗证制证申请
        <el-button type="primary" size="small" plain v-if="permission.trainExam_performance_paper_apply"
          style="display: none;" icon="el-icon-collection-tag" @click="handleSecurityPaperApply">证书制证申请
        </el-button>
        <el-button type="primary" size="small" plain v-if="permission.trainExam_performance_worker_paper_apply"
          style="display: none;" icon="el-icon-collection-tag" @click="handleWorkerPaperApply">上岗证制证申请
        </el-button>
      </template>
      <template slot-scope="{ type, size, row }" slot="menu">
        <el-button
          style="display: none"
          icon="el-icon-s-flag"
          @click="absent(row)"
          :size="size"
          :type="type"
          >缺考标记</el-button
        >
        <el-button
          icon="el-icon-s-promotion"
          @click="openzhengjian(row)"
          :disabled="row.qualified != 0"
          :size="size"
          :type="type"
          >查看证件</el-button
        >
        <el-button
          icon="el-icon-edit"
          @click="modifiedGrades(row)"
          :size="size"
          :type="type"
          >申请修改成绩</el-button
        >
        <el-button
          icon="el-icon-edit"
          v-if="row.isPaper == 6"
          @click="securityPaperApply(row)"
          :size="size"
          :type="type"
          >补证申请</el-button
        >
        <el-button style="display: none" icon="el-icon-s-flag" @click="absent(row)" :size="size"
          :type="type">缺考标记</el-button>
        <el-button icon="el-icon-s-promotion" @click="openzhengjian(row)" :disabled="row.qualified != 0" :size="size"
          :type="type">查看证件</el-button>
        <el-button icon="el-icon-edit" @click="modifiedGrades(row)" :size="size" :type="type">申请修改成绩</el-button>
        <el-button icon="el-icon-edit" v-if="row.isPaper == 6" @click="securityPaperApply(row)" :size="size"
          :type="type">补证申请</el-button>
      </template>
    </avue-crud>
    <el-dialog
      title="实操成绩导入"
      append-to-body
      :visible.sync="excelBox"
      width="555px"
    >
      <avue-form
        :option="excelOption"
        v-model="excelForm"
        :upload-after="uploadAfter"
      >
    <el-dialog title="实操成绩导入" append-to-body :visible.sync="excelBox" width="555px">
      <avue-form :option="excelOption" v-model="excelForm" :upload-after="uploadAfter">
        <template slot="excelTemplate">
          <el-button type="primary" @click="handleTemplate">
            点击下载<i class="el-icon-download el-icon--right"></i>
@@ -157,17 +87,9 @@
      </avue-form>
    </el-dialog>
    <el-dialog
      title="申请修改成绩"
      :visible.sync="gradeBoxVisible"
      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"
    >
    <el-dialog title="申请修改成绩" :visible.sync="gradeBoxVisible" 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>
        <!-- <el-form
          ref="gradeForm"
@@ -303,13 +225,7 @@
            <el-button @click="gradeBoxVisible = false">取 消</el-button>
          </el-form-item>
        </el-form> -->
        <avue-form
          ref="form"
          :option="option"
          v-model="form"
          @reset-change="emptytChange"
          @submit="submit"
        >
        <avue-form ref="form" :option="option" v-model="form" @reset-change="emptytChange" @submit="submit">
        </avue-form>
      </div>
    </el-dialog>
@@ -320,12 +236,7 @@
      :modal-append-to-body="false"
    > -->
    <div class="dialogVisiblezhengjian" v-if="dialogVisiblezhengjian">
      <baoanz
        :data="baoanzdata"
        :close="1"
        @close="closezhengjian"
        :closePrint="1"
      ></baoanz>
      <baoanz :data="baoanzdata" :close="1" @close="closezhengjian" :closePrint="1"></baoanz>
    </div>
  </basic-container>
</template>
@@ -337,6 +248,7 @@
  update,
  updateAbsent,
  updateGrade,
  remove,
  getNowDate
} from "@/api/examapi/performance";
import { mapGetters } from "vuex";
@@ -482,6 +394,7 @@
            label: "实操成绩",
            prop: "learnGrade",
            labelWidth: 110,
            type: "select",
            disabled: true,
            rules: [
              {
@@ -489,21 +402,35 @@
                message: "请输入实操成绩",
                trigger: "blur"
              }
            ]
          },
          {
            label: "总成绩",
            prop: "allGrade",
            labelWidth: 110,
            disabled: true,
            rules: [
            ],
            dicData: [
              {
                required: false,
                message: "请输入总成绩",
                trigger: "blur"
                label: "合格",
                value: 0
              },
              {
                label: "不合格",
                value: 1
              },
              {
                label: "暂未录实操成绩",
                value: 2
              }
            ]
            ],
          },
          // {
          //   label: "总成绩",
          //   prop: "allGrade",
          //   labelWidth: 110,
          //   disabled: true,
          //   rules: [
          //     {
          //       required: false,
          //       message: "请输入总成绩",
          //       trigger: "blur"
          //     }
          //   ]
          // },
          {
            label: "笔试答题图片",
            prop: "url",
@@ -571,7 +498,7 @@
        selection: true,
        reserveSelection: true,
        selectable: row => {
          if (row.qualified != "0" || row.isPaper == 6) {
          if (row.isExam == 3) {
            return false;
          } else {
            return true;
@@ -750,17 +677,10 @@
            editDetail: false
          },
          {
            label: "所属公司",
            prop: "companyName",
            sortable: true,
            label: "从业单位",
            prop: "unitName",
            search: true,
            searchSpan: 4,
            // dicUrl: '/api/blade-system/dept/tree',
            // props: {
            //     label: "title",
            //     value: "id",
            // },
            slot: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -776,7 +696,7 @@
            rules: [
              {
                required: true,
                message: "请输入所属公司",
                message: "请输入从业单位",
                trigger: "blur"
              }
            ],
@@ -895,8 +815,9 @@
          {
            label: "实操成绩",
            prop: "learnGrade",
            slot: true,
            sortable: true,
            type: "select",
            // slot: true,
            // sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -910,29 +831,36 @@
            // 表单编辑时是否为查看模式
            editDetail: false,
            width: 95,
            rules: [
              { validator: validatePass, required: true, trigger: "blur" }
            ]
            dicData: [
              {
                label: "合格",
                value: 0
              },
              {
                label: "不合格",
                value: 1
              }
            ],
          },
          {
            label: "总成绩",
            prop: "allGrade",
            slot: true,
            sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
            addDisplay: true,
            // 表单新增时是否为查看模式
            addDetail: false,
            // 表单编辑时是否禁止
            editDisabled: true,
            // 表单编辑时是否可见
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            width: 80
          },
          // {
          //   label: "总成绩",
          //   prop: "allGrade",
          //   slot: true,
          //   sortable: true,
          //   // 表单新增时是否禁止
          //   addDisabled: false,
          //   // 表单新增时是否可见
          //   addDisplay: true,
          //   // 表单新增时是否为查看模式
          //   addDetail: false,
          //   // 表单编辑时是否禁止
          //   editDisabled: true,
          //   // 表单编辑时是否可见
          //   editDisplay: true,
          //   // 表单编辑时是否为查看模式
          //   editDetail: false,
          //   width: 80
          // },
          {
            label: "是否合格",
            prop: "qualified",
@@ -1080,6 +1008,7 @@
        ...this.$store.state.control.changePageSize
      },
      questionBankQuery: {},
      selectionList: [],
      questionBankSelectionList: [],
      excelForm: {},
      excelOption: {
@@ -1136,12 +1065,19 @@
      choiceList: []
    };
  },
  created() {},
  created() { },
  mounted() {
    this.$store.commit("setWindowSizeHeightAdd");
  },
  computed: {
    ...mapGetters(["userInfo", "permission"]),
    ids() {
      let ids = [];
      this.questionBankSelectionList.forEach(ele => {
        ids.push(ele.id);
      });
      return ids.join(",");
    },
    permissionList() {
      return {
        addBtn: this.vaildData(null, false),
@@ -1162,6 +1098,29 @@
    }
  },
  methods: {
    // 批量删除
    handleDelete() {
      if (this.questionBankSelectionList.length === 0) {
        this.$message.warning("请选择至少一条数据");
        return;
      }
      this.$confirm("确定将选择考试成绩删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning"
      })
        .then(() => {
          return remove(this.ids);
        })
        .then(() => {
          this.questionBankOnLoad(this.questionBankPage);
          this.$message({
            type: "success",
            message: "操作成功!"
          });
          this.$refs.crud.toggleSelection();
        });
    },
    //提交考试成绩修改申请
    submit(row, done, loading) {
      var that = this;
@@ -1197,9 +1156,9 @@
          name: res.data.data.name,
          url: res.data.data.url
        });
        console.log(that.gradeForm.fileList, 365441);
        // console.log(that.gradeForm.fileList, 365441);
      });
      console.log(that.gradeForm.fileList, 11122222);
      // console.log(that.gradeForm.fileList, 11122222);
    },
    //图片展示
    handlePictureCardPreview(file) {
@@ -1210,7 +1169,7 @@
    handleRemove(file) {
      var index = [];
      //遍历图片集合,获取下标
      this.gradeForm.fileList.forEach(function(img, i) {
      this.gradeForm.fileList.forEach(function (img, i) {
        if (img.name == file.name) {
          index.push(i);
          //存储对象中删除
@@ -1224,7 +1183,7 @@
      }
    },
    selectionChange(list) {
      // this.selectionList = list;
      this.selectionList = list;
      this.choiceList = [];
      for (let k in list) {
        this.choiceList.push({
@@ -1278,8 +1237,8 @@
      }
      this.$confirm(
        "共选择上岗证制证申请人数" +
          this.choiceList.length +
          "人,确定申请制证?",
        this.choiceList.length +
        "人,确定申请制证?",
        {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
@@ -1465,7 +1424,6 @@
        );
      });
    },
    // 修改考试成绩
    modifiedGrades(row) {
      var that = this;
@@ -1480,18 +1438,18 @@
        var num = 24 * 3600 * 1000;
        if (this.userInfo.role_name == "培训公司管理员") {
          // if (res.data.data - longtime <= num) {
            this.form = {
              id: null,
              examScoreId: row.id,
              examName: row.examName,
              candidateNo: row.candidateNo,
              account: row.account,
              securityName: row.securityName,
              theoryGrade: row.theoryGrade,
              learnGrade: row.learnGrade,
              allGrade: row.allGrade
            };
            this.gradeBoxVisible = true;
          this.form = {
            id: null,
            examScoreId: row.id,
            examName: row.examName,
            candidateNo: row.candidateNo,
            account: row.account,
            securityName: row.securityName,
            theoryGrade: row.theoryGrade,
            learnGrade: row.learnGrade,
            allGrade: row.allGrade
          };
          this.gradeBoxVisible = true;
          // } else {
          //   //提示
          //   that.$message({
@@ -1515,7 +1473,6 @@
        }
      });
    },
    uploadGrade(formName) {
      var that = this;
@@ -1545,7 +1502,6 @@
        }
      });
    },
    questionBankSelectionClear() {
      this.questionBankSelectionList = [];
      this.sort = "";
@@ -1553,7 +1509,7 @@
      // this.$refs.questionBankCrud.toggleSelection();
    },
    questionBankSelectionChange(list) {
      // this.questionBankSelectionList = list;
      this.questionBankSelectionList = list;
      this.choiceList = [];
      for (let k in list) {
        this.choiceList.push({
@@ -1577,7 +1533,6 @@
    questionBankSizeChange(pageSize) {
      this.questionBankPage.pageSize = pageSize;
    },
    questionBankRowUpdate(row, index, done, loading) {
      update({
        theoryGrade: row.theoryGrade,
@@ -1601,8 +1556,7 @@
    },
    handleTemplate() {
      window.open(
        `/api/examScore/export-template?${
          this.website.tokenHeader
        `/api/examScore/export-template?${this.website.tokenHeader
        }=${getToken()}&`
      );
    },
@@ -1659,8 +1613,7 @@
        //序列号url形式,用&拼接
        data = Qs.stringify(data);
        window.open(
          `/api/examScore/export-examScore?${
            this.website.tokenHeader
          `/api/examScore/export-examScore?${this.website.tokenHeader
          }=${getToken()}&` + data
        );
      });
@@ -1673,6 +1626,7 @@
.morpheus-box {
  position: relative;
}
.dialogVisiblezhengjian {
  position: absolute;
  background-color: #fff;
src/views/trainExam/singleperformance.vue
@@ -29,7 +29,7 @@
      @refresh-change="refreshChange"
    >
      <template slot-scope="{ row }" slot="learnGrade">
        {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }}
        {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade==0?'合格':'不合格'}}
      </template>
      <template slot-scope="{ row }" slot="theoryGrade">
        {{ row.theoryGrade == -1 ? "" : row.theoryGrade }}
@@ -298,17 +298,10 @@
            width: 140
          },
          {
            label: "所属公司",
            prop: "companyName",
            label: "从业单位",
            prop: "unitName",
            search: true,
            sortable: true,
            searchSpan: 4,
            // dicUrl: '/api/blade-system/dept/tree',
            // props: {
            //     label: "title",
            //     value: "id",
            // },
            slot: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -321,15 +314,15 @@
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            overHidden: true,
            rules: [
              {
                required: true,
                message: "请输入所属公司",
                message: "请输入从业单位",
                trigger: "blur"
              }
            ],
            minWidth: 230
            // width: 180,
            overHidden: true
          },
          {
            label: "考试开始时间",
@@ -443,8 +436,9 @@
          {
            label: "实操成绩",
            prop: "learnGrade",
            type: "select",
            slot: true,
            sortable: true,
            // sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -458,36 +452,47 @@
            // 表单编辑时是否为查看模式
            editDetail: false,
            width: 95,
            rules: [
              { validator: validatePass, required: true, trigger: "blur" }
            ]
          },
          {
            label: "总成绩",
            prop: "allGrade",
            slot: true,
            sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
            addDisplay: true,
            // 表单新增时是否为查看模式
            addDetail: false,
            // 表单编辑时是否禁止
            editDisabled: true,
            // 表单编辑时是否可见
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            width: 80,
            rules: [
            dicData: [
              {
                required: true,
                message: "请输入考试名称",
                trigger: "blur"
                label: "合格",
                value: 0
              },
              {
                label: "不合格",
                value: 1
              },
              {
                label: "暂未录实操成绩",
                value: 2
              }
            ]
            ],
          },
          // {
          //   label: "总成绩",
          //   prop: "allGrade",
          //   slot: true,
          //   sortable: true,
          //   // 表单新增时是否禁止
          //   addDisabled: false,
          //   // 表单新增时是否可见
          //   addDisplay: true,
          //   // 表单新增时是否为查看模式
          //   addDetail: false,
          //   // 表单编辑时是否禁止
          //   editDisabled: true,
          //   // 表单编辑时是否可见
          //   editDisplay: true,
          //   // 表单编辑时是否为查看模式
          //   editDetail: false,
          //   width: 80,
          //   rules: [
          //     {
          //       required: true,
          //       message: "请输入考试名称",
          //       trigger: "blur"
          //     }
          //   ]
          // },
          {
            label: "是否合格",
            prop: "qualified",
@@ -509,6 +514,10 @@
              {
                label: "暂未录实操成绩",
                value: 2
              },
              {
                label: "暂未录实操成绩",
                value: -1
              }
            ],
            // 表单新增时是否禁止
src/views/traincompany/index.vue
@@ -174,7 +174,7 @@
            label: "学校",
            prop: "trainingUnitId",
            dicUrl:
              "/api/blade-system/dept/lazy-tree-type?parentId=1418458374477549569",
              "/api/blade-system/dept/lazy-tree-type?parentId=1627874187458695170",
            cascaderItem: ["trainExamId"],
            props: {
              label: "title",
src/views/trainingRegistration/data.js
@@ -132,15 +132,15 @@
        }],
        overHidden: true
    }, {
        label: "企业名称",
        prop: "deptName",
        label: "从业单位",
        prop: "unitName",
        // hide: true,
        search: true,
        searchLabelWidth: 85,
        searchSpan: 5,
        rules: [{
            required: true,
            message: "请输入企业名称",
            message: "请输入从业单位",
            trigger: "blur"
        }],
vue.config.js
@@ -1,7 +1,7 @@
module.exports = {
    //路径前缀
    publicPath: "/",
    lintOnSave: true,
    lintOnSave: false,
    productionSourceMap: false,
    chainWebpack: config => {
        //忽略的打包文件
@@ -29,15 +29,14 @@
        proxy: {
            "/api": {
                // 本地服务接口地址
                target: 'http://localhost:81',
                // target: 'http://192.168.0.222:81', //自己W
                // target: 'http://localhost:81',
                // target: 'http://zhbaw.zhba:81',
                // target: 'http://192.168.0.114:81',//钟日健W
                // target: 'http://localhost:81', //原W
                // target: 'http://192.168.0.108:81',//原W
                // target: 'http://192.168.0.107:81',//唐N
                // target: 'http://61.131.136.25:81',//唐N
                // target: "http://61.131.136.25:2080/api",
                target: "http://60.220.177.113:2081/api",
                //远程演示服务地址,可用于直接启动项目
                ws: true,
                pathRewrite: {