Commit 5d65ac90 authored by linxin's avatar linxin

发车申请和确定接口已调完

parent 8c5bd18b
<template>
<h-view id="addCar">
<transition name="trans">
<div v-show="downNum" class="modal-show">
<div class="down">
<div class="top">
......@@ -14,7 +15,12 @@
<list-item :item-height="44">
<item>
<div slot="name">车架号</div>
<input slot="content" v-model="rentInfo.frame_number" readonly placeholder="自动识别车架号" >
<input
slot="content"
v-model="rentInfo.frame_number"
readonly
placeholder="自动识别车架号"
>
</item>
<item>
<div slot="name">发动机号</div>
......@@ -23,21 +29,31 @@
<item>
<div slot="name">厂商型号</div>
<input
slot="content" v-model="rentInfo.manufacturer" readonly class="write"
placeholder="请输入厂商型号" >
slot="content"
v-model="rentInfo.manufacturer"
readonly
class="write"
placeholder="请输入厂商型号"
>
</item>
<item>
<div slot="name">车牌号</div>
<input slot="content" v-model="rentInfo.license_plate_number" readonly placeholder="请输入车牌号" >
<input
slot="content"
v-model="rentInfo.license_plate_number"
readonly
placeholder="请输入车牌号"
>
</item>
</list-item>
</div>
</div>
</div>
</transition>
<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>
<span>合同明细</span>
</div>
</h-header>
<h-content>
......@@ -69,13 +85,16 @@
</item>
<item>
<div slot="name">租赁物数量</div>
<input
slot="content" v-model="info.product_num" readonly
placeholder="请输入租赁物数量" >
<input slot="content" v-model="info.product_num" readonly placeholder="请输入租赁物数量" >
</item>
</list-item>
<div class="userInfo">设备清单</div>
<div v-for="(item,index) in numInt" :key="index" class="equipment" @click="downNum=true;getRent()">
<div
v-for="(item,index) in numInt"
:key="index"
class="equipment"
@click="downNum=true;getRent()"
>
<div class="left">
<span>
<img src="@/assets/contractStart/list.png" >
......@@ -95,9 +114,8 @@
</div>
</h-content>
<bottom-tab>
<tab-button class="approve" @click.native="confirm">确定</tab-button>
<tab-button class="approve" @click.native="isConfirm">确定</tab-button>
</bottom-tab>
</h-view>
</template>
<script>
......@@ -108,28 +126,30 @@ export default {
downNum: false,
show: false,
info: {
'product_plan_id': '29',
'product_num': '1',
'first_pay': '102500',
'division_n': '平地机',
'gps_fee': '500',
'bp_name': '黄冲',
'project_number': 'PJ2019050043',
'bp_agent_name': '上海汉得信息技术股份有限公司 ',
'product_plan_id_n': 'PDJ',
product_plan_id: '29',
product_num: '1',
first_pay: '102500',
division_n: '平地机',
gps_fee: '500',
bp_name: '黄冲',
project_number: 'PJ2019050043',
bp_agent_name: '上海汉得信息技术股份有限公司 ',
product_plan_id_n: 'PDJ',
},
rentInfo: {
'frame_number': '',
'engine': '',
'manufacturer': '',
'license_plate_number': '',
frame_number: '',
engine: '',
manufacturer: '',
license_plate_number: '',
},
products: [],
equip: [{
'product_id': '3',
'product_code': 'GTC389',
'contract_id': '231',
}],
equip: [
{
product_id: '3',
product_code: 'GTC389',
contract_id: '231',
},
],
}
},
computed: {
......@@ -148,19 +168,32 @@ export default {
})
},
methods: {
isConfirm () {
this.hlsPopup.showConfirm({
title: '提示',
content: '您确定同意发车吗?',
onConfirm: data => {
if (data === 1) {
this.confirm()
}
},
})
},
confirm () {
let vm = this
let url = process.env.basePath + 'do_car_confirm'
let param = {
'master': {
'contract_id': '123',
'confirm_status': 'APPROVED',
}}
master: {
contract_id: '123',
confirm_status: 'APPROVED',
},
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.equip = res.lists
vm.hlsPopup.showSuccess('发车成功')
} else {
hlsPopup.showLongCenter(res.message)
}
......@@ -223,18 +256,26 @@ export default {
input::placeholder {
color: #888c8f;
}
.hide{
.trans-enter-active,
.trans-leave-active {
transition: opacity 0.5s;
}
.trans-enter,
.trans-leave-active {
opacity: 0;
}
.hide {
display: flex;
justify-content: flex-start;
align-items: center;
img{
width:30px;
height:30px;
margin-left:65%;
img {
width: 30px;
height: 30px;
margin-left: 65%;
}
}
.wrap{
padding-top:92px;
.wrap {
padding-top: 92px;
}
.modal-show {
width: 100%;
......
......@@ -129,7 +129,7 @@ export default {
let vm = this
let url = process.env.basePath + 'car_confirm_list_query'
let param = {
order_id: window.sessionStorage.getItem('user_phone'),
user_phone: window.localStorage.getItem('user_phone'),
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
......
<template>
<h-view id="addCar">
<div class="modal-show">
<transition name="trans">
<div v-show="downNum" class="modal-show">
<div class="down">
<div class="top">
录入产品信息
......@@ -22,7 +23,12 @@
</item>
<item>
<div slot="name">厂商型号</div>
<input slot="content" v-model="info.manufacturer" class="write" placeholder="请输入厂商型号" >
<input
slot="content"
v-model="info.manufacturer"
class="write"
placeholder="请输入厂商型号"
>
</item>
<item>
<div slot="name">车牌号</div>
......@@ -31,56 +37,104 @@
<!-- <item :showArrow="true" @click.native="showModalValue=true">
<div slot="name">产品参数</div>
<input slot="content" v-model="info.bank_branch_name" placeholder="请选择产品参数" @click="changeHeight">
</item> -->
</item>-->
</list-item>
</div>
<button @click="save">保存</button>
<button @click="isSave">保存</button>
</div>
</div>
</transition>
<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>
<span>合同明细</span>
</div>
</h-header>
<h-content>
<div class="userInfo">承租人信息</div>
<list-item :item-height="44">
<item :showArrow="true">
<item v-if="!read" :showArrow="true">
<div slot="name">合同号</div>
<input
slot="content"
v-model="detail.project_number"
placeholder="请选择合同号"
@click="selectContruct"
>
</item>
<item v-if="read">
<div slot="name">合同号</div>
<input slot="content" v-model="detail.project_number" placeholder="请选择合同号" @click="selectContruct" >
<input slot="content" v-model="detail.project_number" readonly placeholder="暂无数据" >
</item>
<item :showArrow="true">
<item v-if="!read" :showArrow="true">
<div slot="name">经销商</div>
<input slot="content" v-model="detail.bp_agent_name" placeholder="请选择经销商" @click="selectAgent" >
<input
slot="content"
v-model="detail.bp_agent_name"
placeholder="请选择经销商"
@click="selectAgent"
>
</item>
<item v-if="read">
<div slot="name">经销商</div>
<input slot="content" v-model="detail.bp_agent_name" readonly placeholder="暂无数据" >
</item>
<item>
<div slot="name">承租人</div>
<input slot="content" v-model="detail.bp_name" placeholder="请输入承租人姓名" >
<input
slot="content"
v-model="detail.bp_name"
:placeholder="read?'暂无数据':'请输入承租人姓名'"
readonly="read"
>
</item>
<item :showArrow="true">
<item v-if="!read" :showArrow="true">
<div slot="name">产品线</div>
<input
slot="content" v-model="detail.division_n" placeholder="请选择产品线"
@click="selectProductLine" >
slot="content"
v-model="detail.division_n"
placeholder="请选择产品线"
@click="selectProductLine"
>
</item>
<item v-if="read">
<div slot="name">产品线</div>
<input slot="content" v-model="detail.division_n" readonly placeholder="暂无数据" >
</item>
<item>
<div slot="name">合同金额</div>
<input slot="content" v-model="detail.total_price" placeholder="请输入合同金额" >
<input
slot="content"
v-model="detail.total_price"
:placeholder="read?'暂无数据':'请输入合同金额'"
readonly="read"
>
</item>
<item :showArrow="true">
<item v-if="!read" :showArrow="true">
<div slot="name">商务政策</div>
<input
slot="content" v-model="detail.product_plan_name" placeholder="请选择合同政策"
@click="selectProductPlan" >
slot="content"
v-model="detail.product_plan_name"
placeholder="请选择合同政策"
@click="selectProductPlan"
>
</item>
<item v-if="read">
<div slot="name">商务政策</div>
<input slot="content" v-model="detail.product_plan_name" readonly placeholder="暂无数据" >
</item>
<item>
<div slot="name">租赁物数量</div>
<input slot="content" v-model="detail.product_num" placeholder="请输入租赁物数量" >
<input slot="content" v-model="detail.product_num" readonly="read" placeholder="请输入租赁物数量" >
</item>
</list-item>
<div class="userInfo">设备清单</div>
<div v-for="(item,index) in numInt" :key="index" class="equipment" @click="trans">
<div
v-for="(item,index) in equip"
:key="index"
class="equipment"
@click="downNum = true;addContractId(item.contract_id)"
>
<div class="left">
<span>
<img src="@/assets/contractStart/list.png" >
......@@ -91,7 +145,7 @@
<span class="status">已维护</span>
<p>
参数项
<span>GTZ226</span>
<span>{{ item.product_code }}</span>
</p>
</div>
<div class="right">
......@@ -100,13 +154,16 @@
</div>
</h-content>
<bottom-tab>
<tab-button class="approve" @click.native="goAdd">发车申请</tab-button>
<tab-button class="approve" @click.native="isApprove">发车申请</tab-button>
</bottom-tab>
<div class="bottom-pop">
<div class="bottom-content">
<div class="box">
<div class="fix">
<div class="hide"><div class="userInfo">产品查询</div><img src="@/assets/contractStart/delete.png" @click="hideBox"></div>
<div class="hide">
<div class="userInfo">产品查询</div>
<img src="@/assets/contractStart/delete.png" @click="hideBox" >
</div>
<div class="bottom-top">
<input placeholder="请输入产品线" >
<img src="@/assets/contractStart/delete.png" >
......@@ -126,11 +183,15 @@
<ul>
<li>
<span class="name">产品线</span>&ensp; &ensp; 挖掘机
<span class="to-right"><span class="name">产品种类</span>&ensp; &ensp; *****</span>
<span class="to-right">
<span class="name">产品种类</span>&ensp; &ensp; *****
</span>
</li>
<li>
<span class="name">参数项</span>&ensp; &ensp; GTZ226
<span class="to-right"><span class="name">产品名称</span>&ensp; &ensp; *****</span>
<span class="to-right">
<span class="name">产品名称</span>&ensp; &ensp; *****
</span>
</li>
</ul>
</div>
......@@ -148,72 +209,92 @@ export default {
num: null,
downNum: false,
show: false,
productLine: [{
'code': '5',
'code_name': '测试3',
}, {
'code': '9',
'code_name': 'PDJ',
}, {
'code': '6',
'code_name': '测试1',
}],
productPlan: [{
'code': '5',
'code_name': '测试3',
}, {
'code': '9',
'code_name': 'PDJ',
}, {
'code': '6',
'code_name': '测试1',
}],
contract: [{
'code': '5',
'code_name': 'PRJ2019003',
}, {
'code': '9',
'code_name': 'PRJ2019025',
}, {
'code': '6',
'code_name': 'PRJ2019067',
}],
read: false,
productLine: [
{
code: '5',
code_name: '测试3',
},
{
code: '9',
code_name: 'PDJ',
},
{
code: '6',
code_name: '测试1',
},
],
productPlan: [
{
code: '5',
code_name: '测试3',
},
{
code: '9',
code_name: 'PDJ',
},
{
code: '6',
code_name: '测试1',
},
],
contract: [
{
code: '5',
code_name: 'PRJ2019003',
},
{
code: '9',
code_name: 'PRJ2019025',
},
{
code: '6',
code_name: 'PRJ2019067',
},
],
agent: [
{
'code': '7475',
'code_name': '北京去楼下科技有限公司',
}, {
'code': '7709',
'code_name': '主机厂法人',
}, {
'code': '7436',
'code_name': '北京雪族科技有限公司',
code: '7475',
code_name: '北京去楼下科技有限公司',
},
{
code: '7709',
code_name: '主机厂法人',
},
{
code: '7436',
code_name: '北京雪族科技有限公司',
},
],
info: {
'contract_id': '',
'frame_number': '',
'engine': '',
'manufacturer': '',
'license_plate_number': '',
contract_id: '',
frame_number: '1',
engine: '1',
manufacturer: '1',
license_plate_number: '1',
},
detail: {
'product_num': '',
'first_pay': '',
'gps_fee': '',
'bp_name': '',
'project_number': '',
'bp_agent_name': '',
'product_plan_id_n': '',
'division': '',
'division_n': '',
'product_plan_id': '',
'product_plan_name': '',
'project_id': '',
// 'factory_bp_id': '',
'bp_id': '',
},
equip: [],
product_num: '',
first_pay: '',
gps_fee: '',
bp_name: '',
project_number: '',
bp_agent_name: '',
product_plan_id_n: '',
division: '',
division_n: '',
product_plan_id: '',
product_plan_name: '',
project_id: '',
bp_id: '',
},
equip: [
{
product_id: '3',
product_code: 'GTC389',
contract_id: '231',
},
],
}
},
computed: {
......@@ -227,23 +308,19 @@ export default {
},
beforeRouteEnter (to, from, next) {
next(vm => {
if (from.name === 'StartList') {
vm.getProductLine()
vm.getProductPlan()
vm.getContractNum()
}
// if (from.name === 'StartList') {
// vm.getProductLine()
// vm.getProductPlan()
// vm.getContractNum()
// }
if (vm.$route.params.project_id) {
vm.read = true
vm.getDetail()
vm.getEquipment()
}
})
},
methods: {
trans () {
let down = document.querySelector('.modal-show')
down.style.display = 'block'
down.style.opacity = '1'
},
save () {
let vm = this
let url = process.env.basePath + 'leases_info_save'
......@@ -254,7 +331,83 @@ export default {
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
// console.log(res)
vm.hlsPopup.showSuccess('保存成功')
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
isSave () {
this.hlsPopup.showConfirm({
title: '提示',
content: '您确定保存吗?',
onConfirm: data => {
if (data === 1) {
this.save()
}
},
})
},
isApprove () {
this.hlsPopup.showConfirm({
title: '提示',
content: '您确定申请发车吗?',
onConfirm: data => {
if (data === 1) {
this.approve()
}
},
})
},
getRent () {
let vm = this
let url = process.env.basePath + 'leases_info_query'
let param = {
contract_id: vm.equip.contract_id,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
Object.assign(vm.info, res.info)
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
addContractId (e) {
this.info.contract_id = e
},
approve () {
let vm = this
let url = process.env.basePath + 'car_apply_submit'
let param = {
master: {
project_id: this.$route.params.project_id,
},
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.hlsPopup.showSuccess('申请成功')
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
getEquipment () {
let vm = this
let url = process.env.basePath + 'car_equip_list_query'
let param = {
project_id: this.$route.params.project_id,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.equip = res.lists
vm.getRent()
} else {
hlsPopup.showLongCenter(res.message)
}
......@@ -324,34 +477,18 @@ export default {
},
})
},
getEquipment () {
let vm = this
let url = process.env.basePath + 'car_equip_list_query'
let param = {
project_id: vm.$route.params.project_id,
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.equip = res.lists
} else {
hlsPopup.showLongCenter(res.message)
}
})
},
getDetail () {
let obj = {
'product_plan_id': '29',
'product_num': '1',
'first_pay': '102500',
'division_n': '平地机',
'gps_fee': '500',
'bp_name': '黄冲',
'project_number': 'PJ2019050043',
'bp_agent_name': '上海汉得信息技术股份有限公司 ',
'product_plan_id_n': 'PDJ',
'total_price': '1111111111',
product_plan_id: '29',
product_num: '1',
first_pay: '102500',
division_n: '平地机',
gps_fee: '500',
bp_name: '黄冲',
project_number: 'PJ2019050043',
bp_agent_name: '上海汉得信息技术股份有限公司 ',
product_plan_id_n: 'PDJ',
total_price: '1111111111',
}
Object.assign(this.detail, obj)
// let vm = this
......@@ -451,29 +588,36 @@ export default {
input::placeholder {
color: #888c8f;
}
.hide{
.trans-enter-active,
.trans-leave-active {
transition: opacity 0.5s;
}
.trans-enter,
.trans-leave-active {
opacity: 0;
}
.hide {
display: flex;
justify-content: flex-start;
align-items: center;
img{
width:30px;
height:30px;
margin-left:65%;
img {
width: 30px;
height: 30px;
margin-left: 65%;
}
}
.wrap{
padding-top:92px;
.wrap {
padding-top: 92px;
}
.modal-show {
width: 100%;
height: 100%;
display: none;
position: absolute;
display: flex;
z-index: 900;
background-color: rgba(56, 63, 69, 0.3);
justify-content: center;
align-items: center;
opacity: 0;
.down {
position: relative;
width: 314px;
......@@ -645,7 +789,7 @@ export default {
.bottom-content {
width: 100%;
height: 0px;
transition:0.3s linear;
transition: 0.3s linear;
border-radius: 20px 20px 0 0;
position: absolute;
bottom: 0px;
......@@ -654,11 +798,11 @@ export default {
.box {
width: 359px;
margin: 0 auto;
.fix{
position:fixed;
.fix {
position: fixed;
background-color: #fff;
border-radius: 20px;
z-index:999;
z-index: 999;
}
.bottom-top {
width: 100%;
......@@ -739,11 +883,10 @@ export default {
color: rgba(56, 63, 69, 0.6);
letter-spacing: 0.43px;
}
}
.to-right{
.to-right {
float: right;
margin-right:36px;
margin-right: 36px;
}
li:first-child {
border-bottom: 1px solid #fff;
......
......@@ -11,12 +11,13 @@
<input placeholder="请输入合同号/产品线/承租人名称" >
</div>
<h-content class="my-content">
<scroll
ref="scroll"
:updateData="[contructs]"
:pullUp="true"
<scroll ref="scroll" :updateData="[contructs]" :pullUp="true">
<div
v-for="(item,index) in showList"
:key="index"
class="item"
@click="changePage(item.project_id)"
>
<div v-for="(item,index) in showList" :key="index" class="item" @click="changePage(item.project_id)">
<div class="left">
<span>
<img src="@/assets/contractStart/icon.png" >
......@@ -45,12 +46,10 @@
</div>
</div>
</div>
</scroll></h-content>
</scroll>
</h-content>
<bottom-tab>
<tab-button class="add" @click.native="goAdd">
新增发车
</tab-button>
<tab-button class="add" @click.native="goAdd">新增发车</tab-button>
</bottom-tab>
</h-view>
</template>
......@@ -64,22 +63,24 @@ export default {
return {
tabNum: 0,
contructs: [],
lists: [{
'project_id': '48812',
'project_number': '',
'bp_name': '李四',
'total_price': '51',
'division_n': 'PDJ',
'leases_status': 'Y',
lists: [
{
project_id: '48812',
project_number: '',
bp_name: '李四',
total_price: '51',
division_n: 'PDJ',
leases_status: 'Y',
},
{
'project_id': '48800',
'project_number': '',
'bp_name': '张三',
'total_price': '51',
'division_n': 'PDJ',
'leases_status': 'N',
}],
project_id: '48800',
project_number: '',
bp_name: '张三',
total_price: '51',
division_n: 'PDJ',
leases_status: 'N',
},
],
showList: [],
undo: [],
done: [],
......@@ -93,7 +94,7 @@ export default {
})
},
watch: {
'tabNum': {
tabNum: {
handler () {
if (this.tabNum === 0) {
this.showList = this.undo
......@@ -140,7 +141,7 @@ export default {
let vm = this
let url = process.env.basePath + 'car_apply_list_query'
let param = {
order_id: window.sessionStorage.getItem('user_phone'),
user_phone: window.localStorage.getItem('user_phone'),
}
hlsPopup.showLoading('请稍候')
vm.$post(url, param).then(function (res) {
......@@ -244,7 +245,7 @@ export default {
font-size: 14px;
color: #4b4a4b;
letter-spacing: 0;
font-weight:bold;
font-weight: bold;
}
li {
font-family: PingFangSC-Regular;
......@@ -256,15 +257,14 @@ export default {
span {
float: right;
}
}
}
}
}
}
.add{
color:#fff;
background-color:#0041C4;
.add {
color: #fff;
background-color: #0041c4;
}
}
</style>
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