Commit 6f71c728 by liyuhang19990520

Merge branch 'dev_zwpt' of http://47.92.108.28/changchao/founder_vue into dev_zwpt

parents 55bc17ed 6fc03f7f
No preview for this file type
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 64 (93537) - https://sketch.com -->
<title>编组 145</title>
<desc>Created with Sketch.</desc>
<g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="编组-145" transform="translate(-1.000000, -1.000000)">
<g id="编组-142备份" fill="#FFFFFF" fill-opacity="0">
<rect id="矩形" x="0" y="0" width="26" height="26"></rect>
</g>
<circle id="椭圆形" stroke="#E50011" stroke-width="2" cx="13" cy="13" r="11"></circle>
<circle id="椭圆形备份-33" fill="#055FE7" cx="13" cy="13" r="2"></circle>
<path d="M20.6754018,17.8794035 C19.8469747,17.8794035 19.0969747,18.2151899 18.5540814,18.7580832 C18.0111882,19.3009764 17.6754018,20.0509764 17.6754018,20.8794035 C17.6754018,21.7078306 18.0111882,22.4578306 18.5540814,23.0007239 C19.0969747,23.5436171 19.8469747,23.8794035 20.6754018,23.8794035 C21.5038289,23.8794035 22.2538289,23.5436171 22.7967221,23.0007239 C23.3396153,22.4578306 23.6754018,21.7078306 23.6754018,20.8794035 C23.6754018,20.0509764 23.3396153,19.3009764 22.7967221,18.7580832 C22.2538289,18.2151899 21.5038289,17.8794035 20.6754018,17.8794035 Z" id="椭圆形备份-34" stroke="#FFFFFF" fill="#055FE7"></path>
</g>
</g>
</svg>
\ No newline at end of file
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-09-09 09:28:46 * @Date: 2021-09-09 09:28:46
* @LastEditTime: 2021-11-29 16:20:06 * @LastEditTime: 2021-11-30 11:44:22
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\src\views\cxyrd\LTz.vue * @FilePath: \指纹系统\founder_vue\src\views\cxyrd\LTz.vue
...@@ -5013,6 +5013,12 @@ export default { ...@@ -5013,6 +5013,12 @@ export default {
this.targetTong = false; this.targetTong = false;
} }
}, },
beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.off('changImageEdit');
this.$bus.off('changImageEditTarget')
this.$bus.off('deleteMessage')
},
watch: { watch: {
isActive(val) { isActive(val) {
if (val == false) { if (val == false) {
......
...@@ -769,6 +769,7 @@ export default { ...@@ -769,6 +769,7 @@ export default {
*/ */
handleClick (row) { handleClick (row) {
console.log(row); console.log(row);
this.$store.commit('ajdaxx/setAjInfo', row)
this.$router.push('/ajzwbj/' + row.id + '/' + row.ysxtAsjbh) this.$router.push('/ajzwbj/' + row.id + '/' + row.ysxtAsjbh)
}, },
/** /**
......
<template> <template>
<el-drawer <el-drawer size="50%" class="rydaxx-drawer ajdaxx-drawer" :modal="false" :append-to-body="true" :modal-append-to-body="false" @close="closeDrawer" :visible.sync="drawer" :with-header="false">
size="50%"
class="rydaxx-drawer ajdaxx-drawer"
:modal="false"
:append-to-body="true"
:modal-append-to-body="false"
@close="closeDrawer"
:visible.sync="drawer"
:with-header="false">
<div class="header"> <div class="header">
<div class="header-title">案件档案信息</div> <div class="header-title">案件档案信息</div>
<div class="header-close" @click="closeDrawer"> <div class="header-close" @click="closeDrawer">
...@@ -34,7 +26,7 @@ ...@@ -34,7 +26,7 @@
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="案事件发生地点:" prop="asjfsddDzmc"> <el-form-item label="案事件发生地点:" prop="asjfsddDzmc">
<el-input placeholder="请输入现场掌指纹卡编号" v-model="ruleForm.asjfsddDzmc"></el-input> <el-input placeholder="请输入案事件发生地点" v-model="ruleForm.asjfsddDzmc"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="现场掌指纹卡编号:" prop="xczzhwkbh"> <el-form-item label="现场掌指纹卡编号:" prop="xczzhwkbh">
<el-input placeholder="请输入现场掌指纹卡编号" v-model="ruleForm.xczzhwkbh" maxlength="23" show-word-limit></el-input> <el-input placeholder="请输入现场掌指纹卡编号" v-model="ruleForm.xczzhwkbh" maxlength="23" show-word-limit></el-input>
...@@ -46,8 +38,8 @@ ...@@ -46,8 +38,8 @@
</el-form-item> </el-form-item>
<el-form-item label="命案" prop="sfmaPdbz" class="ma-item"> <el-form-item label="命案" prop="sfmaPdbz" class="ma-item">
<el-radio-group v-model="ruleForm.sfmaPdbz"> <el-radio-group v-model="ruleForm.sfmaPdbz">
<el-radio :label="1"></el-radio> <el-radio label="1"></el-radio>
<el-radio :label="0"></el-radio> <el-radio label="0"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</div> </div>
...@@ -86,10 +78,10 @@ ...@@ -86,10 +78,10 @@
</div> </div>
<div class="ayzzwjbxx-items"> <div class="ayzzwjbxx-items">
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="提取单位代码:" prop="unitCode"> <el-form-item label="提取单位代码:" prop="tqdwGajgjgdm">
<!-- <el-input placeholder="请输入提取单位代码" v-model="ruleForm.unitCode"></el-input>--> <!-- <el-input placeholder="请输入提取单位代码" v-model="ruleForm.unitCode"></el-input>-->
<!-- <Cascader :form="ruleForm" id="unitCode"></Cascader>--> <!-- <Cascader :form="ruleForm" id="unitCode"></Cascader>-->
<Cascader :form="ruleForm" id="unitCode"></Cascader> <Cascader :form="ruleForm" id="tqdwGajgjgdm"></Cascader>
</el-form-item> </el-form-item>
<el-form-item label="提取人姓名:" prop="tqryXm"> <el-form-item label="提取人姓名:" prop="tqryXm">
<el-input placeholder="请输入提取人姓名" v-model="ruleForm.tqryXm"></el-input> <el-input placeholder="请输入提取人姓名" v-model="ruleForm.tqryXm"></el-input>
...@@ -97,7 +89,10 @@ ...@@ -97,7 +89,10 @@
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="提取时间:" prop="tqsj"> <el-form-item label="提取时间:" prop="tqsj">
<el-date-picker type="date" placeholder="请输入提取时间" v-model="ruleForm.tqsj"></el-date-picker> <el-date-picker type="date" placeholder="请输入提取时间" v-model="ruleForm.tqsj"
:picker-options="{
disabledDate: disabledDate,
}"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="提取人身份证号:" prop="tqryGmsfhm"> <el-form-item label="提取人身份证号:" prop="tqryGmsfhm">
<el-input placeholder="请输入提取人身份证号" v-model="ruleForm.tqryGmsfhm"></el-input> <el-input placeholder="请输入提取人身份证号" v-model="ruleForm.tqryGmsfhm"></el-input>
...@@ -106,7 +101,7 @@ ...@@ -106,7 +101,7 @@
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<div></div> <div></div>
<el-form-item label="提取人联系电话:" prop="tqryLxdh"> <el-form-item label="提取人联系电话:" prop="tqryLxdh">
<el-input placeholder="请输入提取人联系电话" v-model="ruleForm.tqryLxdh"></el-input> <el-input placeholder="请输入提取人联系电话" v-model="ruleForm.tqryLxdh" maxlength="18"></el-input>
</el-form-item> </el-form-item>
</div> </div>
</div> </div>
...@@ -116,33 +111,14 @@ ...@@ -116,33 +111,14 @@
<span class="name">操作记录列表</span> <span class="name">操作记录列表</span>
</div> </div>
<div class="czjl-table"> <div class="czjl-table">
<el-table <el-table :header-cell-style="{background: '#F6F8FA',color:'#282F3C'}" :data="tableData" border style="width: 100%">
:header-cell-style="{background: '#F6F8FA',color:'#282F3C'}" <el-table-column align="center" :width="width1" type="index">
:data="tableData"
border
style="width: 100%">
<el-table-column
align="center"
:width="width1"
type="index">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="czr" align="center" label="操作人" width="auto">
prop="czr"
align="center"
label="操作人"
width="auto">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="czrq" align="center" label="操作日期" width="auto">
prop="czrq"
align="center"
label="操作日期"
width="auto">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="czsj" align="center" label="操作事件" width="auto">
prop="czsj"
align="center"
label="操作事件"
width="auto">
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
...@@ -159,11 +135,7 @@ ...@@ -159,11 +135,7 @@
<img class="arrow-down-img" src="@/assets/img/jiantou.gif" alt=""> <img class="arrow-down-img" src="@/assets/img/jiantou.gif" alt="">
</div> </div>
<!-- 导出FPTX弹窗 --> <!-- 导出FPTX弹窗 -->
<dcfptxAj <dcfptxAj :isShowDcfptx1="isShowDcfptx1" :rowData="rowData" @closeDcfptx1="closeDcfptx1"></dcfptxAj>
:isShowDcfptx1="isShowDcfptx1"
:rowData="rowData"
@closeDcfptx1="closeDcfptx1"
></dcfptxAj>
</el-drawer> </el-drawer>
</template> </template>
...@@ -171,11 +143,11 @@ ...@@ -171,11 +143,11 @@
import dcfptxAj from "../../AllPersonnelBase/modules/dcfptxAj.vue"; import dcfptxAj from "../../AllPersonnelBase/modules/dcfptxAj.vue";
import SelectCode from "../../../components/SelectCode.vue"; import SelectCode from "../../../components/SelectCode.vue";
import Cascader from "@/components/Cascader.vue"; import Cascader from "@/components/Cascader.vue";
import {mapState} from "vuex"; import { mapState } from "vuex";
export default { export default {
name: "rydaxx", name: "rydaxx",
data() { data () {
return { return {
isShowDcfptx1: false, // 导出FPTX isShowDcfptx1: false, // 导出FPTX
arrow: 'bottom', arrow: 'bottom',
...@@ -191,12 +163,12 @@ export default { ...@@ -191,12 +163,12 @@ export default {
asjfsddDzmc: '', asjfsddDzmc: '',
xczzhwkbh: '', xczzhwkbh: '',
ssjzrmby: '', ssjzrmby: '',
sfmaPdbz: 0, sfmaPdbz: '0',
ajlbdm: '', ajlbdm: '',
jyaq: '', jyaq: '',
logicdbtype2: ['本地案件库', '比中案件库'], logicdbtype2: ['本地案件库', '比中案件库'],
logicdbtype: "000", logicdbtype: "000",
unitCode: '430000000000', tqdwGajgjgdm: '430000000000',
tqryXm: '', tqryXm: '',
tqsj: '', tqsj: '',
tqryGmsfhm: '', tqryGmsfhm: '',
...@@ -213,7 +185,7 @@ export default { ...@@ -213,7 +185,7 @@ export default {
sfmaPdbz: [ sfmaPdbz: [
{ required: true, message: '请选择命案!', trigger: 'change' } { required: true, message: '请选择命案!', trigger: 'change' }
], ],
unitCode: [ tqdwGajgjgdm: [
{ required: true, message: '请输入提取单位代码!', trigger: 'blur' } { required: true, message: '请输入提取单位代码!', trigger: 'blur' }
], ],
tqryXm: [ tqryXm: [
...@@ -223,7 +195,12 @@ export default { ...@@ -223,7 +195,12 @@ export default {
{ required: true, message: '请输入提取时间!', trigger: 'change' } { required: true, message: '请输入提取时间!', trigger: 'change' }
], ],
tqryGmsfhm: [ tqryGmsfhm: [
{ required: true, message: '请输入提取人身份证号!', trigger: 'blur' } { required: true, message: '请输入提取人身份证号!', trigger: 'blur' },
{
pattern: /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/,
message: '证件号码格式有误!',
trigger: 'blur'
}
], ],
}, },
tableData: [{ tableData: [{
...@@ -242,7 +219,7 @@ export default { ...@@ -242,7 +219,7 @@ export default {
czr: '系统管理员', czr: '系统管理员',
czrq: '2021.12.10. 23:59:59', czrq: '2021.12.10. 23:59:59',
czsj: '编辑档案信息' czsj: '编辑档案信息'
},{ }, {
czr: '系统管理员', czr: '系统管理员',
czrq: '2021.12.10. 23:59:59', czrq: '2021.12.10. 23:59:59',
czsj: '编辑档案信息' czsj: '编辑档案信息'
...@@ -255,7 +232,7 @@ export default { ...@@ -255,7 +232,7 @@ export default {
ajInfo: state => state.ajdaxx.ajInfo, ajInfo: state => state.ajdaxx.ajInfo,
}) })
}, },
created() { created () {
let self = this; let self = this;
let w1 = 1920; let w1 = 1920;
let w2 = window.innerWidth; let w2 = window.innerWidth;
...@@ -270,11 +247,18 @@ export default { ...@@ -270,11 +247,18 @@ export default {
self.$bus.emit('isBlur', true) self.$bus.emit('isBlur', true)
}); });
// 人员档案信息 // 案件档案信息
console.log(this.ajInfo); console.log(this.ajInfo);
this.initData() this.initData()
}, },
methods: { methods: {
disabledDate (a) {
if (a.getTime() > new Date().getTime()) {
return true;
} else {
return false;
}
},
/** /**
* 关闭FPTX * 关闭FPTX
* @param val * @param val
...@@ -286,32 +270,32 @@ export default { ...@@ -286,32 +270,32 @@ export default {
/** /**
* 导出FPTX * 导出FPTX
*/ */
isShowDcftpxBtn() { isShowDcftpxBtn () {
this.rowData = [this.ajInfo]; this.rowData = [this.ajInfo];
this.isShowDcfptx1 = true; this.isShowDcfptx1 = true;
}, },
/** /**
* 跳到最底部 * 跳到最底部
*/ */
goBottom() { goBottom () {
let rydaxxDrawer = document.querySelector('.ayzzwjbxx') let rydaxxDrawer = document.querySelector('.ayzzwjbxx')
// 判断上移还是下移 // 判断上移还是下移
if(this.arrow == 'top') { if (this.arrow == 'top') {
rydaxxDrawer.scrollIntoView({block: "start"}); rydaxxDrawer.scrollIntoView({ block: "start" });
$('.arrow-down-img').css('transform', 'rotate(0deg)'); $('.arrow-down-img').css('transform', 'rotate(0deg)');
this.arrow = 'bottom' this.arrow = 'bottom'
} else { } else {
rydaxxDrawer.scrollIntoView({block: "end"}); rydaxxDrawer.scrollIntoView({ block: "end" });
$('.arrow-down-img').css('transform', 'rotate(180deg)'); $('.arrow-down-img').css('transform', 'rotate(180deg)');
this.arrow = 'top' this.arrow = 'top'
} }
}, },
handleCheckAllChange(val) { handleCheckAllChange (val) {
console.log(val); console.log(val);
this.ruleForm.logicdbtype2 = val ? this.ryljfkArr : []; this.ruleForm.logicdbtype2 = val ? this.ryljfkArr : [];
this.isIndeterminate = false; this.isIndeterminate = false;
}, },
handleCheckedCitiesChange(value) { handleCheckedCitiesChange (value) {
console.log(value); console.log(value);
let checkedCount = value.length; let checkedCount = value.length;
this.checkAll = checkedCount === this.ryljfkArr.length; this.checkAll = checkedCount === this.ryljfkArr.length;
...@@ -320,7 +304,7 @@ export default { ...@@ -320,7 +304,7 @@ export default {
/** /**
* 初始化数据 * 初始化数据
*/ */
initData() { initData () {
// 赋值 // 赋值
this.ruleForm.id = this.ajInfo.id this.ruleForm.id = this.ajInfo.id
this.ruleForm.ysxtAsjbh = this.ajInfo.ysxtAsjbh this.ruleForm.ysxtAsjbh = this.ajInfo.ysxtAsjbh
...@@ -332,16 +316,18 @@ export default { ...@@ -332,16 +316,18 @@ export default {
this.ruleForm.ajlbdm = this.ajInfo.ajlbdm this.ruleForm.ajlbdm = this.ajInfo.ajlbdm
this.ruleForm.jyaq = this.ajInfo.jyaq this.ruleForm.jyaq = this.ajInfo.jyaq
this.ruleForm.logicdbtype = this.ajInfo.logicdbtype this.ruleForm.logicdbtype = this.ajInfo.logicdbtype
this.ruleForm.unitCode = this.ajInfo.tqdwGajgjgdm this.ruleForm.tqdwGajgjgdm = this.ajInfo.tqdwGajgjgdm
this.ruleForm.tqryXm = this.ajInfo.tqryXm this.ruleForm.tqryXm = this.ajInfo.tqryXm
this.ruleForm.tqsj = this.ajInfo.tqsj this.ruleForm.tqsj = this.ajInfo.tqsj
this.ruleForm.tqryGmsfhm = this.ajInfo.tqryGmsfhm this.ruleForm.tqryGmsfhm = this.ajInfo.tqryGmsfhm
this.ruleForm.tqryLxdh = this.ajInfo.tqryLxdh this.ruleForm.tqryLxdh = this.ajInfo.tqryLxdh
console.log(this.ruleForm.tqdwGajgjgdm);
}, },
/** /**
* 关闭抽屉 * 关闭抽屉
*/ */
closeDrawer() { closeDrawer () {
this.drawer = false this.drawer = false
// 关闭毛玻璃 // 关闭毛玻璃
this.$bus.emit('isBlur', false) this.$bus.emit('isBlur', false)
...@@ -353,11 +339,10 @@ export default { ...@@ -353,11 +339,10 @@ export default {
* 提交表单 * 提交表单
* @param formName * @param formName
*/ */
submitForm(formName) { submitForm (formName) {
let self = this let self = this
this.$refs[formName].validate((valid) => { this.$refs[formName].validate((valid) => {
if (valid) { if (valid) {
alert('submit!');
self.$axios({ self.$axios({
method: 'post', method: 'post',
headers: { headers: {
...@@ -367,9 +352,27 @@ export default { ...@@ -367,9 +352,27 @@ export default {
data: JSON.stringify(self.ruleForm) data: JSON.stringify(self.ruleForm)
}).then(res => { }).then(res => {
console.log(res); console.log(res);
if (res.data.code === 0) {
self.$message.success('保存成功!')
// 清除全部案件库缓存
self.$store.commit('layout/delcachePageName', 'qbalk')
} else {
self.$message.error('保存失败!')
}
}) })
self.$bus.emit('isBlur', false)
self.drawer = false
} else { } else {
console.log('error submit!!'); this.$nextTick(() => {
let isError = document.getElementsByClassName('is-error')
isError[0].scrollIntoView({
// 滚动到指定节点
// 值有start,center,end,nearest,当前显示在视图区域中间
block: 'center',
// 值有auto、instant,smooth,缓动动画(当前是慢速的)
behavior: 'smooth',
})
})
return false; return false;
} }
}); });
...@@ -378,7 +381,7 @@ export default { ...@@ -378,7 +381,7 @@ export default {
* 重置表单 * 重置表单
* @param formName * @param formName
*/ */
resetForm(formName) { resetForm (formName) {
// this.$refs[formName].resetFields(); // this.$refs[formName].resetFields();
this.closeDrawer() this.closeDrawer()
} }
......
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-10-22 09:42:07 * @Date: 2021-10-22 09:42:07
* @LastEditTime: 2021-11-27 17:04:54 * @LastEditTime: 2021-11-30 18:15:14
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\ryzwbjLeft.vue * @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\ryzwbjLeft.vue
...@@ -23,9 +23,9 @@ ...@@ -23,9 +23,9 @@
</div> </div>
<div class="left-right-hand" v-if="zwSelect==='指纹'"> <div class="left-right-hand" v-if="zwSelect==='指纹'">
<div class="lr-hand" v-if="fingers.length>0"> <div class="lr-hand" v-if="fingers.length>0">
<div class="fingerDom" v-for="(item,index) in fingers" :key="index" @click="FingersChange(index, item)"> <div class="fingerDom" v-for="(item,index) in fingers" :key="index" @click="FingersChange(item.code, item)">
<div class="fingerPic" :class="{fingerPicActive: activeFinger===index}"> <div class="fingerPic" :class="{fingerPicActive: activeFinger==item.code}">
<div class="finger-number">{{(index+1) &lt; 10 ? ('0'+(index+1)) : (index+1)}}</div> <div class="finger-number">{{(item.code) &lt; 10 ? ('0'+(item.code)) : (item.code)}}</div>
<div class="finger-pic"> <div class="finger-pic">
<!-- <img src="../../../assets/img/finger.png" /> --> <!-- <img src="../../../assets/img/finger.png" /> -->
<img :src="'data:image/jpeg;base64,'+item.image" alt=""> <img :src="'data:image/jpeg;base64,'+item.image" alt="">
...@@ -45,9 +45,9 @@ ...@@ -45,9 +45,9 @@
</div> </div>
<div class="left-right-hand" v-else-if="zwSelect==='掌纹'"> <div class="left-right-hand" v-else-if="zwSelect==='掌纹'">
<div class="lr-hand" v-if="hands.length>0"> <div class="lr-hand" v-if="hands.length>0">
<div class="fingerDom" v-for="(item,index) in hands" :key="index" @click="HandChange(index)"> <div class="fingerDom" v-for="(item,index) in hands" :key="index" @click="HandChange(item.code)">
<div class="fingerPic" :class="{fingerPicActive: activeHand===index}"> <div class="fingerPic" :class="{fingerPicActive: activeHand===index}">
<div class="finger-number">{{(index+1) &lt; 10 ? ('0'+(index+1)) : (index+1)}}</div> <div class="finger-number">{{(item.code) &lt; 10 ? ('0'+(item.code)) : (item.code)}}</div>
<div class="finger-pic"> <div class="finger-pic">
<!-- <img src="../../../assets/img/zhangwen.png" /> --> <!-- <img src="../../../assets/img/zhangwen.png" /> -->
<img :src="'data:image/jpeg;base64,'+item.image" alt=""> <img :src="'data:image/jpeg;base64,'+item.image" alt="">
...@@ -169,6 +169,11 @@ export default { ...@@ -169,6 +169,11 @@ export default {
// this.changeCaseFingerPNG() // this.changeCaseFingerPNG()
} }
// 更新图片列表
self.$bus.on('updateList', () => {
this.getCaseFinger()
})
}, },
methods: { methods: {
/** /**
...@@ -257,8 +262,8 @@ export default { ...@@ -257,8 +262,8 @@ export default {
// //console.log(self.fingers); // //console.log(self.fingers);
// 自动获取第一个 // 自动获取第一个
if (self.fingers.length > 0) { if (self.fingers.length > 0) {
this.activeFinger = 0 this.activeFinger = '01'
self.FingersChange(0, self.fingers[0]) self.FingersChange(1, self.fingers[0])
} }
} else { } else {
self.$message.error(res.data.message) self.$message.error(res.data.message)
...@@ -339,6 +344,15 @@ export default { ...@@ -339,6 +344,15 @@ export default {
this.$bus.emit('zwType', this.zwSelect) this.$bus.emit('zwType', this.zwSelect)
}, },
}, },
beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.off('ajzwbjImage');
this.$bus.off('ajzwbjType');
this.$bus.off('ajzwbjTDZ');
this.$bus.off('zwType');
this.$bus.off('openAjDaxx');
this.$bus.off('updateList');
}
} }
</script> </script>
......
...@@ -909,15 +909,14 @@ $transOrigin: var(--transOrigin, 0px, 0px); ...@@ -909,15 +909,14 @@ $transOrigin: var(--transOrigin, 0px, 0px);
position: relative; position: relative;
.greendirection { .greendirection {
position: absolute; position: absolute;
left: 390px; left: 440px;
bottom: 100px; bottom: 100px;
width: 114px; width: 114px;
height: 114px; height: 114px;
transform: rotate($directionRotate); transform: rotate($directionRotate);
transform-origin: center bottom; transform-origin: left center;
cursor: all-scroll; cursor: all-scroll;
display: flex; display: flex;
flex-direction: column;
align-items: center; align-items: center;
.stringht { .stringht {
width: 5px; width: 5px;
...@@ -1570,17 +1569,23 @@ $transOrigin: var(--transOrigin, 0px, 0px); ...@@ -1570,17 +1569,23 @@ $transOrigin: var(--transOrigin, 0px, 0px);
-4px -4px 4px 0px #ffffff; -4px -4px 4px 0px #ffffff;
color: #ffffff; color: #ffffff;
} }
.blend, .blend {
.multiply {
z-index: 100; z-index: 100;
background: #ffffff; background: #ffffff;
position: absolute; position: absolute;
top: 128px; top: 110px;
right: 47px; right: 30px;
}
.multiply {
z-index: 10000;
background: #ffffff;
position: absolute;
top: 120px;
left: 90px;
} }
.remove-white { .remove-white {
position: absolute; position: absolute;
top: 184px; top: 160px;
left: 16px; left: 16px;
display: flex; display: flex;
align-items: center; align-items: center;
...@@ -1606,6 +1611,20 @@ $transOrigin: var(--transOrigin, 0px, 0px); ...@@ -1606,6 +1611,20 @@ $transOrigin: var(--transOrigin, 0px, 0px);
height: 20px; height: 20px;
} }
} }
.disabled {
width: 64px;
height: 32px;
background: #ECEDF1;
border-radius: 4px;
font-size: 14px;
font-family: MicrosoftYaHei;
color: #AEAFB4;
display: flex;
justify-content: center;
align-items: center;
margin-right: 12px;
margin-bottom: 16px;
}
/deep/ .el-slider__runway { /deep/ .el-slider__runway {
width: 190px; width: 190px;
height: 3px; height: 3px;
......
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-10-22 11:36:10 * @Date: 2021-10-22 11:36:10
* @LastEditTime: 2021-11-29 22:33:17 * @LastEditTime: 2021-11-30 20:52:26
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\imageEd.vue * @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\imageEd.vue
...@@ -149,6 +149,7 @@ ...@@ -149,6 +149,7 @@
<!-- 展示方向 --> <!-- 展示方向 -->
<!-- <svg-icon v-show="isdirection" icon-class="direction" class="direction" /> --> <!-- <svg-icon v-show="isdirection" icon-class="direction" class="direction" /> -->
<div class="greendirection" v-show="isdirection"> <div class="greendirection" v-show="isdirection">
<!-- <div class="greendirection" v-show="true"> -->
<div class="stringht"></div> <div class="stringht"></div>
<div class="horizal"></div> <div class="horizal"></div>
</div> </div>
...@@ -192,19 +193,27 @@ ...@@ -192,19 +193,27 @@
<div class="item-name">圆形绘制</div> <div class="item-name">圆形绘制</div>
</div> </div>
</div> --> </div> -->
<el-tooltip class="item" effect="dark" content="特征点" :open-delay="500">
<div class="tzd" :class="{featuresActive: isHandTZD}" @click="tzdChange"> <div class="tzd" :class="{featuresActive: isHandTZD}" @click="tzdChange">
<img src="@/assets/img/zcedit/features1.svg" alt=""> <img src="@/assets/img/zcedit/features1.svg" alt="">
<div class="number">{{ tzdnumber }}</div> <div class="number">{{ tzdnumber }}</div>
</div> </div>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="方向" :open-delay="500">
<div class="bzd" :class="{featuresActive: isdirection}" @click="directionChange"> <div class="bzd" :class="{featuresActive: isdirection}" @click="directionChange">
<img src="@/assets/img/rybj/bzd.svg" alt=""> <img src="@/assets/img/rybj/bzd.svg" alt="">
</div> </div>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="自动提取特征" :open-delay="500">
<div class="dp" v-show="isAutoTzd" @mouseup="isAutoTzd=false;"> <div class="dp" v-show="isAutoTzd" @mouseup="isAutoTzd=false;">
<img src="@/assets/img/rybj/dp.svg" alt="" /> <img src="@/assets/img/rybj/dp.svg" alt="" />
</div> </div>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="自动提取特征" :open-delay="500">
<div class="dp-d" @mousedown="getAutoTzd(true)" v-show="!isAutoTzd"> <div class="dp-d" @mousedown="getAutoTzd(true)" v-show="!isAutoTzd">
<img src="@/assets/img/rybj/dp.svg" alt="" /> <img src="@/assets/img/rybj/dp.svg" alt="" />
</div> </div>
</el-tooltip>
</div> </div>
<div class="xstz"> <div class="xstz">
<el-checkbox v-model="isTZ">显示特征</el-checkbox> <el-checkbox v-model="isTZ">显示特征</el-checkbox>
...@@ -212,8 +221,8 @@ ...@@ -212,8 +221,8 @@
<!-- <div class="xszyqy"> <!-- <div class="xszyqy">
<el-checkbox v-model="isZYQY">显示重要区域</el-checkbox> <el-checkbox v-model="isZYQY">显示重要区域</el-checkbox>
</div> --> </div> -->
<!-- <div class="zdtq-line"></div>--> <!-- <div class="zdtq-line"></div>-->
<!-- <div class="btns-bottom"> <!-- <div class="btns-bottom">
<div class="dp" @click="getAutoTzd(true)"><img src="@/assets/img/rybj/dp.png" alt=""></div> <div class="dp" @click="getAutoTzd(true)"><img src="@/assets/img/rybj/dp.png" alt=""></div>
<div class="clear" @click="clearChange"><img src="@/assets/img/rybj/clear.png" alt=""></div> <div class="clear" @click="clearChange"><img src="@/assets/img/rybj/clear.png" alt=""></div>
...@@ -239,7 +248,7 @@ ...@@ -239,7 +248,7 @@
</div> </div>
<div class="save-btn" v-if="saveType==''">保存</div> <div class="save-btn" v-if="saveType==''">保存</div>
<div class="save-btn isActive" v-else @click="goSave">保存</div> <div class="save-btn isActive" v-else @click="goSave">保存</div>
<!-- <div class="save-type" @click="saveTypeOptionsChange">{{ saveType }}<img src="@/assets/img/rybj/arrow_d.png" alt=""></div> <!-- <div class="save-type" @click="saveTypeOptionsChange">{{ saveType }}<img src="@/assets/img/rybj/arrow_d.png" alt=""></div>
<div class="save-btn" v-if="saveType==''">保存</div> <div class="save-btn" v-if="saveType==''">保存</div>
<div class="save-btn isActive" v-else @click="goSave">保存</div> <div class="save-btn isActive" v-else @click="goSave">保存</div>
<div class="save-type-options" v-show="isShowSaveTypeOptions"> <div class="save-type-options" v-show="isShowSaveTypeOptions">
...@@ -257,12 +266,12 @@ ...@@ -257,12 +266,12 @@
<div class="options-bottom"> <div class="options-bottom">
<div class="options-bottom-title">图像调整</div> <div class="options-bottom-title">图像调整</div>
<div class="options-bottom-btns"> <div class="options-bottom-btns">
<div class="btn" :class="{grayActive: isGrayActive}" @click="changeGray">灰度</div> <!-- <div class="btn" :class="{grayActive: isGrayActive}" @click="changeGray">灰度</div> -->
<div class="btn" :class="{vintageActive: isVintageActive}" @click="changeVintage">棕褐色</div> <div class="btn" :class="{vintageActive: isVintageActive}" @click="changeVintage">棕褐色</div>
<div class="btn" :class="{horseshoeMirrorActive: isHorseshoeMirrorActive}" @click="changeHorseshoeMirror"> <div class="disabled" :class="{horseshoeMirrorActive: isHorseshoeMirrorActive}">
马蹄镜 马蹄镜
</div> </div>
<div class="btn" :class="{equalizationActive: isEqualizationActive}" @click="changeEqualization">均衡化</div> <div class="disabled" :class="{equalizationActive: isEqualizationActive}">均衡化</div>
<div class="btn" :class="{sharpenActive: isSharpenActive}" @click="changeSharpen">锐化</div> <div class="btn" :class="{sharpenActive: isSharpenActive}" @click="changeSharpen">锐化</div>
<div class="btn" :class="{embossActive: isEmbossActive}" @click="changeEmboss">浮雕</div> <div class="btn" :class="{embossActive: isEmbossActive}" @click="changeEmboss">浮雕</div>
<div class="btn" :class="{invertActive: isInvertActive}" @click="changeInvert">反相</div> <div class="btn" :class="{invertActive: isInvertActive}" @click="changeInvert">反相</div>
...@@ -315,7 +324,7 @@ ...@@ -315,7 +324,7 @@
<div class="title">对比度</div> <div class="title">对比度</div>
<div class="content"> <div class="content">
<!-- <input class="range-narrow" id="input-range-contrast-value" type="range" min="0" :value="inputContrastRange" max="255" /> --> <!-- <input class="range-narrow" id="input-range-contrast-value" type="range" min="0" :value="inputContrastRange" max="255" /> -->
<el-slider class="range-narrow" id="input-range-contrast-value" v-model.number="inputContrastRange" :min="0" :max="255"></el-slider> <el-slider class="range-narrow" id="input-range-contrast-value" v-model.number="inputContrastRange" :min="-255" :max="255"></el-slider>
<input class="qb_v" type="text" v-model.number="inputContrastRange"> <input class="qb_v" type="text" v-model.number="inputContrastRange">
</div> </div>
</div> </div>
...@@ -326,7 +335,6 @@ ...@@ -326,7 +335,6 @@
</template> </template>
<script> <script>
import qs from "qs";
import { mapState } from "vuex"; import { mapState } from "vuex";
import MouseGesture from "./tzd_rotate.js"; import MouseGesture from "./tzd_rotate.js";
import "@/icons/direction.svg"; import "@/icons/direction.svg";
...@@ -334,6 +342,8 @@ import "@/icons/direction.svg"; ...@@ -334,6 +342,8 @@ import "@/icons/direction.svg";
export default { export default {
data () { data () {
return { return {
// 绿色角度方向(暂时不做)
greenDeg: 0,
// 是否点击了自动提取 // 是否点击了自动提取
isAutoTzd: false, isAutoTzd: false,
// 是否点击了返回 // 是否点击了返回
...@@ -606,12 +616,8 @@ export default { ...@@ -606,12 +616,8 @@ export default {
let self = this; let self = this;
var supportingFileAPI = !!(window.File && window.FileList && window.FileReader); var supportingFileAPI = !!(window.File && window.FileList && window.FileReader);
var rImageType = /data:(image\/.+);base64,/; var rImageType = /data:(image\/.+);base64,/;
var activeObjectId;
// Buttons // Buttons
var $btns = $(".menu-item");
var $btnsActivatable = $btns.filter(".activatable");
var $inputImage = $("#input-image-file");
var $btnDownload = $("#btn-download"); var $btnDownload = $("#btn-download");
var $btnUndo = $("#btn-undo"); var $btnUndo = $("#btn-undo");
...@@ -655,25 +661,6 @@ export default { ...@@ -655,25 +661,6 @@ export default {
imageEditor.clearUndoStack(); imageEditor.clearUndoStack();
}); });
// 标记点颜色选择器
// var BJDColorpicker = tui.colorPicker.create({
// container: $('#tui-brush-color-picker2')[0],
// color: '#E60012',
// preset: ['#E60012', '#FF6619', '#FFBB3B', '#08BD9E', '#1AE8F2', '#00AAFF', '#9E5FFF', '#055FE7'],
// usageStatistics: false
// });
// this.BJDColorpicker = BJDColorpicker
// Color picker for free drawing
// 笔刷颜色选择器
// var brushColorpicker = tui.colorPicker.create({
// container: $('#tui-brush-color-picker')[0],
// color: '#FFFD0F',
// preset: ['#FF4041', '#FF6619', '#FFBB3B', '#08BD9E', '#1AE8F2', '#00AAFF', '#9E5FFF', '#055FE7'],
// usageStatistics: false
// });
// 正片叠底颜色选择器 // 正片叠底颜色选择器
var multiplyColorpicker = tui.colorPicker.create({ var multiplyColorpicker = tui.colorPicker.create({
container: $("#tui-multiply-color-picker")[0], container: $("#tui-multiply-color-picker")[0],
...@@ -751,24 +738,6 @@ export default { ...@@ -751,24 +738,6 @@ export default {
} }
} }
function activateShapeMode () {
if (imageEditor.getDrawingMode() !== "SHAPE") {
imageEditor.stopDrawingMode();
imageEditor.startDrawingMode("SHAPE");
}
}
function activateIconMode () {
imageEditor.stopDrawingMode();
}
function activateTextMode () {
if (imageEditor.getDrawingMode() !== "TEXT") {
imageEditor.stopDrawingMode();
imageEditor.startDrawingMode("TEXT");
}
}
// Attach image editor custom events // Attach image editor custom events
imageEditor.on({ imageEditor.on({
objectAdded: function (objectProps) { objectAdded: function (objectProps) {
...@@ -778,7 +747,6 @@ export default { ...@@ -778,7 +747,6 @@ export default {
// self.tzdnumber = self.lines.length // self.tzdnumber = self.lines.length
} }
// self.historys.push(objectProps.type) // self.historys.push(objectProps.type)
//console.log(111);
}, },
undoStackChanged: function (length) { undoStackChanged: function (length) {
if (length) { if (length) {
...@@ -1327,6 +1295,11 @@ export default { ...@@ -1327,6 +1295,11 @@ export default {
}); });
} }
} }
// if (sessionStorage.getItem('greenDeg_' + self.seq)) {
// let greenDeg = sessionStorage.getItem('greenDeg_' + self.seq)
// console.log(greenDeg);
// $(".greendirection").css("transform", `rotate(${greenDeg}deg)`);
// }
}); });
console.log(self.tzdArr); console.log(self.tzdArr);
}); });
...@@ -1666,25 +1639,23 @@ export default { ...@@ -1666,25 +1639,23 @@ export default {
//cos //cos
let cos = heng / distance; let cos = heng / distance;
//角度 //角度
let deg = (Math.acos(cos) * 180) / Math.PI; self.deg = (Math.acos(cos) * 180) / Math.PI;
//根据象限判断 //根据象限判断
if (e.clientX >= this.originX && e.clientY <= this.originY) { if (e.clientX >= this.originX && e.clientY <= this.originY) {
deg = -deg; self.deg = -self.deg;
} else if (e.clientX <= this.originX && e.clientY >= this.originY) { } else if (e.clientX <= this.originX && e.clientY >= this.originY) {
deg = 90 + (90 - deg); self.deg = 90 + (90 - self.deg);
} else if (e.clientX <= this.originX && e.clientY <= this.originY) { } else if (e.clientX <= this.originX && e.clientY <= this.originY) {
deg = -(90 + (90 - deg)); self.deg = -(90 + (90 - self.deg));
} }
if (deg === NaN) { if (self.deg === NaN) {
deg = 0; self.deg = 0;
} }
// 给 obj 对象的 deg 赋值
obj.deg = deg
//console.log(self.startPlace, "原点 "); //console.log(self.startPlace, "原点 ");
if (deg) { if (self.deg) {
$("#tzd" + self.tzdId).css("transform", `rotate(${deg - self.startPlace}deg)`); $("#tzd" + self.tzdId).css("transform", `rotate(${self.deg - self.startPlace}deg)`);
} else { } else {
// //console.log("无效的移动"); // //console.log("无效的移动");
} }
...@@ -1705,12 +1676,12 @@ export default { ...@@ -1705,12 +1676,12 @@ export default {
// //console.log(e); // //console.log(e);
if (self.isHandTZD) { if (self.isHandTZD) {
if (e.which === 1) { if (e.which === 1) {
if (obj.deg) { if (self.deg) {
let objindex = self.tzdArr.findIndex((item) => { let objindex = self.tzdArr.findIndex((item) => {
return item.id == self.tzdId; return item.id == self.tzdId;
}); });
// self.$set(self.tzdArr[self.tzdId], 'angle', obj.deg) // self.$set(self.tzdArr[self.tzdId], 'angle', obj.deg)
self.tzdArr[objindex].angle = obj.deg - self.startPlace; self.tzdArr[objindex].angle = self.deg - self.startPlace;
} else { } else {
//console.log(self.tzdArr); //console.log(self.tzdArr);
//console.log(self.tzdId); //console.log(self.tzdId);
...@@ -1796,14 +1767,16 @@ export default { ...@@ -1796,14 +1767,16 @@ export default {
angle = -angle; angle = -angle;
} }
angle = self.preangle + angle; angle = self.preangle + angle;
if (angle >= 90) { if (angle >= 0) {
angle = 90; angle = 0;
} }
if (angle <= -90) { if (angle <= -180) {
angle = -90; angle = -180;
} }
//console.log(angle); //console.log(angle);
$(".greendirection").css("transform", `rotate(${angle}deg)`); $(".greendirection").css("transform", `rotate(${angle}deg)`);
self.greenDeg = angle
// sessionStorage.setItem('greenDeg_' + self.seq, self.greenDeg)
} }
} }
}); });
...@@ -1920,6 +1893,12 @@ export default { ...@@ -1920,6 +1893,12 @@ export default {
self.$store.commit("zwbj/setAutoTzdall", self.autoTzdArr); self.$store.commit("zwbj/setAutoTzdall", self.autoTzdArr);
// 将自动提取的特征点存入session中 // 将自动提取的特征点存入session中
sessionStorage.setItem(`auto${self.seq}`, JSON.stringify(self.autoTzdArr)); sessionStorage.setItem(`auto${self.seq}`, JSON.stringify(self.autoTzdArr));
// 给角度赋值
// self.greenDeg = res.data.zwfxTzfx
// sessionStorage.setItem('greenDeg_' + self.seq, self.greenDeg)
// document.getElementsByTagName("body")[0].style.setProperty("--directionRotate", self.greenDeg + "deg");
} else if (res.data.code == 4) { } else if (res.data.code == 4) {
self.$store.commit("zwbj/setAutoTzdall", []); self.$store.commit("zwbj/setAutoTzdall", []);
// 将自动提取的特征点存入session中 // 将自动提取的特征点存入session中
...@@ -2146,27 +2125,6 @@ export default { ...@@ -2146,27 +2125,6 @@ export default {
*/ */
async directionChange () { async directionChange () {
this.isdirection = !this.isdirection; this.isdirection = !this.isdirection;
if (this.isdirection) {
this.isHandTZD = false
let res = await this.$axios({
method: "get",
// url: "/api/traint/export/xml/trait/" + this.barcode + "/" + this.seq,
url: "/api/export/trait/xml/person/" + this.barcode + "/" + this.seq,
loading: false
});
//console.log(res);
if (res.data.code === 0) {
let deg = res.data.fpt5FingerMsg.zwfx_tzfx;
//console.log(5555);
if (this.isdirection) {
// 通过接口获取角度
document.getElementsByTagName("body")[0].style.setProperty("--directionRotate", deg + "deg");
}
} else {
this.$message.error('获取角度失败!')
}
}
}, },
/** /**
* @description: 特征点-手动 * @description: 特征点-手动
...@@ -2301,9 +2259,9 @@ export default { ...@@ -2301,9 +2259,9 @@ export default {
* @return {*} * @return {*}
*/ */
delPic () { delPic () {
let self = this;
this.isHandTZD = false; this.isHandTZD = false;
this.isdirection = false this.isdirection = false
let self = this;
this.isActive_clear = false; this.isActive_clear = false;
this.isShowClearDialog = false; this.isShowClearDialog = false;
this.imageEditor.clearObjects(); this.imageEditor.clearObjects();
...@@ -2316,6 +2274,12 @@ export default { ...@@ -2316,6 +2274,12 @@ export default {
$(".auto_tzdDom").remove(); $(".auto_tzdDom").remove();
this.$store.commit('zwbj/setTzdall', null) this.$store.commit('zwbj/setTzdall', null)
this.$store.commit('zwbj/setAutoTzdall', null) this.$store.commit('zwbj/setAutoTzdall', null)
sessionStorage.removeItem(self.seq)
sessionStorage.removeItem('auto' + self.seq)
// 清空绿色角度
// sessionStorage.removeItem('greenDeg_' + self.seq)
self.greenDeg = 0
self.historys.push("清空"); self.historys.push("清空");
this.$message.success("已清空!"); this.$message.success("已清空!");
...@@ -2832,7 +2796,8 @@ export default { ...@@ -2832,7 +2796,8 @@ export default {
// this.$store.commit('zwbj/setTzdall', self.tzdall) // this.$store.commit('zwbj/setTzdall', self.tzdall)
let fpt5TraitMinutiaList = { let fpt5TraitMinutiaList = {
fpt5TraitMinutiaList: self.tzdall, fpt5TraitMinutiaList: self.tzdall,
zwzwdm: self.seq > 9 ? self.seq : ("0" + self.seq) zwzwdm: self.seq > 9 ? self.seq : ("0" + self.seq),
// zwfxTzfx: JSON.parse(sessionStorage.getItem('greenDeg_' + self.seq))
}; };
//console.log(fpt5TraitMinutiaList); //console.log(fpt5TraitMinutiaList);
//console.log(qs.stringify(fpt5TraitMinutiaList)); //console.log(qs.stringify(fpt5TraitMinutiaList));
...@@ -2859,10 +2824,10 @@ export default { ...@@ -2859,10 +2824,10 @@ export default {
let allTZData = []; let allTZData = [];
//console.log("111"); //console.log("111");
// 防止在保存前直接设置为null // 防止在保存前直接设置为null
if(self.preTzdArr != null) { if (self.preTzdArr != null) {
sessionStorage.setItem(self.seq, JSON.stringify(self.preTzdArr)); sessionStorage.setItem(self.seq, JSON.stringify(self.preTzdArr));
} }
if(self.autopretzdall != null) { if (self.autopretzdall != null) {
sessionStorage.setItem(`auto${self.seq}`, JSON.stringify(self.autopretzdall)); sessionStorage.setItem(`auto${self.seq}`, JSON.stringify(self.autopretzdall));
} }
...@@ -2877,32 +2842,50 @@ export default { ...@@ -2877,32 +2842,50 @@ export default {
sessionArr.push(sessionStorage.getItem(sessionKeys[i])); sessionArr.push(sessionStorage.getItem(sessionKeys[i]));
for (var j = 0; j < sessionKeys.length; j++) { for (var j = 0; j < sessionKeys.length; j++) {
console.log(sessionKeys[j]); // console.log(sessionKeys[j]);
console.log(sessionKeys[i].substring(4, sessionKeys[i].length)); // console.log(sessionKeys[i]);
console.log("========================="); // console.log(sessionKeys[i].substring(4, sessionKeys[i].length));
// console.log("=========================");
if (sessionKeys[j] == sessionKeys[i].substring(4, sessionKeys[i].length)) { if (sessionKeys[j] == sessionKeys[i].substring(4, sessionKeys[i].length)) {
console.log(sessionKeys[j]); // console.log(sessionKeys[j]);
console.log(JSON.parse(sessionStorage.getItem(sessionKeys[j]))); // console.log(JSON.parse(sessionStorage.getItem(sessionKeys[j])));
console.log(JSON.parse(sessionStorage.getItem(sessionKeys[i]))); // console.log(JSON.parse(sessionStorage.getItem(sessionKeys[i])));
let arr; let arr;
if (JSON.parse(sessionStorage.getItem(sessionKeys[i])) == null && JSON.parse(sessionStorage.getItem(sessionKeys[j])) != null) { if (JSON.parse(sessionStorage.getItem(sessionKeys[i])) == null && JSON.parse(sessionStorage.getItem(sessionKeys[j])) != null) {
arr = JSON.parse(sessionStorage.getItem(sessionKeys[j])); arr = JSON.parse(sessionStorage.getItem(sessionKeys[j]));
} else if (JSON.parse(sessionStorage.getItem(sessionKeys[i])) != null && JSON.parse(sessionStorage.getItem(sessionKeys[j])) == null) { } else if (JSON.parse(sessionStorage.getItem(sessionKeys[i])) != null && JSON.parse(sessionStorage.getItem(sessionKeys[j])) == null) {
arr = JSON.parse(sessionStorage.getItem(sessionKeys[i])); arr = JSON.parse(sessionStorage.getItem(sessionKeys[i]));
} else { } else {
console.log(sessionStorage.getItem(sessionKeys[i])); // console.log(sessionStorage.getItem(sessionKeys[i]));
console.log(sessionStorage.getItem(sessionKeys[j])); // console.log(sessionStorage.getItem(sessionKeys[j]));
arr = JSON.parse(sessionStorage.getItem(sessionKeys[j])).concat(JSON.parse(sessionStorage.getItem(sessionKeys[i]))); arr = JSON.parse(sessionStorage.getItem(sessionKeys[j])).concat(JSON.parse(sessionStorage.getItem(sessionKeys[i])));
} }
allTZData.push({ allTZData.push({
fpt5TraitMinutiaList: arr, fpt5TraitMinutiaList: arr,
zwzwdm: sessionKeys[j] > 9 ? sessionKeys[j] : ("0" + sessionKeys[j]) zwzwdm: sessionKeys[j] > 9 ? sessionKeys[j] : ("0" + sessionKeys[j]),
// zwfxTzfx: 0
}); });
} }
} }
} }
} }
// for (var i = 0; i < sessionKeys.length; i++) {
// if(sessionKeys[i][0] === "g") {
// for (var k = 0; k < sessionKeys.length; k++) {
// if(sessionKeys[k].substring(9, sessionKeys[4].length) == sessionKeys[i].substring(9, sessionKeys[i].length)) {
// // console.log(Number(sessionKeys[k].substring(9, sessionKeys[4].length)));
// if(allTZData[Number(sessionKeys[k].substring(9, sessionKeys[4].length))] != undefined) {
// // console.log(allTZData[Number(sessionKeys[k].substring(9, sessionKeys[4].length))]);
// // console.log(sessionStorage.getItem(sessionKeys[k]));
// // console.log(sessionStorage.getItem(sessionKeys[Number(sessionKeys[k].substring(9, sessionKeys[4].length))]));
// self.$set(allTZData[Number(sessionKeys[k].substring(9, sessionKeys[4].length))], 'zwfxTzfx', sessionStorage.getItem(sessionKeys[k]))
// }
// }
// }
// }
// }
allTZData.forEach(item => { allTZData.forEach(item => {
item.fpt5TraitMinutiaList.forEach((tzd) => { item.fpt5TraitMinutiaList.forEach((tzd) => {
delete tzd.id; delete tzd.id;
...@@ -2910,6 +2893,8 @@ export default { ...@@ -2910,6 +2893,8 @@ export default {
}); });
}); });
console.log(allTZData);
this.$axios({ this.$axios({
method: "post", method: "post",
url: "/api/upload/trait/allperson?barcode=" + self.barcode, url: "/api/upload/trait/allperson?barcode=" + self.barcode,
...@@ -3844,6 +3829,12 @@ export default { ...@@ -3844,6 +3829,12 @@ export default {
} }
}, },
beforeDestroy () { beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.off('ryzwbjImage');
this.$bus.off('ryzwbjType');
this.$bus.off('ryzwbjTDZ');
this.$bus.off('zwType');
let sessionArr = []; let sessionArr = [];
var sessionKeys = Object.keys(sessionStorage); var sessionKeys = Object.keys(sessionStorage);
for (var i = 0; i < sessionKeys.length; i++) { for (var i = 0; i < sessionKeys.length; i++) {
......
...@@ -9,6 +9,10 @@ $BJDcolor: var(--BJDcolor, #e60012); // #e60012 ...@@ -9,6 +9,10 @@ $BJDcolor: var(--BJDcolor, #e60012); // #e60012
// 方向旋转角度 // 方向旋转角度
$directionRotate: var(--directionRotate, 0deg); $directionRotate: var(--directionRotate, 0deg);
// canvas的宽度
$canvasHeight: var(--canvasHeight, 640px);
$canvasWidth: var(--canvasWidth, 640px);
.imageBox { .imageBox {
display: flex; display: flex;
...@@ -873,8 +877,8 @@ $directionRotate: var(--directionRotate, 0deg); ...@@ -873,8 +877,8 @@ $directionRotate: var(--directionRotate, 0deg);
height: 180px; height: 180px;
} }
img { img {
width: auto; width: $canvasWidth;
height: 180px; height: $canvasHeight;
} }
.blc_small { .blc_small {
...@@ -947,8 +951,10 @@ $directionRotate: var(--directionRotate, 0deg); ...@@ -947,8 +951,10 @@ $directionRotate: var(--directionRotate, 0deg);
/deep/ .upper-canvas { /deep/ .upper-canvas {
max-height: 640px !important; max-height: 640px !important;
max-width: 640px !important; max-width: 640px !important;
height: 100%; height: $canvasHeight !important;
width: auto !important; width: $canvasWidth !important;
// height: auto !important;
// width: auto !important;
// display: flex !important; // display: flex !important;
// justify-content: center !important; // justify-content: center !important;
// align-items: center !important; // align-items: center !important;
...@@ -2510,11 +2516,27 @@ $directionRotate: var(--directionRotate, 0deg); ...@@ -2510,11 +2516,27 @@ $directionRotate: var(--directionRotate, 0deg);
align-items: center; align-items: center;
justify-content: center; justify-content: center;
.yxhz-left {
cursor: pointer;
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
}
.yxhz-right {
cursor: pointer;
width: 23px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
}
.zyhz-left { .zyhz-left {
cursor: pointer; cursor: pointer;
width: 25px; width: 25px;
height: 25px; height: 25px;
margin-right: 10px;
} }
.zyhz-right { .zyhz-right {
...@@ -3189,14 +3211,35 @@ $directionRotate: var(--directionRotate, 0deg); ...@@ -3189,14 +3211,35 @@ $directionRotate: var(--directionRotate, 0deg);
color: #ffffff; color: #ffffff;
} }
.blend, .blend {
.multiply {
z-index: 10000; z-index: 10000;
background: #ffffff; background: #ffffff;
position: absolute; position: absolute;
top: 100px; top: 100px;
right: 35px; right: 35px;
} }
.multiply {
z-index: 10000;
background: #ffffff;
position: absolute;
top: 100px;
right: 85px;
}
.disabled {
width: 64px;
height: 32px;
background: #ECEDF1;
border-radius: 4px;
font-size: 14px;
font-family: MicrosoftYaHei;
color: #AEAFB4;
display: flex;
justify-content: center;
align-items: center;
margin-right: 16px;
margin-bottom: 16px;
}
/deep/ .el-slider__runway { /deep/ .el-slider__runway {
width: 142px; width: 142px;
...@@ -3351,8 +3394,9 @@ $directionRotate: var(--directionRotate, 0deg); ...@@ -3351,8 +3394,9 @@ $directionRotate: var(--directionRotate, 0deg);
} }
.color-filter { .color-filter {
z-index: 10000;
position: absolute; position: absolute;
top: 180px; top: 170px;
left: 0; left: 0;
background-color: #fff; background-color: #fff;
padding: 5px 10px; padding: 5px 10px;
......
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-10-22 11:36:10 * @Date: 2021-10-22 11:36:10
* @LastEditTime: 2021-11-29 22:40:47 * @LastEditTime: 2021-11-30 21:48:59
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\imageEd.vue * @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\imageEd.vue
...@@ -167,9 +167,11 @@ ...@@ -167,9 +167,11 @@
</div> </div>
<div class="line2"></div> <div class="line2"></div>
<div class="btn2"> <div class="btn2">
<el-tooltip class="item" effect="dark" content="比例尺" :open-delay="500">
<div class="blcbtn" :class="{featuresActive: rule}" @click.stop="addRule('dr')"> <div class="blcbtn" :class="{featuresActive: rule}" @click.stop="addRule('dr')">
<img src="@/assets/img/rybj/rule.svg" alt="" /> <img src="@/assets/img/rybj/rule.svg" alt="" />
</div> </div>
</el-tooltip>
<div class="blcbtn-options" v-show="rule"> <div class="blcbtn-options" v-show="rule">
<div class="blcbtn-head"> <div class="blcbtn-head">
<div class="head-title">比例尺</div> <div class="head-title">比例尺</div>
...@@ -193,13 +195,17 @@ ...@@ -193,13 +195,17 @@
<div class="cancel" @click.stop="rule = false">取消</div> <div class="cancel" @click.stop="rule = false">取消</div>
</div> </div>
</div> </div>
<el-tooltip class="item" effect="dark" content="图像比例验证" :open-delay="500">
<div class="txblyz" :class="{featuresActive: txblyz_active}" @click="txblyz_active=!txblyz_active"> <div class="txblyz" :class="{featuresActive: txblyz_active}" @click="txblyz_active=!txblyz_active">
<img src="@/assets/img/rybj/txblyz.svg" alt="" /> <img src="@/assets/img/rybj/txblyz.svg" alt="" />
</div> </div>
</el-tooltip>
<!-- 旋转 --> <!-- 旋转 -->
<el-tooltip class="item" effect="dark" content="旋转" :open-delay="500">
<div class="rotate" :class="{featuresActive: isRotateOptions_dr}" @click.stop="rotateChange_dr"> <div class="rotate" :class="{featuresActive: isRotateOptions_dr}" @click.stop="rotateChange_dr">
<img src="@/assets/img/rybj/rotate.svg" alt="" /> <img src="@/assets/img/rybj/rotate.svg" alt="" />
</div> </div>
</el-tooltip>
<div class="rotateOptions" v-show="isRotateOptions_dr" @click.stop> <div class="rotateOptions" v-show="isRotateOptions_dr" @click.stop>
<!-- <div class="rotateOptions" v-show="true"> --> <!-- <div class="rotateOptions" v-show="true"> -->
<div class="top"> <div class="top">
...@@ -318,10 +324,17 @@ ...@@ -318,10 +324,17 @@
</div> </div>
<div class="center-content"> <div class="center-content">
<div class="options-btns"> <div class="options-btns">
<div class="zyhz" :class="{featuresActive: isShowzyhzOptions}" @click.stop="zyhzOptionsChange"> <el-tooltip class="item" effect="dark" content="圆形/自由绘制" :open-delay="500">
<img src="@/assets/img/rybj/zyhz.svg" class="zyhz-left" alt="" /> <div class="zyhz">
<div class="yxhz-left" :class="{featuresActive: isZyhzFlag}" @click="openZyhz">
<img src="@/assets/img/rybj/zyhz.svg" class="zyhz-left" alt="" v-show="iszyhz" />
<img src="@/assets/img/rybj/yxhz.svg" class="zyhz-left" alt="" v-show="isyxhz" />
</div>
<div class="yxhz-right" @click.stop="zyhzOptionsChange">
<img src="@/assets/img/rybj/arrow_d.png" class="zyhz-right" alt="" /> <img src="@/assets/img/rybj/arrow_d.png" class="zyhz-right" alt="" />
</div> </div>
</div>
</el-tooltip>
<div class="zyhz-options" v-show="isShowzyhzOptions"> <div class="zyhz-options" v-show="isShowzyhzOptions">
<div class="zyhz-options-item" @click.stop="changezyhz"> <div class="zyhz-options-item" @click.stop="changezyhz">
<div class="item-selected"> <div class="item-selected">
...@@ -336,19 +349,27 @@ ...@@ -336,19 +349,27 @@
<div class="item-name">圆形绘制</div> <div class="item-name">圆形绘制</div>
</div> </div>
</div> </div>
<el-tooltip class="item" effect="dark" content="特征点" :open-delay="500">
<div class="tzd" :class="{featuresActive: isHandTZD}" @click.stop="tzdChange"> <div class="tzd" :class="{featuresActive: isHandTZD}" @click.stop="tzdChange">
<img src="@/assets/img/zcedit/features1.svg" alt="" /> <img src="@/assets/img/zcedit/features1.svg" alt="" />
<div class="number">{{ tzdnumber }}</div> <div class="number">{{ tzdnumber }}</div>
</div> </div>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="自动提取特征" :open-delay="500">
<div class="rule" v-show="isAutoTzd" @mouseup="isAutoTzd=false;"> <div class="rule" v-show="isAutoTzd" @mouseup="isAutoTzd=false;">
<img src="@/assets/img/rybj/dp.svg" alt="" /> <img src="@/assets/img/rybj/dp.svg" alt="" />
</div> </div>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="自动提取特征" :open-delay="500">
<div class="rule-d" @mousedown="getAutoTzd(true)" v-show="!isAutoTzd"> <div class="rule-d" @mousedown="getAutoTzd(true)" v-show="!isAutoTzd">
<img src="@/assets/img/rybj/dp.svg" alt="" /> <img src="@/assets/img/rybj/dp.svg" alt="" />
</div> </div>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="旋转" :open-delay="500">
<div class="rotate" :class="{featuresActive: isRotateOptions}" @click.stop="rotateChange"> <div class="rotate" :class="{featuresActive: isRotateOptions}" @click.stop="rotateChange">
<img src="@/assets/img/rybj/rotate.svg" alt="" /> <img src="@/assets/img/rybj/rotate.svg" alt="" />
</div> </div>
</el-tooltip>
<div class="rotateOptions" v-show="isRotateOptions" @click.stop> <div class="rotateOptions" v-show="isRotateOptions" @click.stop>
<!-- <div class="rotateOptions" v-show="true"> --> <!-- <div class="rotateOptions" v-show="true"> -->
<div class="top"> <div class="top">
...@@ -406,9 +427,11 @@ ...@@ -406,9 +427,11 @@
</div> </div>
</div> </div>
<!--图像编辑部分比例尺--> <!--图像编辑部分比例尺-->
<el-tooltip class="item" effect="dark" content="比例尺" :open-delay="500">
<div class="blcbtn" :class="{featuresActive: rule_bj}" @click.stop="addRule('bj')"> <div class="blcbtn" :class="{featuresActive: rule_bj}" @click.stop="addRule('bj')">
<img src="@/assets/img/rybj/rule.svg" alt="" /> <img src="@/assets/img/rybj/rule.svg" alt="" />
</div> </div>
</el-tooltip>
<div class="blcbtn-options" v-show="rule_bj"> <div class="blcbtn-options" v-show="rule_bj">
<div class="blcbtn-head"> <div class="blcbtn-head">
<div class="head-title">比例尺</div> <div class="head-title">比例尺</div>
...@@ -469,16 +492,16 @@ ...@@ -469,16 +492,16 @@
<div class="options-bottom"> <div class="options-bottom">
<div class="options-bottom-title">图像调整</div> <div class="options-bottom-title">图像调整</div>
<div class="options-bottom-btns"> <div class="options-bottom-btns">
<div class="btn" :class="{ grayActive: isGrayActive }" @click.stop="changeGray"> <!-- <div class="btn" :class="{ grayActive: isGrayActive }" @click.stop="changeGray">
灰度 灰度
</div> </div> -->
<div class="btn" :class="{ vintageActive: isVintageActive }" @click.stop="changeVintage"> <div class="btn" :class="{ vintageActive: isVintageActive }" @click.stop="changeVintage">
棕褐色 棕褐色
</div> </div>
<div class="btn" :class="{ horseshoeMirrorActive: isHorseshoeMirrorActive }" @click.stop="changeHorseshoeMirror"> <div class="disabled" :class="{ horseshoeMirrorActive: isHorseshoeMirrorActive }">
马蹄镜 马蹄镜
</div> </div>
<div class="btn" :class="{ equalizationActive: isEqualizationActive }" @click.stop="changeEqualization"> <div class="disabled" :class="{ equalizationActive: isEqualizationActive }">
均衡化 均衡化
</div> </div>
<div class="btn" :class="{ sharpenActive: isSharpenActive }" @click.stop="changeSharpen"> <div class="btn" :class="{ sharpenActive: isSharpenActive }" @click.stop="changeSharpen">
...@@ -559,7 +582,7 @@ ...@@ -559,7 +582,7 @@
<div class="content"> <div class="content">
<!-- <input class="range-narrow" id="input-range-contrast-value" type="range" min="0" <!-- <input class="range-narrow" id="input-range-contrast-value" type="range" min="0"
:value="inputContrastRange" max="255" />--> :value="inputContrastRange" max="255" />-->
<el-slider v-model.number="inputContrastRange" id="input-range-contrast-value" :min="0" :max="255"></el-slider> <el-slider v-model.number="inputContrastRange" id="input-range-contrast-value" :min="-255" :max="255"></el-slider>
<input class="qb_v" type="text" v-model.number="inputContrastRange" /> <input class="qb_v" type="text" v-model.number="inputContrastRange" />
</div> </div>
</div> </div>
...@@ -583,6 +606,8 @@ import MouseGesture from "./tzd_rotate.js"; ...@@ -583,6 +606,8 @@ import MouseGesture from "./tzd_rotate.js";
export default { export default {
data () { data () {
return { return {
// 是否开启了自由绘制
isZyhzFlag: false,
// 图像编辑状态,保存之后改为已处理 // 图像编辑状态,保存之后改为已处理
txbj_type: '未处理', txbj_type: '未处理',
// 是否隐藏图像导入 // 是否隐藏图像导入
...@@ -678,7 +703,7 @@ export default { ...@@ -678,7 +703,7 @@ export default {
isShowSaveTypeOptions: false, isShowSaveTypeOptions: false,
isZYQY: true, isZYQY: true,
isTZ: true, isTZ: true,
iszyhz: false, iszyhz: true,
isyxhz: false, isyxhz: false,
isShowzyhzOptions: false, isShowzyhzOptions: false,
tzdnumber: 0, tzdnumber: 0,
...@@ -778,11 +803,11 @@ export default { ...@@ -778,11 +803,11 @@ export default {
// 是否选择了去除白色 // 是否选择了去除白色
isRemoveWhiteActive: false, isRemoveWhiteActive: false,
// 去白值 // 去白值
inputRemoveWhiteRange: 10, inputRemoveWhiteRange: 0,
// 对比度 // 对比度
inputContrastRange: 20, inputContrastRange: 0,
// 去白值--target // 去白值--target
inputRemoveWhiteRange2: 10, inputRemoveWhiteRange2: 0,
// 是否展示去白下拉框 // 是否展示去白下拉框
optionsRemoveWhite: false, optionsRemoveWhite: false,
// 滤色器选项框 // 滤色器选项框
...@@ -790,9 +815,9 @@ export default { ...@@ -790,9 +815,9 @@ export default {
// 是否选择了滤色器 // 是否选择了滤色器
isColorFilterActive: false, isColorFilterActive: false,
// 滤色器色值 // 滤色器色值
inputColorFilterRange: 45, inputColorFilterRange: 0,
// 滤色器色值---target // 滤色器色值---target
inputColorFilterRange2: 45, inputColorFilterRange2: 0,
// 是否选择了正片叠底 // 是否选择了正片叠底
isMultiplyActive: false, isMultiplyActive: false,
// 是否展示正片叠底框 // 是否展示正片叠底框
...@@ -804,9 +829,9 @@ export default { ...@@ -804,9 +829,9 @@ export default {
// 是否选择了亮度 // 是否选择了亮度
isBrightnessActive: false, isBrightnessActive: false,
// 亮度 // 亮度
inputBrightnessRange: 100, inputBrightnessRange: 0,
// 亮度 --- target // 亮度 --- target
inputBrightnessRange2: 100, inputBrightnessRange2: 0,
// 是否展示亮度弹窗 // 是否展示亮度弹窗
optionsBrightness: false, optionsBrightness: false,
// 源数据/目标数据切换 // 源数据/目标数据切换
...@@ -1325,6 +1350,10 @@ export default { ...@@ -1325,6 +1350,10 @@ export default {
self.isX = false; self.isX = false;
self.isY = false; self.isY = false;
self.isReset = true; self.isReset = true;
self.tzdDrawingLeft = 0
self.tzdDrawingTop = 0
self.tzdDrawing_left = 0
self.tzdDrawing_top = 0
// 旋转角度同样恢复到0 // 旋转角度同样恢复到0
self.inputRotationRange = 0; self.inputRotationRange = 0;
// 事件不能连续重复执行,需要缓存时间 // 事件不能连续重复执行,需要缓存时间
...@@ -2094,6 +2123,26 @@ export default { ...@@ -2094,6 +2123,26 @@ export default {
self.newHeight = result.newHeight; self.newHeight = result.newHeight;
self.newWidth = result.newWidth; self.newWidth = result.newWidth;
console.log((512 * 640) / self.newHeight); console.log((512 * 640) / self.newHeight);
if(self.newHeight >= self.newWidth) {
console.log($(".upper-canvas")[0]);
document.getElementsByTagName('body')[0].style.setProperty('--canvasHeight', '100%');
document.getElementsByTagName('body')[0].style.setProperty('--canvasWidth', 'auto');
// $(".upper-canvas")[0].css('height', '100% !important')
// $(".upper-canvas")[0].css('width', 'auto')
// $(".lower-canvas")[0].css('height', '100% !important')
// $(".lower-canvas")[0].css('width', 'auto')
// $(".tui-image-editor-canvas-container").css('height', '100% !important')
// $(".tui-image-editor-canvas-container").css('width', 'auto')
} else {
document.getElementsByTagName('body')[0].style.setProperty('--canvasWidth', '100%');
document.getElementsByTagName('body')[0].style.setProperty('--canvasHeight', 'auto');
// $(".upper-canvas")[0].css('width', '100% !important')
// $(".upper-canvas")[0].css('height', 'auto')
// $(".lower-canvas")[0].css('width', '100% !important')
// $(".lower-canvas")[0].css('height', 'auto')
// $(".tui-image-editor-canvas-container").css('width', '100% !important')
// $(".tui-image-editor-canvas-container").css('height', 'auto')
}
$(".blc").css( $(".blc").css(
"width", "width",
...@@ -2381,10 +2430,11 @@ export default { ...@@ -2381,10 +2430,11 @@ export default {
} }
// 开启圆形绘制 // 开启圆形绘制
if (e.which === 1) { if (e.which === 1) {
if (self.isSelectedCirclePaint) { if (self.isZyhzFlag && self.isyxhz) {
if (e.target.className == "td_circle") { // 可以在圆里再画圆
return; // if (e.target.className == "td_circle") {
} // return;
// }
let src = { let src = {
x: (e.pageX - $(".tzdDrawing_2").offset().left) / self.zoomLevel, x: (e.pageX - $(".tzdDrawing_2").offset().left) / self.zoomLevel,
...@@ -2550,11 +2600,12 @@ export default { ...@@ -2550,11 +2600,12 @@ export default {
// $('.tzdDrawing').css('left', `${originleft + (x2 - x1)}px`) // $('.tzdDrawing').css('left', `${originleft + (x2 - x1)}px`)
// $('.tzdDrawing').css('top', `${origintop + (y2 - y1)}px`) // $('.tzdDrawing').css('top', `${origintop + (y2 - y1)}px`)
// $('.tzdDrawing').css('transform', `translate(${x2 - x1}px,${y2 - y1}px)`) // $('.tzdDrawing').css('transform', `translate(${x2 - x1}px,${y2 - y1}px)`)
let canvasImage = imageEditor._graphics.getCanvasImage();
console.log(Number(self.tzdDrawingLeft) + (x2 - x1)); console.log(Number(self.tzdDrawingLeft) + (x2 - x1));
$(".tzdDrawing").css( $(".tzdDrawing").css(
"transform", "transform",
`translate(${Number(self.tzdDrawingLeft) + (x2 - x1)}px,${Number(self.tzdDrawingTop) + (y2 - y1) `translate(${Number(self.tzdDrawingLeft) + (x2 - x1)}px,${Number(self.tzdDrawingTop) + (y2 - y1)
}px) scale(${self.zoomLevel})` }px) rotate(${canvasImage.angle}deg) scale(${self.zoomLevel})`
); );
$(".tzdDrawing_2").css( $(".tzdDrawing_2").css(
...@@ -2694,26 +2745,23 @@ export default { ...@@ -2694,26 +2745,23 @@ export default {
//cos //cos
let cos = heng / distance; let cos = heng / distance;
//角度 //角度
let deg = (Math.acos(cos) * 180) / Math.PI; self.deg = (Math.acos(cos) * 180) / Math.PI;
//根据象限判断 //根据象限判断
if (e.clientX >= this.originX && e.clientY <= this.originY) { if (e.clientX >= this.originX && e.clientY <= this.originY) {
deg = -deg; self.deg = -self.deg;
} else if (e.clientX <= this.originX && e.clientY >= this.originY) { } else if (e.clientX <= this.originX && e.clientY >= this.originY) {
deg = 90 + (90 - deg); self.deg = 90 + (90 - self.deg);
} else if (e.clientX <= this.originX && e.clientY <= this.originY) { } else if (e.clientX <= this.originX && e.clientY <= this.originY) {
deg = -(90 + (90 - deg)); self.deg = -(90 + (90 - self.deg));
} }
if (deg === NaN) { if (self.deg === NaN) {
deg = 0; self.deg = 0;
} }
// 给 obj 对象的 deg 赋值
// TODO
obj.deg = deg
// console.log(self.startPlace, "原点 "); // console.log(self.startPlace, "原点 ");
if (deg) { if (self.deg) {
$("#tzd" + self.tzdId).css("transform", `rotate(${deg - self.startPlace}deg)`); $("#tzd" + self.tzdId).css("transform", `rotate(${self.deg - self.startPlace}deg)`);
// obj.deg = deg - self.startPlace; // obj.deg = deg - self.startPlace;
} else { } else {
// console.log("无效的移动"); // console.log("无效的移动");
...@@ -2721,7 +2769,7 @@ export default { ...@@ -2721,7 +2769,7 @@ export default {
} }
} }
// 开启圆形绘制 // 开启圆形绘制
if (self.isSelectedCirclePaint) { if (self.isZyhzFlag && self.isyxhz) {
if (isDrawing) { if (isDrawing) {
// 转换坐标 // 转换坐标
let src = { let src = {
...@@ -2816,12 +2864,12 @@ export default { ...@@ -2816,12 +2864,12 @@ export default {
// console.log(e); // console.log(e);
if (self.isHandTZD) { if (self.isHandTZD) {
if (e.which === 1) { if (e.which === 1) {
if (obj.deg) { if (self.deg) {
let objindex = self.tzdArr.findIndex((item) => { let objindex = self.tzdArr.findIndex((item) => {
return item.id == self.tzdId; return item.id == self.tzdId;
}); });
// self.$set(self.tzdArr[self.tzdId], 'angle', obj.deg) // self.$set(self.tzdArr[self.tzdId], 'angle', obj.deg)
self.tzdArr[objindex].angle = obj.deg - self.startPlace; self.tzdArr[objindex].angle = self.deg - self.startPlace;
} else { } else {
console.log(self.tzdArr); console.log(self.tzdArr);
console.log(self.tzdId); console.log(self.tzdId);
...@@ -2855,10 +2903,10 @@ export default { ...@@ -2855,10 +2903,10 @@ export default {
} }
} }
// 开启圆形绘制 // 开启圆形绘制
if (self.isSelectedCirclePaint) { if (self.isZyhzFlag && self.isyxhz) {
// 开启圆形绘制 // 开启圆形绘制
if (e.which === 1) { if (e.which === 1) {
if (self.isSelectedCirclePaint) { if (self.isZyhzFlag && self.isyxhz) {
/*console.log(e); /*console.log(e);
let circleid = e.target.id.substring(6, e.target.id.length); let circleid = e.target.id.substring(6, e.target.id.length);
console.log(circleid);*/ console.log(circleid);*/
...@@ -2945,7 +2993,7 @@ export default { ...@@ -2945,7 +2993,7 @@ export default {
$(".canvas-container").mousedown(function (e) { $(".canvas-container").mousedown(function (e) {
e.stopPropagation() e.stopPropagation()
if (self.isSelectedFreePaint) { if (self.iszyhz && self.isZyhzFlag) {
// console.log(e); // console.log(e);
// 鼠标左击 // 鼠标左击
if (e.which === 1) { if (e.which === 1) {
...@@ -3647,9 +3695,12 @@ export default { ...@@ -3647,9 +3695,12 @@ export default {
data: JSON.stringify(tj_data) data: JSON.stringify(tj_data)
}).then(res => { }).then(res => {
console.log(res); console.log(res);
if(res.data.code === 0) {
self.$message.success('保存入库成功!')
self.$bus.emit('updateList')
}
}) })
// 转8位bmp格式图片 // 转8位bmp格式图片
/*let canvas_imgSave = document.querySelector('.tui-image-editor-canvas-container .lower-canvas'); /*let canvas_imgSave = document.querySelector('.tui-image-editor-canvas-container .lower-canvas');
const grey = new Bmp(Bmp.GREY, canvas_imgSave); const grey = new Bmp(Bmp.GREY, canvas_imgSave);
...@@ -3705,6 +3756,7 @@ export default { ...@@ -3705,6 +3756,7 @@ export default {
* @return {*} * @return {*}
*/ */
blcConfirm (type) { blcConfirm (type) {
$(".rule_line").css("z-index", "1");
this.calcChange(type); this.calcChange(type);
}, },
/** /**
...@@ -3784,14 +3836,14 @@ export default { ...@@ -3784,14 +3836,14 @@ export default {
if (type === 'dr') { if (type === 'dr') {
this.rule = !this.rule; this.rule = !this.rule;
if (this.rule) { if (this.rule) {
$(".rule_line").css("z-index", "9999"); $(".rule_line").css("z-index", "999999");
} else { } else {
$(".rule_line").css("z-index", "1"); $(".rule_line").css("z-index", "1");
} }
} else { } else {
this.rule_bj = !this.rule_bj; this.rule_bj = !this.rule_bj;
if (this.rule_bj) { if (this.rule_bj) {
$(".rule_line").css("z-index", "9999"); $(".rule_line").css("z-index", "999999");
} else { } else {
$(".rule_line").css("z-index", "1"); $(".rule_line").css("z-index", "1");
} }
...@@ -3830,10 +3882,9 @@ export default { ...@@ -3830,10 +3882,9 @@ export default {
$(".drag").css("background", "rgba(5, 95, 231, 0.05)"); $(".drag").css("background", "rgba(5, 95, 231, 0.05)");
// 自由绘制和圆形绘制 // 自由绘制和圆形绘制
self.iszyhz = false; self.isZyhzFlag = false
self.isyxhz = false;
self.isShowzyhzOptions = false; self.isShowzyhzOptions = false;
self.isSelectedCirclePaint = false; self.isZyhzFlag = false;
self.isSelectedFreePaint = false; self.isSelectedFreePaint = false;
} else { } else {
$(".tzdDrawing").css("z-index", "99"); $(".tzdDrawing").css("z-index", "99");
...@@ -4336,6 +4387,7 @@ export default { ...@@ -4336,6 +4387,7 @@ export default {
* 清除所有 * 清除所有
*/ */
clearALL () { clearALL () {
let self = this
this.$store.commit('zwbj/setTzdall', null); this.$store.commit('zwbj/setTzdall', null);
this.$store.commit('zwbj/setAutoTzdall', null); this.$store.commit('zwbj/setAutoTzdall', null);
this.$store.commit('zwbj/setZyhz', null); this.$store.commit('zwbj/setZyhz', null);
...@@ -4343,6 +4395,11 @@ export default { ...@@ -4343,6 +4395,11 @@ export default {
this.$store.commit('zwbj/setAutoYxhz', null); this.$store.commit('zwbj/setAutoYxhz', null);
this.$store.commit('zwbj/setAutoZyhz', null); this.$store.commit('zwbj/setAutoZyhz', null);
sessionStorage.removeItem(self.seq)
sessionStorage.removeItem('auto_yxhz_'+self.seq)
sessionStorage.removeItem('auto_zyhz_'+self.seq)
sessionStorage.removeItem('auto_tzdDom_'+self.seq)
// 特征点 // 特征点
self.autoTzdArr = [] self.autoTzdArr = []
self.tzdall = [] self.tzdall = []
...@@ -5067,7 +5124,7 @@ export default { ...@@ -5067,7 +5124,7 @@ export default {
for (var i = 0; i < sessionKeys.length; i++) { for (var i = 0; i < sessionKeys.length; i++) {
//可以对key 进行分析从而决定是否要删除sessionStorage 里的缓存 //可以对key 进行分析从而决定是否要删除sessionStorage 里的缓存
console.log(sessionKeys[i], sessionStorage.getItem(sessionKeys[i])); // console.log(sessionKeys[i], sessionStorage.getItem(sessionKeys[i]));
// 去掉auto // 去掉auto
if (sessionKeys[i][0] === "a") { if (sessionKeys[i][0] === "a") {
for (var j = 0; j < sessionKeys.length; j++) { for (var j = 0; j < sessionKeys.length; j++) {
...@@ -5631,6 +5688,7 @@ export default { ...@@ -5631,6 +5688,7 @@ export default {
* @return {*} * @return {*}
*/ */
changeyxhz () { changeyxhz () {
if(this.isyxhz) return
this.iszyhz = false; this.iszyhz = false;
this.isyxhz = !this.isyxhz; this.isyxhz = !this.isyxhz;
this.isShowzyhzOptions = false; this.isShowzyhzOptions = false;
...@@ -5647,6 +5705,7 @@ export default { ...@@ -5647,6 +5705,7 @@ export default {
* @return {*} * @return {*}
*/ */
changezyhz () { changezyhz () {
if(this.iszyhz) return
this.iszyhz = !this.iszyhz; this.iszyhz = !this.iszyhz;
this.isyxhz = false; this.isyxhz = false;
this.isShowzyhzOptions = false; this.isShowzyhzOptions = false;
...@@ -5657,6 +5716,12 @@ export default { ...@@ -5657,6 +5716,12 @@ export default {
$(".tzdDrawing").css("z-index", 999); $(".tzdDrawing").css("z-index", 999);
}, },
/** /**
* 开启圆形绘制或自由绘制
*/
openZyhz() {
this.isZyhzFlag = !this.isZyhzFlag
},
/**
* @description: 开启/关闭自由绘制下拉框 * @description: 开启/关闭自由绘制下拉框
* @param {*} * @param {*}
* @return {*} * @return {*}
...@@ -6362,11 +6427,17 @@ export default { ...@@ -6362,11 +6427,17 @@ export default {
} }
}, },
beforeDestroy () { beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.off('ajzwbjImage');
this.$bus.off('ajzwbjType');
this.$bus.off('changImageEdit');
this.$bus.off('zwType');
let sessionArr = []; let sessionArr = [];
var sessionKeys = Object.keys(sessionStorage); var sessionKeys = Object.keys(sessionStorage);
for (var i = 0; i < sessionKeys.length; i++) { for (var i = 0; i < sessionKeys.length; i++) {
//可以对key 进行分析从而决定是否要删除sessionStorage 里的缓存 //可以对key 进行分析从而决定是否要删除sessionStorage 里的缓存
console.log(sessionKeys[i], sessionStorage.getItem(sessionKeys[i])); // console.log(sessionKeys[i], sessionStorage.getItem(sessionKeys[i]));
if (sessionKeys[i].substring(0, 11) == "auto_tzdDom") { if (sessionKeys[i].substring(0, 11) == "auto_tzdDom") {
sessionArr.push(sessionStorage.getItem(sessionKeys[i])); sessionArr.push(sessionStorage.getItem(sessionKeys[i]));
} }
......
<template> <template>
<el-drawer <el-drawer size="50%" class="rydaxx-drawer" :modal="false" @close="closeDrawer" :append-to-body="true" :modal-append-to-body="false" :visible.sync="drawer" :with-header="false">
size="50%"
class="rydaxx-drawer"
:modal="false"
@close="closeDrawer"
:append-to-body="true"
:modal-append-to-body="false"
:visible.sync="drawer"
:with-header="false">
<div class="header"> <div class="header">
<div class="header-title">人员档案信息</div> <div class="header-title">人员档案信息</div>
<div class="header-close" @click="closeDrawer"> <div class="header-close" @click="closeDrawer">
...@@ -33,18 +25,11 @@ ...@@ -33,18 +25,11 @@
</el-form-item> </el-form-item>
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="采集信息原因:" prop="cjxxyy"> <el-form-item label="采集信息原因:" prop="cjxxyydm">
<SelectCode <SelectCode codeUrl="/api/code/cjxxyydm" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="cjxxyydm"></SelectCode>
codeUrl="/api/code/cjxxyydm"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="cjxxyy"
></SelectCode>
</el-form-item> </el-form-item>
<el-form-item label="指掌纹卡编号:" prop="zzwkbh"> <el-form-item label="指掌纹卡编号:" prop="zzhwkbh">
<el-input placeholder="请输入指掌纹卡编号" v-model="ruleForm.zzwkbh" maxlength="23" show-word-limit></el-input> <el-input placeholder="请输入指掌纹卡编号" v-model="ruleForm.zzhwkbh" maxlength="23" show-word-limit></el-input>
</el-form-item> </el-form-item>
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
...@@ -70,60 +55,35 @@ ...@@ -70,60 +55,35 @@
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="性别:" prop="xbdm"> <el-form-item label="性别:" prop="xbdm">
<SelectCode <SelectCode codeUrl="/api/code/sex" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="xbdm"></SelectCode>
codeUrl="/api/code/sex"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="xbdm"
></SelectCode>
</el-form-item> </el-form-item>
<el-form-item label="出生日期:" prop="csrq"> <el-form-item label="出生日期:" prop="csrq">
<el-date-picker type="date" placeholder="请输入出生日期" v-model="ruleForm.csrq"></el-date-picker> <el-date-picker type="date" placeholder="请输入出生日期" v-model="ruleForm.csrq"
:picker-options="{
disabledDate: disabledDate,
}"></el-date-picker>
</el-form-item> </el-form-item>
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="国籍:" prop="gjdm"> <el-form-item label="国籍:" prop="gjdm">
<!-- <el-select v-model="ruleForm.gjdm" placeholder="请输入国籍">--> <!-- <el-select v-model="ruleForm.gjdm" placeholder="请输入国籍">-->
<!-- <el-option label="中国" value="中国"></el-option>--> <!-- <el-option label="中国" value="中国"></el-option>-->
<!-- </el-select>--> <!-- </el-select>-->
<SelectCode <SelectCode codeUrl="/api/code/nationality" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="gjdm"></SelectCode>
codeUrl="/api/code/nationality"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="gjdm"
></SelectCode>
</el-form-item> </el-form-item>
<el-form-item label="民族:" prop="mzdm"> <el-form-item label="民族:" prop="mzdm">
<!-- <el-select v-model="ruleForm.mzdm" placeholder="请选择民族类型">--> <!-- <el-select v-model="ruleForm.mzdm" placeholder="请选择民族类型">-->
<!-- <el-option label="汉" value="汉"></el-option>--> <!-- <el-option label="汉" value="汉"></el-option>-->
<!-- </el-select>--> <!-- </el-select>-->
<SelectCode <SelectCode codeUrl="/api/code/nation" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="mzdm"></SelectCode>
codeUrl="/api/code/nation"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="mzdm"
></SelectCode>
</el-form-item> </el-form-item>
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="证件类型:" prop="cyzjdm" class="select"> <el-form-item label="证件类型:" prop="cyzjdm" class="select">
<!-- <el-select v-model="ruleForm.cyzjdm" placeholder="请选择证件类型">--> <!-- <el-select v-model="ruleForm.cyzjdm" placeholder="请选择证件类型">-->
<!-- <el-option label="中国" value="中国"></el-option>--> <!-- <el-option label="中国" value="中国"></el-option>-->
<!-- </el-select>--> <!-- </el-select>-->
<SelectCode <SelectCode codeUrl="/api/code/certificates" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="cyzjdm"></SelectCode>
codeUrl="/api/code/certificates"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="cyzjdm"
></SelectCode>
</el-form-item> </el-form-item>
<el-form-item label="证件号码:" prop="zjhm" class="input2"> <el-form-item label="证件号码:" prop="zjhm" class="input2">
<el-input placeholder="请输入证件号码" v-model="ruleForm.zjhm"></el-input> <el-input placeholder="请输入证件号码" v-model="ruleForm.zjhm"></el-input>
...@@ -131,17 +91,10 @@ ...@@ -131,17 +91,10 @@
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="户籍地行政区:" prop="hjdzXzqhdm" class="select"> <el-form-item label="户籍地行政区:" prop="hjdzXzqhdm" class="select">
<!-- <el-select v-model="ruleForm.hjdzXzqhdm" placeholder="请输入户籍地行政区">--> <!-- <el-select v-model="ruleForm.hjdzXzqhdm" placeholder="请输入户籍地行政区">-->
<!-- <el-option label="中国" value="中国"></el-option>--> <!-- <el-option label="中国" value="中国"></el-option>-->
<!-- </el-select>--> <!-- </el-select>-->
<SelectCode <SelectCode codeUrl="/api/code/administrative" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="hjdzXzqhdm"></SelectCode>
codeUrl="/api/code/administrative"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="hjdzXzqhdm"
></SelectCode>
</el-form-item> </el-form-item>
<el-form-item label="户籍地址:" prop="hjdzDzmc" class="input2"> <el-form-item label="户籍地址:" prop="hjdzDzmc" class="input2">
<el-input placeholder="请输入户籍地址" v-model="ruleForm.hjdzDzmc"></el-input> <el-input placeholder="请输入户籍地址" v-model="ruleForm.hjdzDzmc"></el-input>
...@@ -149,14 +102,7 @@ ...@@ -149,14 +102,7 @@
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="现住址行政区:" prop="xzzXzqhdm" class="select"> <el-form-item label="现住址行政区:" prop="xzzXzqhdm" class="select">
<SelectCode <SelectCode codeUrl="/api/code/administrative" width="16.5" :clearable="true" :multiple="false" :form="ruleForm" id="xzzXzqhdm"></SelectCode>
codeUrl="/api/code/administrative"
width="16.5"
:clearable="true"
:multiple="false"
:form="ruleForm"
id="xzzXzqhdm"
></SelectCode>
</el-form-item> </el-form-item>
<el-form-item label="现地址:" prop="xzzDzmc" class="input2"> <el-form-item label="现地址:" prop="xzzDzmc" class="input2">
<el-input placeholder="请输入现住址" v-model="ruleForm.xzzDzmc"></el-input> <el-input placeholder="请输入现住址" v-model="ruleForm.xzzDzmc"></el-input>
...@@ -188,9 +134,9 @@ ...@@ -188,9 +134,9 @@
</div> </div>
<div class="ayzzwjbxx-items"> <div class="ayzzwjbxx-items">
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="捺印单位:" prop="unitCode"> <el-form-item label="捺印单位:" prop="nydwGajgjgdm">
<!-- <el-input placeholder="请输入捺印单位名称" v-model="ruleForm.unitCode"></el-input>--> <!-- <el-input placeholder="请输入捺印单位名称" v-model="ruleForm.unitCode"></el-input>-->
<Cascader :form="ruleForm" id="unitCode"></Cascader> <Cascader :form="ruleForm" id="nydwGajgjgdm"></Cascader>
</el-form-item> </el-form-item>
<el-form-item label="捺印人姓名:" prop="nyryXm"> <el-form-item label="捺印人姓名:" prop="nyryXm">
<el-input placeholder="请输入捺印人姓名" v-model="ruleForm.nyryXm"></el-input> <el-input placeholder="请输入捺印人姓名" v-model="ruleForm.nyryXm"></el-input>
...@@ -198,7 +144,10 @@ ...@@ -198,7 +144,10 @@
</div> </div>
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<el-form-item label="捺印时间:" prop="nysj"> <el-form-item label="捺印时间:" prop="nysj">
<el-date-picker type="date" placeholder="请输入捺印时间" v-model="ruleForm.nysj"></el-date-picker> <el-date-picker type="date" placeholder="请输入捺印时间" v-model="ruleForm.nysj"
:picker-options="{
disabledDate: disabledDate,
}"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="捺印人身份证号:" prop="nyryGmsfhm"> <el-form-item label="捺印人身份证号:" prop="nyryGmsfhm">
<el-input placeholder="请输入捺印人身份证号" v-model="ruleForm.nyryGmsfhm"></el-input> <el-input placeholder="请输入捺印人身份证号" v-model="ruleForm.nyryGmsfhm"></el-input>
...@@ -207,7 +156,7 @@ ...@@ -207,7 +156,7 @@
<div class="ayzzwjbxx-item"> <div class="ayzzwjbxx-item">
<div></div> <div></div>
<el-form-item label="捺印人联系电话:" prop="nyryLxdh"> <el-form-item label="捺印人联系电话:" prop="nyryLxdh">
<el-input placeholder="请输入捺印人联系电话" v-model="ruleForm.nyryLxdh"></el-input> <el-input placeholder="请输入捺印人联系电话" v-model="ruleForm.nyryLxdh" maxlength="18"></el-input>
</el-form-item> </el-form-item>
</div> </div>
</div> </div>
...@@ -217,33 +166,14 @@ ...@@ -217,33 +166,14 @@
<span class="name">操作记录列表</span> <span class="name">操作记录列表</span>
</div> </div>
<div class="czjl-table"> <div class="czjl-table">
<el-table <el-table :header-cell-style="{background: '#F6F8FA',color:'#282F3C'}" :data="tableData" border style="width: 100%">
:header-cell-style="{background: '#F6F8FA',color:'#282F3C'}" <el-table-column align="center" :width="width1" type="index">
:data="tableData"
border
style="width: 100%">
<el-table-column
align="center"
:width="width1"
type="index">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="czr" align="center" label="操作人" width="auto">
prop="czr"
align="center"
label="操作人"
width="auto">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="czrq" align="center" label="操作日期" width="auto">
prop="czrq"
align="center"
label="操作日期"
width="auto">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="czsj" align="center" label="操作事件" width="auto">
prop="czsj"
align="center"
label="操作事件"
width="auto">
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
...@@ -260,23 +190,19 @@ ...@@ -260,23 +190,19 @@
<img class="arrow-down-img" src="@/assets/img/jiantou.gif" alt=""> <img class="arrow-down-img" src="@/assets/img/jiantou.gif" alt="">
</div> </div>
<!-- 导出FPTX弹窗 --> <!-- 导出FPTX弹窗 -->
<dcftpx <dcftpx :isShowDcftpx="isShowDcftpx" :rowData="rowData" @closeDcftpx="closeDcftpx"></dcftpx>
:isShowDcftpx="isShowDcftpx"
:rowData="rowData"
@closeDcftpx="closeDcftpx"
></dcftpx>
</el-drawer> </el-drawer>
</template> </template>
<script> <script>
import SelectCode from "../../../components/SelectCode.vue"; import SelectCode from "../../../components/SelectCode.vue";
import Cascader from "@/components/Cascader.vue"; import Cascader from "@/components/Cascader.vue";
import {mapState} from "vuex"; import { mapState } from "vuex";
import dcftpx from "../../AllPersonnelBase/modules/dcftpx.vue"; import dcftpx from "../../AllPersonnelBase/modules/dcftpx.vue";
export default { export default {
name: "rydaxx", name: "rydaxx",
data() { data () {
return { return {
isShowDcftpx: false, // 导出FPTX isShowDcftpx: false, // 导出FPTX
arrow: 'bottom', arrow: 'bottom',
...@@ -290,8 +216,8 @@ export default { ...@@ -290,8 +216,8 @@ export default {
rybh: '', rybh: '',
jzrybh: '', jzrybh: '',
asjxgrybh: '', asjxgrybh: '',
zzwkbh: '', zzhwkbh: '',
cjxxyy: '', cjxxyydm: '',
xm: '', xm: '',
bmch: '', bmch: '',
xbdm: '', xbdm: '',
...@@ -304,10 +230,10 @@ export default { ...@@ -304,10 +230,10 @@ export default {
hjdzDzmc: '', hjdzDzmc: '',
xzzXzqhdm: '', xzzXzqhdm: '',
xzzDzmc: '', xzzDzmc: '',
bz: '蔡英文承认美军驻台,台“防长”紧急否认:是交流 [文/观察者网 王世纯]据美国有线电视网(CNN)10月27日消息,民进党当局领导人蔡英文在CNN专访中首次证实,有美国军队在台湾驻扎;', bz: '',
logicdbtype2: ['基本人员库', '高危人员库'], logicdbtype2: ['基本人员库', '高危人员库'],
logicdbtype: "000", logicdbtype: "000",
unitCode: '430000000000', nydwGajgjgdm: '430000000000',
nyryXm: '', nyryXm: '',
nysj: '', nysj: '',
nyryGmsfhm: '', nyryGmsfhm: '',
...@@ -318,7 +244,7 @@ export default { ...@@ -318,7 +244,7 @@ export default {
{ min: 23, max: 23, message: '编号长度有误!', trigger: 'change' }, { min: 23, max: 23, message: '编号长度有误!', trigger: 'change' },
{ required: true, message: '请输入人员编号!', trigger: 'blur' }, { required: true, message: '请输入人员编号!', trigger: 'blur' },
], ],
cjxxyy: [ cjxxyydm: [
{ required: true, message: '请选择采集原因!', trigger: 'change' } { required: true, message: '请选择采集原因!', trigger: 'change' }
], ],
xm: [ xm: [
...@@ -354,7 +280,7 @@ export default { ...@@ -354,7 +280,7 @@ export default {
xzzDzmc: [ xzzDzmc: [
{ required: true, message: '请输入现住址!', trigger: 'blur' } { required: true, message: '请输入现住址!', trigger: 'blur' }
], ],
unitCode: [ nydwGajgjgdm: [
{ required: true, message: '请输入捺印单位名称!', trigger: 'blur' } { required: true, message: '请输入捺印单位名称!', trigger: 'blur' }
], ],
nyryXm: [ nyryXm: [
...@@ -364,7 +290,12 @@ export default { ...@@ -364,7 +290,12 @@ export default {
{ required: true, message: '请输入捺印时间!', trigger: 'change' } { required: true, message: '请输入捺印时间!', trigger: 'change' }
], ],
nyryGmsfhm: [ nyryGmsfhm: [
{ required: true, message: '请输入捺印人身份证号!', trigger: 'blur' } { required: true, message: '请输入捺印人身份证号!', trigger: 'blur' },
{
pattern: /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/,
message: '证件号码格式有误!',
trigger: 'blur'
}
], ],
}, },
tableData: [{ tableData: [{
...@@ -383,7 +314,7 @@ export default { ...@@ -383,7 +314,7 @@ export default {
czr: '系统管理员', czr: '系统管理员',
czrq: '2021.12.10. 23:59:59', czrq: '2021.12.10. 23:59:59',
czsj: '编辑档案信息' czsj: '编辑档案信息'
},{ }, {
czr: '系统管理员', czr: '系统管理员',
czrq: '2021.12.10. 23:59:59', czrq: '2021.12.10. 23:59:59',
czsj: '编辑档案信息' czsj: '编辑档案信息'
...@@ -396,7 +327,7 @@ export default { ...@@ -396,7 +327,7 @@ export default {
ryInfo: state => state.rydaxx.ryInfo, ryInfo: state => state.rydaxx.ryInfo,
}) })
}, },
created() { created () {
let self = this; let self = this;
let w1 = 1920; let w1 = 1920;
let w2 = window.innerWidth; let w2 = window.innerWidth;
...@@ -415,6 +346,13 @@ export default { ...@@ -415,6 +346,13 @@ export default {
this.initData() this.initData()
}, },
methods: { methods: {
disabledDate (a) {
if (a.getTime() > new Date().getTime()) {
return true;
} else {
return false;
}
},
/** /**
* 关闭FPTX * 关闭FPTX
* @param val * @param val
...@@ -426,32 +364,32 @@ export default { ...@@ -426,32 +364,32 @@ export default {
/** /**
* 导出FPTX * 导出FPTX
*/ */
isShowDcftpxBtn() { isShowDcftpxBtn () {
this.rowData = [this.ryInfo]; this.rowData = [this.ryInfo];
this.isShowDcftpx = true; this.isShowDcftpx = true;
}, },
/** /**
* 跳到最底部 * 跳到最底部
*/ */
goBottom() { goBottom () {
let rydaxxDrawer = document.querySelector('.ayzzwjbxx') let rydaxxDrawer = document.querySelector('.ayzzwjbxx')
// 判断上移还是下移 // 判断上移还是下移
if(this.arrow == 'top') { if (this.arrow == 'top') {
rydaxxDrawer.scrollIntoView({block: "start"}); rydaxxDrawer.scrollIntoView({ block: "start" });
$('.arrow-down-img').css('transform', 'rotate(0deg)'); $('.arrow-down-img').css('transform', 'rotate(0deg)');
this.arrow = 'bottom' this.arrow = 'bottom'
} else { } else {
rydaxxDrawer.scrollIntoView({block: "end"}); rydaxxDrawer.scrollIntoView({ block: "end" });
$('.arrow-down-img').css('transform', 'rotate(180deg)'); $('.arrow-down-img').css('transform', 'rotate(180deg)');
this.arrow = 'top' this.arrow = 'top'
} }
}, },
handleCheckAllChange(val) { handleCheckAllChange (val) {
//console.log(val); //console.log(val);
this.ruleForm.logicdbtype2 = val ? this.ryljfkArr : []; this.ruleForm.logicdbtype2 = val ? this.ryljfkArr : [];
this.isIndeterminate = false; this.isIndeterminate = false;
}, },
handleCheckedCitiesChange(value) { handleCheckedCitiesChange (value) {
//console.log(value); //console.log(value);
let checkedCount = value.length; let checkedCount = value.length;
this.checkAll = checkedCount === this.ryljfkArr.length; this.checkAll = checkedCount === this.ryljfkArr.length;
...@@ -460,13 +398,13 @@ export default { ...@@ -460,13 +398,13 @@ export default {
/** /**
* 初始化数据 * 初始化数据
*/ */
initData() { initData () {
// 赋值 // 赋值
this.ruleForm.id = this.ryInfo.id this.ruleForm.id = this.ryInfo.id
this.ruleForm.rybh = this.ryInfo.ysxtAsjxgrybh this.ruleForm.rybh = this.ryInfo.ysxtAsjxgrybh
this.ruleForm.jzrybh = this.ryInfo.jzrybh this.ruleForm.jzrybh = this.ryInfo.jzrybh
this.ruleForm.cjxxyy = this.ryInfo.cjxxyydm this.ruleForm.cjxxyydm = this.ryInfo.cjxxyydm
this.ruleForm.zzwkbh = this.ryInfo.zzhwkbh this.ruleForm.zzhwkbh = this.ryInfo.zzhwkbh
this.ruleForm.asjxgrybh = this.ryInfo.asjxgrybh this.ruleForm.asjxgrybh = this.ryInfo.asjxgrybh
this.ruleForm.xm = this.ryInfo.xm this.ruleForm.xm = this.ryInfo.xm
this.ruleForm.bmch = this.ryInfo.bmch this.ruleForm.bmch = this.ryInfo.bmch
...@@ -485,7 +423,7 @@ export default { ...@@ -485,7 +423,7 @@ export default {
// let ryljfk = this.ryInfo.logicdbtype.split('') // let ryljfk = this.ryInfo.logicdbtype.split('')
// this.ruleForm.logicdbtype = ryljfk // this.ruleForm.logicdbtype = ryljfk
this.ruleForm.logicdbtype = this.ryInfo.logicdbtype this.ruleForm.logicdbtype = this.ryInfo.logicdbtype
this.ruleForm.unitCode = this.ryInfo.nydwGajgjgdm this.ruleForm.nydwGajgjgdm = this.ryInfo.nydwGajgjgdm
this.ruleForm.nyryXm = this.ryInfo.nyryXm this.ruleForm.nyryXm = this.ryInfo.nyryXm
this.ruleForm.nysj = this.ryInfo.nysj this.ruleForm.nysj = this.ryInfo.nysj
this.ruleForm.nyryGmsfhm = this.ryInfo.nyryGmsfhm this.ruleForm.nyryGmsfhm = this.ryInfo.nyryGmsfhm
...@@ -494,7 +432,7 @@ export default { ...@@ -494,7 +432,7 @@ export default {
/** /**
* 关闭抽屉 * 关闭抽屉
*/ */
closeDrawer() { closeDrawer () {
this.drawer = false this.drawer = false
// 关闭毛玻璃 // 关闭毛玻璃
this.$bus.emit('isBlur', false) this.$bus.emit('isBlur', false)
...@@ -506,11 +444,10 @@ export default { ...@@ -506,11 +444,10 @@ export default {
* 提交表单 * 提交表单
* @param formName * @param formName
*/ */
submitForm(formName) { submitForm (formName) {
let self = this let self = this
this.$refs[formName].validate((valid) => { this.$refs[formName].validate((valid) => {
if (valid) { if (valid) {
alert('submit!');
self.$axios({ self.$axios({
method: 'post', method: 'post',
headers: { headers: {
...@@ -519,10 +456,27 @@ export default { ...@@ -519,10 +456,27 @@ export default {
url: '/api/personstore/person/file', url: '/api/personstore/person/file',
data: JSON.stringify(self.ruleForm) data: JSON.stringify(self.ruleForm)
}).then(res => { }).then(res => {
//console.log(res); if (res.data.code === 0) {
self.$message.success('保存成功!')
// 清除全部案件库缓存
self.$store.commit('layout/delcachePageName', 'AllPersonnelBase')
} else {
self.$message.error('保存失败!')
}
}) })
self.$bus.emit('isBlur', false)
self.drawer = false
} else { } else {
//console.log('error submit!!'); this.$nextTick(() => {
let isError = document.getElementsByClassName('is-error')
isError[0].scrollIntoView({
// 滚动到指定节点
// 值有start,center,end,nearest,当前显示在视图区域中间
block: 'center',
// 值有auto、instant,smooth,缓动动画(当前是慢速的)
behavior: 'smooth',
})
})
return false; return false;
} }
}); });
...@@ -531,11 +485,14 @@ export default { ...@@ -531,11 +485,14 @@ export default {
* 重置表单 * 重置表单
* @param formName * @param formName
*/ */
resetForm(formName) { resetForm (formName) {
// this.$refs[formName].resetFields(); // this.$refs[formName].resetFields();
this.closeDrawer() this.closeDrawer()
} }
}, },
beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
},
components: { components: {
SelectCode, SelectCode,
Cascader, Cascader,
......
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-10-22 09:42:07 * @Date: 2021-10-22 09:42:07
* @LastEditTime: 2021-11-27 17:05:04 * @LastEditTime: 2021-11-30 13:43:02
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\ryzwbjLeft.vue * @FilePath: \指纹系统\founder_vue\src\views\Editor\modules\ryzwbjLeft.vue
...@@ -571,6 +571,13 @@ export default { ...@@ -571,6 +571,13 @@ export default {
// //console.log(tab, event); // //console.log(tab, event);
}, },
}, },
beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.off('ryzwbjImage');
this.$bus.off('ryzwbjType');
this.$bus.off('ryzwbjTDZ');
this.$bus.off('zwType');
},
watch: { watch: {
zwSelect (newValue, oldValue) { zwSelect (newValue, oldValue) {
if (newValue == '掌纹') { if (newValue == '掌纹') {
......
...@@ -435,6 +435,10 @@ export default { ...@@ -435,6 +435,10 @@ export default {
//console.log(key, keyPath); //console.log(key, keyPath);
}, },
}, },
beforeDestroy () {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题
},
watch: { watch: {
menuActive (newValue, oldValue) { menuActive (newValue, oldValue) {
console.log(newValue); console.log(newValue);
......
...@@ -480,7 +480,7 @@ export default { ...@@ -480,7 +480,7 @@ export default {
}, },
beforeDestroy() { beforeDestroy() {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题 //组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.$off("updateFinderSource"); this.$bus.off("updateFinderSource");
} }
}; };
</script> </script>
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
</div> </div>
</transition> </transition>
</div> </div>
<el-input class="input" v-model="input3" placeholder="请输入条码号/指位"></el-input> <el-input class="input" v-model="input3" placeholder="请输入条码号/指位" @keydown.enter="search"></el-input>
<div class="btn" @click="search">筛选</div> <div class="btn" @click="search">筛选</div>
<div class="checked"> <div class="checked">
<el-checkbox v-model="checked">显示已比中候选</el-checkbox> <el-checkbox v-model="checked">显示已比中候选</el-checkbox>
......
...@@ -468,7 +468,7 @@ export default { ...@@ -468,7 +468,7 @@ export default {
}, },
beforeDestroy() { beforeDestroy() {
//组件销毁前需要解绑事件。否则会出现重复触发事件的问题 //组件销毁前需要解绑事件。否则会出现重复触发事件的问题
this.$bus.$off("updateFinderSource"); this.$bus.off("updateFinderSource");
} }
}; };
// 某任务下查询的所有信息 // 某任务下查询的所有信息
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div class="tl-candidate"> <div class="tl-candidate">
<div class="tl-search"> <div class="tl-search">
<div class="label">手纹</div> <div class="label">手纹</div>
<el-input class="input" v-model="input3" placeholder="请输入条码号/指位"></el-input> <el-input class="input" v-model="input3" placeholder="请输入条码号/指位" @keydown.enter="search"></el-input>
<div class="btn" @click="search">筛选</div> <div class="btn" @click="search">筛选</div>
</div> </div>
<div class="checked"> <div class="checked">
......
/* /*
* @Author: your name * @Author: your name
* @Date: 2021-09-07 09:57:48 * @Date: 2021-09-07 09:57:48
* @LastEditTime: 2021-11-30 21:26:24 * @LastEditTime: 2021-12-01 09:52:46
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\vue.config.js * @FilePath: \指纹系统\founder_vue\vue.config.js
......
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