From 510cdf91c11696f97aefd175df2abab5ae0d3053 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Fri, 19 Nov 2021 16:30:09 +0800
Subject: [PATCH] +功能完善
---
src/views/home/index.vue | 5
src/views/home/forms.vue | 40 ++++++--
public/zhiwenDemo/app.css | 6
src/store/index.js | 4
src/store/modules/exam.js | 28 +++++
src/api/qiandao/qiandao.js | 18 +++
src/views/home/tables.vue | 146 +++++++++++++++++++++++++++--
src/store/getters.js | 3
src/styles/element-ui.scss | 8 +
9 files changed, 233 insertions(+), 25 deletions(-)
diff --git a/public/zhiwenDemo/app.css b/public/zhiwenDemo/app.css
index a7d4747..934661f 100644
--- a/public/zhiwenDemo/app.css
+++ b/public/zhiwenDemo/app.css
@@ -39,8 +39,10 @@
#img {
border-radius: 6px;
border: 1px dashed rgb(209, 209, 209);
- width: 180px;
- height: 180px;
+ /* width: 180px;
+ height: 180px; */
+ height: 182px;
+ width: 138px;
position: relative;
top: 2px;
}
diff --git a/src/api/qiandao/qiandao.js b/src/api/qiandao/qiandao.js
index 1b02fca..b3ffb0d 100644
--- a/src/api/qiandao/qiandao.js
+++ b/src/api/qiandao/qiandao.js
@@ -1,7 +1,7 @@
import request from '@/router/axios';
export const getList = (current, size, params) => {
return request({
- url: '/api//blade-user/pages',
+ url: '/api/blade-user/pages',
method: 'get',
params: {
...params,
@@ -11,4 +11,20 @@
})
}
+export const upData = (params) => {
+ return request({
+ url: '/api/blade-user/update',
+ method: 'post',
+ data: params
+ })
+}
+export const getZhiwen = (id) => {
+ return request({
+ url: '/api/blade-user/details',
+ method: 'get',
+ params: {
+ id
+ }
+ })
+}
diff --git a/src/store/getters.js b/src/store/getters.js
index b3b2609..b8619e0 100644
--- a/src/store/getters.js
+++ b/src/store/getters.js
@@ -30,5 +30,8 @@
handle: state => state.dict.handle,
// canDoIt: state => state.dict.canDoIt,
// yanzhen: state => state.dict.yanzhen,
+ cardInfor: state => state.exam.cardInfor,
+ haveCardid: state => state.exam.haveCardid,
+ useZhiWen: state => state.exam.useZhiWen,
}
export default getters
diff --git a/src/store/index.js b/src/store/index.js
index 805b864..73bf3c7 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -5,6 +5,7 @@
import tags from './modules/tags'
import logs from './modules/logs'
import dict from './modules/dict'
+import exam from './modules/exam'
import getters from './getters'
Vue.use(Vuex)
@@ -14,7 +15,8 @@
common,
logs,
tags,
- dict
+ dict,
+ exam
},
getters,
})
diff --git a/src/store/modules/exam.js b/src/store/modules/exam.js
new file mode 100644
index 0000000..22b1d25
--- /dev/null
+++ b/src/store/modules/exam.js
@@ -0,0 +1,28 @@
+
+const exam = {
+ state: {
+ cardInfor: {},
+ haveCardid: false,
+ useZhiWen: function (fn, vals) {
+ //读取指纹实例
+ let val = vals || "";
+ var winzhiwen = document.getElementById("zhiwen").contentWindow;
+ return winzhiwen[fn](val);
+ },
+ },
+ actions: {
+
+
+ },
+ mutations: {
+ setCardInfor(state, data) {
+ state.cardInfor = data;
+ },
+ setCardidState(state, data) {
+ state.haveCardid = data;
+ }
+ }
+
+};
+
+export default exam;
diff --git a/src/styles/element-ui.scss b/src/styles/element-ui.scss
index 95c861f..ee99a59 100644
--- a/src/styles/element-ui.scss
+++ b/src/styles/element-ui.scss
@@ -113,3 +113,11 @@
display: none;
width: 100px !important;
}
+
+.tablesss .avue-form__menu--center {
+ width: 100% !important;
+}
+
+.formsss .el-input__inner {
+ color: #000 !important;
+}
diff --git a/src/views/home/forms.vue b/src/views/home/forms.vue
index 2166b96..d144609 100644
--- a/src/views/home/forms.vue
+++ b/src/views/home/forms.vue
@@ -1,5 +1,5 @@
<template>
- <basic-container>
+ <basic-container class="formsss">
<avue-form
ref="form"
v-model="obj"
@@ -31,7 +31,11 @@
<script>
import CertCtl from "./sfzJS";
+import { mapGetters } from "vuex";
export default {
+ computed: {
+ ...mapGetters(["userInfo", "cardInfor", "haveCardid", "useZhiWen"]),
+ },
mounted() {
// console.log(CertCtl);
try {
@@ -58,13 +62,13 @@
return {
cardShebei: "",
intTime: "", //自动获取身份证;
- isHaveCardid: false,
obj: {},
option: {
// mockBtn: true,
// submitText: "完成",
// printBtn: true,
submitBtn: false,
+ disabled: true,
column: [
{
label: "姓名",
@@ -126,7 +130,7 @@
setIntervals: function () {
let that = this;
this.intTime = setInterval(function () {
- if (!that.isHaveCardid) {
+ if (!that.haveCardid) {
//定时读卡
let result = CertCtl.readCert();
if (result == "") {
@@ -136,7 +140,7 @@
//resultFlag为0代表读卡成功
if (resultObj.resultFlag == "0") {
//回显相关数据
- console.log(resultObj, 123);
+ // console.log(resultObj, 123);
const data = resultObj.resultContent;
//赋值数据
that.obj = {
@@ -175,12 +179,14 @@
id: data.certNumber,
qfjg: data.certOrg,
};
- that.isHaveCardid = true;
+ that.$store.commit("setCardInfor", that.obj);
+ that.$store.commit("setCardidState", true);
} else if (resultObj.resultFlag == "-1") {
if (resultObj.errorMsg == "端口打开失败") {
console.log("读卡器未连接");
} else {
- console.log(resultObj.errorMsg);
+ // console.log(resultObj.errorMsg);
+ //无卡片提醒
}
} else if (resultObj.resultFlag == "-2") {
console.log(resultObj.errorMsg);
@@ -190,16 +196,30 @@
}, 1000);
},
emptytChange() {
- this.isHaveCardid = false;
- this.$message.success("清空方法回调");
+ this.$store.commit("setCardidState", false);
+ let zhiwen = {
+ featuredatas: "",
+ imgBMP: "",
+ url: "",
+ isoks: false,
+ clear: true,
+ };
+ this.useZhiWen("setZhiwenData", zhiwen);
+ this.$message.success("清空身份证数据");
},
+ // useZhiWen: function (fn, vals) {
+ // //读取指纹实例
+ // let val = vals || "";
+ // var winzhiwen = document.getElementById("zhiwen").contentWindow;
+ // return winzhiwen[fn](val);
+ // },
},
};
</script>
<style lang="scss" scoped>
.zhiwenMain {
- width: 222px;
- height: 196px;
+ width: 255px;
+ height: 205px;
// border: 1px solid rgba($color: #d3d3d3, $alpha: 1);
}
.imgss {
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 1117de4..7645eb7 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -112,11 +112,14 @@
display: flex;
align-items: center;
justify-content: center;
+ position: relative;
.e_m_left {
width: 50%;
height: 100%;
- min-width: 620px;
+ min-width: 750px;
// border: 1px solid red;
+ display: flex;
+ align-content: center;
}
.e_m_right {
width: 50%;
diff --git a/src/views/home/tables.vue b/src/views/home/tables.vue
index 3939197..0ad18d2 100644
--- a/src/views/home/tables.vue
+++ b/src/views/home/tables.vue
@@ -1,5 +1,5 @@
<template>
- <basic-container>
+ <basic-container class="tablesss">
<avue-crud
:option="option"
:table-loading="loading"
@@ -38,7 +38,7 @@
<script>
import { mapGetters } from "vuex";
-import { getList } from "@/api/qiandao/qiandao";
+import { getList, upData, getZhiwen } from "@/api/qiandao/qiandao";
export default {
data() {
return {
@@ -55,7 +55,7 @@
// tip: false,
// searchSize: "mini",
searchMenuSpan: 6,
- // height: 563,
+ height: "auto",
index: true,
// selectable: (row, index) => {
// console.log(row, index);
@@ -76,7 +76,7 @@
label: "姓名",
prop: "realName",
search: true,
- searchSpan: 4,
+ searchSpan: 5,
searchLabelWidth: 55,
width: 60,
},
@@ -84,14 +84,14 @@
label: "公司",
prop: "deptName",
search: true,
- searchSpan: 4,
+ searchSpan: 8,
searchLabelWidth: 55,
},
{
label: "身份证号码",
prop: "cardid",
search: true,
- searchSpan: 5,
+ searchSpan: 10,
searchLabelWidth: 90,
width: 140,
},
@@ -103,7 +103,13 @@
};
},
computed: {
- ...mapGetters(["userInfo", "permission"]),
+ ...mapGetters([
+ "userInfo",
+ "cardInfor",
+ "permission",
+ "haveCardid",
+ "useZhiWen",
+ ]),
permissionList() {
return {
addBtn: this.vaildData(this.permission.notice_add, false),
@@ -111,6 +117,19 @@
delBtn: this.vaildData(this.permission.notice_delete, false),
editBtn: this.vaildData(this.permission.notice_edit, false),
};
+ },
+ },
+ watch: {
+ haveCardid() {
+ if (this.haveCardid) {
+ this.onLoad(
+ this.page,
+ {
+ cardid: this.cardInfor.id,
+ },
+ "shibie"
+ );
+ }
},
},
mounted() {
@@ -126,8 +145,81 @@
// }
},
methods: {
- rowUps(val) {
- console.log(val);
+ rowUps(row, msg) {
+ let zhiwenData = this.useZhiWen("outZhiwenData");
+ let card = this.cardInfor;
+ // console.log(card);
+ // console.log(row);
+ // console.log(zhiwenData);
+ if (this.haveCardid) {
+ if (msg == "once") {
+ this.getZhiwen(row);
+ return;
+ }
+ // console.log(zhiwenData, 456);
+ if (
+ zhiwenData.imgSRC != "" &&
+ zhiwenData.imgSRC != undefined &&
+ zhiwenData.imgBMP != "" &&
+ zhiwenData.imgBMP != undefined &&
+ zhiwenData.featuredata != "" &&
+ zhiwenData.featuredata != undefined &&
+ zhiwenData.isoks
+ ) {
+ // console.log("存在指纹");
+ row.realName = card.name;
+ row.cardid = card.id;
+ row.sex = card.sex == "男" ? "1" : card.sex == "女" ? "2" : "3";
+ row.nation = card.national;
+ row.registered = card.certAddress;
+ row.fingerprint = zhiwenData.imgBMP;
+ row.myPicture = zhiwenData.featuredata;
+ this.upDataMain(row);
+ } else {
+ this.msg("warning", "无指纹信息,请添加指纹信息后重试!");
+ }
+ } else {
+ this.msg("warning", "请读取身份证后重试!");
+ }
+ },
+ getZhiwen(row) {
+ let that = this;
+ getZhiwen(row.id).then((res) => {
+ // console.log(res);
+ let zhiwen = {
+ featuredatas: res.data.data.myPicture,
+ imgBMP: res.data.data.fingerprint,
+ // url: row.fingerprint,
+ isoks: false,
+ };
+ if (
+ zhiwen.featuredatas != "" &&
+ zhiwen.featuredatas != undefined &&
+ zhiwen.imgBMP != "" &&
+ zhiwen.imgBMP != undefined
+ ) {
+ zhiwen.isoks = true;
+ that.useZhiWen("setZhiwenData", zhiwen);
+ that.rowUps(row);
+ } else {
+ // useZhiwen();
+ zhiwen.isoks = false;
+ that.useZhiWen("setZhiwenData", zhiwen);
+ that.msg("warning", "无指纹信息,请添加指纹信息后更新!");
+ // 若无指纹,提醒要录入指纹,再手动点击更新;
+ }
+ });
+ },
+ upDataMain(row) {
+ upData(row).then((res) => {
+ const data = res.data;
+ // console.log(data);
+ if (data.code == 200) {
+ this.msg("success", data.msg);
+ } else {
+ this.msg("warning", data.msg);
+ }
+ });
},
sizeChange(val) {
this.page.pageSize = val;
@@ -171,6 +263,7 @@
done();
},
searchReset() {
+ console.log(5454);
this.query = {};
this.onLoad(this.page);
},
@@ -223,7 +316,13 @@
refreshChange() {
this.onLoad(this.page, this.query);
},
- onLoad(page, params = {}) {
+ msg: function (type, msg) {
+ this.$message({
+ message: msg,
+ type: type,
+ });
+ },
+ onLoad(page, params = {}, shibie) {
params["status"] = "1";
params["roleAlias"] = "111";
getList(
@@ -232,10 +331,37 @@
Object.assign(params, this.query)
).then((res) => {
// console.log(res);
+
const data = res.data.data;
this.page.total = data.total;
this.data = data.records;
// // console.log(this.data);
+ if (shibie == "shibie") {
+ if (data.total == 0) {
+ this.msg("warning", "查无此人");
+ let zhiwen = {
+ featuredatas: "",
+ imgBMP: "",
+ url: "",
+ isoks: false,
+ };
+ this.useZhiWen("setZhiwenData", zhiwen);
+ } else if (data.total == 1) {
+ //查询出一个人 将数据覆盖
+ // console.log(value[0])
+ this.rowUps(data.records[0], "once");
+ } else {
+ this.msg("warning", "查无此人");
+ let zhiwen = {
+ featuredatas: "",
+ imgBMP: "",
+ url: "",
+ isoks: false,
+ };
+ this.useZhiWen("setZhiwenData", zhiwen);
+ this.msg("warning", "查询出多人,请选择对应人员更新!");
+ }
+ }
this.loading = false;
});
},
--
Gitblit v1.9.3