Commit a6fc85d5 authored by Wallen姚文辉's avatar Wallen姚文辉

修改默认抄送人有时不显示的问题

parent 5b5f1d55
...@@ -17,12 +17,14 @@ ...@@ -17,12 +17,14 @@
"filesaver": "^0.0.13", "filesaver": "^0.0.13",
"html2canvas": "^1.4.1", "html2canvas": "^1.4.1",
"screenfull": "^6.0.2", "screenfull": "^6.0.2",
"socket.io-client": "^4.7.5",
"three": "^0.121.0", "three": "^0.121.0",
"vanta": "^0.5.24", "vanta": "^0.5.24",
"view-ui-plus": "^1.3.16", "view-ui-plus": "^1.3.16",
"vue": "^3.2.13", "vue": "^3.2.13",
"vue-echarts": "^6.7.2", "vue-echarts": "^6.7.2",
"vue-router": "^4.0.3", "vue-router": "^4.0.3",
"vue-socket.io": "^3.0.10",
"vuex": "^4.0.0" "vuex": "^4.0.0"
}, },
"devDependencies": { "devDependencies": {
...@@ -2809,6 +2811,11 @@ ...@@ -2809,6 +2811,11 @@
"integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
"dev": true "dev": true
}, },
"node_modules/@socket.io/component-emitter": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz",
"integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA=="
},
"node_modules/@soda/friendly-errors-webpack-plugin": { "node_modules/@soda/friendly-errors-webpack-plugin": {
"version": "1.8.1", "version": "1.8.1",
"resolved": "https://registry.npmmirror.com/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz", "resolved": "https://registry.npmmirror.com/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz",
...@@ -4133,6 +4140,11 @@ ...@@ -4133,6 +4140,11 @@
"node": ">= 10.0.0" "node": ">= 10.0.0"
} }
}, },
"node_modules/after": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
"integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA=="
},
"node_modules/ajv": { "node_modules/ajv": {
"version": "6.12.6", "version": "6.12.6",
"resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz",
...@@ -4411,6 +4423,11 @@ ...@@ -4411,6 +4423,11 @@
"node": ">= 0.4" "node": ">= 0.4"
} }
}, },
"node_modules/arraybuffer.slice": {
"version": "0.0.7",
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
"integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog=="
},
"node_modules/astral-regex": { "node_modules/astral-regex": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz",
...@@ -4617,6 +4634,11 @@ ...@@ -4617,6 +4634,11 @@
"@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
} }
}, },
"node_modules/backo2": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
"integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA=="
},
"node_modules/balanced-match": { "node_modules/balanced-match": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz",
...@@ -4699,6 +4721,11 @@ ...@@ -4699,6 +4721,11 @@
"readable-stream": "^3.4.0" "readable-stream": "^3.4.0"
} }
}, },
"node_modules/blob": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz",
"integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig=="
},
"node_modules/bluebird": { "node_modules/bluebird": {
"version": "3.7.2", "version": "3.7.2",
"resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz", "resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz",
...@@ -5208,6 +5235,24 @@ ...@@ -5208,6 +5235,24 @@
"integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
"dev": true "dev": true
}, },
"node_modules/component-bind": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
"integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw=="
},
"node_modules/component-emitter": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz",
"integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==",
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/component-inherit": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
"integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA=="
},
"node_modules/compressible": { "node_modules/compressible": {
"version": "2.0.18", "version": "2.0.18",
"resolved": "https://registry.npmmirror.com/compressible/-/compressible-2.0.18.tgz", "resolved": "https://registry.npmmirror.com/compressible/-/compressible-2.0.18.tgz",
...@@ -5786,7 +5831,6 @@ ...@@ -5786,7 +5831,6 @@
"version": "4.3.4", "version": "4.3.4",
"resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"dev": true,
"dependencies": { "dependencies": {
"ms": "2.1.2" "ms": "2.1.2"
}, },
...@@ -6235,6 +6279,46 @@ ...@@ -6235,6 +6279,46 @@
"once": "^1.4.0" "once": "^1.4.0"
} }
}, },
"node_modules/engine.io-client": {
"version": "6.5.3",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.3.tgz",
"integrity": "sha512-9Z0qLB0NIisTRt1DZ/8U2k12RJn8yls/nXMZLn+/N8hANT3TcYjKFKcwbw5zFQiN4NTde3TSY9zb79e1ij6j9Q==",
"dependencies": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1",
"engine.io-parser": "~5.2.1",
"ws": "~8.11.0",
"xmlhttprequest-ssl": "~2.0.0"
}
},
"node_modules/engine.io-client/node_modules/ws": {
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
"integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"engines": {
"node": ">=10.0.0"
},
"peerDependencies": {
"bufferutil": "^4.0.1",
"utf-8-validate": "^5.0.2"
},
"peerDependenciesMeta": {
"bufferutil": {
"optional": true
},
"utf-8-validate": {
"optional": true
}
}
},
"node_modules/engine.io-parser": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz",
"integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==",
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/enhanced-resolve": { "node_modules/enhanced-resolve": {
"version": "5.16.0", "version": "5.16.0",
"resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz",
...@@ -7930,6 +8014,24 @@ ...@@ -7930,6 +8014,24 @@
"integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
"dev": true "dev": true
}, },
"node_modules/has-binary2": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz",
"integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==",
"dependencies": {
"isarray": "2.0.1"
}
},
"node_modules/has-binary2/node_modules/isarray": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
"integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ=="
},
"node_modules/has-cors": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
"integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA=="
},
"node_modules/has-flag": { "node_modules/has-flag": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz",
...@@ -8293,6 +8395,11 @@ ...@@ -8293,6 +8395,11 @@
"node": ">=0.8.19" "node": ">=0.8.19"
} }
}, },
"node_modules/indexof": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
"integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg=="
},
"node_modules/inflight": { "node_modules/inflight": {
"version": "1.0.6", "version": "1.0.6",
"resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz",
...@@ -9576,8 +9683,7 @@ ...@@ -9576,8 +9683,7 @@
"node_modules/ms": { "node_modules/ms": {
"version": "2.1.2", "version": "2.1.2",
"resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
"dev": true
}, },
"node_modules/multicast-dns": { "node_modules/multicast-dns": {
"version": "7.2.5", "version": "7.2.5",
...@@ -10147,6 +10253,16 @@ ...@@ -10147,6 +10253,16 @@
"integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
"dev": true "dev": true
}, },
"node_modules/parseqs": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz",
"integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w=="
},
"node_modules/parseuri": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz",
"integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow=="
},
"node_modules/parseurl": { "node_modules/parseurl": {
"version": "1.3.3", "version": "1.3.3",
"resolved": "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz", "resolved": "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz",
...@@ -11750,6 +11866,32 @@ ...@@ -11750,6 +11866,32 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true "dev": true
}, },
"node_modules/socket.io-client": {
"version": "4.7.5",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
"integrity": "sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==",
"dependencies": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.2",
"engine.io-client": "~6.5.2",
"socket.io-parser": "~4.2.4"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/socket.io-parser": {
"version": "4.2.4",
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz",
"integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==",
"dependencies": {
"@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/sockjs": { "node_modules/sockjs": {
"version": "0.3.24", "version": "0.3.24",
"resolved": "https://registry.npmmirror.com/sockjs/-/sockjs-0.3.24.tgz", "resolved": "https://registry.npmmirror.com/sockjs/-/sockjs-0.3.24.tgz",
...@@ -12294,6 +12436,11 @@ ...@@ -12294,6 +12436,11 @@
"resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz",
"integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw=="
}, },
"node_modules/to-array": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
"integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A=="
},
"node_modules/to-fast-properties": { "node_modules/to-fast-properties": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
...@@ -12943,6 +13090,126 @@ ...@@ -12943,6 +13090,126 @@
"vue": "^3.2.0" "vue": "^3.2.0"
} }
}, },
"node_modules/vue-socket.io": {
"version": "3.0.10",
"resolved": "https://registry.npmjs.org/vue-socket.io/-/vue-socket.io-3.0.10.tgz",
"integrity": "sha512-XGYjD30Q9xAeHpBnp2SU+ljEe59qpGKaAQe4VOO9ezuly09MlzrT2ZZPJu3BVFpQwKdjQDz1I2fV9r4YjlZDCA==",
"dependencies": {
"socket.io-client": "^2.1.1"
}
},
"node_modules/vue-socket.io/node_modules/base64-arraybuffer": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz",
"integrity": "sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg==",
"engines": {
"node": ">= 0.6.0"
}
},
"node_modules/vue-socket.io/node_modules/debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"dependencies": {
"ms": "2.0.0"
}
},
"node_modules/vue-socket.io/node_modules/engine.io-client": {
"version": "3.5.3",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.3.tgz",
"integrity": "sha512-qsgyc/CEhJ6cgMUwxRRtOndGVhIu5hpL5tR4umSpmX/MvkFoIxUTM7oFMDQumHNzlNLwSVy6qhstFPoWTf7dOw==",
"dependencies": {
"component-emitter": "~1.3.0",
"component-inherit": "0.0.3",
"debug": "~3.1.0",
"engine.io-parser": "~2.2.0",
"has-cors": "1.1.0",
"indexof": "0.0.1",
"parseqs": "0.0.6",
"parseuri": "0.0.6",
"ws": "~7.4.2",
"xmlhttprequest-ssl": "~1.6.2",
"yeast": "0.1.2"
}
},
"node_modules/vue-socket.io/node_modules/engine.io-parser": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz",
"integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==",
"dependencies": {
"after": "0.8.2",
"arraybuffer.slice": "~0.0.7",
"base64-arraybuffer": "0.1.4",
"blob": "0.0.5",
"has-binary2": "~1.0.2"
}
},
"node_modules/vue-socket.io/node_modules/isarray": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
"integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ=="
},
"node_modules/vue-socket.io/node_modules/ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
},
"node_modules/vue-socket.io/node_modules/socket.io-client": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.5.0.tgz",
"integrity": "sha512-lOO9clmdgssDykiOmVQQitwBAF3I6mYcQAo7hQ7AM6Ny5X7fp8hIJ3HcQs3Rjz4SoggoxA1OgrQyY8EgTbcPYw==",
"dependencies": {
"backo2": "1.0.2",
"component-bind": "1.0.0",
"component-emitter": "~1.3.0",
"debug": "~3.1.0",
"engine.io-client": "~3.5.0",
"has-binary2": "~1.0.2",
"indexof": "0.0.1",
"parseqs": "0.0.6",
"parseuri": "0.0.6",
"socket.io-parser": "~3.3.0",
"to-array": "0.1.4"
}
},
"node_modules/vue-socket.io/node_modules/socket.io-parser": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.3.tgz",
"integrity": "sha512-qOg87q1PMWWTeO01768Yh9ogn7chB9zkKtQnya41Y355S0UmpXgpcrFwAgjYJxu9BdKug5r5e9YtVSeWhKBUZg==",
"dependencies": {
"component-emitter": "~1.3.0",
"debug": "~3.1.0",
"isarray": "2.0.1"
}
},
"node_modules/vue-socket.io/node_modules/ws": {
"version": "7.4.6",
"resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
"integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==",
"engines": {
"node": ">=8.3.0"
},
"peerDependencies": {
"bufferutil": "^4.0.1",
"utf-8-validate": "^5.0.2"
},
"peerDependenciesMeta": {
"bufferutil": {
"optional": true
},
"utf-8-validate": {
"optional": true
}
}
},
"node_modules/vue-socket.io/node_modules/xmlhttprequest-ssl": {
"version": "1.6.3",
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz",
"integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==",
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/vue-style-loader": { "node_modules/vue-style-loader": {
"version": "4.1.3", "version": "4.1.3",
"resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz", "resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz",
...@@ -13500,6 +13767,14 @@ ...@@ -13500,6 +13767,14 @@
} }
} }
}, },
"node_modules/xmlhttprequest-ssl": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz",
"integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==",
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/y18n": { "node_modules/y18n": {
"version": "5.0.8", "version": "5.0.8",
"resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz",
...@@ -13551,6 +13826,11 @@ ...@@ -13551,6 +13826,11 @@
"node": ">=10" "node": ">=10"
} }
}, },
"node_modules/yeast": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
"integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg=="
},
"node_modules/yorkie": { "node_modules/yorkie": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/yorkie/-/yorkie-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/yorkie/-/yorkie-2.0.0.tgz",
......
...@@ -17,12 +17,14 @@ ...@@ -17,12 +17,14 @@
"filesaver": "^0.0.13", "filesaver": "^0.0.13",
"html2canvas": "^1.4.1", "html2canvas": "^1.4.1",
"screenfull": "^6.0.2", "screenfull": "^6.0.2",
"socket.io-client": "^4.7.5",
"three": "^0.121.0", "three": "^0.121.0",
"vanta": "^0.5.24", "vanta": "^0.5.24",
"view-ui-plus": "^1.3.16", "view-ui-plus": "^1.3.16",
"vue": "^3.2.13", "vue": "^3.2.13",
"vue-echarts": "^6.7.2", "vue-echarts": "^6.7.2",
"vue-router": "^4.0.3", "vue-router": "^4.0.3",
"vue-socket.io": "^3.0.10",
"vuex": "^4.0.0" "vuex": "^4.0.0"
}, },
"devDependencies": { "devDependencies": {
......
...@@ -14,15 +14,20 @@ import TestReport from '@/views/tool/TestReport'; ...@@ -14,15 +14,20 @@ import TestReport from '@/views/tool/TestReport';
import Echarts from "vue-echarts"; import Echarts from "vue-echarts";
import 'echarts'; import 'echarts';
import ViewUIPlus from 'view-ui-plus'; import ViewUIPlus from 'view-ui-plus';
import VueSocketio from 'vue-socket.io'
import SocketIo from 'socket.io-client'
const app = createApp(App).use(store) const app = createApp(App).use(store)
import 'view-ui-plus/dist/styles/viewuiplus.css' import 'view-ui-plus/dist/styles/viewuiplus.css'
const socket = new VueSocketio({ connection: SocketIo('ws://127.0.0.1') })
axios.defaults.withCredentials = true axios.defaults.withCredentials = true
axios.defaults.baseURL = '/api' axios.defaults.baseURL = '/api'
app.config.globalProperties.$http = axios app.config.globalProperties.$http = axios
app.config.globalProperties.$socket = socket
app.component('v-chart', Echarts) app.component('v-chart', Echarts)
...@@ -147,6 +152,7 @@ app.config.globalProperties.elePro = function (menu_id) { ...@@ -147,6 +152,7 @@ app.config.globalProperties.elePro = function (menu_id) {
app.config.globalProperties.$routers = routers app.config.globalProperties.$routers = routers
app.provide("$http", axios); app.provide("$http", axios);
app.provide("$socket", socket);
app.provide("$request", request); app.provide("$request", request);
app.provide("$getElements", getElements); app.provide("$getElements", getElements);
app.use(ViewUIPlus).use(router).mount('#app') app.use(ViewUIPlus).use(router).mount('#app')
...@@ -590,9 +590,10 @@ export default { ...@@ -590,9 +590,10 @@ export default {
}, },
defaultcc: { defaultcc: {
handler(value) { handler(value) {
value.forEach(element => { // value.forEach(element => {
if (!this.sendcc.includes(element.address)) this.sendcc.push(element.address) // if (!this.sendcc.includes(element.address)) this.sendcc.push(element.address)
}); // });
this.sendcc = value.map(ele => { return ele.address })
}, deep: true }, deep: true
}, },
bug: { bug: {
......
...@@ -14,14 +14,30 @@ ...@@ -14,14 +14,30 @@
<Option v-for="item in projects" :value="item.id" :key="item.id">{{ <Option v-for="item in projects" :value="item.id" :key="item.id">{{
item.name }}</Option> item.name }}</Option>
</Select> </Select>
<Button type="primary" @click="run" style="margin-left: 10px;">上传</Button> <Button type="primary" @click="upload()" style="margin-left: 10px;">上传</Button>
</div> </div>
<div v-if="running" style="margin-top: 10px;"> <!-- <div v-if="running" style="margin-top: 10px;">
<Steps :current="step" :status="stepStatus"> <Steps :current="step" :status="stepStatus">
<Step title="上传文件" content="文件上传至服务器"></Step> <Step title="上传文件" content="文件上传至服务器"></Step>
<Step title="添加用例" content="添加用例集及测试用例"></Step> <Step title="添加用例" content="添加用例集及测试用例"></Step>
<Step title="关联用例" content="用例关联story,用例名需要包含stroy的key"></Step> <Step title="关联用例" content="用例关联story,用例名需要包含stroy的key"></Step>
</Steps> </Steps>
</div> -->
<div style="margin-top: 10px;">
<Row v-for="item in uploadhistory">
<Col span="8">{{ item.filename + "(" + item.project + ")" + (item.case_count ? ("- " + item.case_count +
"条") : "") }}
</Col>
<Col span="16">
<Steps :current="item.step" :status="item.stepstatus">
<Step title="上传文件" content="文件上传至服务器"></Step>
<Step title="添加用例" content="添加用例集及测试用例"></Step>
<Step title="关联用例" content="用例关联story,用例名需要包含stroy的key"></Step>
</Steps>
</Col>
</Row>
<Page :total="total" :page-size="pageinfo.page_size" v-model="pageinfo.page_num"
@on-change="getuploadhistory()" show-total style="margin-top: 20px;" />
</div> </div>
</div> </div>
</template> </template>
...@@ -34,12 +50,19 @@ export default { ...@@ -34,12 +50,19 @@ export default {
page_id: 21, page_id: 21,
title: "上传用例", title: "上传用例",
file: null, file: null,
file_name: null, // file_name: null,
project: null, project: null,
projects: [], projects: [],
running: false, uploadhistory: [],
step: null, runupload: [],
stepStatus: null, total: 0,
pageinfo: {
page_size: 10,
page_num: 1
}
// running: false,
// step: null,
// stepStatus: null,
} }
}, },
methods: { methods: {
...@@ -48,62 +71,62 @@ export default { ...@@ -48,62 +71,62 @@ export default {
else { else {
this.file = file; this.file = file;
this.file_name = null; this.file_name = null;
this.running = false;
this.clearProcess();
} }
return false; return false;
}, },
upload(next, params) { upload() {
this.step = 0
this.stepStatus = "process"
const formData = new FormData(); const formData = new FormData();
formData.append('file', this.file); formData.append('file', this.file);
this.$http.post('/upload', formData, { formData.append("project", this.project);
formData.append("projectName", this.projects[this.projects.findIndex(ele => { return ele.id == this.project })].name);
this.$http.post('/tool/testcase/upload', formData, {
headers: { headers: {
'Content-Type': 'multipart/form-data' 'Content-Type': 'multipart/form-data'
} }
}).then(response => { }).then(() => {
console.info(response.data) this.getuploadhistory()
this.file_name = response.data.data.filename }).catch(() => {
console.info(this.file_name) this.$Message.error("上传文件失败")
this.stepStatus = "finish" this.getuploadhistory()
next(params);
}).catch(error => {
this.stepStatus = "error"
}) })
}, getprojects() {
this.$request('get', 'tool/testport/getproject', null, this, (data) => { this.projects = data.data })
},
makecase(next) {
this.step = 1
this.stepStatus = "process"
console.info(this.project)
this.$request('post', 'tool/testcase/uploadcase', { project: this.project, file_name: this.file_name }, this, () => {
this.stepStatus = "finish"
next();
}, () => { this.stepStatus = "error" })
},
relevancycase() {
this.step = 2
this.stepStatus = "process"
this.$request('post', 'tool/testcase/relevancycase/' + this.project, null, this, () => {
this.stepStatus = "finish",
this.step = 3
}, () => { this.stepStatus = "error" })
}, },
run() { getprojects() {
this.clearProcess(); this.$request('get', '/tool/testport/getproject', null, this, (data) => { this.projects = data.data })
this.running = true
this.upload(this.makecase, this.relevancycase)
// this.upload(() => { }, () => { })
}, },
clearProcess() { getuploadhistory() {
this.step = null; this.$request('get', '/tool/testcase/uploadhistory', this.pageinfo, this, (data) => { this.uploadhistory = data.data.rows; this.total = data.data.total })
this.stepStatus = null
} }
}, },
created() { created() {
this.getprojects() this.getprojects();
this.getuploadhistory();
this.$socket.io.emit("join", 1)
this.$socket.io.on('infoupdate', () => { console.info("数据更新了"); this.getuploadhistory() })
this.$socket.io.on('www', () => { console.info("cao") })
console.info(this.$socket)
},
destroyed() {
this.$socket.io.off('infoupdate')
},
watch: {
uploadhistory: {
handler(value) {
console.info(value)
const a = []
value.forEach(ele => {
ele.status == 0 && a.push(ele.id)
})
this.runupload = a
}
},
runupload(newvalue, oldvalue) {
newvalue.forEach(ele => {
if (!oldvalue.includes(ele)) this.$socket.io.emit("join", ele)
})
oldvalue.forEach(ele => {
if (!oldvalue.includes(ele)) this.$socket.io.emit("leave", ele)
})
}
} }
}; };
</script> </script>
......
...@@ -19,7 +19,18 @@ module.exports = defineConfig({ ...@@ -19,7 +19,18 @@ module.exports = defineConfig({
pathRewrite: { pathRewrite: {
'/api': '' '/api': ''
} }
} },
// '/socket.io': {
// target: 'http://localhost:8080', // target host
// changeOrigin: true, // needed for virtual hosted sites
// logLevel: 'debug'
// },
// '/sockjs-node': {
// target: 'http://localhost:8080',
// ws: false,
// changeOrigin: true
// }
} }
} }
}) })
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment