Compare commits

..

No commits in common. 'master' and '20240205' have entirely different histories.

  1. 6
      package-lock.json
  2. 1
      package.json
  3. 7
      src/App.vue
  4. 6
      src/api/api.js
  5. 10
      src/api/http.js
  6. 177
      src/components/case/index.vue
  7. 142
      src/components/dialog/index.vue
  8. 526
      src/components/selectBusiness/index.vue
  9. 7
      src/layouts/header/index.vue
  10. 8
      src/libs/util.js
  11. 24
      src/pages/counter/list/index.vue
  12. 5
      src/pages/index/list/index.vue
  13. 1629
      src/pages/lobbyManager/list/index.vue
  14. 58
      src/pages/manage/index/index.vue
  15. 384
      src/pages/manage/list/ImportantCash/controlCash/index.vue
  16. 402
      src/pages/manage/list/ImportantCash/controlCash2/index.vue
  17. 713
      src/pages/manage/list/ImportantCash/controlCash3/index.vue
  18. 13
      src/pages/manage/list/agent/electricRate.vue
  19. 8
      src/pages/manage/list/agent/telRate.vue
  20. 9
      src/pages/manage/list/agent/waterRate.vue
  21. 22
      src/pages/manage/list/corporateLoans/application.vue
  22. 170
      src/pages/manage/list/corporateLoans/apply/creditApplication/index.vue
  23. 73
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/basic.vue
  24. 68
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/importReport.vue
  25. 60
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/preLoan.vue
  26. 95
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/rating.vue
  27. 36
      src/pages/manage/list/corporateLoans/apply/index.vue
  28. 89
      src/pages/manage/list/corporateLoans/apply/loanApplication/step1.vue
  29. 157
      src/pages/manage/list/corporateLoans/apply/loanApplication/step2.vue
  30. 74
      src/pages/manage/list/corporateLoans/detail.vue
  31. 23
      src/pages/manage/list/corporateLoans/loan.vue
  32. 73
      src/pages/manage/list/corporateLoans/management.vue
  33. 67
      src/pages/manage/list/corporateLoans/repayment.vue
  34. 31
      src/pages/manage/list/foreignExchange/puchasing.vue
  35. 26
      src/pages/manage/list/foreignExchange/settlement.vue
  36. 15
      src/pages/manage/list/onlineBank/openAccount.vue
  37. 519
      src/pages/manage/list/personal/currentAccount/accountCancellation.vue
  38. 601
      src/pages/manage/list/personal/currentAccount/settle.vue
  39. 536
      src/pages/manage/list/personal/currentAccount/transferAccounts.vue
  40. 261
      src/pages/manage/list/personalLoans/detail.vue
  41. 2
      src/pages/manage/list/personalLoans/index.vue
  42. 132
      src/pages/manage/list/personalLoans/list.vue
  43. 27
      src/pages/manage/navbar/index.vue
  44. 38
      src/pages/report/index.vue
  45. 1
      src/setting.js
  46. 136
      src/store/modules/system.js
  47. 13
      src/store/modules/user.js
  48. 2
      src/styles/dialog.scss

6
package-lock.json generated

@ -8298,9 +8298,9 @@
}
},
"lodash": {
"version": "4.17.21",
"resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
"version": "4.17.15",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
},
"lodash._basecopy": {
"version": "3.0.1",

@ -18,7 +18,6 @@
"element-theme": "^2.0.1",
"element-ui": "^2.13.0",
"js-cookie": "^2.2.1",
"lodash": "^4.17.21",
"mavon-editor": "^2.6.17",
"postcss": "^7.0.36",
"postcss-px2rem": "^0.3.0",

@ -14,7 +14,6 @@ import selectBusiness from '@/components/selectBusiness'
import TipDialog from '@/components/tipDialog'
import { mapState, mapMutations } from 'vuex'
import Bus from '@/libs/bus'
import store from '@/store'
export default {
name: 'App',
components: {
@ -23,12 +22,6 @@ export default {
TipDialog
},
created () {
//
if (!document.referrer) {
store.commit('user/logout')
return false
}
//localStorage
if (util.local.get(Setting.storeKey)) {
this.$store.replaceState(Object.assign({}, this.$store.state, util.local.get(Setting.storeKey)))

@ -8,11 +8,11 @@ const dev = process.env.NODE_ENV === 'development' // 开发环境
let host = `${location.origin}/`
if (dev) {
// 本地
host = 'http://118.31.167.228/' // 中台测试服
host = 'http://121.37.12.51/' // 中台测试服
// host = 'https://www.occupationlab.com/' // 正式服
// host = 'http://192.168.31.51:9000/'
host = 'http://192.168.31.51:9000/'
const ip = localStorage.getItem('localIp')
const ips = ['http://192.168.31.217:9000/', 'http://192.168.31.51:9000/', 'http://118.31.167.228/']
const ips = ['http://192.168.31.217:9000/', 'http://192.168.31.51:9000/', 'http://121.37.12.51/']
host = ips[+ip]
}
// 创建axios实例

@ -63,14 +63,11 @@ export const creditEvaluationInput = data => {
return post(`/judgment/bankCreditEvaluation/creditEvaluationInput`, data)
}
export const creditEvaluationDetails = data => {
return get(`/judgment/bankCreditEvaluation/creditEvaluationDetails`, data)
return post(`/judgment/bankCreditEvaluation/creditEvaluationDetails`, data)
}
export const loanApplicationInput = data => {
return post(`/judgment/bankLoanApplication/loanApplicationInput`, data)
}
export const loanApplicationInterestCalculation = data => {
return post(`/judgment/bankLoanApplication/loanApplicationInterestCalculation`, data)
}
export const loanApplicationDetails = data => {
return get(`/judgment/bankLoanApplication/loanApplicationDetails`, data)
}
@ -78,7 +75,7 @@ export const creditApplicationInput = data => {
return post(`/judgment/bankCreditApplication/creditApplicationInput`, data)
}
export const creditApplicationDetails = data => {
return get(`/judgment/bankCreditApplication/creditApplicationDetails`, data)
return post(`/judgment/bankCreditApplication/creditApplicationDetails`, data)
}
export const companyLoanList = data => {
return post(`/judgment/bankCompanyLoans/companyLoanList`, data)
@ -139,7 +136,4 @@ export const batchProcessing = (data) => {
}
export const operationExtension = (data) => {
return post(`/judgment/bankPersonalLoanContractInfo/operationExtension?contractId=${data.id}&extensionPeriod=${data.extensionPeriod}`)
}
export const calculateTheReturnInterestSum = (data) => {
return post(`/judgment/bankPersonalLoanContractInfo/calculateTheReturnInterestSum`, data)
}

@ -2,7 +2,7 @@
<div>
<!-- <transition name="slide-fade" enter-active-class="animate__animated animate__bounceInLeft" leave-active-class=" animate__animated animate__bounceOutLeft"> -->
<el-container v-show="showIt" v-loading="loading">
<el-container v-show="showIt">
<el-header>
<div class="flex a-center j-between">
<div class="flex a-center" style="width: 28%">
@ -32,7 +32,7 @@
<div>
<el-button @click="toReport" v-if="popContainer">查看实验报告</el-button>
<el-button style="background: #202020;color: #d0d0d0;font-size:16px;" v-show="projectPermissions == 0"
@click="reloadConfirm"
@click="reload"
:disabled="popContainer && (assessmentId != '' && assessmentId != 'null' && assessmentId != null)">
重新开始
</el-button>
@ -65,7 +65,7 @@
<el-row>
<el-col :span="24">
<el-card shadow="hover">
<el-table :data="requires" height="43.5vh" ref='testTable'>
<el-table :data="requires" height="43.5vh" v-loading="loading" ref='testTable'>
<el-table-column type="index"></el-table-column>
<el-table-column prop="name" label="判分点" align="left">
</el-table-column>
@ -137,7 +137,7 @@
<script>
import Cookie from 'js-cookie'
import Util from '@/libs/util'
import util from '@/libs/util'
import Setting from '@/setting'
//
import { getProjectBySystemId, getProjectDetail, submit, getQueryCache, deleteCache, checkTest, checkTest2 } from "@/api/http.js";
@ -188,8 +188,7 @@ export default {
hour: '00',
createTime: "", //
actEndTime: "", //
projectId: '', //
// projectId: "" || sessionStorage.getItem('projectId'), //
projectId: "" || sessionStorage.getItem('projectId'), //
value: [
{ projectName: '项目1', projectId: 1 }
],
@ -211,7 +210,7 @@ export default {
stageId: '',
teamId: '',
isSubmit: false,
entryTime: Util.formatDate('yyyy-MM-dd hh:mm:ss'),
entryTime: util.formatDate('yyyy-MM-dd hh:mm:ss'),
startTime: '',
stopTime: '',
isSelected: false,
@ -230,42 +229,6 @@ export default {
submitType: false
}
},
computed: {
needSendSunc: function () {
return this.sendSync;
},
//
second: function () {
return this.num(this.seconds);
},
minute: function () {
return this.num(this.minutes);
},
activeNames () {
//
return this.requires.map(item => item.id)
},
},
watch: {
countVal: {
deep: true,
handler: function (val, oldVal) {
let vm = this;
if (vm.needSendSunc) {
vm.passToParent(val);
}
}
},
needSendSunc: {
deep: true,
handler: function (val) {
let vm = this;
if (val) {
vm.passToParent(vm.countString);
}
}
},
},
created () {
let assessmentId = this.getQueryVariable('assessmentId')
sessionStorage.setItem('assessmentId', assessmentId)
@ -289,6 +252,7 @@ export default {
});
//
this.sureSubmit(true)
} else {
}
})
}, 4000)
@ -297,27 +261,73 @@ export default {
this.popContainer = data
})
},
watch: {
countVal: {
deep: true,
handler: function (val, oldVal) {
let vm = this;
if (vm.needSendSunc) {
vm.passToParent(val);
}
}
},
needSendSunc: {
deep: true,
handler: function (val) {
let vm = this;
if (val) {
vm.passToParent(vm.countString);
}
}
},
// caseVisible(newVal) {
// if(!newVal) {
// console.log(this.$refs.scrollTag)
// }
// }
},
computed: {
needSendSunc: function () {
return this.sendSync;
},
//
second: function () {
return this.num(this.seconds);
},
minute: function () {
return this.num(this.minutes);
},
activeNames () {
//
return this.requires.map(item => item.id)
},
},
mounted () {
let token = this.getParam('token')
let cid = this.getParam('cid')
let systemId = this.getParam('systemId')
let projectId = this.getParam('projectId')
let assessmentId = this.getParam('assessmentId')
let competitionId = this.getParam('competitionId')
let stageId = this.getParam('stageId')
let teamId = this.getParam('teamId')
let classId = this.getParam('classId')
let stopTime = this.getParam('stopTime')
let mallId = this.getParam('mallId')
let timestamp = +stopTime
timestamp || sessionStorage.removeItem('timestamp')
if (token) {
let token = sessionStorage.getItem('token') || this.getQueryVariable('token')
let cid = sessionStorage.getItem('cid') || this.getQueryVariable('cid')
let systemId = sessionStorage.getItem('systemId') || this.getQueryVariable('systemId')
let projectId = this.getQueryVariable('projectId')
if (sessionStorage.getItem('projectId')) {
projectId = sessionStorage.getItem('projectId')
}
let assessmentId = sessionStorage.getItem('assessmentId') || this.getQueryVariable('assessmentId')
let competitionId = sessionStorage.getItem('competitionId') || this.getQueryVariable('competitionId')
let stageId = sessionStorage.getItem('stageId') || this.getQueryVariable('stageId')
let teamId = sessionStorage.getItem('teamId') || this.getQueryVariable('teamId')
let classId = sessionStorage.getItem('classId') || this.getQueryVariable('classId')
let stopTime = sessionStorage.getItem('stopTime') || this.getQueryVariable('stopTime')
let mallId = sessionStorage.getItem('mallId') || this.getQueryVariable('mallId')
let timestamp = +stopTime;
if (timestamp != null) {
} else {
sessionStorage.setItem('timestamp', null)
}
if (token != null) {
sessionStorage.setItem('token', token)
sessionStorage.setItem('cid', cid)
sessionStorage.setItem('systemId', systemId)
sessionStorage.setItem('timestamp', timestamp)
console.log("🚀 ~ mounted ~ projectId:", token, projectId)
sessionStorage.setItem('projectId', projectId)
sessionStorage.setItem('assessmentId', assessmentId)
sessionStorage.setItem('competitionId', competitionId)
@ -325,21 +335,21 @@ export default {
sessionStorage.setItem('teamId', teamId)
sessionStorage.setItem('classId', classId)
this.assessmentId = assessmentId
this.competitionId = competitionId
this.competitionId = JSON.parse(competitionId)
this.stageId = stageId
this.teamId = teamId
this.classId = classId
this.mallId = mallId
this.projectId = projectId
}
if (token) {
let tokens = sessionStorage.getItem('token')
if (tokens || token) {
this.projectPermissions = this.assessmentId ?
1 :
this.competitionId ?
2 :
0
this.assessmentId && this.projectId && this.checkVer()
if (assessmentId || this.competitionId) {
if (JSON.parse(assessmentId != null && assessmentId != '' && assessmentId != 'null' || this.competitionId)) {
this.selectProjects({
projectId
})
@ -367,7 +377,7 @@ export default {
let startTime = sessionStorage.getItem('startTime')
const storeProjectId = sessionStorage.getItem('storeProjectId')
Util.clearSession()
sessionStorage.clear()
sessionStorage.setItem('token', token)
sessionStorage.setItem('cid', cid)
sessionStorage.setItem('systemId', systemId)
@ -401,12 +411,6 @@ export default {
this.toggleCase()
}
},
//
getParam (field) {
const s = sessionStorage.getItem(field)
const routeParam = this.getQueryVariable(field)
return routeParam ? routeParam : s !== 'null' && s !== 'undefined' && s ? s : ''
},
getQueryVariable (name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)')
if (window.location.href.split('?')[1]) {
@ -417,6 +421,20 @@ export default {
return null
}
}
// if(sessionStorage.getItem(name)) {
// return sessionStorage.getItem(name)
// }else {
// var reg = new RegExp('(^|&)'+name+'=([^&]*)(&|$)')
// if(window.location.href.split('?')[1]){
// var r = window.location.href.split('?')[1].match(reg)
// if (r != null){
// return (r[2])
// }else{
// return null
// }
// }
// }
},
//
getData () {
@ -655,6 +673,7 @@ export default {
this.actEndTime = new Date().getTime();
let ruleReqs = sessionStorage.getItem('ruleReqs')
let startTime = sessionStorage.getItem('startTime') || this.entryTime
console.log("🚀 ~ sureSubmit ~ this.entryTime:", this.entryTime)
let ruleReqsList = JSON.parse(ruleReqs);
let lcld = []
for (var i = 0; i < this.requires.length; i++) {
@ -826,24 +845,6 @@ export default {
this.seconds = seconds;
}
},
//
async reloadConfirm () {
//
if (this.popContainer) {
this.reload()
} else {
try {
await this.$confirm('<p style="color: #f56c6c;">点击重新开始,之前操作会清空。</p><p>确定重新开始吗?</p>', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
// closeOnClickModal: false,
dangerouslyUseHTMLString: true,
})
this.reload()
} catch (e) { }
}
},
reload () {
this.submitType = false
this.lockIt = false

@ -65,7 +65,6 @@
</template>
<script>
import { mapGetters } from 'vuex'
// objmoduleName,
const obj = {
@ -122,32 +121,7 @@ const nameMap = {
116: '现金支票'
},
currency: {
12: 'CNY人民币',
153: '美元 现汇',
163: '美元',
164: '澳大利亚元',
165: '加拿大元',
166: '港币',
167: '英镑',
168: '欧元',
169: '日元',
170: '新西兰元',
171: '新加坡元',
172: '泰国铢',
173: '韩元',
174: '新台币(不支持跨进汇款)',
175: '瑞土法郎',
176: '瑞典克朗',
177: '丹麦克朗',
178: '卢布',
179: '挪威克朗',
180: '菲律宾比索(不支持跨进汇款)',
181: '澳门元',
182: '印尼卢比 (不支持跨进汇款)',
183: '巴西里亚尔(不支持跨进汇款)',
184: '阿联酋迪拉姆(不支持跨进汇款)',
185: '印度卢比(不支持跨进汇款)',
186: '印度卢比(南非兰特)',
12: 'CNY人民币'
},
goldLogo: {
13: '钞户',
@ -317,14 +291,6 @@ const nameMap = {
148: '是',
149: '否'
},
monthlyWithholding: {
142: '是',
143: '否'
},
numType: {
144: '手机号码',
145: '座机号码'
},
buyForeignPurpose: {
187: '因私旅游',
188: '境外留学',
@ -343,17 +309,6 @@ const nameMap = {
201: '其他服务',
202: '其他经常转移',
},
fundingSource: {
154: '职工报酬和赡家款',
155: '旅游',
156: '金融和保险服务',
157: '专有权利使用费和特许费',
158: '咨询服务',
159: '其他服务',
160: '投资收益',
161: '其他经常转移',
162: '运输',
},
}
export default {
props: {
@ -380,30 +335,14 @@ export default {
moduleName: {
type: String,
default: 'spacial'
},
spare: {
type: Boolean,
default: true
},
},
data () {
return {
flow: 1, //
disForm: { //
name: '002288',
pass: '123456'
},
leftObj: {}, //
rightObj: {} //
}
},
created () {
// flow4
if (!this.needAuth) {
this.flow = 4
}
let num = 0
let num = 0;
// 1
for (const key in this.showForm) {
if (!this.showForm[key]) {
@ -444,39 +383,51 @@ export default {
return str;
}
if (this.spare) {
if (num % 2 === 1) {
//
this.leftObj['流水号'] = tmpFunc2()
this.leftObj['经办机构'] = '国税支行营业部'
this.rightObj['经办柜员'] = '002110'
if (this.depositNumber) {
this.rightObj['定存编号'] = this.depositNumber
}
} else {
// 31
this.leftObj['流水号'] = tmpFunc2()
this.leftObj['经办机构'] = '国税支行营业部'
this.rightObj['经办柜员'] = '002110'
if (this.depositNumber) {
this.leftObj['定存编号'] = this.depositNumber
}
}
//
const tmpFunc = () => {
const date = new Date()
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? '0' + m : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
return y + '-' + m + '-' + d;
if (num % 2 === 1) {
//
this.leftObj['流水号'] = tmpFunc2()
this.leftObj['经办机构'] = '国税支行营业部'
this.rightObj['经办柜员'] = '002110'
if (this.depositNumber) {
this.rightObj['定存编号'] = this.depositNumber
}
} else {
// 31
this.leftObj['流水号'] = tmpFunc2()
this.leftObj['经办机构'] = '国税支行营业部'
this.rightObj['经办柜员'] = '002110'
if (this.depositNumber) {
this.leftObj['定存编号'] = this.depositNumber
}
this.rightObj['会计时间'] = tmpFunc()
if (this.leftObj['支取方式'] == 114) this.leftObj['支取方式'] = '印鉴'
// 002110
}
//
const tmpFunc = () => {
const date = new Date()
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? '0' + m : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
return y + '-' + m + '-' + d;
}
this.rightObj['会计时间'] = tmpFunc()
if (this.leftObj['支取方式'] == 114) this.leftObj['支取方式'] = '印鉴'
console.log("🚀 ~ file: index.vue ~ line 393 ~ created ~ this.rightObj", this.leftObj, this.rightObj, this.showForm, this.formName)
// 002110
},
data () {
return {
flow: 1, //
disForm: { //
name: '002288',
pass: '123456'
},
leftObj: {}, //
rightObj: {} //
}
},
methods: {
cancel () {
@ -513,10 +464,7 @@ export default {
// +
successName () {
return obj[this.moduleName] + '成功'
},
...mapGetters({
getSelectList: 'system/getSelectList'
}),
}
}
}
</script>

@ -1,24 +1,38 @@
<template>
<!-- 业务选择列表 -->
<el-dialog :visible="true" class="" :modal="false" @close="closeData" :close-on-click-modal="false"
:show-close="false" custom-class="data-dia 2xl:w-7/12 xl:w-9/12 lg:w-full h-9/12">
<div slot="title" class="dia-header2">
<el-dialog :visible="true"
class=""
:modal="false"
@close="closeData"
:close-on-click-modal="false"
:show-close="false"
custom-class="data-dia 2xl:w-7/12 xl:w-9/12 lg:w-full h-9/12">
<div slot="title"
class="dia-header2">
<div class="data-title2">业务选择</div>
<div class="close"><img v-lazy="closeImg" alt="" @click="showBusinessSelect(false)" /></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 getBusinessSelectList" :class="{ checked: takeCheck == item.myKey }" :key="item.myKey"
@click="checkTake(item.myKey)">
<img v-lazy="businessImg" alt="">
<p>{{ item.myKey + item.text }}</p>
<li v-for="(item) in getBusinessSelectList"
:class="{checked: takeCheck == item.myKey}"
:key="item.myKey"
@click="checkTake(item.myKey)">
<img v-lazy="businessImg"
alt="">
<p>{{ item.myKey + item.text}}</p>
</li>
<li v-for="(item) in (3 - getBusinessSelectList.length % 3)" class="sitting" :key="item"></li>
<li v-for="(item) in (3 - getBusinessSelectList.length%3)"
class="sitting"
:key="item"></li>
</ul>
<div class="dia-footer2">
<div class='busyButtonBox'>
<el-button @click="showBusinessSelect(false)">取消</el-button>
<el-button type="primary" @click="selectBusiness()">确定</el-button>
<el-button type="primary"
@click="selectBusiness()">确定</el-button>
</div>
</div>
</el-dialog>
@ -26,7 +40,6 @@
<script>
import { mapState, mapMutations, mapGetters } from 'vuex';
import Util from '@/libs/util'
export default {
props: {
@ -128,7 +141,7 @@ export default {
let timestamp = sessionStorage.getItem('timestamp')
let startTime = sessionStorage.getItem('startTime')
const storeProjectId = sessionStorage.getItem('storeProjectId')
Util.clearSession()
sessionStorage.clear()
sessionStorage.setItem('token', token)
sessionStorage.setItem('cid', cid)
sessionStorage.setItem('systemId', systemId)
@ -180,284 +193,249 @@ export default {
<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;
//
.take-list2 {
width: 100%;
display: flex;
justify-content: space-around;
flex-direction: row;
flex-wrap: wrap;
height: 40vh;
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;
li {
display: inline-flex;
align-items: center;
width: 30%;
height: 10vh;
font-size: 16px;
margin: 1vh 0;
border: 4px solid #dbdbdb;
border-radius: 20px;
cursor: pointer;
background-color: rgba(216, 216, 216, 0.1);
// &:first-child{
// margin: 0 0px 50px 0;
// }
// &:last-child{
// margin-left: 50px;
// }
img {
width: 15%;
margin: 0;
//height: 154px;
//margin: 0 45px;
}
p {
font-size: 16px;
color: #000;
text-align: left;
padding: 0 20px;
// white-space: wrap;
// overflow: hidden;
// text-overflow: ellipsis;
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
&.checked {
background: rgba(97, 145, 255, 0.1) url('../../assets/svg/checked.svg') 96% 7% / auto no-repeat;
border-color: #6191ff;
}
}
}
.dia-header2 {
position: relative;
height: 50px;
line-height: 50px;
background-color: rgb(98, 149, 243);
border-top-left-radius: 14px;
border-top-right-radius: 14px;
.data-title2 {
position: absolute;
left: 15px;
height: 50px;
font-size: 16px;
line-height: 50px;
color: #fff;
}
.close {
height: 50px;
position: absolute;
right: 15px;
cursor: pointer;
display: flex;
flex-direction: column;
justify-content: center;
img {
vertical-align: center;
}
//
.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;
font-size: 16px;
margin: 1vh 0;
border: 4px solid #dbdbdb;
border-radius: 20px;
cursor: pointer;
background-color: rgba(216, 216, 216, 0.1);
// &:first-child{
// margin: 0 0px 50px 0;
// }
// &:last-child{
// margin-left: 50px;
// }
img {
width: 15%;
margin: 0;
//height: 154px;
//margin: 0 45px;
}
p {
font-size: 16px;
color: #000;
text-align: left;
padding: 0 20px;
// white-space: wrap;
// overflow: hidden;
// text-overflow: ellipsis;
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
&.checked {
background: rgba(97, 145, 255, 0.1) url('../../assets/svg/checked.svg') 96% 7% / auto no-repeat;
border-color: #6191ff;
}
}
}
}
.tips2 {
margin: 1vh 0 2vh 0;
text-align: left;
font-size: 16px;
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: 180px;
height: 180px;
display: flex;
justify-content: center;
margin: 5px 10px;
position: relative;
cursor: pointer;
.file {
.dia-header2 {
position: relative;
max-width: 180px;
max-height: 130px;
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;
height: 50px;
line-height: 50px;
background-color: rgb(98, 149, 243);
border-top-left-radius: 14px;
border-top-right-radius: 14px;
.data-title2 {
position: absolute;
left: 15px;
height: 50px;
font-size: 16px;
line-height: 50px;
color: #fff;
}
}
.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;
.close {
height: 50px;
position: absolute;
right: 15px;
cursor: pointer;
display: flex;
flex-direction: column;
justify-content: center;
img {
vertical-align: center;
}
}
}
}
}
.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;
.tips2 {
margin: 1vh 0 2vh 0;
text-align: left;
font-size: 16px;
color: #000;
}
.left {
display: flex;
width: 50%;
flex-wrap: wrap;
.file {
position: relative;
width: 140px;
height: 140px;
text-align: center;
background: url('../../assets/img/data-frame.png') 0 0 / cover no-repeat;
cursor: pointer;
margin: 5px 7px;
img {
width: 130px;
max-height: 90px;
.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: 180px;
height: 180px;
display: flex;
justify-content: center;
margin: 5px 10px;
position: relative;
cursor: pointer;
.file {
position: relative;
max-width: 180px;
max-height: 130px;
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;
}
}
}
&: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;
}
.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;
}
p {
position: absolute;
bottom: 0;
width: 100%;
line-height: 54px;
text-align: center;
font-size: 18px;
color: #000;
.left {
display: flex;
width: 50%;
flex-wrap: wrap;
.file {
position: relative;
width: 140px;
height: 140px;
text-align: center;
background: url('../../assets/img/data-frame.png') 0 0 / cover no-repeat;
cursor: pointer;
margin: 5px 7px;
img {
width: 130px;
max-height: 90px;
}
&: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;
}
}
}
&.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;
}
.right {
margin-left: 5%;
}
}
&.active {
left: 0;
z-index: 9999;
}
img {
cursor: pointer;
&:last-child {
margin-right: 0;
.else {
width: 100%;
}
}
}
.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;
.dia-footer2 {
height: 70px;
line-height: 70px;
display: flex;
justify-content: flex-end;
align-items: center;
.busyButtonBox {
display: flex;
justify-content: space-between;
}
}
}
}
.sitting {
opacity: 0;
cursor: default !important;
opacity: 0;
cursor: default !important;
}
</style>

@ -20,13 +20,13 @@
<script>
import { mapMutations } from 'vuex'
import Setting from '@/setting'
import Util from '@/libs/util'
import util from '@/libs/util'
import Cookie from 'js-cookie'
export default {
data () {
return {
isDev: Setting.isDev,
token: Util.local.get(Setting.tokenKey),
token: util.local.get(Setting.tokenKey),
ip: localStorage.getItem('localIp') ? +localStorage.getItem('localIp') : 0,
};
},
@ -59,7 +59,7 @@ export default {
const cid = sessionStorage.getItem('cid')
href += `station/preview?courseId=${cid}&curriculumName=银行项目&mallId=${this.$route.query.mallId}`
}
Util.clearSession()
sessionStorage.clear()
location.href = href
},
@ -72,6 +72,7 @@ export default {
'$route.path': {
handler (newVal) {
this.$nextTick(() => {
console.log(newVal)
if (newVal === '/index/list') {
this.$refs.exitHeader.style.backgroundColor = 'rgb(250, 250, 250)'
} else {

@ -1,8 +1,6 @@
import cookies from './util.cookies'
import { _local, _session } from './util.db'
import { Message } from 'element-ui'
import Cookie from 'js-cookie'
import router from '@/router'
const util = {
cookies,
@ -135,12 +133,6 @@ const util = {
errorMsg (message, duration = 3000) {
return Message.error({ message, showClose: true, offset: (document.documentElement.clientHeight - 40) / 2, duration })
},
// 清除sessionStorage后补上职站的token
clearSession () {
const token = sessionStorage.getItem('token')
sessionStorage.clear()
sessionStorage.setItem(Cookie.get('manager') ? 'oc_server_token' : 'oc_client_token', token)
},
// 授信年限
creditTerms: [
{

@ -202,7 +202,7 @@
<!-- 动画开始 -->
<div v-if="popText === '密码器'" style="width:800px;padding-right:150px;padding-top:80px">
<el-form :model="passwordForm" :rules="passwordRules" ref="form" label-width="180px"
key="passwordFormpasswordAgain" class="flex flex-col justify-center" @submit.native.prevent>
key="passwordFormpasswordAgain" class="flex flex-col justify-center">
<el-form-item class="password-wrap" label="密码" prop="passwordAgain">
<el-input v-focus v-model.trim="passwordForm.passwordAgain" maxlength="6"
onkeyup="{this.value=this.value.replace(/\D/g,'')}" autocomplete="new-password"
@ -698,6 +698,10 @@ export default {
},
computed: {
...mapState('system', ['isCredit', 'creditImportIndex', 'creditImportIds']),
//
isCredit: function () {
return this.$store.state.system.isCredit;
},
// id
isSeal () {
const stampMap2 = {
@ -1548,9 +1552,6 @@ export default {
this.replaceThings({ name: this.myMap, idArr: [...this.boxStart] })
this.replaceThingsGoods([...this.boxStart2])
}
sessionStorage.getItem(this.isCredit ? 'creditPath' : 'computerPath') && this.showManage()
} else {
sessionStorage.getItem(this.isCredit ? 'creditPath' : 'computerPath') && this.showManage()
}
// v-drag
@ -1564,12 +1565,9 @@ export default {
closeData () {
this.checkList = [];
},
showManage (toDefault) {//
const path = sessionStorage.getItem(this.isCredit ? 'creditPath' : 'computerPath')
if (path || toDefault) {
this.manageVisible = true;
this.$router.push(path || (this.isCredit ? '/counter/list/manage/personalLoans' : '/counter/list/manage/consumerClient'))
}
showManage () {//
this.manageVisible = true;
this.$router.push(sessionStorage.getItem('computerPath') || (this.isCredit ? '/counter/list/manage/personalLoans' : '/counter/list/manage/consumerClient'))
},
popSure () {/* 弹框-确定 */
//
@ -2168,10 +2166,6 @@ export default {
}).catch((error) => {
})
} else if (this.nbm == 12) {
if (!this.receptionList.length) {
this.setTipsOperate('请选择需要导入的报表!')
return
}
this.setCreditImportIds(this.receptionList[0].id)
this.setTipsOperate('导入成功!')
}
@ -2185,7 +2179,7 @@ export default {
this.nbm !== 5 && this.$store.commit('system/changePop', { show: false, text: '' }) //
}
// }
debugger
if (this.nbm !== 5) {
//
this.closePop()

@ -13,7 +13,7 @@
<div class="sth international cp" @click="toPart('/counter', true)">
<!-- <img width="100%" v-lazy="lazy1" alt="" @click="toPart('/counter')"> -->
<img width="100%" v-lazy="lazy2" alt="" />
<img width="100%" v-lazy="lazy2" alt="" @click="showComing" />
<!-- src="@/assets/img/integrated-counter.png" -->
<div class="name" @click="toPart('/counter', true)">信贷部</div>
</div>
@ -41,7 +41,6 @@
import { mapMutations, mapState } from 'vuex';
import saveSystemModule from '@/mixins/saveSystemModule'
import Bus from '@/libs/bus'
import Util from '@/libs/util'
export default {
name: 'index',
mixins: [saveSystemModule],
@ -61,7 +60,7 @@ export default {
},
created () {
if (!sessionStorage.getItem('firstLoad2')) {
Util.clearSession()
sessionStorage.clear()
// sessionStorage.removeItem('submited')
// sessionStorage.removeItem('businessKey')
this.setBusinessKey('')

File diff suppressed because it is too large Load Diff

@ -1,9 +1,9 @@
<template>
<!-- :style="fullScreen?'height:100vh;':'height: 80vh;'" -->
<div class="box" :class="fullScreen || isCredit ? 'h-4/5' : ''">
<!-- :style="full?'height:100vh;':'height: 80vh;'" -->
<div class="box" :class="full || isCredit ? 'h-4/5' : ''">
<div class="nav">
<!-- <div class="top" :style="fullScreen?'border-radius:0':'border-top-left-radius: 20px;'"> select-none -->
<div class="top" :style="fullScreen ? 'border-radius:0' : 'border-top-left-radius: 20px;'">
<!-- <div class="top" :style="full?'border-radius:0':'border-top-left-radius: 20px;'"> select-none -->
<div class="top" :style="full ? 'border-radius:0' : 'border-top-left-radius: 20px;'">
<p style="margin:auto">商业银行系统</p>
</div>
<!-- <div class="body2">
@ -15,10 +15,9 @@
<!-- <navbar class="body"></navbar> -->
</div>
<div class="manage-layout">
<div class="top" :style="fullScreen ? 'border-radius:0' : 'border-top-right-radius: 20px;'">
<img v-show="!fullScreen && !isCredit" src="../../../assets/svg/fullscreen.svg" alt=""
@click="handleFullscreen">
<img v-show="fullScreen" src="../../../assets/svg/shrink.svg" alt="" @click="shrink">
<div class="top" :style="full ? 'border-radius:0' : 'border-top-right-radius: 20px;'">
<img v-show="!full && !isCredit" src="../../../assets/svg/fullscreen.svg" alt="" @click="handleFullscreen">
<img v-show="full" src="../../../assets/svg/shrink.svg" alt="" @click="shrink">
<i @click="close" class="el-icon-close"></i>
</div>
<div class="manage-content">
@ -38,44 +37,41 @@ export default {
name: 'index',
data () {
return {
curRoute: ''
fullscreen: this.$store.state.system.fullScreen,// --store
}
},
components: {
navbar
},
computed: {
...mapState('system', ['fullScreen', 'isCredit'])
},
watch: {
'$route': {
handler () {
this.curRoute = this.$route.path
},
immediate: true
}
},
beforeDestroy () {
// sessionStorage.setItem(this.curRoute.includes('Loans') ? 'creditPath' : 'computerPath', this.curRoute) //
const route = this.curRoute
if (route.includes('Loans')) {
if (route !== '/counter/list/manage/personalLoans-detail' && route !== '/counter/list/manage/corporateLoans-apply') sessionStorage.removeItem('creditPath')
} else {
sessionStorage.setItem('computerPath', this.curRoute)
}
sessionStorage.getItem('submited') || this.$router.push('/counter/list/')
},
// beforeMount() {
// const path = sessionStorage.getItem('computerPath')
// console.log('router-view')
// console.log(path)
// this.$router.push(path)
// },
methods: {
close () {
// 退 退
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
handleFullscreen () {
this.fullscreen = true
this.$store.commit('system/changeFullscreen', true)
},
shrink () {
this.fullscreen = false
this.$store.commit('system/changeFullscreen', false)
},
},
computed: {
full: function () {
return this.$store.state.system.fullScreen
},
...mapState({
isCredit: state => state.system.isCredit
})
}
};
</script>

@ -1,40 +1,47 @@
<!-- 现金管理 -->
<template>
<div class="wrap">
<div class="nav">
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="1">现金领用</el-menu-item>
<el-menu-item index="2">现金上缴</el-menu-item>
<el-menu-item index="3">现金调入</el-menu-item>
<el-menu-item index="4">现金调出</el-menu-item>
</el-menu>
<div class="wrap">
<div class="nav">
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="1">现金领用</el-menu-item>
<el-menu-item index="2">现金上缴</el-menu-item>
<el-menu-item index="3">现金调入</el-menu-item>
<el-menu-item index="4">现金调出</el-menu-item>
</el-menu>
</div>
<div class="title">
<p>重空现金</p>
<i class="el-icon-arrow-right"></i>
<p>现金管理</p>
<i class="el-icon-arrow-right"></i>
<p>{{textObj[activeIndex]}}</p>
</div>
<cash-recipients v-if="activeIndex==='1'"></cash-recipients>
<cashTransferInto v-if="activeIndex==='2'"></cashTransferInto>
<cashPaid v-if="activeIndex==='3'"></cashPaid>
<cashOut v-if="activeIndex==='4'"></cashOut>
<el-dialog
style="margin-top:10vh"
:visible.sync="visible"
:modal="false"
width="40%"
:close-on-click-modal="false"
:show-close="false"
custom-class="data-dia"
>
<div slot="title" class="dia-header">
<div class="data-title" v-throttle>提交</div>
</div>
<div class="popBody">
<h2>本业务需要授权</h2>
</div>
<div class="popBtns">
<el-button class="close btn" @click="visible = false"> </el-button>
<el-button class="sure btn" type="primary" @click="visible = false"> </el-button>
</div>
</el-dialog>
</div>
<div class="title">
<p>重控现金</p>
<i class="el-icon-arrow-right"></i>
<p>现金管理</p>
<i class="el-icon-arrow-right"></i>
<p>{{ textObj[activeIndex] }}</p>
</div>
<cash-recipients v-if="activeIndex === '1'"></cash-recipients>
<cashTransferInto v-if="activeIndex === '2'"></cashTransferInto>
<cashPaid v-if="activeIndex === '3'"></cashPaid>
<cashOut v-if="activeIndex === '4'"></cashOut>
<el-dialog style="margin-top:10vh" :visible.sync="visible" :modal="false" width="40%" :close-on-click-modal="false"
:show-close="false" custom-class="data-dia">
<div slot="title" class="dia-header">
<div class="data-title" v-throttle>提交</div>
</div>
<div class="popBody">
<h2>本业务需要授权</h2>
</div>
<div class="popBtns">
<el-button class="close btn" @click="visible = false"> </el-button>
<el-button class="sure btn" type="primary" @click="visible = false"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
@ -43,173 +50,158 @@ import cashTransferInto from './cashTransferInto.vue'
import cashPaid from './cashPaid.vue'
import cashOut from './cashOut.vue'
export default {
name: 'index',
components: {
cashRecipients,
cashTransferInto,
cashPaid,
cashOut
},
data () {
return {
text: '',/* 顶部文字 */
cacheVal: '',
textObj: {
'1': '现金领用',
'2': '现金上缴',
'3': '现金调入',
'4': '现金调出',
},
form: {
},
visible: false,
options: [],
activeIndex: '',
second: [//
],
}
},
methods: {
handleSelect (val) {
this.text = this.textObj[val]
this.activeIndex = val
this.cacheVal = val
name: 'index',
components:{
cashRecipients,
cashTransferInto,
cashPaid,
cashOut
},
data() {
return {
text:'',/* 顶部文字 */
cacheVal: '',
textObj:{
'1':'现金领用',
'2':'现金上缴',
'3':'现金调入',
'4':'现金调出',
},
form:{
},
visible:false,
options:[],
activeIndex:'',
second:[//
],
}
},
},
created () {
if (sessionStorage.getItem('importantCashIndex')) {
this.handleSelect(sessionStorage.getItem('importantCashIndex'))
} else {
this.handleSelect('1')
methods: {
handleSelect(val){
this.text = this.textObj[val]
this.activeIndex = val
this.cacheVal = val
},
},
created() {
if(sessionStorage.getItem('importantCashIndex')) {
this.handleSelect(sessionStorage.getItem('importantCashIndex'))
}else {
this.handleSelect('1')
}
},
destroyed() {
sessionStorage.setItem('importantCashIndex', this.cacheVal)
}
},
destroyed () {
sessionStorage.setItem('importantCashIndex', this.cacheVal)
}
};
</script>
<style lang="scss" scoped>
.wrap {
width: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
padding: 24px 0 24px 24px;
.nav {
/deep/ .el-menu.el-menu--horizontal {
border: 0;
}
/deep/ .el-menu--horizontal>.el-menu-item.is-active {
border: 2px solid #568DF2;
border-radius: 10px;
color: #000;
}
/deep/ .el-menu--horizontal>.el-menu-item {
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
}
}
.title {
height: 60px;
display: flex;
align-items: center;
font-size: 20px;
padding-left: 0px;
margin-top: 10px;
}
.body {
margin-top: 50px;
overflow-y: auto;
overflow-x: hidden;
.idCard {
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
}
.add {
position: relative;
&::after {
content: '';
display: block;
position: absolute;
right: 3%;
top: -4%;
border: 1px dashed #CFDDFF;
width: 88%;
height: 268px;
}
.addBtn {
position: absolute;
left: 0;
top: 50%;
transform: translate(50%, -50%);
font-size: 22px;
}
}
}
.submitBtn {
position: relative;
width: 300px;
font-size: 18px;
height: 45px;
margin-top: 50px;
border-radius: 10px;
bottom: 10px;
left: 50%;
transform: translate(-50%, -50%);
}
.popBody {
min-height: 200px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}
.popBtns {
display: flex;
justify-content: space-between;
align-items: center;
.btn {
width: 180px;
border-radius: 10px;
font-size: 18px;
}
.close {
background: #CFDEFF;
color: #6191FF;
}
.sure {
background: #6191FF;
color: #fff;
.wrap{
width: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
padding: 24px 0 24px 24px;
.nav{
/deep/ .el-menu.el-menu--horizontal{
border: 0;
}
/deep/ .el-menu--horizontal > .el-menu-item.is-active{
border:2px solid #568DF2;
border-radius: 10px;
color: #000;
}
/deep/ .el-menu--horizontal > .el-menu-item{
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
}
}
.title{
height: 60px;
display: flex;
align-items: center;
font-size: 20px;
padding-left: 0px;
margin-top: 10px;
}
.body{
margin-top: 50px;
overflow-y: auto;
overflow-x: hidden;
.idCard{
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
}
.add{
position: relative;
&::after{
content: '';
display: block;
position: absolute;
right: 3%;
top: -4%;
border: 1px dashed #CFDDFF;
width: 88%;
height: 268px;
}
.addBtn{
position: absolute;
left: 0;
top: 50%;
transform: translate(50%,-50%);
font-size: 22px;
}
}
}
.submitBtn{
position: relative;
width: 300px;
font-size: 18px;
height: 45px;
margin-top: 50px;
border-radius: 10px;
bottom: 10px;
left: 50%;
transform: translate(-50%,-50%);
}
.popBody{
min-height: 200px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}
.popBtns{
display: flex;
justify-content: space-between;
align-items: center;
.btn{
width: 180px;
border-radius: 10px;
font-size: 18px;
}
.close{
background: #CFDEFF;
color: #6191FF;
}
.sure{
background: #6191FF;
color: #fff;
}
}
}
}
}
</style>

@ -1,42 +1,49 @@
<!-- 现金管理 -->
<template>
<div class="wrap">
<div class="nav">
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="1">凭证领用</el-menu-item>
<el-menu-item index="2">凭证上缴</el-menu-item>
<el-menu-item index="3">凭证调入</el-menu-item>
<el-menu-item index="4">凭证调出</el-menu-item>
</el-menu>
<div class="wrap">
<div class="nav">
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="1">凭证领用</el-menu-item>
<el-menu-item index="2">凭证上缴</el-menu-item>
<el-menu-item index="3">凭证调入</el-menu-item>
<el-menu-item index="4">凭证调出</el-menu-item>
</el-menu>
</div>
<div class="title">
<p>重空现金</p>
<i class="el-icon-arrow-right"></i>
<p>凭证管理</p>
<i class="el-icon-arrow-right"></i>
<p>{{textObj[activeIndex]}}</p>
</div>
<!-- 开户 -->
<cash-recipients v-if="activeIndex==='1'"></cash-recipients>
<cash-transfer-into v-if="activeIndex==='2'"></cash-transfer-into>
<cash-paid v-if="activeIndex==='3'"></cash-paid>
<cash-out v-if="activeIndex==='4'"></cash-out>
<el-dialog
style="margin-top:10vh"
:visible.sync="visible"
:modal="false"
width="40%"
:close-on-click-modal="false"
:show-close="false"
custom-class="data-dia"
>
<div slot="title" class="dia-header">
<div class="data-title">提交</div>
</div>
<div class="popBody">
<h2>本业务需要授权</h2>
</div>
<div class="popBtns">
<el-button class="close btn" @click="visible = false"> </el-button>
<el-button class="sure btn" type="primary" @click="visible = false"> </el-button>
</div>
</el-dialog>
</div>
<div class="title">
<p>重控现金</p>
<i class="el-icon-arrow-right"></i>
<p>凭证管理</p>
<i class="el-icon-arrow-right"></i>
<p>{{ textObj[activeIndex] }}</p>
</div>
<!-- 开户 -->
<cash-recipients v-if="activeIndex === '1'"></cash-recipients>
<cash-transfer-into v-if="activeIndex === '2'"></cash-transfer-into>
<cash-paid v-if="activeIndex === '3'"></cash-paid>
<cash-out v-if="activeIndex === '4'"></cash-out>
<el-dialog style="margin-top:10vh" :visible.sync="visible" :modal="false" width="40%" :close-on-click-modal="false"
:show-close="false" custom-class="data-dia">
<div slot="title" class="dia-header">
<div class="data-title">提交</div>
</div>
<div class="popBody">
<h2>本业务需要授权</h2>
</div>
<div class="popBtns">
<el-button class="close btn" @click="visible = false"> </el-button>
<el-button class="sure btn" type="primary" @click="visible = false"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
@ -45,183 +52,168 @@ import cashTransferInto from './cashTransferInto.vue'
import cashPaid from './cashPaid.vue'
import cashOut from './cashOut.vue'
export default {
name: 'index',
components: {
cashRecipients,
cashTransferInto,
cashPaid,
cashOut
},
data () {
return {
text: '',/* 顶部文字 */
cacheVal: '',
textObj: {
'1': '凭证领用',
'2': '凭证上缴',
'3': '凭证调入',
'4': '凭证调出',
},
form: {
},
visible: false,
options: [],
activeIndex: '1',
second: [//
],
}
},
created () {
if (sessionStorage.getItem('importantCashIndex2')) {
this.handleSelect(sessionStorage.getItem('importantCashIndex2'))
} else {
this.handleSelect('1')
}
},
destroyed () {
sessionStorage.setItem('importantCashIndex2', this.cacheVal)
},
methods: {
handleSelect (val) {
this.text = this.textObj[val]
this.activeIndex = val
this.cacheVal = val
name: 'index',
components:{
cashRecipients,
cashTransferInto,
cashPaid,
cashOut
},
data() {
return {
text:'',/* 顶部文字 */
cacheVal: '',
textObj:{
'1':'凭证领用',
'2':'凭证上缴',
'3':'凭证调入',
'4':'凭证调出',
},
form:{
},
visible:false,
options:[],
activeIndex:'1',
second:[//
],
}
},
created() {
if(sessionStorage.getItem('importantCashIndex2')) {
this.handleSelect(sessionStorage.getItem('importantCashIndex2'))
}else {
this.handleSelect('1')
}
},
destroyed() {
sessionStorage.setItem('importantCashIndex2', this.cacheVal)
},
methods: {
handleSelect(val){
this.text = this.textObj[val]
this.activeIndex = val
this.cacheVal = val
},
}
}
};
</script>
<style lang="scss" scoped>
.wrap {
width: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
padding: 24px 0 24px 24px;
.nav {
/deep/ .el-menu.el-menu--horizontal {
border: 0;
}
/deep/ .el-menu--horizontal>.el-menu-item.is-active {
border: 2px solid #568DF2;
border-radius: 10px;
color: #000;
.wrap{
width: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
padding: 24px 0 24px 24px;
.nav{
/deep/ .el-menu.el-menu--horizontal{
border: 0;
}
/deep/ .el-menu--horizontal > .el-menu-item.is-active{
border:2px solid #568DF2;
border-radius: 10px;
color: #000;
}
/deep/ .el-menu--horizontal > .el-menu-item{
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
}
}
.title{
height: 60px;
display: flex;
align-items: center;
font-size: 20px;
padding-left: 0px;
margin-top: 10px;
}
.body{
margin-top: 50px;
overflow-x: hidden;
overflow-y: auto;
.idCard{
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
}
.add{
position: relative;
&::after{
content: '';
display: block;
position: absolute;
right: 3%;
top: -4%;
border: 1px dashed #CFDDFF;
width: 88%;
height: 268px;
}
.addBtn{
position: absolute;
left: 0;
top: 50%;
transform: translate(50%,-50%);
font-size: 22px;
}
}
}
.submitBtn{
position: relative;
width: 300px;
font-size: 18px;
height: 45px;
margin-top: 50px;
border-radius: 10px;
bottom: 10px;
left: 50%;
transform: translate(-50%,-50%);
}
.popBody{
min-height: 200px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}
.popBtns{
display: flex;
justify-content: space-between;
align-items: center;
.btn{
width: 180px;
border-radius: 10px;
font-size: 18px;
}
.close{
background: #CFDEFF;
color: #6191FF;
}
.sure{
background: #6191FF;
color: #fff;
}
}
}
/deep/ .el-menu--horizontal>.el-menu-item {
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
/deep/.el-input input {
text-align: center;
}
}
.title {
height: 60px;
display: flex;
align-items: center;
font-size: 20px;
padding-left: 0px;
margin-top: 10px;
}
.body {
margin-top: 50px;
overflow-x: hidden;
overflow-y: auto;
.idCard {
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
}
.add {
position: relative;
&::after {
content: '';
display: block;
position: absolute;
right: 3%;
top: -4%;
border: 1px dashed #CFDDFF;
width: 88%;
height: 268px;
}
.addBtn {
position: absolute;
left: 0;
top: 50%;
transform: translate(50%, -50%);
font-size: 22px;
}
}
}
.submitBtn {
position: relative;
width: 300px;
font-size: 18px;
height: 45px;
margin-top: 50px;
border-radius: 10px;
bottom: 10px;
left: 50%;
transform: translate(-50%, -50%);
}
.popBody {
min-height: 200px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}
.popBtns {
display: flex;
justify-content: space-between;
align-items: center;
.btn {
width: 180px;
border-radius: 10px;
font-size: 18px;
}
.close {
background: #CFDEFF;
color: #6191FF;
/deep/ .blueText{
color: blue;
}
.sure {
background: #6191FF;
color: #fff;
}
}
}
/deep/.el-input input {
text-align: center;
}
/deep/ .blueText {
color: blue;
}
</style>

@ -1,82 +1,76 @@
<!-- 现金管理 -->
<template>
<div class="wrap">
<!-- <div class="title">
<div class="wrap">
<!-- <div class="title">
<p>重空现金</p>
<i class="el-icon-arrow-right"></i>
<p>支票管理</p>
<i class="el-icon-arrow-right"></i>
<p>支票出售</p>
</div> -->
<my-title :titleArr="['重现金', '支票管理', '支票出售']" />
<my-title :titleArr="['重现金', '支票管理', '支票出售']"/>
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="账号" prop="username">
<el-input @blur="onBlur()" :value="form.username" @input="val => checkHanzi(val, form, 'username')"
ref="username"></el-input>
</el-form-item>
<el-form-item label="凭证类型" prop="voucherType">
<el-select v-model.trim="form.voucherType" placeholder="请选择" ref="voucherType">
<!-- 15: 'IC卡',
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="账号" prop="username">
<el-input @blur="onBlur()" :value="form.username" @input="val => checkHanzi(val, form, 'username')" ref="username"></el-input>
</el-form-item>
<el-form-item label="凭证类型" prop="voucherType">
<el-select v-model.trim="form.voucherType" placeholder="请选择" ref="voucherType">
<!-- 15: 'IC卡',
115: '转账支票',
116: '现金支票',
123: '存单',
127: '银行' -->
<el-option label="IC卡" :value="15"> </el-option>
<el-option label="转账支票" :value="115"> </el-option>
<el-option label="现金支票" :value="116"> </el-option>
<el-option label="存单" :value="123"> </el-option>
<el-option label="银行" :value="127"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="凭证终止号" prop="endNumber">
<el-input :value="form.endNumber" @blur="getBlur()"
@input="val => certificateNumber(val, form, 'endNumber')" ref="endNumber"></el-input>
</el-form-item>
<el-form-item label="收费类型" prop="chargeWay2">
<el-select v-model.trim="form.chargeWay2" placeholder="请选择" ref="chargeWay2">
<el-option label="现金" :value="135"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="手续费" prop="serviceCharge">
<el-input :value="form.serviceCharge" @input="(val) => ismoney(val, form, 'serviceCharge')"
ref="serviceCharge"></el-input>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户名称" prop="customerName">
<el-input v-model.trim="form.customerName" ref="customerName"></el-input>
</el-form-item>
<el-form-item label="凭证起始号" prop="startNumber">
<el-input :value="form.startNumber" @input="(val) => certificateNumber(val, form, 'startNumber')"
ref="startNumber"></el-input>
</el-form-item>
<el-form-item label="数量" prop="number">
<el-input :value="form.number" disabled @input="val => inputListen(val, form, 'number')"
ref="number"></el-input>
</el-form-item>
<el-form-item label="工本费" prop="cost">
<el-input :value="form.cost" @input="val => ismoney(val, form, 'cost')" ref="cost"></el-input>
</el-form-item>
<el-form-item label="摘要" prop="abstract">
<el-input v-model.trim="form.abstract"></el-input>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitIt()" type="primary" class="submitBtn">提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
@submitIt="submitForm2" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" class="wrap" /> -->
<el-option label="IC卡" :value="15"> </el-option>
<el-option label="转账支票" :value="115"> </el-option>
<el-option label="现金支票" :value="116"> </el-option>
<el-option label="存单" :value="123"> </el-option>
<el-option label="银行" :value="127"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="凭证终止号" prop="endNumber">
<el-input :value="form.endNumber" @blur="getBlur()" @input="val => certificateNumber(val, form, 'endNumber')" ref="endNumber"></el-input>
</el-form-item>
<el-form-item label="收费类型" prop="chargeWay2">
<el-select v-model.trim="form.chargeWay2" placeholder="请选择" ref="chargeWay2">
<el-option label="现金" :value="135"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="手续费" prop="serviceCharge">
<el-input :value="form.serviceCharge" @input="(val) => ismoney(val, form, 'serviceCharge')" ref="serviceCharge"></el-input>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户名称" prop="customerName">
<el-input v-model.trim="form.customerName" ref="customerName" ></el-input>
</el-form-item>
<el-form-item label="凭证起始号" prop="startNumber">
<el-input :value="form.startNumber" @input="(val) => certificateNumber(val, form, 'startNumber')" ref="startNumber"></el-input>
</el-form-item>
<el-form-item label="数量" prop="number">
<el-input :value="form.number" disabled @input="val => inputListen(val, form, 'number')" ref="number" ></el-input>
</el-form-item>
<el-form-item label="工本费" prop="cost">
<el-input :value="form.cost" @input="val => ismoney(val, form, 'cost')" ref="cost" ></el-input>
</el-form-item>
<el-form-item label="摘要" prop="abstract">
<el-input v-model.trim="form.abstract" ></el-input>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitIt()" type="primary" class="submitBtn">提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName" @submitIt="submitForm2" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" class="wrap" /> -->
</template>
<script>
import { myValidate, ismoney, checkName, checkHanzi, autoPlay, autoPlay2, inputListen, certificateNumber } from '@/utils/utilFunction.js'
import { myValidate, ismoney, checkName, checkHanzi, autoPlay, autoPlay2, inputListen, certificateNumber } from '@/utils/utilFunction.js'
import { addOperation, getOperation } from '@/api/http';
import MyTitle from '@/components/myTitle'
@ -87,321 +81,310 @@ import TipsBefore from '@/mixins/tipsBefore'
const moduleName = 'controlCash3/index'
export default {
name: 'index',
mixins: [TipsBefore],
components: {
NeedBefore,
MyDialog,
MyTitle
},
data () {
return {
moduleName,
visible: false,
unNeed: false,
isNeedBefore: '',
needBefore: '',
form: {
//
username: '', //
startNumber: '', //
endNumber: '', //
//
voucherType: '', //
chargeWay2: 135, //
serviceCharge: '5.00', //
customerName: '', //
number: '', //
cost: '', //
abstract: '' //
},
formName: {
//
username: '账号', //
startNumber: '凭证起始号', //
endNumber: '凭证终止号', //
//
voucherType: '凭证类型', //
chargeWay2: '收费类型', //
serviceCharge: '手续费', //
customerName: '客户名称', //
number: '数量', //
cost: '工本费', //
abstract: '摘要' //
},
myTable2: {
240: {
prop: 'username',
type: '3',
"subjectId": 84,
},
536: {
prop: 'startNumber',
type: '3',
"subjectId": 95,
},
//
550: {
prop: 'endNumber',
type: '3',
"subjectId": 103,
}
},
myTable: {
241: {
prop: 'customerName',
type: '3',
"subjectId": 7,
},
253: {
prop: 'voucherType',
type: '1',
"subjectId": 11,
},
533: {
prop: 'number',
type: '3',
"subjectId": 94,
},
537: {
prop: 'cost',
type: '3',
"subjectId": 96,
},
538: {
prop: 'chargeWay2',
type: '1',
"subjectId": 90,
},
539: {
prop: 'abstract',
type: '3',
"subjectId": 97,
},
540: {
prop: 'serviceCharge',
type: '3',
"subjectId": 98,
},
},
rules: {
username: [
{
required: true,
message: '请输入账号',
trigger: 'blur'
}
],
startNumber: [
{
required: true,
message: '请输入凭证起始号',
trigger: 'blur'
}
],
endNumber: [
{
required: true,
message: '请输入凭证终止号',
trigger: 'blur'
}
],
},
submited: 0
}
},
created () {
// this.handleSelect(1)
if (this.inMyWork(moduleName)) {
if (this.needsModule(moduleName) === '') {
} else {
this.isNeedBefore = true
this.needBefore = this.needsModule(moduleName)
}
} else {
this.isNeedBefore = true
this.unNeed = true
}
},
mounted () {
this.$refs.username.focus()
},
methods: {
...mapMutations({
setTipsOperate: 'system/setTipsOperate'
}),
onBlur () {
if (this.form.username) {
const { collectingCompany } = this.dataFlow
this.form.customerName = collectingCompany
} else {
this.form.customerName = ''
}
},
getBlur () {
const number = Number(this.form.endNumber) - Number(this.form.startNumber)
if (number < 0 || this.form.endNumber.length < this.form.startNumber.length) {
this.form.number = 0
return
}
this.form.number = number
name: 'index',
mixins: [ TipsBefore ],
components:{
NeedBefore,
MyDialog,
MyTitle
},
submitIt () {
if (this.submited) return this.$message.error('已提交!')
this.$refs.form.validate(myValidate(() => {
if (this.form.number <= 0) {
// this.$message({
// message: ',',
// type: 'warning',
// center: true
// });
this.setTipsOperate('结束号码应大于起始号码')
return
data() {
return {
moduleName,
visible: false,
unNeed: false,
isNeedBefore: '',
needBefore: '',
form:{
//
username: '', //
startNumber: '', //
endNumber: '', //
//
voucherType: '', //
chargeWay2: 135, //
serviceCharge: '5.00', //
customerName: '', //
number: '', //
cost: '', //
abstract: '' //
},
formName:{
//
username: '账号', //
startNumber: '凭证起始号', //
endNumber: '凭证终止号', //
//
voucherType: '凭证类型', //
chargeWay2: '收费类型', //
serviceCharge: '手续费', //
customerName: '客户名称', //
number: '数量', //
cost: '工本费', //
abstract: '摘要' //
},
myTable2: {
240: {
prop: 'username',
type: '3',
"subjectId": 84,
},
536: {
prop: 'startNumber',
type: '3',
"subjectId": 95,
},
//
550: {
prop: 'endNumber',
type: '3',
"subjectId": 103,
}
},
myTable: {
241: {
prop: 'customerName',
type: '3',
"subjectId": 7,
},
253: {
prop: 'voucherType',
type: '1',
"subjectId": 11,
},
533: {
prop: 'number',
type: '3',
"subjectId": 94,
},
537: {
prop: 'cost',
type: '3',
"subjectId": 96,
},
538: {
prop: 'chargeWay2',
type: '1',
"subjectId": 90,
},
539: {
prop: 'abstract',
type: '3',
"subjectId": 97,
},
540: {
prop: 'serviceCharge',
type: '3',
"subjectId": 98,
},
},
rules: {
username: [
{
required: true,
message: '请输入账号',
trigger: 'blur'
}
],
startNumber: [
{
required: true,
message: '请输入凭证起始号',
trigger: 'blur'
}
],
endNumber: [
{
required: true,
message: '请输入凭证终止号',
trigger: 'blur'
}
],
},
submited: 0
}
if (this.form.startNumber.length !== this.form.endNumber.length) {
this.setTipsOperate('凭证起始号和凭证终止号长度不同,请检查')
return
},
created() {
// this.handleSelect(1)
if(this.inMyWork(moduleName)) {
if(this.needsModule(moduleName) === '') {
}else {
this.isNeedBefore = true
this.needBefore = this.needsModule(moduleName)
}
}else {
this.isNeedBefore = true
this.unNeed = true
}
this.visible = true
}, this.$refs));
},
mounted() {
this.$refs.username.focus()
},
methods: {
...mapMutations({
setTipsOperate: 'system/setTipsOperate'
}),
onBlur() {
if(this.form.username) {
const { collectingCompany } = this.dataFlow
this.form.customerName = collectingCompany
}else {
this.form.customerName = ''
}
},
getBlur() {
const number = Number(this.form.endNumber) - Number(this.form.startNumber)
if(number<0 || this.form.endNumber.length<this.form.startNumber.length) {
this.form.number = 0
return
}
this.form.number = number
},
submitIt() {
submitForm2 () {
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,31,520'
const cards = [
if (this.submited) return this.$message.error('已提交!')
this.$refs.form.validate(myValidate(() => {
if(this.form.number <= 0) {
// this.$message({
// message: ',',
// type: 'warning',
// center: true
// });
this.setTipsOperate('结束号码应大于起始号码')
return
}
if(this.form.startNumber.length !== this.form.endNumber.length) {
this.setTipsOperate('凭证起始号和凭证终止号长度不同,请检查')
return
}
this.visible = true
}, this.$refs));
},
]
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.submited = 1
submitForm2() {
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,31,520'
const cards = [
]
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.submited = 1
},
checkHanzi: checkHanzi,
inputListen: inputListen,
ismoney: ismoney,
certificateNumber
},
checkHanzi: checkHanzi,
inputListen: inputListen,
ismoney: ismoney,
certificateNumber
},
computed: {
...mapGetters({
needsModule: 'system/needsModule',
inMyWork: 'system/inMyWork',
dataFlow: 'system/dataFlow',
})
}
computed: {
...mapGetters({
needsModule: 'system/needsModule',
inMyWork: 'system/inMyWork',
dataFlow: 'system/dataFlow',
})
}
};
</script>
<style lang="scss" scoped>
// .submitBtn{
// position: relative;
// width: 200px;
// font-size: 18px;
// height: 45px;
// margin-top: 50px;
// border-radius: 10px;
// bottom: 10px;
// left: 50%;
// transform: translate(-50%,-20%);
// }
.el-input,
.el-select {
width: 100% !important;
}
.wrap {
width: 100%;
display: flex;
flex-direction: column;
overflow: auto;
padding: 24px 0 24px 24px;
.nav {
/deep/ .el-menu.el-menu--horizontal {
border: 0;
}
/deep/ .el-menu--horizontal>.el-menu-item.is-active {
border: 2px solid #568DF2;
border-radius: 10px;
color: #000;
}
/deep/ .el-menu--horizontal>.el-menu-item {
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
// .submitBtn{
// position: relative;
// width: 200px;
// font-size: 18px;
// height: 45px;
// margin-top: 50px;
// border-radius: 10px;
// bottom: 10px;
// left: 50%;
// transform: translate(-50%,-20%);
// }
.el-input, .el-select {
width: 100%!important;
}
}
.title {
height: 60px;
display: flex;
align-items: center;
font-size: 20px;
padding-left: 0px;
margin-top: 10px;
}
.body {
margin-top: 50px;
overflow: auto;
.idCard {
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
.wrap{
width: 100%;
display: flex;
flex-direction: column;
overflow: auto;
padding: 24px 0 24px 24px;
.nav{
/deep/ .el-menu.el-menu--horizontal{
border: 0;
}
/deep/ .el-menu--horizontal > .el-menu-item.is-active{
border:2px solid #568DF2;
border-radius: 10px;
color: #000;
}
/deep/ .el-menu--horizontal > .el-menu-item{
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
}
}
.title{
height: 60px;
display: flex;
align-items: center;
font-size: 20px;
padding-left: 0px;
margin-top: 10px;
}
.body{
margin-top: 50px;
overflow: auto;
.idCard{
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
}
.add{
position: relative;
&::after{
content: '';
display: block;
position: absolute;
right: 3%;
top: -4%;
border: 1px dashed #CFDDFF;
width: 88%;
height: 268px;
}
.addBtn{
position: absolute;
left: 0;
top: 50%;
transform: translate(50%,-50%);
font-size: 22px;
}
}
}
.submitBtn{
position: relative;
width: 200px;
font-size: 18px;
height: 45px;
margin-top: 180px;
border-radius: 10px;
bottom: 10px;
left: 50%;
transform: translate(-50%,-20%);
}
}
.add {
position: relative;
&::after {
content: '';
display: block;
position: absolute;
right: 3%;
top: -4%;
border: 1px dashed #CFDDFF;
width: 88%;
height: 268px;
}
.addBtn {
position: absolute;
left: 0;
top: 50%;
transform: translate(50%, -50%);
font-size: 22px;
}
.el-select {
width: 279.17px;
}
}
.submitBtn {
position: relative;
width: 200px;
font-size: 18px;
height: 45px;
margin-top: 180px;
border-radius: 10px;
bottom: 10px;
left: 50%;
transform: translate(-50%, -20%);
}
}
.el-select {
width: 279.17px;
}
</style>

@ -19,7 +19,7 @@
</div>
</el-form-item>
<el-form-item label="缴费单位" prop="paymentUnit">
<el-form-item label="缴费单位" required>
<el-input v-model="form.paymentUnit" />
</el-form-item>
</el-col>
@ -37,7 +37,7 @@
@input="(val) => checkName(val, form, 'customerName')"></el-input>
</el-form-item>
<el-form-item label="户号" prop="houseId">
<el-form-item label="户号" required>
<el-input v-model="form.houseId" />
</el-form-item>
</el-col>
@ -48,7 +48,7 @@
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="缴费金额" prop="paymentMoney">
<el-input v-model="form.paymentMoney" maxlength="15"
<el-input :value="form.paymentMoney" maxlength="15"
@input="val => ismoney(val, form, 'paymentMoney')"></el-input>
</el-form-item>
<el-form-item label="支取密码" required>
@ -69,7 +69,7 @@
</el-form-item>
</el-col>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:spare="false" @submitIt="submitForm2" depositNumber='0816' />
@submitIt="submitForm2" depositNumber='0816' />
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
@ -198,7 +198,7 @@ export default {
trigger: 'blur'
}
],
monthlyWithholding: [
extendDepomonthlyWithholdingsitTarget: [
{
required: true,
message: '请选择每月代扣',
@ -355,10 +355,9 @@ export default {
{ answerId: 725, emptyOne: 111, emptyTwo: form.paymentUnit, operationIds: preId + ',725', type: 3 },
{ answerId: 726, emptyOne: 112, emptyTwo: form.houseId, operationIds: preId + ',726', type: 3 },
{ answerId: 730, emptyOne: 153, emptyTwo: form.address, operationIds: preId + ',730', type: 3 },
{ answerId: 730, emptyOne: '', emptyTwo: '', operationIds: preId + ',730', type: '' },
{ answerId: 727, emptyOne: 113, emptyTwo: form.paymentMoney, operationIds: preId + ',727', type: 3 },
{ answerId: 728, emptyOne: 114, emptyTwo: form.monthlyWithholding, operationIds: preId + ',728', type: 1 },
{ answerId: 729, emptyOne: 17, emptyTwo: form.drawPassword, operationIds: preId + ',729', type: 3 },
)
let params = {
parentId: preId,

@ -25,7 +25,7 @@
<el-form-item label="缴费号码" prop="paymentNum">
<el-input v-model="form.paymentNum" maxlength="30"></el-input>
</el-form-item>
<el-form-item label="每月代扣" prop="monthlyWithholding">
<el-form-item label="每月代扣" prop="monthlyWithholding" required>
<el-radio-group v-model.trim="form.monthlyWithholding">
<el-radio :label="142"></el-radio>
<el-radio :label="143"></el-radio>
@ -66,7 +66,7 @@
</el-form-item>
</el-col>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:spare="false" @submitIt="submitForm2" depositNumber='0816' />
@submitIt="submitForm2" depositNumber='0816' />
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
@ -191,7 +191,7 @@ export default {
trigger: 'blur'
}
],
monthlyWithholding: [
extendDepomonthlyWithholdingsitTarget: [
{
required: true,
message: '请选择每月代扣',
@ -321,7 +321,7 @@ export default {
return
}
if (!this.form.voucherNumber) {
messageCard('请填写账号')
messageCard('请填写凭证号码')
return
}

@ -49,10 +49,10 @@
@input="(val) => checkName(val, form, 'customerName')"></el-input>
</el-form-item>
<el-form-item label="户号" prop="houseId">
<el-form-item label="户号" required>
<el-input v-model="form.houseId" />
</el-form-item>
<el-form-item label="每月代扣" prop="monthlyWithholding">
<el-form-item label="每月代扣" prop="monthlyWithholding" required>
<el-radio-group v-model.trim="form.monthlyWithholding">
<el-radio :label="142"></el-radio>
<el-radio :label="143"></el-radio>
@ -60,7 +60,7 @@
</el-form-item>
</el-col>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:spare="false" @submitIt="submitForm2" depositNumber='0816' />
@submitIt="submitForm2" depositNumber='0816' />
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
@ -177,7 +177,7 @@ export default {
trigger: 'blur'
}
],
monthlyWithholding: [
extendDepomonthlyWithholdingsitTarget: [
{
required: true,
message: '请选择每月代扣',
@ -335,7 +335,6 @@ export default {
{ answerId: 717, emptyOne: 112, emptyTwo: form.houseId, operationIds: preId + ',717', type: 3 },
{ answerId: 718, emptyOne: 113, emptyTwo: form.paymentMoney, operationIds: preId + ',718', type: 3 },
{ answerId: 719, emptyOne: 114, emptyTwo: form.monthlyWithholding, operationIds: preId + ',719', type: 1 },
{ answerId: 720, emptyOne: 114, emptyTwo: form.drawPassword, operationIds: preId + ',720', type: 3 },
)
let params = {
parentId: preId,

@ -8,24 +8,17 @@
<el-input v-model="keyword" placeholder="请输入客户姓名" clearable />
</div>
<el-button type="primary" @click="toDetail(0)">新建贷款申请</el-button>
<el-button type="primary" @click="$router.push('/counter/list/manage/corporateLoans-apply')">新建贷款申请</el-button>
</div>
<el-table :data="list" stripe :header-cell-style="headerCellStyle">
<el-table-column prop="customerName" label="客户姓名" align="center" />
<el-table-column prop="applicationNumber" label="申请编号" align="center" />
<el-table-column prop="loanApplicationDate" label="申请日期" align="center" />
<el-table-column prop="loanApplicationAmount" label="申请金额" align="center">
<template slot-scope="scope">{{ scope.row.loanApplicationAmount || '-' }}</template>
</el-table-column>
<el-table-column prop="processingStatus" label="办理状态" align="center">
<template slot-scope="scope">{{ scope.row.processingStatus || '-' }}</template>
</el-table-column>
<el-table-column prop="createTime" label="申请日期" align="center" />
<el-table-column prop="loanApplicationAmount" label="申请金额" align="center" />
<el-table-column label="操作" align="center" width="150">
<template slot-scope="scope">
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">{{
scope.row.loanApplicationAmount ? '查看' : '编辑'
}}</el-button>
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">详情</el-button>
</template>
</el-table-column>
</el-table>
@ -74,7 +67,6 @@ export default {
pageNum: this.page,
pageSize: this.pageSize,
searchContent: this.keyword,
typeId: 1,
})
this.list = data.page.records
this.total = data.page.total
@ -89,11 +81,7 @@ export default {
},
//
toDetail (row) {
// id
this.$store.commit('system/setCreditIds', (row ? {
companyLoanId: row.companyLoanId, // tabid
} : {}))
this.$router.push(row.loanApplicationAmount ? `/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}` : '/counter/list/manage/corporateLoans-apply')
this.$router.push(`/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}`)
},
},
};

@ -100,7 +100,7 @@
<h6 class="l-title">申请人特别说明选填</h6>
</el-col>
<el-col :span="24">
<el-input v-model="form.specialInstructions" type="textarea" maxlength="500" placeholder="请输入申请求"></el-input>
<el-input v-model="form.specialInstructions" type="textarea" maxlength="500" placeholder="请输入申请求"></el-input>
</el-col>
<el-col :span="24" style="margin-top: 20px">
@ -234,55 +234,19 @@
</el-row>
<div class="m-t-30 text-center">
<el-button @click="beforeSubmit" type="primary" class="submitBtn" v-throttle>提交</el-button>
<el-button @click="submit" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div>
<el-dialog :visible="visible" append-to-body style="z-index: 6000;" :close-on-click-modal="true" :show-close="false"
custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">提示</div>
</div>
<div class="popBody">
<p class="text-lg" style="color: #333">请进行授信审核</p>
</div>
<div class="popBtns">
<el-button class="close btn hover:bg-blue-100 " @click="visible = false"> </el-button>
<el-button class="sure btn hover:bg-blue-700 " type="primary" @click="submit"> </el-button>
</div>
</div>
</el-dialog>
<el-dialog :visible="successVisible" append-to-body style="z-index: 6000;" :close-on-click-modal="false"
:show-close="false" custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">提示</div>
</div>
<div class="popBody" style="flex-direction: column;">
<p class="text-lg" style="margin-bottom: 10px;color: #333">授信完成</p>
<p class="text-lg" style="color: #333">可进行贷款申请</p>
</div>
<div class="popBtns">
<el-button class="sure btn hover:bg-blue-700 " type="primary" @click="toStep3"> </el-button>
</div>
</div>
</el-dialog>
</div>
</template>
<script>
import { inputListen } from '@/utils/utilFunction.js'
import { creditApplicationDetails, addOperation, creditApplicationInput } from '@/api/http'
import { addOperation, creditApplicationInput } from '@/api/http'
import { mapState, mapMutations } from 'vuex'
export default {
data () {
return {
form: {
applicationAccount: '6227007200580926',
applicationAccount: '913403005685450862',
customerName: '丛小凤',
identificationNumber: '220602199202281229',
contactPhoneNumber: '15890317718',
@ -327,8 +291,6 @@ export default {
name: '不良'
},
],
visible: false,
successVisible: false,
}
},
computed: {
@ -342,44 +304,22 @@ export default {
inputListen,
//
async getDetail () {
const id = this.creditIds.companyLoanId
let r
if (id) {
const res = await creditApplicationDetails({
companyLoanId: id
})
r = res.data.bankCreditApplication || {}
if (r.creditId) {
this.form.creditId = r.creditId
this.form.cooperationPeriod = r.cooperationPeriod
this.form.matureRepayment = r.matureRepayment === 'true'
this.form.otherRepaymentsCheck = !!r.otherRepayments
this.form.otherRepayments = r.otherRepayments
this.form.paymentForMaterials = r.paymentForMaterials === 'true'
this.form.payLaborCosts = r.payLaborCosts === 'true'
this.form.payExpenses = r.payExpenses === 'true'
this.form.otherUseCheck = !!r.otherUses
this.form.otherUses = r.otherUses
this.form.specialInstructions = r.specialInstructions
}
}
//
this.initCreditImportIds({
corporateIdCard: r.corporateIdCard || '',
mortgagePropertyCertificate: r.mortgagePropertyCertificate || '',
proofOfMaritalStatus: r.proofOfMaritalStatus || '',
copyOfSpouseSIdCard: r.copyOfSpouseSIdCard || '',
originalBusinessLicense: r.originalBusinessLicense || '',
accountOpeningPermit: r.accountOpeningPermit || '',
leaseContract: r.leaseContract || '',
companyArticlesOfAssociation: r.companyArticlesOfAssociation || '',
shareholderDocuments: r.shareholderDocuments || '',
financialSeal: r.financialSeal || '',
oneYearTaxPaymentCertificate: r.oneYearTaxPaymentCertificate || '',
halfYearRevenue: r.halfYearRevenue || '',
corporateFinancialStatements: r.corporateFinancialStatements || '',
loanApplicationForm: r.loanApplicationForm || '',
creditAuthorizationLetter: r.creditAuthorizationLetter || '',
corporateIdCard: '',
mortgagePropertyCertificate: '',
proofOfMaritalStatus: '',
copyOfSpouseSIdCard: '',
originalBusinessLicense: '',
accountOpeningPermit: '',
leaseContract: '',
companyArticlesOfAssociation: '',
shareholderDocuments: '',
financialSeal: '',
oneYearTaxPaymentCertificate: '',
halfYearRevenue: '',
corporateFinancialStatements: '',
loanApplicationForm: '',
creditAuthorizationLetter: '',
})
},
//
@ -387,17 +327,12 @@ export default {
this.setCreditImportIndex(i)
this.$parent.$parent.$parent.showData('导入报表', 12)
},
async beforeSubmit () {
const { form } = this
if (!form.matureRepayment && !form.otherRepaymentsCheck) return this.$message.error('请选择还款来源!')
if (form.otherRepaymentsCheck && !form.otherRepayments) return this.$message.error('请输入其他的还款来源!')
if (!form.paymentForMaterials && !form.payLaborCosts && !form.payExpenses && !form.otherUseCheck) return this.$message.error('请选择贷款用途!')
if (form.otherUseCheck && !form.otherUses) return this.$message.error('请输入其他的用途!')
this.visible = true
},
async submit () {
try {
const { form } = this
if (!form.matureRepayment && !form.otherRepayments) return this.$message.error('请选择还款来源!')
if (!form.paymentForMaterials && !form.payLaborCosts && !form.payExpenses && !form.otherUses) return this.$message.error('请选择贷款用途!')
//
await creditApplicationInput({
...this.$store.state.system.creditIds,
@ -407,36 +342,31 @@ export default {
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
const rule = []
form.cooperationPeriod && rule.push({ answerId: 875, emptyOne: 149, emptyTwo: form.cooperationPeriod, operationIds: preId + ',875', type: 3 })
form.matureRepayment && rule.push({ answerId: 907, emptyOne: 147, emptyTwo: 269, operationIds: preId + ',798,907', type: 1 })
form.otherRepaymentsCheck && rule.push({ answerId: 907, emptyOne: 147, emptyTwo: 270, operationIds: preId + ',798,907', type: 1 })
form.otherRepayments && rule.push({ answerId: 894, emptyOne: 153, emptyTwo: form.otherRepayments, operationIds: preId + ',798,894', type: 3 })
form.paymentForMaterials && rule.push({ answerId: 908, emptyOne: 148, emptyTwo: 271, operationIds: preId + ',833,908', type: 1 })
form.payLaborCosts && rule.push({ answerId: 908, emptyOne: 148, emptyTwo: 272, operationIds: preId + ',833,908', type: 1 })
form.payExpenses && rule.push({ answerId: 908, emptyOne: 148, emptyTwo: 273, operationIds: preId + ',833,908', type: 1 })
form.otherUseCheck && rule.push({ answerId: 908, emptyOne: 148, emptyTwo: 274, operationIds: preId + ',833,908', type: 1 })
form.otherUses && rule.push({ answerId: 895, emptyOne: 153, emptyTwo: form.otherUses, operationIds: preId + ',833,895', type: 3 })
form.matureRepayment && rule.push({ answerId: 799, emptyOne: '', emptyTwo: '', operationIds: preId + ',798,799', type: '' })
form.otherRepayments && rule.push({ answerId: 800, emptyOne: 125, emptyTwo: form.otherRepayments, operationIds: preId + ',798,800', type: 3 })
form.paymentForMaterials && rule.push({ answerId: 834, emptyOne: '', emptyTwo: '', operationIds: preId + ',833,834', type: '' })
form.payLaborCosts && rule.push({ answerId: 835, emptyOne: '', emptyTwo: '', operationIds: preId + ',833,835', type: '' })
form.payExpenses && rule.push({ answerId: 836, emptyOne: '', emptyTwo: '', operationIds: preId + ',833,836', type: '' })
form.otherUses && rule.push({ answerId: 800, emptyOne: 125, emptyTwo: form.otherUses, operationIds: preId + ',833,837', type: 3 })
form.specialInstructions && rule.push({ answerId: 802, emptyOne: 125, emptyTwo: form.specialInstructions, operationIds: preId + ',802', type: 3 })
//
//
const files = this.creditImportIds
files.corporateIdCard && rule.push({ answerId: 804, emptyOne: 146, emptyTwo: files.corporateIdCard, operationIds: preId + ',803,804', type: 1 })
files.mortgagePropertyCertificate && rule.push({ answerId: 805, emptyOne: 146, emptyTwo: files.mortgagePropertyCertificate, operationIds: preId + ',803,805', type: 1 })
files.proofOfMaritalStatus && rule.push({ answerId: 806, emptyOne: 146, emptyTwo: files.proofOfMaritalStatus, operationIds: preId + ',803,806', type: 1 })
files.copyOfSpouseSIdCard && rule.push({ answerId: 807, emptyOne: 146, emptyTwo: files.copyOfSpouseSIdCard, operationIds: preId + ',803,807', type: 1 })
files.originalBusinessLicense && rule.push({ answerId: 808, emptyOne: 146, emptyTwo: files.originalBusinessLicense, operationIds: preId + ',803,808', type: 1 })
files.accountOpeningPermit && rule.push({ answerId: 809, emptyOne: 146, emptyTwo: files.accountOpeningPermit, operationIds: preId + ',803,809', type: 1 })
files.leaseContract && rule.push({ answerId: 810, emptyOne: 146, emptyTwo: files.leaseContract, operationIds: preId + ',803,810', type: 1 })
files.companyArticlesOfAssociation && rule.push({ answerId: 811, emptyOne: 146, emptyTwo: files.companyArticlesOfAssociation, operationIds: preId + ',803,811', type: 1 })
files.shareholderDocuments && rule.push({ answerId: 812, emptyOne: 146, emptyTwo: files.shareholderDocuments, operationIds: preId + ',803,812', type: 1 })
files.financialSeal && rule.push({ answerId: 813, emptyOne: 146, emptyTwo: files.financialSeal, operationIds: preId + ',803,813', type: 1 })
files.oneYearTaxPaymentCertificate && rule.push({ answerId: 814, emptyOne: 146, emptyTwo: files.oneYearTaxPaymentCertificate, operationIds: preId + ',803,814', type: 1 })
files.halfYearRevenue && rule.push({ answerId: 815, emptyOne: 146, emptyTwo: files.halfYearRevenue, operationIds: preId + ',803,815', type: 1 })
files.corporateFinancialStatements && rule.push({ answerId: 816, emptyOne: 146, emptyTwo: files.corporateFinancialStatements, operationIds: preId + ',803,816', type: 1 })
files.loanApplicationForm && rule.push({ answerId: 818, emptyOne: 146, emptyTwo: files.loanApplicationForm, operationIds: preId + ',803,818', type: 1 })
files.creditAuthorizationLetter && rule.push({ answerId: 819, emptyOne: 146, emptyTwo: files.creditAuthorizationLetter, operationIds: preId + ',803,819', type: 1 })
files.corporateIdCard && rule.push({ answerId: 804, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,804', type: '' })
files.mortgagePropertyCertificate && rule.push({ answerId: 805, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,805', type: '' })
files.proofOfMaritalStatus && rule.push({ answerId: 806, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,806', type: '' })
files.copyOfSpouseSIdCard && rule.push({ answerId: 807, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,807', type: '' })
files.originalBusinessLicense && rule.push({ answerId: 808, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,808', type: '' })
files.accountOpeningPermit && rule.push({ answerId: 809, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,809', type: '' })
files.leaseContract && rule.push({ answerId: 810, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,810', type: '' })
files.companyArticlesOfAssociation && rule.push({ answerId: 811, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,811', type: '' })
files.shareholderDocuments && rule.push({ answerId: 812, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,812', type: '' })
files.financialSeal && rule.push({ answerId: 813, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,813', type: '' })
files.oneYearTaxPaymentCertificate && rule.push({ answerId: 814, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,814', type: '' })
files.halfYearRevenue && rule.push({ answerId: 815, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,815', type: '' })
files.corporateFinancialStatements && rule.push({ answerId: 817, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,817', type: '' })
files.loanApplicationForm && rule.push({ answerId: 818, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,818', type: '' })
files.creditAuthorizationLetter && rule.push({ answerId: 819, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,819', type: '' })
await addOperation({
parentId: preId,
@ -445,21 +375,15 @@ export default {
startTime: sessionStorage.getItem('startTime')
})
this.successVisible = true
this.$message.success('保存成功!')
this.$parent.active = '3'
this.$parent.curStep = 0
} catch { (e) => { } }
},
//
toStep3 () {
this.$parent.active = '3'
this.$parent.curStep = 0
this.$parent.tab3Disabled = false
},
},
}
</script>
<style lang='scss' scoped>
@import '@/styles/dialog.scss';
.l-title {
margin-bottom: 15px;
font-size: 18px;

@ -49,7 +49,7 @@
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="form.customerName" />
</el-form-item>
<el-form-item label="代码证号" prop="identificationNumber">
<el-form-item label="证" prop="identificationNumber">
<el-input v-model="form.identificationNumber" />
</el-form-item>
<el-form-item label="注册地址" prop="companyRegisteredAddress">
@ -75,9 +75,7 @@
<el-input v-model="form.registrationType" />
</el-form-item>
<el-form-item label="营业执照到期日" prop="expirationDateOfBusinessLicense">
<el-date-picker v-model="form.expirationDateOfBusinessLicense" type="date" placeholder="选择日期"
:picker-options="pickerOptions">
</el-date-picker>
<el-input v-model="form.expirationDateOfBusinessLicense" />
</el-form-item>
<el-form-item label="借款人性质" prop="natureOfBorrower">
<el-input v-model="form.natureOfBorrower" />
@ -88,19 +86,18 @@
</el-row>
<div class="text-center m-t-20">
<el-button @click="$router.back()" v-throttle>返回</el-button>
<el-button @click="$history.back()" v-throttle>返回</el-button>
<el-button @click="next" type="primary" class="submitBtn" v-throttle>下一步</el-button>
</div>
</div>
</template>
<script>
import { inputListen } from '@/utils/utilFunction.js'
import { creditEvaluationDetails, addOperation, creditEvaluationInput } from '@/api/http'
import { mapMutations, mapState } from 'vuex'
import { addOperation, creditEvaluationInput } from '@/api/http'
import { mapMutations, mapGetters } from 'vuex'
export default {
data () {
return {
id: this.$route.query.id,
form: {
applicationAccount: '',
customerName: '',
@ -120,7 +117,7 @@ export default {
yearOfEstablishment: '',
registrationType: '',
mainBusinessScope: '',
expirationDateOfBusinessLicense: '2050-01-01',
expirationDateOfBusinessLicense: '',
financialReportSubmissionMethod: '',
natureOfBorrower: '',
},
@ -133,19 +130,11 @@ export default {
}
],
},
pickerOptions: {
disabledDate (v) {
return v.getTime() < new Date().getTime() - 86400000
},
},
submited: 0
}
},
computed: {
...mapState('system', ['creditIds']),
},
mounted () {
this.getDetail()
},
methods: {
...mapMutations({
@ -155,27 +144,10 @@ export default {
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate',
setCreditIds: 'system/setCreditIds',
setCreditImportIds: 'system/setCreditImportIds',
}),
//
async getDetail () {
const id = this.creditIds.companyLoanId
if (id) {
const res = await creditEvaluationDetails({
companyLoanId: id
})
const r = res.data.bankCreditEvaluation
r.identificationType = +r.identificationType
r.currency = 12
r.accountType = 97
r.interestRate = 3.2
r.interestCalculationMethod = 83
r.withdrawalMethod = 114
this.form = r
}
},
// blur
accountBlur () {
console.log(333, typeof this.form.applicationAccount)
if (this.form.applicationAccount === 12802851701099) {
this.form.customerName = '袋鼠互联网科技有限公司'
this.form.identificationType = 82
@ -189,7 +161,7 @@ export default {
this.form.yearOfEstablishment = '2018-02-19'
this.form.registrationType = '有限公司'
this.form.mainBusinessScope = '信息技术'
this.form.expirationDateOfBusinessLicense = '2050-01-01'
this.form.expirationDateOfBusinessLicense = '2024-01-01'
this.form.financialReportSubmissionMethod = '半年'
this.form.natureOfBorrower = '企业法人'
}
@ -205,28 +177,12 @@ export default {
})
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
const rule = [{ answerId: 769, emptyOne: 125, emptyTwo: form.applicationAccount, operationIds: preId + ',769', type: 3 }]
form.customerName && rule.push({ answerId: 880, emptyOne: 153, emptyTwo: form.customerName, operationIds: preId + ',880', type: 3 })
form.identificationNumber && rule.push({ answerId: 881, emptyOne: 153, emptyTwo: form.identificationNumber, operationIds: preId + ',881', type: 3 })
form.contactPhoneNumber && rule.push({ answerId: 882, emptyOne: 153, emptyTwo: form.contactPhoneNumber, operationIds: preId + ',882', type: 3 })
form.companyRegisteredAddress && rule.push({ answerId: 883, emptyOne: 153, emptyTwo: form.companyRegisteredAddress, operationIds: preId + ',883', type: 3 })
form.corporateName && rule.push({ answerId: 884, emptyOne: 153, emptyTwo: form.corporateName, operationIds: preId + ',884', type: 3 })
form.corporateIdNumber && rule.push({ answerId: 885, emptyOne: 153, emptyTwo: form.corporateIdNumber, operationIds: preId + ',885', type: 3 })
form.numberOfEmployees && rule.push({ answerId: 886, emptyOne: 153, emptyTwo: form.numberOfEmployees, operationIds: preId + ',886', type: 3 })
form.yearOfEstablishment && rule.push({ answerId: 887, emptyOne: 153, emptyTwo: form.yearOfEstablishment, operationIds: preId + ',887', type: 3 })
form.registrationType && rule.push({ answerId: 888, emptyOne: 153, emptyTwo: form.registrationType, operationIds: preId + ',888', type: 3 })
form.mainBusinessScope && rule.push({ answerId: 889, emptyOne: 153, emptyTwo: form.mainBusinessScope, operationIds: preId + ',889', type: 3 })
form.expirationDateOfBusinessLicense && rule.push({ answerId: 890, emptyOne: 153, emptyTwo: form.expirationDateOfBusinessLicense, operationIds: preId + ',890', type: 3 })
form.financialReportSubmissionMethod && rule.push({ answerId: 891, emptyOne: 153, emptyTwo: form.financialReportSubmissionMethod, operationIds: preId + ',891', type: 3 })
form.natureOfBorrower && rule.push({ answerId: 892, emptyOne: 153, emptyTwo: form.natureOfBorrower, operationIds: preId + ',892', type: 3 })
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
lcJudgmentRuleReq: [{ answerId: 769, emptyOne: 125, emptyTwo: form.applicationAccount, operationIds: preId + ',769', type: 3 },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.setCreditImportIds()
// id
this.setCreditIds({
companyLoanId: data.companyLoanId, // tabid
@ -236,6 +192,15 @@ export default {
} catch { (e) => { } }
},
inputListen,
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
getSelectList: 'system/getSelectList',
})
}
}
</script>

@ -26,13 +26,13 @@
</div>
<div class="text-center m-t-20">
<el-button @click="prev" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="next(2)" type="primary" class="submitBtn" v-throttle>下一步</el-button>
<el-button @click="$emit('updateStep', 0)" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="next" type="primary" class="submitBtn" v-throttle>下一步</el-button>
</div>
</div>
</template>
<script>
import { creditEvaluationDetails, addOperation, creditEvaluationInput } from '@/api/http'
import { addOperation, creditEvaluationInput } from '@/api/http'
import { mapMutations, mapState } from 'vuex'
export default {
@ -42,77 +42,55 @@ export default {
data () {
return {
form: {},
originForm: {},
}
},
mounted () {
this.getDetail()
},
methods: {
...mapMutations('system', ['setCreditImportIndex', 'initCreditImportIds']),
...mapMutations('system', ['setCreditImportIds', 'setCreditImportIndex', 'initCreditImportIds', 'setTipsOperate']),
//
async getDetail () {
// debugger
const id = this.creditIds.companyLoanId
if (id) {
const res = await creditEvaluationDetails({
companyLoanId: id
})
const r = res.data.bankCreditEvaluation
this.initCreditImportIds({
importBalanceSheet: r.importBalanceSheet || '',
importIncomeStatement: r.importIncomeStatement || '',
importCashFlowStatement: r.importCashFlowStatement || '',
})
this.initCreditImportIds({
importBalanceSheet: '',
importIncomeStatement: '',
importCashFlowStatement: '',
})
if (this.id) {
//
const { data } = await personalBasicFind(this.id)
this.basicForm = data.data
this.form = data.data.bankPersonalLoanContractInfo
}
this.originForm = JSON.stringify(this.creditImportIds)
},
//
importSth (i) {
this.setCreditImportIndex(i)
this.$parent.$parent.$parent.showData('导入报表', 12)
},
//
async prev () {
if (this.originForm !== JSON.stringify(this.creditImportIds)) {
try {
await this.$confirm(`编辑的内容未保存,是否保存并继续上一步?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
closeOnClickModal: false,
})
this.next(0)
} catch (e) { }
} else {
this.$emit('updateStep', 0)
}
},
async next (step) {
async next () {
const form = this.creditImportIds
if (step) {
if (!form.importBalanceSheet) return this.$message.error('请导入资产负债表!')
if (!form.importIncomeStatement) return this.$message.error('请导入损益表!')
if (!form.importCashFlowStatement) return this.$message.error('请导入现金流量表!')
}
if (!form.importBalanceSheet) return this.$message.error('请导入资产负债表!')
if (!form.importIncomeStatement) return this.$message.error('请导入损益表!')
if (!form.importCashFlowStatement) return this.$message.error('请导入现金流量表!')
try {
await creditEvaluationInput({
...this.creditIds,
...form
})
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768,876'
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [
{ answerId: 877, emptyOne: 150, emptyTwo: form.importBalanceSheet, operationIds: preId + ',877', type: 1 },
{ answerId: 878, emptyOne: 150, emptyTwo: form.importIncomeStatement, operationIds: preId + ',878', type: 1 },
{ answerId: 879, emptyOne: 150, emptyTwo: form.importCashFlowStatement, operationIds: preId + ',879', type: 1 },
{ answerId: 770, emptyOne: '', emptyTwo: '', operationIds: preId + ',770', type: '' },
{ answerId: 771, emptyOne: '', emptyTwo: '', operationIds: preId + ',771', type: '' },
{ answerId: 772, emptyOne: '', emptyTwo: '', operationIds: preId + ',772', type: '' },
],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$emit('updateStep', step)
this.$emit('updateStep', 2)
} catch { (e) => { } }
},
},

@ -74,15 +74,15 @@
</el-row>
<div class="text-center m-t-20">
<el-button @click="prev" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="next(3)" type="primary" class="submitBtn" v-throttle>下一步</el-button>
<el-button @click="$emit('updateStep', 1)" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="next" type="primary" class="submitBtn" v-throttle>下一步</el-button>
</div>
</div>
</template>
<script>
import { myValidate } from '@/utils/utilFunction.js';
import { creditEvaluationDetails, addOperation, creditEvaluationInput } from '@/api/http'
import { mapState } from 'vuex'
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js';
import { addOperation, creditEvaluationInput } from '@/api/http'
import { mapMutations, mapGetters } from 'vuex'
export default {
data () {
return {
@ -123,7 +123,6 @@ export default {
loanRiskSituation: 204,
preLoanOtherRiskSituations: '',
},
originForm: {},
rules: {
surveyDate: [
{
@ -200,51 +199,16 @@ export default {
}
},
computed: {
...mapState('system', ['creditIds']),
// id
creditIds: function () {
return this.$store.state.system.creditIds
},
},
mounted () {
this.getDetail()
},
methods: {
//
async getDetail () {
const id = this.creditIds.companyLoanId
if (id) {
const res = await creditEvaluationDetails({
companyLoanId: id
})
const r = res.data.bankCreditEvaluation
r.externalUnfavorableGuarantee = +r.externalUnfavorableGuarantee || 204
r.tradeFinancingRecords = +r.tradeFinancingRecords || 204
r.businessStatus = +r.businessStatus || 205
r.businessInvestmentErrors = +r.businessInvestmentErrors || 204
r.badDebtReserves = +r.badDebtReserves || 204
r.enterpriseCustomerAnalysis = +r.enterpriseCustomerAnalysis || 205
r.majorLegalLitigation = +r.majorLegalLitigation || 204
r.compensationMajorAccidents = +r.compensationMajorAccidents || 204
r.loanRiskSituation = +r.loanRiskSituation || 204
this.form = r
}
this.originForm = JSON.stringify(this.form)
},
//
async prev () {
debugger
if (this.originForm !== JSON.stringify(this.form)) {
try {
await this.$confirm(`编辑的内容未保存,是否保存并继续上一步?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
closeOnClickModal: false,
})
this.next(1)
} catch (e) { }
} else {
this.$emit('updateStep', 1)
}
},
async next (step) {
async next () {
this.$refs.form.validate(myValidate(async () => {
try {
const { form } = this
@ -273,7 +237,7 @@ export default {
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$emit('updateStep', step)
this.$emit('updateStep', 3)
} catch { (e) => { } }
}, this.$refs))
},

@ -64,33 +64,21 @@
</el-row>
<div class="text-center m-t-20">
<el-button @click="prev" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="confirmSubmit" type="primary" class="submitBtn" v-throttle>提交</el-button>
<el-button @click="$emit('updateStep', 2)" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="submit" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div>
<el-dialog :visible="submitVisible" append-to-body :close-on-click-modal="true" :show-close="false"
custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">提示</div>
</div>
<div class="popBody" style="flex-direction: column;">
<p class="text-lg" style="color: #333">评估完成</p>
<p class="text-lg" style="color: #333">信用评级为AAAA可进行授信申请</p>
</div>
<div class="popBtns">
<el-button class="sure btn hover:bg-blue-700 " type="primary" @click="submit(0)"> </el-button>
</div>
</div>
</el-dialog>
</div>
</template>
<script>
import { creditEvaluationDetails, addOperation, creditEvaluationInput } from '@/api/http'
import { mapState } from 'vuex'
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js';
import { addOperation, creditEvaluationInput } from '@/api/http'
export default {
computed: {
// id
creditIds: function () {
return this.$store.state.system.creditIds
},
},
data () {
return {
opt1: [
@ -195,7 +183,6 @@ export default {
haveAnyBadCreditRecords: 204,
gradeEvaluationOtherRiskSituations: '',
},
originForm: {},
rules: {
surveyDate: [
{
@ -205,60 +192,14 @@ export default {
}
],
},
submitVisible: false,
submited: 0
}
},
computed: {
...mapState('system', ['creditIds']),
},
mounted () {
this.getDetail()
},
methods: {
//
async getDetail () {
const id = this.creditIds.companyLoanId
if (id) {
const res = await creditEvaluationDetails({
companyLoanId: id
})
const r = res.data.bankCreditEvaluation
r.profitRecord = +r.profitRecord || 208
r.leadershipAdaptabilityAndDevelopment = +r.leadershipAdaptabilityAndDevelopment || 205
r.leadershipStyleAndConduct = +r.leadershipStyleAndConduct || 205
r.leadershipEducation = +r.leadershipEducation || 203
r.leadershipManagement = +r.leadershipManagement || 205
r.enterpriseDevelopmentCapability = +r.enterpriseDevelopmentCapability || 216
r.enterpriseDevelopmentProspects = +r.enterpriseDevelopmentProspects || 219
r.corporateReputation = +r.corporateReputation || 205
r.haveAnyBadCreditRecords = +r.haveAnyBadCreditRecords || 204
this.form = r
this.originForm = JSON.stringify(this.form)
}
},
confirmSubmit () {
this.submitVisible = true
},
//
async prev () {
debugger
if (this.originForm !== JSON.stringify(this.form)) {
try {
await this.$confirm(`编辑的内容未保存,是否保存并继续上一步?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
closeOnClickModal: false,
})
this.submit(1)
} catch (e) { }
} else {
this.$emit('updateStep', 2)
}
},
async submit (prev) {
async submit () {
try {
const { form } = this
await creditEvaluationInput({
@ -286,21 +227,13 @@ export default {
startTime: sessionStorage.getItem('startTime')
})
this.$message.success('创建成功!')
if (prev) {
//
this.$emit('updateStep', 2)
} else {
this.$parent.active = '2'
this.$parent.tab2Disabled = false
}
this.$parent.active = '2'
} catch { (e) => { } }
},
},
}
</script>
<style lang="scss" scoped>
@import '@/styles/dialog.scss';
<style lang='scss' scoped>
.l-title {
margin-bottom: 15px;
font-size: 18px;

@ -5,8 +5,8 @@
<div class="nav">
<el-menu :default-active="active" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="1">信用评估</el-menu-item>
<el-menu-item :disabled="tab2Disabled" index="2">授信申请</el-menu-item>
<el-menu-item :disabled="tab3Disabled" index="3">贷款申请</el-menu-item>
<el-menu-item index="2">授信申请</el-menu-item>
<el-menu-item index="3">贷款申请</el-menu-item>
</el-menu>
</div>
<MyTitle :titleArr="['公司贷款', '新建贷款申请', text]" />
@ -33,8 +33,6 @@
</template>
<script>
import { mapState } from 'vuex'
import { creditApplicationDetails, loanApplicationDetails } from '@/api/http'
import Basic from './creditEvaluation/basic.vue'
import ImportReport from './creditEvaluation/importReport.vue'
import PreLoan from './creditEvaluation/preLoan.vue'
@ -54,9 +52,6 @@ export default {
LoanApplication2,
MyTitle
},
computed: {
...mapState('system', ['creditIds']),
},
data () {
return {
text: '',
@ -64,37 +59,18 @@ export default {
'1': '信用评估',
'2': '授信申请',
'3': '贷款申请',
},
form: {
},
visible: false,
options: [],
active: '1',
steps: ['1.客户基本信息', '2.导入报表', '3.贷前调查', '4.等级评定'],
curStep: 0,
tab2Disabled: true,
tab3Disabled: true,
}
},
mounted () {
const id = this.creditIds.companyLoanId
if (id) {
this.getTab2Detail(id)
this.getTab3Detail(id)
}
},
methods: {
//
async getTab2Detail (id) {
const res = await creditApplicationDetails({
companyLoanId: id
})
this.tab2Disabled = !res.data.bankCreditApplication
},
//
async getTab3Detail (id) {
const res = await loanApplicationDetails({
companyLoanId: id
})
this.tab3Disabled = !res.data.bankLoanApplication
},
handleSelect (val) {
this.curStep = 0
this.text = this.textObj[val]

@ -26,7 +26,7 @@
<el-form-item label="客户名称">
<el-input v-model="form.customerName" disabled />
</el-form-item>
<el-form-item label="代码证号">
<el-form-item label="证">
<el-input v-model="form.corporateIdNumber" disabled />
</el-form-item>
<el-form-item label="法人姓名">
@ -42,7 +42,7 @@
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="授信金额">
<el-input v-model="form.creditAmount" disabled />
<el-input v-model="form.creditAmount" />
</el-form-item>
</el-col>
@ -57,8 +57,8 @@
</el-select>
</el-form-item>
<el-form-item label="贷款申请金额" required>
<el-input :value="form.loanApplicationAmount" placeholder="不大于授信金额"
@input="val => ismoney(val, form, 'loanApplicationAmount')" ref="loanApplicationAmount" />
<el-input v-model="form.loanApplicationAmount" placeholder="不大于授信金额"
@input="val => inputListen(val, form, 'loanApplicationAmount')" ref="loanApplicationAmount" />
</el-form-item>
<el-form-item label="发放方式" required>
<el-select v-model.trim="form.distributionMethod" placeholder="请选择">
@ -92,74 +92,42 @@
</div>
</template>
<script>
import { ismoney } from '@/utils/utilFunction.js'
import { loanApplicationDetails, addOperation, loanApplicationInput } from '@/api/http'
import { mapMutations, mapState } from 'vuex'
import { inputListen } from '@/utils/utilFunction.js'
import { addOperation, loanApplicationInput } from '@/api/http'
import { mapMutations, mapGetters } from 'vuex'
import Util from '@/libs/util'
export default {
data () {
return {
Util,
form: {
applicationNumber: '12802851701099',
applicationNumber: '913403005685450862',
customerName: '袋鼠互联网科技有限公司',
identificationType: 82,
identificationNumber: '913403005685450862',
companyRegisteredAddress: '广东省深圳市南山区前海一号2020室',
corporateName: '丛小凤',
corporateIdNumber: '913403005685450862',
corporateIdNumber: '220602199202281229',
creditRating: 'AAAA',
creditAmount: '12,000,000.00',
creditTermOne: 231,
annualizedInterestRate: '',
loanApplicationAmount: '',
repaymentMethodOne: 235,
distributionMethod: 238,
loanApplicationDate: '',
loanApplicationDate: Util.formatDate('yyyy-MM-dd', new Date()),
},
}
},
computed: {
...mapState('system', ['creditIds']),
},
mounted () {
this.getDetail()
console.log(11, this.$store.state.system)
},
methods: {
...mapMutations({
setCreditIds: 'system/setCreditIds',
}),
ismoney,
//
async getDetail () {
const id = this.creditIds.companyLoanId
if (id) {
const res = await loanApplicationDetails({
companyLoanId: id
})
const r = res.data.bankLoanApplication
if (r) {
this.form = {
applicationNumber: '12802851701099',
customerName: '袋鼠互联网科技有限公司',
identificationType: 82,
identificationNumber: '913403005685450862',
companyRegisteredAddress: r.companyRegisteredAddress,
corporateName: r.corporateName,
corporateIdNumber: r.corporateIdNumber,
creditRating: r.creditRating,
creditAmount: '12,000,000.00',
creditTermOne: +r.creditTermOne || 231,
loanApplicationAmount: r.loanApplicationAmount,
repaymentMethodOne: +r.repaymentMethodOne || 235,
distributionMethod: +r.distributionMethod || 238,
loanApplicationDate: r.loanApplicationDate,
loanId: r.loanId
}
}
}
},
inputListen,
async next () {
const { form } = this
if (!form.loanApplicationAmount) return this.$message.error('请填写贷款申请金额!')
@ -168,25 +136,19 @@ export default {
const { data } = await loanApplicationInput({
...this.$store.getters['system/commonIds'],
...form,
companyLoanId: this.creditIds.companyLoanId,
companyLoanId: this.$store.state.system.creditIds.companyLoanId,
})
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
const rule = [
{ answerId: 820, emptyOne: 134, emptyTwo: form.creditTermOne, operationIds: preId + ',820', type: 1 },
{ answerId: 821, emptyOne: 125, emptyTwo: form.loanApplicationAmount, operationIds: preId + ',821', type: 3 },
{ answerId: 822, emptyOne: 135, emptyTwo: form.repaymentMethodOne, operationIds: preId + ',822', type: 1 },
{ answerId: 823, emptyOne: 136, emptyTwo: form.distributionMethod, operationIds: preId + ',823', type: 1 },
{ answerId: 845, emptyOne: 140, emptyTwo: form.loanApplicationDate, operationIds: preId + ',845', type: 3 },
]
form.companyRegisteredAddress && rule.push({ answerId: 883, emptyOne: 153, emptyTwo: form.companyRegisteredAddress, operationIds: preId + ',883', type: 3 })
form.corporateName && rule.push({ answerId: 884, emptyOne: 153, emptyTwo: form.corporateName, operationIds: preId + ',884', type: 3 })
form.corporateIdNumber && rule.push({ answerId: 885, emptyOne: 153, emptyTwo: form.corporateIdNumber, operationIds: preId + ',885', type: 3 })
form.creditRating && rule.push({ answerId: 896, emptyOne: 155, emptyTwo: form.creditRating, operationIds: preId + ',896', type: 3 })
form.creditAmount && rule.push({ answerId: 897, emptyOne: '', emptyTwo: '', operationIds: preId + ',897', type: '' })
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
lcJudgmentRuleReq: [
{ answerId: 820, emptyOne: 134, emptyTwo: form.creditTermOne, operationIds: preId + ',820', type: 1 },
{ answerId: 821, emptyOne: 125, emptyTwo: form.loanApplicationAmount, operationIds: preId + ',821', type: 3 },
{ answerId: 822, emptyOne: 135, emptyTwo: form.repaymentMethodOne, operationIds: preId + ',822', type: 1 },
{ answerId: 823, emptyOne: 136, emptyTwo: form.distributionMethod, operationIds: preId + ',823', type: 1 },
{ answerId: 845, emptyOne: 140, emptyTwo: form.loanApplicationDate, operationIds: preId + ',845', type: 3 },
],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
@ -199,6 +161,15 @@ export default {
} catch { (e) => { } }
},
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
getSelectList: 'system/getSelectList'
})
}
}
</script>
<style lang='scss' scoped>

@ -2,20 +2,20 @@
<template>
<div>
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" :rules="rules" label-width="140px">
<el-form ref="form" :model="form" label-width="140px">
<el-col :span="24">
<h6 class="l-title">客户信息</h6>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="贷款类型">
<el-select value="企业经营贷款" placeholder="请选择" disabled>
<el-select value="企业经营贷款" placeholder="请选择">
<el-option value="企业经营贷款"></el-option>
</el-select>
</el-form-item>
<el-form-item label="授信金额">
<el-input v-model="form.creditAmount" disabled />
</el-form-item>
<el-form-item label="起息日期" prop="valueDate">
<el-form-item label="起息日期" prop="valueDate" required>
<el-date-picker v-model="form.valueDate" type="date" placeholder="选择日期" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" @change="maturityDateCalc"></el-date-picker>
</el-form-item>
@ -25,7 +25,7 @@
<el-form-item label="执行利率">
<el-input value="3.2%" disabled />
</el-form-item>
<el-form-item label="担保方式" prop="guaranteeMethod">
<el-form-item label="担保方式" required>
<el-select v-model="form.guaranteeMethod" placeholder="请选择">
<el-option v-for="(item, i) in Util.guaranteeMethods" :key="i" :label="item.name"
:value="item.id"></el-option>
@ -34,7 +34,7 @@
<el-form-item label="利息总额">
<el-input v-model="form.totalInterestAmount" disabled />
</el-form-item>
<el-form-item label="还款账号" prop="repaymentAccount">
<el-form-item label="还款账号" required>
<el-input v-model="form.repaymentAccount" />
</el-form-item>
</el-col>
@ -47,7 +47,7 @@
<el-option v-for="(item, i) in Util.creditTerms" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="贷款期限" prop="loanTerm" @change="interestCalc">
<el-form-item label="贷款期限" prop="loanTerm">
<el-select v-model="form.loanTerm" placeholder="请选择" @change="maturityDateCalc">
<el-option v-for="(item, i) in Util.loanTerms" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select>
@ -69,63 +69,25 @@
</el-select>
</el-form-item>
<el-form-item label="贷款金额">
<el-input v-model="form.loanAmount" @input="loanAmountInput" />
<el-input v-model="form.loanAmount" />
</el-form-item>
</el-col>
</el-form>
</el-row>
<div class="text-center m-t-20">
<el-button @click="beforeSubmit" type="primary" class="submitBtn" v-throttle>提交</el-button>
<el-button @click="submit" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div>
<el-dialog :visible="visible" append-to-body style="z-index: 6000;" :close-on-click-modal="true" :show-close="false"
custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">提示</div>
</div>
<div class="popBody">
<p class="text-lg" style="color: #333">确定提交贷款申请吗</p>
</div>
<div class="popBtns">
<el-button class="close btn hover:bg-blue-100 " @click="visible = false"> </el-button>
<el-button class="sure btn hover:bg-blue-700 " type="primary" @click="submit"> </el-button>
</div>
</div>
</el-dialog>
<el-dialog :visible="successVisible" append-to-body style="z-index: 6000;" :close-on-click-modal="false"
:show-close="false" custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">提示</div>
</div>
<div class="popBody">
<p class="text-lg" style="color: #333">贷款申请成功</p>
</div>
<div class="popBtns">
<el-button class="sure btn hover:bg-blue-700 " type="primary"
@click="$router.push('/counter/list/manage/corporateLoans-application')"> </el-button>
</div>
</div>
</el-dialog>
</div>
</template>
<script>
import { addOperation, loanApplicationInput, loanApplicationDetails, loanApplicationInterestCalculation } from '@/api/http'
import { addOperation, loanApplicationInput, loanApplicationDetails } from '@/api/http'
import Util from '@/libs/util'
import { mapMutations, mapState } from 'vuex'
export default {
data () {
return {
Util,
step1: {},
timer: null,
creditIds: this.$store.state.system.creditIds,
form: {
valueDate: '',
creditTermTwo: 231,
@ -134,68 +96,29 @@ export default {
expirationDate: '',
totalInterestAmount: '',
loanAmount: '',
propertyCertificateNo: '',
repaymentMethodTwo: '',
interestTotal: '',
repaymentAccount: '',
},
rules: {
valueDate: [
{
required: true,
message: '请选择起息日期',
trigger: 'change'
}
],
guaranteeMethod: [
{
required: true,
message: '请选择担保方式',
trigger: 'change'
}
],
repaymentAccount: [
{
required: true,
message: '请输入还款账号',
trigger: 'blur'
}
],
},
visible: false,
successVisible: false,
}
},
computed: {
...mapState('system', ['creditIds']),
},
mounted () {
this.getDetail()
},
methods: {
//
async getDetail () {
const id = this.creditIds.companyLoanId
if (id) {
if (this.creditIds.companyLoanId) {
//
const res = await loanApplicationDetails({
companyLoanId: id
companyLoanId: this.creditIds.companyLoanId
})
const r = res.data.bankLoanApplication
if (r) {
this.step1 = r
this.form = {
valueDate: r.valueDate,
creditTermTwo: +r.creditTermOne,
loanTerm: +r.loanTerm || 120,
guaranteeMethod: +r.guaranteeMethod || 242,
expirationDate: r.expirationDate,
totalInterestAmount: r.totalInterestAmount,
loanAmount: r.loanApplicationAmount,
repaymentMethodTwo: +r.repaymentMethodOne,
repaymentAccount: r.repaymentAccount,
creditAmount: r.creditAmount,
}
}
const data = res.data.bankLoanApplication
this.form.loanAmount = data.loanApplicationAmount
this.form.repaymentMethodTwo = +data.repaymentMethodOne
this.form.creditTermTwo = +data.creditTermOne
this.form.creditAmount = data.creditAmount
}
},
//
@ -206,72 +129,44 @@ export default {
date.setMonth(date.getMonth() + loanTerm)
this.form.expirationDate = Util.formatDate('yyyy-MM-dd', date)
}
this.interestCalc()
},
// input
loanAmountInput () {
clearTimeout(this.timer);
this.timer = setTimeout(() => {
this.interestCalc()
}, 500)
},
//
async interestCalc () {
const { form } = this
if (form.loanAmount && form.valueDate) {
const { data } = await loanApplicationInterestCalculation({
...this.creditIds,
...form,
})
form.totalInterestAmount = data.totalInterestAmount || ''
}
},
async beforeSubmit () {
async submit () {
try {
const { form } = this
if (!form.valueDate) return this.$message.error('请选择起息日期!')
if (new Date(form.valueDate) < new Date(this.step1.loanApplicationDate)) return this.$message.error('起息日期不得早于申请日期!')
if (!form.repaymentAccount) return this.$message.error('请输入还款账号!')
if (+form.loanAmount > 12000000) return this.$message.error('贷款金额不得大于授信金额!')
this.visible = true
} catch { (e) => { } }
},
async submit () {
try {
const { form } = this
await loanApplicationInput({
...this.creditIds,
...this.$store.state.system.creditIds,
...form,
})
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
const rule = [
{ answerId: 824, emptyOne: 137, emptyTwo: 240, operationIds: preId + ',824', type: 1 },
{ answerId: 825, emptyOne: 134, emptyTwo: form.creditTermTwo, operationIds: preId + ',825', type: 1 },
{ answerId: 825, emptyOne: 138, emptyTwo: 241, operationIds: preId + ',825', type: 1 },
{ answerId: 826, emptyOne: 125, emptyTwo: form.valueDate, operationIds: preId + ',826', type: 3 },
{ answerId: 846, emptyOne: 141, emptyTwo: Util.loanTerms.find(e => e.id === form.loanTerm).pointId, operationIds: preId + ',846', type: 1 },
{ answerId: 827, emptyOne: 125, emptyTwo: form.expirationDate, operationIds: preId + ',827', type: 3 },
{ answerId: 828, emptyOne: 139, emptyTwo: form.guaranteeMethod, operationIds: preId + ',828', type: 1 },
{ answerId: 822, emptyOne: 135, emptyTwo: form.repaymentMethodTwo, operationIds: preId + ',822', type: 1 },
{ answerId: 832, emptyOne: 125, emptyTwo: form.repaymentAccount, operationIds: preId + ',832', type: 3 },
{ answerId: 832, emptyOne: 125, emptyTwo: form.repaymentAccount, operationIds: preId + ',832', type: 1 },
]
form.loanAmount && rule.push({ answerId: 831, emptyOne: 125, emptyTwo: form.loanAmount, operationIds: preId + ',831', type: 3 })
form.loanAmount && rule.push({ answerId: 831, emptyOne: 125, emptyTwo: form.loanAmount, operationIds: preId + ',831', type: 1 })
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.successVisible = true
this.$message.success('保存成功!')
this.$router.back()
} catch { (e) => { } }
},
},
}
</script>
<style lang='scss' scoped>
@import '@/styles/dialog.scss';
.l-title {
margin-bottom: 15px;
font-size: 18px;

@ -27,8 +27,8 @@
<el-form-item label="客户名称">
<el-input v-model="form.customerName" disabled />
</el-form-item>
<el-form-item label="代码证号">
<el-input v-model="bankLoanApplication.corporateIdNumber" disabled />
<el-form-item label="证">
<el-input v-model="form.corporateIdNumber" disabled />
</el-form-item>
<el-form-item label="法人姓名">
<el-input v-model="form.corporateName" />
@ -65,11 +65,6 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="申请日期" prop="loanApplicationDate">
<el-date-picker v-model="bankLoanApplication.loanApplicationDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" ref="loanApplicationDate">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="年化利率">
@ -118,6 +113,11 @@
<el-form-item label="还款账号">
<el-input v-model="bankLoanApplication.repaymentAccount" />
</el-form-item>
<el-form-item label="申请日期" prop="loanApplicationDate">
<el-date-picker v-model="bankLoanApplication.loanApplicationDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" ref="loanApplicationDate">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="合同编号" prop="contractNo">
@ -129,7 +129,7 @@
</el-select>
</el-form-item>
<el-form-item label="贷款期限" prop="loanTerm">
<el-select v-model="bankLoanApplication.loanTerm" placeholder="请选择">
<el-select v-model="bankLoanApplication.loanTerm" placeholder="请选择" @change="maturityDateCalc">
<el-option v-for="(item, i) in Util.loanTerms" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
@ -143,8 +143,8 @@
<el-form-item label="逾期利率" prop="overdueInterestRate">
<el-input value="10%" disabled />
</el-form-item>
<el-form-item label="还款方式" prop="repaymentMethodTwo">
<el-select v-model="bankLoanApplication.repaymentMethodTwo" placeholder="请选择" disabled>
<el-form-item label="还款方式" prop="repaymentMethodOne">
<el-select v-model="bankLoanApplication.repaymentMethodOne" placeholder="请选择" disabled>
<el-option v-for="(item, i) in Util.repaymentMethods" :key="i" :label="item.name" :value="item.id">
</el-option>
</el-select>
@ -162,17 +162,9 @@
<el-button @click="$router.back()" type="primary" class="submitBtn" v-throttle>关闭</el-button>
</div>
<el-dialog :visible.sync="loanVisible" z-index="6000" width="500px" append-to-body :show-close="false"
custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">放款</div>
</div>
<div style="padding: 30px 0;">
<el-date-picker v-model="loanDate" type="date" placeholder="请选择放款日期" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
</div>
</div>
<el-dialog title="放款" :visible.sync="loanVisible" width="300px" z-index="6000" :append-to-body="true">
<el-date-picker v-model="loanDate" type="date" placeholder="请选择放款日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 100%;"></el-date-picker>
<span slot="footer" class="dialog-footer">
<el-button @click="loanVisible = false">取消</el-button>
<el-button type="primary" @click="loanSubmit">确定</el-button>
@ -230,16 +222,12 @@ export default {
if (this.id) {
//
const { data } = await companyLoanDetails(this.id)
const eva = data.bankCreditEvaluation || {}
if (eva.identificationType) eva.identificationType = +eva.identificationType
this.form = eva || {}
this.form = data.bankCreditEvaluation || {}
this.bankCompanyLoans = data.bankCompanyLoans || {}
const app = data.bankLoanApplication || {}
if (app.distributionMethod) app.distributionMethod = +app.distributionMethod
if (app.repaymentMethodOne) app.repaymentMethodOne = +app.repaymentMethodOne
if (app.repaymentMethodTwo) app.repaymentMethodTwo = +app.repaymentMethodTwo
if (app.creditTerm) app.creditTerm = +app.creditTerm
if (app.guaranteeMethod) app.guaranteeMethod = +app.guaranteeMethod
if (app.loanTerm) app.loanTerm = +app.loanTerm
@ -256,32 +244,26 @@ export default {
//
async loanSubmit () {
if (!this.loanDate) return this.$message.error('请选择放款日期!')
try {
const { data } = await loanDisbursement({
companyLoanId: this.id,
loanDate: this.loanDate,
})
const { data } = await loanDisbursement({
companyLoanId: this.id,
loanDate: this.loanDate,
})
this.$message[data.status === 200 ? 'success' : 'error'](data.message)
if (data.status === 200) {
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 838, emptyOne: 151, emptyTwo: this.loanDate, operationIds: preId + ',838', type: 3 },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.loanVisible = false
this.getDetail()
}
} catch (e) { }
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 838, emptyOne: '', emptyTwo: '', operationIds: preId + ',838', type: '' },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$message[data.status === 200 ? 'success' : 'error'](data.message)
this.loanVisible = false
this.getDetail()
},
},
}
</script>
<style lang='scss' scoped>
@import '@/styles/dialog.scss';
.wrap {
width: 100%;
height: calc(100vh - 118px);

@ -10,23 +10,15 @@
<el-table :data="list" stripe :header-cell-style="headerCellStyle">
<el-table-column prop="customerName" label="客户姓名" align="center" />
<el-table-column prop="applicationNumber" label="贷款编号" align="center" />
<el-table-column prop="loanDate" label="放款日期" align="center">
<template slot-scope="scope">{{ scope.row.loanDate || '-' }}</template>
</el-table-column>
<el-table-column prop="loanAmount" label="贷款金额(万)" align="center">
<template slot-scope="scope">{{ scope.row.loanAmount || '-' }}</template>
</el-table-column>
<el-table-column prop="loanAmount" label="放款金额(万)" align="center">
<template slot-scope="scope">{{ scope.row.loanDate ? scope.row.loanAmount : '-' }}</template>
</el-table-column>
<el-table-column prop="loanDate" label="放款日期" align="center" />
<el-table-column prop="loanAmount" label="贷款金额(万)" align="center" />
<el-table-column prop="loanAmount" label="放款金额(万)" align="center" />
<el-table-column prop="loanAmount" label="放款状态" align="center">
<template slot-scope="scope">{{ scope.row.loanDate ? '已放款' : '待放款' }}</template>
</el-table-column>
<el-table-column label="操作" align="center" width="150">
<template slot-scope="scope">
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">{{
scope.row.loanApplicationAmount ? '查看' : '编辑'
}}</el-button>
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">详情</el-button>
</template>
</el-table-column>
</el-table>
@ -75,7 +67,6 @@ export default {
pageNum: this.page,
pageSize: this.pageSize,
searchContent: this.keyword,
typeId: 2
})
this.list = data.page.records
this.total = data.page.total
@ -90,11 +81,7 @@ export default {
},
//
toDetail (row) {
// id
this.$store.commit('system/setCreditIds', (row ? {
companyLoanId: row.companyLoanId, // tabid
} : {}))
this.$router.push(row.loanApplicationAmount ? `/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}` : '/counter/list/manage/corporateLoans-apply')
this.$router.push(`/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}`)
},
}
};

@ -1,5 +1,5 @@
<template>
<!-- 管理 -->
<!-- 管理 -->
<div class="wrap">
<my-title :titleArr="['公司贷款', '贷后管理']" />
@ -10,29 +10,14 @@
<el-table :data="list" stripe :header-cell-style="headerCellStyle">
<el-table-column prop="customerName" label="客户姓名" align="center" />
<el-table-column prop="applicationNumber" label="贷款编号" align="center" />
<el-table-column prop="loanStatus" label="贷款状态" align="center" width="100">
<template slot-scope="scope">{{ scope.row.loanStatus || '-' }}</template>
</el-table-column>
<el-table-column prop="fiveLevelClassification" label="五级分类" align="center">
<template slot-scope="scope">{{ scope.row.five || '-' }}</template>
</el-table-column>
<el-table-column prop="processingResults" label="处理结果" align="center" width="100">
<template slot-scope="scope">{{ scope.row.processingResults || '-' }}</template>
</el-table-column>
<el-table-column prop="updateTime" label="处理日期" align="center" width="170">
<template slot-scope="scope">{{ scope.row.updateTime || '-' }}</template>
</el-table-column>
<el-table-column prop="arrearsAmount" label="欠款金额" align="center" width="120">
<template slot-scope="scope">{{ scope.row.arrearsAmount || '-' }}</template>
</el-table-column>
<el-table-column prop="loanStatus" label="贷款状态" align="center" />
<el-table-column prop="updateTime" label="处理日期" align="center" />
<el-table-column label="操作" align="center" width="360">
<template v-if="!scope.row.builtIn" slot-scope="scope">
<el-button @click="collection(scope.row)" size="small">催收</el-button>
<el-button @click="postLoan(scope.row)" size="small">贷后调查</el-button>
<el-button v-if="!scope.row.nonPerformingLoan" :disabled="scope.row.fiveLevelClassification != 4"
@click="npl(scope.row)" size="small">不良贷款</el-button>
<el-button v-if="!scope.row.badDebtRecognition" :disabled="scope.row.fiveLevelClassification != 5"
@click="badDebt(scope.row)" size="small">呆账认定</el-button>
<el-button v-if="!scope.row.nonPerformingLoan" @click="npl(scope.row)" size="small">不良贷款</el-button>
<el-button v-if="!scope.row.badDebtRecognition" @click="badDebt(scope.row)" size="small">呆账认定</el-button>
</template>
</el-table-column>
</el-table>
@ -199,7 +184,7 @@ export default {
form: {
stateChange: '',
changesInSituation: 203,
debtPayingAbility: 247,
debtPayingAbility: 1,
adverseChanges: 203,
businessStatus: 205,
creditStatus: 205,
@ -232,38 +217,33 @@ export default {
],
opt3: [
{
id: 247,
id: 1,
name: '能按期偿还'
},
{
id: 248,
id: 2,
name: '不能按期偿还'
},
],
opt4: [
{
id: 1,
pointId: 249,
name: '正常贷款'
},
{
id: 2,
pointId: 250,
name: '关注贷款'
},
{
id: 3,
pointId: 251,
name: '次级贷款'
},
{
id: 4,
pointId: 252,
name: '可疑贷款'
},
{
id: 5,
pointId: 253,
name: '损失贷款'
},
],
@ -289,19 +269,8 @@ export default {
pageNum: this.page,
pageSize: this.pageSize,
searchContent: this.keyword,
typeId: 4
})
const list = data.page.records
const { opt4 } = this
list.forEach(e => {
const five = e.fiveLevelClassification
e.bad = five === '4' || five === '5' //
if (five) {
const cur = opt4.find(n => n.id == five)
if (cur) e.five = cur.name
}
})
this.list = list
this.list = data.page.records
this.total = data.page.total
},
initData () {
@ -328,30 +297,8 @@ export default {
async postLoanSubmit () {
const { form } = this
if (!form.stateChange) return this.$message.error('请填写客户基本状态变化!')
form.companyLoanId = this.curRow.companyLoanId
await postLoanInvestigationInput(form)
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768,841'
const rule = [
{ answerId: 867, emptyOne: 142, emptyTwo: form.stateChange, operationIds: preId + ',867', type: 3 },
{ answerId: 868, emptyOne: 126, emptyTwo: form.changesInSituation, operationIds: preId + ',868', type: 1 },
{ answerId: 869, emptyOne: 127, emptyTwo: form.businessStatus, operationIds: preId + ',869', type: 1 },
{ answerId: 870, emptyOne: 144, emptyTwo: form.debtPayingAbility, operationIds: preId + ',870', type: 1 },
{ answerId: 871, emptyOne: 127, emptyTwo: form.creditStatus, operationIds: preId + ',871', type: 1 },
{ answerId: 872, emptyOne: 126, emptyTwo: form.adverseChanges, operationIds: preId + ',872', type: 1 },
{ answerId: 873, emptyOne: 145, emptyTwo: this.opt4.find(n => n.id == form.fiveLevelClassification).pointId, operationIds: preId + ',873', type: 1 },
]
form.conclusionAndSuggestions && rule.push({ answerId: 874, emptyOne: 143, emptyTwo: form.conclusionAndSuggestions, operationIds: preId + ',874', type: 3 })
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.getData()
this.submitPoint(841)
this.postLoanVisible = false
},

@ -11,14 +11,10 @@
<el-table-column prop="customerName" label="客户姓名" align="center" />
<el-table-column prop="applicationNumber" label="贷款编号" align="center" />
<el-table-column prop="totalRepaymentAmount" label="累计还款金额(万)" align="center" />
<el-table-column prop="arrearsAmount" label="欠款金额(万)" align="center">
<template slot-scope="scope">{{ scope.row.arrearsAmount || '-' }}</template>
</el-table-column>
<el-table-column prop="arrearsAmount" label="欠款金额(万)" align="center" />
<el-table-column label="操作" align="center" width="240">
<template slot-scope="scope">
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">{{
scope.row.loanApplicationAmount ? '查看' : '编辑'
}}</el-button>
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">详情</el-button>
<template v-if="!scope.row.builtIn">
<el-button size="small" @click="showExtension(scope.row)">展期</el-button>
<el-button @click="repayment(scope.row)" size="small">还款计划</el-button>
@ -120,53 +116,43 @@ export default {
extensions: [
{
id: 1,
name: '1个月',
pointId: 278
name: '1个月'
},
{
id: 2,
name: '2个月',
pointId: 279
name: '2个月'
},
{
id: 3,
name: '3个月',
pointId: 280
name: '3个月'
},
{
id: 4,
name: '4个月',
pointId: 281
name: '4个月'
},
{
id: 5,
name: '5个月',
pointId: 282
name: '5个月'
},
{
id: 6,
name: '6个月',
pointId: 283
name: '6个月'
},
{
id: 7,
name: '7个月',
pointId: 284
name: '7个月'
},
{
id: 8,
name: '8个月',
pointId: 285
name: '8个月'
},
{
id: 9,
name: '9个月',
pointId: 286
name: '9个月'
},
{
id: 10,
name: '10个月',
pointId: 287
name: '10个月'
},
],
@ -213,7 +199,6 @@ export default {
pageNum: this.page,
pageSize: this.pageSize,
searchContent: this.keyword,
typeId: 3
})
this.list = data.page.records
this.total = data.page.total
@ -228,11 +213,7 @@ export default {
},
//
toDetail (row) {
// id
this.$store.commit('system/setCreditIds', (row ? {
companyLoanId: row.companyLoanId, // tabid
} : {}))
this.$router.push(row.loanAmount ? `/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}` : '/counter/list/manage/corporateLoans-apply')
this.$router.push(`/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}`)
},
//
showExtension (row) {
@ -252,7 +233,7 @@ export default {
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 839, emptyOne: 152, emptyTwo: this.extensions.find(e => e.id === this.extensionPeriod).pointId, operationIds: preId + ',839', type: 1 },],
lcJudgmentRuleReq: [{ answerId: 839, emptyOne: '', emptyTwo: '', operationIds: preId + ',839', type: '' },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
@ -302,16 +283,6 @@ export default {
id: row.id,
status
}])
const answerId = status === '已还款' ? 900 : 901
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId, emptyOne: '', emptyTwo: '', operationIds: preId + ',' + answerId, type: '' },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$message.success(`${text}成功`)
this.getRepayment()
this.getData()
@ -332,16 +303,6 @@ export default {
}
})
await batchProcessingCompany(ids)
const answerId = status === '已还款' ? 898 : 899
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId, emptyOne: '', emptyTwo: '', operationIds: preId + ',' + answerId, type: '' },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$message.success(`${text}成功`)
this.$refs.repayments.clearSelection()
this.multipleSelection = []

@ -23,15 +23,15 @@
<p>请刷卡</p>
</div>
<div v-else>
<el-input maxlength="20" ref="voucherNumber" disabled v-model="form.voucherNumber"
<el-input maxlength="20" ref="voucherNumber" disabled :value="form.voucherNumber"
@input="(val) => inputListen(val, form, 'voucherNumber')"></el-input>
<p style="color: #8f8f8f;">可用余额人民币 3,200,000.00</p>
</div>
</el-form-item>
<el-form-item label="钞汇" prop="goldLogo">
<el-select v-model.trim="form.goldLogo" placeholder="请选择" ref="goldLogo">
<el-option v-for="item in goldLogos" :label="item.options" :value="item.itemId" :key="item.itemId">
</el-option>
<el-option v-for="item in getSelectList.banknoteRemittanceList" :label="item.options" :value="item.itemId"
:key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="购汇用途" prop="buyForeignPurpose">
@ -48,15 +48,15 @@
:key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="外" prop="money">
<el-input v-model="form.money" maxlength="15" @input="val => ismoney(val, form, 'money')"></el-input>
<el-form-item label="外汇金额" prop="money">
<el-input :value="form.money" maxlength="15" @input="val => ismoney(val, form, 'money')"></el-input>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp2('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp2('密码器')">
<el-input v-model="form.drawPassword" ref="drawPassword" type="password"></el-input>
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
</el-col>
@ -64,7 +64,7 @@
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:spare="false" @submitIt="submitForm2" :needAuth="needAuth" />
@submitIt="submitForm2" :needAuth="needAuth" />
</div>
</template>
<script>
@ -93,6 +93,7 @@ export default {
if (sessionStorage.getItem('foreignExchangePuchasingBankCard')) {
this.cardNumberJudge = true
const { voucherNumber, goldLogo } = this.dataFlow
this.form.goldLogo = goldLogo
this.form.voucherNumber = voucherNumber
}
@ -115,7 +116,7 @@ export default {
voucherNumber: '凭证号码',
currency: '币种',
goldLogo: '钞汇',
money: '外',
money: '外汇金额',
buyForeignPurpose: '购汇用途',
drawPassword: '支取密码',
},
@ -149,16 +150,6 @@ export default {
}
],
},
goldLogos: [
{
itemId: 150,
options: '现汇(参考牌价712.34)'
},
{
itemId: 151,
options: '现钞(参考牌价712.34)'
},
],
submited: 0
}
},
@ -222,10 +213,10 @@ export default {
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,708,753'
formList.push(
{ answerId: 755, emptyOne: '', emptyTwo: '', operationIds: preId + ',755', type: '' },
{ answerId: 756, emptyOne: 123, emptyTwo: form.currency, operationIds: preId + ',756', type: 1 },
{ answerId: 756, emptyOne: 8, emptyTwo: form.currency, operationIds: preId + ',756', type: 1 },
{ answerId: 757, emptyOne: 119, emptyTwo: form.goldLogo, operationIds: preId + ',757', type: 1 },
{ answerId: 758, emptyOne: 120, emptyTwo: form.money, operationIds: preId + ',758', type: 3 },
{ answerId: 759, emptyOne: 124, emptyTwo: form.buyForeignPurpose, operationIds: preId + ',759', type: 1 },
{ answerId: 759, emptyOne: 117, emptyTwo: form.buyForeignPurpose, operationIds: preId + ',759', type: 1 },
{ answerId: 760, emptyOne: 17, emptyTwo: form.drawPassword, operationIds: preId + ',760', type: 3 },
)
let params = {

@ -19,21 +19,20 @@
<p>请刷卡</p>
</div>
<div v-else>
<el-input maxlength="20" ref="voucherNumber" disabled v-model="form.voucherNumber"
<el-input maxlength="20" ref="voucherNumber" disabled :value="form.voucherNumber"
@input="(val) => inputListen(val, form, 'voucherNumber')"></el-input>
<p style="color: #8f8f8f;">可用余额美元 现汇 5000.00</p>
<p style="color: #8f8f8f;">可用余额人民币 3,200,000.00</p>
</div>
</el-form-item>
<el-form-item label="外币金额" prop="money">
<el-input v-model="form.money" placeholder="最多可结汇5,000.00" maxlength="15"
@input="val => ismoney(val, form, 'money')"></el-input>
<el-input :value="form.money" maxlength="15" @input="val => ismoney(val, form, 'money')"></el-input>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp2('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp2('密码器')">
<el-input v-model="form.drawPassword" ref="drawPassword" type="password"></el-input>
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
</el-col>
@ -54,7 +53,7 @@
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:spare="false" @submitIt="submitForm2" :needAuth="needAuth" />
@submitIt="submitForm2" :needAuth="needAuth" />
</div>
</template>
<script>
@ -83,7 +82,8 @@ export default {
}
if (sessionStorage.getItem('foreignExchangeSettleBankCard')) {
this.cardNumberJudge = true
const { voucherNumber } = this.dataFlow
const { currency, voucherNumber } = this.dataFlow
this.form.currency = currency
this.form.voucherNumber = voucherNumber
}
// this.getFormData()
@ -95,7 +95,7 @@ export default {
cardNumberJudge: false,
form: {
voucherNumber: '', //
currency: 153,
currency: '',
money: '',
fundingSource: '',
drawPassword: '',
@ -161,7 +161,7 @@ export default {
else if (list[i].answerId == '87') { this.form.currency = +list[i].emptyTwo } //
else if (list[i].answerId == '88') { this.form.goldLogo = +list[i].emptyTwo } //
else if (list[i].answerId == '89') { this.form.money = list[i].emptyTwo } //
else if (list[i].answerId == '90') { this.form.fundingSource = +list[i].emptyTwo } //
else if (list[i].answerId == '90') { this.form.drawWay = +list[i].emptyTwo } //
// if (list[i].answerId == '91') {sessionStorage.setItem('nomCurrentWithdrawalPassword', list[i].emptyTwo)} //
else if (list[i].answerId == '91') {
console.log(91)
@ -178,14 +178,12 @@ export default {
}).catch(() => { })
},
submitForm () {
const { form } = this
if (this.submited) return this.$message.error('已提交!')
if (!form.voucherNumber) {
if (!this.form.voucherNumber) {
messageCard('请填写凭证号码')
return
}
if (form.money > 5000) return this.$message.warning('外币金额最多结汇5000.00,请重新输入')
if (!form.drawPassword) {
if (!this.form.drawPassword) {
messagePassword()
return
}
@ -204,7 +202,7 @@ export default {
{ answerId: 761, emptyOne: '', emptyTwo: '', operationIds: preId + ',761', type: '' },
{ answerId: 762, emptyOne: 8, emptyTwo: form.currency, operationIds: preId + ',762', type: 1 },
{ answerId: 763, emptyOne: 121, emptyTwo: form.money, operationIds: preId + ',763', type: 3 },
{ answerId: 764, emptyOne: 122, emptyTwo: form.fundingSource, operationIds: preId + ',764', type: 1 },
{ answerId: 764, emptyOne: 122, emptyTwo: form.drawWay, operationIds: preId + ',764', type: 1 },
{ answerId: 765, emptyOne: 17, emptyTwo: form.drawPassword, operationIds: preId + ',765', type: 3 },
)
let params = {

@ -78,14 +78,14 @@
</el-form-item>
</el-col>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form"
:formName="formName" :spare="false" @submitIt="submitForm2" depositNumber='0816' />
:formName="formName" @submitIt="submitForm2" depositNumber='0816' />
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:spare="false" @submitIt="submitForm2()" />
@submitIt="submitForm2()" />
</div>
</template>
@ -114,8 +114,8 @@ export default {
idNumber: '',//
clientNumber: '', //
customerName: '', //
currency: 12, //
goldLogo: 13, //
currency: '', //
goldLogo: '', //
voucherType: 15, //
voucherNumber: '', //
openOnlineBanking: '',
@ -194,10 +194,13 @@ export default {
if (sessionStorage.getItem('onlineBankIdCard')) {
this.idNumberJudge = true
const { idNumber, userName, peopleNumber } = this.dataFlow
const { idNumber, userName, peopleNumber, currency, goldLogo } = this.dataFlow
this.form.clientNumber = peopleNumber
this.form.idNumber = idNumber
this.form.customerName = userName
this.form.currency = currency
this.form.goldLogo = goldLogo
this.form.voucherType = 15
}
if (sessionStorage.getItem('onlineBankBankCard')) {
this.cardNumberJudge = true
@ -298,7 +301,7 @@ export default {
{ answerId: 748, emptyOne: 11, emptyTwo: form.voucherType, operationIds: preId + ',748', type: 1 },
{ answerId: 750, emptyOne: 117, emptyTwo: form.openOnlineBanking, operationIds: preId + ',750', type: 1 },
{ answerId: 749, emptyOne: 44, emptyTwo: form.voucherNumber, operationIds: preId + ',749', type: 3 },
{ answerId: 751, emptyOne: 118, emptyTwo: form.openPhoneBanking, operationIds: preId + ',751', type: 1 },
{ answerId: 751, emptyOne: 117, emptyTwo: form.openPhoneBanking, operationIds: preId + ',751', type: 1 },
{ answerId: 752, emptyOne: 17, emptyTwo: form.drawPassword, operationIds: preId + ',752', type: 3 },
)

@ -1,51 +1,48 @@
/* 个人业务>活期业务>销户 */
<template>
<div class="body">
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="卡号" required>
<el-input ref="cardNumber" disabled :value="form.cardNumber"
@input="(val) => inputListen(val, form, 'cardNumber')"></el-input>
</el-form-item>
<el-form-item label="证件类型">
<el-select v-model.trim="form.idType" placeholder="请选择">
<el-option label="身份证" :value="83"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp3('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp3('密码器')">
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户姓名" prop="userName">
<el-input ref="userName" disabled :value="form.userName"
@input="(val) => checkName(val, form, 'userName')"></el-input>
</el-form-item>
<el-form-item label="证件号码" required>
<div class="idCard" @click="popUp2('身份证扫描仪')" v-if='!idNumberJudge'>
<p>请刷身份证</p>
</div>
<div v-else>
<el-input v-model.trim="form.idNumber" maxlength="20" disabled ref="idNumber"></el-input>
</div>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
@submitIt="submitForm2" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
<div class="body">
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="卡号" required>
<el-input ref="cardNumber" disabled :value="form.cardNumber" @input="(val) => inputListen(val, form, 'cardNumber')"></el-input>
</el-form-item>
<el-form-item label="证件类型">
<el-select v-model.trim="form.idType" placeholder="请选择">
<el-option label="身份证" :value="83"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp3('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp3('密码器')">
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户姓名" prop="userName">
<el-input ref="userName" disabled :value="form.userName" @input="(val) => checkName(val, form, 'userName')"></el-input>
</el-form-item>
<el-form-item label="证件号码" required>
<div class="idCard" @click="popUp2('身份证扫描仪')" v-if='!idNumberJudge'>
<p>请刷身份证</p>
</div>
<div v-else>
<el-input v-model.trim="form.idNumber" maxlength="20" disabled ref="idNumber"></el-input>
</div>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName" @submitIt="submitForm2" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
</template>
<script>
import { vercustomer } from '@/utils/verify.js'
import { vercustomer } from '@/utils/verify.js'
import { myValidate, checkHanzi, checkName, autoPlay, autoPlay2, inputListen, messageIdCard, messagePassword } from '@/utils/utilFunction.js'
import { mapMutations, mapGetters } from 'vuex'
@ -54,238 +51,236 @@ import MyDialog from '@/components/dialog'
import TipsBefore from '@/mixins/tipsBefore'
const moduleName = 'currentAccount/Cancell' // 怀
export default {
name: '',
props: {},
mixins: [TipsBefore],
components: {
NeedBefore,
MyDialog
},
data () {
return {
moduleName: 'currentAccount/Cancell',
visible: false,
idNumberJudge: false,
cardNumberJudge: false,
form: {
idType: '',
userName: '',
cardNumber: '', //
drawPassword: '',
idNumber: '', //
},
formName: {
idType: '身份证',
userName: '客户姓名',
cardNumber: '卡号', //
drawPassword: '支取密码',
idNumber: '证件号码', //
},
rules: {
userName: vercustomer
},
myTable2: {
115: {
prop: 'idType',
type: '1',
"subjectId": 19,
export default{
name:'',
props:{},
mixins: [ TipsBefore ],
components: {
NeedBefore,
MyDialog
},
data(){
return{
moduleName:'currentAccount/Cancell',
visible: false,
idNumberJudge: false,
cardNumberJudge: false,
form:{
idType:'',
userName:'',
cardNumber: '', //
drawPassword: '',
idNumber: '', //
},
formName: {
idType:'身份证',
userName:'客户姓名',
cardNumber: '卡号', //
drawPassword: '支取密码',
idNumber: '证件号码', //
},
rules: {
userName: vercustomer
},
myTable2: {
115: {
prop: 'idType',
type: '1',
"subjectId": 19,
}
},
myTable: {
113: {
prop: 'cardNumber',
type: '3',
"subjectId": 44,
},
114: {
prop: 'userName',
type: '3',
"subjectId": 7,
},
116: {
prop: 'idNumber',
type: '3',
},
117: {
prop: 'drawPassword',
type: '3',
"subjectId": 17,
},
// cardNumber
},
submited: 0
}
},
myTable: {
113: {
prop: 'cardNumber',
type: '3',
"subjectId": 44,
},
114: {
prop: 'userName',
type: '3',
"subjectId": 7,
},
116: {
prop: 'idNumber',
type: '3',
},
117: {
prop: 'drawPassword',
type: '3',
"subjectId": 17,
},
// cardNumber
},
submited: 0
}
},
created () {
//
// sessionStorage
if (sessionStorage.getItem('nomCurrentCancellPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentCancellPassword')
}
// if(this.isNeedBefore) {
// if(sessionStorage.getItem('nomCurrentCancellCard2')) {
// this.idNumberJudge = true
// const tmpId = this.dataFlow.idNumber || '441421198656412356'
// this.form.idNumber = tmpId
// }
// return
// }
if (this.dataFlow.isSettle) {
const { voucherNumber, userName } = this.dataFlow
this.form.cardNumber = voucherNumber
this.form.userName = userName
}
if (sessionStorage.getItem('nomCurrentCancellCard2')) {
this.idNumberJudge = true
const { idNumber } = this.dataFlow
this.form.idNumber = idNumber
}
},
created() {
//
const tmpId = this.dataFlow.idNumber
this.form.idNumber = tmpId
// sessionStorage
if(sessionStorage.getItem('nomCurrentCancellPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentCancellPassword')
}
// if(this.isNeedBefore) {
// if(sessionStorage.getItem('nomCurrentCancellCard2')) {
// this.idNumberJudge = true
// const tmpId = this.dataFlow.idNumber || '441421198656412356'
// this.form.idNumber = tmpId
// }
// return
// }
if(this.dataFlow.isSettle) {
const { voucherNumber, userName } = this.dataFlow
this.form.cardNumber = voucherNumber
this.form.userName = userName
}
if(sessionStorage.getItem('nomCurrentCancellCard2')) {
this.idNumberJudge = true
const { idNumber } = this.dataFlow
this.form.idNumber = idNumber
}
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,67'
const cardArr = {
// 113: 'nomCurrentCancellCard1',
// 116: 'nomCurrentCancellCard2',
// 117: 'nomCurrentCancellPassword'
}
const callback = () => {
if (this.form.idNumber) {
this.idNumberJudge = true
}
if (sessionStorage.getItem('nomCurrentCancellPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentCancellPassword')
}
}
autoPlay2(parentId, this.form, this.myTable2, this.myTable, cardArr, callback)
},
mounted () {
const tmpId = this.dataFlow.idNumber
this.form.idNumber = tmpId
},
methods: {
//
...mapMutations({
changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow',
setNeedsModule: 'system/setNeedsModule',
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate'
}),
submitForm () {
if (this.submited) return this.$message.error('已提交!')
if (!this.form.cardNumber || !this.form.userName) {
this.setTipsOperate('请先完成活期业务 -> 结清');
return
}
if (!this.form.drawPassword) {
messagePassword()
return
}
if (!this.form.idNumber) {
messageIdCard()
return
}
this.visible = true
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,67'
const cardArr = {
// 113: 'nomCurrentCancellCard1',
// 116: 'nomCurrentCancellCard2',
// 117: 'nomCurrentCancellPassword'
}
const callback = () => {
if(this.form.idNumber) {
this.idNumberJudge = true
}
if(sessionStorage.getItem('nomCurrentCancellPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentCancellPassword')
}
}
autoPlay2(parentId, this.form, this.myTable2, this.myTable, cardArr, callback)
},
submitForm2 () {
this.$refs.form.validate(myValidate(() => {
//
const cards = [
// {
// 113: nomCurrentCancellCard1
// },
{
key: '116,13'
// '116,13': nomCurrentCancellCard2
},
// {
// 117: nomCurrentCancellPassword,
// "subjectId": 17,
// }
]
// const passwords = [
// { 117: nomCurrentCancellPasswords }
// ]
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,67'
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.setNeedsModule(moduleName)
this.submited = 1
}, this.$refs));
mounted() {
},
popUp1 (text) {
// this.$store.commit('system/changePop',{show:true,text, id: '67,1'})
methods: {
//
...mapMutations({
changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow',
setNeedsModule: 'system/setNeedsModule',
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate'
}),
submitForm(){
if (this.submited) return this.$message.error('已提交!')
if(!this.form.cardNumber || !this.form.userName) {
this.setTipsOperate('请先完成活期业务 -> 结清');
return
}
if(!this.form.drawPassword) {
messagePassword()
return
}
if(!this.form.idNumber) {
messageIdCard()
return
}
this.visible = true
},
submitForm2() {
this.$refs.form.validate(myValidate(() => {
//
const cards = [
// {
// 113: nomCurrentCancellCard1
// },
{
key: '116,13'
// '116,13': nomCurrentCancellCard2
},
// {
// 117: nomCurrentCancellPassword,
// "subjectId": 17,
// }
]
// const passwords = [
// { 117: nomCurrentCancellPasswords }
// ]
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,67'
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.setNeedsModule(moduleName)
this.submited = 1
}, this.$refs));
},
popUp1(text) {
// this.$store.commit('system/changePop',{show:true,text, id: '67,1'})
this.setTipsOperate('请刷银行卡');
this.setPopId('67,1')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
popUp2 (text) {
// this.$store.commit('system/changePop',{show:true,text, id: '67,2'})
this.setTipsOperate('请刷银行卡');
this.setPopId('67,1')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
popUp2(text) {
// this.$store.commit('system/changePop',{show:true,text, id: '67,2'})
this.setTipsOperate('请刷身份证');
this.setPopId('67,2')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
popUp3 (text) {
// this.$store.commit('system/changePop',{show:true,text, id: '117'})
this.setTipsOperate('请刷身份证');
this.setPopId('67,2')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
popUp3(text) {
// this.$store.commit('system/changePop',{show:true,text, id: '117'})
this.setTipsOperate('请在密码器输入密码');
this.setPopId('117')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
this.setTipsOperate('请在密码器输入密码');
this.setPopId('117')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
checkHanzi: checkHanzi,
checkName: checkName,
inputListen: inputListen
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
})
},
checkHanzi: checkHanzi,
checkName: checkName,
inputListen: inputListen
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
})
},
}
</script>
<style lang='scss' scoped>
.body {
margin-top: 50px;
overflow: auto;
.idCard {
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
cursor: pointer;
}
// .submitBtn{
// position: relative;
// width: 300px;
// font-size: 18px;
// height: 45px;
// margin-top: 50px;
// border-radius: 10px;
// bottom: 10px;
// left: 50%;
// transform: translate(-50%,-20%);
// }
.body{
margin-top: 50px;
overflow: auto;
.idCard{
border-radius: 5px;
background: #CFDDFF;
text-align: center;
height: 40px;
line-height: 40px;
font-size: 18px;
color: #6191FF;
cursor: pointer;
}
// .submitBtn{
// position: relative;
// width: 300px;
// font-size: 18px;
// height: 45px;
// margin-top: 50px;
// border-radius: 10px;
// bottom: 10px;
// left: 50%;
// transform: translate(-50%,-20%);
// }
}
</style>

@ -1,75 +1,69 @@
/* 个人业务>活期业务>结清 */
<template>
<div class="body">
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="卡号" required>
<div v-if='!cardNumberJudge' class="idCard" @click="popUp('刷卡器')">
<p>请刷卡</p>
</div>
<div v-else>
<el-input ref="cardNumber" disabled v-model.trim="form.cardNumber"
@input="(val) => inputListen(val, form, 'cardNumber')"></el-input>
</div>
</el-form-item>
<el-form-item label="币种" prop="currency">
<el-select v-model.trim="form.currency" placeholder="请选择" ref="currency">
<el-option v-for="item in getSelectList.currencySelectList" :label="item.options" :value="item.itemId"
:key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="余额">
<el-input :value="form.balance" maxlength="20" @input="val => ismoney(val, form, 'balance')"></el-input>
</el-form-item>
<el-form-item label="总金额">
<el-input v-model.trim="form.totalMoney" disabled maxlength="20" placeholder="显示余额加利息总额"></el-input>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp2('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp2('密码器')">
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户姓名" prop="userName" :rules="rules.userName">
<el-input :value="form.userName" disabled maxlength="20" @input="(val) => checkName(val, form, 'userName')"
ref="userName"></el-input>
</el-form-item>
<el-form-item label="钞汇标识">
<el-select v-model.trim="form.goldLogo" placeholder="请选择">
<el-option v-for="item in getSelectList.goldLogoSelectList" :label="item.options" :value="item.itemId"
:key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="利息">
<el-input :value="form.interest" @input="val => ismoney(val, form, 'interest')" maxlength="20"></el-input>
</el-form-item>
<el-form-item label="支取方式" prop="drawWay">
<el-select v-model.trim="form.drawWay" placeholder="请选择" ref="drawWay">
<el-option label="现金" :value="93"> </el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="21" :offset="1">
<el-form-item label="摘要">
<el-input type="textarea" maxlength="60" :rows="3" placeholder="请输入内容"
v-model.trim="form.remark"></el-input>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
:needAuth="needAuth" @submitIt="submitForm2" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
<div class="body" >
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="卡号" required>
<div v-if='!cardNumberJudge' class="idCard" @click="popUp('刷卡器')">
<p>请刷卡</p>
</div>
<div v-else>
<el-input ref="cardNumber" disabled v-model.trim="form.cardNumber" @input="(val) => inputListen(val, form, 'cardNumber')"></el-input>
</div>
</el-form-item>
<el-form-item label="币种" prop="currency">
<el-select v-model.trim="form.currency" placeholder="请选择" ref="currency">
<el-option v-for="item in getSelectList.currencySelectList" :label="item.options" :value="item.itemId" :key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="余额">
<el-input :value="form.balance" maxlength="20" @input="val => ismoney(val, form, 'balance')"></el-input>
</el-form-item>
<el-form-item label="总金额">
<el-input v-model.trim="form.totalMoney" disabled maxlength="20" placeholder="显示余额加利息总额"></el-input>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp2('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp2('密码器')">
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户姓名" prop="userName" :rules="rules.userName">
<el-input :value="form.userName" disabled maxlength="20" @input="(val) => checkName(val, form, 'userName')" ref="userName"></el-input>
</el-form-item>
<el-form-item label="钞汇标识">
<el-select v-model.trim="form.goldLogo" placeholder="请选择">
<el-option v-for="item in getSelectList.goldLogoSelectList" :label="item.options" :value="item.itemId" :key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="利息">
<el-input :value="form.interest" @input="val => ismoney(val, form, 'interest')" maxlength="20"></el-input>
</el-form-item>
<el-form-item label="支取方式" prop="drawWay">
<el-select v-model.trim="form.drawWay" placeholder="请选择" ref="drawWay">
<el-option label="现金" :value="93"> </el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="21" :offset="1">
<el-form-item label="摘要">
<el-input type="textarea" maxlength="60" :rows="3" placeholder="请输入内容" v-model.trim="form.remark"></el-input>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName" :needAuth="needAuth" @submitIt="submitForm2" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
</template>
<script>
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageCard, messagePassword } from '@/utils/utilFunction.js'
import { mapMutations, mapGetters } from 'vuex'
@ -77,247 +71,251 @@ import NeedBefore from '@/components/needBefore'
import MyDialog from '@/components/dialog'
import TipsBefore from '@/mixins/tipsBefore'
const moduleName = 'currentAccount/settle'
export default {
name: '',
props: {},
mixins: [TipsBefore],
components: {
NeedBefore,
MyDialog
},
data () {
return {
moduleName: 'currentAccount/settle',
visible: false,
cardNumberJudge: false,
form: {
cardNumber: '',
drawPassword: '',
currency: '',
balance: '',
totalMoney: '',
userName: '',
goldLogo: '',
interest: '',
drawWay: '',
remark: '',
},
formName: {
cardNumber: '卡号',
drawPassword: '支取密码',
currency: '币种',
balance: '余额',
totalMoney: '总金额',
userName: '客户姓名', //
goldLogo: '钞汇标识',
interest: '利息',
drawWay: '支取方式',
remark: '摘要',
},
rules: {
userName: vercustomer,
drawWay: [
{
required: true,
message: '请选择支取方式',
trigger: 'blur'
}
]
},
myTable2: {
103: {
prop: 'cardNumber',
type: '3',
"subjectId": 44,
},
105: {
prop: 'currency',
type: '1',
"subjectId": 8,
},
106: {
prop: 'goldLogo',
type: '1',
"subjectId": 9,
},
107: {
prop: 'balance',
type: '3',
"subjectId": 14,
},
108: {
prop: 'interest',
type: '3',
"subjectId": 26,
},
109: {
prop: 'totalMoney',
type: '3',
"subjectId": 45,
},
111: {
prop: 'drawPassword',
type: '3',
"subjectId": 17,
},
112: {
prop: 'remark',
type: '3',
"subjectId": 16,
},
},
myTable: {
104: {
prop: 'userName',
type: '3',
"subjectId": 7,
},
110: {
prop: 'drawWay',
type: '1',
"subjectId": 13,
export default{
name:'',
props:{},
mixins: [ TipsBefore ],
components: {
NeedBefore,
MyDialog
},
data(){
return{
moduleName: 'currentAccount/settle',
visible: false,
cardNumberJudge: false,
form:{
cardNumber: '',
drawPassword: '',
currency:'',
balance:'',
totalMoney:'',
userName:'',
goldLogo:'',
interest:'',
drawWay:'',
remark:'',
},
formName:{
cardNumber: '卡号',
drawPassword: '支取密码',
currency:'币种',
balance:'余额',
totalMoney:'总金额',
userName:'客户姓名', //
goldLogo:'钞汇标识',
interest:'利息',
drawWay:'支取方式',
remark:'摘要',
},
rules: {
userName: vercustomer ,
drawWay: [
{
required: true,
message: '请选择支取方式',
trigger: 'blur'
}
]
},
myTable2: {
103: {
prop: 'cardNumber',
type: '3',
"subjectId": 44,
},
105: {
prop: 'currency',
type: '1',
"subjectId": 8,
},
106: {
prop: 'goldLogo',
type: '1',
"subjectId": 9,
},
107: {
prop: 'balance',
type: '3',
"subjectId": 14,
},
108: {
prop: 'interest',
type: '3',
"subjectId": 26,
},
109: {
prop: 'totalMoney',
type: '3',
"subjectId": 45,
},
111: {
prop: 'drawPassword',
type: '3',
"subjectId": 17,
},
112: {
prop: 'remark',
type: '3',
"subjectId": 16,
},
},
myTable: {
104: {
prop: 'userName',
type: '3',
"subjectId": 7,
},
110: {
prop: 'drawWay',
type: '1',
"subjectId": 13,
}
},
submited: 0
}
},
submited: 0
}
},
created () {
if (sessionStorage.getItem('nomCurrentSettlePassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentSettlePassword')
}
// if(this.isNeedBefore) {
// if(sessionStorage.getItem('nomCurrentSettleCard')) {
// this.cardNumberJudge = true
// const tmpCardNumber = this.dataFlow.voucherNumber || '159753'
// this.form.cardNumber = tmpCardNumber
// }
// return
// }
if (sessionStorage.getItem('nomCurrentSettleCard')) {
this.cardNumberJudge = true
const { currency, userName, goldLogo, interest, voucherNumber, balance, totalMoney } = this.dataFlow
this.form.cardNumber = voucherNumber
this.form.currency = currency
this.form.userName = userName
this.form.goldLogo = goldLogo
this.form.drawWay = 93 //
this.form.interest = interest
this.form.balance = balance
// this.form.totalMoney = totalMoney
}
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,66'
const cardArr = {
// 103: 'nomCurrentSettleCard',
// 111: 'nomCurrentSettlePassword'
}
const callback = () => {
if (this.form.cardNumber) {
this.cardNumberJudge = true
this.setDataFlow({ voucherNumber: this.form.cardNumber })
}
if (this.form.userName) {
this.setDataFlow({ userName: this.form.userName })
}
if (sessionStorage.getItem('nomCurrentSettlePassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentSettlePassword')
}
}
autoPlay2(parentId, this.form, this.myTable2, this.myTable, cardArr, callback)
},
mounted () {
},
methods: {
...mapMutations({
changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow',
setNeedsModule: 'system/setNeedsModule',
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate'
}),
//
submitForm () {
if (this.submited) return this.$message.error('已提交!')
if (!this.form.cardNumber) {
messageCard()
return
}
if (!this.form.drawPassword) {
messagePassword()
return
}
this.$refs.form.validate(myValidate(() => {
//
this.visible = true
}, this.$refs));
},
submitForm2 () {
const cards = [
// {
// 103: nomCurrentSettleCard
// },
// {
// 111: nomCurrentSettlePassword,
// "subjectId": 17,
created() {
if(sessionStorage.getItem('nomCurrentSettlePassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentSettlePassword')
}
// if(this.isNeedBefore) {
// if(sessionStorage.getItem('nomCurrentSettleCard')) {
// this.cardNumberJudge = true
// const tmpCardNumber = this.dataFlow.voucherNumber || '159753'
// this.form.cardNumber = tmpCardNumber
// }
// return
// }
]
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,66'
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.setDataFlow({ isSettle: true })
this.submited = 1
},
popUp (text) {
// this.$store.commit('system/changePop',{show:true,text, id: 66})
if(sessionStorage.getItem('nomCurrentSettleCard')) {
this.cardNumberJudge = true
const { currency, userName, goldLogo, interest, voucherNumber, balance, totalMoney } = this.dataFlow
this.form.cardNumber = voucherNumber
this.form.currency = currency
this.form.userName = userName
this.form.goldLogo = goldLogo
this.form.drawWay = 93 //
this.form.interest = interest
this.form.balance = balance
// this.form.totalMoney = totalMoney
}
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,66'
const cardArr = {
// 103: 'nomCurrentSettleCard',
// 111: 'nomCurrentSettlePassword'
}
const callback = () => {
if(this.form.cardNumber) {
this.cardNumberJudge = true
this.setDataFlow({ voucherNumber: this.form.cardNumber })
}
if(this.form.userName) {
this.setDataFlow({ userName: this.form.userName })
}
if(sessionStorage.getItem('nomCurrentSettlePassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentSettlePassword')
}
this.setTipsOperate('请刷银行卡');
this.setPopId('66')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
}
autoPlay2(parentId, this.form, this.myTable2, this.myTable, cardArr, callback)
},
popUp2 (text) {
this.setTipsOperate('请在密码器输入密码');
this.setPopId('66,2')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
mounted() {
},
ismoney: ismoney,
checkHanzi: checkHanzi,
checkName: checkName,
inputListen: inputListen
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
getSelectList: 'system/getSelectList'
}),
needAuth () {
return this.form.balance >= 50000 || this.totalMoney >= 50000
}
},
watch: {
'form.balance': {
handler (val) {
this.form.totalMoney = (Number(this.form.interest) + Number(val)).toFixed(2)
methods: {
...mapMutations({
changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow',
setNeedsModule: 'system/setNeedsModule',
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate'
}),
//
submitForm(){
if (this.submited) return this.$message.error('已提交!')
if(!this.form.cardNumber) {
messageCard()
return
}
if(!this.form.drawPassword) {
messagePassword()
return
}
this.$refs.form.validate(myValidate(() => {
//
this.visible = true
}, this.$refs));
},
immediate: true
},
'form.interest': {
handler (val) {
this.form.totalMoney = (Number(this.form.balance) + Number(val)).toFixed(2)
submitForm2() {
let nomCurrentSettleCard = sessionStorage.getItem('nomCurrentSettleCard')
let nomCurrentSettleCards = JSON.parse(nomCurrentSettleCard);
let nomCurrentSettlePassword = sessionStorage.getItem('nomCurrentSettlePassword')
let nomCurrentSettlePasswords = JSON.parse(nomCurrentSettlePassword);
const cards = [
// {
// 103: nomCurrentSettleCard
// },
// {
// 111: nomCurrentSettlePassword,
// "subjectId": 17,
// }
]
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,66'
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.setDataFlow({ isSettle: true })
this.submited = 1
},
popUp(text) {
// this.$store.commit('system/changePop',{show:true,text, id: 66})
this.setTipsOperate('请刷银行卡');
this.setPopId('66')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
immediate: true
popUp2(text) {
this.setTipsOperate('请在密码器输入密码');
this.setPopId('66,2')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
ismoney: ismoney,
checkHanzi: checkHanzi,
checkName: checkName,
inputListen: inputListen
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
getSelectList: 'system/getSelectList'
}),
needAuth() {
return this.form.balance >= 50000 || this.totalMoney >= 50000
}
},
watch: {
'form.balance': {
handler(val) {
this.form.totalMoney = (Number(this.form.interest) + Number(val)).toFixed(2)
},
immediate: true
},
'form.interest': {
handler(val) {
this.form.totalMoney = (Number(this.form.balance) + Number(val)).toFixed(2)
},
immediate: true
}
}
}
}
</script>
<style lang='scss' scoped>
@ -345,4 +343,5 @@ export default {
// // left: 50%;
// // transform: translate(-50%,-20%);
// // }
// }</style>
// }
</style>

@ -1,204 +1,197 @@
/* 个人业务>活期业务>转账 */
<template>
<div class="body">
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="转出卡号" required>
<div v-if='!cardNumberJudge' class="idCard" @click="popUp('刷卡器')">
<p>请刷卡</p>
</div>
<div v-else>
<el-input :value="form.cardNumber" disabled ref="cardNumber"></el-input>
</div>
</el-form-item>
<el-form-item label="币种" prop="currency">
<el-select v-model.trim="form.currency" placeholder="请选择" ref="currency">
<el-option v-for="item in getSelectList.currencySelectList" :label="item.options" :value="item.itemId"
:key="item.itemId"> </el-option>
<!-- <el-option value="CNY人民币">CNY人民币</el-option> -->
</el-select>
</el-form-item>
<el-form-item label="金额" prop="money">
<el-input :value="form.money" maxlength="15" @input="val => ismoney(val, form, 'money')"
ref="money"></el-input>
</el-form-item>
<el-form-item label="收款卡号" prop="shroffAccount">
<el-input :value="form.shroffAccount" @input="(val) => checkHanzi(val, form, 'shroffAccount')"
ref="shroffAccount"></el-input>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户姓名" prop="username">
<el-input :value="form.userName" disabled @input="(val) => checkName(val, form, 'userName')"></el-input>
</el-form-item>
<el-form-item label="钞汇标识" prop="goldLogo">
<el-select v-model.trim="form.goldLogo" placeholder="请选择" ref="goldLogo">
<el-option v-for="item in getSelectList.goldLogoSelectList" :label="item.options" :value="item.itemId"
:key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp2('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp2('密码器')">
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
<el-form-item label="收款人名称" prop="payeeName">
<el-input :value="form.payeeName" maxlength="40" @input="(val) => checkName(val, form, 'payeeName')"
ref="payeeName"></el-input>
</el-form-item>
</el-col>
<el-col :span="21" :offset="1">
<el-form-item label="摘要">
<el-input type="textarea" :rows="3" maxlength="60" placeholder="请输入内容"
v-model.trim="form.remark"></el-input>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
@submitIt="submitForm2" :needAuth="needAuth" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
<div class="body">
<el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-col :span="10" :offset="1">
<el-form-item label="转出卡号" required>
<div v-if='!cardNumberJudge' class="idCard" @click="popUp('刷卡器')">
<p>请刷卡</p>
</div>
<div v-else>
<el-input :value="form.cardNumber" disabled ref="cardNumber"></el-input>
</div>
</el-form-item>
<el-form-item label="币种" prop="currency">
<el-select v-model.trim="form.currency" placeholder="请选择" ref="currency">
<el-option v-for="item in getSelectList.currencySelectList" :label="item.options" :value="item.itemId" :key="item.itemId"> </el-option>
<!-- <el-option value="CNY人民币">CNY人民币</el-option> -->
</el-select>
</el-form-item>
<el-form-item label="金额" prop="money">
<el-input :value="form.money" maxlength="15" @input="val => ismoney(val, form, 'money')" ref="money"></el-input>
</el-form-item>
<el-form-item label="收款卡号" prop="shroffAccount">
<el-input :value="form.shroffAccount" @input="(val) => checkHanzi(val, form, 'shroffAccount')" ref="shroffAccount"></el-input>
</el-form-item>
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="客户姓名" prop="username">
<el-input :value="form.userName" disabled @input="(val) => checkName(val, form, 'userName')"></el-input>
</el-form-item>
<el-form-item label="钞汇标识" prop="goldLogo">
<el-select v-model.trim="form.goldLogo" placeholder="请选择" ref="goldLogo">
<el-option v-for="item in getSelectList.goldLogoSelectList" :label="item.options" :value="item.itemId" :key="item.itemId"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="支取密码" required>
<div v-if='!form.drawPassword' class="idCard" @click="popUp2('密码器')">
<p>请输入密码</p>
</div>
<div v-else @click="popUp2('密码器')">
<el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
</div>
</el-form-item>
<el-form-item label="收款人名称" prop="payeeName" >
<el-input :value="form.payeeName" maxlength="40" @input="(val) => checkName(val, form, 'payeeName')" ref="payeeName"></el-input>
</el-form-item>
</el-col>
<el-col :span="21" :offset="1">
<el-form-item label="摘要">
<el-input type="textarea" :rows="3" maxlength="60" placeholder="请输入内容" v-model.trim="form.remark"></el-input>
</el-form-item>
</el-col>
</el-form>
</el-row>
<el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
<my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName" @submitIt="submitForm2" :needAuth="needAuth" />
</div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
</template>
<script>
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { myValidate, checkHanzi, ismoney, checkName, autoPlay, autoPlay2, messageCard, messagePassword } from '@/utils/utilFunction.js'
import { mapMutations, mapGetters } from 'vuex'
import TipsBefore from '@/mixins/tipsBefore'
const moduleName = 'currentAccount/transferAccounts'
import MyDialog from '@/components/dialog'
import NeedBefore from '@/components/needBefore'
export default {
name: '',
props: {},
mixins: [TipsBefore],
components: {
MyDialog,
NeedBefore
},
data () {
return {
moduleName: 'currentAccount/transferAccounts',
visible: false,
cardNumberJudge: false,
form: {
cardNumber: '',
drawPassword: '',
currency: '',
money: '',
shroffAccount: '',
userName: '',
goldLogo: '',
payeeName: '',
remark: '',
},
formName: {
cardNumber: '卡号',
currency: '币种',
money: '金额',
drawPassword: '支取密码',
shroffAccount: '收款卡号',
userName: '客户姓名',
goldLogo: '钞汇标识',
payeeName: '收款人名称',
remark: '摘要',
},
rules: {
userName: vercustomer,
payeeName: [
// {
// pattern: namePattern,
// message: ''
// },
{
required: true,
message: '请输入收款人名称',
trigger: 'blur'
}
],
goldLogo: [
{
required: true,
message: '请选择钞汇标识',
trigger: 'blur'
}
],
money: [
{
required: true,
message: '请输入金额',
trigger: 'blur'
}
],
shroffAccount: [
{
required: true,
message: '请输入收款卡号',
trigger: 'blur'
}
]
},
myTable2: {
94: {
prop: 'cardNumber',
type: '3',
"subjectId": 44,
},
96: {
prop: 'currency',
type: '1',
"subjectId": 8,
},
99: {
prop: 'drawPassword',
type: '3',
"subjectId": 17,
},
100: {
prop: 'shroffAccount',
type: '3',
"subjectId": 81,
},
101: {
prop: 'payeeName',
type: '3',
"subjectId": 73,
},
102: {
prop: 'remark',
type: '3',
"subjectId": 16
export default{
name:'',
props:{},
mixins: [ TipsBefore ],
components: {
MyDialog,
NeedBefore
},
data(){
return{
moduleName: 'currentAccount/transferAccounts',
visible: false,
cardNumberJudge: false,
form:{
cardNumber: '',
drawPassword: '',
currency:'',
money:'',
shroffAccount:'',
userName:'',
goldLogo:'',
payeeName:'',
remark:'',
},
formName: {
cardNumber: '卡号',
currency:'币种',
money:'金额',
drawPassword: '支取密码',
shroffAccount:'收款卡号',
userName:'客户姓名',
goldLogo:'钞汇标识',
payeeName:'收款人名称',
remark:'摘要',
},
rules: {
userName: vercustomer ,
payeeName: [
// {
// pattern: namePattern,
// message: ''
// },
{
required: true,
message: '请输入收款人名称',
trigger: 'blur'
}
],
goldLogo: [
{
required: true,
message: '请选择钞汇标识',
trigger: 'blur'
}
],
money: [
{
required: true,
message: '请输入金额',
trigger: 'blur'
}
],
shroffAccount: [
{
required: true,
message: '请输入收款卡号',
trigger: 'blur'
}
]
},
myTable2: {
94: {
prop: 'cardNumber',
type: '3',
"subjectId": 44,
},
96: {
prop: 'currency',
type: '1',
"subjectId": 8,
},
99: {
prop: 'drawPassword',
type: '3',
"subjectId": 17,
},
100: {
prop: 'shroffAccount',
type: '3',
"subjectId": 81,
},
101: {
prop: 'payeeName',
type: '3',
"subjectId": 73,
},
102: {
prop: 'remark',
type: '3',
"subjectId": 16
}
},
myTable: {
95: {
prop: 'userName',
type: '3',
"subjectId": 7,
},
97: {
prop: 'goldLogo',
type: '1',
"subjectId": 9,
},
98: {
prop: 'money',
type: '3',
"subjectId": 14,
},
},
submited: 0
}
},
myTable: {
95: {
prop: 'userName',
type: '3',
"subjectId": 7,
},
97: {
prop: 'goldLogo',
type: '1',
"subjectId": 9,
},
98: {
prop: 'money',
type: '3',
"subjectId": 14,
},
},
submited: 0
}
},
created () {
if (sessionStorage.getItem('nomCurrentTransferPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentTransferPassword')
},
created() {
if(sessionStorage.getItem('nomCurrentTransferPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentTransferPassword')
}
// if(this.isNeedBefore) {
// if(sessionStorage.getItem('nomCurrentTransferCard')) {
@ -208,94 +201,98 @@ export default {
// }
// return
// }
if (sessionStorage.getItem('nomCurrentTransferCard')) {
const { currency, userName, goldLogo, voucherNumber } = this.dataFlow
this.cardNumberJudge = true
this.form.cardNumber = voucherNumber
console.log(this.form.cardNumber)
this.form.currency = currency
this.form.userName = userName
this.form.goldLogo = goldLogo
if(sessionStorage.getItem('nomCurrentTransferCard')) {
const { currency, userName, goldLogo, voucherNumber } = this.dataFlow
this.cardNumberJudge = true
this.form.cardNumber = voucherNumber
console.log(this.form.cardNumber)
this.form.currency = currency
this.form.userName = userName
this.form.goldLogo = goldLogo
}
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,65'
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,65'
const cardArr = {
// 94: 'nomCurrentTransferCard',
// 99: 'nomCurrentTransferPassword'
// 94: 'nomCurrentTransferCard',
// 99: 'nomCurrentTransferPassword'
}
const callback = () => {
if (this.form.cardNumber) {
this.cardNumberJudge = true
}
if (sessionStorage.getItem('nomCurrentTransferPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentTransferPassword')
}
if(this.form.cardNumber) {
this.cardNumberJudge = true
}
if(sessionStorage.getItem('nomCurrentTransferPassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentTransferPassword')
}
}
autoPlay2(parentId, this.form, this.myTable2, this.myTable, cardArr, callback)
autoPlay2(parentId, this.form, this.myTable2, this.myTable, cardArr, callback)
},
mounted () {
// this.$refs.money.focus()
mounted() {
// this.$refs.money.focus()
},
methods: {
...mapMutations({
changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow',
setNeedsModule: 'system/setNeedsModule',
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate'
changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow',
setNeedsModule: 'system/setNeedsModule',
setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate'
}),
//
submitForm () {
if (this.submited) return this.$message.error('已提交!')
if (!this.form.cardNumber) {
messageCard()
return
}
if (!this.form.drawPassword) {
messagePassword()
return
}
this.$refs.form.validate(myValidate(() => {
//
this.visible = true
}, this.$refs));
submitForm(){
if (this.submited) return this.$message.error('已提交!')
if(!this.form.cardNumber) {
messageCard()
return
}
if(!this.form.drawPassword) {
messagePassword()
return
}
this.$refs.form.validate(myValidate(() => {
//
this.visible = true
}, this.$refs));
},
submitForm2 () {
const cards = [
// {
// 94: nomCurrentTransferCard
// },
// {
// 99: nomCurrentTransferPassword,
// "subjectId": 17,
// }
]
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,65'
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.setDataFlow({ ...this.form })
this.setNeedsModule(moduleName)
this.submited = 1
submitForm2() {
let nomCurrentTransferCard = sessionStorage.getItem('nomCurrentTransferCard')
let nomCurrentTransferCards = JSON.parse(nomCurrentTransferCard);
let nomCurrentTransferPassword = sessionStorage.getItem('nomCurrentTransferPassword')
let nomCurrentTransferPasswords = JSON.parse(nomCurrentTransferPassword);
const cards = [
// {
// 94: nomCurrentTransferCard
// },
// {
// 99: nomCurrentTransferPassword,
// "subjectId": 17,
// }
]
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,57,65'
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.setDataFlow({ ...this.form })
this.setNeedsModule(moduleName)
this.submited = 1
},
popUp (text) {
// this.$store.commit('system/changePop',{show:true,text, id: 65})
popUp(text) {
// this.$store.commit('system/changePop',{show:true,text, id: 65})
this.setTipsOperate('请刷银行卡');
this.setPopId('65')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
this.setTipsOperate('请刷银行卡');
this.setPopId('65')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
popUp2 (text) {
// this.$store.commit('system/changePop',{show:true,text, id: 99})
popUp2(text) {
// this.$store.commit('system/changePop',{show:true,text, id: 99})
this.setTipsOperate('请在密码器输入密码');
this.setPopId('99')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
this.setTipsOperate('请在密码器输入密码');
this.setPopId('99')
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
ismoney: ismoney,
checkHanzi: checkHanzi,
@ -303,15 +300,15 @@ export default {
},
computed: {
...mapGetters({
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
getSelectList: 'system/getSelectList'
dataFlow: 'system/dataFlow',
needsModule: 'system/needsModule',
idCardNumber: 'system/idCardNumber',
inMyWork: 'system/inMyWork',
getSelectList: 'system/getSelectList'
}),
needAuth () {
return this.form.money >= 50000
}
needAuth() {
return this.form.money >= 50000
}
},
}
</script>
@ -339,4 +336,5 @@ export default {
// // left: 50%;
// // transform: translate(-50%,-50%);
// // }
// }</style>
// }
</style>

@ -1,10 +1,7 @@
<!-- 代收电费 -->
<template>
<div class="wrap">
<div class="flex j-between a-center">
<MyTitle :titleArr="['个人贷款', '新增贷款申请']" />
<el-button size="small" @click="$router.back()">返回</el-button>
</div>
<MyTitle :titleArr="['个人贷款', '新增贷款申请']" />
<el-row :gutter="20" style="margin: 0">
<el-form v-if="curStep === 1 || isDetail" ref="basicForm" :model="basicForm" label-width="120px"
:rules="basicRules" :disabled="isDetail">
@ -65,9 +62,7 @@
</el-col>
<el-col :span="10" :offset="1">
<el-form-item label="薪酬">
<el-input v-model="basicForm.salary">
<template slot="append">/</template>
</el-input>
<el-input v-model="basicForm.salary" />
</el-form-item>
<el-form-item label="工龄">
<el-input v-model="basicForm.totalWorkYears" />
@ -121,11 +116,11 @@
<el-input value="个人住房贷款" disabled />
</el-form-item>
<el-form-item label="合同金额" prop="contractAmount">
<el-input v-model="form.contractAmount" @change="interestCalc" />
<el-input v-model="form.contractAmount" />
</el-form-item>
<el-form-item label="起息日期" prop="interestStartDate">
<el-date-picker v-model="form.interestStartDate" type="date" placeholder="选择日期" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" :clearable="false" @change="maturityDateCalc"></el-date-picker>
value-format="yyyy-MM-dd" @change="maturityDateCalc"></el-date-picker>
</el-form-item>
<el-form-item label="计息方式">
<el-input value="按年浮动计息" disabled />
@ -190,28 +185,31 @@
}}</el-button>
</div>
<el-dialog :visible.sync="loanVisible" z-index="6000" width="500px" append-to-body :show-close="false"
custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">放款</div>
</div>
<div style="padding: 30px 0;">
<el-date-picker v-model="disbursementDate" type="date" placeholder="请选择放款日期" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
</div>
</div>
<el-dialog title="放款" :visible.sync="loanVisible" width="300px" z-index="6000" :append-to-body="true">
<el-date-picker v-model="disbursementDate" type="date" placeholder="请选择放款日期" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
<span slot="footer" class="dialog-footer">
<el-button @click="loanVisible = false">取消</el-button>
<el-button type="primary" @click="loanSubmit">确定</el-button>
</span>
</el-dialog>
<el-dialog title="请选择展期期限" :visible.sync="extensionVisible" width="300px" z-index="6000" :append-to-body="true">
<el-select v-model="extensionPeriod" placeholder="请选择" size="small" style="width: 100%;">
<el-option v-for="(item, i) in extensions" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select>
<span slot="footer" class="dialog-footer">
<el-button @click="extensionVisible = false">取消</el-button>
<el-button type="primary" @click="extensionSubmit">确定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { phoneListen, myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js';
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { addOperation, personalBasicSave, loanContractSave, personalBasicFind, grantALoan, calculateTheReturnInterestSum } from '@/api/http'
import { addOperation, personalBasicSave, loanContractSave, personalBasicFind, grantALoan, operationExtension } from '@/api/http'
import Util from '@/libs/util'
const moduleName = 'personalLoans/detail'
@ -364,14 +362,64 @@ export default {
],
},
submited: 0,
curRoute: '',
curStep: 1,
disbursementDate: '',
loanVisible: false,
extensionVisible: false,
extensionPeriod: 1,
extensions: [
{
id: 1,
name: '1个月'
},
{
id: 2,
name: '2个月'
},
{
id: 3,
name: '3个月'
},
{
id: 4,
name: '4个月'
},
{
id: 5,
name: '5个月'
},
{
id: 6,
name: '6个月'
},
{
id: 7,
name: '7个月'
},
{
id: 8,
name: '8个月'
},
{
id: 9,
name: '9个月'
},
{
id: 10,
name: '10个月'
},
],
}
},
beforeDestroy () {
sessionStorage.setItem('computerPath', this.curRoute)
},
mounted () {
this.curRoute = this.$route.path
this.getDetail()
sessionStorage.removeItem('creditPath')
},
methods: {
...mapMutations({
@ -387,19 +435,8 @@ export default {
if (this.id) {
//
const { data } = await personalBasicFind(this.id)
const form = data.data
if (form.idType) form.idType = +form.idType
if (form.gender) form.gender = +form.gender
this.idNumberJudge = true
this.basicForm = form
//
const contract = data.data.bankPersonalLoanContractInfo
if (contract) {
if (contract.loanTerm) contract.loanTerm = +contract.loanTerm
this.form = contract
}
this.basicForm = data.data
if (data.data.bankPersonalLoanContractInfo) this.form = data.data.bankPersonalLoanContractInfo
} else if (sessionStorage.getItem('nomUsefulPhrasesOpenCard2')) {
//
sessionStorage.removeItem('nomUsefulPhrasesOpenCard2')
@ -429,7 +466,7 @@ export default {
popUp1 (text) {
this.setTipsOperate('请刷身份证');
this.setPopId('1399')
sessionStorage.setItem('creditPath', this.$route.fullPath)
sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/')
},
//
@ -440,15 +477,6 @@ export default {
date.setMonth(date.getMonth() + loanTerm)
this.form.maturityDate = Util.formatDate('yyyy-MM-dd', date)
}
this.interestCalc()
},
//
async interestCalc () {
const { form } = this
if (form.contractAmount && form.maturityDate) {
const { data } = await calculateTheReturnInterestSum(form)
form.interestTotal = data.interestTotal || ''
}
},
//
async next () {
@ -468,47 +496,44 @@ export default {
...basicForm,
})
if (data.status === 200) {
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
const rule = [
{ answerId: 902, emptyOne: '', emptyTwo: '', operationIds: preId + ',902', type: '' },
{ answerId: 847, emptyOne: 125, emptyTwo: basicForm.phoneNumber, operationIds: preId + ',847', type: 3 },
{ answerId: 859, emptyOne: 125, emptyTwo: basicForm.applicationDate, operationIds: preId + ',859', type: 3 },
]
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
const rule = [
{ answerId: 847, emptyOne: 125, emptyTwo: basicForm.phoneNumber, operationIds: preId + ',847', type: 3 },
{ answerId: 859, emptyOne: 125, emptyTwo: basicForm.applicationDate, operationIds: preId + ',859', type: 3 },
]
basicForm.position && rule.push({ answerId: 848, emptyOne: 125, emptyTwo: basicForm.position, operationIds: preId + ',848', type: 3 })
basicForm.salary && rule.push({ answerId: 849, emptyOne: 125, emptyTwo: basicForm.salary, operationIds: preId + ',849', type: 3 })
basicForm.currentWorkYears && rule.push({ answerId: 850, emptyOne: 125, emptyTwo: basicForm.currentWorkYears, operationIds: preId + ',850', type: 3 })
basicForm.totalWorkYears && rule.push({ answerId: 851, emptyOne: 125, emptyTwo: basicForm.totalWorkYears, operationIds: preId + ',851', type: 3 })
basicForm.propertyOwner && rule.push({ answerId: 852, emptyOne: 125, emptyTwo: basicForm.propertyOwner, operationIds: preId + ',852', type: 3 })
basicForm.propertyCertificateNo && rule.push({ answerId: 853, emptyOne: 125, emptyTwo: basicForm.propertyCertificateNo, operationIds: preId + ',853', type: 3 })
basicForm.coOwnership && rule.push({ answerId: 854, emptyOne: 125, emptyTwo: basicForm.coOwnership, operationIds: preId + ',854', type: 3 })
basicForm.location && rule.push({ answerId: 855, emptyOne: 125, emptyTwo: basicForm.location, operationIds: preId + ',855', type: 3 })
basicForm.propertyRightNature && rule.push({ answerId: 856, emptyOne: 125, emptyTwo: basicForm.propertyRightNature, operationIds: preId + ',856', type: 3 })
basicForm.area && rule.push({ answerId: 857, emptyOne: 125, emptyTwo: basicForm.area, operationIds: preId + ',857', type: 3 })
basicForm.usagePeriod && rule.push({ answerId: 858, emptyOne: 125, emptyTwo: basicForm.usagePeriod, operationIds: preId + ',858', type: 3 })
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
basicForm.position && rule.push({ answerId: 848, emptyOne: 125, emptyTwo: basicForm.position, operationIds: preId + ',848', type: 3 })
basicForm.salary && rule.push({ answerId: 849, emptyOne: 125, emptyTwo: basicForm.salary, operationIds: preId + ',849', type: 3 })
basicForm.currentWorkYears && rule.push({ answerId: 850, emptyOne: 125, emptyTwo: basicForm.currentWorkYears, operationIds: preId + ',850', type: 3 })
basicForm.totalWorkYears && rule.push({ answerId: 851, emptyOne: 125, emptyTwo: basicForm.totalWorkYears, operationIds: preId + ',851', type: 3 })
basicForm.propertyOwner && rule.push({ answerId: 852, emptyOne: 125, emptyTwo: basicForm.propertyOwner, operationIds: preId + ',852', type: 3 })
basicForm.propertyCertificateNo && rule.push({ answerId: 853, emptyOne: 125, emptyTwo: basicForm.propertyCertificateNo, operationIds: preId + ',853', type: 3 })
basicForm.coOwnership && rule.push({ answerId: 854, emptyOne: 125, emptyTwo: basicForm.coOwnership, operationIds: preId + ',854', type: 3 })
basicForm.location && rule.push({ answerId: 855, emptyOne: 125, emptyTwo: basicForm.location, operationIds: preId + ',855', type: 3 })
basicForm.propertyRightNature && rule.push({ answerId: 856, emptyOne: 125, emptyTwo: basicForm.propertyRightNature, operationIds: preId + ',856', type: 3 })
basicForm.area && rule.push({ answerId: 857, emptyOne: 125, emptyTwo: basicForm.area, operationIds: preId + ',857', type: 3 })
basicForm.usagePeriod && rule.push({ answerId: 858, emptyOne: 125, emptyTwo: basicForm.usagePeriod, operationIds: preId + ',858', type: 3 })
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.setCreditIds({
personalLoanId: data.personalLoanId,
applicationDate: data.applicationDate || this.form.applicationDate,
contractNo: data.contractNo || this.form.contractNo,
})
if (data.contractNo) this.form.contractNo = data.contractNo
this.curStep++
}
this.setCreditIds({
personalLoanId: data.personalLoanId,
applicationDate: data.applicationDate || this.form.applicationDate,
contractNo: data.contractNo || this.form.contractNo,
})
if (data.contractNo) this.form.contractNo = data.contractNo
this.curStep++
} catch { (e) => { } }
}, this.$refs))
} else {
//
if (!this.form.contractAmount) return this.$message.warning('请输入合同金额!')
this.$refs.form.validate(myValidate(() => {
// this.visible = true
this.saveContract()
}, this.$refs))
}
@ -524,27 +549,23 @@ export default {
...form,
})
if (data.status === 200) {
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
const rule = [
{ answerId: 860, emptyOne: 125, emptyTwo: form.contractAmount, operationIds: preId + ',860', type: 3 },
{ answerId: 861, emptyOne: 141, emptyTwo: this.loanTerms.find(e => e.id === form.loanTerm).pointId, operationIds: preId + ',861', type: 1 },
{ answerId: 862, emptyOne: 125, emptyTwo: form.interestStartDate, operationIds: preId + ',862', type: 3 },
{ answerId: 863, emptyOne: 135, emptyTwo: form.repaymentMethod, operationIds: preId + ',863', type: 1 },
{ answerId: 864, emptyOne: 125, emptyTwo: form.repaymentAccount, operationIds: preId + ',864', type: 3 },
]
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
const rule = [
{ answerId: 860, emptyOne: 125, emptyTwo: form.contractAmount, operationIds: preId + ',860', type: 3 },
{ answerId: 861, emptyOne: 141, emptyTwo: this.loanTerms.find(e => e.id === form.loanTerm).pointId, operationIds: preId + ',861', type: 1 },
{ answerId: 862, emptyOne: 125, emptyTwo: form.interestStartDate, operationIds: preId + ',862', type: 3 },
{ answerId: 863, emptyOne: 125, emptyTwo: form.repaymentMethod, operationIds: preId + ',863', type: 3 },
{ answerId: 864, emptyOne: 125, emptyTwo: form.repaymentAccount, operationIds: preId + ',864', type: 3 },
]
await addOperation({
parentId: preId,
lcJudgmentRuleReq: rule,
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$router.push('/counter/list/manage/personalLoans')
} else {
this.$message.error(data.message)
}
data.status === 200 ? this.$router.push('/counter/list/manage/personalLoans') : this.$message.error(data.message)
} catch { (e) => { } }
},
//
@ -560,24 +581,42 @@ export default {
})
this.$message[data.status === 200 ? 'success' : 'error'](data.message)
if (data.status === 200) {
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 865, emptyOne: 151, emptyTwo: this.disbursementDate, operationIds: preId + ',865', type: 3 }],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 865, emptyOne: '', emptyTwo: '', operationIds: preId + ',865', type: '' }],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
setTimeout(this.$router.push('/counter/list/manage/personalLoans'), 1500)
}
setTimeout(this.$router.push('/counter/list/manage/personalLoans'), 1500)
},
//
showExtension () {
this.extensionVisible = true
},
//
async extensionSubmit () {
if (!this.extensionPeriod) return this.$message.error('请选择展期期限!')
const { data } = await operationExtension({
id: this.form.contractId,
extensionPeriod: this.extensionPeriod,
})
this.$message[data.status === 200 ? 'success' : 'error'](data.message)
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 866, emptyOne: '', emptyTwo: '', operationIds: preId + ',866', type: '' }],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
setTimeout(this.$router.push('/counter/list/manage/personalLoans'), 1500)
},
phoneListen,
checkName,
@ -598,8 +637,6 @@ export default {
}
</script>
<style lang='scss' scoped>
@import '@/styles/dialog.scss';
.wrap {
width: 100%;
height: calc(90vh - 27px);

@ -25,7 +25,7 @@ export default {
},
data () {
return {
text: '全部',/* 顶部文字 */
text: '',/* 顶部文字 */
textObj: {
'1': '全部',
'2': '正常还款',

@ -39,8 +39,7 @@
scope.row.contractNo !== '——' ? '查看' : '编辑'
}}</el-button>
<template v-if="scope.row.personalLoanId > 0">
<el-button v-if="scope.row.disbursementDate !== '' && !scope.row.renewalOrNot"
@click="toDetail(scope.row, 2)" size="small">展期</el-button>
<el-button v-if="!scope.row.renewalOrNot" @click="toDetail(scope.row, 2)" size="small">展期</el-button>
<el-button @click="repayment(scope.row)" size="small">还款计划</el-button>
</template>
</template>
@ -100,25 +99,6 @@
@current-change="handleCurrentChangePayment" :total="totalRepayment"></el-pagination>
</div>
</el-dialog>
<el-dialog :visible.sync="extensionVisible" width="500px" z-index="6000" append-to-body :show-close="false"
custom-class="dia">
<div class="data-dia23">
<div slot="title" class="dia-header">
<div class="data-title">请选择展期期限</div>
</div>
<div style="padding: 30px 0;">
<el-select v-model="extensionPeriod" placeholder="请选择" size="small" style="width: 100%;">
<el-option v-for="(item, i) in extensions" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select>
</div>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="extensionVisible = false">取消</el-button>
<el-button type="primary" @click="extensionSubmit">确定</el-button>
</span>
</el-dialog>
</div>
</template>
@ -126,7 +106,7 @@
import { tableRowClassName, headerCellStyle } from '@/assets/js/myConfig'
import MyDialog from '@/components/dialogTwo'
import NeedBefore from '@/components/needBefore'
import { batchProcessing, personalBasicList, repaymentPlan, addOperation, operationExtension } from '@/api/http';
import { batchProcessing, personalBasicList, repaymentPlan } from '@/api/http';
const moduleName = 'personalLoans/list'
import { mapMutations, mapGetters } from 'vuex'
@ -168,61 +148,6 @@ export default {
status: '',
},
curRow: {},
extensionVisible: false,
extensionPeriod: 1,
extensions: [
{
id: 1,
name: '1个月',
pointId: 278,
},
{
id: 2,
name: '2个月',
pointId: 279,
},
{
id: 3,
name: '3个月',
pointId: 280,
},
{
id: 4,
name: '4个月',
pointId: 281,
},
{
id: 5,
name: '5个月',
pointId: 282,
},
{
id: 6,
name: '6个月',
pointId: 283,
},
{
id: 7,
name: '7个月',
pointId: 284,
},
{
id: 8,
name: '8个月',
pointId: 285,
},
{
id: 9,
name: '9个月',
pointId: 286,
},
{
id: 10,
name: '10个月',
pointId: 287,
},
],
}
},
watch: {
@ -270,36 +195,8 @@ export default {
this.page = val
this.getData()
},
toDetail (row, type) {
if (type === 2) {
this.curRow = row
this.extensionVisible = true
} else {
this.$router.push(`/counter/list/manage/personalLoans-detail?show=${type === 2 ? 2 : row.contractNo !== '——' ? 1 : ''}&id=${row.personalLoanId}`)
}
},
//
async extensionSubmit () {
if (!this.extensionPeriod) return this.$message.error('请选择展期期限!')
const { data } = await operationExtension({
id: this.curRow.contractId,
extensionPeriod: this.extensionPeriod,
})
this.$message[data.status === 200 ? 'success' : 'error'](data.message)
if (data.status === 200) {
//
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId: 866, emptyOne: 152, emptyTwo: this.extensions.find(e => e.id === this.extensionPeriod).pointId, operationIds: preId + ',866', type: 1 }],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.extensionVisible = false
this.getData()
}
toDetail (row, show) {
this.$router.push(`/counter/list/manage/personalLoans-detail?show=${show === 2 ? 2 : row.contractNo !== '——' ? 1 : ''}&id=${row.personalLoanId}`)
},
//
async repayment (row) {
@ -343,16 +240,6 @@ export default {
id: row.id,
status
}])
const answerId = status === '已还款' ? 905 : 906
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId, emptyOne: '', emptyTwo: '', operationIds: preId + ',' + answerId, type: '' },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$message.success(`${text}成功`)
this.getRepayment()
this.getData()
@ -373,16 +260,6 @@ export default {
}
})
await batchProcessing(ids)
const answerId = status === '已还款' ? 903 : 904
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,767'
await addOperation({
parentId: preId,
lcJudgmentRuleReq: [{ answerId, emptyOne: '', emptyTwo: '', operationIds: preId + ',' + answerId, type: '' },],
projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime')
})
this.$message.success(`${text}成功`)
this.$refs.repayments.clearSelection()
this.multipleSelection = []
@ -399,7 +276,6 @@ export default {
</script>
<style lang="scss" scoped>
@import '@/styles/dialog.scss';
@import '@/assets/css/tablebg.scss';
.inner {

@ -15,7 +15,7 @@
<template slot="title">{{ subItem.title }}</template>
<el-menu-item v-for="(threeItem, i) in subItem.children" :key="i" :index="threeItem.index">{{
threeItem.title
}}</el-menu-item>
}}</el-menu-item>
</el-submenu>
<el-menu-item v-else :index="subItem.index" :key="subItem.index">{{ subItem.title }}</el-menu-item>
</template>
@ -35,12 +35,23 @@
<script>
import { mapState } from 'vuex'
// import bus from '@/libs/bus';
import Setting from '@/setting';
export default {
// props: {
// needIndex: {
// type: String,
// required: true
// }
// },
computed: {
...mapState('system', ['isCredit'])
...mapState({
isCredit: state => state.system.isCredit
})
},
data () {
return {
// onRoutes:'/counter/list/manage/consumerClient',
onRoutes: '',
menus: [],
defaultMenus: [
@ -249,9 +260,14 @@ export default {
]
}
},
watch: {
needIndex (newVal) {
this.onRoutes = newVal
}
},
created () {
this.menus = this.isCredit ? this.creditMenus : this.defaultMenus
let path = sessionStorage.getItem(this.isCredit ? 'creditPath' : 'computerPath')
const path = sessionStorage.getItem('computerPath')
if (path) {
this.onRoutes = path
} else {
@ -263,6 +279,11 @@ export default {
this.onRoutes = path
}
},
beforeDestroy () {
sessionStorage.setItem('computerPath', this.onRoutes)
sessionStorage.getItem('submited') || this.$router.push('/counter/list/')
},
};
</script>

@ -137,8 +137,7 @@
<script>
import { Loading } from "element-ui";
import Util from '@/libs/util'
import Axios from 'axios'
import util from '@/libs/util'
import breadcrumb from '@/components/breadcrumb'
import quill from "@/components/quill";
import { reportDetail, exportBankExperimentReport, updateReport } from "@/api/http.js";
@ -146,9 +145,6 @@ export default {
data () {
return {
reportId: this.$route.query.reportId,
headers: {
token: sessionStorage.getItem('token')
},
title: "实验报告",
loading: false,
form: {},
@ -191,12 +187,16 @@ export default {
summarize: form.summarize
}
const expData = report.data
this.userScores = userScores
// data使
if (!expData) {
this.userScores = userScores
this.handleList(userScores)
// this.$post(this.api.editExperimentalData, {
// reportId,
// data: JSON.stringify(userScores)
// }).then(res => { }).catch(err => { })
} else {
this.handleList(JSON.parse(expData))
this.handleList(userScores)
}
this.loading = false
@ -218,7 +218,7 @@ export default {
})
this.expData = list
},
async exportPage () {
exportPage () {
const form = Object.assign(this.form, this.infoData)
const list = JSON.parse(JSON.stringify(this.expData))
list.map((e, i) => {
@ -237,21 +237,17 @@ export default {
this.loadIns = Loading.service({
background: "#fff"
});
try {
const res = await Axios.post(`${location.origin}/occupationlab/occupationlab/achievement/exportBankExperimentReport`, {
...form,
experimentalData: list
}, {
headers: this.headers,
responseType: 'blob'
})
const name = res.headers['content-disposition']
Util.downloadFileDirect(name ? decodeURI(name) : `实验报告.docx`, new Blob([res.data]))
} finally {
exportBankExperimentReport({
...form,
experimentalData: list
}).then(res => {
this.loadIns.close();
this.loading = false;
}
util.downloadFileDirect(`实验报告.docx`, new Blob([res.data]))
}).catch(res => {
this.loadIns.close();
this.loading = false;
})
},
editReport () { //
if (this.editing) {

@ -15,6 +15,7 @@ const Setting = {
// 页面切换时,是否显示模拟的进度条
showProgressBar: true,
// 接口请求地址
// apiBaseURL: env === 'development' ? 'http://192.168.31.125:8888' : 'http://121.37.12.51:8000',
apiBaseURL: env === 'development' ? 'http://192.168.31.151:9000' : location.origin,
// 接口请求返回错误时,弹窗的持续时间,单位:秒
modalDuration: 3,

@ -87,25 +87,25 @@ const allGoods = {
596: { name: '银行承兑协议一联', src: require('@/assets/img/goods/银行承兑协议.png'), id: 596 },
702: { name: '银行承兑协议二联', src: require('@/assets/img/goods/银行承兑协议.png'), id: 702 },
597: { name: '银行承兑协议三联', src: require('@/assets/img/goods/银行承兑协议.png'), id: 597 },
275: { name: '资产负债表', src: require('@/assets/img/goods/zcfzb.jpg'), id: 275 },
276: { name: '损益表', src: require('@/assets/img/goods/syb.jpg'), id: 276 },
277: { name: '现金流量表', src: require('@/assets/img/goods/xjllb.jpg'), id: 277 },
254: { name: '法人身份证', src: require('@/assets/img/goods/idCard.png'), id: 254 },
255: { name: '抵押物房产证', src: require('@/assets/img/goods/khsqs.png'), id: 255 },
256: { name: '实际控制人婚姻情况证明(结/离婚证)', src: require('@/assets/img/goods/银行承兑协议.png'), id: 256 },
257: { name: '实际控制人配偶身份证复印件', src: require('@/assets/img/goods/khsqs.png'), id: 257 },
258: { name: '营业执照正本', src: require('@/assets/img/goods/ywsfpz.png'), id: 258 },
259: { name: '开户许可证(基本存款账户信息)', src: require('@/assets/img/goods/zcfzb.jpg'), id: 259 },
260: { name: '企业注册地址租赁合同或对应房产证', src: require('@/assets/img/goods/khsqs.png'), id: 260 },
261: { name: '公司章程', src: require('@/assets/img/goods/xjllb.jpg'), id: 261 },
262: { name: '公司股东证件复印件', src: require('@/assets/img/goods/syb.jpg'), id: 262 },
263: { name: '公章私章财务章', src: require('@/assets/img/goods/khsqs.png'), id: 263 },
264: { name: '公司近一年纳税证明', src: require('@/assets/img/goods/businessReportMissUser.png'), id: 264 },
265: { name: '公司近半年流水', src: require('@/assets/img/goods/khsqs.png'), id: 265 },
266: { name: '企业财务报表', src: require('@/assets/img/goods/businessSpecialApplication.png'), id: 266 },
267: { name: '贷款申请书', src: require('@/assets/img/goods/khsqs.png'), id: 267 },
268: { name: '征信授权书', src: require('@/assets/img/goods/zcfzb.jpg'), id: 268 },
770: { name: '资产负债表', src: require('@/assets/img/goods/zcfzb.jpg'), id: 770 },
771: { name: '损益表', src: require('@/assets/img/goods/syb.jpg'), id: 771 },
772: { name: '现金流量表', src: require('@/assets/img/goods/xjllb.jpg'), id: 772 },
804: { name: '法人身份证', src: require('@/assets/img/goods/idCard.png'), id: 804 },
805: { name: '抵押物房产证', src: require('@/assets/img/goods/khsqs.png'), id: 805 },
806: { name: '实际控制人婚姻情况证明(结/离婚证)', src: require('@/assets/img/goods/银行承兑协议.png'), id: 806 },
807: { name: '实际控制人配偶身份证复印件', src: require('@/assets/img/goods/khsqs.png'), id: 807 },
808: { name: '营业执照正本', src: require('@/assets/img/goods/ywsfpz.png'), id: 808 },
809: { name: '开户许可证(基本存款账户信息)', src: require('@/assets/img/goods/zcfzb.jpg'), id: 809 },
810: { name: '企业注册地址租赁合同或对应房产证', src: require('@/assets/img/goods/khsqs.png'), id: 810 },
811: { name: '公司章程', src: require('@/assets/img/goods/xjllb.jpg'), id: 811 },
812: { name: '公司股东证件复印件', src: require('@/assets/img/goods/syb.jpg'), id: 812 },
813: { name: '公章私章财务章', src: require('@/assets/img/goods/khsqs.png'), id: 813 },
814: { name: '公司近一年纳税证明', src: require('@/assets/img/goods/businessReportMissUser.png'), id: 814 },
815: { name: '公司近半年流水', src: require('@/assets/img/goods/khsqs.png'), id: 815 },
817: { name: '企业财务报表', src: require('@/assets/img/goods/businessSpecialApplication.png'), id: 817 },
818: { name: '贷款申请书', src: require('@/assets/img/goods/khsqs.png'), id: 818 },
819: { name: '征信授权书', src: require('@/assets/img/goods/zcfzb.jpg'), id: 819 },
// // 有图片的
// 407: {name:407,src:require('@/assets/img/goods/businessSpecialApplication.png'),id:407},
@ -201,7 +201,7 @@ const allDataFlow = {
isSettle: false,
// 票据号码
ticketNumber: '00242986',
corporateClient: false,
'corporateClient': false,
nowDepositNumber
}
@ -1396,7 +1396,7 @@ const myInitState = {
'业务三十四': {
id: 704,
name: '网上银行',
data: [13, 16],
data: [13, 16, 407],
needs: [],
isStamp: {
// '业务专用章': [ 411 ]
@ -1456,37 +1456,8 @@ const myInitState = {
},
'业务三十六': {
id: 844,
name: '个人贷款业务',
data: [13],
needs: [],
isStamp: {
// '业务专用章': [ 411 ]
},
backPeople: [],
// backPeople: [ ],
cultureArr: [],
moneyBox: [], // 钱箱
needBackMoney: false, // 需要钱箱取钱
peopleSign: [], // 客户签字
cultureIn: [], // 传票栏
sealBox: [], // 印章盒
currencyDetector: [], // 验钞机
printer: [], // 打印机
resource: [], // 资料
importanceArr: [], // 重要空白凭证箱
commonArr: [], // 普通凭证箱
dataFlow: {
currency: 153,
goldLogo: 150,
voucherNumber,
}
},
'业务三十七': {
id: 893,
name: '公司贷款业务',
data: [275, 276, 277, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268],
name: '贷款业务',
data: [13, 16, 770, 771, 772, 442, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 817, 818, 819],
needs: [],
isStamp: {
// '业务专用章': [ 411 ]
@ -1539,6 +1510,7 @@ export default {
// 下拉框的数据,在电脑中的下拉框有许多相同的,不用每次都请求服务器,可以在这里拿数据:
selectList: {
banknoteRemittanceList: [],
currencySelectList: [],
goldLogoSelectList: [],
accountQualitySelectList: [],
@ -2745,7 +2717,7 @@ export default {
'业务三十四': {
id: 704,
name: '网上银行',
data: [13, 16],
data: [13, 16, 407],
needs: [],
isStamp: {
// '业务专用章': [ 411 ]
@ -2805,37 +2777,8 @@ export default {
},
'业务三十六': {
id: 844,
name: '个人贷款业务',
data: [13],
needs: [],
isStamp: {
// '业务专用章': [ 411 ]
},
backPeople: [],
// backPeople: [ ],
cultureArr: [],
moneyBox: [], // 钱箱
needBackMoney: false, // 需要钱箱取钱
peopleSign: [], // 客户签字
cultureIn: [], // 传票栏
sealBox: [], // 印章盒
currencyDetector: [], // 验钞机
printer: [], // 打印机
resource: [], // 资料
importanceArr: [], // 重要空白凭证箱
commonArr: [], // 普通凭证箱
dataFlow: {
currency: 153,
goldLogo: 150,
voucherNumber,
}
},
'业务三十七': {
id: 893,
name: '公司贷款业务',
data: [275, 276, 277, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268],
name: '贷款业务',
data: [13, 16, 770, 771, 772, 442, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 817, 818, 819],
needs: [],
isStamp: {
// '业务专用章': [ 411 ]
@ -2894,23 +2837,22 @@ export default {
76: 'isTranslate',
40: 'outAccountWayList',
39: 'calculateWayList',
119: 'banknoteRemittanceList',
122: 'fundingSourceList',
123: 'allCurrencyList',
124: 'buyForeignPurposeList',
}
for (const key in mapObj) {
const name = mapObj[key]
if (!state.selectList[name] || !state.selectList[name].length) {
getSubjectInfo({
subject_id: key
}).then((data) => {
if (!state.selectList[name]) state.selectList[name] = []
if (data.status == 200 && !state.selectList[name].length) {
state.selectList[name].push(...data.data.items);
}
}).catch((error) => { })
}
getSubjectInfo({
subject_id: key
}).then((data) => {
const name = mapObj[key]
if (!state.selectList[name]) state.selectList[name] = []
if (data.status == 200 && !state.selectList[name].length) {
state.selectList[name].push(...data.data.items);
}
}).catch((error) => { })
}
@ -3344,6 +3286,8 @@ export default {
setCreditImportIds (state, val) {
if (val) {
state.creditImportIds[state.creditImportIndex] = val
// state.creditImportIds.push(val)
console.log("🚀 ~ setCreditImportIds ~ state.creditImportIds[state.creditImportIndex]:", state.creditImportIds, state.creditImportIds[state.creditImportIndex])
} else {
state.creditImportIds = {}
}
@ -3422,7 +3366,7 @@ export default {
}
}
// 找到银行卡item
const item = arr.find(item => item && item.id === 16)
const item = arr.find(item => item.id === 16)
if (item) {
// 如果是业务一,则物品栏中的银行卡名字为一类银行卡
if (state.businessKey === '业务一') {

@ -1,6 +1,6 @@
import Setting from '@/setting'
import Util from '@/libs/util'
import util from '@/libs/util'
import { Message } from 'element-ui'
import { post, get, del, put } from '@/plugins/requests/index.js'
import api from '@/api'
@ -27,18 +27,17 @@ export default {
let href = process.env.NODE_ENV === 'development' ?
`http://${location.hostname}:8082/#/` :
`${location.origin}${isAdmin ? '/admin' : ''}/#/`
const { query } = router.app._route
let assessmentId = sessionStorage.getItem('assessmentId') || query.assessmentId
let competitionId = sessionStorage.getItem('competitionId') || query.competitionId
if (location.origin === 'http://121.37.12.51') {
href = `http://121.37.12.51/${isAdmin ? 'admin' : 'student'}/#/`
}
let assessmentId = sessionStorage.getItem('assessmentId')
if (assessmentId != 'null' && assessmentId != null && assessmentId != '') {
href += `ass/list`
} else if (competitionId != 'null' && competitionId != null && competitionId != '') {
href += `match/details?id=${competitionId}`
} else {
const cid = sessionStorage.getItem('cid')
href += `station/preview?courseId=${cid}&curriculumName=银行项目&mallId=${router.currentRoute.query.mallId}`
}
Util.clearSession()
sessionStorage.clear()
location.href = href
},
},

@ -49,7 +49,7 @@
text-align: center;
color: #fff;
font-size: 24px;
background: url(https://izhixinyun.com/images/dia-title.png) 0 0 / cover no-repeat;
background: url(../../../../assets/img/dia-title.png) 0 0 / cover no-repeat;
}
}
}

Loading…
Cancel
Save