Compare commits

..

12 Commits

  1. 6
      package-lock.json
  2. 1
      package.json
  3. 2
      src/api/api.js
  4. 10
      src/api/http.js
  5. 142
      src/components/case/index.vue
  6. 142
      src/components/dialog/index.vue
  7. 1
      src/layouts/header/index.vue
  8. 8
      src/pages/counter/list/index.vue
  9. 2
      src/pages/index/list/index.vue
  10. 51
      src/pages/manage/index/index.vue
  11. 384
      src/pages/manage/list/ImportantCash/controlCash/index.vue
  12. 402
      src/pages/manage/list/ImportantCash/controlCash2/index.vue
  13. 713
      src/pages/manage/list/ImportantCash/controlCash3/index.vue
  14. 13
      src/pages/manage/list/agent/electricRate.vue
  15. 8
      src/pages/manage/list/agent/telRate.vue
  16. 9
      src/pages/manage/list/agent/waterRate.vue
  17. 20
      src/pages/manage/list/corporateLoans/application.vue
  18. 166
      src/pages/manage/list/corporateLoans/apply/creditApplication/index.vue
  19. 73
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/basic.vue
  20. 68
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/importReport.vue
  21. 60
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/preLoan.vue
  22. 95
      src/pages/manage/list/corporateLoans/apply/creditEvaluation/rating.vue
  23. 36
      src/pages/manage/list/corporateLoans/apply/index.vue
  24. 89
      src/pages/manage/list/corporateLoans/apply/loanApplication/step1.vue
  25. 153
      src/pages/manage/list/corporateLoans/apply/loanApplication/step2.vue
  26. 74
      src/pages/manage/list/corporateLoans/detail.vue
  27. 23
      src/pages/manage/list/corporateLoans/loan.vue
  28. 34
      src/pages/manage/list/corporateLoans/management.vue
  29. 35
      src/pages/manage/list/corporateLoans/repayment.vue
  30. 31
      src/pages/manage/list/foreignExchange/puchasing.vue
  31. 26
      src/pages/manage/list/foreignExchange/settlement.vue
  32. 15
      src/pages/manage/list/onlineBank/openAccount.vue
  33. 250
      src/pages/manage/list/personalLoans/detail.vue
  34. 2
      src/pages/manage/list/personalLoans/index.vue
  35. 25
      src/pages/manage/list/personalLoans/list.vue
  36. 27
      src/pages/manage/navbar/index.vue
  37. 8
      src/pages/report/index.vue
  38. 96
      src/store/modules/system.js
  39. 6
      src/store/modules/user.js
  40. 2
      src/styles/dialog.scss

6
package-lock.json generated

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

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

@ -10,7 +10,7 @@ if (dev) {
// 本地 // 本地
host = 'http://121.37.12.51/' // 中台测试服 host = 'http://121.37.12.51/' // 中台测试服
// host = 'https://www.occupationlab.com/' // 正式服 // 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 ip = localStorage.getItem('localIp')
const ips = ['http://192.168.31.217:9000/', 'http://192.168.31.51:9000/', 'http://121.37.12.51/'] const ips = ['http://192.168.31.217:9000/', 'http://192.168.31.51:9000/', 'http://121.37.12.51/']
host = ips[+ip] host = ips[+ip]

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

@ -229,6 +229,42 @@ export default {
submitType: false 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 () { created () {
let assessmentId = this.getQueryVariable('assessmentId') let assessmentId = this.getQueryVariable('assessmentId')
sessionStorage.setItem('assessmentId', assessmentId) sessionStorage.setItem('assessmentId', assessmentId)
@ -252,7 +288,6 @@ export default {
}); });
// //
this.sureSubmit(true) this.sureSubmit(true)
} else {
} }
}) })
}, 4000) }, 4000)
@ -261,73 +296,27 @@ export default {
this.popContainer = data 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 () { mounted () {
let token = sessionStorage.getItem('token') || this.getQueryVariable('token') let token = this.getParam('token')
let cid = sessionStorage.getItem('cid') || this.getQueryVariable('cid') let cid = this.getParam('cid')
let systemId = sessionStorage.getItem('systemId') || this.getQueryVariable('systemId') let systemId = this.getParam('systemId')
let projectId = this.getQueryVariable('projectId') let projectId = this.getParam('projectId')
if (sessionStorage.getItem('projectId')) { let assessmentId = this.getParam('assessmentId')
projectId = sessionStorage.getItem('projectId') let competitionId = this.getParam('competitionId')
} let stageId = this.getParam('stageId')
let assessmentId = sessionStorage.getItem('assessmentId') || this.getQueryVariable('assessmentId') let teamId = this.getParam('teamId')
let competitionId = sessionStorage.getItem('competitionId') || this.getQueryVariable('competitionId') let classId = this.getParam('classId')
let stageId = sessionStorage.getItem('stageId') || this.getQueryVariable('stageId') let stopTime = this.getParam('stopTime')
let teamId = sessionStorage.getItem('teamId') || this.getQueryVariable('teamId') let mallId = this.getParam('mallId')
let classId = sessionStorage.getItem('classId') || this.getQueryVariable('classId') let timestamp = +stopTime
let stopTime = sessionStorage.getItem('stopTime') || this.getQueryVariable('stopTime') timestamp || sessionStorage.removeItem('timestamp')
let mallId = sessionStorage.getItem('mallId') || this.getQueryVariable('mallId')
let timestamp = +stopTime; if (token) {
if (timestamp != null) {
} else {
sessionStorage.setItem('timestamp', null)
}
if (token != null) {
sessionStorage.setItem('token', token) sessionStorage.setItem('token', token)
sessionStorage.setItem('cid', cid) sessionStorage.setItem('cid', cid)
sessionStorage.setItem('systemId', systemId) sessionStorage.setItem('systemId', systemId)
sessionStorage.setItem('timestamp', timestamp) sessionStorage.setItem('timestamp', timestamp)
console.log("🚀 ~ mounted ~ projectId:", token, projectId)
sessionStorage.setItem('projectId', projectId) sessionStorage.setItem('projectId', projectId)
sessionStorage.setItem('assessmentId', assessmentId) sessionStorage.setItem('assessmentId', assessmentId)
sessionStorage.setItem('competitionId', competitionId) sessionStorage.setItem('competitionId', competitionId)
@ -335,21 +324,20 @@ export default {
sessionStorage.setItem('teamId', teamId) sessionStorage.setItem('teamId', teamId)
sessionStorage.setItem('classId', classId) sessionStorage.setItem('classId', classId)
this.assessmentId = assessmentId this.assessmentId = assessmentId
this.competitionId = JSON.parse(competitionId) this.competitionId = competitionId
this.stageId = stageId this.stageId = stageId
this.teamId = teamId this.teamId = teamId
this.classId = classId this.classId = classId
this.mallId = mallId this.mallId = mallId
} }
let tokens = sessionStorage.getItem('token') if (token) {
if (tokens || token) {
this.projectPermissions = this.assessmentId ? this.projectPermissions = this.assessmentId ?
1 : 1 :
this.competitionId ? this.competitionId ?
2 : 2 :
0 0
this.assessmentId && this.projectId && this.checkVer() this.assessmentId && this.projectId && this.checkVer()
if (JSON.parse(assessmentId != null && assessmentId != '' && assessmentId != 'null' || this.competitionId)) { if (assessmentId || this.competitionId) {
this.selectProjects({ this.selectProjects({
projectId projectId
}) })
@ -411,6 +399,11 @@ export default {
this.toggleCase() this.toggleCase()
} }
}, },
//
getParam (field) {
const s = sessionStorage.getItem(field)
return s !== 'null' && s !== 'undefined' && s ? s : this.getQueryVariable(field)
},
getQueryVariable (name) { getQueryVariable (name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)') var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)')
if (window.location.href.split('?')[1]) { if (window.location.href.split('?')[1]) {
@ -421,20 +414,6 @@ export default {
return null 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 () { getData () {
@ -673,7 +652,6 @@ export default {
this.actEndTime = new Date().getTime(); this.actEndTime = new Date().getTime();
let ruleReqs = sessionStorage.getItem('ruleReqs') let ruleReqs = sessionStorage.getItem('ruleReqs')
let startTime = sessionStorage.getItem('startTime') || this.entryTime let startTime = sessionStorage.getItem('startTime') || this.entryTime
console.log("🚀 ~ sureSubmit ~ this.entryTime:", this.entryTime)
let ruleReqsList = JSON.parse(ruleReqs); let ruleReqsList = JSON.parse(ruleReqs);
let lcld = [] let lcld = []
for (var i = 0; i < this.requires.length; i++) { for (var i = 0; i < this.requires.length; i++) {

@ -65,6 +65,7 @@
</template> </template>
<script> <script>
import { mapGetters } from 'vuex'
// objmoduleName, // objmoduleName,
const obj = { const obj = {
@ -121,7 +122,32 @@ const nameMap = {
116: '现金支票' 116: '现金支票'
}, },
currency: { currency: {
12: 'CNY人民币' 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: '印度卢比(南非兰特)',
}, },
goldLogo: { goldLogo: {
13: '钞户', 13: '钞户',
@ -291,6 +317,14 @@ const nameMap = {
148: '是', 148: '是',
149: '否' 149: '否'
}, },
monthlyWithholding: {
142: '是',
143: '否'
},
numType: {
144: '手机号码',
145: '座机号码'
},
buyForeignPurpose: { buyForeignPurpose: {
187: '因私旅游', 187: '因私旅游',
188: '境外留学', 188: '境外留学',
@ -309,6 +343,17 @@ const nameMap = {
201: '其他服务', 201: '其他服务',
202: '其他经常转移', 202: '其他经常转移',
}, },
fundingSource: {
154: '职工报酬和赡家款',
155: '旅游',
156: '金融和保险服务',
157: '专有权利使用费和特许费',
158: '咨询服务',
159: '其他服务',
160: '投资收益',
161: '其他经常转移',
162: '运输',
},
} }
export default { export default {
props: { props: {
@ -335,14 +380,30 @@ export default {
moduleName: { moduleName: {
type: String, type: String,
default: 'spacial' default: 'spacial'
},
spare: {
type: Boolean,
default: true
},
},
data () {
return {
flow: 1, //
disForm: { //
name: '002288',
pass: '123456'
},
leftObj: {}, //
rightObj: {} //
} }
}, },
created () { created () {
// flow4 // flow4
if (!this.needAuth) { if (!this.needAuth) {
this.flow = 4 this.flow = 4
} }
let num = 0; let num = 0
// 1 // 1
for (const key in this.showForm) { for (const key in this.showForm) {
if (!this.showForm[key]) { if (!this.showForm[key]) {
@ -383,51 +444,39 @@ export default {
return str; return str;
} }
if (this.spare) {
if (num % 2 === 1) { if (num % 2 === 1) {
// //
this.leftObj['流水号'] = tmpFunc2() this.leftObj['流水号'] = tmpFunc2()
this.leftObj['经办机构'] = '国税支行营业部' this.leftObj['经办机构'] = '国税支行营业部'
this.rightObj['经办柜员'] = '002110' this.rightObj['经办柜员'] = '002110'
if (this.depositNumber) { if (this.depositNumber) {
this.rightObj['定存编号'] = this.depositNumber this.rightObj['定存编号'] = this.depositNumber
} }
} else { } else {
// 31 // 31
this.leftObj['流水号'] = tmpFunc2() this.leftObj['流水号'] = tmpFunc2()
this.leftObj['经办机构'] = '国税支行营业部' this.leftObj['经办机构'] = '国税支行营业部'
this.rightObj['经办柜员'] = '002110' this.rightObj['经办柜员'] = '002110'
if (this.depositNumber) { if (this.depositNumber) {
this.leftObj['定存编号'] = this.depositNumber this.leftObj['定存编号'] = this.depositNumber
}
} }
}
// //
const tmpFunc = () => { const tmpFunc = () => {
const date = new Date() const date = new Date()
var y = date.getFullYear(); var y = date.getFullYear();
var m = date.getMonth() + 1; var m = date.getMonth() + 1;
m = m < 10 ? '0' + m : m; m = m < 10 ? '0' + m : m;
var d = date.getDate(); var d = date.getDate();
d = d < 10 ? ('0' + d) : d; d = d < 10 ? ('0' + d) : d;
return y + '-' + m + '-' + d; return y + '-' + m + '-' + d;
} }
this.rightObj['会计时间'] = tmpFunc() this.rightObj['会计时间'] = tmpFunc()
if (this.leftObj['支取方式'] == 114) this.leftObj['支取方式'] = '印鉴' 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
// 002110
},
data () {
return {
flow: 1, //
disForm: { //
name: '002288',
pass: '123456'
},
leftObj: {}, //
rightObj: {} //
} }
}, },
methods: { methods: {
cancel () { cancel () {
@ -464,7 +513,10 @@ export default {
// + // +
successName () { successName () {
return obj[this.moduleName] + '成功' return obj[this.moduleName] + '成功'
} },
...mapGetters({
getSelectList: 'system/getSelectList'
}),
} }
} }
</script> </script>

@ -72,7 +72,6 @@ export default {
'$route.path': { '$route.path': {
handler (newVal) { handler (newVal) {
this.$nextTick(() => { this.$nextTick(() => {
console.log(newVal)
if (newVal === '/index/list') { if (newVal === '/index/list') {
this.$refs.exitHeader.style.backgroundColor = 'rgb(250, 250, 250)' this.$refs.exitHeader.style.backgroundColor = 'rgb(250, 250, 250)'
} else { } else {

@ -202,7 +202,7 @@
<!-- 动画开始 --> <!-- 动画开始 -->
<div v-if="popText === '密码器'" style="width:800px;padding-right:150px;padding-top:80px"> <div v-if="popText === '密码器'" style="width:800px;padding-right:150px;padding-top:80px">
<el-form :model="passwordForm" :rules="passwordRules" ref="form" label-width="180px" <el-form :model="passwordForm" :rules="passwordRules" ref="form" label-width="180px"
key="passwordFormpasswordAgain" class="flex flex-col justify-center"> key="passwordFormpasswordAgain" class="flex flex-col justify-center" @submit.native.prevent>
<el-form-item class="password-wrap" label="密码" prop="passwordAgain"> <el-form-item class="password-wrap" label="密码" prop="passwordAgain">
<el-input v-focus v-model.trim="passwordForm.passwordAgain" maxlength="6" <el-input v-focus v-model.trim="passwordForm.passwordAgain" maxlength="6"
onkeyup="{this.value=this.value.replace(/\D/g,'')}" autocomplete="new-password" onkeyup="{this.value=this.value.replace(/\D/g,'')}" autocomplete="new-password"
@ -1567,7 +1567,7 @@ export default {
}, },
showManage () {// showManage () {//
this.manageVisible = true; this.manageVisible = true;
this.$router.push(sessionStorage.getItem('computerPath') || (this.isCredit ? '/counter/list/manage/personalLoans' : '/counter/list/manage/consumerClient')) this.$router.push(sessionStorage.getItem(this.isCredit ? 'creditPath' : 'computerPath') || (this.isCredit ? '/counter/list/manage/personalLoans' : '/counter/list/manage/consumerClient'))
}, },
popSure () {/* 弹框-确定 */ popSure () {/* 弹框-确定 */
// //
@ -2166,6 +2166,10 @@ export default {
}).catch((error) => { }).catch((error) => {
}) })
} else if (this.nbm == 12) { } else if (this.nbm == 12) {
if (!this.receptionList.length) {
this.setTipsOperate('请选择需要导入的报表!')
return
}
this.setCreditImportIds(this.receptionList[0].id) this.setCreditImportIds(this.receptionList[0].id)
this.setTipsOperate('导入成功!') this.setTipsOperate('导入成功!')
} }

@ -13,7 +13,7 @@
<div class="sth international cp" @click="toPart('/counter', true)"> <div class="sth international cp" @click="toPart('/counter', true)">
<!-- <img width="100%" v-lazy="lazy1" alt="" @click="toPart('/counter')"> --> <!-- <img width="100%" v-lazy="lazy1" alt="" @click="toPart('/counter')"> -->
<img width="100%" v-lazy="lazy2" alt="" @click="showComing" /> <img width="100%" v-lazy="lazy2" alt="" />
<!-- src="@/assets/img/integrated-counter.png" --> <!-- src="@/assets/img/integrated-counter.png" -->
<div class="name" @click="toPart('/counter', true)">信贷部</div> <div class="name" @click="toPart('/counter', true)">信贷部</div>
</div> </div>

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

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

@ -1,49 +1,42 @@
<!-- 现金管理 --> <!-- 现金管理 -->
<template> <template>
<div class="wrap"> <div class="wrap">
<div class="nav"> <div class="nav">
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect"> <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="1">凭证领用</el-menu-item>
<el-menu-item index="2">凭证上缴</el-menu-item> <el-menu-item index="2">凭证上缴</el-menu-item>
<el-menu-item index="3">凭证调入</el-menu-item> <el-menu-item index="3">凭证调入</el-menu-item>
<el-menu-item index="4">凭证调出</el-menu-item> <el-menu-item index="4">凭证调出</el-menu-item>
</el-menu> </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>
<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> </template>
<script> <script>
@ -52,168 +45,183 @@ import cashTransferInto from './cashTransferInto.vue'
import cashPaid from './cashPaid.vue' import cashPaid from './cashPaid.vue'
import cashOut from './cashOut.vue' import cashOut from './cashOut.vue'
export default { export default {
name: 'index', name: 'index',
components:{ components: {
cashRecipients, cashRecipients,
cashTransferInto, cashTransferInto,
cashPaid, cashPaid,
cashOut cashOut
}, },
data() { data () {
return { return {
text:'',/* 顶部文字 */ text: '',/* 顶部文字 */
cacheVal: '', cacheVal: '',
textObj:{ textObj: {
'1':'凭证领用', '1': '凭证领用',
'2':'凭证上缴', '2': '凭证上缴',
'3':'凭证调入', '3': '凭证调入',
'4':'凭证调出', '4': '凭证调出',
}, },
form:{ form: {
}, },
visible:false, visible: false,
options:[], options: [],
activeIndex:'1', activeIndex: '1',
second:[// 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
},
}
},
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> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.wrap{ .wrap {
width: 100%; width: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
overflow: hidden; overflow: hidden;
padding: 24px 0 24px 24px; padding: 24px 0 24px 24px;
.nav{
/deep/ .el-menu.el-menu--horizontal{ .nav {
border: 0; /deep/ .el-menu.el-menu--horizontal {
} border: 0;
/deep/ .el-menu--horizontal > .el-menu-item.is-active{ }
border:2px solid #568DF2;
border-radius: 10px; /deep/ .el-menu--horizontal>.el-menu-item.is-active {
color: #000; border: 2px solid #568DF2;
} border-radius: 10px;
/deep/ .el-menu--horizontal > .el-menu-item{ color: #000;
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-input input { /deep/ .el-menu--horizontal>.el-menu-item {
text-align: center; border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
height: 30px;
line-height: 28px;
} }
}
/deep/ .blueText{
color: blue; .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-input input {
text-align: center;
}
/deep/ .blueText {
color: blue;
}
</style> </style>

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

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

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

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

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

@ -100,7 +100,7 @@
<h6 class="l-title">申请人特别说明选填</h6> <h6 class="l-title">申请人特别说明选填</h6>
</el-col> </el-col>
<el-col :span="24"> <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>
<el-col :span="24" style="margin-top: 20px"> <el-col :span="24" style="margin-top: 20px">
@ -234,19 +234,55 @@
</el-row> </el-row>
<div class="m-t-30 text-center"> <div class="m-t-30 text-center">
<el-button @click="submit" type="primary" class="submitBtn" v-throttle>提交</el-button> <el-button @click="beforeSubmit" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div> </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> </div>
</template> </template>
<script> <script>
import { inputListen } from '@/utils/utilFunction.js' import { inputListen } from '@/utils/utilFunction.js'
import { addOperation, creditApplicationInput } from '@/api/http' import { creditApplicationDetails, addOperation, creditApplicationInput } from '@/api/http'
import { mapState, mapMutations } from 'vuex' import { mapState, mapMutations } from 'vuex'
export default { export default {
data () { data () {
return { return {
form: { form: {
applicationAccount: '913403005685450862', applicationAccount: '6227007200580926',
customerName: '丛小凤', customerName: '丛小凤',
identificationNumber: '220602199202281229', identificationNumber: '220602199202281229',
contactPhoneNumber: '15890317718', contactPhoneNumber: '15890317718',
@ -291,6 +327,8 @@ export default {
name: '不良' name: '不良'
}, },
], ],
visible: false,
successVisible: false,
} }
}, },
computed: { computed: {
@ -304,22 +342,44 @@ export default {
inputListen, inputListen,
// //
async getDetail () { 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({ this.initCreditImportIds({
corporateIdCard: '', corporateIdCard: r.corporateIdCard || '',
mortgagePropertyCertificate: '', mortgagePropertyCertificate: r.mortgagePropertyCertificate || '',
proofOfMaritalStatus: '', proofOfMaritalStatus: r.proofOfMaritalStatus || '',
copyOfSpouseSIdCard: '', copyOfSpouseSIdCard: r.copyOfSpouseSIdCard || '',
originalBusinessLicense: '', originalBusinessLicense: r.originalBusinessLicense || '',
accountOpeningPermit: '', accountOpeningPermit: r.accountOpeningPermit || '',
leaseContract: '', leaseContract: r.leaseContract || '',
companyArticlesOfAssociation: '', companyArticlesOfAssociation: r.companyArticlesOfAssociation || '',
shareholderDocuments: '', shareholderDocuments: r.shareholderDocuments || '',
financialSeal: '', financialSeal: r.financialSeal || '',
oneYearTaxPaymentCertificate: '', oneYearTaxPaymentCertificate: r.oneYearTaxPaymentCertificate || '',
halfYearRevenue: '', halfYearRevenue: r.halfYearRevenue || '',
corporateFinancialStatements: '', corporateFinancialStatements: r.corporateFinancialStatements || '',
loanApplicationForm: '', loanApplicationForm: r.loanApplicationForm || '',
creditAuthorizationLetter: '', creditAuthorizationLetter: r.creditAuthorizationLetter || '',
}) })
}, },
// //
@ -327,12 +387,17 @@ export default {
this.setCreditImportIndex(i) this.setCreditImportIndex(i)
this.$parent.$parent.$parent.showData('导入报表', 12) 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 () { async submit () {
try { try {
const { form } = this 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({ await creditApplicationInput({
...this.$store.state.system.creditIds, ...this.$store.state.system.creditIds,
@ -342,31 +407,34 @@ export default {
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768' const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
const rule = [] const rule = []
form.matureRepayment && rule.push({ answerId: 799, emptyOne: '', emptyTwo: '', operationIds: preId + ',798,799', type: '' }) form.cooperationPeriod && rule.push({ answerId: 875, emptyOne: 149, emptyTwo: form.cooperationPeriod, operationIds: preId + ',875', type: 3 })
form.otherRepayments && rule.push({ answerId: 800, emptyOne: 125, emptyTwo: form.otherRepayments, operationIds: preId + ',798,800', type: 3 }) form.matureRepayment && rule.push({ answerId: 798, emptyOne: 147, emptyTwo: 269, operationIds: preId + ',798', type: 1 })
form.paymentForMaterials && rule.push({ answerId: 834, emptyOne: '', emptyTwo: '', operationIds: preId + ',833,834', type: '' }) form.otherRepayments && rule.push({ answerId: 798, emptyOne: 147, emptyTwo: 270, operationIds: preId + ',798', type: 1 })
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.paymentForMaterials && rule.push({ answerId: 833, emptyOne: 148, emptyTwo: 271, operationIds: preId + ',833', type: 1 })
form.otherUses && rule.push({ answerId: 800, emptyOne: 125, emptyTwo: form.otherUses, operationIds: preId + ',833,837', type: 3 }) form.payLaborCosts && rule.push({ answerId: 833, emptyOne: 148, emptyTwo: 272, operationIds: preId + ',833', type: 1 })
form.payExpenses && rule.push({ answerId: 833, emptyOne: 148, emptyTwo: 273, operationIds: preId + ',833', type: 1 })
form.otherUses && rule.push({ answerId: 833, emptyOne: 148, emptyTwo: 274, operationIds: preId + ',833', type: 1 })
form.specialInstructions && rule.push({ answerId: 802, emptyOne: 125, emptyTwo: form.specialInstructions, operationIds: preId + ',802', type: 3 }) form.specialInstructions && rule.push({ answerId: 802, emptyOne: 125, emptyTwo: form.specialInstructions, operationIds: preId + ',802', type: 3 })
// //
const files = this.creditImportIds const files = this.creditImportIds
files.corporateIdCard && rule.push({ answerId: 804, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,804', type: '' }) files.corporateIdCard && rule.push({ answerId: 804, emptyOne: 146, emptyTwo: files.corporateIdCard, operationIds: preId + ',803,804', type: 1 })
files.mortgagePropertyCertificate && rule.push({ answerId: 805, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,805', type: '' }) files.mortgagePropertyCertificate && rule.push({ answerId: 805, emptyOne: 146, emptyTwo: files.mortgagePropertyCertificate, operationIds: preId + ',803,805', type: 1 })
files.proofOfMaritalStatus && rule.push({ answerId: 806, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,806', type: '' }) files.proofOfMaritalStatus && rule.push({ answerId: 806, emptyOne: 146, emptyTwo: files.proofOfMaritalStatus, operationIds: preId + ',803,806', type: 1 })
files.copyOfSpouseSIdCard && rule.push({ answerId: 807, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,807', type: '' }) files.copyOfSpouseSIdCard && rule.push({ answerId: 807, emptyOne: 146, emptyTwo: files.copyOfSpouseSIdCard, operationIds: preId + ',803,807', type: 1 })
files.originalBusinessLicense && rule.push({ answerId: 808, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,808', type: '' }) files.originalBusinessLicense && rule.push({ answerId: 808, emptyOne: 146, emptyTwo: files.originalBusinessLicense, operationIds: preId + ',803,808', type: 1 })
files.accountOpeningPermit && rule.push({ answerId: 809, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,809', type: '' }) files.accountOpeningPermit && rule.push({ answerId: 809, emptyOne: 146, emptyTwo: files.accountOpeningPermit, operationIds: preId + ',803,809', type: 1 })
files.leaseContract && rule.push({ answerId: 810, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,810', type: '' }) files.leaseContract && rule.push({ answerId: 810, emptyOne: 146, emptyTwo: files.leaseContract, operationIds: preId + ',803,810', type: 1 })
files.companyArticlesOfAssociation && rule.push({ answerId: 811, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,811', type: '' }) files.companyArticlesOfAssociation && rule.push({ answerId: 811, emptyOne: 146, emptyTwo: files.companyArticlesOfAssociation, operationIds: preId + ',803,811', type: 1 })
files.shareholderDocuments && rule.push({ answerId: 812, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,812', type: '' }) files.shareholderDocuments && rule.push({ answerId: 812, emptyOne: 146, emptyTwo: files.shareholderDocuments, operationIds: preId + ',803,812', type: 1 })
files.financialSeal && rule.push({ answerId: 813, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,813', type: '' }) files.financialSeal && rule.push({ answerId: 813, emptyOne: 146, emptyTwo: files.financialSeal, operationIds: preId + ',803,813', type: 1 })
files.oneYearTaxPaymentCertificate && rule.push({ answerId: 814, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,814', type: '' }) files.oneYearTaxPaymentCertificate && rule.push({ answerId: 814, emptyOne: 146, emptyTwo: files.oneYearTaxPaymentCertificate, operationIds: preId + ',803,814', type: 1 })
files.halfYearRevenue && rule.push({ answerId: 815, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,815', type: '' }) files.halfYearRevenue && rule.push({ answerId: 815, emptyOne: 146, emptyTwo: files.halfYearRevenue, operationIds: preId + ',803,815', type: 1 })
files.corporateFinancialStatements && rule.push({ answerId: 817, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,817', type: '' }) files.corporateFinancialStatements && rule.push({ answerId: 817, emptyOne: 146, emptyTwo: files.corporateFinancialStatements, operationIds: preId + ',803,817', type: 1 })
files.loanApplicationForm && rule.push({ answerId: 818, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,818', type: '' }) files.loanApplicationForm && rule.push({ answerId: 818, emptyOne: 146, emptyTwo: files.loanApplicationForm, operationIds: preId + ',803,818', type: 1 })
files.creditAuthorizationLetter && rule.push({ answerId: 819, emptyOne: '', emptyTwo: '', operationIds: preId + ',803,819', type: '' }) files.creditAuthorizationLetter && rule.push({ answerId: 819, emptyOne: 146, emptyTwo: files.creditAuthorizationLetter, operationIds: preId + ',803,819', type: 1 })
await addOperation({ await addOperation({
parentId: preId, parentId: preId,
@ -375,15 +443,21 @@ export default {
startTime: sessionStorage.getItem('startTime') startTime: sessionStorage.getItem('startTime')
}) })
this.$message.success('保存成功!') this.successVisible = true
this.$parent.active = '3'
this.$parent.curStep = 0
} catch { (e) => { } } } catch { (e) => { } }
}, },
//
toStep3 () {
this.$parent.active = '3'
this.$parent.curStep = 0
this.$parent.tab3Disabled = false
},
}, },
} }
</script> </script>
<style lang='scss' scoped> <style lang='scss' scoped>
@import '@/styles/dialog.scss';
.l-title { .l-title {
margin-bottom: 15px; margin-bottom: 15px;
font-size: 18px; font-size: 18px;

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

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

@ -74,15 +74,15 @@
</el-row> </el-row>
<div class="text-center m-t-20"> <div class="text-center m-t-20">
<el-button @click="$emit('updateStep', 1)" type="primary" class="submitBtn" v-throttle>上一步</el-button> <el-button @click="prev" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="next" type="primary" class="submitBtn" v-throttle>下一步</el-button> <el-button @click="next(3)" type="primary" class="submitBtn" v-throttle>下一步</el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js'; import { myValidate } from '@/utils/utilFunction.js';
import { addOperation, creditEvaluationInput } from '@/api/http' import { creditEvaluationDetails, addOperation, creditEvaluationInput } from '@/api/http'
import { mapMutations, mapGetters } from 'vuex' import { mapState } from 'vuex'
export default { export default {
data () { data () {
return { return {
@ -123,6 +123,7 @@ export default {
loanRiskSituation: 204, loanRiskSituation: 204,
preLoanOtherRiskSituations: '', preLoanOtherRiskSituations: '',
}, },
originForm: {},
rules: { rules: {
surveyDate: [ surveyDate: [
{ {
@ -199,16 +200,51 @@ export default {
} }
}, },
computed: { computed: {
// id ...mapState('system', ['creditIds']),
creditIds: function () {
return this.$store.state.system.creditIds
},
}, },
mounted () { mounted () {
this.getDetail()
}, },
methods: { methods: {
async next () { //
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) {
this.$refs.form.validate(myValidate(async () => { this.$refs.form.validate(myValidate(async () => {
try { try {
const { form } = this const { form } = this
@ -237,7 +273,7 @@ export default {
projectId: +sessionStorage.getItem('projectId'), projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime') startTime: sessionStorage.getItem('startTime')
}) })
this.$emit('updateStep', 3) this.$emit('updateStep', step)
} catch { (e) => { } } } catch { (e) => { } }
}, this.$refs)) }, this.$refs))
}, },

@ -64,21 +64,33 @@
</el-row> </el-row>
<div class="text-center m-t-20"> <div class="text-center m-t-20">
<el-button @click="$emit('updateStep', 2)" type="primary" class="submitBtn" v-throttle>上一步</el-button> <el-button @click="prev" type="primary" class="submitBtn" v-throttle>上一步</el-button>
<el-button @click="submit" type="primary" class="submitBtn" v-throttle>提交</el-button> <el-button @click="confirmSubmit" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div> </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> </div>
</template> </template>
<script> <script>
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js'; import { creditEvaluationDetails, addOperation, creditEvaluationInput } from '@/api/http'
import { addOperation, creditEvaluationInput } from '@/api/http' import { mapState } from 'vuex'
export default { export default {
computed: {
// id
creditIds: function () {
return this.$store.state.system.creditIds
},
},
data () { data () {
return { return {
opt1: [ opt1: [
@ -183,6 +195,7 @@ export default {
haveAnyBadCreditRecords: 204, haveAnyBadCreditRecords: 204,
gradeEvaluationOtherRiskSituations: '', gradeEvaluationOtherRiskSituations: '',
}, },
originForm: {},
rules: { rules: {
surveyDate: [ surveyDate: [
{ {
@ -192,14 +205,60 @@ export default {
} }
], ],
}, },
submitVisible: false,
submited: 0 submited: 0
} }
}, },
computed: {
...mapState('system', ['creditIds']),
},
mounted () { mounted () {
this.getDetail()
}, },
methods: { methods: {
async submit () { //
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) {
try { try {
const { form } = this const { form } = this
await creditEvaluationInput({ await creditEvaluationInput({
@ -227,13 +286,21 @@ export default {
startTime: sessionStorage.getItem('startTime') startTime: sessionStorage.getItem('startTime')
}) })
this.$message.success('创建成功!') this.$message.success('创建成功!')
this.$parent.active = '2' if (prev) {
//
this.$emit('updateStep', 2)
} else {
this.$parent.active = '2'
this.$parent.tab2Disabled = false
}
} catch { (e) => { } } } catch { (e) => { } }
}, },
}, },
} }
</script> </script>
<style lang='scss' scoped> <style lang="scss" scoped>
@import '@/styles/dialog.scss';
.l-title { .l-title {
margin-bottom: 15px; margin-bottom: 15px;
font-size: 18px; font-size: 18px;

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

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

@ -2,20 +2,20 @@
<template> <template>
<div> <div>
<el-row :gutter="20" style="margin: 0"> <el-row :gutter="20" style="margin: 0">
<el-form ref="form" :model="form" label-width="140px"> <el-form ref="form" :model="form" :rules="rules" label-width="140px">
<el-col :span="24"> <el-col :span="24">
<h6 class="l-title">客户信息</h6> <h6 class="l-title">客户信息</h6>
</el-col> </el-col>
<el-col :span="10" :offset="1"> <el-col :span="10" :offset="1">
<el-form-item label="贷款类型"> <el-form-item label="贷款类型">
<el-select value="企业经营贷款" placeholder="请选择"> <el-select value="企业经营贷款" placeholder="请选择" disabled>
<el-option value="企业经营贷款"></el-option> <el-option value="企业经营贷款"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="授信金额"> <el-form-item label="授信金额">
<el-input v-model="form.creditAmount" disabled /> <el-input v-model="form.creditAmount" disabled />
</el-form-item> </el-form-item>
<el-form-item label="起息日期" prop="valueDate" required> <el-form-item label="起息日期" prop="valueDate">
<el-date-picker v-model="form.valueDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" <el-date-picker v-model="form.valueDate" type="date" placeholder="选择日期" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" @change="maturityDateCalc"></el-date-picker> value-format="yyyy-MM-dd" @change="maturityDateCalc"></el-date-picker>
</el-form-item> </el-form-item>
@ -25,7 +25,7 @@
<el-form-item label="执行利率"> <el-form-item label="执行利率">
<el-input value="3.2%" disabled /> <el-input value="3.2%" disabled />
</el-form-item> </el-form-item>
<el-form-item label="担保方式" required> <el-form-item label="担保方式" prop="guaranteeMethod">
<el-select v-model="form.guaranteeMethod" placeholder="请选择"> <el-select v-model="form.guaranteeMethod" placeholder="请选择">
<el-option v-for="(item, i) in Util.guaranteeMethods" :key="i" :label="item.name" <el-option v-for="(item, i) in Util.guaranteeMethods" :key="i" :label="item.name"
:value="item.id"></el-option> :value="item.id"></el-option>
@ -34,7 +34,7 @@
<el-form-item label="利息总额"> <el-form-item label="利息总额">
<el-input v-model="form.totalInterestAmount" disabled /> <el-input v-model="form.totalInterestAmount" disabled />
</el-form-item> </el-form-item>
<el-form-item label="还款账号" required> <el-form-item label="还款账号" prop="repaymentAccount">
<el-input v-model="form.repaymentAccount" /> <el-input v-model="form.repaymentAccount" />
</el-form-item> </el-form-item>
</el-col> </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-option v-for="(item, i) in Util.creditTerms" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="贷款期限" prop="loanTerm"> <el-form-item label="贷款期限" prop="loanTerm" @change="interestCalc">
<el-select v-model="form.loanTerm" placeholder="请选择" @change="maturityDateCalc"> <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-option v-for="(item, i) in Util.loanTerms" :key="i" :label="item.name" :value="item.id"></el-option>
</el-select> </el-select>
@ -69,25 +69,63 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="贷款金额"> <el-form-item label="贷款金额">
<el-input v-model="form.loanAmount" /> <el-input v-model="form.loanAmount" @input="loanAmountInput" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form> </el-form>
</el-row> </el-row>
<div class="text-center m-t-20"> <div class="text-center m-t-20">
<el-button @click="submit" type="primary" class="submitBtn" v-throttle>提交</el-button> <el-button @click="beforeSubmit" type="primary" class="submitBtn" v-throttle>提交</el-button>
</div> </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> </div>
</template> </template>
<script> <script>
import { addOperation, loanApplicationInput, loanApplicationDetails } from '@/api/http' import { addOperation, loanApplicationInput, loanApplicationDetails, loanApplicationInterestCalculation } from '@/api/http'
import Util from '@/libs/util' import Util from '@/libs/util'
import { mapMutations, mapState } from 'vuex'
export default { export default {
data () { data () {
return { return {
Util, Util,
creditIds: this.$store.state.system.creditIds, step1: {},
timer: null,
form: { form: {
valueDate: '', valueDate: '',
creditTermTwo: 231, creditTermTwo: 231,
@ -96,29 +134,68 @@ export default {
expirationDate: '', expirationDate: '',
totalInterestAmount: '', totalInterestAmount: '',
loanAmount: '', loanAmount: '',
propertyCertificateNo: '',
repaymentMethodTwo: '', repaymentMethodTwo: '',
interestTotal: '',
repaymentAccount: '', 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 () { mounted () {
this.getDetail() this.getDetail()
}, },
methods: { methods: {
// //
async getDetail () { async getDetail () {
if (this.creditIds.companyLoanId) { const id = this.creditIds.companyLoanId
if (id) {
// //
const res = await loanApplicationDetails({ const res = await loanApplicationDetails({
companyLoanId: this.creditIds.companyLoanId companyLoanId: id
}) })
const data = res.data.bankLoanApplication const r = res.data.bankLoanApplication
this.form.loanAmount = data.loanApplicationAmount if (r) {
this.form.repaymentMethodTwo = +data.repaymentMethodOne this.step1 = r
this.form.creditTermTwo = +data.creditTermOne
this.form.creditAmount = data.creditAmount 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,
}
}
} }
}, },
// //
@ -129,21 +206,48 @@ export default {
date.setMonth(date.getMonth() + loanTerm) date.setMonth(date.getMonth() + loanTerm)
this.form.expirationDate = Util.formatDate('yyyy-MM-dd', date) this.form.expirationDate = Util.formatDate('yyyy-MM-dd', date)
} }
this.interestCalc()
}, },
async submit () { // 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 () {
try { try {
const { form } = this const { form } = this
if (!form.valueDate) return this.$message.error('请选择起息日期!') 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.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({ await loanApplicationInput({
...this.$store.state.system.creditIds, ...this.creditIds,
...form, ...form,
}) })
const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768' const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',766,768'
const rule = [ const rule = [
{ answerId: 824, emptyOne: 137, emptyTwo: 240, operationIds: preId + ',824', type: 1 }, { answerId: 824, emptyOne: 137, emptyTwo: 240, operationIds: preId + ',824', type: 1 },
{ answerId: 825, emptyOne: 138, emptyTwo: 241, operationIds: preId + ',825', type: 1 }, { answerId: 825, emptyOne: 134, emptyTwo: form.creditTermTwo, operationIds: preId + ',825', type: 1 },
{ answerId: 826, emptyOne: 125, emptyTwo: form.valueDate, operationIds: preId + ',826', type: 3 }, { 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: 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: 827, emptyOne: 125, emptyTwo: form.expirationDate, operationIds: preId + ',827', type: 3 },
@ -159,14 +263,15 @@ export default {
projectId: +sessionStorage.getItem('projectId'), projectId: +sessionStorage.getItem('projectId'),
startTime: sessionStorage.getItem('startTime') startTime: sessionStorage.getItem('startTime')
}) })
this.$message.success('保存成功!') this.successVisible = true
this.$router.back()
} catch { (e) => { } } } catch { (e) => { } }
}, },
}, },
} }
</script> </script>
<style lang='scss' scoped> <style lang='scss' scoped>
@import '@/styles/dialog.scss';
.l-title { .l-title {
margin-bottom: 15px; margin-bottom: 15px;
font-size: 18px; font-size: 18px;

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

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

@ -1,5 +1,5 @@
<template> <template>
<!-- 管理 --> <!-- 管理 -->
<div class="wrap"> <div class="wrap">
<my-title :titleArr="['公司贷款', '贷后管理']" /> <my-title :titleArr="['公司贷款', '贷后管理']" />
@ -10,13 +10,27 @@
<el-table :data="list" stripe :header-cell-style="headerCellStyle"> <el-table :data="list" stripe :header-cell-style="headerCellStyle">
<el-table-column prop="customerName" label="客户姓名" align="center" /> <el-table-column prop="customerName" label="客户姓名" align="center" />
<el-table-column prop="applicationNumber" label="贷款编号" align="center" /> <el-table-column prop="applicationNumber" label="贷款编号" align="center" />
<el-table-column prop="loanStatus" label="贷款状态" align="center" /> <el-table-column prop="loanStatus" label="贷款状态" align="center" width="100">
<el-table-column prop="updateTime" label="处理日期" align="center" /> <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="160">
<template slot-scope="scope">{{ scope.row.updateTime || '-' }}</template>
</el-table-column>
<el-table-column prop="arrearsAmount" label="欠款金额" align="center" width="100">
<template slot-scope="scope">{{ scope.row.arrearsAmount || '-' }}</template>
</el-table-column>
<el-table-column label="操作" align="center" width="360"> <el-table-column label="操作" align="center" width="360">
<template v-if="!scope.row.builtIn" slot-scope="scope"> <template v-if="!scope.row.builtIn" slot-scope="scope">
<el-button @click="collection(scope.row)" size="small">催收</el-button> <el-button @click="collection(scope.row)" size="small">催收</el-button>
<el-button @click="postLoan(scope.row)" size="small">贷后调查</el-button> <el-button @click="postLoan(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.nonPerformingLoan" :disabled="scope.row.fiveLevelClassification"
@click="npl(scope.row)" size="small">不良贷款</el-button>
<el-button v-if="!scope.row.badDebtRecognition" @click="badDebt(scope.row)" size="small">呆账认定</el-button> <el-button v-if="!scope.row.badDebtRecognition" @click="badDebt(scope.row)" size="small">呆账认定</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -269,8 +283,16 @@ export default {
pageNum: this.page, pageNum: this.page,
pageSize: this.pageSize, pageSize: this.pageSize,
searchContent: this.keyword, 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) e.five = opt4.find(n => n.id == five).name
}) })
this.list = data.page.records this.list = list
this.total = data.page.total this.total = data.page.total
}, },
initData () { initData () {
@ -297,8 +319,10 @@ export default {
async postLoanSubmit () { async postLoanSubmit () {
const { form } = this const { form } = this
if (!form.stateChange) return this.$message.error('请填写客户基本状态变化!') if (!form.stateChange) return this.$message.error('请填写客户基本状态变化!')
form.companyLoanId = this.curRow.companyLoanId
await postLoanInvestigationInput(form) await postLoanInvestigationInput(form)
this.submitPoint(841) this.submitPoint(841)
this.getData()
this.postLoanVisible = false this.postLoanVisible = false
}, },

@ -11,10 +11,14 @@
<el-table-column prop="customerName" label="客户姓名" align="center" /> <el-table-column prop="customerName" label="客户姓名" align="center" />
<el-table-column prop="applicationNumber" label="贷款编号" align="center" /> <el-table-column prop="applicationNumber" label="贷款编号" align="center" />
<el-table-column prop="totalRepaymentAmount" label="累计还款金额(万)" align="center" /> <el-table-column prop="totalRepaymentAmount" label="累计还款金额(万)" align="center" />
<el-table-column prop="arrearsAmount" 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 label="操作" align="center" width="240"> <el-table-column label="操作" align="center" width="240">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">详情</el-button> <el-button :disabled="!!scope.row.builtIn" @click="toDetail(scope.row)" size="small">{{
scope.row.loanApplicationAmount ? '查看' : '编辑'
}}</el-button>
<template v-if="!scope.row.builtIn"> <template v-if="!scope.row.builtIn">
<el-button size="small" @click="showExtension(scope.row)">展期</el-button> <el-button size="small" @click="showExtension(scope.row)">展期</el-button>
<el-button @click="repayment(scope.row)" size="small">还款计划</el-button> <el-button @click="repayment(scope.row)" size="small">还款计划</el-button>
@ -199,6 +203,7 @@ export default {
pageNum: this.page, pageNum: this.page,
pageSize: this.pageSize, pageSize: this.pageSize,
searchContent: this.keyword, searchContent: this.keyword,
typeId: 3
}) })
this.list = data.page.records this.list = data.page.records
this.total = data.page.total this.total = data.page.total
@ -213,7 +218,11 @@ export default {
}, },
// //
toDetail (row) { toDetail (row) {
this.$router.push(`/counter/list/manage/corporateLoans-detail?id=${row.companyLoanId}`) // 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')
}, },
// //
showExtension (row) { showExtension (row) {
@ -283,6 +292,16 @@ export default {
id: row.id, id: row.id,
status 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.$message.success(`${text}成功`)
this.getRepayment() this.getRepayment()
this.getData() this.getData()
@ -303,6 +322,16 @@ export default {
} }
}) })
await batchProcessingCompany(ids) 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.$message.success(`${text}成功`)
this.$refs.repayments.clearSelection() this.$refs.repayments.clearSelection()
this.multipleSelection = [] this.multipleSelection = []

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

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

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

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

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

@ -39,7 +39,8 @@
scope.row.contractNo !== '——' ? '查看' : '编辑' scope.row.contractNo !== '——' ? '查看' : '编辑'
}}</el-button> }}</el-button>
<template v-if="scope.row.personalLoanId > 0"> <template v-if="scope.row.personalLoanId > 0">
<el-button v-if="!scope.row.renewalOrNot" @click="toDetail(scope.row, 2)" size="small">展期</el-button> <el-button v-if="scope.row.disbursementDate !== '' && !scope.row.renewalOrNot"
@click="toDetail(scope.row, 2)" size="small">展期</el-button>
<el-button @click="repayment(scope.row)" size="small">还款计划</el-button> <el-button @click="repayment(scope.row)" size="small">还款计划</el-button>
</template> </template>
</template> </template>
@ -106,7 +107,7 @@
import { tableRowClassName, headerCellStyle } from '@/assets/js/myConfig' import { tableRowClassName, headerCellStyle } from '@/assets/js/myConfig'
import MyDialog from '@/components/dialogTwo' import MyDialog from '@/components/dialogTwo'
import NeedBefore from '@/components/needBefore' import NeedBefore from '@/components/needBefore'
import { batchProcessing, personalBasicList, repaymentPlan } from '@/api/http'; import { batchProcessing, personalBasicList, repaymentPlan, addOperation } from '@/api/http';
const moduleName = 'personalLoans/list' const moduleName = 'personalLoans/list'
import { mapMutations, mapGetters } from 'vuex' import { mapMutations, mapGetters } from 'vuex'
@ -240,6 +241,16 @@ export default {
id: row.id, id: row.id,
status 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.$message.success(`${text}成功`)
this.getRepayment() this.getRepayment()
this.getData() this.getData()
@ -260,6 +271,16 @@ export default {
} }
}) })
await batchProcessing(ids) 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.$message.success(`${text}成功`)
this.$refs.repayments.clearSelection() this.$refs.repayments.clearSelection()
this.multipleSelection = [] this.multipleSelection = []

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

@ -187,16 +187,12 @@ export default {
summarize: form.summarize summarize: form.summarize
} }
const expData = report.data const expData = report.data
this.userScores = userScores
// data使 // data使
if (!expData) { if (!expData) {
this.userScores = userScores
this.handleList(userScores) this.handleList(userScores)
// this.$post(this.api.editExperimentalData, {
// reportId,
// data: JSON.stringify(userScores)
// }).then(res => { }).catch(err => { })
} else { } else {
this.handleList(userScores) this.handleList(JSON.parse(expData))
} }
this.loading = false this.loading = false

@ -201,7 +201,7 @@ const allDataFlow = {
isSettle: false, isSettle: false,
// 票据号码 // 票据号码
ticketNumber: '00242986', ticketNumber: '00242986',
'corporateClient': false, corporateClient: false,
nowDepositNumber nowDepositNumber
} }
@ -1396,7 +1396,7 @@ const myInitState = {
'业务三十四': { '业务三十四': {
id: 704, id: 704,
name: '网上银行', name: '网上银行',
data: [13, 16, 407], data: [13, 16],
needs: [], needs: [],
isStamp: { isStamp: {
// '业务专用章': [ 411 ] // '业务专用章': [ 411 ]
@ -1456,8 +1456,37 @@ const myInitState = {
}, },
'业务三十六': { '业务三十六': {
id: 844, id: 844,
name: '贷款业务', name: '个人贷款业务',
data: [13, 16, 770, 771, 772, 442, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 817, 818, 819], 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: [770, 771, 772, 442, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 817, 818, 819],
needs: [], needs: [],
isStamp: { isStamp: {
// '业务专用章': [ 411 ] // '业务专用章': [ 411 ]
@ -1510,7 +1539,6 @@ export default {
// 下拉框的数据,在电脑中的下拉框有许多相同的,不用每次都请求服务器,可以在这里拿数据: // 下拉框的数据,在电脑中的下拉框有许多相同的,不用每次都请求服务器,可以在这里拿数据:
selectList: { selectList: {
banknoteRemittanceList: [],
currencySelectList: [], currencySelectList: [],
goldLogoSelectList: [], goldLogoSelectList: [],
accountQualitySelectList: [], accountQualitySelectList: [],
@ -2717,7 +2745,7 @@ export default {
'业务三十四': { '业务三十四': {
id: 704, id: 704,
name: '网上银行', name: '网上银行',
data: [13, 16, 407], data: [13, 16],
needs: [], needs: [],
isStamp: { isStamp: {
// '业务专用章': [ 411 ] // '业务专用章': [ 411 ]
@ -2777,8 +2805,37 @@ export default {
}, },
'业务三十六': { '业务三十六': {
id: 844, id: 844,
name: '贷款业务', name: '个人贷款业务',
data: [13, 16, 770, 771, 772, 442, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 817, 818, 819], 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: [770, 771, 772, 442, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 817, 818, 819],
needs: [], needs: [],
isStamp: { isStamp: {
// '业务专用章': [ 411 ] // '业务专用章': [ 411 ]
@ -2837,22 +2894,23 @@ export default {
76: 'isTranslate', 76: 'isTranslate',
40: 'outAccountWayList', 40: 'outAccountWayList',
39: 'calculateWayList', 39: 'calculateWayList',
119: 'banknoteRemittanceList',
122: 'fundingSourceList', 122: 'fundingSourceList',
123: 'allCurrencyList', 123: 'allCurrencyList',
124: 'buyForeignPurposeList', 124: 'buyForeignPurposeList',
} }
for (const key in mapObj) { for (const key in mapObj) {
getSubjectInfo({ const name = mapObj[key]
subject_id: key if (!state.selectList[name] || !state.selectList[name].length) {
}).then((data) => { getSubjectInfo({
const name = mapObj[key] subject_id: key
if (!state.selectList[name]) state.selectList[name] = [] }).then((data) => {
if (data.status == 200 && !state.selectList[name].length) { if (!state.selectList[name]) state.selectList[name] = []
state.selectList[name].push(...data.data.items); if (data.status == 200 && !state.selectList[name].length) {
} state.selectList[name].push(...data.data.items);
}).catch((error) => { }) }
}).catch((error) => { })
}
} }
@ -3286,8 +3344,6 @@ export default {
setCreditImportIds (state, val) { setCreditImportIds (state, val) {
if (val) { if (val) {
state.creditImportIds[state.creditImportIndex] = val state.creditImportIds[state.creditImportIndex] = val
// state.creditImportIds.push(val)
console.log("🚀 ~ setCreditImportIds ~ state.creditImportIds[state.creditImportIndex]:", state.creditImportIds, state.creditImportIds[state.creditImportIndex])
} else { } else {
state.creditImportIds = {} state.creditImportIds = {}
} }

@ -30,9 +30,13 @@ export default {
if (location.origin === 'http://121.37.12.51') { if (location.origin === 'http://121.37.12.51') {
href = `http://121.37.12.51/${isAdmin ? 'admin' : 'student'}/#/` href = `http://121.37.12.51/${isAdmin ? 'admin' : 'student'}/#/`
} }
let assessmentId = sessionStorage.getItem('assessmentId') const { query } = router.app._route
let assessmentId = sessionStorage.getItem('assessmentId') || query.assessmentId
let competitionId = sessionStorage.getItem('competitionId') || query.competitionId
if (assessmentId != 'null' && assessmentId != null && assessmentId != '') { if (assessmentId != 'null' && assessmentId != null && assessmentId != '') {
href += `ass/list` href += `ass/list`
} else if (competitionId != 'null' && competitionId != null && competitionId != '') {
href += `match/details?id=${competitionId}`
} else { } else {
const cid = sessionStorage.getItem('cid') const cid = sessionStorage.getItem('cid')
href += `station/preview?courseId=${cid}&curriculumName=银行项目&mallId=${router.currentRoute.query.mallId}` href += `station/preview?courseId=${cid}&curriculumName=银行项目&mallId=${router.currentRoute.query.mallId}`

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

Loading…
Cancel
Save