Commit fc40ccfa by gao_yingdong

全国查询

parent 67b35959
...@@ -1755,6 +1755,7 @@ ...@@ -1755,6 +1755,7 @@
"thread-loader": "^2.1.3", "thread-loader": "^2.1.3",
"url-loader": "^2.2.0", "url-loader": "^2.2.0",
"vue-loader": "^15.9.2", "vue-loader": "^15.9.2",
"vue-loader-v16": "npm:vue-loader@^16.0.0-beta.7",
"vue-style-loader": "^4.1.2", "vue-style-loader": "^4.1.2",
"webpack": "^4.0.0", "webpack": "^4.0.0",
"webpack-bundle-analyzer": "^3.8.0", "webpack-bundle-analyzer": "^3.8.0",
...@@ -1763,12 +1764,43 @@ ...@@ -1763,12 +1764,43 @@
"webpack-merge": "^4.2.2" "webpack-merge": "^4.2.2"
}, },
"dependencies": { "dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"camelcase": { "camelcase": {
"version": "5.3.1", "version": "5.3.1",
"resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz",
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
"dev": true "dev": true
}, },
"chalk": {
"version": "4.1.2",
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"css-loader": { "css-loader": {
"version": "3.6.0", "version": "3.6.0",
"resolved": "https://registry.npmmirror.com/css-loader/-/css-loader-3.6.0.tgz", "resolved": "https://registry.npmmirror.com/css-loader/-/css-loader-3.6.0.tgz",
...@@ -1906,6 +1938,32 @@ ...@@ -1906,6 +1938,32 @@
"dev": true "dev": true
} }
} }
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.8.3",
"resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
"integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"loader-utils": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.2.tgz",
"integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
}
}
} }
} }
}, },
...@@ -4150,6 +4208,11 @@ ...@@ -4150,6 +4208,11 @@
"randomfill": "^1.0.3" "randomfill": "^1.0.3"
} }
}, },
"crypto-js": {
"version": "4.1.1",
"resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.1.1.tgz",
"integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw=="
},
"css-color-names": { "css-color-names": {
"version": "0.0.4", "version": "0.0.4",
"resolved": "https://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz", "resolved": "https://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz",
...@@ -7092,10 +7155,9 @@ ...@@ -7092,10 +7155,9 @@
} }
}, },
"js-base64": { "js-base64": {
"version": "2.6.4", "version": "3.7.2",
"resolved": "https://registry.npm.taobao.org/js-base64/download/js-base64-2.6.4.tgz?cache=0&sync_timestamp=1599897523811&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-base64%2Fdownload%2Fjs-base64-2.6.4.tgz", "resolved": "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.2.tgz",
"integrity": "sha1-9OaGxd4eofhn28rT1G2WlCjfmMQ=", "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ=="
"dev": true
}, },
"js-cookie": { "js-cookie": {
"version": "2.2.1", "version": "2.2.1",
...@@ -8755,7 +8817,8 @@ ...@@ -8755,7 +8817,8 @@
"version": "2.2.2", "version": "2.2.2",
"resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz", "resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz",
"integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=", "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=",
"dev": true "dev": true,
"optional": true
}, },
"pify": { "pify": {
"version": "4.0.1", "version": "4.0.1",
...@@ -10339,6 +10402,12 @@ ...@@ -10339,6 +10402,12 @@
"source-map": "^0.4.2" "source-map": "^0.4.2"
}, },
"dependencies": { "dependencies": {
"js-base64": {
"version": "2.6.4",
"resolved": "https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz",
"integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==",
"dev": true
},
"source-map": { "source-map": {
"version": "0.4.4", "version": "0.4.4",
"resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.4.4.tgz", "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.4.4.tgz",
......
...@@ -9,11 +9,13 @@ ...@@ -9,11 +9,13 @@
}, },
"dependencies": { "dependencies": {
"core-js": "^3.6.5", "core-js": "^3.6.5",
"crypto-js": "^4.1.1",
"css-loader": "^6.7.1", "css-loader": "^6.7.1",
"driver.js": "^0.9.8", "driver.js": "^0.9.8",
"echarts": "^4.9.0", "echarts": "^4.9.0",
"element-ui": "^2.4.5", "element-ui": "^2.4.5",
"file-saver": "^2.0.5", "file-saver": "^2.0.5",
"js-base64": "^3.7.2",
"js-cookie": "^2.2.1", "js-cookie": "^2.2.1",
"moment": "^2.29.1", "moment": "^2.29.1",
"postcss-loader": "^6.2.1", "postcss-loader": "^6.2.1",
......
...@@ -68,10 +68,12 @@ const router = new VueRouter({ ...@@ -68,10 +68,12 @@ const router = new VueRouter({
router.afterEach((to) => { router.afterEach((to) => {
var userInfo = JSON.parse(sessionStorage.userInfo); var userInfo = JSON.parse(sessionStorage.userInfo);
// 身份证 和 姓名 // 身份证 和 姓名
let name = userInfo.realname.substring(0, userInfo.realname.length - 1)
let names = userInfo.realname.replace(name, '***')
let one = userInfo.identitycard.replace( let one = userInfo.identitycard.replace(
/^(.{10})(?:\d+)(.{4})$/, /^(.{10})(?:\d+)(.{4})$/,
"$1****$2" "$1****$2"
) + ' ' + userInfo.realname ) + ' ' + names
// 当前登录时间 // 当前登录时间
let two = moment().format('YYYY-MM-DD HH:mm:ss') let two = moment().format('YYYY-MM-DD HH:mm:ss')
// 1p 和 系统名 // 1p 和 系统名
......
const CryptoJS = require('crypto-js'); //引用AES源码js
// key iv 自己设置16即可,位置要对应上;
const key = CryptoJS.enc.Utf8.parse("xzeq2021@zhyy#54"); //十六位十六进制数作为密钥
const skKey = CryptoJS.enc.Utf8.parse("maplogin");
const iv = CryptoJS.enc.Utf8.parse('xzeq2021@zhyy#54'); //十六位十六进制数作为密钥偏移量
//解密方法
function Decrypt(word) {
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
let decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
return decryptedStr.toString();
}
//加密方法
function Encrypt(word) {
let srcs = CryptoJS.enc.Utf8.parse(word);
let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
return encrypted.ciphertext.toString().toUpperCase();
}
// 加密
function skEncrypt(word, keyStr, ivStr) {
let key = '';
let iv = '';
if (keyStr) {
key = CryptoJS.enc.Utf8.parse(keyStr);
iv = CryptoJS.enc.Utf8.parse(ivStr);
}
let srcs = CryptoJS.enc.Utf8.parse(word);
var encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.ZeroPadding,
});
// console.log("参数", keyStr, ivStr);
return CryptoJS.enc.Base64.stringify(encrypted.ciphertext);
}
function creattimeBumderNYR(number) {
var dateh = new Date(number);
let month =
(dateh.getMonth() + 1 < 10
? "0" + (dateh.getMonth() + 1)
: dateh.getMonth() + 1) + "-";
let day =
(dateh.getDate() < 10 ? "0" + dateh.getDate() : dateh.getDate()) + " ";
var year = dateh.getFullYear() + "-";
var houyizhou = year + month + day;
return houyizhou;
}
export default {
Decrypt,
Encrypt,
skEncrypt,
creattimeBumderNYR
}
// 使用
// let key =
// "maplogin" + encry.creattimeBumderNYR(new Date()).split("-").join("");
// let vi =
// "map_vues" + encry.creattimeBumderNYR(new Date()).split("-").join("");
// let skjm = encry.skEncrypt(
// JSON.parse(sessionStorage.getItem("userInfo")).identitycard,
// key.trim(),
// vi.trim()
// );
\ No newline at end of file
...@@ -10,8 +10,8 @@ let setWatermark = (str1, str2, str3, str4, str5) => { ...@@ -10,8 +10,8 @@ let setWatermark = (str1, str2, str3, str4, str5) => {
} }
let can = document.createElement('canvas') let can = document.createElement('canvas')
can.width = 600 can.width = 450
can.height = 400 can.height = 300
let cans = can.getContext('2d') let cans = can.getContext('2d')
cans.rotate(-20 * Math.PI / 180) cans.rotate(-20 * Math.PI / 180)
......
...@@ -10,8 +10,8 @@ let setWatermark = (str1,str2,str3,str4,str5) => { ...@@ -10,8 +10,8 @@ let setWatermark = (str1,str2,str3,str4,str5) => {
} }
let can = document.createElement('canvas') let can = document.createElement('canvas')
can.width = 600 can.width = 450
can.height = 400 can.height = 300
let cans = can.getContext('2d') let cans = can.getContext('2d')
cans.rotate(-20 * Math.PI / 180) cans.rotate(-20 * Math.PI / 180)
......
...@@ -16,7 +16,10 @@ ...@@ -16,7 +16,10 @@
<span>系统管理员:</span> <span>系统管理员:</span>
</div> </div>
<div class="header-nav"> <div class="header-nav">
<span @click="down" style="margin-right: 10px">操作手册</span> <span @click="down" style="margin-right: 25px"
><i class="el-icon-download" style="margin-right: 5px"></i
>操作手册</span
>
<span class="big-tv-nav"> <span class="big-tv-nav">
<img <img
src="../../assets/img/bigTvNav.png" src="../../assets/img/bigTvNav.png"
...@@ -31,16 +34,44 @@ ...@@ -31,16 +34,44 @@
<img src="../../assets/img/title.png" /> <img src="../../assets/img/title.png" />
</div> </div>
<div class="nav"> <div class="nav">
<div class="navList" v-for="item in navList" :key="item.id" style="position: relative"> <div
class="navList"
v-for="item in navList"
:key="item.id"
style="position: relative"
>
<img :src="item.url" @click="goDetail(item)" /> <img :src="item.url" @click="goDetail(item)" />
<i class="el-icon-lock" v-if="item.isClock && !isInclude" style="position: absolute;left: 50%;transform: translateX(-50%);height: 30px;bottom: 0px;"></i> <i
<i class="el-icon-lock" v-if="item.lock" style="position: absolute;left: 50%;bottom: 0px;transform: translateX(-50%);height: 30px"></i> class="el-icon-lock"
v-if="item.isClock && !isInclude"
style="
position: absolute;
left: 50%;
transform: translateX(-50%);
height: 30px;
bottom: 0px;
"
></i>
<i
class="el-icon-lock"
v-if="item.lock"
style="
position: absolute;
left: 50%;
bottom: 0px;
transform: translateX(-50%);
height: 30px;
"
></i>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import axios from "axios";
import encry from "@/utils/encry";
import url from "@/api/base";
import { zdryLogin } from "@/api/home.js"; import { zdryLogin } from "@/api/home.js";
export default { export default {
data() { data() {
...@@ -53,7 +84,7 @@ export default { ...@@ -53,7 +84,7 @@ export default {
}, },
{ {
id: "/dwcx", id: "/dwcx",
url: require("../../assets/img/nav2-1.png"), //标注统计 url: require("../../assets/img/nav2-1.png"), //多维查询
lock: false, lock: false,
}, },
{ {
...@@ -100,24 +131,58 @@ export default { ...@@ -100,24 +131,58 @@ export default {
}, },
methods: { methods: {
down() { down() {
window.open("file/cz.docx"); // window.open("file/cz.docx");
let urls = `${url.alyIP}/downfile`;
let params = new FormData();
params.append("fileName", "cz.docx");
axios
.post(urls, params, {
responseType: "arraybuffer",
})
.then((res) => {
let blob = new Blob([res], {
type: "application/vnd.ms-excel",
});
// 组装a标签
let elink = document.createElement("a");
// 设置下载文件名
elink.download = "类案标注.docx";
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
document.body.removeChild(elink);
});
}, },
goDetail(item) { goDetail(item) {
// if(item.id == '/bztj') {
// this.$message.info("功能正在开发中")
// return
// }
// debugger;
if (item.id == "/zdry") { if (item.id == "/zdry") {
// zdryLogin({
// zjhm: "34222419830726005X",
// }).then((result) => {
// window.open("http://26.3.14.165:8088/zdGzry/index", "_blank");
// });
this.$router.pushToTab(item.id); this.$router.pushToTab(item.id);
} } else if (item.id == "/dwcx") {
let idObj = JSON.parse(sessionStorage.getItem("userInfo"));
else if (item.isClock && !this.isInclude) { let uesrNnameObj = {
username: idObj.userName,
trueName: idObj.realname,
unitcode: idObj.unitcode,
unitname: idObj.unitname,
policemanid: idObj.account,
grade: idObj.grade,
identitycard: idObj.identitycard,
telephone: idObj.phone,
};
let key =
"szpt_one" + encry.creattimeBumderNYR(new Date()).split("-").join("");
let vi =
"szpt_two" + encry.creattimeBumderNYR(new Date()).split("-").join("");
let skjm = encry.skEncrypt(
JSON.stringify(uesrNnameObj),
key.trim(),
vi.trim()
);
console.log(skjm);
// this.$message.error("暂无权限!");
let path = `http://26.3.14.165:9001/#/jumpQsxx?path=/queryQgcx&token=${skjm}`
window.open(path, '_blank')
} else if (item.isClock && !this.isInclude) {
return; return;
} else if (item.lock) { } else if (item.lock) {
return; return;
......
...@@ -73,9 +73,17 @@ ...@@ -73,9 +73,17 @@
>登录</el-button >登录</el-button
> >
</el-form-item> </el-form-item>
<div @click="down" style="text-align: center; cursor: pointer;color:#fff;font-size:18px"> <!-- <div
@click="down"
style="
text-align: center;
cursor: pointer;
color: #fff;
font-size: 18px;
"
>
操作手册 操作手册
</div> </div> -->
</el-form> </el-form>
</div> </div>
</div> </div>
...@@ -84,6 +92,8 @@ ...@@ -84,6 +92,8 @@
<script> <script>
import { mapGetters } from "vuex"; import { mapGetters } from "vuex";
import { login } from "@/api/home.js"; import { login } from "@/api/home.js";
import axios from "axios";
import url from "@/api/base";
export default { export default {
data() { data() {
return { return {
...@@ -101,9 +111,6 @@ export default { ...@@ -101,9 +111,6 @@ export default {
}; };
}, },
methods: { methods: {
down() {
window.open("file/cz.docx");
},
handleSubmit() { handleSubmit() {
login({ login({
account: this.ruleForm2.account, account: this.ruleForm2.account,
......
...@@ -66,8 +66,8 @@ module.exports = { ...@@ -66,8 +66,8 @@ module.exports = {
// } // }
// }, // },
"/api": { "/api": {
// target: "http://26.3.14.165:8762/", //me 公安网 target: "http://26.3.14.165:8762/", // 部标注 公安网
target: "http://47.92.48.137:1007/", //me // target: "http://192.168.1.109:8762/", //本地
ws: true, ws: true,
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
......
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