Commit ff547fba authored by 786817560's avatar 786817560

Merge branch 'ren' into develop

parents 6c7ce965 c4a92fc4
<!--
* @Author: your name
* @Date: 2019-09-29 10:02:11
* @LastEditTime: 2019-12-18 19:32:47
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
-->
<template>
<h-view id="contract-create-list">
<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>
<div class="tab-style has-header">
<div :class="{'done':num === 1,'undone':num !== 1}" @click="num = 1;"><img :src="num === 1?check1:uncheck1"><span>待签约</span></div>
<div :class="{'done':num === 2,'undone':num !== 2}" @click="num = 2;"><img :src="num === 2?check2:uncheck2"><span>已签约</span></div>
</div>
<!-- 搜索 -->
<div class="search">
<input v-model="searchInput" type="text" placeholder="请输入合同号/承租人名称">
</div>
<scroll
ref="scroll"
:updateData="[showLists]"
:pullUp="true"
@pullingUp="loadMore"
>
<div class="wrap">
<div v-for="(item,index) in showLists" :key="index" class="contract-lists" >
<div class="pro-code" @click="goDetails(item)">
<img src="@/assets/distributorSign/fileIcon.png" alt="" class="file-icon">
<p>
<span>合同号</span>
<span>{{ item.project_number }}</span>
</p>
<img src="@/assets/constractSigning/righticon.png" alt="" class="arrow">
</div>
<div class="box">
<div><p>承租人</p><p>{{ item.bp_name }}</p></div>
<div><p>合同租金</p><p class="money">{{ item.total_price|currency }}</p></div>
<div><p>申请时间</p><p>{{ item.confirm_start_date }}</p></div>
</div>
</div>
</div>
</scroll>
<bottom-tab>
<tab-button class="footer">
<img class="add-img" src="@/assets/contractCreate/create-add.png" alt=""> 创建新合同
</tab-button>
</bottom-tab>
</h-view>
</template>
<script>
import Check1 from '@/assets/constractSigning/no-done.png'
import Check2 from '@/assets/constractSigning/yes-done.png'
import unCheck1 from '@/assets/constractSigning/no-undone.png'
import unCheck2 from '@/assets/constractSigning/yes-undone.png'
export default {
data () {
return {
num: 1,
check1: Check1,
check2: Check2,
uncheck1: unCheck1,
uncheck2: unCheck2,
searchInput: '', // 搜索内容
showLists: [
{ project_number: '201903022001', bp_name: 'zhangsan', total_price: '1000000', confirm_start_date: '2019-12-18' },
{ project_number: '201903022001', bp_name: 'zhangsan', total_price: '1000000', confirm_start_date: '2019-12-18' },
{ project_number: '201903022001', bp_name: 'zhangsan', total_price: '1000000', confirm_start_date: '2019-12-18' },
],
}
},
watch: {
},
activated () {
},
created () {
},
beforeRouteEnter (to, from, next) {
next(vm => {
})
},
methods: {
goDetails () {
this.$router.push({
name: 'SalesInfo',
})
},
loadMore () {},
},
}
</script>
<style lang="less" type="text/less">
#contract-create-list {
.tab-style{
display:flex;
width: 100%;
justify-content: center;
padding-top:12px;
padding-bottom: 8px;
align-items: center;
background-color: #fff;
box-shadow:0 2px 3px 0 rgba(220,220,221,0.50);
position: absolute;
z-index: 999;
div{
position: relative;
height: 32px;
width: 172px;
border-radius:16px;
border-radius: 16px;
font-family: PingFangSC-Semibold;
font-size: 14px;
letter-spacing: 0.43px;
margin: 0 4px;
line-height: 32px;
}
.undone{
background: rgba(220,220,221,0.26);
color: #383F45;
}
.done{
background: rgba(0,70,156,0.10);
color: #00469C;
}
img{
height: 20px;
display: block;
float: left;
margin: 6px 0 0 43px;
}
span{
position: absolute;
left:70px;
}
}
.search {
background-color: #fff;
padding: 8px 12px;
position: absolute;
width: 100%;
z-index: 100;
margin-bottom: 8px;
margin-top: 52px;
input {
padding-left: 12px;
border-radius: 4px;
height: 36px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888C8F;
line-height: 36px;
background: url("../../assets/contractStart/search1.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
}
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;
}
}
.wrap {
width: 100%;
padding: 8px;
.contract-lists {
width: 100%;
background: #fff;
margin-bottom: 8px;
border-radius: 2px;
.pro-code {
height: 44px;
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
.file-icon {
width: 30px;
height: 30px;
margin-left: 10px;
}
p {
height: 44px;
line-height: 44px;
margin-left: 10px;
flex: 1;
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4B4A4B;
letter-spacing: 0;
border-bottom: 1px solid #F3F3F7
}
.arrow {
height: 16px;
width: 16px;
margin-right: 10px;
margin-left: -8px;
}
}
.box {
height: 96px;
margin-left: 50px;
margin-right: 19px;
div {
width: 100%;
height: 32px;
position: relative;
.money {
font-family: Verdana-Bold;
font-size: 14px;
color: #4B4A4B;
letter-spacing: 0;
font-weight: 600;
}
p {
height: 32px;
line-height: 32px;
position: absolute;
font-family: PingFangSC-Regular;
font-size: 14px;
letter-spacing: 0;
}
p:nth-of-type(1){
left: 0;
color: rgba(75,74,75,0.60);
}
p:nth-of-type(2){
right: 0;
color: #4B4A4B;
}
}
}
}
}
.bottom-tab-button{
background: @headerColor;
border-radius: 4px;
color:white;
height: 40px;
margin: 4px 2% 0 2%;
}
.add-img {
width: 16px;
height: 16px;
}
.content {
position: absolute;
top: 0;
}
.scrollContent {
padding-top: 3rem;
padding-bottom: 20px;
}
}
.platform-ios {
#contract-signing {
.scrollContent {
padding-top: 3.4rem;
}
}
}
// iPhoneX适配
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#contract-signing {
.scrollContent {
padding-top: 3.8rem;
}
}
}
}
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#contract-signing {
.scrollContent {
padding-top: 3.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-12-18 20:15:42
* @LastEditTime: 2019-12-18 20:17:36
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \hls-xcmg-vue-app\src\pages\contractCreate\pick-lessee.vue
-->
<template>
<h-view id="picker">
<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-view>
</template>
<script>
export default {
name: '',
data () {
return {
}
},
computed: {},
watch: {},
methods: {
},
}
</script>
<style lang='less' scoped>
</style>
<!--
* @Author: your name
* @Date: 2019-09-29 10:02:11
* @LastEditTime: 2019-12-18 20:19:23
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
-->
<template>
<h-view id="sales-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>
<list-item :item-height="44" class="second-part">
<item :showArrow="true" @click="picker">
<div slot="name" class="font-color">承租人</div>
<span slot="content">{{ '请选择' }}</span>
</item>
<item :showArrow="true">
<div slot="name" class="font-color">业务类型</div>
<input slot="content" placeholder="请选择">
</item>
<item>
<div slot="name" class="font-color">经销商</div>
<input slot="content" placeholder="上海汉得信息技术股份有限公司">
</item>
<item :showArrow="true">
<div slot="name" class="font-color">销售人员</div>
<input slot="content" readonly placeholder="请选择">
</item>
<item :showArrow="true">
<div slot="name" class="font-color">办事处</div>
<input slot="content" readonly placeholder="请选择">
</item>
<item :showArrow="true">
<div slot="name" class="font-color">主机厂</div>
<input slot="content" readonly placeholder="请选择">
</item>
<item>
<div slot="name" class="font-color">主机厂业务员</div>
<input slot="content" placeholder="请输入业务员姓名">
</item>
<item @click.native="showTime('YYYY-MM-DD')">
<div slot="name" class="font-color">签约日期</div>
<input slot="content" v-model="dates" readonly>
<img src="@/assets/contractCreate/date.png" alt="" class="date-pic">
</item>
</list-item>
<list-item :item-height="44" class="second-part">
<item :showArrow="true">
<div slot="name" class="font-color">承租人</div>
<span slot="content">{{ '请选择' }}</span>
</item>
<item :showArrow="true">
<div slot="name" class="font-color">业务类型</div>
<input slot="content" placeholder="请选择">
</item>
<item>
<div slot="name" class="font-color">经销商</div>
<input slot="content" placeholder="上海汉得信息技术股份有限公司">
</item>
<item :showArrow="true">
<div slot="name" class="font-color">销售人员</div>
<input slot="content" readonly placeholder="请选择">
</item>
<item :showArrow="true">
<div slot="name" class="font-color">办事处</div>
<input slot="content" readonly placeholder="请选择">
</item>
<item :showArrow="true">
<div slot="name" class="font-color">主机厂</div>
<input slot="content" readonly placeholder="请选择">
</item>
<item>
<div slot="name" class="font-color">主机厂业务员</div>
<input slot="content" placeholder="请输入业务员姓名">
</item>
<item>
<div slot="name" class="font-color">授信额度</div>
<input slot="content" placeholder="授信额度">
</item>
<item>
<div slot="name" class="font-color">已使用授信额度</div>
<input slot="content" placeholder="已使用授信额度">
</item>
<item>
<div slot="name" class="font-color">剩余授信额度</div>
<input slot="content" placeholder="剩余授信额度">
</item>
<item @click.native="showTime('YYYY-MM-DD')">
<div slot="name" class="font-color">签约日期</div>
<input slot="content" v-model="dates" readonly>
<img src="@/assets/contractCreate/date.png" alt="" class="date-pic">
</item>
</list-item>
</h-content>
<bottom-tab>
<tab-button class="footer">
确认创建
</tab-button>
</bottom-tab>
</h-view>
</template>
<script>
export default {
data () {
return {
dates: '请选择',
}
},
watch: {
},
activated () {
},
created () {
},
beforeRouteEnter (to, from, next) {
next(vm => {
})
},
methods: {
// 时间选择
showTime (format) {
let vm = this
hlsPopup.showTime({
nowDate: (new Date()).format('yyyy-MM-dd'),
format: format,
callback: (date) => {
vm.dates = date
},
})
},
picker () {
this.$router.push({
name: 'PickLessee',
})
},
},
}
</script>
<style lang="less" type="text/less">
#sales-info {
.date-pic {
height: 17px;
width: 17px;
margin-top: 13px;
margin-left: 6px;
}
.bottom-tab-button{
background: @headerColor;
border-radius: 4px;
color:white;
height: 40px;
margin: 4px 2% 0 2%;
}
}
</style>
......@@ -2,7 +2,7 @@
<!--
* @Author: your name
* @Date: 2019-10-31 09:49:57
* @LastEditTime: 2019-12-17 11:25:28
* @LastEditTime: 2019-12-18 17:14:47
* @LastEditors: Please set LastEditors
* @Description: 合同查询--记录
* @FilePath:
......@@ -17,9 +17,7 @@
</h-header>
<div v-if="data===null" class="null">
<div class="display">
<img src="@/assets/contractRepayment/null.png" alt="">
<p>暂时没有还款记录</p>
<div @click="$routeGo()">返回</div>
<img src="@/assets/messageCenter/noMsg.png" alt="">
</div>
</div>
<div v-if="data!==null" class="wrap has-header">
......@@ -691,44 +689,12 @@ export default {
}
}
.null {
position: relative;
.display {
width:150px;
position: absolute;
left: 50%;
transform: translateX(-50%);
top: 100px;
z-index: 999;
img {
width:150px;
}
p {
text-align: center;
opacity: 0.7;
font-family: PingFangSC-Semibold;
font-size: 17px;
color: #21254C;
letter-spacing: 0;
font-weight: 700;
margin-top: 10px;
}
div {
width: 140px;
height: 32px;
background: #1D3FFF;
border-radius: 4px;
color: white;
line-height: 32px;
text-align: center;
margin-left: 5px;
margin-top: 20px;
}
.display {
img {
width: 100%;
height: 100%;
margin-top: -70px;
}
}
.wrap {
width: 100%;
......
<!--
* @Author: your name
* @Date: 2019-10-31 09:49:57
* @LastEditTime: 2019-11-22 16:17:31
* @LastEditTime: 2019-12-18 16:58:54
* @LastEditors: Please set LastEditors
* @Description: 合同查询--明细
* @FilePath:
......@@ -218,6 +218,7 @@ export default {
border-bottom: 1px solid red;
}
.repay-content {
overflow: hidden;
.header {
position: relative;
height: 40px;
......
<!--
* @Author: your name
* @Date: 2019-11-07 17:48:53
* @LastEditTime: 2019-12-18 13:41:07
* @LastEditTime: 2019-12-18 18:45:40
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
-->
......@@ -49,6 +49,14 @@
<div class="content-top">
<div class="userInfo">我的合同</div>
<div class="my-contract">
<div class="content-wrap" @click="goCreate">
<!-- <span
v-if="signCount > 0"
:class="{'content-wrap-class-width':signCount>99, 'content-wrap-class':signCount<99}"
>{{ signCount > 99 ? '99+' : signCount }}</span> -->
<img src="@/assets/myInfo/contractCreate.png" >
<p>合同创建</p>
</div>
<div class="content-wrap" @click="goSign">
<span
v-if="signCount > 0"
......@@ -309,6 +317,12 @@ export default {
this.description = '审批中'
}
},
// 合同创建
goCreate () {
this.$router.push({
name: 'ContractCreateList',
})
},
// 进入待签约功能,客户类型为经销商则进入经销商功能,非经销商则进入合同签约
goSign () {
if (this.bp_id) {
......
......@@ -2,7 +2,7 @@
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-24 21:29:35
* @LastEditTime: 2019-12-18 15:07:39
* @LastEditTime: 2019-12-18 17:20:25
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -16,7 +16,7 @@
<div class="info">
<div class="info-icon">
<img src="@/assets/userBind/info.png" >
<span @click="getOrgCertificationUrl">温馨提示</span>
<span>温馨提示</span>
</div>
<p>推荐使用农行卡,农行卡支付免收手续费!</p>
</div>
......@@ -122,6 +122,8 @@ export default {
data () {
return {
from: false,
authUrl: '', // 电子签url
errorMsg: '',
bp_id: '',
bankImg: '', // 银行卡图片
isApproved: false,
......@@ -143,11 +145,14 @@ export default {
next(vm => {
if (from.name === 'Enclosure') {
vm.bankImg = '' // 银行卡图片
vm.authUrl = ''
vm.errorMsg = ''
vm.showModalValue = false
vm.bank_card_flag = false
vm.certification_status = ''
vm.getBankInfo()
vm.electQuery()
vm.getOrgCertificationUrl()
}
})
},
......@@ -247,7 +252,7 @@ export default {
})
},
// 提交
async handSubmit () {
handSubmit () {
this.hlsPopup.showConfirm({
title: '提示',
content: '您确认提交吗?',
......@@ -261,28 +266,77 @@ export default {
},
}
let vm = this
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.showLoading('请稍候')
this.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.hlsPopup.showSuccess('提交成功')
// if (vm.certification_status === 'Y') {
vm.$router.push({
name: 'MyInfo',
})
// } else {
// vm.getOrgCertificationUrl()
// console.log(authUrl)
// if (authUrl) {
// }
// vm.$router.push({
// name: 'ElectronicSign',
// })
// }
}
})
}
},
})
// debugger
// let vm = this
// if (vm.certification_status === 'Y') {
// vm.$router.push({
// name: 'MyInfo',
// })
// } else {
// if (vm.authUrl) {
// vm.$router.push({
// name: 'MyInfo',
// params: {
// authUrl: vm.authUrl,
// },
// })
// } else {
// vm.hlsPopup.showSuccess(vm.errorMsg)
// }
// }
// this.hlsPopup.showConfirm({
// title: '提示',
// content: '您确认提交吗?',
// onConfirm: data => {
// if (data) {
// let url = $config.basePath + 'bp_bind_submit'
// let param = {
// master: {
// bp_id: this.$route.params.bp_id,
// company_id: '2145',
// },
// }
// let vm = this
// vm.hlsPopup.showLoading('请稍候')
// vm.hlsHttp.post(url, param).then(function (res) {
// vm.hlsPopup.hideLoading()
// if (res.result === 'S') {
// vm.hlsPopup.showSuccess('提交成功')
// if (vm.certification_status === 'Y') {
// vm.$router.push({
// name: 'MyInfo',
// })
// } else {
// if (vm.authUrl) {
// vm.$router.push({
// name: 'MyInfo',
// params: {
// authUrl: vm.authUrl,
// },
// })
// } else {
// vm.hlsPopup.showSuccess(vm.errorMsg)
// }
// }
// }
// })
// }
// },
// })
},
// 获取企业认证url
getOrgCertificationUrl () {
......@@ -295,12 +349,11 @@ export default {
vm.$post(url, param).then(function (res) {
hlsPopup.hideLoading()
console.log(res)
// if (res.info.code === 0) {
// return res.info.data.authUrl
// } else {
// hlsPopup.showLongCenter(res.info.msg)
// return null
// }
if (res.info.code === 0) {
vm.authUrl = res.info.data.authUrl
} else {
vm.errorMsg = res.info.msg
}
})
},
// ocr识别入口
......
......@@ -2,7 +2,7 @@
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-19 09:31:19
* @LastEditTime: 2019-12-16 17:42:13
* @LastEditTime: 2019-12-18 16:35:21
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -939,6 +939,7 @@ export default {
let param = {
master: vm.saveInfo,
}
vm.hlsPopup.showLoading('请稍候')
vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
......
......@@ -2,7 +2,7 @@
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-24 12:34:06
* @LastEditTime: 2019-12-10 14:52:52
* @LastEditTime: 2019-12-18 20:19:11
* @LastEditors: Please set LastEditors
*/
import Vue from 'vue'
......@@ -118,6 +118,10 @@ import NPInvoiceInfo from '@/pages/userBindNew/np/invoice-info'
import NPBankInfo from '@/pages/userBindNew/np/bank-info'
import AccessoryInfo from '@/pages/userBindNew/np/accessory-info'
// 合同创建
import ContractCreateList from '@/pages/contractCreate/contract-create-list'
import SalesInfo from '@/pages/contractCreate/sales-info'
import PickLessee from '@/pages/contractCreate/pick-lessee'
Vue.use(Router)
export default new Router({
......@@ -283,6 +287,10 @@ export default new Router({
{path: '/np-bank-info', component: NPBankInfo, name: 'NPBankInfo', meta: {keepAlive: true}},
{path: '/accessory-info', component: AccessoryInfo, name: 'AccessoryInfo', meta: {keepAlive: true}},
// 合同创建
{path: '/contract-create-list', component: ContractCreateList, name: 'ContractCreateList', meta: {keepAlive: true}},
{path: '/sales-info', component: SalesInfo, name: 'SalesInfo', meta: {keepAlive: true}},
{path: '/pick-lessee', component: PickLessee, name: 'PickLessee', meta: {keepAlive: true}},
],
scrollBehavior (to, from, savedPosition) {
if (to.hash) {
......
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