parent
b1d69c00f9
commit
4dfabc543e
7 changed files with 1812 additions and 678 deletions
@ -0,0 +1,478 @@ |
|||||||
|
<template> |
||||||
|
<el-dialog :visible.sync="showBusiness" style="width: 100%" @close="closeData" :close-on-click-modal="false" :show-close="false" custom-class="data-dia"> |
||||||
|
<div slot="title" class="dia-header2"> |
||||||
|
<div class="data-title2">请选择系统</div> |
||||||
|
<div class="close"><img v-lazy="closeImg" alt="" @click="showBusinessSelect(false)" /></div> |
||||||
|
</div> |
||||||
|
<p class="tips2">请选择您要办理的业务</p> |
||||||
|
<ul class="take-list2"> |
||||||
|
<li v-for="(item) in businessArr" :class="{checked: takeCheck == item.myKey}" :key="item.myKey" @click="checkTake(item.myKey)"> |
||||||
|
<img v-lazy="businessImg" alt=""> |
||||||
|
<p>{{ item.myKey + item.text}}</p> |
||||||
|
</li> |
||||||
|
</ul> |
||||||
|
<div class="dia-footer2"> |
||||||
|
<div class='busyButtonBox'> |
||||||
|
<el-button @click="showBusinessSelect(false)">取消</el-button> |
||||||
|
<el-button type="primary" @click="selectBusiness()">确定</el-button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</el-dialog> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import { mapState, mapMutations } from 'vuex'; |
||||||
|
|
||||||
|
export default { |
||||||
|
props: { |
||||||
|
// showBusiness: { |
||||||
|
// type: Boolean, |
||||||
|
// default: false |
||||||
|
// } |
||||||
|
// default: '本业务需要授权' |
||||||
|
}, |
||||||
|
created() { |
||||||
|
if(this.businessKey) { |
||||||
|
// 如果上次保存有 那么直接赋值 |
||||||
|
this.takeCheck = this.businessKey |
||||||
|
} |
||||||
|
}, |
||||||
|
data() { |
||||||
|
return { |
||||||
|
checkList: [], |
||||||
|
takeCheck: '', |
||||||
|
businessImg: require('@/assets/img/业务列表2.png'), |
||||||
|
closeImg: require('@/assets/svg/close.svg'), |
||||||
|
// 选择业务逻辑 |
||||||
|
businessArr: [ |
||||||
|
{ |
||||||
|
myKey: '项目一', |
||||||
|
text: ': 个人活期开户、存款' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二', |
||||||
|
text: ': 个人活期转账、取款、销户' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目三', |
||||||
|
text: ': 整存整取开户存款' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目四', |
||||||
|
text: ': 整存整取部分提前支取' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目五', |
||||||
|
text: ': 整存整取全部提前支取' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目六', |
||||||
|
text: ': 零存整取开户' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目七', |
||||||
|
text: ': 零存整取续存' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目八', |
||||||
|
text: ': 零存整取销户' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目九', |
||||||
|
text: ': 通知存款开户' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十', |
||||||
|
text: ': 通知存款销户' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十一', |
||||||
|
text: ': 公司基本户和开立' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十二', |
||||||
|
text: ': 公司存款' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十三', |
||||||
|
text: ': 公司现金支票取款' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十四', |
||||||
|
text: ': 公司现金支票转账' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十五', |
||||||
|
text: ': 密码修改' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十六', |
||||||
|
text: ': 密码挂失' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十七', |
||||||
|
text: ': 挂失解挂' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十八', |
||||||
|
text: ': 支票出售' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目十九', |
||||||
|
text: ': 现金领用' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十', |
||||||
|
text: ': 现金上缴' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十一', |
||||||
|
text: ': 现金领用' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十二', |
||||||
|
text: ': 现金调出' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十三', |
||||||
|
text: ': 凭证调入' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十四', |
||||||
|
text: ': 凭证调出' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十五', |
||||||
|
text: ': 凭证上缴' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十六', |
||||||
|
text: ': 柜员日中轧账' |
||||||
|
}, |
||||||
|
{ |
||||||
|
myKey: '项目二十七', |
||||||
|
text: ': 网点日中轧账' |
||||||
|
} |
||||||
|
], |
||||||
|
} |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
...mapMutations({ |
||||||
|
setBusinessKey: 'system/setBusinessKey', |
||||||
|
setShowBusiness: 'system/setShowBusiness' |
||||||
|
}), |
||||||
|
closeData() { |
||||||
|
this.checkList = []; |
||||||
|
}, |
||||||
|
showBusinessSelect (judge) { |
||||||
|
if(!judge && !this.businessKey) { |
||||||
|
this.$confirm('由于您未选择一个业务,系统将返回主界面, 是否继续?', '提示', { |
||||||
|
confirmButtonText: '确定', |
||||||
|
cancelButtonText: '取消', |
||||||
|
type: 'warning', |
||||||
|
center: true |
||||||
|
}).then(() => { |
||||||
|
this.$router.push('/index') |
||||||
|
}).catch(() => { |
||||||
|
this.$message({ |
||||||
|
type: 'info', |
||||||
|
message: '请选择一个业务' |
||||||
|
}); |
||||||
|
}); |
||||||
|
return |
||||||
|
} |
||||||
|
this.setShowBusiness(judge) |
||||||
|
}, |
||||||
|
checkTake(myKey){ |
||||||
|
if(this.takeCheck === myKey) { |
||||||
|
this.takeCheck = '' |
||||||
|
}else { |
||||||
|
this.takeCheck = myKey |
||||||
|
} |
||||||
|
}, |
||||||
|
selectBusiness() { |
||||||
|
if(!this.takeCheck) { |
||||||
|
this.$confirm('由于您未选择一个业务,系统将返回主界面, 是否继续?', '提示', { |
||||||
|
confirmButtonText: '确定', |
||||||
|
cancelButtonText: '取消', |
||||||
|
type: 'warning', |
||||||
|
center: true |
||||||
|
}).then(() => { |
||||||
|
this.$router.push('/index') |
||||||
|
}).catch(() => { |
||||||
|
this.$message({ |
||||||
|
type: 'info', |
||||||
|
message: '请选择一个业务' |
||||||
|
}); |
||||||
|
}); |
||||||
|
return |
||||||
|
} |
||||||
|
this.setBusinessKey(this.takeCheck) |
||||||
|
this.setShowBusiness(false) |
||||||
|
}, |
||||||
|
}, |
||||||
|
computed: { |
||||||
|
...mapState({ |
||||||
|
showBusiness: state => state.system.showBusiness, |
||||||
|
businessKey: state => state.system.businessKey |
||||||
|
}) |
||||||
|
}, |
||||||
|
watch: { |
||||||
|
showBusiness(newVal) { |
||||||
|
if(!newVal) { |
||||||
|
this.takeCheck = this.businessKey |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
|
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss" scoped> |
||||||
|
.data-dia { |
||||||
|
border-radius: 16px; |
||||||
|
margin-top: 4vh !important; |
||||||
|
background: #fff; |
||||||
|
position: fixed; |
||||||
|
top: 7%; |
||||||
|
left: 50%; |
||||||
|
transform: translate(-50%, 0); |
||||||
|
padding: 0 15px 15px; |
||||||
|
z-index: 997; |
||||||
|
border: 1px solid #e6e6e6; |
||||||
|
max-height: 600px; |
||||||
|
overflow: auto; |
||||||
|
.dia-header { |
||||||
|
position: relative; |
||||||
|
.data-title { |
||||||
|
height:70px; |
||||||
|
width: 300px; |
||||||
|
margin: 0 auto; |
||||||
|
line-height: 70px; |
||||||
|
text-align: center; |
||||||
|
color: #fff; |
||||||
|
font-size: 24px; |
||||||
|
background: url('../../assets/img/dia-title.png') 0 0 / cover no-repeat; |
||||||
|
} |
||||||
|
.close { |
||||||
|
position: absolute; |
||||||
|
top: 15px; |
||||||
|
right: 15px; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
// 业务选择中的 |
||||||
|
.take-list2{ |
||||||
|
width: 100%; |
||||||
|
display: flex; |
||||||
|
justify-content: space-around; |
||||||
|
flex-direction: row; |
||||||
|
flex-wrap: wrap; |
||||||
|
height: 40vh; |
||||||
|
overflow: auto; |
||||||
|
li{ |
||||||
|
display: inline-flex; |
||||||
|
align-items: center; |
||||||
|
width: 30%; |
||||||
|
height: 10vh; |
||||||
|
margin: 1vh 0; |
||||||
|
border: 4px solid #DBDBDB; |
||||||
|
border-radius: 20px; |
||||||
|
cursor: pointer; |
||||||
|
background-color: rgba(216,216,216,0.10); |
||||||
|
// &:first-child{ |
||||||
|
// margin: 0 0px 50px 0; |
||||||
|
// } |
||||||
|
// &:last-child{ |
||||||
|
// margin-left: 50px; |
||||||
|
// } |
||||||
|
img{ |
||||||
|
width: 20%; |
||||||
|
margin: 0; |
||||||
|
//height: 154px; |
||||||
|
//margin: 0 45px; |
||||||
|
} |
||||||
|
p{ |
||||||
|
font-size: 14px; |
||||||
|
color: #000; |
||||||
|
text-align: center; |
||||||
|
padding: 0 20px; |
||||||
|
white-space: nowrap; |
||||||
|
overflow: hidden; |
||||||
|
text-overflow: ellipsis; |
||||||
|
} |
||||||
|
&.checked{ |
||||||
|
background: rgba(97,145,255,0.10) url('../../assets/svg/checked.svg') 96% 7%/auto no-repeat; |
||||||
|
border-color: #6191FF; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.dia-header2 { |
||||||
|
position: relative;height: 50px; |
||||||
|
line-height: 50px; |
||||||
|
background-color: skyblue; |
||||||
|
|
||||||
|
.data-title2 { |
||||||
|
position: absolute; |
||||||
|
left: 15px; |
||||||
|
height: 50px; |
||||||
|
line-height: 50px; |
||||||
|
} |
||||||
|
.close { |
||||||
|
height: 50px; |
||||||
|
position: absolute; |
||||||
|
right: 15px; |
||||||
|
cursor: pointer; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: center; |
||||||
|
img { |
||||||
|
vertical-align: center; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.tips2 { |
||||||
|
margin: 1vh 0 2vh 0; |
||||||
|
text-align: left; |
||||||
|
font-size: 20px; |
||||||
|
color: #000; |
||||||
|
} |
||||||
|
.list { |
||||||
|
width: 940px; |
||||||
|
min-height: 204px; |
||||||
|
max-height: 360px; |
||||||
|
overflow: auto; |
||||||
|
margin: 0 auto; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
.img-wrap{ |
||||||
|
background: url('../../assets/img/data-frame.png') 0 0 / cover no-repeat; |
||||||
|
width: 200px; |
||||||
|
height: 200px; |
||||||
|
display: flex; |
||||||
|
justify-content: center; |
||||||
|
margin: 5px 10px; |
||||||
|
position: relative; |
||||||
|
cursor: pointer; |
||||||
|
.file { |
||||||
|
position: relative; |
||||||
|
max-width: 180px; |
||||||
|
max-height: 140px; |
||||||
|
text-align: center; |
||||||
|
margin: 10px 10px ; |
||||||
|
img { |
||||||
|
margin-top: 45px; |
||||||
|
} |
||||||
|
p { |
||||||
|
position: absolute; |
||||||
|
bottom: 0; |
||||||
|
width: 100%; |
||||||
|
line-height: 54px; |
||||||
|
text-align: center; |
||||||
|
font-size: 18px; |
||||||
|
color: #000; |
||||||
|
} |
||||||
|
} |
||||||
|
.text{ |
||||||
|
font-size: 18px; |
||||||
|
white-space:nowrap; |
||||||
|
position: absolute; |
||||||
|
bottom: 15px; |
||||||
|
left: 50%; |
||||||
|
transform: translate(-50%,0); |
||||||
|
} |
||||||
|
&.checked { |
||||||
|
background: url('../../assets/img/data-frame-checked.png') 0 0 / cover no-repeat, |
||||||
|
url('../../assets/svg/checked.svg') 165px 7% / auto no-repeat; |
||||||
|
p { |
||||||
|
color: #fff; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.seal{ |
||||||
|
width: 1100px; |
||||||
|
padding: 0 5%; |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
.box{ |
||||||
|
border: 2px solid #e6e6e6; |
||||||
|
width: 45%; |
||||||
|
min-height: 300px; |
||||||
|
border-radius: 10px; |
||||||
|
padding: 10px; |
||||||
|
} |
||||||
|
.left{ |
||||||
|
display: flex; |
||||||
|
width: 50%; |
||||||
|
flex-wrap: wrap; |
||||||
|
.file { |
||||||
|
position: relative; |
||||||
|
width: 164px; |
||||||
|
height: 164px; |
||||||
|
text-align: center; |
||||||
|
background: url('../../assets/img/data-frame.png') 0 0 / cover no-repeat; |
||||||
|
cursor: pointer; |
||||||
|
margin: 5px 7px; |
||||||
|
&:last-child { |
||||||
|
margin-right: 0; |
||||||
|
} |
||||||
|
&:nth-child(n>1){ |
||||||
|
margin-top: 0; |
||||||
|
} |
||||||
|
img { |
||||||
|
width: 130px; |
||||||
|
max-height: 108px; |
||||||
|
margin: 10px auto 0; |
||||||
|
z-index: 9; |
||||||
|
} |
||||||
|
p { |
||||||
|
position: absolute; |
||||||
|
bottom: 0; |
||||||
|
width: 100%; |
||||||
|
line-height: 54px; |
||||||
|
text-align: center; |
||||||
|
font-size: 18px; |
||||||
|
color: #000; |
||||||
|
} |
||||||
|
&.checked { |
||||||
|
background: url('../../assets/img/data-frame-checked.png') 0 0 / cover no-repeat, |
||||||
|
url('../../assets/svg/checked.svg') 163px 7% / auto no-repeat; |
||||||
|
|
||||||
|
p { |
||||||
|
color: #fff; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
&.active { |
||||||
|
left: 0; |
||||||
|
z-index: 9999; |
||||||
|
} |
||||||
|
img { |
||||||
|
cursor: pointer; |
||||||
|
&:last-child { |
||||||
|
margin-right: 0; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.right{ |
||||||
|
margin-left: 5%; |
||||||
|
} |
||||||
|
.else{ |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
.dia-footer2 { |
||||||
|
height: 70px; |
||||||
|
line-height: 70px; |
||||||
|
display: flex; |
||||||
|
justify-content: flex-end; |
||||||
|
align-items: center; |
||||||
|
.busyButtonBox { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
</style> |
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue