Commit 08a87b5f authored by linxin's avatar linxin

Merge branch 'liuxin' into develop

parents 90d121d8 699cfd85
Pipeline #4185 canceled with stages
......@@ -100,10 +100,6 @@ export default {
vm.pagenum++
vm.$refs.scroll.update(false)
}
// vm.lists = res.lists
// if (res.listst.length >= 0 && res.lists.length < 10) {
// vm.$refs.scroll.update(true)
// }
} else {
hlsPopup.showLongCenter(res.message)
}
......
......@@ -6,7 +6,7 @@
<span>合同记录</span>
</div>
</h-header>
<h-content class="my-content" style="margin-top:-1px">
<div class="my-content" style="margin-top:-1px">
<div class="top-head">
<div class="center">
<div class="now-pay">
......@@ -18,7 +18,9 @@
</div>
</div>
</div>
<section class="pay-content">
<scroll
ref="scroll" :updateData="[prj_lists]" :pullUp="true" class="pay-content"
@pullingUp="getDetail">
<section v-for="(item,index) in prj_lists" :key="index" class="contract-item">
<div class="header">
<img src="@/assets/payment/file.png" >
......@@ -40,21 +42,21 @@
</div>
</div>
</section>
</section>
<div class="prompt">
<div>
<img src="@/assets/payment/prompt.png" alt >
</div>
<div>
<p>温馨提示</p>
<p>推荐使用农行卡,农行卡支付免收手续费!</p>
<p>由于存在款项到账时差性,“已还金额”字段可能XXX,给您造成的不便,请谅解,谢谢!</p>
</div>
</scroll>
</div>
<div class="prompt has-footer">
<div>
<img src="@/assets/payment/prompt.png" alt >
</div>
<bottom-tab>
<tab-button class="footer" @click.native="createDetail">&nbsp;&nbsp;</tab-button>
</bottom-tab>
</h-content>
<div>
<p>温馨提示</p>
<p>推荐使用农行卡,农行卡支付免收手续费!</p>
<p>由于存在款项到账时差性,“已还金额”字段可能XXX,给您造成的不便,请谅解,谢谢!</p>
</div>
</div>
<bottom-tab>
<tab-button class="footer" @click.native="createDetail">&nbsp;&nbsp;</tab-button>
</bottom-tab>
</h-view>
</template>
......@@ -67,6 +69,7 @@ export default {
data () {
return {
money: 0,
pagenum: 1,
prj_lists: [],
}
},
......@@ -95,7 +98,6 @@ export default {
vm.money = a
})
} else if (notNaN.length === 0) {
debugger
vm.money = 0
}
}
......@@ -118,12 +120,30 @@ export default {
let url = process.env.basePath + 'payment_prj_list_query'
let param = {
bp_id: window.localStorage.getItem('bp_id'),
pagenum: vm.pagenum,
pagesize: 10,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.prj_lists = res.prj_lists
let returnData = []
returnData = res.prj_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.prj_lists.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.prj_lists.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(false)
}
vm.prj_lists.forEach(i => {
i.cf_lists.forEach(j => {
let num = parseFloat(j.due_amount) - parseFloat(j.received_amount)
......@@ -220,16 +240,17 @@ export default {
.pay-content {
position: absolute;
bottom: 150px;
width: 100%;
left:0;
right:0;
margin:auto;
width: 355px;
//margin-top:-60px;
// height: 370px;
height:7.4rem;
height:9rem;
overflow: scroll;
//background-color: #FFF;
.contract-item {
width: 95%;
width: 100%;
background-color: #fff;
margin: 0 auto;
box-shadow: 0 1px 3px 2px rgba(168, 168, 168, 0.14);
.header {
......
......@@ -6,7 +6,7 @@
<span>合同记录</span>
</div>
</h-header>
<h-content style="margin-top:-1px;">
<div style="margin-top:-1px;">
<div class="top-head">
<div class="center">
<div class="now-pay">
......@@ -19,17 +19,19 @@
</div>
</div>
<div class="search">
<input type="text" placeholder="请输入合同号/车架号/承租人名称" >
<input v-model="keyWords" type="text" placeholder="请输入合同号/车架号/承租人名称" >
<img src="@/assets/payment/search.png" alt >
</div>
<section class="pay-content">
<section v-for="(item,index) in info" :key="index" class="contract-item">
<scroll
ref="scroll" :updateData="[showList]" :pullUp="true" class="pay-content"
@pullingUp="loadMore">
<section v-for="(item,index) in showList" :key="index" class="contract-item">
<div class="header">
<img src="@/assets/payment/file.png" alt >
<p>&nbsp; {{ item.project_number }}</p>
<span>还款中</span>
</div>
<div class="content">
<div class="my-content">
<div v-for="(detail,index) in item.con_lists" :key="index" class="item">
<div class="list">
<div>
......@@ -67,7 +69,6 @@
<span>合格证编号</span>
<span>{{ detail.certificate_number }}</span>
</div>
<div>
<span>本次还款</span>
<section>
......@@ -78,14 +79,14 @@
</div>
</div>
</section>
<list-item :item-height="44">
<item>
<div slot="name">逾期利息</div>
<span slot="content">{{ money|currency }}</span>
</item>
</list-item>
</section>
<div class="prompt">
</scroll>
<list-item :item-height="44" class="rate">
<item>
<div slot="name">逾期利息</div>
<span slot="content">{{ money|currency }}</span>
</item>
</list-item>
<div class="prompt has-footer">
<div>
<img src="@/assets/payment/prompt.png" alt >
</div>
......@@ -98,7 +99,7 @@
<bottom-tab>
<tab-button class="footer" @click.native="payDetail()">&nbsp;&nbsp;</tab-button>
</bottom-tab>
</h-content>
</div>
</h-view>
</template>
<script>
......@@ -110,9 +111,14 @@ export default {
},
beforeRouteEnter (to, from, next) {
next(vm => {
vm.pagenum = 1
vm.searchPagenum = 1
vm.getRentInfo()
vm.money = vm.$route.params.money
vm.sumMoney = vm.money
vm.info = []
vm.showList = []
vm.searchList = []
})
},
data () {
......@@ -121,7 +127,12 @@ export default {
money: '',
reFund1: '',
reFund2: '',
keyWords: '',
pagenum: 1,
searchPagenum: 1,
info: [],
showList: [],
searchList: [],
}
},
computed: {},
......@@ -165,26 +176,127 @@ export default {
},
deep: true,
},
keyWords (newVal, oldVal) {
this.search()
},
},
activated () {},
methods: {
loadMore () {
if (this.keyWords) {
this.searchMore()
} else {
this.getRentInfo()
}
},
searchMore () {
let vm = this
let url = process.env.basePath + 'payment_con_list_query'
let param = {
bp_id: window.localStorage.getItem('bp_id'),
pagesize: 10,
pagenum: vm.searchPagenum,
searchInput: vm.keyWords,
}
vm.hlsPopup.showLoading('数据加载中,请稍后!')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
let returnData = []
returnData = res.prj_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.searchList.push(array[index])
})
vm.searchPagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.searchList.push(array[index])
})
vm.searchPagenum++
vm.$refs.scroll.update(false)
}
vm.searchList.forEach(i => {
i.con_lists.forEach(j => {
let num = (parseFloat(j.due_amount) - parseFloat(j.received_amount))
vm.$set(j, 'amount', num)
})
})
vm.showList = vm.searchList
}
})
},
search () {
let vm = this
vm.searchPagenum = 2
vm.$refs.scroll.scrollToTop()
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'payment_con_list_query' +
'&index' +
`'${randomString}'`
let param = {
bp_id: window.localStorage.getItem('bp_id'),
searchInput: vm.keyWords,
pagesize: 10,
pagenum: 1,
}
vm.hlsPopup.showLoading('数据加载中,请稍后!')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.searchList = res.prj_lists
vm.searchList.forEach(i => {
i.con_lists.forEach(j => {
let num = (parseFloat(j.due_amount) - parseFloat(j.received_amount))
vm.$set(j, 'amount', num)
})
})
vm.showList = vm.searchList
vm.$refs.scroll.update(false)
}
})
},
getRentInfo () {
let vm = this
let url = process.env.basePath + 'payment_con_list_query'
let param = {
bp_id: window.localStorage.getItem('bp_id'),
pagesize: 10,
pagenum: vm.pagenum,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.info = res.prj_lists
// vm.info = res.prj_lists
let returnData = []
returnData = res.prj_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.info.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.info.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(false)
}
vm.info.forEach(i => {
i.con_lists.forEach(j => {
let num = (parseFloat(j.due_amount) - parseFloat(j.received_amount))
vm.$set(j, 'amount', num)
})
})
vm.showList = vm.info
} else {
hlsPopup.showLongCenter(res.message)
}
......@@ -310,10 +422,12 @@ export default {
}
}
.pay-content {
width: 100%;
width: 95%;
position: absolute;
bottom: 150px;
height: 57%;
left:0; right:0;
margin:auto;
height: 50%;
overflow: scroll;
.contract-item {
background-color: #fff;
......@@ -354,7 +468,7 @@ export default {
letter-spacing: 0;
}
}
.content {
.my-content {
margin-bottom: 8px;
.item {
padding: 4px 0;
......@@ -436,7 +550,12 @@ export default {
}
}
}
.rate{
position: absolute;
width: 100%;
bottom: 134px;
box-shadow: -2px -2px 10px #ccc;
}
.prompt {
position: absolute;
width: 100%;
......@@ -444,7 +563,6 @@ export default {
background: rgba(142, 195, 30, 0.1);
height: 111px;
display: flex;
div:first-child {
flex: 1;
padding: 16px 0 0 16px;
......@@ -484,6 +602,9 @@ export default {
background: @headerColor;
color: white;
}
.hls-list-item{
}
}
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
......
<template>
<h-view id="result" class="public-style">
<h-header :proportion="[5,1,1]" class="bar-custom">
<div slot="left" class="h-header-btn">
<img src="@/assets/userBind/arrow.png" @click="changePage" >
<span>支付中心</span>
</div>
</h-header>
<h-content>
<div class="my-content">
<img class="flag" src="@/assets/payment/success.png" >
<h3>支付成功</h3>
<p>感谢您的还款,我们将尽快为您结清金额</p>
<div class="info">
<div class="left">
<list-item :item-height="30">
<item>
<div slot="name" class="name">时间</div>
<div slot="content">{{ date }}</div>
</item>
<item>
<div slot="name" class="name">姓名</div>
<div slot="content">{{ userName }}</div>
</item>
<item>
<div slot="name" class="name">还款金额</div>
<div slot="content">{{ money|currency }}</div>
</item>
</list-item>
</div>
</div>
</div>
</h-content>
</h-view>
</template>
<script>
export default {
data () {
return {
date: null,
userName: window.localStorage.getItem('bp_name'),
isShow: false,
name: null,
money: this.$route.params.money,
}
},
beforeRouteEnter (to, from, next) {
next(vm => {
vm.name = from.name
window.localStorage.setItem('money', vm.money)
})
},
watch: {
'date': {
handler (newVal, oldVal) {
let time = new Date()
let year = time.getFullYear()
let month = time.getMonth() + 1
let day = time.getDate()
this.date = `${year}-${month}-${day}`
},
immediate: true,
},
},
methods: {
changePage () {
if (this.name === 'PayEntry') {
this.$router.replace({
name: 'FirstPay',
})
} else if (this.name === 'PaymentPayEntry') {
this.$router.replace({
name: 'NewList',
})
}
},
},
}
</script>
<style lang="less" scoped>
#result {
background-color: #fafafa;
.my-content {
height: 400px;
background-color: #fff;
.flag {
display: block;
margin: 0 auto;
width: 72px;
padding-top: 48px;
}
h3 {
margin: 0 auto;
margin-top: 32px;
width: 83px;
font-weight: 600;
font-family: PingFangSC-Semibold;
font-size: 20px;
color: #383f45;
letter-spacing: 0.71px;
}
p {
margin: 0 auto;
margin-top: 10px;
width: 234px;
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56, 63, 69, 0.6);
letter-spacing: 0;
}
.info {
width: 343px;
margin: 0 auto;
border-top: 1px solid #d9dbdf;
margin-top: 48px;
.name {
font-family: PingFangSC-Regular;
font-size: 14px;
color: rgba(56, 63, 69, 0.6);
letter-spacing: 0.5px;
}
.left {
padding-top: 10px;
}
}
}
}
</style>
......@@ -22,11 +22,11 @@
</item>
<item>
<div slot="name">收款账号</div>
<div slot="content">{{ '暂无字段' }}</div>
<div slot="content">{{ detail.received_amount }}</div>
</item>
<item>
<div slot="name">收款账户名称</div>
<div slot="content">{{ '暂无字段' }}</div>
<div slot="content">{{ detail.received_amount_name }}</div>
</item>
<item>
<div slot="name">商业伙伴</div>
......@@ -38,21 +38,21 @@
</item>
<item>
<div slot="name">付款账号</div>
<div slot="content">{{ '暂无字段' }}</div>
<div slot="content">{{ detail.pay_amount }}</div>
</item>
<item>
<div slot="name">付款账户名称</div>
<div slot="content">{{ '暂无字段' }}</div>
<div slot="content">{{ detail.pay_amount_name }}</div>
</item>
</list-item>
<div v-for="(list,index) in conList" class="contract" :key="index">
<div v-for="(list,index) in conList" :key="index" class="contract">
<div>
<div class="top">
<img src="@/assets/reimburseMyself/q.png" >
<span class="number">合同号</span>
<span>{{ list.project_number }}</span>
</div>
<div v-for="(item,indexTwo) in list.con_lists" class="bottom" :key="indexTwo">
<div v-for="(item,indexTwo) in list.con_lists" :key="indexTwo" class="bottom">
<list-item >
<item>
<div slot="name">首付款</div>
......
......@@ -6,24 +6,24 @@
<h-view id="reimburse" class="public-style" style="height: 100%">
<h-header :proportion="[5,1,1]" class="bar-custom">
<div slot="left" class="h-header-btn">
<img src="@/assets/userBind/arrow.png" @click="$routeGo()" />
<img src="@/assets/userBind/arrow.png" @click="$routeGo()" >
<span>我的还款</span>
</div>
</h-header>
<div class="search has-header">
<input v-model="keyWords" type="text" placeholder="请输入还款金额" />
<input v-model="keyWords" type="text" placeholder="请输入还款金额" >
</div>
<scroll ref="scroll" :updateData="[reimburseList]" :pullUp="true">
<scroll ref="scroll" :updateData="[showList]" :pullUp="true" @pullingUp="loadMore">
<section class="reimburse-wrap">
<list-item
v-for="(list,index) in reimburseList"
v-for="(list,index) in showList"
:key="index"
@click.native="godetail(list.order_id)"
>
<item>
<img slot="left-icon" src="@/assets/reimburseMyself/reimburse.png" class="left-icon" />
<img slot="left-icon" src="@/assets/reimburseMyself/reimburse.png" class="left-icon" >
<div slot="name">还款金额</div>
<div slot="content" class="money-font">{{ list.orderamount | currency }}</div>
<div slot="content" class="money-font">{{ list.order_amount|currency }}</div>
</item>
<item>
<div slot="left-icon" class="left-icon" />
......@@ -38,47 +38,141 @@
<script>
export default {
data() {
data () {
return {
reimburseList: [],
keyWords: ""
};
searchList: [],
showList: [],
keyWords: '',
pagenum: 1,
searchPagenum: 1,
}
},
beforeRouteEnter(to, from, next) {
beforeRouteEnter (to, from, next) {
next(vm => {
// if (from.name === 'MyInfo') {
vm.getList();
vm.pagenum = 1
vm.searchPagenum = 1
vm.getList()
// }
});
})
},
watch: {
keyWords (newVal, oldVal) {
this.search()
},
},
methods: {
godetail(e) {
godetail (e) {
this.$router.push({
name: "ReimburseDetail",
name: 'ReimburseDetail',
params: {
order_id: e
order_id: e,
},
})
},
loadMore () {
if (this.keyWords) {
this.searchMore()
} else {
this.getList()
}
},
searchMore () {
let vm = this
let url = process.env.basePath + 'my_repayment_query'
let param = {
user_phone: window.localStorage.getItem('user_phone'),
pagesize: 10,
pagenum: vm.searchPagenum,
searchInput: vm.keyWords,
}
vm.hlsPopup.showLoading('数据加载中,请稍后!')
vm.hlsHttp.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.searchList.push(array[index])
})
vm.searchPagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.searchList.push(array[index])
})
vm.searchPagenum++
vm.$refs.scroll.update(false)
}
vm.showList = vm.searchList
}
})
},
search () {
let vm = this
vm.searchPagenum = 2
vm.$refs.scroll.scrollToTop()
let randomString = Math.floor(Math.random() * 21)
let url =
process.env.basePath +
'my_repayment_query' +
'&index' +
`'${randomString}'`
let param = {
user_phone: window.localStorage.getItem('user_phone'),
searchInput: vm.keyWords,
pagesize: 10,
pagenum: 1,
}
vm.hlsPopup.showLoading('数据加载中,请稍后!')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.searchList = res.lists
vm.showList = res.lists
vm.$refs.scroll.update(false)
}
});
})
},
getList() {
let vm = this;
let url = process.env.basePath + "my_repayment_query";
getList () {
let vm = this
let url = process.env.basePath + 'my_repayment_query'
let param = {
user_phone: window.localStorage.getItem("user_phone")
};
vm.hlsPopup.showLoading("数据加载中,请稍后!");
vm.hlsHttp.post(url, param).then(function(res) {
vm.hlsPopup.hideLoading();
if (res.result === "S") {
vm.reimburseList = res.lists;
// if (res.lists.length > 0 && res.lists.length < 10) {
vm.$refs.scroll.update(true);
// }
user_phone: window.localStorage.getItem('user_phone'),
pagesize: 10,
pagenum: vm.pagenum,
}
vm.hlsPopup.showLoading('数据加载中,请稍后!')
vm.hlsHttp.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.reimburseList.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(true)
} else if (returnData.length === 10) {
vum.forEach(returnData, function (data, index, array) {
vm.reimburseList.push(array[index])
})
vm.pagenum++
vm.$refs.scroll.update(false)
}
vm.showList = vm.reimburseList
}
});
}
}
};
})
},
},
}
</script>
<style lang="less" rel="stylesheet">
......
This diff is collapsed.
......@@ -64,7 +64,6 @@ import ContractRepayPlan from '@/pages/ContractSigning/contract-repay-plan'
import FirstPay from '../pages/pay/firstPay/first-pay'
import PayEntry from '@/pages/pay/firstPay/pay-entry'
import ContractRecord from '@/pages/pay/firstPay/contract-record'
import Success from '@/pages/pay/success'
// 款项支付
import PaymentPayEntry from '@/pages/pay/payment/pay-entry'
import PaymentContractRecord from '@/pages/pay/payment/contract-record'
......@@ -234,7 +233,6 @@ export default new Router({
{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: '/success', component: Success, name: 'Success', meta: {keepAlive: false}},
// 款项支付
{path: '/payment-pay-entry', component: PaymentPayEntry, name: 'PaymentPayEntry', meta: {keepAlive: false}},
{path: '/new-list', component: NewList, name: 'NewList', meta: {keepAlive: true}},
......@@ -253,7 +251,7 @@ export default new Router({
{path: '/help-detail', component: HelpDetail, name: 'HelpDetail', meta: {keepAlive: true}},
{path: '/help-feedback', component: HelpFeedback, name: 'HelpFeedback', meta: {keepAlive: false}},
// 我的还款
{path: '/reimburse-myself-list', component: ReimburseMyselfList, name: 'ReimburseMyselfList', meta: {keepAlive: true}},
{path: '/reimburse-myself-list', component: ReimburseMyselfList, name: 'ReimburseMyselfList', meta: {keepAlive: false}},
{path: '/reimburse-detail', component: ReimburseDetail, name: 'ReimburseDetail', meta: {keepAlive: false}},
// 我的收藏
{path: '/my-product-list', component: MyProductList, name: 'MyProductList', meta: {keepAlive: true}},
......
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