longyvfengyun
2022-03-04 cad4dbe61583c3c7676b28589399c80e4702f770
国网送检
2个文件已添加
11个文件已修改
137 ■■■■ 已修改文件
package-lock.json 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/js/apis/login/index.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/js/apis/userMager/userInfo.js 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/js/config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/js/const/const_num.js 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/js/tools/RSA.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/login.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/pageSetting/components/menuApprove.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/userMager/addEdit.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/userMager/baojiMager.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/userMager/powerMager.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/userMager/userInfo.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package-lock.json
@@ -8232,6 +8232,11 @@
      "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
      "dev": true
    },
    "jsencrypt": {
      "version": "3.2.1",
      "resolved": "https://registry.npmjs.org/jsencrypt/-/jsencrypt-3.2.1.tgz",
      "integrity": "sha512-k1sD5QV0KPn+D8uG9AdGzTQuamt82QZ3A3l6f7TRwMU6Oi2Vg0BsL+wZIQBONcraO1pc78ExMdvmBBJ8WhNYUA=="
    },
    "jsesc": {
      "version": "2.5.2",
      "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
package.json
@@ -19,6 +19,7 @@
    "flv.js": "^1.6.1",
    "inmap": "^2.3.3",
    "js-md5": "^0.7.3",
    "jsencrypt": "^3.2.1",
    "moment": "^2.27.0",
    "pinyin-match": "^1.1.1",
    "postcss-px2rem": "^0.3.0",
src/assets/js/apis/login/index.js
@@ -1,6 +1,6 @@
import axios from 'axios'
import md5 from "js-md5";
import AES from "@/common/AES";
import RSA from "@/assets/js/tools/RSA";
export default {
    checkNetwork() {
        return axios({
@@ -31,7 +31,7 @@
        return axios({
            method: 'post',
            url: 'User_infAction!updatePassword',
            data: "uif.USnId="+ encodeURIComponent(encodeURIComponent(AES.encrypt(pwd))),
            data: "uif.USnId="+ encodeURIComponent(encodeURIComponent(RSA.encrypt(pwd))),
        });
    },
    /**
@@ -50,7 +50,7 @@
                UName: name,
                Upassword: md5(oldPwd),
                UNote: md5(newPwd),
                USnId: encodeURIComponent(encodeURIComponent(AES.encrypt(newPwd))),
                USnId: encodeURIComponent(encodeURIComponent(RSA.encrypt(newPwd))),
            }),
        });
    },
src/assets/js/apis/userMager/userInfo.js
@@ -98,7 +98,9 @@
        return axios({
            method: 'post',
            url: 'User_infAction!delete',
            data: 'upjson=' + JSON.stringify(data),
            data: 'upjson=' + JSON.stringify({
                UId: data.UId
            }),
        });
    },
src/assets/js/config.js
@@ -54,7 +54,7 @@
    messageCode: {
        label: '短信验证码',
        des: '登录是否启用短信验证码',
        value: true,
        value: false,
    },
    autoExit: {
        label: "自动退出",
src/assets/js/const/const_num.js
New file
@@ -0,0 +1,14 @@
export default {
  privateKey: "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAI+kneP5IdDr2Wqr5KF"+
    "Xt14DjRj7ytitrquvhF44n5QTt6Ty2wkmtzLXEw7VKimEl0ddfBI1tlaGclb0aUirVSboimWTAVz8C3Kh4kM/cQm1RmAjkfp"+
    "9LPQE8sUefXwLQ3HPUGvXT1TTsOpB0yxqtwGYpdhDD7ahk7PQqkDlvQVrAgMBAAECgYA8ASdX4W2n6a4kKnRSleLqqg8aHazqAP"+
    "vTinmAJqU65VW02SJ42yxyV3gFnTSErXfIfxviO3/U+0ruWiFVEwV5oDEh0dOd+HHGm4YzFXIRglMeRBgLuVJ+owzoVDwZsti"+
    "IBa69DIjaJtmpSf5FjwxAth+gtCv3e11IXHraKN720QJBAMPMB1WtmpRGYHxWVYjKSL+RGw+h3gMQLk3exZjhmYRlXuqfVZ2Zol+NazDc59"+
    "K5f+geMdJ0/X2kKnKLVjWzYHMCQQC7z1cFYswtLemxGfj+dwlVC01VL4pKa7HGHl/FAQ2UNYZY2d5hE/nXYbTpfI0gMowX926/aFpia7Nb"+
    "AUJO7WEpAkAyUFa+LJthaOhYazMVsK2bFKW4kabkcJ8Fga6TR73UaNxIPGOa2SUBmuylpM6ptuNoeYHiDBAr3ijOQIIJ0KuDAkBy9fPahCNe9F+73"+
    "J4hhVPdDtIDdto7u7hSAX215XMeabUW5iXNXqDsSg6nbWolb0t50CemWoYZALwE1Lx1+7AhAkEAoZtFt+2skjAxHEqNUye4vKBqB2Ng/wmfitCfT34"+
    "lXWQsxs4BGk/8eQMzkam9bcB7FcinolxHF/1UjsUYpI+AgA==",
  // privateKey: "",
  publicKey: "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCPpJ3j+SHQ69lqq+ShV7deA40Y+8rYra6rr4ReOJ+UE7ek8tsJJrcy1xMO1SophJdH"+
    "XXwSNbZWhnJW9GlIq1Um6IplkwFc/AtyoeJDP3EJtUZgI5H6fSz0BPLFHn18C0Nxz1Br109U07DqQdMsarcBmKXYQw+2oZOz0KpA5b0FawIDAQAB"
}
src/assets/js/tools/RSA.js
New file
@@ -0,0 +1,32 @@
import {JSEncrypt} from "jsencrypt";
import const_num from "@/assets/js/const/const_num";
export default {
  /**
   * 非对称加密算法-加密
   * @param word  需要加密的字符串
   * @returns {string | false}
   */
  encrypt(word) {
    let encryptor = new JSEncrypt();
    let publicKey = const_num.publicKey;
    encryptor.setPublicKey(publicKey);
    let rsaPassWord = encryptor.encrypt(word);
    return rsaPassWord;
  },
  /**
   * 非对称加密算法-解密
   * @param word
   * @param privateKey
   * @returns {string | false}
   */
  decrypt(word, privateKey) {
    if(!privateKey) {
      return "请写入私钥";
    }
    let decrypt = new JSEncrypt();
    decrypt.setPrivateKey(privateKey);
    let getWord = decrypt.decrypt(word);
    return getWord;
  }
}
src/pages/login.vue
@@ -270,6 +270,8 @@
  getVerifyCode
} from "@/assets/js/api";
import {formatSeconds} from "@/assets/js/tools";
import RSA from "@/assets/js/tools/RSA";
import const_num from "@/assets/js/const/const_num";
export default {
  components: {
@@ -790,9 +792,12 @@
    //console.log(AES.encrypt("123456"));
    // console.log(encodeURIComponent("B17jjjYoBkbfZChw/fHzcA=="));
    // console.log(decodeURIComponent("B17jjjYoBkbfZChw%2FfHzcA%3D%3D"))
    //console.log(AES.decrypt("h2axqFfHPT5zsxuAZ4Jz4g=="));
    //console.log(AES.decrypt("GrVhUWt7gpWu3jt1Y09uhQ=="));
    // console.log(md5("a123456"));
    // console.log(JSON.stringify("5OUaEnC33sVNY+jeXlx3Qg=="));
    //let rsaWord = RSA.encrypt("hDw123456");
    //console.log(rsaWord);
    //console.log(RSA.decrypt("EodEO3pcoe6t9N10S/eMcpu3klF4vFEThI+0UtzK9Adou2O46pPYnmLubjLFxZfgl1h28q8lJYdV1ym8F6/DZOMQ8kPQ1UmMqglbG7yFAz+HWsnzKXU4U9qLXpX1SvOKqAZsh+cIB13r4SEvB96Ah47GN4G+6u9baYbRHFru9GU=", const_num.privateKey));
  },
};
</script>
src/pages/pageSetting/components/menuApprove.vue
@@ -86,7 +86,15 @@
        title: "系统提示"
      }).then(res=>{
        let loading = this.$layer.loading();
        this.$apis.pageSetting.pastApprove(menus).then(res=>{
        let menus1 = menus.map(item=>{
          return {
            userId: item.userId,
            enableduse: item.enableduse,
            closable: item.closable,
            id: item.id
          };
        });
        this.$apis.pageSetting.pastApprove(menus1).then(res=>{
          let rs = JSON.parse(res.data.result);
          if(rs.code == 1) {
            this.$layer.msg('成功');
src/pages/userMager/addEdit.vue
@@ -138,7 +138,7 @@
                placeholder="选择日期时间">
            </el-date-picker>
          </el-form-item>
          <el-form-item label="用户权限:" class="table-cell" prop="permitGroupId">
          <el-form-item label="用户权限:" class="table-cell" prop="permitGroupId" v-if="status=='add'">
            <el-select
                v-model="formData.permitGroupId"
                size="mini"
@@ -146,9 +146,9 @@
                class="width_140">
              <el-option
                  v-for="item in groupList"
                  :key="item.key"
                  :key="item.value"
                  :label="item.txt"
                  :value="item.key">
                  :value="item.value">
              </el-option>
            </el-select>
          </el-form-item>
@@ -262,13 +262,14 @@
<script>
import { searchProvince } from "../../assets/js/api";
import const_user from "@/assets/js/const/const_user";
import AES from "@/common/AES";
import validateRules from "@/assets/js/tools/validateRules";
import extend from "@/assets/js/tools/extend";
import const_rules from "@/assets/js/const/const_rules";
import {
  testVal
} from '../../assets/js/tools'
import RSA from "@/assets/js/tools/RSA";
import getItemByKey from "@/assets/js/tools/getItemByKey";
export default {
  // name:'addEdit',
  props: ["status", "opt", "index", "seft"],
@@ -405,6 +406,7 @@
      this.formData.uRole = this.opt.uRole;
      this.formData.visitTime = this.opt.visitTime;
      this.formData.visitIp = this.opt.visitIp;
      this.formData.permitGroupId = 100;
      let times = this.opt.visitTime.split("~");
      this.rangeTime = [
          new Date("2016-10-1 "+times[0]),
@@ -478,8 +480,10 @@
              vm.addUser(vm.formData);
              break;
            case "edit": //修改
              let data1 = extend({}, data);
              data1.USnId = "";
              vm.$apis.userMager.userInfo
                .edit(data)
                .edit(data1)
                .then((res) => {
                  let result = JSON.parse(res.data.result);
                  if (result.code == 1) {
@@ -502,7 +506,7 @@
    addUser(data1) {
      let vm = this;
      let data = extend({}, data1);
      data.USnId = encodeURIComponent(AES.encrypt(data.Upassword));
      data.USnId = encodeURIComponent(RSA.encrypt(data.Upassword));
      data.Upassword = "";
      if(data.type == 1) {
        data.expirationTime = null;
@@ -578,13 +582,14 @@
        if (rs.code == 1) {
          data = rs.data.map(item => {
            item.txt = item.permit_group_name;
            item.key = item.permit_group_id;
            item.value = item.permit_group_id;
            item.key = item.permit_group_name;
            return item;
          });
        }
        // 设置权限组
        this.groupList = data.filter(item => {
          if (item.key != 100002 && item.key >100) {
          if (item.value != 100002 && item.value >100) {
            return true;
          }
        });
src/pages/userMager/baojiMager.vue
@@ -110,6 +110,8 @@
import MyCard from '../../components/MyCard'
import BaojiGroupList from './BaojiGroupList'
import {isHasPermit, uniqueByKey} from "@/assets/js/tools";
import checkVal from "@/assets/js/tools/checkVal";
import const_rules from "@/assets/js/const/const_rules";
export default {
    components: {
@@ -218,6 +220,14 @@
                rs.message = "包机组名称不能为空";
                return rs;
            }
            // 校验是否存在特殊字符
            let checkSpecailChar = checkVal(value, const_rules.noSpecialChar);
            if(checkSpecailChar.code == 0) {
              rs.code = 0;
              rs.message = checkSpecailChar.msg;
              return rs;
            }
            
            // 遍历包机组列表获取是否重名
            for(var i=0; i<this.baojigrouplist.length; i++) {
@@ -279,6 +289,7 @@
            this.editBaojiGroup.show = true;
        },
        editBaojiGroupOk() {
            let loading = this.$layer.loading();
            // 包机组信息
            var value = this.editBaojiGroup.value;
            var id = this.searchParams.baoji_group_id;
@@ -294,6 +305,7 @@
            }
            // 请求后台
            this.$apis.userMager.baojiGroup.edit(id, value).then(res=>{
                this.$layer.close(loading);
                let rs = JSON.parse(res.data.result);
                if(rs.code == 1) {
                    // 提示信息
@@ -307,6 +319,7 @@
                    // 查询包机组
                    this.searchBaojiGroupList();
                }else {
                    this.$layer.close(loading);
                    // 提示信息
                    this.$message({
                        type: 'error',
src/pages/userMager/powerMager.vue
@@ -132,6 +132,8 @@
import ContextBox from '../../components/ContentBox'
import {isHasPermit} from "@/assets/js/tools";
import getItemByKey from "@/assets/js/tools/getItemByKey";
import checkVal from "@/assets/js/tools/checkVal";
import const_rules from "@/assets/js/const/const_rules";
export default {
  components: {
@@ -620,6 +622,15 @@
        return rs;
      }
      // 校验是否存在特殊字符
      let checkSpecailChar = checkVal(value, const_rules.noSpecialChar);
      if(checkSpecailChar.code == 0) {
        rs.code = 0;
        rs.message = checkSpecailChar.msg;
        return rs;
      }
      // 遍历包机组列表获取是否重名
      for (var i = 0; i < this.powergrouplist.length; i++) {
        var _data = this.powergrouplist[i];
@@ -632,15 +643,18 @@
      return rs;
    },
    addGroupOk() {
      let loading = this.$layer.loading();
      let permit_group_name = this.addGroup.permit_group_name;
      let checkedRs = this.checkPowerGroup(permit_group_name);
      if (checkedRs.code == 0) {
        this.$layer.msg(checkedRs.message);
        return;
      }
      let searchParams = this.getAddParams();
      // 请求后台
      this.$apis.userMager.powerMager.add(searchParams).then(res => {
        this.$layer.close(loading);
        let rs = JSON.parse(res.data.result);
        if (rs.code == 1) {
          this.addGroup.show = false;
@@ -650,6 +664,7 @@
          this.$layer.msg('添加失败');
        }
      }).catch(error => {
        this.$layer.close(loading);
        console.log(error);
      });
    },
src/pages/userMager/userInfo.vue
@@ -98,6 +98,7 @@
      isHasPermit
    } from "@/assets/js/tools";
    import const_user from "@/assets/js/const/const_user";
    import extend from "@/assets/js/tools/extend";
    export default {
        data() {
            let permits = this.$store.state.user.permits;
@@ -204,7 +205,9 @@
                    icon: 3
                }, function (index) {
                    vm.$layer.close(index);
                    vm.$apis.userMager.userInfo.del(data).then(res => {
                    let data1 = extend({}, data);
                    data1.USnId = "";
                    vm.$apis.userMager.userInfo.del(data1).then(res => {
                        let result = JSON.parse(res.data.result)
                        vm.$layer.msg(result.msg)
                        vm.queryData();
@@ -271,8 +274,6 @@
                    }).filter(item=>{
                      return item.UId>100
                    });
                    console.log(this.userList);
                }).catch(error => {
                    console.log(error);
                });