@@ -39,7 +39,7 @@ let appChangePricecheckurl = '/appChangePrice/check.do' //改价申请校验 | |||
let takeHouseApplyurl = '/appTakeHouse/takeHouseApply.do' //带房申请 | |||
let takeHouseReviewurl = '/appTakeHouse/takeHouseReview.do' //带房审核 | |||
let oneCustomerInfourl= '/appHouseContract/oneCustomerInfo.do' //成交合同第一步客户信息 | |||
let getDeptListurl= '/appDept/getDeptList.do' //部门列表 | |||
let getDeptListurl= '/appPerson/getDeptList.do' //部门列表 | |||
let getPersonListurl= '/appPerson/getPersonList.do' //部门下的人员列表 | |||
let twoContractInfourl= '/appHouseContract/twoContractInfo.do' //成交合同第二步合同信息 | |||
let getContractListurl= '/appHouseContract/getContractList.do' //合同审核列表 | |||
@@ -39,7 +39,7 @@ const install = (Vue, vm) => { | |||
Vue.prototype.$u.http.interceptor.response = (res) => { | |||
if (res.data.ErrNo == '0000') { | |||
return res.data; | |||
} else if (res.data.ErrNo == '0005'||res.data.ErrNo == '0002') { | |||
} else if (res.data.ErrNo == '0005') { | |||
// uni.showToast({ | |||
// title: res.data.ErrMsg || '未登录', | |||
// icon: "none", | |||
@@ -118,6 +118,12 @@ | |||
"navigationBarTitleText": "定金审核", | |||
"navigationBarTextStyle": "black" | |||
} | |||
}, { | |||
"path": "contact_check_page", | |||
"style": { | |||
"navigationBarTitleText": "定金合同详情", | |||
"navigationBarTextStyle": "black" | |||
} | |||
}, { | |||
"path": "apply_baojie", | |||
"style": { | |||
@@ -2,7 +2,7 @@ | |||
<view class="container"> | |||
<view class="list-box"> | |||
<view class="list-item" v-for="(item,index) in listData" :key="index"> | |||
<view class="item-info"> | |||
<view class="item-info" hover-class="canclick" @click="djContract(item.contractId)" style="padding: 12rpx 0;margin-bottom: 0"> | |||
<view class="name">合同地址</view> | |||
<view class="value u-line-1">{{item.contractAddress}}</view> | |||
<image class="path" src="/static/path.png" mode="" /> | |||
@@ -30,14 +30,14 @@ | |||
</view> | |||
</view> | |||
<view class="btn-box"> | |||
<view class="btn pass" @click="showmodal=true">通过</view> | |||
<view class="btn refuse">驳回</view> | |||
<view class="btn pass" @click="passFun(item)">通过</view> | |||
<view class="btn refuse" @click="refuseFun(item)">拒绝</view> | |||
</view> | |||
</view> | |||
</view> | |||
<u-modal title="确认操作" @confirm="confirm" show-cancel-button confirm-color="#FF6D25" confirm-text="通过" :mask-close-able="true" v-model="showmodal" :title-style="titleStyle"> | |||
<u-modal title="确认操作" @confirm="confirm" show-cancel-button confirm-color="#FF6D25" :confirm-text="pass==1?'通过':'拒绝'" :mask-close-able="true" v-model="showmodal" :title-style="titleStyle"> | |||
<view class="slot-content"> | |||
<view class="my-tip">您确认通过该审核吗?</view> | |||
<view class="my-tip">您确认{{pass==1?'通过':'拒绝'}}该审核吗?</view> | |||
<!-- <rich-text :nodes="content"></rich-text> --> | |||
</view> | |||
</u-modal> | |||
@@ -59,6 +59,7 @@ | |||
pageNo: 1, | |||
pageSize: 10, | |||
loadDone: false, | |||
pass: 1 | |||
}; | |||
}, | |||
onLoad(options) { | |||
@@ -74,6 +75,28 @@ | |||
this.getList(); | |||
}, | |||
methods: { | |||
passFun(item){ | |||
this.pass = 1 | |||
this.showmodal = true | |||
this.contractId = item.contractId | |||
}, | |||
refuseFun(item){ | |||
this.pass = 0 | |||
this.showmodal = true | |||
this.contractId = item.contractId | |||
}, | |||
// 定金合同详情 | |||
djContract(id){ | |||
// 审批状态0未审核 1通过 2 拒绝 | |||
this.$u.api.djContract({body:{contractId:id}}).then((res)=>{ | |||
console.log(res) | |||
if(res.ErrNo=='0000'){ | |||
wx.navigateTo({ | |||
url: '/pages/my/contact_check_page?src='+res.result | |||
}) | |||
} | |||
}) | |||
}, | |||
getList(){ | |||
if (this.loadDone) return; | |||
let params = { | |||
@@ -103,16 +126,18 @@ | |||
} | |||
}) | |||
}, | |||
showToast() { | |||
this.$refs.uToast.show({ | |||
title: '审核成功', | |||
icon: false, | |||
type:'success' | |||
// url: '/pages/user/index' | |||
}) | |||
}, | |||
confirm(){ | |||
this.showToast() | |||
// 审核状态 0 未审核 1 已审核 2 拒绝 | |||
this.$u.api.examine({body:{contractId:this.contractId,status:this.pass==1?1:2}}).then((res)=>{ | |||
console.log(res) | |||
if(res.ErrNo=='0000'){ | |||
this.$refs.uToast.show({ | |||
title: '操作成功', | |||
icon: 'none', | |||
type:'success' | |||
}) | |||
} | |||
}) | |||
} | |||
}, | |||
}; | |||
@@ -141,6 +166,10 @@ | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
line-height: 40rpx; | |||
&.canclick:hover{ | |||
background: #eee; | |||
} | |||
.name{ | |||
flex: 0 0 112rpx; | |||
color: #666666; | |||
@@ -0,0 +1,135 @@ | |||
<template> | |||
<web-view :src="src"></web-view> | |||
</template> | |||
<script> | |||
export default { | |||
data() { | |||
return { | |||
src: '' | |||
}; | |||
}, | |||
onLoad(options) { | |||
this.src = options.src; | |||
}, | |||
onShow() { | |||
}, | |||
created() { | |||
}, | |||
methods: { | |||
}, | |||
}; | |||
</script> | |||
<style lang="scss" scoped> | |||
.container{ | |||
width: 750rpx; | |||
min-height: 100vh; | |||
background: #F8F8F8; | |||
padding-top: 20rpx; | |||
.list-box{ | |||
.list-item{ | |||
padding: 30rpx; | |||
background: #fff; | |||
font-size: 28rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
color: #333333; | |||
margin-bottom: 20rpx; | |||
.item-info{ | |||
display: flex; | |||
align-items: center; | |||
margin-bottom: 24rpx; | |||
font-size: 28rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
line-height: 40rpx; | |||
&.canclick:hover{ | |||
background: #eee; | |||
} | |||
.name{ | |||
flex: 0 0 112rpx; | |||
color: #666666; | |||
margin-right: 58rpx; | |||
} | |||
.value{ | |||
flex: 1; | |||
color: #333; | |||
} | |||
.path{ | |||
flex: 0 0 14rpx; | |||
width: 14rpx; | |||
height: 30rpx; | |||
margin-left: 10rpx; | |||
} | |||
} | |||
.pay-info{ | |||
width: 690rpx; | |||
background: rgba(247, 248, 252, .7); | |||
border-radius: 8rpx; | |||
padding: 30rpx; | |||
margin-bottom: 24rpx; | |||
.subitem{ | |||
width: 100%; | |||
height: 40rpx; | |||
display: flex; | |||
justify-content: space-between; | |||
margin-bottom: 20rpx; | |||
&:last-child{ | |||
margin-bottom: 0; | |||
} | |||
.label{ | |||
height: 40rpx; | |||
font-size: 28rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
color: #666666; | |||
line-height: 40rpx; | |||
display: flex; | |||
align-items: center; | |||
.value{ | |||
color: #333333; | |||
margin-left: 10rpx; | |||
} | |||
} | |||
} | |||
} | |||
.btn-box{ | |||
display: flex; | |||
justify-content: flex-end; | |||
.btn{ | |||
width: 128rpx; | |||
height: 54rpx; | |||
line-height: 54rpx; | |||
text-align: center; | |||
font-size: 26rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
border-radius: 8rpx; | |||
} | |||
.pass{ | |||
background: #FF6D25; | |||
color: #fff; | |||
border: 1px solid #FF6D25; | |||
margin-right: 30rpx; | |||
} | |||
.refuse{ | |||
background: #FFFFFF; | |||
border: 1px solid #FF6D25; | |||
color: #FF6D25; | |||
} | |||
} | |||
} | |||
} | |||
.my-tip{ | |||
text-align: center; | |||
margin: 40rpx 0; | |||
color: #666 | |||
} | |||
} | |||
</style> |
@@ -17,38 +17,38 @@ | |||
<view class="item"> | |||
<view class="label">身份证号</view> | |||
<view class="input"> | |||
<u-input :clearable="false" type="text" input-align="right" v-model="form.idCard" placeholder="请输入客户身份证号"></u-input> | |||
<u-input :clearable="false" type="text" input-align="right" v-model="form.idno" placeholder="请输入客户身份证号"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">客户性别</view> | |||
<view class="input"> | |||
<u-radio-group v-model="form.sex" @change="sexChange"> | |||
<u-radio active-color="#FF6D25" :name="0">先生</u-radio> | |||
<u-radio active-color="#FF6D25" :name="1">女士</u-radio> | |||
<u-radio active-color="#FF6D25" name="男">先生</u-radio> | |||
<u-radio active-color="#FF6D25" name="女">女士</u-radio> | |||
</u-radio-group> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">星座</view> | |||
<view class="input"> | |||
<u-input height="102" disabled input-align="right" v-model="form.xingzuoName" @click="xingzuoShow = true" placeholder="请选择星座"></u-input> | |||
<u-input height="102" disabled input-align="right" v-model="form.starName" @click="starShow = true" placeholder="请选择星座"></u-input> | |||
<image class="path" src="/static/path.png" mode="" /> | |||
<u-select confirm-color="#FF6D25" v-model="xingzuoShow" :list="xingzuoList" @confirm="confirmXingzuo"></u-select> | |||
<u-select confirm-color="#FF6D25" v-model="starShow" :list="starList" @confirm="confirmXingzuo"></u-select> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">职业</view> | |||
<view class="input"> | |||
<u-input height="102" disabled input-align="right" v-model="form.occupationName" @click="occupationShow = true" placeholder="请选择职业"></u-input> | |||
<u-input height="102" disabled input-align="right" v-model="form.job" @click="jobShow = true" placeholder="请选择职业"></u-input> | |||
<image class="path" src="/static/path.png" mode="" /> | |||
<u-select confirm-color="#FF6D25" v-model="occupationShow" :list="occupationList" @confirm="confirmOccupation"></u-select> | |||
<u-select confirm-color="#FF6D25" v-model="jobShow" :list="jobList" @confirm="confirmOccupation"></u-select> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">爱好</view> | |||
<view class="input"> | |||
<u-input height="102" disabled input-align="right" v-model="form.hobbyName" @click="hobbyShow = true" placeholder="请选择爱好"></u-input> | |||
<u-input height="102" disabled input-align="right" v-model="form.hobby" @click="hobbyShow = true" placeholder="请选择爱好"></u-input> | |||
<image class="path" src="/static/path.png" mode="" /> | |||
<u-select confirm-color="#FF6D25" v-model="hobbyShow" :list="hobbyList" @confirm="confirmHobby"></u-select> | |||
</view> | |||
@@ -58,7 +58,7 @@ | |||
<view class="item"> | |||
<view class="label">租金</view> | |||
<view class="input"> | |||
<u-input :clearable="false" input-align="right" type="number" v-model="form.rent" placeholder="请输入租金"></u-input> | |||
<u-input :clearable="false" input-align="right" type="number" v-model="form.rentPrice" placeholder="请输入租金"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
@@ -70,13 +70,19 @@ | |||
<view class="item"> | |||
<view class="label">服务费</view> | |||
<view class="input"> | |||
<u-input :clearable="false" type="number" input-align="right" v-model="form.serviceFee" placeholder="请输入服务费"></u-input> | |||
<u-input :clearable="false" type="number" input-align="right" v-model="form.fee" placeholder="请输入服务费"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">卫生费</view> | |||
<view class="input"> | |||
<u-input :clearable="false" type="number" input-align="right" v-model="form.ws_fee" placeholder="请输入卫生费"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">居住人数</view> | |||
<view class="input"> | |||
<u-input :clearable="false" type="number" input-align="right" v-model="form.personNumber" placeholder="请输入居住人数"></u-input> | |||
<u-input :clearable="false" type="number" input-align="right" v-model="form.peoples" placeholder="请输入居住人数"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
@@ -106,9 +112,9 @@ | |||
<view class="item"> | |||
<view class="label">成交部门</view> | |||
<view class="input"> | |||
<u-input height="102" disabled input-align="right" v-model="form.departmentName" @click="departmentShow = true" placeholder="请选择成交部门"></u-input> | |||
<u-input height="102" disabled input-align="right" v-model="form.deptIdName" @click="deptIdShow = true" placeholder="请选择成交部门"></u-input> | |||
<image class="path" src="/static/path.png" mode="" /> | |||
<u-select confirm-color="#FF6D25" v-model="departmentShow" :list="departmentList" @confirm="confirmDepartment"></u-select> | |||
<u-select confirm-color="#FF6D25" v-model="deptIdShow" :list="deptIdList" @confirm="confirmDepartment"></u-select> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
@@ -119,21 +125,15 @@ | |||
<u-select confirm-color="#FF6D25" v-model="dealPeopleShow" :list="dealPeopleList" @confirm="confirmDealPeople"></u-select> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">是否拆单</view> | |||
<view class="input"> | |||
<u-input height="102" disabled input-align="right" v-model="form.splitlistName" @click="splitlistShow = true" placeholder="请选择是否拆单"></u-input> | |||
<image class="path" src="/static/path.png" mode="" /> | |||
<u-select confirm-color="#FF6D25" v-model="splitlistShow" :list="splitlistList" @confirm="confirmSplitlist"></u-select> | |||
</view> | |||
</view> | |||
<!-- <view class="red-item">拆单金额(3010.0)与第一笔合计不等(6001.0),押金、服务费(6009.0)默认第一笔不在计算在内!</view> --> | |||
</view> | |||
</view> | |||
<view class="step" v-if="step==1" @click="nextStep">下一步</view> | |||
<view class="step2" v-if="step==2"> | |||
<view class="next-btn btn" v-if="step==2" @click="step=1">上一步</view> | |||
<view class="submit-btn btn">提交并预览</view> | |||
<view class="submit-btn btn" @click="submit">提交并预览</view> | |||
</view> | |||
<u-toast ref="uToast" /> | |||
</view> | |||
</template> | |||
<script> | |||
@@ -142,234 +142,361 @@ | |||
return { | |||
step:1, | |||
calendarShow: false, | |||
xingzuoShow: false, | |||
starShow: false, | |||
hobbyShow: false, | |||
occupationShow: false, | |||
jobShow: false, | |||
paytypeShow: false, | |||
paymentMethodShow: false, | |||
departmentShow: false, | |||
deptIdShow: false, | |||
dealPeopleShow: false, | |||
splitlistShow: false, | |||
form: { | |||
idCard: '',//身份证号 | |||
idno: '',//身份证号 | |||
name: '',//客户姓名 | |||
sex: 0,//性别 | |||
sex: '男',//性别 | |||
tel: '',//手机号 | |||
xingzuoName: '',// | |||
xingzuo: '',//星座 | |||
starName: '',// | |||
star: '',//星座 | |||
hobby: '',// | |||
hobbyName: '',//爱好 | |||
occupation: '',// | |||
occupationName: '',//职业 | |||
job: '',//职业 | |||
paytypeName:'',//支付类型 | |||
paytype:'',//支付类型 | |||
personNumber: '',//居住人数 | |||
serviceFee: '',//服务费 | |||
peoples: '',//居住人数 | |||
deposit: '',//押金 | |||
rent: '',//租金 | |||
paymentMethod: '',//收款方式 | |||
fee: '',//服务费 | |||
ws_fee:'',// 卫生费 | |||
rentPrice: '',//租金 | |||
payment_way: '',//收款方式 | |||
paymentMethodName: '',//收款方式 | |||
departmentName: '',//成交部门 | |||
department: '',//成交部门 | |||
deptIdName: '',//成交部门 | |||
deptId: '',//成交部门 | |||
dealPeople: '',//成交人 | |||
dealPeopleName: '',//成交人 | |||
splitlistName: '',//是否拆单 | |||
splitlist: '',//是否拆单 | |||
rentDate: '',//租约期限 | |||
rent_date_start: '',// | |||
rent_date_end: '' | |||
}, | |||
xingzuoList: [ | |||
starList: [ | |||
{ | |||
value: '1', | |||
label: '射手座' | |||
value: '水瓶座', | |||
label: '水瓶座(01.20-02.18)' | |||
}, | |||
{ | |||
value: '2', | |||
label: '白羊座' | |||
value: '双鱼座', | |||
label: '双鱼座(02.19─03.20)' | |||
}, | |||
{ | |||
value: '3', | |||
label: '巨蟹座' | |||
value: '白羊座', | |||
label: '白羊座(03.21─04.20) ' | |||
}, | |||
{ | |||
value: '4', | |||
label: '处女座' | |||
value: '金牛座', | |||
label: '金牛座(04.21─05.20)' | |||
}, | |||
], | |||
occupationList: [ | |||
{ | |||
value: '1', | |||
label: '工人' | |||
value: '双子座', | |||
label: '双子座(05.21─06.21)' | |||
}, | |||
{ | |||
value: '2', | |||
label: '记者' | |||
value: '巨蟹座', | |||
label: '巨蟹座(06.22─07.22)' | |||
}, | |||
{ | |||
value: '3', | |||
label: '主持人' | |||
value: '狮子座', | |||
label: '狮子座(07.23─08.22)' | |||
}, | |||
{ | |||
value: '4', | |||
label: '流浪汉' | |||
value: '处女座', | |||
label: '处女座(08.23─09.22)' | |||
}, | |||
], | |||
hobbyList: [ | |||
{ | |||
value: '1', | |||
label: '唱歌' | |||
value: '天秤座', | |||
label: '天秤座(09.23─10.22)' | |||
}, | |||
{ | |||
value: '2', | |||
label: '跳舞' | |||
value: '天蝎座', | |||
label: '天蝎座(10.23─11.22)' | |||
}, | |||
{ | |||
value: '3', | |||
label: '读书' | |||
value: '射手座', | |||
label: '射手座(11.22─12.21)' | |||
}, | |||
{ | |||
value: '4', | |||
label: '运动' | |||
value: '摩羯座', | |||
label: '摩羯座(12.22─01.19)' | |||
}, | |||
], | |||
paymentMethodList: [ | |||
hobbyList: [ | |||
{ | |||
value: '1', | |||
label: '来电' | |||
value: '阅读', | |||
label: '阅读' | |||
}, | |||
{ | |||
value: '2', | |||
label: '来访' | |||
value: '运动', | |||
label: '运动' | |||
}, | |||
{ | |||
value: '3', | |||
label: '到访' | |||
value: '餐饮', | |||
label: '餐饮' | |||
}, | |||
{ | |||
value: '4', | |||
label: '2来访' | |||
value: '旅游', | |||
label: '旅游' | |||
}, | |||
], | |||
paytypeList: [ | |||
{ | |||
value: '1', | |||
label: '现金' | |||
value: '音乐', | |||
label: '音乐' | |||
}, | |||
{ | |||
value: '2', | |||
label: '支付宝' | |||
value: '饮茶', | |||
label: '饮茶' | |||
}, | |||
{ | |||
value: '3', | |||
label: '微信' | |||
value: '影视', | |||
label: '影视' | |||
}, | |||
{ | |||
value: '书记', | |||
label: '书记' | |||
}, | |||
{ | |||
value: '4', | |||
label: '信用卡' | |||
value: '其他', | |||
label: '其他' | |||
}, | |||
], | |||
departmentList: [ | |||
jobList: [ | |||
{ | |||
value: '1', | |||
label: '行政' | |||
value: '白领', | |||
label: '白领' | |||
}, | |||
{ | |||
value: '2', | |||
label: '运营' | |||
value: 'IT', | |||
label: 'IT' | |||
}, | |||
{ | |||
value: '3', | |||
label: '到访' | |||
value: '商业', | |||
label: '商业' | |||
}, | |||
{ | |||
value: '4', | |||
label: '访问' | |||
value: '政府', | |||
label: '政府' | |||
}, | |||
], | |||
dealPeopleList: [ | |||
{ | |||
value: '1', | |||
label: '章三' | |||
value: '医疗', | |||
label: '医疗' | |||
}, | |||
{ | |||
value: '2', | |||
label: '里斯' | |||
value: '教育', | |||
label: '教育' | |||
}, | |||
{ | |||
value: '3', | |||
label: '王武' | |||
value: '军人', | |||
label: '军人' | |||
}, | |||
{ | |||
value: '4', | |||
label: '赵云' | |||
value: '其他', | |||
label: '其他' | |||
}, | |||
], | |||
splitlistList: [ | |||
paymentMethodList: [ | |||
{ | |||
value: '1', | |||
label: '拆单' | |||
label: '现金' | |||
}, | |||
{ | |||
value: '2', | |||
label: '不拆单' | |||
label: '第三方' | |||
} | |||
] | |||
], | |||
// 支付方式 | |||
paytypeList: [ | |||
{ | |||
value: '1', | |||
label: '月付' | |||
}, | |||
{ | |||
value: '3', | |||
label: '季付' | |||
}, | |||
{ | |||
value: '6', | |||
label: '半年付' | |||
}, | |||
{ | |||
value: '12', | |||
label: '年付' | |||
}, | |||
], | |||
// 部门列表 | |||
deptIdList: [], | |||
// 人员列表 | |||
dealPeopleList: [], | |||
contractId: '',// | |||
electContractInfo: {} | |||
}; | |||
}, | |||
onLoad(options) { | |||
this.electContractInfo = uni.getStorageSync('electContractInfo') | |||
this.oneVerificationContractInfo() | |||
this.form.rentDate = this.electContractInfo.rent_date_start + '~'+this.electContractInfo.rent_date_end | |||
this.form.rent_date_start =this.electContractInfo.rent_date_start | |||
this.form.rent_date_end = this.electContractInfo.rent_date_end | |||
}, | |||
created() { | |||
this.getDeptList() | |||
}, | |||
onShow() { | |||
}, | |||
methods: { | |||
// 部门列表 | |||
getDeptList(){ | |||
this.$u.api.getDeptList({body:{}}).then((res)=>{ | |||
if(res.result&&res.result.length){ | |||
this.deptIdList = res.result.map(item=>{ | |||
return{ | |||
label: item.dept_name, | |||
value: item.id | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
// 部门下的员工列表 | |||
getPersonList(){ | |||
this.$u.api.getPersonList({body:{"deptId": this.form.deptId}}).then((res)=>{ | |||
if(res.result&&res.result.length){ | |||
this.dealPeopleList = res.result.map(item=>{ | |||
return{ | |||
label: item.userName, | |||
value: item.userId | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
// 获取用户信息 | |||
oneVerificationContractInfo(){ | |||
this.$u.api.oneVerificationContractInfo({body:{"roomId": this.electContractInfo.roomId}}).then((res)=>{ | |||
if(res.ErrNo=='0000'){ | |||
let data = res.result | |||
this.contractId = data.contractId | |||
this.form.idno = data.idno | |||
this.form.name = data.customerName | |||
this.form.sex = data.sex | |||
this.form.tel = data.customerTel | |||
this.form.starName = data.star | |||
this.form.star = data.star | |||
this.form.hobby = data.hobby | |||
this.form.job = data.job | |||
} | |||
}) | |||
}, | |||
// 第一步保存 | |||
nextStep(){ | |||
this.step = 2 | |||
// this.$refs.uToast.show({ | |||
// duration: 3000, | |||
// title: '拆单金额(3010.0)与第一笔合计不等(6001.0),押金、服务费(6009.0)默认第一笔不在计算在内!', | |||
// }) | |||
let body = { | |||
roomId: this.electContractInfo.roomId, | |||
"customerName": this.form.name, | |||
"customerTel": this.form.tel, | |||
"idno": this.form.idno, | |||
"sex": this.form.sex, | |||
"star": this.form.star, | |||
"job": this.form.job, | |||
"hobby": this.form.hobby | |||
} | |||
this.$u.api.oneCustomerInfo({body:body}).then((res)=>{ | |||
if(res.ErrNo=='0000'){ | |||
this.form.rentPrice = res.result.rentPrice | |||
this.contractId= res.result.contractId | |||
// this.form.rent_date_end = res.result.contractEndDate | |||
// this.form.rent_date_end = '2024-03-04' | |||
// let datetimer = new Date().getTime() | |||
// this.form.rent_date_start = this.$u.timeFormat(datetimer, 'yyyy-mm-dd') | |||
// this.form.rentDate = this.form.rent_date_start+ ' ~ ' + this.form.rent_date_end | |||
this.step = 2 | |||
}else{ | |||
this.$refs.uToast.show({ | |||
title: res.ErrMsg, | |||
icon: false, | |||
type:'error' | |||
}) | |||
} | |||
}) | |||
}, | |||
// 第二部保存 | |||
submit() { | |||
let body = { | |||
"contractId": this.contractId, | |||
"oldContractId": this.electContractInfo.proxy_contract_id,//续期合同id | |||
"rent_date_start": this.form.rent_date_start, | |||
"rent_date_end": this.form.rent_date_end, | |||
"fee": this.form.fee, | |||
"ws_fee": this.form.ws_fee, | |||
"peoples": this.form.peoples, | |||
"payment_type": this.form.paytype, | |||
"dept": this.form.dept, | |||
"rentPrice": this.form.rentPrice, | |||
"deposit": this.form.deposit, | |||
"payment_way": this.form.payment_way, | |||
"create_person": this.form.dealPeople | |||
} | |||
this.$u.api.twoContractInfo({body:body}).then((res)=>{ | |||
if(res.ErrNo=='0000'){ | |||
// this.$refs.uToast.show({ | |||
// title: '拆单金额(3010.0)与第一笔合计不等(6001.0),押金、服务费(6009.0)默认第一笔不在计算在内!', | |||
// }) | |||
this.$refs.uToast.show({ | |||
title: res.ErrMsg, | |||
icon: 'none', | |||
type:'success' | |||
}) | |||
uni.navigateTo({ | |||
url: '/pages/my/contact_check_page?src='+res.result | |||
}) | |||
}else{ | |||
this.$refs.uToast.show({ | |||
title: res.ErrMsg, | |||
icon: 'none', | |||
type:'error' | |||
}) | |||
} | |||
}) | |||
}, | |||
confirmXingzuo(e){ | |||
console.log(e) | |||
this.form.xingzuo = e[0].value | |||
this.form.xingzuoName = e[0].label | |||
this.form.star = e[0].value | |||
this.form.starName = e[0].label | |||
}, | |||
confirmHobby(e){ | |||
console.log(e) | |||
this.form.hobby = e[0].value | |||
this.form.hobbyName = e[0].label | |||
}, | |||
confirmOccupation(e){ | |||
console.log(e) | |||
this.form.occupation = e[0].value | |||
this.form.occupationName = e[0].label | |||
this.form.job = e[0].value | |||
}, | |||
confirmPaytype(e){ | |||
console.log(e) | |||
this.form.paytype = e[0].value | |||
this.form.paytypeName = e[0].label | |||
}, | |||
confirmPaymentMethod(e){ | |||
console.log(e) | |||
this.form.paymentMethod = e[0].value | |||
this.form.payment_way = e[0].value | |||
this.form.paymentMethodName = e[0].label | |||
}, | |||
confirmDealPeople(e){ | |||
console.log(e) | |||
this.form.dealPeople = e[0].value | |||
this.form.dealPeopleName = e[0].label | |||
}, | |||
confirmSplitlist(e){ | |||
console.log(e) | |||
this.form.splitlist = e[0].value | |||
this.form.splitlistName = e[0].label | |||
}, | |||
confirmDepartment(e){ | |||
console.log(e) | |||
this.form.department = e[0].value | |||
this.form.departmentName = e[0].label | |||
}, | |||
submit() { | |||
this.form.deptId = e[0].value | |||
this.form.deptIdName = e[0].label | |||
this.getPersonList() | |||
}, | |||
// 租约期限 | |||
changeDate(e){ | |||
console.log(e) | |||
this.form.rent_date_start = e.startDate | |||
this.form.rent_date_end = e.endDate | |||
this.form.rentDate = e.startDate+ ' ~ ' + e.endDate | |||
}, | |||
sexChange(){ | |||
@@ -439,6 +566,16 @@ | |||
} | |||
} | |||
.red-item{ | |||
width: 690rpx; | |||
height: 66rpx; | |||
font-size: 24rpx; | |||
font-family: PingFangSC-Regular, PingFang SC; | |||
font-weight: 400; | |||
color: #E7483C; | |||
line-height: 33rpx; | |||
margin: 24rpx 30rpx 0; | |||
} | |||
} | |||
.step{ | |||
width: 690rpx; | |||
@@ -17,7 +17,7 @@ | |||
<view class="list-item" v-for="(item,index) in listData" :key="index"> | |||
<view class="top"> | |||
{{item.address||''}}({{item.account_num}}) | |||
<view class="goon">续期</view> | |||
<view class="goon" @click="topage(item)">续期</view> | |||
</view> | |||
<view class="time">合同时间:{{item.rent_date_end}} - {{item.rent_date_end}}</view> | |||
<view class="bot"> | |||
@@ -70,13 +70,22 @@ | |||
this.calendarShow = true; | |||
}, | |||
search(){ | |||
}, | |||
topage(item){ | |||
uni.setStorageSync('electContractInfo',item) | |||
uni.navigateTo({ | |||
url:'/pages/my/electContract?roomId='+ item.roomId+ '&oldContractId='+ item.proxy_contract_id | |||
}) | |||
}, | |||
getList(){ | |||
if (this.loadDone) return; | |||
let params = { | |||
account: this.keyword, | |||
pageNo:this.pageNo, | |||
pageSize:this.pageSize, | |||
rentDateBegin: this.starDate, | |||
rentDateEnd: this.endDate | |||
} | |||
this.$u.api.contractList({body:params}).then((res)=>{ | |||
console.log(res) | |||
@@ -4,25 +4,25 @@ | |||
<view class="item"> | |||
<view class="label">账号</view> | |||
<view class="input"> | |||
<u-input :clearable="false" v-model="form.account" placeholder="请输入账号"></u-input> | |||
<u-input height="88" :clearable="false" v-model="form.account" placeholder="请输入账号"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">原密码</view> | |||
<view class="input"> | |||
<u-input :clearable="false" maxlength="20" type="number" v-model="form.oldPassword" placeholder="请输入原密码"></u-input> | |||
<u-input :clearable="false" :password-icon="false" height="88" maxlength="20" type="password" v-model="form.oldPassword" placeholder="请输入原密码"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">新密码</view> | |||
<view class="input"> | |||
<u-input :clearable="false" maxlength="20" type="text" v-model="form.newPassword" placeholder="请输入新密码"></u-input> | |||
<u-input :clearable="false" :password-icon="false" height="88" maxlength="20" type="password" v-model="form.newPassword" placeholder="请输入新密码"></u-input> | |||
</view> | |||
</view> | |||
<view class="item" style="border-bottom:0"> | |||
<view class="label">确认密码</view> | |||
<view class="input"> | |||
<u-input :clearable="false" maxlength="20" type="etxt" v-model="form.checkPassword" placeholder="请输入确认密码"></u-input> | |||
<u-input :clearable="false" :password-icon="false" height="88" maxlength="20" type="password" v-model="form.checkPassword" placeholder="请输入确认密码"></u-input> | |||
</view> | |||
</view> | |||
</view> | |||
@@ -44,17 +44,34 @@ | |||
onLoad(options) { | |||
}, | |||
onShow() { | |||
this.user = uni.getStorageSync('user') | |||
this.form.account = this.user.name | |||
}, | |||
methods: { | |||
logout(){ | |||
wx.clearStorageSync() | |||
this.$u.vuex("vuex_user",{}); | |||
this.$u.vuex("vuex_token",''); | |||
wx.navigateTo({ | |||
url: '/pages/tabs/login' | |||
}) | |||
}, | |||
submit() { | |||
let body = { | |||
mobile: this.account, | |||
newPassword: this.newPassword, | |||
checkNewPassword: this.checkPassword, | |||
oldPassword: this.form.oldPassword, | |||
newPassword: this.form.newPassword, | |||
checkNewPassword: this.form.checkPassword, | |||
} | |||
this.$u.api.resetPassword({body:body}).then((res)=>{ | |||
console.log(res) | |||
// if(res.result&&res.result.length){} | |||
if(res.ErrNo=='0000'){ | |||
uni.showToast({ | |||
title: res.ErrMsg, | |||
icon: 'none' | |||
}) | |||
setTimeout(()=> { | |||
this.logout() | |||
},1000) | |||
} | |||
}) | |||
}, | |||
}, | |||
@@ -119,6 +119,7 @@ | |||
created(){ | |||
this.getList() | |||
this.getbaseData() | |||
this.getRoomType() | |||
}, | |||
onReachBottom() { | |||
this.getList(); | |||
@@ -129,12 +130,21 @@ | |||
this.$u.api.region({body:{}}).then((res)=>{ | |||
// console.log(res) | |||
this.addressList = this.addressList.concat(res.result.area) | |||
this.buildTypeList = this.buildTypeList.concat(res.result.buildType) | |||
// this.buildTypeList = this.buildTypeList.concat(res.result.buildType) | |||
this.priceList = this.priceList.concat(res.result.rentMoney) | |||
this.houseTypeList = this.houseTypeList.concat(res.result.houseType) | |||
this.addressListRight = this.addressList[0].children | |||
}) | |||
}, | |||
getRoomType(){ | |||
this.$u.api.getRoomType({body:{}}).then((res)=>{ | |||
// console.log(res) | |||
if(res.result&&res.result.length){ | |||
this.buildTypeList = this.buildTypeList.concat(res.result) | |||
} | |||
}) | |||
}, | |||
secectAddressQu(item,index){ | |||
if(index==0) {// 不限 | |||
this.searchForm.addressQuval = '' | |||
@@ -60,7 +60,7 @@ | |||
<view class="item-text">改价申请</view> | |||
</view> | |||
<view class="line"></view> | |||
<view class="item"> | |||
<view class="item" @click="sendPassword"> | |||
<image class="item-icon" src="/static/czDetail/lock.png" mode="" /> | |||
<view class="item-text">门锁密码</view> | |||
</view> | |||
@@ -106,6 +106,18 @@ | |||
} | |||
}) | |||
}, | |||
// 密码锁 | |||
sendPassword(){ | |||
this.$u.api.sendPassword({body:{roomId:this.roomId}}).then((res)=>{ | |||
if(res.ErrNo=='0000'){ | |||
uni.showToast({ | |||
title: res.ErrMsg, | |||
icon: 'none', | |||
duration: 3000 | |||
}) | |||
} | |||
}) | |||
}, | |||
topage(page){ | |||
uni.navigateTo({ | |||
url: "/pages/" + page +'?id='+this.roomId, | |||
@@ -10,13 +10,13 @@ | |||
<view class="item"> | |||
<view class="label">身份证号</view> | |||
<view class="input"> | |||
<u-input :clearable="false" type="text" input-align="right" v-model="form.Idno" placeholder="请输入身份证号"></u-input> | |||
<u-input :clearable="false" type="text" input-align="right" v-model="form.idno" placeholder="请输入身份证号"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="label">客户电话</view> | |||
<view class="input"> | |||
<u-input :clearable="false" type="text" input-align="right" v-model="form.mobile" placeholder="请输入客户电话"></u-input> | |||
<u-input :clearable="false" max-length="11" type="text" input-align="right" v-model="form.mobile" placeholder="请输入客户电话"></u-input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
@@ -52,7 +52,7 @@ | |||
<view class="item"> | |||
<view class="label">付款方式</view> | |||
<view class="input"> | |||
<u-input height="100" @click="payTypeShow = true" type="text" disabled input-align="right" v-model="form.payTypeName" placeholder="请选择房屋地址"></u-input> | |||
<u-input height="100" @click="payTypeShow = true" type="text" disabled input-align="right" v-model="form.payTypeName" placeholder="请选择付款方式"></u-input> | |||
<image class="path" src="/static/path.png" mode="" @click="payTypeShow = true"/> | |||
<u-select confirm-color="#FF6D25" v-model="payTypeShow" :list="payTypeList" @confirm="confirmPaytype"></u-select> | |||
</view> | |||
@@ -94,22 +94,18 @@ | |||
calendarShow2: false, | |||
payTypeShow: false, | |||
form: { | |||
customerName: '', | |||
customerType: '',//类型-个人:1,单位:2 | |||
mobile: '', | |||
money: '', | |||
fee: '', | |||
Idno: '',//身份证号 | |||
houseAddress: '', | |||
houseAddressName: '', | |||
deptName: '开发部一处', | |||
applyPerson:'张三地方', | |||
customerName: '赵彩云', | |||
mobile: '18339694416', | |||
money: '1000', | |||
fee: '100', | |||
rent_price: '2000', | |||
idno: '412702199011176926',//身份证号 | |||
endDate:'', | |||
starDate:'', | |||
ws_fee: '', | |||
tv_price: '', | |||
ws_fee: '100', | |||
tv_price: '100', | |||
rent_date: '', | |||
payment_way:'', | |||
payment_way:'1', | |||
payTypeName:'' | |||
}, | |||
payTypeList: [ | |||
@@ -118,15 +114,15 @@ | |||
label: '月付' | |||
}, | |||
{ | |||
value: '2', | |||
value: '3', | |||
label: '季付' | |||
}, | |||
{ | |||
value: '3', | |||
value: '6', | |||
label: '半年付' | |||
}, | |||
{ | |||
value: '4', | |||
value: '12', | |||
label: '年付' | |||
}, | |||
], | |||
@@ -167,7 +163,7 @@ | |||
} | |||
}, | |||
dateConfirm2(e){ | |||
this.form.date = e.result | |||
this.form.rent_date = e.result | |||
}, | |||
confirmPaytype(e){ | |||
console.log(e) | |||
@@ -176,12 +172,11 @@ | |||
}, | |||
submit() { | |||
let body={ | |||
// "companyId": 22, | |||
"roomId": this.roomId, | |||
"customerType": this.form.customerType, | |||
"customerName": this.form.customerName, | |||
"customerTel": this.form.mobile, | |||
"money": this.form.money, | |||
"companyId": 22, | |||
"rent_price": this.form.rent_price, | |||
"fee": this.form.fee, | |||
"ws_fee": this.form.ws_fee, | |||
@@ -192,13 +187,16 @@ | |||
"rent_date": this.form.rent_date, | |||
"idno": this.form.idno, | |||
} | |||
this.$u.api.deposit({body:body}).then((res)=>{ | |||
// 图片类型10 .封面 11.轮播图 | |||
// if(res.result&&res.result.length){ | |||
// this.picList = res.result.map(item=>item.pictureUrl) | |||
// } | |||
this.$u.api.appSave({body:body}).then((res)=>{ | |||
console.log(res) | |||
if(res.ErrNo=='0000'){ | |||
this.$refs.uToast.show({ | |||
title: res.ErrMsg, | |||
icon: 'none', | |||
type:'success' | |||
}) | |||
} | |||
}) | |||
}, | |||
}, | |||
}; | |||
@@ -90,6 +90,20 @@ | |||
onLoad(options) { | |||
}, | |||
created() { | |||
}, | |||
onShow() { | |||
this.keyword = '' | |||
this.loadDone = false; | |||
this.zujinshow = false | |||
this.huxingshow = false | |||
this.pageNo = 1 | |||
this.searchForm = { | |||
huxingval: '', | |||
zujinval: '', | |||
huxinglabel: '', | |||
zujinlabel: '', | |||
} | |||
this.getcustomerList() | |||
this.getbaseData() | |||
}, | |||
@@ -43,7 +43,7 @@ | |||
>《服务》</view | |||
></view | |||
> | |||
<view class="login-btn" @click="login">登录</view> | |||
<view class="login-btn" @click="checkCode">登录</view> | |||
</view> | |||
</template> | |||
<script> | |||
@@ -58,15 +58,6 @@ export default { | |||
isfinished: true, | |||
}; | |||
}, | |||
onLoad(options) { | |||
// wx.showShareMenu({ | |||
// withShareTicket: true | |||
// }) | |||
// wx.hideShareMenu({ | |||
// }) | |||
}, | |||
onShow() {}, | |||
computed: {}, | |||
methods: { | |||
getCode() { | |||
let that = this; | |||
@@ -88,8 +79,22 @@ export default { | |||
// type 1:登录短信 2:定金合同短信 3:成交合同短信 | |||
this.$u.api.sendUser({body:{user:this.account}}).then((res)=>{ | |||
console.log(res) | |||
if(res.ErrNo=='0000'){ | |||
this.phone = res.result | |||
} | |||
}) | |||
}, | |||
checkCode(){ | |||
let body = { | |||
"mobile": this.phone, | |||
"code": this.code, | |||
"type": 1//1:登录短信2:定金合同短信3:成交合同短信 | |||
} | |||
this.$u.api.checkCode({body:body}).then((res)=>{ | |||
if(res.ErrNo=='0000'){ | |||
this.login() | |||
} | |||
}) | |||
}, | |||
login() { | |||
if (this.account == "") return; | |||
@@ -101,7 +106,6 @@ export default { | |||
} | |||
}; | |||
this.$u.api.login(params).then((res) => { | |||
console.log(res) | |||
if(res.ErrNo=='0000'){ | |||
uni.setStorageSync('token',res.result.SESSIONID) | |||
this.$u.vuex("vuex_token",res.result.SESSIONID); | |||