Commit 771d4be2 authored by 李晓兵's avatar 李晓兵

'12-12uat'

parent 5830b900
......@@ -11,5 +11,5 @@ module.exports = {
ocrPath:'"http://180.104.121.66:8088/r/api"',
fileUploadSvcPath:'"http://180.104.121.66:8088/r/api/app/fileUploadSvc?sysName=XCMG_DEV&apiName="',
appId: '"com.xcmg.app.dev"',
currentVersion: '"1.2.1"'
currentVersion: '"1.2.5"'
}
src/assets/messageCenter/noMsg.png

37.1 KB | W: | H:

src/assets/messageCenter/noMsg.png

99.7 KB | W: | H:

src/assets/messageCenter/noMsg.png
src/assets/messageCenter/noMsg.png
src/assets/messageCenter/noMsg.png
src/assets/messageCenter/noMsg.png
  • 2-up
  • Swipe
  • Onion skin
/**
* @Author Sean
* @Date 2019/11/21
*/
<template>
<input
:value="formatValue" :readonly="disable" type="text"
@input="onInput($event.target.value)" @focus="onFocus" @blur="onBlur">
</template>
<script>
export default {
name: 'CurrencyInput',
props: {
value: {
default: 0,
},
disable: {
type: Boolean,
default: false,
},
},
data () {
return {
focused: false,
}
},
filter: {
uncurrency (val) {
if (!val) return null
return (Number((val).replace(/,/gi, ''))) === 0 ? null : Number((val).replace(/,/gi, ''))
},
},
computed: {
formatValue () {
let currency = this.$options.filters['currency']
if (!this.focused) {
return `¥${currency(this.value)}`
} else {
return this.value
}
},
},
methods: {
onInput: function (value) {
if (this.disable) return
let uncurrency = this.$options.filter['uncurrency']
this.currencyValue = uncurrency(value)
this.$emit('input', this.currencyValue)
},
onFocus (event) {
if (this.disable) return
this.focused = true
let value = event.target.value
if (document.selection) {
var sel = value.createTextRange()
sel.moveStart('character', value.length)
sel.collapse()
sel.select()
} else if (typeof value.selectionStart === 'number' && typeof value.selectionEnd === 'number') {
value.selectionStart = value.selectionEnd = value.length
}
setTimeout(function () {
event.target.type = 'number'
event.target.focus()
}, 0)
},
onBlur (event) {
if (this.disable) return
event.target.type = 'text'
this.focused = false
},
},
}
</script>
<style scoped lang="less">
</style>
......@@ -59,8 +59,8 @@ import Jpush from './scripts/jpushService'
import Jmessage from './scripts/jmessageService'
// if (process.env.CONFIG_ENV === 'uat') {
const VConsole = require('vconsole')
new VConsole() // eslint-disable-line
// const VConsole = require('vconsole')
// new VConsole() // eslint-disable-line
// }
Vue.use(componentInstall)
......
......@@ -129,7 +129,7 @@
</div>
<div v-show="tabNum===1">
<list-item :item-height="56" class="contract-text" style="background-color:rgb(250,250,250);">
<item :proportion="[4,1]">
<item :proportion="[7,1]">
<div slot="name" class="aguremrnt-list">
<img src="@/assets/constractSigning/npack.png" alt class="pics" >
<p class="second first">承租人确认意见</p>
......@@ -138,7 +138,7 @@
<img src="@/assets/constractSigning/detail.png" alt >
</div>
</item>
<item :proportion="[4,1]">
<item :proportion="[7,1]">
<div slot="name" class="aguremrnt-list">
<img src="@/assets/constractSigning/pack.png" alt class="pics" >
<p class="second">融资租赁合同</p>
......@@ -148,7 +148,7 @@
<img src="@/assets/constractSigning/detail.png" alt >
</div>
</item>
<item :proportion="[4,1]">
<item :proportion="[7,1]">
<div slot="name" class="aguremrnt-list">
<img src="@/assets/constractSigning/pack.png" alt class="pics" >
<p class="second">租赁物所有权转移及接收确认书</p>
......@@ -416,6 +416,7 @@ export default {
master: {
project_id: this.$route.params.project_id,
confirm_status: 'APPROVED',
confirm_note: '同意',
},
}
hlsPopup.showLoading('请稍候')
......
......@@ -41,6 +41,11 @@
</div>
</div>
</scroll>
<div v-if="showList.length === 0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
<script>
......@@ -193,6 +198,15 @@ export default {
</script>
<style lang="less">
#confirmList {
.display {
position: fixed;
// top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.search {
background-color: #fff;
padding: 8px 12px;
......
<template>
<h-view v-if="showFlag" id="add-person">
<h-header :proportion="[1,4,1]" class="bar-custom">
<span slot="center" style="color:#fff">添加担保人</span>
<span slot="right" style="color:#fff" @click="showFlag=false">取消</span>
</h-header>
<div class="search has-header">
<input v-model="keyWord" placeholder="请输入担保人名称/证件号码" >
</div>
<scroll ref="scroll" :updateData="[undertakeList]" :pullUp="true" @pullingUp="loadMore">
<list-item :item-height="68" class="item">
<item v-for="(item,index) in undertakeList" :key="index" @click.native="addUndertake(item)">
<img slot="left-icon" src="@/assets/contractCreate/name.png" class="left-icon" >
<div slot="name">
担保人名称
<br >证件号
</div>
<div slot="content">
<input v-model="item.bp_name" placeholder="暂无信息" readonly >
<input v-model="item.id_card_no" placeholder="暂无信息" readonly >
</div>
</item>
</list-item>
</scroll>
</h-view>
</template>
<script>
export default {
props: {
bp_agent_id: {
type: String,
default: '',
},
},
data () {
return {
undertakeList: [], // 担保人列表
selectUdertake: {},
pagenum: 1,
keyWord: '',
showFlag: false,
}
},
watch: {
},
methods: {
show () {
this.showFlag = true
},
init () {
this.undertakeList = []
this.selectUdertake = []
this.pagenum = 1
this.keyWord = ''
},
unshow () {
this.showFlag = false
},
loadMore () {
if (this.keyWord) {
this.searchUndertake()
} else {
this.getUndertake()
}
},
searchUndertake () {
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prj_bp_guta_query' +
'&index' +
`'${randomString}'`
let param = {
bp_agent_id: vm.bp_agent_id,
pagesize: 10,
pagenum: vm.pageNumSearch,
searchInput: vm.keyWord,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.undertakeList = returnData
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList = returnData
})
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList.push(array[index])
})
vm.pageNumSearch++
vm.$refs.scroll.update(false)
}
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
addUndertake (e) {
this.selectUdertake = e
this.$emit('addUnder', this.selectUdertake)
setTimeout(() => {
this.showFlag = false
}, 100)
},
getUndertake () { // 担保人查询
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prj_bp_guta_query' +
'&index' +
`'${randomString}'`
let param = {
bp_agent_id: vm.bp_agent_id,
pagesize: 10,
pagenum: vm.pageNum,
searchInput: vm.keyWord,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(false)
}
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
},
}
</script>
<style lang="less">
#add-person {
position: absolute;
top:0;
z-index:999;
.item {
width: 359px;
margin: 0 auto;
}
.search {
background-color: #fff;
padding: 8px 12px;
width: 100%;
height: 1.02rem;
z-index: 100;
input {
background: url("../../assets/contractStart/search1.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding-left: 12px;
height: 36px;
line-height: 36px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
input::placeholder {
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
letter-spacing: 0;
}
input:focus {
background: url("../../assets/contractStart/search2.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
border: 2px solid #bcc6ff;
}
}
.content {
position: absolute;
top: 0;
}
.scrollContent {
padding-top: 1rem;
padding-bottom: 120px;
}
.tab-style {
width: 100%;
position: absolute;
}
}
.platform-ios {
#confirmList {
.scrollContent {
padding-top: 1.4rem;
}
}
}
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#person {
.scrollContent {
padding-top: 1.8rem;
}
}
}
}
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#person {
.scrollContent {
padding-top: 1.8rem;
}
.search {
input {
background: url("../../assets/contractStart/search1.png") 320px
no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding: 8px 12px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
}
}
}
}
</style>
<!--
* @Author: your name
* @Date: 2019-09-29 10:02:11
* @LastEditTime : 2019-12-26 13:30:22
* @LastEditTime : 2019-12-27 10:28:37
* @LastEditors : Please set LastEditors
* @Description: In User Settings Edit
-->
......@@ -29,7 +29,7 @@
>
<div class="wrap">
<div v-for="(item,index) in showLists" :key="index" class="contract-lists" >
<div class="pro-code" @click="changeBase">
<div class="pro-code" @click="changeBase(item)">
<img src="@/assets/distributorSign/fileIcon.png" alt="" class="file-icon">
<p>
<span>合同号</span>
......@@ -75,26 +75,22 @@ export default {
approvedLists: [], // 已签约
showLists: [],
approvedFlag: false,
// showLists: [
// { project_number: '201903022001', bp_name: '张三', total_price: '1000000', confirm_start_date: '2019-12-18' },
// { project_number: '201903022001', bp_name: '张三', total_price: '1000000', confirm_start_date: '2019-12-18' },
// { project_number: '201903022001', bp_name: '张三', total_price: '1000000', confirm_start_date: '2019-12-18' },
// ],
}
},
watch: {
'num': {
handler (newVal, oldVal) {
this.$refs.scroll.update(false)
this.$refs.scroll.scrollToTop()
// this.$refs.scroll.update(false)
if (newVal === 2) {
if (!this.approvedFlag) {
this.contractList()
}
this.$refs.scroll.scrollToTop()
// this.$refs.scroll.scrollToTop()
this.showLists = this.approvedLists
} else if (newVal === 1) {
this.showLists = this.submitLists
this.$refs.scroll.scrollToTop()
// this.$refs.scroll.scrollToTop()
}
},
},
......@@ -123,7 +119,6 @@ export default {
vm.$refs.scroll.update(false)
vm.$refs.scroll.scrollToTop()
vm.contractList()
// vm.listsQuery()
}
})
},
......@@ -131,26 +126,7 @@ export default {
dateConverse (date) {
return date.replace(/\//g, '-')
},
// listsQuery () {
// let vm = this
// let url = process.env.basePath + 'prj_submit_list'
// let param = {
// user_phone: window.localStorage.user_phone,
// pagesize: 10,
// searchInput: vm.searchInput,
// pagenum: vm.pagenum,
// project_status: 'APPROVED',
// }
// vm.hlsPopup.showLoading('请稍候')
// vm.hlsHttp.post(url, param).then(function (res) {
// vm.hlsPopup.hideLoading()
// console.log('已创建合同列表查询', res)
// if (res.result === 'S') {
// // vm.showLists = res.lists
// }
// })
// },
// 合同查询
// 合同列表查询
contractList () {
let vm = this
if (vm.num === 1) {
......@@ -178,7 +154,7 @@ export default {
}
})
} else if (vm.num === 2) {
let url = $config.basePath + 'prj_confirm_list_query'
let url = $config.basePath + 'prj_submit_list'
let param = {
pagesize: 10,
pagenum: vm.approvedPagenum,
......@@ -209,7 +185,7 @@ export default {
let vm = this
if (vm.num === 1) {
vm.submitPagenum++
let url = $config.basePath + 'prj_confirm_list_query'
let url = $config.basePath + 'prj_submit_list'
let param = {
user_phone: window.localStorage.user_phone,
pagesize: 10,
......@@ -243,7 +219,7 @@ export default {
})
} else if (vm.num === 2) {
vm.approvedPagenum++
let url = $config.basePath + 'prj_confirm_list_query'
let url = $config.basePath + 'prj_submit_list'
let param = {
user_phone: window.localStorage.user_phone,
pagesize: 10,
......@@ -280,7 +256,7 @@ export default {
async submitSearch () {
let vm = this
vm.submitPagenum = 1
let url = $config.basePath + 'prj_confirm_list_query'
let url = $config.basePath + 'prj_submit_list'
let param = {
user_phone: window.localStorage.user_phone,
pagesize: 10,
......@@ -310,7 +286,7 @@ export default {
},
approvedearch () {
let vm = this
let url = $config.basePath + 'prj_confirm_list_query'
let url = $config.basePath + 'prj_submit_list'
vm.approvedPagenum = 1
let param = {
user_phone: window.localStorage.user_phone,
......@@ -338,14 +314,29 @@ export default {
this.approvedearch()
}
},
changeBase () {
changePage () {
window.localStorage.setItem('formPage', 'sale')
this.$router.push({
name: 'SalesInfo',
})
},
changeBase (item) {
if (this.num === 1) {
window.localStorage.setItem('contractReadonly', false)
window.localStorage.setItem('fromPage', 'list')
window.localStorage.setItem('project_id', item.project_id)
window.localStorage.setItem('bp_class_tenant', item.bp_class)
} else if (this.num === 2) {
window.localStorage.setItem('contractReadonly', true)
window.localStorage.setItem('fromPage', 'list')
window.localStorage.setItem('project_id', item.project_id)
window.localStorage.setItem('bp_class_tenant', item.bp_class)
}
this.$router.push({
name: 'CreateBaseInfo',
params: {
bp_id: item.bp_id,
},
})
},
goDetails () {
......
<template>
<h-view id="create-rent-info">
<h-header :proportion="[5,1,1]" class="bar-custom">
<div slot="left" class="h-header-btn">
<img src="@/assets/userBind/arrow.png" @click="$routeGo()" >
<span>租赁信息</span>
</div>
</h-header>
<h-content>
<div class="top">
<div class="item">
<img src="@/assets/contractCreate/finished.png" >
<p>基本信息</p>
</div>
<span class="line" />
<div class="item">
<span>2</span>
<p style="color: #383F45;">租赁信息</p>
</div>
<span class="line" />
<div class="item">
<span>3</span>
<p>附件信息</p>
</div>
</div>
<div class="userInfo">租赁产品</div>
<list-item :item-height="44">
<item :showArrow="true" @click.native="selectProductLine">
<div slot="name">产品线</div>
<input slot="content" v-model="saveInfo.division_n" readonly placeholder="请选择" >
</item>
<item :showArrow="true" @click.native="getProduct">
<div slot="name">产品型号</div>
<input slot="content" v-model="productInfo.product_id_n" readonly placeholder="请选择" >
</item>
<item>
<div slot="name">产品数量</div>
<input slot="content" v-model="productInfo.product_num" placeholder="请填写产品数量" >
</item>
</list-item>
<div class="userInfo">融资信息</div>
<div class="hint-info">
<img src="@/assets/contractCreate/hint.png" >提示 以下为单个设备商务政策
</div>
<list-item :item-height="44">
<item :showArrow="true" @click.native="getBusinessPolicy();showModalBusiness=true">
<div slot="name">商务政策</div>
<input slot="content" v-model="saveInfo.product_plan_name" readonly placeholder="请选择" >
</item>
<item>
<div slot="name">设备单价</div>
<CurrencyInput slot="content" v-model="saveInfo.equip_price" placeholder="0" />
</item>
<item>
<div slot="name">融资金额</div>
<CurrencyInput slot="content" v-model="finance_amount" placeholder="0" />
</item>
<item>
<div slot="name">首付比例</div>
<input slot="content" v-model="saveInfo.down_payment_ratio_n" placeholder="%" >
</item>
<item>
<div slot="name">首付款</div>
<CurrencyInput slot="content" v-model="saveInfo.down_payment" placeholder="0" @input="changeRatio" />
</item>
<item>
<div slot="name">保证金比例</div>
<input slot="content" v-model="saveInfo.deposit_ratio_n" placeholder="%" >
</item>
<item>
<div slot="name">保证金</div>
<CurrencyInput slot="content" v-model="saveInfo.deposit" placeholder="0" @input="changeDeposit"/>
</item>
<item>
<div slot="name">手续费比例</div>
<input slot="content" v-model="saveInfo.lease_charge_ratio_n" placeholder="%" >
</item>
<item>
<div slot="name">手续费</div>
<CurrencyInput slot="content" v-model="saveInfo.lease_charge" placeholder="0" @input="changeLeaseCharge"/>
</item>
<item>
<div slot="name">GPS费用</div>
<CurrencyInput slot="content" v-model="saveInfo.gps_fee" placeholder="0" />
</item>
<item>
<div slot="name">保险押金</div>
<CurrencyInput slot="content" v-model="saveInfo.insurance_fee" placeholder="0" />
</item>
<item class="date-check" @click.native="showTime('YYYY-MM-DD')">
<div slot="name">预计付款日</div>
<input slot="content" v-model="saveInfo.lease_start_date" readonly placeholder="请选择日期 " >
</item>
<item :showArrow="true" @click.native = "periodPull">
<div slot="name">还款周期</div>
<input slot="content" v-model="saveInfo.annual_pay_times_n" readonly placeholder="请选择" >
</item>
<item>
<div slot="name">租赁期数</div>
<input slot="content" v-model="saveInfo.lease_times" placeholder="请填写租赁期数" >
</item>
<item>
<div slot="name">年利率</div>
<input slot="content" v-model="saveInfo.int_rate_n" readonly placeholder="%" >
</item>
<item :showArrow="true" @click.native="selectPayWay">
<div slot="name">支付方式</div>
<input slot="content" v-model="saveInfo.pay_type_n" readonly placeholder="请选择" >
</item>
<item>
<div slot="name">逾期日利率</div>
<input slot="content" v-model="saveInfo.penalty_rate_n" readonly placeholder="%" >
</item>
<item>
<div slot="name">留购价</div>
<CurrencyInput slot="content" v-model="saveInfo.residual_value" placeholder="请填写留购价" />
</item>
<item :showArrow="true" @click.native="goPlan">
<div slot="name">查看还款计划</div>
<input slot="content" readonly >
</item>
</list-item>
</h-content>
<bottom-tab class="add-box">
<tab-button class="before" @click.native="save">计算</tab-button>
<tab-button class="next" @click.native="next">下一步</tab-button>
</bottom-tab>
<h-modal ref="modal" v-model="showModalValue" class="flow" position="bottom">
<h-view id="product-list">
<h-header :proportion="[1,4,1]" class="bar-custom">
<span slot="center" style="color:#fff">选择产品</span>
<span slot="right" style="color:#fff" @click="showModalValue=false">取消</span>
</h-header>
<h-content>
<div class="search has-header">
<input v-model="keyWordProduct" placeholder="请输入产品名称" >
</div>
<div class="division-box">
<scroll ref="scroll" :updateData="[divisionLists]" :pullUp="true" @pullingUp="loadMoreProduct">
<list-item v-for="(item,index) in divisionLists" :key="index">
<item
:proportion="[1,4]"
@click.native="selectProduct(item)"
>
<div slot="name" class="item-pic">
<img :src="item.url">
</div>
<div slot="content" class="item-content">
<div class="pro-name">
<p>{{ item.product_name }}</p>
</div>
<div class="centers">
<p class="firsts1">{{ item.bp_type_n }}</p>
<p class="seconds1">{{ item.bp_name }}</p>
</div>
<div class="centers">
<p class="firsts1">设备识别号</p>
<p class="seconds1">{{ item.product_code }}</p>
</div>
</div>
</item>
</list-item>
</scroll></div>
</h-content>
</h-view>
</h-modal>
<h-modal ref="modal" v-model="showModalBusiness " class="flow" position="bottom">
<h-view id="businuss-list">
<h-header :proportion="[1,4,1]" class="bar-custom">
<span slot="center" style="color:#fff">选择商务政策</span>
<span slot="right" style="color:#fff" @click="showModalBusiness=false">取消</span>
</h-header>
<h-content>
<div class="search has-header">
<input v-model="policyKeyWord" placeholder="请输入商务政策名称" >
</div>
<scroll ref="scroll" :updateData="[businessLists]" :pullUp="true" @pullingUp="loadMorePolicy">
<div class="division-box">
<section v-for="(item,index) in businessLists" :key="index" @click="selectBusinessPolicy(item)">
<div class="descript">
<img src="@/assets/trial/product.png" alt >
<p class="produc">{{ item.product_plan_name }}</p>
</div>
<div class="tario">
<div class="wrap">
<p class="ratio">
<span>保证金比例</span>
<span>{{ item.deposit_ratio_n }}</span>
</p>
<p>
<span>手续费比例</span>
<span>{{ item.lease_charge_ratio_n }}</span>
</p>
</div>
<div class="wrap">
<p>
<span>年利率</span>
<span>{{ item.int_rate_n }}</span>
</p>
<p>
<span>&nbsp;&nbsp;&nbsp;</span>
<span>{{ item.lease_times }}</span>
</p>
</div>
</div>
</section>
</div></scroll>
</h-content>
</h-view>
</h-modal>
</h-view>
</template>
<script>
import CurrencyInput from '../../components/currencyInput'
export default {
components: {
CurrencyInput,
},
data () {
return {
showModalValue: false,
showModalBusiness: false,
isComputed: false,
keyWordProduct: '',
policyKeyWord: '',
pagenum: 1, // 产品型号页码
pagenumSearch: 1, // 产品型号查询时的页码
pagenumPolicy: 1, // 商务政策没有查询时的页码
pagenumSearchPolicy: 1, // 商务政策查询时的页码
businessLists: [], // 商务政策
periodLists: [], // 还款周期
paywayLists: [], // 支付方式
divisionLists: [],
productLine: [], // 产品线
productInfo: {
project_id: window.localStorage.project_id,
product_id: '',
product_id_n: '',
product_num: '',
},
saveInfo: {
project_id: window.localStorage.project_id,
product_plan_id: '',
product_plan_name: '',
equip_price: '',
int_rate: '',
int_rate_n: '',
penalty_rate_n: '',
annual_pay_times: '',
annual_pay_times_n: '',
lease_times: '',
down_payment_ratio: '',
down_payment_ratio_n: '',
down_payment: '',
deposit_ratio: '',
deposit_ratio_n: '',
deposit: '',
lease_charge_ratio: '',
lease_charge_ratio_n: '',
lease_charge: '',
lease_start_date: '',
gps_fee: '',
insurance_fee: '',
pay_type: '',
pay_type_n: '',
residual_value: '',
division_n: '',
finance_amount: '',
},
}
},
computed: {
'finance_amount' () { // 融资金额
return parseFloat(this.saveInfo.equip_price - this.saveInfo.equip_price * this.saveInfo.down_payment_ratio_n.replace('%', '') / 100).toFixed(2)
},
},
watch: {
policyKeyWord (newVal, oldVal) {
this.searchBusinessPolicy()
},
keyWordProduct (newVal, oldVal) {
this.searchProduct()
},
'saveInfo.equip_price' () {
this.saveInfo.down_payment = (this.saveInfo.equip_price * this.saveInfo.down_payment_ratio_n.replace('%', '') / 100).toFixed(2)
this.saveInfo.deposit = (this.saveInfo.equip_price * this.saveInfo.deposit_ratio_n.replace('%', '') / 100).toFixed(2)
this.saveInfo.lease_charge = parseFloat((this.saveInfo.equip_price - this.saveInfo.equip_price * this.saveInfo.down_payment_ratio_n.replace('%', '') / 100) * (this.saveInfo.lease_charge_ratio_n.replace('%', '') / 100)).toFixed(2)
},
'saveInfo.deposit_ratio_n' (newVal, oldVal) {
this.saveInfo.deposit = (this.saveInfo.equip_price * newVal.replace('%', '') / 100).toFixed(2)
},
'saveInfo.down_payment_ratio_n' (newVal, oldVal) {
this.saveInfo.down_payment = (this.saveInfo.equip_price * newVal.replace('%', '') / 100).toFixed(2)
},
'saveInfo.lease_charge_ratio_n' (newVal, oldVal) {
this.saveInfo.lease_charge = parseFloat((this.saveInfo.equip_price - this.saveInfo.equip_price * this.saveInfo.down_payment_ratio_n.replace('%', '') / 100) * (this.saveInfo.lease_charge_ratio_n.replace('%', '') / 100)).toFixed(2)
},
},
beforeRouteEnter (to, from, next) {
next(vm => {
vm.showModalBusiness = false
vm.showModalValue = false
vm.pagenumSearch = 1
vm.pagenumSearchPolicy = 1
vm.policyKeyWord = ''
vm.keyWordProduct = ''
vm.businessLists = []
vm.divisionLists = []
vm.pagenum = 1
vm.pagenumPolicy = 1
if (from.name === 'CreateBaseInfo') {
vm.isComputed = false
Object.keys(vm.saveInfo).forEach(i => {
if (i !== 'project_id') {
vm.saveInfo[i] = ''
}
})
Object.keys(vm.productInfo).forEach(i => {
if (i !== 'project_id') {
vm.saveInfo[i] = ''
}
})
setTimeout(() => {
vm.getProductLine() // 产品线查询
vm.repayPeriod()// 还款周期查询
vm.getPayWay()// 支付方式查询
}, 0)
}
})
},
methods: {
changeRatio () {
this.saveInfo.down_payment_ratio_n = `${(this.saveInfo.down_payment / this.saveInfo.equip_price).toFixed(2) * 100}%`
},
changeDeposit () {
this.saveInfo.deposit_ratio_n = `${(this.saveInfo.deposit / this.saveInfo.equip_price).toFixed(2) * 100}%`
},
changeLeaseCharge () {
this.saveInfo.lease_charge_ratio_n = `${(this.saveInfo.lease_charge / (this.saveInfo.equip_price - this.saveInfo.equip_price * this.saveInfo.down_payment_ratio_n.replace('%', '') / 100)).toFixed(2) * 100}%`
},
selectBusinessPolicy (e) {
let vm = this
vm.saveInfo.product_plan_id = e.product_plan_id
vm.saveInfo.product_plan_name = e.product_plan_name
vm.saveInfo.down_payment_ratio = e.down_payment_ratio
vm.saveInfo.down_payment_ratio_n = e.down_payment_ratio_n
vm.saveInfo.lease_charge_ratio = e.lease_charge_ratio
vm.saveInfo.lease_charge_ratio_n = e.lease_charge_ratio_n
vm.saveInfo.int_rate = e.int_rate
vm.saveInfo.int_rate_n = e.int_rate_n
vm.saveInfo.penalty_rate_n = e.penalty_rate_n
vm.saveInfo.penalty_rate = e.penalty_rate
vm.saveInfo.deposit_ratio = e.deposit_ratio
vm.saveInfo.deposit_ratio_n = e.deposit_ratio_n
setTimeout(() => {
vm.showModalBusiness = false
}, 100)
},
save () {
let vm = this
vm.$router.push({
name: 'CreateEnclosureInfo',
})
let url = process.env.basePath + 'prj_lease_info_save'
vm.saveInfo.down_payment_ratio = (vm.saveInfo.down_payment_ratio_n.replace('%', '') / 100).toFixed(2)
vm.saveInfo.lease_charge_ratio = (vm.saveInfo.lease_charge_ratio_n.replace('%', '') / 100).toFixed(2)
vm.saveInfo.deposit_ratio = (vm.saveInfo.deposit_ratio_n.replace('%', '') / 100).toFixed(2)
vm.saveInfo.finance_amount = vm.finance_amount
let param = {
master: vm.saveInfo,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.isComputed = true
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
next () {
let vm = this
if (vm.isComputed) {
let url = process.env.basePath + 'prj_product_info_save'
let param = {
master: vm.productInfo,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.$router.push({
name: 'CreateEnclosureInfo',
})
} else {
hlsPopup.showLongCenter(res.message)
}
})
} else {
hlsPopup.showLongCenter('请先进行计算')
}
},
showTime (format) { // 预计付款日
let vm = this
hlsPopup.showTime({
nowDate: (new Date()).format('yyyy-MM-dd'),
format: format,
callback: (date) => {
vm.saveInfo.lease_start_date = date
},
})
},
getPayWay () { // 支付方式查询
let vm = this
let url = $config.basePath + 'prj_pay_type_query'
let param = {}
vm.hlsPopup.showLoading('数据加载中')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.paywayLists = res.lists.map(item => {
return {
code: item.pay_type,
code_name: item.pay_type_n,
}
})
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
// 支付方式选择
selectPayWay () {
let vm = this
vm.hlsPopup.selectList({
list: vm.paywayLists, // 下拉列表
code: 'bp_type',
object: {},
returnItem: function (index, obj) {
vm.saveInfo.pay_type_n = obj.bp_type_n
vm.saveInfo.pay_type = obj.bp_type
},
})
},
repayPeriod () { // 还款周期查询
let vm = this
let url = $config.basePath + 'annual_pay_times_query'
let param = {}
vm.hlsPopup.showLoading('数据加载中')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.periodLists = res.lists.map(item => {
return {
code: item.annual_pay_times,
code_name: item.annual_pay_times_n,
}
})
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
// 还款周期选择
periodPull () {
let vm = this
vm.hlsPopup.selectList({
list: vm.periodLists, // 下拉列表
code: 'bp_type',
object: {},
returnItem: function (index, obj) {
vm.saveInfo.annual_pay_times_n = obj.bp_type_n
vm.saveInfo.annual_pay_times = obj.bp_type
},
})
},
loadMorePolicy () {
if (this.policyKeyWord) {
this.searchBusinessPolicy()
} else {
this.getBusinessPolicy()
}
},
searchBusinessPolicy () {
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prj_product_plan_query' +
'&index' +
`'${randomString}'`
let param = {
bp_agent_id: vm.$route.params.bp_agent_id,
pagesize: 10,
pagenum: vm.pagenumSearchPolicy,
searchInput: vm.policyKeyWord,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.businessLists = returnData
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vm.businessLists = returnData
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.businessLists.push(array[index])
})
vm.pagenumSearchPolicy++
vm.$refs.scroll.update(false)
}
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
getBusinessPolicy () {
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prj_product_plan_query' +
'&index' +
`'${randomString}'`
let param = {
bp_agent_id: vm.$route.params.bp_agent_id,
pagesize: 10,
pagenum: vm.pagenumPolicy,
searchInput: vm.policyKeyWord,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vum.forEach(returnData, function (data, index, array) {
vm.businessLists.push(array[index])
})
vm.pagenumPolicy++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.businessLists.push(array[index])
})
vm.pagenumPolicy++
vm.$refs.scroll.update(false)
}
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
selectProduct (e) {
let vm = this
this.productInfo.product_id_n = e.product_name
this.productInfo.product_id = e.product_id
setTimeout(() => {
vm.showModalValue = false
}, 100)
},
loadMoreProduct () {
if (this.keyWordProduct) {
this.searchProduct()
} else {
this.getProduct()
}
},
searchProduct () {
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prd_product_list' +
'&index' +
`'${randomString}'`
let param = {
user_phone: window.localStorage.getItem('user_phone'),
pagesize: 10,
pagenum: vm.pagenumSearch,
searchInput: vm.keyWordProduct,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.divisionLists = returnData
} else if (returnData.length > 0 && returnData.length < 10) {
vm.divisionLists = returnData
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.divisionLists.push(array[index])
})
vm.pagenumSearch++
vm.$refs.scroll.update(false)
}
vm.divisionLists.forEach(item => {
item['url'] = process.env.filePath + 'attachment_id=' + item.product_attachment_id + '&access_token=' + window.localStorage.access_token
})
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
getProduct () {
let vm = this
vm.showModalValue = true
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prd_product_list' +
'&index' +
`'${randomString}'`
let param = {
user_phone: window.localStorage.getItem('user_phone'),
pagesize: 10,
pagenum: vm.pagenum,
searchInput: vm.keyWordProduct,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vum.forEach(returnData, function (data, index, array) {
vm.divisionLists.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.divisionLists.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(false)
}
vm.divisionLists.forEach(item => {
item['url'] = process.env.filePath + 'attachment_id=' + item.product_attachment_id + '&access_token=' + window.localStorage.access_token
})
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
selectProductLine (e) {
let vm = this
vm.hlsPopup.selectList({
list: vm.productLine,
code: 'bp_type',
object: {},
returnItem: function (index, obj) {
vm.saveInfo.division = obj.bp_type
vm.saveInfo.division_n = obj.bp_type_n
},
})
},
getProductLine () {
let vm = this
let url = process.env.basePath + 'prj_product_division'
let param = {
bp_agent_id: vm.$route.params.bp_agent_id,
}
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.productLine = res.lists.map(item => {
return {
code: item.division,
code_name: item.division_n,
}
})
}
})
},
goPlan () {
this.$router.push({
name: 'ContractRepayPlan',
params: {
product_num: this.productInfo.product_num,
project_id: window.localStorage.project_id,
},
})
},
goRent () {
this.$router.push({
name: 'CreateEnclosureInfo',
})
},
},
}
</script>
<style lang="less">
#create-rent-info {
input{
color:#333;
}
input::placeholder{
color: #666;
}
.flow {
z-index: 999;
}
.hls-list-item {
margin-bottom: 0px !important;
}
.h-header-right {
display: flex;
align-items: center;
}
#businuss-list {
.search {
background-color: #fff;
padding: 8px 12px;
width: 100%;
height: 1.02rem;
z-index: 100;
margin-bottom: 8px;
input {
background: url("../../assets/contractStart/search1.png") 320px
no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding-left: 12px;
height: 36px;
line-height: 36px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
input::placeholder {
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
letter-spacing: 0;
}
input:focus {
background: url("../../assets/contractStart/search2.png") 320px
no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
border: 2px solid #bcc6ff;
}
}
.descript {
width: 100%;
height: 44px;
display: flex;
flex-direction: row;
background: #fff;
img {
width: 30px;
height: 30px;
margin-left: 10px;
margin-top: 8px;
// margin-right: 8px;
}
.linkPic {
width: 16px;
height: 16px;
margin-top: 15px;
margin-left: -7px;
margin-right: 10px;
}
.produc {
height: 44px;
display: flex;
flex: 1;
font-size: 15px;
color: #4b4a4b;
line-height: 44px;
font-weight: 500;
letter-spacing: 0;
margin-left: 10px;
font-family: PingFangSC-Semibold;
border-bottom: 1px solid #f3f3f7;
}
}
.tario {
width: 100%;
height: 60px;
position: relative;
background: #fff;
// margin-bottom: 8px;
.wrap:nth-of-type(1) {
height: 60px;
position: absolute;
left: 50px;
}
.wrap:nth-of-type(2) {
height: 60px;
position: absolute;
right: 30px;
}
p {
height: 30px;
line-height: 30px;
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56, 63, 69, 0.6);
span:nth-of-type(2) {
margin-left: 16px;
color: rgb(56, 63, 69);
}
}
}
}
#product-list {
.hls-list-item {
border-radius: 4px;
}
.item-pic {
width: 100px;
//height: 110px;
img {
width: 100%;
height: 100%;
}
}
.item-content {
width: 100%;
margin-left: 20px;
.pro-name {
height: 42px;
width: 100%;
position: relative;
border-bottom: 1px solid #f3f3f7;
.arrow {
position: absolute;
width: 16px;
height: 16px;
right: 0;
top: 13px;
}
p {
height: 42px;
line-height: 42px;
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4b4a4b;
letter-spacing: 0;
font-weight: 600;
}
}
.centers {
font-family: PingFangSC-Semibold;
font-size: 13px;
color: rgba(56, 63, 69, 0.6);
letter-spacing: 0.5px;
display: flex;
flex-direction: row;
margin-top: 8px;
.firsts1 {
width: 60px;
height: 17px;
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56, 63, 69, 0.6);
}
.seconds1 {
width: 70%;
margin-left: 16px;
height: auto;
font-family: PingFangSC-Regular;
font-size: 13px;
color: #4b4a4b;
}
}
}
.item {
width: 359px;
margin: 0 auto;
}
.search {
background-color: #fff;
padding: 8px 12px;
width: 100%;
height: 1.02rem;
z-index: 100;
margin-bottom: 8px;
input {
background: url("../../assets/contractStart/search1.png") 320px
no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding-left: 12px;
height: 36px;
line-height: 36px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
input::placeholder {
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
letter-spacing: 0;
}
input:focus {
background: url("../../assets/contractStart/search2.png") 320px
no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
border: 2px solid #bcc6ff;
}
}
}
.date-check {
background: url("../../assets/trial/date.png") 350px no-repeat;
background-size: 16px 16px;
padding-right: 15px;
}
.hint-info {
width: 100%;
height: 36px;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #fcc800;
letter-spacing: 0.5px;
background-color: #faf5e0;
display: flex;
align-items: center;
img {
width: 16px;
height: 16px;
margin-left: 17px;
margin-right: 17px;
}
}
.add-box {
.before {
border: 1px solid #fdb62f;
border-radius: 4px;
color: #fdb62f;
}
.next {
background: #1d3fff;
border-radius: 4px;
color: #fff;
}
}
.userInfo:first-of-type {
margin-top: 10px;
}
.userInfo {
height: 40px;
line-height: 40px;
color: @headerColor;
// margin-top: -10px;
font-size: 15px;
margin-left: 16px;
position: relative;
}
.userInfo::before {
content: "";
display: block;
width: 4px;
height: 20px;
background-color: @headerColor;
position: absolute;
left: -15px;
top: 12px;
}
.top {
width: 100%;
height: 81px;
background-color: #faf5e0;
display: flex;
justify-content: center;
align-items: center;
.line {
display: inline-block;
width: 78px;
border-top: 1px solid #a4a4a4;
margin-bottom: 18px;
}
.line:nth-of-type(1) {
border-top: 1px solid #ffa000;
}
.item {
display: flex;
justify-content: center;
align-items: center;
flex-flow: column wrap;
font-family: PingFangSC-Semibold;
font-size: 12px;
color: rgba(56, 63, 69, 0.5);
letter-spacing: 0.43px;
img {
width: 18px;
}
span {
display: block;
text-align: center;
line-height: 18px;
border-radius: 50%;
width: 18px;
height: 18px;
color: #fff;
background: #a4a4a4;
}
p {
margin-top: 10px;
}
}
.item:not(:nth-of-type(3)) {
font-family: PingFangSC-Semibold;
font-size: 12px;
color: rgba(56, 63, 69, 0.5);
letter-spacing: 0.43px;
span {
background-color: #ffa000;
}
}
}
}
</style>
......@@ -80,44 +80,74 @@
<img src="@/assets/contractCreate/otherInfo.png" >补充信息
</div>
<list-item :item-height="44">
<item :showArrow="true">
<item v-if="!fromPutted" :showArrow="true">
<div slot="name">行业情况</div>
<input
slot="content" v-model="saveInfo.np_industry_exp_n" readonly placeholder="请选择"
@click="selectBussinessSituation" >
</item>
<item :showArrow="true" >
<item v-if="fromPutted">
<div slot="name">行业情况</div>
<span slot="content">{{ saveInfo.np_industry_exp_n }}</span>
</item>
<item v-if="!fromPutted" :showArrow="true" >
<div slot="name">职业情况</div>
<input
slot="content" v-model="saveInfo.np_occupation_n" readonly placeholder="请选择"
@click="selectJobSituation" >
</item>
<item :showArrow="true">
<item v-if="fromPutted">
<div slot="name">职业情况</div>
<span slot="content">{{ saveInfo.np_occupation_n }}</span>
</item>
<item v-if="!fromPutted" :showArrow="true">
<div slot="name">房产信息</div>
<input
slot="content" v-model="saveInfo.house_type_n" readonly placeholder="请选择"
@click="selectHouseInfo">
</item>
<item :showArrow="true">
<item v-if="fromPutted">
<div slot="name">房产信息</div>
<span slot="content">{{ saveInfo.house_type_n }}</span>
</item>
<item v-if="!fromPutted" :showArrow="true">
<div slot="name">设备价值</div>
<input
slot="content" v-model="saveInfo.equip_value" placeholder="请选择" readonly
@click="selectEquipInfo">
</item>
<item class="check" @click.native="checked=!checked">
<item v-if="fromPutted">
<div slot="name">设备价值</div>
<span slot="content">{{ saveInfo.equip_value }}</span>
</item>
<item v-if="!fromPutted" class="check" @click.native="checked=!checked">
<div slot="name">农行代扣</div>
<img v-if="checked" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checked" slot="content" />
</item>
<item class="check" @click.native="checkedApproved=!checkedApproved">
<item v-if="fromPutted" class="check">
<div slot="name">农行代扣</div>
<img v-if="checked" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checked" slot="content" />
</item>
<item v-if="!fromPutted" class="check" @click.native="checkedApproved=!checkedApproved">
<div slot="name">是否特批</div>
<img v-if="checkedApproved" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checkedApproved" slot="content" />
</item>
<item v-if="fromPutted" class="check">
<div slot="name">是否特批</div>
<img v-if="checkedApproved" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checkedApproved" slot="content" />
</item>
<item v-if="checkedApproved">
<item v-if="checkedApproved&&!fromPutted">
<div slot="name">特批事项</div>
<input slot="content" v-model="saveInfo.special_matter" placeholder="暂无信息">
</item>
<item v-if="checkedApproved&&fromPutted">
<div slot="name">特批事项</div>
<span slot="content">{{ saveInfo.special_matter }}</span>
</item>
</list-item>
</div>
<div v-if="bp_class==='ORG'">
......@@ -175,43 +205,75 @@
<img src="@/assets/contractCreate/otherInfo.png" >补充信息
</div>
<list-item :item-height="44">
<item :showArrow="true" @click.native="selectORGEquipInfo">
<item v-if="!fromPutted" :showArrow="true" @click.native="selectORGEquipInfo">
<div slot="name">设备保有量</div>
<input slot="content" v-model="saveInfo.equip_num_n" readonly placeholder="请选择" >
</item>
<item v-if="fromPutted" :showArrow="true">
<div slot="name">设备保有量</div>
<input slot="content" v-model="saveInfo.equip_num_n" readonly placeholder="请选择" >
</item>
<item :showArrow="true" @click.native="selectORGEnge">
<item v-if="!fromPutted" :showArrow="true" @click.native="selectORGEnge">
<div slot="name">工程合同</div>
<input slot="content" v-model="saveInfo.engineer_con_n" readonly placeholder="请选择" >
</item>
<item :showArrow="true" @click.native="selectORGnative">
<item v-if="fromPutted" :showArrow="true">
<div slot="name">工程合同</div>
<input slot="content" v-model="saveInfo.engineer_con_n" readonly placeholder="请选择" >
</item>
<item v-if="!fromPutted" :showArrow="true" @click.native="selectORGnative">
<div slot="name">企业性质</div>
<input slot="content" v-model="saveInfo.enterpriese_nature_n" readonly placeholder="请选择" >
</item>
<item v-if="fromPutted" :showArrow="true">
<div slot="name">企业性质</div>
<input slot="content" v-model="saveInfo.enterpriese_nature_n" readonly placeholder="请选择" >
</item>
<item :showArrow="true" @click.native="selectEquipInfo">
<item v-if="!fromPutted" :showArrow="true" @click.native="selectEquipInfo">
<div slot="name">设备价值</div>
<input
slot="content" v-model="saveInfo.equip_value" placeholder="请选择" readonly
>
</item>
<item class="check" @click.native="checked=!checked">
<item v-if="fromPutted" :showArrow="true">
<div slot="name">设备价值</div>
<input
slot="content" v-model="saveInfo.equip_value" placeholder="请选择" readonly
>
</item>
<item v-if="!fromPutted" class="check" @click.native="checked=!checked">
<div slot="name">农行代扣</div>
<img v-if="checked" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checked" slot="content" />
</item>
<item v-if="fromPutted" class="check">
<div slot="name">农行代扣</div>
<img v-if="checked" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checked" slot="content" />
</item>
<item class="check" @click.native="checkedApproved=!checkedApproved">
<item v-if="!fromPutted" class="check" @click.native="checkedApproved=!checkedApproved">
<div slot="name">是否特批</div>
<img v-if="checkedApproved" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checkedApproved" slot="content" />
</item>
<item v-if="checkedApproved">
<item v-if="fromPutted" class="check">
<div slot="name">是否特批</div>
<img v-if="checkedApproved" slot="content" src="@/assets/contractCreate/selected.png" >
<span v-if="!checkedApproved" slot="content" />
</item>
<item v-if="checkedApproved&&!fromPutted">
<div slot="name">特批事项</div>
<input slot="content" placeholder="暂无信息">
<input slot="content" v-model="saveInfo.special_matter" placeholder="暂无信息">
</item>
<item v-if="checkedApproved&&fromPutted">
<div slot="name">特批事项</div>
<input slot="content" v-model="saveInfo.special_matter" readonly placeholder="暂无信息">
</item>
</list-item>
</div>
<div class="another-info">
<img src="@/assets/contractCreate/undertake.png" >担保人信息
<img src="@/assets/contractCreate/add.png" @click="addPerson">
<img v-if="!fromPutted" src="@/assets/contractCreate/add.png" @click="addPerson">
</div>
</div>
<item-option v-for="(item,index) in selectUdertake" :key="index" class="mySlider">
......@@ -237,46 +299,22 @@
<tab-button class="before" @click.native="$routeGo()">上一步</tab-button>
<tab-button class="next" @click.native="save">下一步</tab-button>
</bottom-tab>
<h-modal ref="modal" v-model="showModalValue" class="flow" position="bottom">
<h-view id="add-person">
<h-header :proportion="[1,4,1]" class="bar-custom">
<!-- <div class="h-header-btn"> -->
<span slot="center" style="color:#fff">添加担保人</span>
<span slot="right" style="color:#fff" @click="showModalValue=false">取消</span>
<!-- </div> -->
</h-header>
<h-content>
<div class="search has-header">
<input v-model="keyWord" placeholder="请输入担保人名称/证件号码" >
</div>
<scroll ref="scroll" :updateData="[undertakeList]" :pullUp="true" @pullingUp="loadMore">
<list-item :item-height="68" class="item">
<item v-for="(item,index) in undertakeList" :key="index" @click.native="addUndertake(item)">
<img slot="left-icon" src="@/assets/contractCreate/name.png" class="left-icon" >
<div slot="name">
担保人名称
<br >证件号
</div>
<div slot="content">
<input v-model="item.bp_name" placeholder="暂无信息" readonly >
<input v-model="item.id_card_no" placeholder="暂无信息" readonly >
</div>
</item>
</list-item>
</scroll>
</h-content>
</h-view>
</h-modal>
<AddUnderTake ref="addperson" :bp_agent_id="bp_agent_id" @addUnder="addUnder"/>
</h-view>
</template>
<script>
import AddUnderTake from '../../pages/contractCreate/add-undertake'
export default {
components: {
AddUnderTake,
},
data () {
return {
checked: false, // 农行代扣
checkedApproved: false, // 是否特批
bp_class: '',
showModalValue: false,
fromPutted: false, // 为true为从已提交进来
keyWord: '',
bp_agent_id: '',
pageNum: 1,
......@@ -288,14 +326,13 @@ export default {
equipInfonList: [], // 设备信息
engeList: [], // 工程合同查询
nativeList: [], // 企业性质查询
undertakeList: [], // 担保人列表
selectUdertake: [], // 已选择的担保人列表
NPBaseInfo: {}, // 自然人基本信息
ORGBaseInfo: {}, // 企业基本信息
saveInfo: {// 需要保存的信息
project_id: window.localStorage.project_id,
bp_id: window.localStorage.bp_id_tenant,
bp_class: window.localStorage.bp_class,
bp_id: '',
bp_class: window.localStorage.bp_class_tenant,
equip_num: '',
equip_num_n: '',
equip_value: '',
......@@ -346,48 +383,65 @@ export default {
vm.pageNum = 1
vm.pageNumSearch = 1
vm.undertakeList = []
vm.bp_class = window.localStorage.bp_class
vm.bp_class = window.localStorage.bp_class_tenant
if (from.name === 'SalesInfo') {
vm.fromPutted = false
Object.keys(vm.saveInfo).forEach(i => {
if (i !== 'project_id' && i !== 'bp_id' && i !== 'bp_class' && i !== 'abc_deduction_flag' && i !== 'special_flag') {
vm.saveInfo[i] = ''
} else if (i === 'abc_deduction_flag' && i === 'special_flag') {
vm.saveInfo[i] = 'N'
} else if (i === 'bp_id') {
vm.saveInfo[i] = window.localStorage.bp_id_tenant
}
})
vm.selectUdertake = []
setTimeout(() => {
vm.getBaseInfo()
}, 0)
} else if (from.name === 'SalesInfo' && !this.status) {
vm.getBaseInfo()
} else if (from.name === 'ContractCreateList' && vm.status === 'false') {
vm.fromPutted = false
vm.saveInfo.bp_id = vm.$route.params.bp_id
vm.selectUdertake = []
setTimeout(() => {
vm.getSaveInfo()
vm.getBaseInfo()
}, 0)
} else if (from.name === 'ContractCreateList' && vm.status === 'true') {
vm.fromPutted = true
vm.saveInfo.bp_id = vm.$route.params.bp_id
vm.selectUdertake = []
setTimeout(() => {
vm.getSaveInfo()
vm.getBaseInfo()
}, 0)
}
})
},
mounted () {
},
methods: {
addPerson () {
this.showModalValue = true
this.getUndertake()
getSaveInfo () {
},
addUndertake (e) {
if (this.selectUdertake.length === 0) {
this.selectUdertake.push(e)
} else {
let index = this.selectUdertake.findIndex(item => {
if (item.bp_name === e.bp_name) {
return true
}
})
if (index !== -1) {
hlsPopup.showLongCenter('您已添加了该担保人')
} else {
this.selectUdertake.push(e)
addUnder (e) {
let index = this.selectUdertake.findIndex(item => {
if (item.bp_name === e.bp_name) {
return true
}
})
if (index !== -1) {
hlsPopup.showLongCenter('您已添加了该担保人')
} else {
this.selectUdertake.push(e)
}
setTimeout(() => {
this.showModalValue = false
}, 100)
},
addPerson () {
this.$refs.addperson.init()
this.$refs.addperson.getUndertake()
this.$refs.addperson.show()
},
makeData () {
let obj = {}
this.selectUdertake.forEach((i, index, arr) => {
......@@ -413,24 +467,34 @@ export default {
},
save () {
let vm = this
let url = process.env.basePath + 'prj_base_info_save'
let param = {
master: {...vm.saveInfo, ...vm.makeData()},
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.$router.push({
name: 'CreateRentInfo',
params: {
bp_agent_id: vm.bp_agent_id,
},
})
} else {
hlsPopup.showLongCenter(res.message)
if (vm.fromPutted) {
vm.$router.push({
name: 'CreateRentInfo',
params: {
bp_agent_id: vm.bp_agent_id,
},
})
} else {
let url = process.env.basePath + 'prj_base_info_save'
let param = {
master: {...vm.saveInfo, ...vm.makeData()},
}
})
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.$router.push({
name: 'CreateRentInfo',
params: {
bp_agent_id: vm.bp_agent_id,
bp_name: vm.NPBaseInfo.bp_name,
},
})
} else {
hlsPopup.showLongCenter(res.message)
}
})
}
},
getBaseInfo () {
this.getEquipInfo()
......@@ -441,7 +505,6 @@ export default {
this.getHouseInfo()
this.getAgentInfo()
} else if (this.bp_class === 'ORG') {
debugger
this.getORGInfo()
this.getORGEquipInfo()
this.getORGEnge()
......@@ -449,98 +512,12 @@ export default {
this.getORGnative()
}
},
loadMore () {
if (this.keyWord) {
this.searchUndertake()
} else {
this.getUndertake()
}
},
searchUndertake () {
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prj_bp_guta_query' +
'&index' +
`'${randomString}'`
let param = {
bp_agent_id: vm.bp_agent_id,
pagesize: 10,
pagenum: vm.pageNumSearch,
searchInput: vm.keyWord,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.undertakeList = returnData
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList = returnData
})
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList.push(array[index])
})
vm.pageNumSearch++
vm.$refs.scroll.update(false)
}
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
getUndertake () { // 担保人查询
let vm = this
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'prj_bp_guta_query' +
'&index' +
`'${randomString}'`
let param = {
bp_agent_id: vm.bp_agent_id,
pagesize: 10,
pagenum: vm.pageNum,
searchInput: vm.keyWord,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.lists
if (returnData.length === 0) {
vm.$refs.scroll.update(true)
} else if (returnData.length > 0 && returnData.length < 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.undertakeList.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(false)
}
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
getNPInfo () {
let vm = this
let url = process.env.basePath + 'bp_np_info_query'
let param = {
bp_id: window.localStorage.getItem('bp_id_tenant'),
bp_id: vm.saveInfo.bp_id,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
......@@ -556,7 +533,7 @@ export default {
let vm = this
let url = process.env.basePath + 'bp_org_info_query'
let param = {
bp_id: window.localStorage.bp_id_tenant,
bp_id: vm.saveInfo.bp_id,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
......
......@@ -73,14 +73,29 @@
<div class="userInfo">补充资料</div>
<div class="house">
<p class="titles">特批申请书</p>
<div v-if="!applicationImg" class="card-upload" @click="ocrShow('特批申请书', checkId)">
<img src="@/assets/userBind/camera.png" class="upload-btn" >
<!--待上传图片列表-->
<div
v-for="(item, index) in upload_list"
v-if="item.check_id === checkId"
:key="index"
class="card-upload"
>
<img :src="item.picture" @click="showBigPicture(item.picture)" >
<div class="close" @click="remove_pic(item.attachment_id,index)">
<img src="@/assets/userBind/deleteIcon.png" >
</div>
</div>
<div v-if="applicationImg && status !== 'APPROVED'" class="card-upload">
<img :src="applicationImg" @click="ocrShow('特批申请书', checkId)">
<!--从服务器上下载的图片-->
<div v-for="(pic, index) in dowload_list" :key="index">
<div v-if="pic.check_id==checkId" :key="index" class="card-upload">
<img :src="pic.url" @click="showBigPicture(pic.url)" >
<div class="close" @click="delete_pic(pic.attachment_id)">
<img src="@/assets/userBind/deleteIcon.png" >
</div>
</div>
</div>
<div v-if="applicationImg && status === 'APPROVED'" class="card-upload">
<img :src="applicationImg" @click="showBigPicture(applicationImg)">
<div class="card-upload plus" @click="ocrShow('特批申请书',checkId)">
<img src="@/assets/userBind/camera.png" class="upload-btn" >
</div>
</div>
</h-content>
......@@ -94,7 +109,10 @@
export default {
data () {
return {
checkId: '', // 特批申请书id
cddItemList: [],
upload_list: [],
dowload_list: [], // 下载图片列表
idCardFrontCheck_id: '', // 承租人身份证正面
idCardBackCheck_id: '', // 承租人身份证背面
idCardFrontUrlFlag: false,
......@@ -107,7 +125,6 @@ export default {
houseImg: '',
carImg: '',
marryImg: '',
applicationImg: '',
licenseImg: '',
house_id: '',
car_id: '',
......@@ -122,14 +139,56 @@ export default {
beforeRouteEnter (to, from, next) {
next(vm => {
if (from.name === 'CreateRentInfo') {
vm.idCardFront = ''
vm.idCardBack = ''
vm.houseImg = ''
vm.carImg = ''
vm.marryImg = ''
vm.licenseImg = ''
vm.upload_list = []
vm.dowload_list = []
vm.cddItemList = []
vm.bpClass = window.localStorage.bp_class
vm.status = window.localStorage.user_bp_status
vm.loadItemList()
// vm.getPrjId()
vm.queryCheckId()
}
})
},
methods: {
// 特批证书check_id查询
queryCheckId () {
let vm = this
let url = process.env.basePath + 'prj_atm_query'
let param = {
project_id: window.localStorage.project_id,
}
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
console.log('特批证书check_id查询', res)
if (res.result === 'S') {
vm.checkId = res.info.check_id
vm.certificateQuery()
}
})
},
// 特批证书查询
certificateQuery () {
let vm = this
let url =
process.env.basePath + 'attachment_list_query' // 附件查询
let param = {
check_id: vm.checkId,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.dowload_list = res.lists
}
})
},
// 查看大图
showBigPicture (pic) {
let vm = this
......@@ -247,9 +306,62 @@ export default {
hlsPopup.hideLoading()
}
},
// 移除图片
remove_pic (attachment_id, index) {
let vm = this
var delete_list = []
let obj = {'attachment_id': attachment_id}
delete_list.push(obj)
let url = process.env.basePath + 'app_delete_attment' // 附件删除
let param = {
'picturelist': delete_list,
}
hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
hlsPopup.hideLoading()
if (res.result === 'S') {
hlsPopup.showLongCenter('删除成功!')
vm.remove_upload_list(attachment_id, index)
} else if (res.result === 'E') {
hlsPopup.showShortCenter(res.message)
}
})
},
remove_upload_list (attachment_id, index) {
let vm = this
vm.upload_list.remove(index)
vm.upload_list.sort()
},
// 删除图片
delete_pic (attachment_id) {
let vm = this
var delete_list = []
let obj = {'attachment_id': attachment_id}
delete_list.push(obj)
let url = process.env.basePath + 'app_delete_attment' // 附件删除
let param = {
'picturelist': delete_list,
}
hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
hlsPopup.hideLoading()
if (res.result === 'S') {
hlsPopup.showLongCenter('删除成功!')
vm.remove_dowload_list(attachment_id)
} else if (res.result === 'E') {
hlsPopup.showShortCenter(res.message)
}
})
},
remove_dowload_list (attachment_id) {
console.log('attachment_id', attachment_id)
let vm = this
vm.dowload_list = vm.dowload_list.filter(item => {
return item.attachment_id !== attachment_id
})
},
loadItemList () {
let vm = this
vm.dowload_list = []
let bpId = window.localStorage.getItem('bp_id')
let url = process.env.basePath + 'prj_cdd_check_list'
let group = ''
......@@ -330,25 +442,25 @@ export default {
if (!vm.idCardFrontUrlFlag) {
vm.idCardFront = res.lists[0].url
}
vm.idCardFrontAttachmentId = res.lists[0].attachment_id
// vm.idCardFrontAttachmentId = res.lists[0].attachment_id
break
case 'LEGAL_ID_CARD_F': // 身份证正面
if (!vm.idCardFrontUrlFlag) {
vm.idCardFront = res.lists[0].url
}
vm.idCardFrontAttachmentId = res.lists[0].attachment_id
// vm.idCardFrontAttachmentId = res.lists[0].attachment_id
break
case 'NP_ID_CARD_B': // 承租人身份证背面
if (!vm.idCardBackUrlFlag) {
vm.idCardBack = res.lists[0].url
}
vm.idCardBackAttachmentId = res.lists[0].attachment_id
// vm.idCardBackAttachmentId = res.lists[0].attachment_id
break
case 'LEGAL_ID_CARD_B': // 承租人身份证背面
if (!vm.idCardBackUrlFlag) {
vm.idCardBack = res.lists[0].url
}
vm.idCardBackAttachmentId = res.lists[0].attachment_id
// vm.idCardBackAttachmentId = res.lists[0].attachment_id
break
case 'HOUSE_CARD': // 房产证
if (!vm.houseFlag) {
......@@ -369,7 +481,6 @@ export default {
// vm.house_id = res.lists[0].attachment_id
break
default:
vm.dowload_list.push(res.lists)
}
} else {
hlsPopup.showLongCenter(res.message)
......@@ -392,6 +503,9 @@ export default {
vm.hlsPopup.hideLoading()
console.log('项目提交审批', res)
if (res.result === 'S') {
vm.$router.push({
name: 'MyInfo',
})
// vm.showLists = res.lists
}
})
......@@ -525,6 +639,11 @@ export default {
background: #fff;
margin-top: 10px;
padding-bottom: 10px;
.plus {
display: flex;
justify-content: center;
align-items: center;
}
.card-upload {
position: relative;
width: 80px;
......@@ -566,6 +685,9 @@ export default {
}
}
}
.house:nth-of-type(2) {
margin-top: 0
}
.house:last-child {
margin-top: 0
}
......
......@@ -163,6 +163,7 @@ export default {
factory: '', // 主机厂id
manu_manager: '', // 办事处业务员
dates: '请选择',
project_id: window.localStorage.project_id,
},
}
},
......@@ -199,10 +200,13 @@ export default {
manu_manager: '', // 办事处业务员
dates: '请选择',
bp_type: window.localStorage.bp_type,
project_id: '',
}
vm.businessQuery()
vm.agentQuery()
vm.factoryQuery()
} else if (from.name === 'CreateBaseInfo') {
vm.salesInfo.project_id = window.localStorage.project_id
}
})
},
......@@ -427,30 +431,40 @@ export default {
this.salesInfo.bp_id_tenant = item.bp_id
this.showModal = false
window.localStorage.setItem('bp_id_tenant', this.salesInfo.bp_id_tenant)
window.localStorage.setItem('bp_class_tenant', item.bp_class)
},
hideModal () {
this.showModal = false
},
check () {
},
// 销售信息保存
confirmCreate () {
let vm = this
let url = process.env.basePath + 'prj_sales_info_save'
window.localStorage.setItem('bp_id_tenant', this.salesInfo.bp_id_tenant)
let param = {
master: vm.salesInfo,
}
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
hlsPopup.showLongCenter('创建成功!')
window.localStorage.setItem('project_id', res.project_id)
vm.$router.push({
name: 'CreateBaseInfo',
})
}
})
if (!this.lessee) {
hlsPopup.showLongCenter('请选择承租人')
} else {
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
hlsPopup.showLongCenter('创建成功!')
window.localStorage.setItem('project_id', res.project_id)
vm.$router.push({
name: 'CreateBaseInfo',
})
}
})
}
},
},
}
</script>
......
......@@ -2,8 +2,8 @@
<!--
* @Author: your name
* @Date: 2019-10-31 09:49:57
* @LastEditTime: 2019-12-18 17:14:47
* @LastEditors: Please set LastEditors
* @LastEditTime : 2019-12-27 09:09:37
* @LastEditors : Please set LastEditors
* @Description: 合同查询--记录
* @FilePath:
-->
......@@ -103,7 +103,7 @@ export default {
computed: {},
watch: {
selected () {
this.$refs.scroll.update(false)
// this.$refs.scroll.update(false)
this.$refs.scroll.scrollToTop()
if (this.selected === 'all') {
this.contract_status_n = '全部'
......
<!--
* @Author: your name
* @Date: 2019-10-31 09:49:57
* @LastEditTime : 2019-12-24 18:34:37
* @LastEditTime : 2019-12-26 16:47:18
* @LastEditors : Please set LastEditors
* @Description: 还款
* @FilePath:
......@@ -368,13 +368,13 @@ export default {
// flex: 9;
display: flex;
flex-direction: column;
justify-content: space-evenly;
font-family: PingFangSC-Regular;
font-size: 13px;
color: #4B4A4B;
//padding-top: 20px;
margin-left: 40px;
margin-top: -16px;
margin-left: 20px;
div:nth-of-type(2) {
margin-top: 12px;
}
span:nth-of-type(2) {
margin-left: 8px;
}
......
......@@ -28,11 +28,16 @@
</div>
</div>
</scroll>
<h-content v-if="data===null" class="null has-header">
<div v-if="data===null">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
<!-- <h-content v-if="data===null" class="null has-header">
<div class="noData">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</h-content>
</h-content>-->
</h-view>
</template>
......@@ -117,6 +122,15 @@ export default {
</script>
<style lang='less' >
#contract-repayment {
.display {
position: fixed;
// top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.null{
margin-top:46px;
}
......
<!--
* @Author: your name
* @Date: 2019-10-30 19:29:24
* @LastEditTime : 2019-12-24 18:38:21
* @LastEditTime : 2019-12-26 16:47:28
* @LastEditors : Please set LastEditors
* @Description: In User Settings Edit
-->
......@@ -404,13 +404,13 @@ export default {
// flex: 9;
display: flex;
flex-direction: column;
justify-content: space-evenly;
font-family: PingFangSC-Regular;
font-size: 13px;
color: #4B4A4B;
//padding-top: 20px;
margin-left: 40px;
margin-top: -16px;
margin-left: 20px;
div:nth-of-type(2) {
margin-top: 12px;
}
span:nth-of-type(2) {
margin-left: 8px;
}
......
......@@ -48,6 +48,11 @@
</div>
</div>
</scroll>
<div v-if="showLists.length === 0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
......@@ -346,6 +351,15 @@ export default {
<style lang="less" type="text/less">
#contract-signing{
.display {
position: fixed;
// top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.tab-style{
display:flex;
width: 100%;
......
......@@ -253,6 +253,7 @@ export default {
vm.getGuarantor()
}
vm.getLease()
vm.signCheck() // 签约校验
} else if (from.name === 'ContractContent') {
vm.tabNum = 2
vm.agentPic = vm.readed
......
......@@ -46,6 +46,11 @@
</div>
</div>
</scroll>
<div v-if="showLists.length === 0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
......@@ -76,7 +81,8 @@ export default {
watch: {
'num': {
handler (newVal, oldVal) {
this.$refs.scroll.update(false)
// this.$refs.scroll.update(false)
this.$refs.scroll.scrollToTop()
if (newVal === 2) {
if (!this.approvedFlag) {
this.getLists()
......@@ -113,7 +119,7 @@ export default {
vm.approvedFlag = false
vm.submitLists = []
vm.approvedLists = []
vm.$refs.scroll.update(false)
// vm.$refs.scroll.update(false)
vm.$refs.scroll.scrollToTop()
vm.getLists()
} else if (from.name === 'ContractDetails') {
......@@ -185,6 +191,7 @@ export default {
}
},
loadMore () {
// debugger
let vm = this
if (vm.num === 1) {
vm.submitPagenum++
......@@ -325,6 +332,15 @@ export default {
</script>
<style lang="less">
#distribute-sign {
.display {
position: fixed;
// top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.tab-style{
display:flex;
width: 100%;
......
<!--
* @Author: your name
* @Date: 2019-10-30 19:29:24
* @LastEditTime : 2019-12-24 18:39:52
* @LastEditTime : 2019-12-26 16:47:36
* @LastEditors : Please set LastEditors
* @Description: In User Settings Edit
-->
......@@ -368,13 +368,13 @@ export default {
// flex: 9;
display: flex;
flex-direction: column;
justify-content: space-evenly;
font-family: PingFangSC-Regular;
font-size: 13px;
color: #4B4A4B;
//padding-top: 20px;
margin-left: 40px;
margin-top: -16px;
margin-left: 20px;
div:nth-of-type(2) {
margin-top: 12px;
}
span:nth-of-type(2) {
margin-left: 8px;
}
......
<!--
* @Author: your name
* @Date: 2019-10-30 19:29:24
* @LastEditTime : 2019-12-24 18:41:37
* @LastEditTime : 2019-12-26 16:47:07
* @LastEditors : Please set LastEditors
* @Description: In User Settings Edit
-->
......@@ -386,13 +386,13 @@ export default {
// flex: 9;
display: flex;
flex-direction: column;
justify-content: space-evenly;
font-family: PingFangSC-Regular;
font-size: 13px;
color: #4B4A4B;
//padding-top: 20px;
margin-left: 40px;
margin-top: -16px;
margin-left: 20px;
div:nth-of-type(2) {
margin-top: 12px;
}
span:nth-of-type(2) {
margin-left: 8px;
}
......
......@@ -29,9 +29,6 @@
<img src="@/assets/userBind/deleteIcon.png" >
</div>
</div>
<!-- <div class="file">
<img src="@/assets/help/1.jpg" >
</div> -->
<div class="file" @click="imgUploadShow(question_id)">
<img class="photo" src="@/assets/help/photo.png" >
</div>
......@@ -83,13 +80,11 @@ export default {
if (res.result === 'S') {
vm.hlsPopup.showSuccess('提交成功')
}
console.log(',,,,,', res)
})
},
// 图片上传入口
imgUploadShow (check_id) {
let vm = this
// vm.upload_list = []
hlsPopup.showActionSheet({
titleText: '请选择照片',
buttonArray: ['拍照', '从相册取'],
......@@ -123,7 +118,6 @@ export default {
// vm.faceListUpload.push(obj)
let list = []
list.push(obj)
// vm.upload_list.push(obj)
// 拍完一张立马执行保存图片逻辑
vm.save_picture(list)
}
......
......@@ -4,11 +4,7 @@
<div slot="center" class="top-word">消息通知</div>
</h-header>
<!-- <h-content class="content"> -->
<div v-if="list.length===0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
<scroll
v-if="list.length !== 0"
ref="scroll" :updateData="[list]" :pullUp="true" class="has-footer"
......@@ -59,6 +55,11 @@
</section>
<!-- </h-content> -->
</scroll>
<div v-if="list.length===0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
<script>
......
......@@ -47,7 +47,11 @@
</list-item>
</div>
</scroll>
<div v-if="productList.length===0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
......@@ -208,6 +212,15 @@ export default {
<style lang="less" rel="stylesheet">
#my-collect {
.display {
position: fixed;
top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.search {
background-color: #fff;
padding: 8px 12px;
......
......@@ -123,12 +123,13 @@ export default {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.prj_lists = res.prj_lists
vm.prj_lists.forEach(i => {
/* vm.prj_lists.forEach(i => {
i.cf_lists.forEach(j => {
let num = parseFloat(j.due_amount) - parseFloat(j.received_amount)
// let num = parseFloat(j.due_amount) - parseFloat(j.received_amount)
let num = ''
vm.$set(j, 'amount', num)
})
})
}) */
} else {
hlsPopup.showLongCenter(res.message)
}
......@@ -139,7 +140,11 @@ export default {
this.prj_lists.forEach(i => {
i.cf_lists.forEach(j => {
j.project_id = i.project_id
data.push(j)
if (!j.amount || j.amount === 0) {
} else {
data.push(j)
}
})
})
data.forEach(i => {
......
......@@ -14,57 +14,19 @@
<div class="down">
<div class="top">
<img src="@/assets/payment/back.png" @click="show=false" >
<span>选择银行卡</span>
<span>选择支付渠道</span>
</div>
<scroll>
<list-item :item-height="56" class="pay-way">
<item
v-for="(item,index) in nongBank"
:proportion="[7,1,1]"
:key="item.bank_account_num"
@click.native="isSelect(`nong${index}`);ischeck(item);confirmToPay(item)"
>
<div slot="name" style="flex=3">
<img :src="selectImg(item)" alt class="icon" >
{{ item.bank_full_name }}({{ selectLast(item) }})
<img
v-show="item.recommand"
class="push"
src="@/assets/payment/push.png"
>
</div>
<section slot="content">
<img v-show="select === `nong${index}`" src="@/assets/payment/select.png" alt >
<img v-show="select !== `nong${index}`" src="@/assets/payment/unselect.png" alt >
</section>
</item>
<!-- <item :proportion="[7,1,1]" @click.native="isSelect('one');ischeck('one')">
<div slot="name">
<img src="@/assets/payment/alipay.png" alt class="icon1" > 支付宝
</div>
<section slot="content">
<img v-show="select === 'one'" src="@/assets/payment/select.png" alt >
<img v-show="select !== 'one'" src="@/assets/payment/unselect.png" alt >
</section>
</item>
<item :proportion="[7,1,1]" @click.native="isSelect('two');ischeck('two')">
<div slot="name">
<img src="@/assets/payment/wx.png" alt class="icon2" > 微信
</div>
<section slot="content">
<img v-show="select === 'two'" src="@/assets/payment/select.png" alt >
<img v-show="select !== 'two'" src="@/assets/payment/unselect.png" alt >
</section>
</item> -->
<item
v-for="(item,index) in newList"
v-for="(item,index) in payTypeList"
:proportion="[7,1,1]"
:key="index"
@click.native="isSelect(`three${index}`);ischeck(item);confirmToPay(item)"
>
<div slot="name" style="flex=3">
<img :src="selectImg(item)" alt class="icon" >
{{ item.bank_full_name }}({{ selectLast(item) }})
{{ item.code_name }}
<img
v-show="item.recommand"
class="push"
......@@ -101,14 +63,20 @@
<span>{{ serviceCharge |currency }}</span>
</div>
<div class="info-item" @click="show=true">
<span>银行卡</span>
<span>支付渠道</span>
<span>
<img :src="checkType.img" >
<span>{{ checkType.bank_full_name }}</span>
<span v-if="sectctNong">({{ selectLast(checkType) }})</span>
<img :src="payTypeObj.img" >
<span>{{ payTypeObj.payType_n }}</span>
<img class="arrow" src="@/assets/payment/go.png" >
</span>
</div>
<!-- <list-item :item-height="44">
<item :showArrow="true" @click.native="selectPayType">
<div slot="name">支付渠道</div>
<input
slot="content" v-model="payTypeObj.payType_n" readonly>
</item>
</list-item> -->
</div>
<bottom-tab>
<tab-button class="foot" @click.native="checkPay">去支付</tab-button>
......@@ -139,12 +107,18 @@
<span>手续费</span>
<span>{{ serviceCharge }}</span>
</div>
<!-- <list-item :item-height="44">
<item :showArrow="true" @click.native="selectPayType">
<div slot="name">支付渠道</div>
<input
slot="content" v-model="payTypeObj.payType_n" readonly>
</item>
</list-item> -->
<div class="info-item" @click="show=true">
<span>银行卡</span>
<span>支付渠道</span>
<span>
<img :src="checkType.img" >
<span>{{ checkType.bank_full_name }}</span>
<span v-if="sectctNong">({{ selectLast(checkType) }})</span>
<img :src="payTypeObj.img" >
<span>{{ payTypeObj.payType_n }}</span>
<img class="arrow" src="@/assets/payment/go.png" >
</span>
</div>
......@@ -174,6 +148,7 @@ import zg from '@/assets/payment/zg.png'
import zs from '@/assets/payment/zs.png'
import zx from '@/assets/payment/zx.png'
import bank from '@/assets/payment/bank.png'
import yinlian from '@/assets/payment/bind.png'
export default {
name: 'PayEntry',
components: {},
......@@ -193,6 +168,12 @@ export default {
bank_full_name: '',
bank_account_num: '',
},
payTypeList: [],
payTypeObj: {
img: ny,
payType: 'ABC_PAY',
payType_n: '农行支付',
},
confirm: false,
show: false,
showOutside: false,
......@@ -215,9 +196,9 @@ export default {
}
},
text () {
if (this.checkType.bank_full_name.indexOf('农业') !== -1) {
if (this.payTypeObj.payType_n.indexOf('农行') !== -1) {
return 'K码/K令支付'
} else if (this.checkType.bank_full_name.indexOf('农业') === -1) {
} else if (this.payTypeObj.payType_n.indexOf('农行') === -1) {
return '银联支付'
}
},
......@@ -225,7 +206,7 @@ export default {
return (this.money * (this.rate / 100)).toFixed(2)
},
rate () {
return this.checkType.bank_full_name.indexOf('农业') !== -1 ? 0.0 : 0.18
return this.payTypeObj.payType_n.indexOf('农行') !== -1 ? 0.0 : 0.18
},
sumMoney () {
return (parseFloat(this.serviceCharge) + parseFloat(this.money)).toFixed(
......@@ -246,6 +227,11 @@ export default {
return notNong
},
},
watch: {
'payTypeObj.payType_n' () {
this.confirmToPay()
},
},
beforeRouteEnter (to, from, next) {
next(vm => {
vm.confirm = false
......@@ -255,6 +241,7 @@ export default {
vm.name = from.name
vm.getType()
vm.nongBank = []
vm.getPayType()
})
},
......@@ -262,38 +249,41 @@ export default {
this.money = this.$route.params.money
},
methods: {
selectPayType (e) {
let vm = this
vm.hlsPopup.selectList({
list: vm.payTypeList,
code: 'bp_type',
object: {},
returnItem: function (index, obj) {
vm.payTypeObj.payType = obj.bp_type
vm.payTypeObj.payType_n = obj.bp_type_n
},
})
},
getPayType () {
let vm = this
let url = process.env.basePath + 'payment_type_query'
let param = {}
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.payTypeList = res.lists.map(item => {
return {
code: item.pay_type,
code_name: item.pay_type_name,
}
})
}
})
},
selectImg (e) {
if (e.bank_full_name.indexOf('建设') !== -1) {
return js
} else if (e.bank_full_name.indexOf('农业') !== -1) {
if (e.code_name.indexOf('农行') !== -1) {
e.recommand = true
return ny
} else if (e.bank_full_name.indexOf('光大') !== -1) {
return gd
} else if (e.bank_full_name.indexOf('广发') !== -1) {
return gf
} else if (e.bank_full_name.indexOf('浦') !== -1) {
return pf
} else if (e.bank_full_name.indexOf('工商') !== -1) {
return gs
} else if (e.bank_full_name.indexOf('交通') !== -1) {
return jt
} else if (e.bank_full_name.indexOf('民生') !== -1) {
return ms
} else if (e.bank_full_name.indexOf('平安') !== -1) {
return pa
} else if (e.bank_full_name.indexOf('兴业') !== -1) {
return xy
} else if (e.bank_full_name.indexOf('邮') !== -1) {
return yzcx
} else if (e.bank_full_name.indexOf('中国') !== -1) {
return zg
} else if (e.bank_full_name.indexOf('招商') !== -1) {
return zs
} else if (e.bank_full_name.indexOf('中信') !== -1) {
return zx
} else {
return bank
} else if (e.code_name.indexOf('银联') !== -1) {
return yinlian
}
},
selectLast (item) {
......@@ -304,26 +294,16 @@ export default {
this.select = way
},
ischeck (way) {
if (way === 'one') {
this.checkType.bank_full_name = '支付宝'
this.checkType.img = zfb
this.sectctNong = false
} else if (way === 'two') {
this.checkType.bank_full_name = '微信'
this.checkType.img = wx
this.sectctNong = false
} else {
this.checkType.bank_full_name = way.bank_full_name
this.checkType.bank_account_num = way.bank_account_num
this.checkType.img = this.selectImg(way)
this.sectctNong = true
}
this.payTypeObj.payType = way.code
this.payTypeObj.payType_n = way.code_name
this.payTypeObj.img = this.selectImg(way)
this.show = false
this.showOutside = false
},
confirmToPay (e) {
let vm = this
let url = process.env.basePath + 'update_order_info'
let randomString = Math.floor(Math.random() * 21)
let url = process.env.basePath + 'update_order_info' + '&index' +
`'${randomString}'`
if (e) {
vm.pay_type = e.pay_type
vm.bank_account_id = e.bank_account_id
......@@ -332,14 +312,14 @@ export default {
info: {
order_id: vm.$route.params.order_id,
fee: vm.serviceCharge,
bank_account_id: vm.bank_account_id,
pay_type: vm.pay_type,
bank_account_id: '0',
pay_type: vm.payTypeObj.payType,
},
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.hlsPopup.hideLoading()
} else {
hlsPopup.showLongCenter(res.message)
}
......
......@@ -61,7 +61,7 @@
</div>
</div>
</div>
<div v-if="!isSuccess||!isFaild">
<div v-if="isShowpayInfo">
<div class="box-top">
<img src="@/assets/payment/bank-title.png" >
</div>
......@@ -103,6 +103,7 @@
</h-content>
<bottom-tab>
<tab-button v-if="showpay" class="foot" @click.native="pay">立即支付</tab-button>
<tab-button v-if="nextPay" class="foot" @click.native="pay">继续支付</tab-button>
<tab-button v-if="showSelect" class="foot" @click.native="searchResult">查询支付结果</tab-button>
<tab-button v-if="isGo" class="foot" @click.native="goMyInfo">返回个人中心</tab-button>
</bottom-tab>
......@@ -114,6 +115,7 @@ export default {
return {
name: '',
url: '',
showInfo: true, // 展示支付信息
text: this.$route.params.text,
info: {
order_number: '',
......@@ -128,11 +130,13 @@ export default {
isSuccess: false,
isFaild: false,
isGo: false,
nextPay: false,
}
},
beforeRouteEnter (to, from, next) {
next(vm => {
vm.showSelect = false
vm.nextPay = false
vm.showpay = true
vm.isSuccess = false
vm.isFaild = false
......@@ -143,6 +147,15 @@ export default {
vm.getInfo()
})
},
computed: {
isShowpayInfo () {
if (this.isSuccess ^ this.isFaild == 0) {
return true
} else if (this.isSuccess ^ this.isFaild == 1) {
return false
}
},
},
methods: {
changePage () {
this.$router.push({
......@@ -190,7 +203,6 @@ export default {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
Object.assign(vm.info, res.info)
vm.isGo = true
vm.showSelect = false
} else {
hlsPopup.showLongCenter(res.message)
......@@ -213,9 +225,33 @@ export default {
vm.isSuccess = false
hlsPopup.showLongCenter(res.error_message)
} else {
vm.isSuccess = true
vm.isFaild = false
hlsPopup.showLongCenter('交易成功')
if (res.status === '01') {
vm.nextPay = true
vm.isSuccess = false
vm.isFaild = false
hlsPopup.showLongCenter('支付未完成')
} else if (res.status === '02') {
vm.nextPay = true
vm.isSuccess = false
vm.isFaild = false
hlsPopup.showLongCenter('支付未完成')
} else if (res.status === '03') {
vm.isGo = true
vm.isSuccess = true
vm.isFaild = false
hlsPopup.showLongCenter('交易成功')
} else if (res.status === '04') {
vm.isGo = true
vm.isSuccess = true
vm.isFaild = false
hlsPopup.showLongCenter('交易完成')
} else {
vm.isGo = true
vm.isSuccess = false
vm.isFaild = true
hlsPopup.showLongCenter('交易失败')
}
}
} else {
hlsPopup.showLongCenter(res.message)
......
......@@ -217,12 +217,13 @@ export default {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.info = res.prj_lists
vm.info.forEach(i => {
/* vm.info.forEach(i => {
i.con_lists.forEach(j => {
let num = (parseFloat(j.due_amount) - parseFloat(j.received_amount))
// let num = (parseFloat(j.due_amount) - parseFloat(j.received_amount))
let num = ''
vm.$set(j, 'amount', num)
})
})
})*/
vm.showList = vm.info
} else {
hlsPopup.showLongCenter(res.message)
......@@ -233,11 +234,15 @@ export default {
let pushList = []
this.info.forEach(i => {
i.con_lists.forEach(j => {
let obj = {}
obj.bp_id = window.localStorage.getItem('bp_id')
obj.amount = j.amount
obj.contract_id = j.contract_id
pushList.push(obj)
if (!j.amount || j.amount === 0) {
}else{
let obj = {}
obj.bp_id = window.localStorage.getItem('bp_id')
obj.amount = j.amount
obj.contract_id = j.contract_id
pushList.push(obj)
}
})
})
return pushList
......
......@@ -9,62 +9,65 @@
</div>
</div>
</transition>
<transition name="trans">
<div v-show="confirm" class="modal-show-confirm">
<div class="down">
<div class="top">
<img src="@/assets/payment/back.png" @click="confirm=false" >
<span>确认付款方式</span>
</div>
<div class="info">
<div class="info-item">
<span>还款金额</span>
<span>¥{{ money |currency }}</span>
</div>
<div class="interest">
<span>本次交易收取{{ rate }}%手续费</span>
</div>
<div class="info-item">
<span>手续费</span>
<span>{{ serviceCharge |currency }}</span>
</div>
<div class="info-item" @click="show=true">
<span>支付渠道</span>
<span>
<img :src="payTypeObj.img" >
<span>{{ payTypeObj.payType_n }}</span>
<img class="arrow" src="@/assets/payment/go.png" >
</span>
</div>
<!-- <list-item :item-height="44">
<item :showArrow="true" @click.native="selectPayType">
<div slot="name">支付渠道</div>
<input
slot="content" v-model="payTypeObj.payType_n" readonly>
</item>
</list-item> -->
</div>
<bottom-tab>
<tab-button class="footer" @click.native="checkPay">去支付</tab-button>
</bottom-tab>
</div>
</div>
</transition>
<transition name="trans">
<div v-show="show" class="modal-show-bank">
<div class="down">
<div class="top">
<img src="@/assets/payment/back.png" @click="show=false" >
<span>选择银行卡</span>
<span>选择支付渠道</span>
</div>
<scroll>
<list-item :item-height="56" class="pay-way">
<item
v-for="(item,index) in nongBank"
:proportion="[7,1,1]"
:key="item.bank_account_num"
@click.native="isSelect(`nong${index}`);ischeck(item);confirmToPay(item)"
>
<div slot="name" style="flex=3">
<img :src="selectImg(item)" alt class="icon" >
{{ item.bank_full_name }}({{ selectLast(item) }})
<img
v-show="item.recommand"
class="push"
src="@/assets/payment/push.png"
>
</div>
<section slot="content">
<img v-show="select === `nong${index}`" src="@/assets/payment/select.png" alt >
<img v-show="select !== `nong${index}`" src="@/assets/payment/unselect.png" alt >
</section>
</item>
<!-- <item :proportion="[7,1,1]" @click.native="isSelect('one');ischeck('one')">
<div slot="name">
<img src="@/assets/payment/alipay.png" alt class="icon1" > 支付宝
</div>
<section slot="content">
<img v-show="select === 'one'" src="@/assets/payment/select.png" alt >
<img v-show="select !== 'one'" src="@/assets/payment/unselect.png" alt >
</section>
</item>
<item :proportion="[7,1,1]" @click.native="isSelect('two');ischeck('two')">
<div slot="name">
<img src="@/assets/payment/wx.png" alt class="icon2" > 微信
</div>
<section slot="content">
<img v-show="select === 'two'" src="@/assets/payment/select.png" alt >
<img v-show="select !== 'two'" src="@/assets/payment/unselect.png" alt >
</section>
</item> -->
<item
v-for="(item,index) in newList"
v-for="(item,index) in payTypeList"
:proportion="[7,1,1]"
:key="index"
@click.native="isSelect(`three${index}`);ischeck(item);confirmToPay(item)"
>
<div slot="name" style="flex=3">
<img :src="selectImg(item)" alt class="icon" >
{{ item.bank_full_name }}({{ selectLast(item) }})
{{ item.code_name }}
<img
v-show="item.recommand"
class="push"
......@@ -79,40 +82,6 @@
</list-item>
</scroll>
</div>
</div></transition>
<transition name="trans">
<div v-show="confirm" class="modal-show-confirm">
<div class="down">
<div class="top">
<img src="@/assets/payment/back.png" @click="confirm=false" >
<span>确认付款方式</span>
</div>
<div class="info">
<div class="info-item">
<span>还款金额</span>
<span>¥{{ money |currency }}</span>
</div>
<div class="interest">
<span>本次交易收取{{ rate }}%手续费</span>
</div>
<div class="info-item">
<span>手续费</span>
<span>{{ serviceCharge |currency }}</span>
</div>
<div class="info-item" @click="show=true">
<span>银行卡</span>
<span>
<img :src="checkType.img" >
<span>{{ checkType.bank_full_name }}</span>
<span v-if="sectctNong">({{ selectLast(checkType) }})</span>
<img class="arrow" src="@/assets/payment/go.png" >
</span>
</div>
</div>
<bottom-tab>
<tab-button class="footer" @click.native="checkPay">立即支付</tab-button>
</bottom-tab>
</div>
</div>
</transition>
<h-header :proportion="[5,1,1]" class="bar-custom">
......@@ -140,11 +109,10 @@
<span>{{ serviceCharge }}</span>
</div>
<div class="info-item" @click="show=true">
<span>银行卡</span>
<span>支付渠道</span>
<span>
<img :src="checkType.img" >
<span>{{ checkType.bank_full_name }}</span>
<span v-if="sectctNong">({{ selectLast(checkType) }})</span>
<img :src="payTypeObj.img" >
<span>{{ payTypeObj.payType_n }}</span>
<img class="arrow" src="@/assets/payment/go.png" >
</span>
</div>
......@@ -190,6 +158,12 @@ export default {
bank_full_name: '',
bank_account_num: '',
},
payTypeList: [],
payTypeObj: {
img: ny,
payType: 'ABC_PAY',
payType_n: '农行支付',
},
confirm: false,
show: false,
downNum: false,
......@@ -211,9 +185,9 @@ export default {
}
},
text () {
if (this.checkType.bank_full_name.indexOf('农业') !== -1) {
if (this.payTypeObj.payType_n.indexOf('农行') !== -1) {
return 'K码/K令支付'
} else if (this.checkType.bank_full_name.indexOf('农业') === -1) {
} else if (this.payTypeObj.payType_n.indexOf('农行') === -1) {
return '银联支付'
}
},
......@@ -221,7 +195,7 @@ export default {
return (this.money * (this.rate / 100)).toFixed(2)
},
rate () {
return this.checkType.bank_full_name.indexOf('农业') !== -1 ? 0.00 : 0.18
return this.payTypeObj.payType_n.indexOf('农行') !== -1 ? 0.00 : 0.18
},
sumMoney () {
return (parseFloat(this.serviceCharge) + parseFloat(this.money)).toFixed(
......@@ -250,17 +224,49 @@ export default {
vm.money = vm.$route.params.sumMoney
}
vm.getType()
vm.getPayType()
// vm.nongBank = []
})
},
methods: {
selectPayType (e) {
let vm = this
vm.hlsPopup.selectList({
list: vm.payTypeList,
code: 'bp_type',
object: {},
returnItem: function (index, obj) {
vm.payTypeObj.payType = obj.bp_type
vm.payTypeObj.payType_n = obj.bp_type_n
},
})
},
getPayType () {
let vm = this
let url = process.env.basePath + 'payment_type_query'
let param = {}
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.payTypeList = res.lists.map(item => {
return {
code: item.pay_type,
code_name: item.pay_type_name,
}
})
}
})
},
affirm () {
this.confirm = true
this.confirmToPay()
},
confirmToPay (e) {
let vm = this
let url = process.env.basePath + 'update_order_info'
let randomString = Math.floor(Math.random() * 21)
let url = process.env.basePath + 'update_order_info' + '&index' +
`'${randomString}'`
if (e) {
vm.pay_type = e.pay_type
vm.bank_account_id = e.bank_account_id
......@@ -269,8 +275,8 @@ export default {
info: {
order_id: vm.$route.params.order_id,
fee: vm.serviceCharge,
bank_account_id: vm.bank_account_id,
pay_type: vm.pay_type,
bank_account_id: '0',
pay_type: vm.payTypeObj.payType,
},
}
hlsPopup.showLoading('请稍候')
......@@ -319,20 +325,9 @@ export default {
})
},
ischeck (way) {
if (way === 'one') {
this.checkType.bank_full_name = '支付宝'
this.checkType.img = zfb
this.sectctNong = false
} else if (way === 'two') {
this.checkType.bank_full_name = '微信'
this.checkType.img = wx
this.sectctNong = false
} else {
this.checkType.bank_full_name = way.bank_full_name
this.checkType.bank_account_num = way.bank_account_num
this.checkType.img = this.selectImg(way)
this.sectctNong = true
}
this.payTypeObj.payType = way.code
this.payTypeObj.payType_n = way.code_name
this.payTypeObj.img = this.selectImg(way)
this.show = false
},
selectLast (item) {
......@@ -340,35 +335,11 @@ export default {
return num.substring(num.length - 4)
},
selectImg (e) {
if (e.bank_full_name.indexOf('建设') !== -1) {
return js
} else if (e.bank_full_name.indexOf('农业') !== -1) {
if (e.code_name.indexOf('农行') !== -1) {
e.recommand = true
return ny
} else if (e.bank_full_name.indexOf('光大') !== -1) {
return gd
} else if (e.bank_full_name.indexOf('广发') !== -1) {
return gf
} else if (e.bank_full_name.indexOf('浦') !== -1) {
return pf
} else if (e.bank_full_name.indexOf('工商') !== -1) {
return gs
} else if (e.bank_full_name.indexOf('交通') !== -1) {
return jt
} else if (e.bank_full_name.indexOf('民生') !== -1) {
return ms
} else if (e.bank_full_name.indexOf('平安') !== -1) {
return pa
} else if (e.bank_full_name.indexOf('兴业') !== -1) {
return xy
} else if (e.bank_full_name.indexOf('邮') !== -1) {
return yzcx
} else if (e.bank_full_name.indexOf('中国') !== -1) {
return zg
} else if (e.bank_full_name.indexOf('招商') !== -1) {
return zs
} else if (e.bank_full_name.indexOf('中信') !== -1) {
return zx
} else if (e.code_name.indexOf('银联') !== -1) {
return yinlian
}
},
goSuccess () {
......
<!--
* @Description: 产品展示列表
* @Author: y/>e: 2019-10-16 14:39:07
* @LastEditors: Please set LastEditors
* @LastEditors : Please set LastEditors
-->
<template>
<h-view id="prolist" class="public-style" title="产品查询">
......@@ -47,6 +47,11 @@
</list-item>
</div>
</scroll>
<div v-if="lists.length===0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
<script>
......@@ -206,6 +211,15 @@ export default {
</script>
<style lang='less'>
#prolist {
.display {
position: fixed;
top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.search {
background-color: #fff;
padding: 8px 12px;
......
......@@ -33,6 +33,11 @@
</list-item>
</section>
</scroll>
<div v-if="showList.length === 0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
......@@ -177,6 +182,15 @@ export default {
<style lang="less" rel="stylesheet">
#reimburse {
.display {
position: fixed;
// top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.h-header-btn {
img {
width: 16px;
......
......@@ -2,7 +2,7 @@
* @Description: 附件信息
* @Author: your name
* @Date: 2019-09-20 09:35:11
* @LastEditTime : 2019-12-23 19:17:03
* @LastEditTime : 2019-12-26 14:42:49
* @LastEditors : Please set LastEditors
-->
<template>
......@@ -890,7 +890,7 @@ export default {
}
vm.carAttachmentId = res.lists[0].attachment_id
break
case 'REAL_EST_CERTIFICATE': // 行驶证
case 'REAL_EST_CERTIFICATE': // 不动产
if (!vm.propertyFlag) {
vm.propertyImg = res.lists[0].url
}
......@@ -901,8 +901,6 @@ export default {
vm.dowload_list = [...res.lists]
break
default:
// vm.dowload_list.push(res.lists[0])
// console.log('dowload_list.............', vm.dowload_list)
}
} else {
hlsPopup.showLongCenter(res.message)
......@@ -1013,8 +1011,6 @@ export default {
remove_upload_list (attachment_id, index) {
let vm = this
vm.upload_list = vm.upload_list.filter(item => { return item.attachment_id !== attachment_id })
// vm.upload_list.remove(index)
// vm.upload_list.sort()
},
// 删除图片
delete_pic (attachment_id) {
......
......@@ -48,6 +48,11 @@
</div>
</div>
</scroll>
<div v-if="showLists.length === 0">
<div class="display">
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
</h-view>
</template>
<script>
......@@ -380,6 +385,15 @@ export default {
</script>
<style lang="less">
#videoList {
.display {
position: fixed;
// top: 0;
img {
width: 100%;
height: 100%;
// margin-top: -70px;
}
}
.search {
background-color: #fff;
padding: 8px 12px;
......
......@@ -57,7 +57,7 @@ import ContractDetail from '@/pages/ContractSigning/contract-detail'
import ContractContent from '@/pages/ContractSigning/contract-content'
import EntryInfo from '@/pages/ContractSigning/entry-info'
import ElectronicSign from '@/pages/ContractSigning/electronic-sign'
/*import BodyCheck from '@/pages/ContractSigning/body-check'*/
/* import BodyCheck from '@/pages/ContractSigning/body-check' */
import ContractRepayPlan from '@/pages/ContractSigning/contract-repay-plan'
// 首付款支付
......@@ -233,21 +233,21 @@ export default new Router({
{path: '/entry-info', component: EntryInfo, name: 'EntryInfo', meta: {keepAlive: true}},
{path: '/contract-repay-plan', component: ContractRepayPlan, name: 'ContractRepayPlan', meta: {keepAlive: true}},
{path: '/electronic-sign', component: ElectronicSign, name: 'ElectronicSign', meta: {keepAlive: true}},
/* {path: '/body-check', component: BodyCheck, name: 'BodyCheck', meta: {keepAlive: true}},*/
/* {path: '/body-check', component: BodyCheck, name: 'BodyCheck', meta: {keepAlive: true}}, */
// 首付款支付
{path: '/first-pay', component: FirstPay, name: 'FirstPay', meta: {keepAlive: true}},
{path: '/pay-entry', component: PayEntry, name: 'PayEntry', meta: {keepAlive: true}},
{path: '/contract-record', component: ContractRecord, name: 'ContractRecord', meta: {keepAlive: true}},
// 款项支付
{path: '/payment-pay-entry', component: PaymentPayEntry, name: 'PaymentPayEntry', meta: {keepAlive: false}},
{path: '/payment-pay-entry', component: PaymentPayEntry, name: 'PaymentPayEntry', meta: {keepAlive: true}},
{path: '/new-list', component: NewList, name: 'NewList', meta: {keepAlive: true}},
{path: '/payment-contract-record', component: PaymentContractRecord, name: 'PaymentContractRecord', meta: {keepAlive: true}},
// 保证金支付
{path: '/margin-first-pay', component: MarginFirstPay, name: 'MarginFirstPay', meta: {keepAlive: true}},
{path: '/margin-pay-entry', component: MarginPayEntry, name: 'MarginPayEntry', meta: {keepAlive: true}},
// 支付页
{path: '/pay-page', component: PayPage, name: 'PayPage', meta: {keepAlive: true}},
{path: '/pay-page', component: PayPage, name: 'PayPage', meta: {keepAlive: false}},
// 产品查询
{path: '/query-home', component: QueryHome, name: 'QueryHome', meta: {keepAlive: true}},
{path: '/product-detailed', component: ProDetailed, name: 'ProDetailed', meta: {keepAlive: true}},
......@@ -296,7 +296,6 @@ export default new Router({
{path: '/create-base-info', component: CreateBaseInfo, name: 'CreateBaseInfo', meta: {keepAlive: true}},
{path: '/create-rent-info', component: CreateRentInfo, name: 'CreateRentInfo', meta: {keepAlive: true}},
{path: '/create-enclosure-info', component: CreateEnclosureInfo, name: 'CreateEnclosureInfo', meta: {keepAlive: true}},
// 我的发票
{path: '/invoice', component: MyInvoice, name: 'MyInvoice', meta: {keepAlive: false}},
],
......
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no,width=device-width,viewport-fit=cover"><meta name=format-detection content="telephone=no"><meta name=format-detection content="email=no"><meta name=apple-mobile-web-app-capable content=yes><meta name=apple-mobile-web-app-status-bar-style content=black><script type=text/javascript src=./static/vuePlatform.js></script><script type=text/javascript src=./static/prototype.js></script><script type=text/javascript src=cordova.js></script><script type=text/javascript src="http://api.map.baidu.com/api?v=2.0&ak=o7fTnpVAGzXKN7SirV8xGU2xzWQS2NrI"></script><title>徐工融租</title><link href=./static/css/app.d8b40c2ca4c1ada083d556818fb9edcb.css rel=stylesheet></head><body><div id=app-box></div><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.efd596b798e6119ce4a4.js></script><script type=text/javascript src=./static/js/app.3aa55f0f2ea9e3dec22c.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no,width=device-width,viewport-fit=cover"><meta name=format-detection content="telephone=no"><meta name=format-detection content="email=no"><meta name=apple-mobile-web-app-capable content=yes><meta name=apple-mobile-web-app-status-bar-style content=black><script type=text/javascript src=./static/vuePlatform.js></script><script type=text/javascript src=./static/prototype.js></script><script type=text/javascript src=cordova.js></script><script type=text/javascript src="http://api.map.baidu.com/api?v=2.0&ak=o7fTnpVAGzXKN7SirV8xGU2xzWQS2NrI"></script><title>徐工融租</title><link href=./static/css/app.6993e65c3c23fe091516186ea68777ec.css rel=stylesheet></head><body><div id=app-box></div><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.e547499500fbe65e7169.js></script><script type=text/javascript src=./static/js/app.15189d51f1772069bb43.js></script></body></html>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment